/* Semantic palettes: light paper surfaces and layered, blue-grey night surfaces. */
:root {
 color-scheme:light;
 --page:#f3f5f8;--surface:#ffffff;--surface-soft:#f8fafc;--surface-inset:#edf1f6;--surface-raised:#e5ebf3;--surface-hover:#f0f4f9;
 --ink:#202836;--text-secondary:#515e72;--muted:#5f6f85;--placeholder:#69778b;
 --line:#dfe5ee;--line-subtle:#edf0f5;--line-strong:#bac5d4;--focus:#8c9eb9;
 --accent:#b9253c;--accent-dark:#9f1d32;--accent-solid:#bd263e;--accent-solid-hover:#a61f35;--accent-bg:#fbeef1;--accent-line:#e7c4cd;--soft:var(--accent-bg);
 --danger:#ac3046;--danger-bg:#fff1f4;--danger-line:#e9c6ce;
 --success:#28704d;--success-bg:#edf7f1;--success-line:#b7d4c2;
 --warning:#805b20;--warning-bg:#fbf5e8;--warning-line:#e8d8b4;
 --violet:#6e568e;--violet-bg:#f1edf8;--violet-line:#d8cbe9;
 --topbar:#ffffffd9;--switch-on:#65758b;--switch-off:#cdd6e2;--workspace:#e9eef5;
 --card-shadow:0 3px 16px #22304405;--dialog-shadow:0 24px 80px #1422392e;
 --brand-surface:#202126;--theme-track:#e8edf4;--theme-thumb:#ffffff;--theme-shadow:0 2px 7px #24344f12;
}
:root[data-theme="dark"] {
 color-scheme:dark;
 --page:#0f141d;--surface:#171f2c;--surface-soft:#141c28;--surface-inset:#202a39;--surface-raised:#293548;--surface-hover:#222e40;
 --ink:#edf2fa;--text-secondary:#c0cada;--muted:#9eacc1;--placeholder:#8998ae;
 --line:#303d50;--line-subtle:#263244;--line-strong:#51627b;--focus:#91a7ca;
 --accent:#f28b9d;--accent-dark:#f7a5b3;--accent-solid:#bd324e;--accent-solid-hover:#d1425f;--accent-bg:#332331;--accent-line:#6d3d51;--soft:var(--accent-bg);
 --danger:#f399aa;--danger-bg:#35232f;--danger-line:#704154;
 --success:#89d5b0;--success-bg:#19352f;--success-line:#365e52;
 --warning:#e2c18b;--warning-bg:#332d23;--warning-line:#67583e;
 --violet:#c4b0eb;--violet-bg:#2c283e;--violet-line:#554968;
 --topbar:#121b28eb;--switch-on:#657fa4;--switch-off:#3b4a60;--workspace:#101720;
 --card-shadow:0 6px 24px #0000001c;--dialog-shadow:0 28px 90px #00000070;
 --brand-surface:#101722;--theme-track:#0f1723;--theme-thumb:#303e53;--theme-shadow:0 3px 10px #00000038;
}
body,button,input,textarea,select{color:var(--ink)}
body{background:var(--page)}
input,select,textarea{caret-color:var(--accent)}
select{background-color:var(--surface);border-color:var(--line);color:var(--ink)}
select option{background:var(--surface);color:var(--ink)}
.fab-filter select{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px}
::selection{background:var(--accent-line);color:var(--ink)}
.card{box-shadow:var(--card-shadow)}
.btn.primary{background:var(--accent-solid);border-color:var(--accent-solid);color:#fff}
.btn.primary:hover:not(:disabled){background:var(--accent-solid-hover);border-color:var(--accent-solid-hover)}
.copy-tabs button[aria-selected="true"],.notification-count{background:var(--accent-solid);color:#fff}
.cq-switch input:checked+.switch-track{background:var(--accent-solid)}
.topbar{background:var(--topbar)}
dialog{background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:var(--dialog-shadow)}
dialog::backdrop{background:#080e197d;backdrop-filter:blur(4px)}
.auth-form-side,.pending{background:var(--page)}
.auth-tabs button,.stats-tabs button,.settings-category>button{color:var(--text-secondary)}
.auth-tabs button.selected,.stats-tabs button[aria-pressed=true]{color:var(--ink)}
.field input:disabled,.field select:disabled{color:var(--muted)}
.directory-card .directory-unset{color:var(--placeholder)!important}
.gauge-track{stroke:var(--surface-inset)}
.cq-questionnaire .progress-gauge,.cq-questionnaire .progress-gauge>span,.cq-panel-summary .progress-gauge,.cq-panel-summary .progress-gauge>span{color:var(--text-secondary)}
.notification-count{border-color:var(--surface)}
.jp-family-grid>button,.jp-properties input,.jp-properties select,.jp-properties textarea{color:var(--ink)}
.jp-canvas{background:var(--workspace)}
:root[data-theme="dark"] .sidebar{background:#0d141f;border-right:1px solid #233044}
:root[data-theme="dark"] .auth-story{background:#101722}
:root[data-theme="dark"] .auth-story:after{border-color:#b7355012}
:root[data-theme="dark"] .settings-category.selected,:root[data-theme="dark"] .jp-sheet.selected{background:var(--surface-inset)}
:root[data-theme="dark"] .jp-label.selected{background:var(--accent-bg);border-color:var(--accent-line)}
:root[data-theme="dark"] .question-row{box-shadow:none}
:root[data-theme="dark"] #toast{background:var(--surface-raised);border:1px solid var(--line);color:var(--ink)}

/* Display the supplied transparent artwork directly on the dark navigation. */
.logo{padding:0;background:transparent;border-radius:0}
.logo img{width:100%;height:auto;aspect-ratio:6/1;object-fit:cover;object-position:center}
.sidebar .logo{padding:0;margin-bottom:36px}
.auth-mobile-logo .logo,.pending .logo,.boot .logo{padding:12px 14px;background:var(--brand-surface);border-radius:8px}
.pending .logo{margin-right:auto;margin-left:auto}

/* One native radio group with a sliding, raised selection. */
.appearance-card{max-width:860px;margin-bottom:24px;padding:28px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.appearance-heading{display:flex;align-items:center;gap:16px;min-width:0}
.appearance-symbol{width:43px;height:43px;display:grid;place-items:center;flex:none;background:var(--surface-inset);color:var(--text-secondary);border:1px solid var(--line-subtle);border-radius:13px}
.appearance-heading h2{font-size:15px;letter-spacing:-.2px}
.appearance-heading p{font-size:12px;color:var(--muted);margin-top:7px}
.appearance-choice{flex:none;text-align:center}
.appearance-choice>p{font-size:10px;color:var(--muted);margin-top:10px}
.theme-switch{display:flex;position:relative;isolation:isolate;width:232px;border:1px solid var(--line);border-radius:13px;padding:5px;background:var(--theme-track)}
.theme-switch-thumb{position:absolute;z-index:-1;top:5px;bottom:5px;left:5px;width:calc((100% - 10px)/2);border-radius:9px;background:var(--theme-thumb);box-shadow:var(--theme-shadow);border:1px solid var(--line-subtle);transition:transform .2s cubic-bezier(.2,.7,.3,1)}
.theme-switch:has(input[value="dark"]:checked) .theme-switch-thumb{transform:translateX(100%)}
.theme-option{flex:1;display:flex;justify-content:center;align-items:center;gap:9px;min-height:44px;font-size:12px;font-weight:550;color:var(--muted);cursor:pointer;position:relative;border-radius:9px}
.theme-option input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer;z-index:2}
.theme-option:has(input:checked){color:var(--ink)}
.theme-option:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}
.theme-option .icon{width:17px;height:17px;stroke-width:1.8}
@media(max-width:650px){.appearance-card{padding:22px 20px;align-items:stretch;flex-direction:column;gap:22px}.appearance-choice{text-align:left}.theme-switch{width:100%;max-width:360px}.appearance-choice>p{margin-left:2px}.appearance-heading{gap:13px}}
@media(prefers-reduced-motion:reduce){.theme-switch-thumb{transition:none}}
@media print{.appearance-card{display:none}}
