/* Shared semantic palette: every control switches with the same theme attribute. */
:root{color-scheme:light;--bg:#f3f6f7;--surface:#fff;--surface-subtle:#f4f7f9;--surface-hover:#eaf0f3;--input-bg:#fff;--ink:#19323c;--text:var(--ink);--muted:#526873;--line:#b8c8cf;--border:var(--line);--panel:var(--surface);--cream:#f7f3e8;--accent:#806025;--navy:#092b3b;--navy2:#123d4e;--primary-bg:#0b5269;--on-brand:#fff;--success:#166534;--success-bg:#eaf8ef;--success-border:#4d9167;--warning:#8a460b;--warning-bg:#fff5df;--warning-border:#b68b37;--danger:#b91c1c;--danger-bg:#fff0f1;--danger-border:#c66d75;--info:#075985;--info-bg:#eaf6ff;--info-border:#5795b7;--empty-chart:#dce6ea;--focus:#087797;--code-bg:#e8eef3;--code-ink:#172f42;--shadow:0 12px 35px #092b3b14}
html[data-theme=dark]{color-scheme:dark;--bg:#101b22;--surface:#18272f;--surface-subtle:#20333d;--surface-hover:#29444f;--input-bg:#12212a;--ink:#edf3f5;--muted:#b4c5cd;--line:#526c79;--cream:#35301f;--accent:#e4c887;--primary-bg:#2b728d;--success:#97edb5;--success-bg:#183b2a;--success-border:#67947a;--warning:#ffd18b;--warning-bg:#42341d;--warning-border:#aa8d58;--danger:#ffb4ba;--danger-bg:#42222c;--danger-border:#ad7381;--info:#9dd9ff;--info-bg:#1b384a;--info-border:#6f9ab4;--empty-chart:#29424e;--focus:#81d5ee;--code-bg:#253c4d;--code-ink:#e8f2ff;--shadow:0 12px 35px #0005}
body{background:var(--bg);color:var(--ink)}.topbar,.panel,.summary,.report-card,.delivery-card,.family-dialog,.security-dialog,.duplicates-dialog,.duplicate-receipt-dialog,.reason-editor-dialog,.release-notice{background:var(--surface);color:var(--ink)}input,select,textarea{background:var(--input-bg);color:var(--ink);border-color:var(--line)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}input:disabled,select:disabled,textarea:disabled{background:var(--surface-subtle);color:var(--muted);opacity:.85}button:disabled{opacity:.6;cursor:wait}.secondary{background:var(--surface-subtle);color:var(--ink);border:1px solid var(--line)}.primary{background:var(--primary-bg);color:var(--on-brand);border:1px solid var(--info-border)}.primary-card{background:var(--navy);color:var(--on-brand)}.primary-card strong,.primary-card span{color:var(--on-brand)}.notice{background:var(--warning-bg);color:var(--warning);border-color:var(--warning-border)}.error,[role=alert]{color:var(--danger)}a{color:var(--info)}.sidebar a,.sidebar button,.sidebar .release-notice-trigger{color:var(--on-brand)}th{background:var(--surface-subtle);color:var(--muted)}tbody tr:hover{background:var(--surface-hover)}.mfa-secret{background:var(--code-bg);color:var(--code-ink)}dialog::backdrop{background:#071923aa}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input[type=checkbox],input[type=radio]{accent-color:var(--primary-bg)}.admin-tabs{background:var(--surface-subtle)}.admin-tabs button[aria-selected=true]{background:var(--primary-bg);color:var(--on-brand)}.release-notice header{background:var(--surface-subtle)}.release-notice-version{color:var(--accent)}.settings-fold,.settings-fold summary{background:var(--surface);color:var(--ink)}.print-file-row,.device-row{border-color:var(--line)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.release-notice-trigger.menu-version{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center}.release-notice-trigger small{font-size:.76rem;opacity:.85}

.admin-subsection,.admin-user-details{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}.admin-subsection>summary,.admin-user-details>summary{padding:15px 18px;min-height:48px;cursor:pointer;font-weight:700;color:var(--ink)}.admin-subsection>.panel{border:0;border-radius:0;margin:0}.admin-user-details{margin-block:10px}.admin-user-details>.user-edit-form{border:0!important;margin:0!important}.admin-subsection>.panel>h3:first-child{margin-block-start:0}.admin-subsection .panel-head h3{margin-block-start:0}
:root{--sidebar-ink:#e2eef3;--sidebar-accent:#e4c887}
#app .sidebar #nav button,#app .sidebar #nav .gui-icon,#app .sidebar .brand small,#app .sidebar .user-box{color:var(--sidebar-ink)}
#app .sidebar #nav button.active,#app .sidebar #nav button.active .gui-icon{color:var(--on-brand)}
#app .sidebar #logout,#app .sidebar #close-menu,#app .sidebar #whats-new-button{background:#ffffff12;color:var(--on-brand);border-color:#ffffff50}
#app .sidebar #whats-new-button .gui-icon,#app .sidebar #logout .gui-icon{color:var(--sidebar-ink)}
#admin-settings-tabs .admin-tabs button[aria-selected=true]{background:var(--primary-bg);color:var(--on-brand);border-color:var(--info-border)}
/* Sidebar stays on the branded navy surface in both themes. */
#app .sidebar #nav button[data-gui-icon],#app .sidebar #nav button[data-gui-icon] .gui-icon{color:var(--sidebar-ink)!important}
#app .sidebar #whats-new-button[data-gui-icon],#app .sidebar #logout[data-gui-icon]{background:#ffffff12!important;color:var(--on-brand)!important;border-color:#ffffff50!important}
#app .sidebar #whats-new-button .gui-icon,#app .sidebar #logout .gui-icon{color:var(--sidebar-ink)!important}
#admin-settings-tabs .admin-tabs button[aria-selected=true]{background:var(--primary-bg)!important;color:var(--on-brand)!important;border-color:var(--info-border)!important}
/* Settings hierarchy: one location for each control and one icon family. */
#admin-settings-tabs .settings-section-icon{width:22px;height:22px;flex:0 0 22px;color:var(--accent);vertical-align:middle;margin-inline-end:10px;pointer-events:none}
#admin-settings-tabs .admin-tabs button .settings-section-icon{color:inherit;margin-inline-end:8px}
#admin-settings-tabs h3{display:flex;align-items:center;line-height:1.5}
#admin-settings-tabs .admin-subsection>summary{display:flex;align-items:center;list-style:none;gap:0}
#admin-settings-tabs .admin-subsection>summary::after{content:'⌄';font-size:20px;margin-inline-start:auto;transform:rotate(90deg);color:var(--muted)}
#admin-settings-tabs .admin-subsection[open]>summary::after{transform:none}
#admin-settings-tabs .admin-subsection>summary::-webkit-details-marker{display:none}
#admin-settings-tabs .admin-subsection .admin-subsection{margin:0 18px 14px;background:var(--surface-subtle)}
#admin-settings-tabs .user-manager>.panel-head h3{display:none}
#admin-settings-tabs .user-manager>.panel-head p{margin-block:0 12px}
#admin-settings-tabs .admin-subsection>.panel+#security-keys-manager{border-block-start:1px solid var(--line)}
#admin-settings-tabs .admin-tab-content{gap:14px}
#admin-settings-tabs .panel-head{gap:12px}
#admin-settings-tabs input,#admin-settings-tabs select,#admin-settings-tabs textarea{min-height:44px}
#admin-settings-tabs .form-grid{gap:14px 18px}
#admin-settings-tabs .screen-permissions-grid{gap:8px}
#admin-settings-tabs .admin-tabs button{display:flex;justify-content:center;align-items:center}
@media(max-width:480px){#admin-settings-tabs .admin-tabs button{flex-direction:column;gap:5px}#admin-settings-tabs .admin-tabs button .settings-section-icon{margin:0;width:20px;height:20px}#admin-settings-tabs .admin-subsection>summary{padding:13px 12px}#admin-settings-tabs .admin-subsection .admin-subsection{margin-inline:10px}}
#admin-settings-tabs #user-form>.panel-head{display:none}

#admin-settings-tabs .admin-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:600px){#admin-settings-tabs .admin-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}#admin-settings-tabs .admin-tabs button{flex-direction:row;gap:7px}#admin-settings-tabs .admin-tabs button .settings-section-icon{margin:0}}

#admin-settings-tabs .admin-tabs button{scroll-margin-block-start:160px}

.pledge-donor-results{border:1px solid var(--line);border-radius:12px;background:var(--surface);max-height:280px;overflow:auto;padding:6px;display:grid;gap:4px}.pledge-donor-results[hidden]{display:none}.pledge-donor-results button{text-align:start;background:transparent;color:var(--ink);border:0;border-radius:8px;padding:10px;white-space:normal;overflow-wrap:anywhere}.pledge-donor-results button:hover,.pledge-donor-results button[aria-selected=true]{background:var(--surface-subtle);outline:1px solid var(--info-border)}.pledge-donor-results .pledge-donor-add{color:var(--info);border-top:1px solid var(--line);font-weight:700}.pledge-donor-tools [hidden]{display:none!important}

#pledge-form .pledge-native-donor{display:none!important}

.phone-validation-error{display:block;color:var(--danger);font-size:.85rem;line-height:1.5;white-space:normal}.phone-validation-error[hidden]{display:none!important}input[type=tel][aria-invalid=true]{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}

#admin-data-health-banner{margin-block:0 18px;padding:16px 20px;border-inline-start:4px solid var(--accent);background:var(--surface)}#admin-data-health-banner .panel-head{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px;margin-block-end:8px}#admin-data-health-banner .panel-head p{margin-block:4px;color:var(--muted)}#admin-data-health-banner [data-health-overview]{font-weight:700;color:var(--ink)!important}#admin-data-health-banner .data-health-details>summary{cursor:pointer;padding:8px 0;color:var(--info);font-weight:700;min-height:44px}#admin-data-health-banner .health-grid{margin-block-start:12px;grid-template-columns:repeat(4,minmax(0,1fr))}#admin-data-health-banner .health-action{min-width:0;background:var(--surface-subtle);color:var(--ink);border:1px solid var(--line)}#admin-data-health-banner .health-action strong{font-size:1.5rem}.field-setting{background:var(--surface-subtle);color:var(--ink)}.field-setting small{color:var(--muted)}@media(max-width:760px){#admin-data-health-banner{padding:14px}#admin-data-health-banner .health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#admin-data-health-banner .panel-head{display:block}#admin-data-health-banner .health-action{padding:10px}}

#admin-data-health-banner .health-grid{gap:8px}#admin-data-health-banner .health-action{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:12px;text-align:start;border-radius:10px;min-height:72px}#admin-data-health-banner .health-action b{font-size:.86rem;line-height:1.4}#admin-data-health-banner .health-action small,#admin-data-health-banner .health-action>.gui-icon{display:none}#donor-invalid-phone-banner{margin-block-end:18px;padding:14px;border-inline-start:4px solid var(--warning)}#donor-invalid-phone-banner .health-action{display:flex;align-items:center;gap:18px;flex-wrap:wrap;width:100%;text-align:start;background:var(--surface-subtle);color:var(--ink);border:1px solid var(--line);padding:12px;border-radius:10px}#donor-invalid-phone-banner strong{font-size:1.7rem;color:var(--warning)}#donor-invalid-phone-banner span{color:var(--info)}#donor-invalid-phone-banner [role=status]:empty{display:none}

/* 1.44.1: independent, native disclosure controls for every settings section. */
#admin-settings-tabs .settings-fold-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-block:-10px 16px}#admin-settings-tabs .settings-fold-actions button{font-size:.88rem;padding:8px 12px;min-height:44px}#admin-settings-tabs .settings-section-fold{margin:0;min-width:0}#admin-settings-tabs .settings-section-fold>.panel{border:0;box-shadow:none;margin:0}#admin-settings-tabs .settings-section-fold .settings-fold-original-title{display:none}#admin-settings-tabs .settings-section-fold>summary{min-height:52px;overflow-wrap:anywhere}#admin-data-health-banner .data-health-details{border:0;background:transparent;margin:0}#admin-data-health-banner .data-health-details>summary{padding:8px 0}#admin-settings-tabs .manual-backup-panel{padding:16px;margin:0}#admin-settings-tabs .settings-section-fold .panel-head:empty{display:none}@media(max-width:600px){#admin-settings-tabs .settings-fold-actions{justify-content:stretch}#admin-settings-tabs .settings-fold-actions button{flex:1;min-width:0}#admin-settings-tabs .settings-section-fold>summary{font-size:.95rem}}

/* 1.44.2: Hebrew previous/next controls use physical RTL directions. */
.pager,.calendar-nav,.pledge-calendar-navigation{direction:rtl}.pager,.pledge-calendar-navigation{flex-direction:row}button[data-gui-icon="back"],button[data-gui-icon="next"],a[data-gui-icon="back"],a[data-gui-icon="next"]{display:inline-flex;flex-direction:row;direction:rtl;align-items:center;justify-content:center;gap:7px}button[data-gui-icon="back"]>.gui-svg-icon,button[data-gui-icon="next"]>.gui-svg-icon,a[data-gui-icon="back"]>.gui-svg-icon,a[data-gui-icon="next"]>.gui-svg-icon{margin:0;transform:none;flex-shrink:0}.dual-calendar .calendar-nav button>.gui-svg-icon{margin:0;display:inline-block}@media(max-width:480px){.dual-calendar .calendar-nav button{gap:3px}.dual-calendar .calendar-nav button>.gui-svg-icon{width:16px;height:16px;flex-basis:16px}}
