/* Shared semantic colors: every palette works in light and dark appearances. */
:root,[data-theme="acotec"]{--accent-light:#bc1919;--accent-dark:#f3a0a0;--tint-light:#fbecec;--tint-dark:#402a30;--swatch:#e9b6b6;--chrome:#303438}
[data-theme="rose"],[data-palette="rose"]{--accent-light:#a43865;--accent-dark:#efb3cd;--tint-light:#f9eaf1;--tint-dark:#3f2c38;--swatch:#edb9cf}
[data-theme="peach"],[data-palette="peach"]{--accent-light:#98471e;--accent-dark:#f0bd9d;--tint-light:#fff0e5;--tint-dark:#3e302a;--swatch:#f3c7a9}
[data-theme="sand"],[data-palette="sand"]{--accent-light:#776034;--accent-dark:#dbc9a4;--tint-light:#f4efdf;--tint-dark:#39352d;--swatch:#e4d5b2}
[data-theme="lemon"],[data-palette="lemon"]{--accent-light:#746415;--accent-dark:#ded08d;--tint-light:#f9f5dc;--tint-dark:#383629;--swatch:#e9df9f}
[data-theme="sage"],[data-palette="sage"]{--accent-light:#4e6c42;--accent-dark:#b8d1a9;--tint-light:#ecf2e6;--tint-dark:#2c372c;--swatch:#c4d7b8}
[data-theme="mint"],[data-palette="mint"]{--accent-light:#216e58;--accent-dark:#a0dac2;--tint-light:#e6f4ed;--tint-dark:#233a33;--swatch:#b5dfcc}
[data-theme="aqua"],[data-palette="aqua"]{--accent-light:#1f6b76;--accent-dark:#a0d7de;--tint-light:#e5f3f4;--tint-dark:#25373e;--swatch:#b1dce0}
[data-theme="sky"],[data-palette="sky"]{--accent-light:#365f9c;--accent-dark:#b0caf0;--tint-light:#eaf1fc;--tint-dark:#2a3447;--swatch:#bfd2ee}
[data-theme="lavender"],[data-palette="lavender"]{--accent-light:#6351a1;--accent-dark:#cabcf1;--tint-light:#f0ecfa;--tint-dark:#343047;--swatch:#cec3eb}
[data-theme="lilac"],[data-palette="lilac"]{--accent-light:#86478b;--accent-dark:#deb9e2;--tint-light:#f6ebf7;--tint-dark:#3d2e42;--swatch:#dfc0e2}
:root{--ink:#292e35;--muted:#626973;--surface:#f5f5f6;--panel:#fff;--panel-subtle:#f0f2f4;--line:#dfe2e6;--input-line:#b5bdc8;--brand:var(--accent-light);--brand-soft:var(--tint-light);--on-brand:#fff;--teal:#216e58;--success:#216e58;--success-bg:#e6f4ed;--info:#365f9c;--info-bg:#eaf1fc;--warning:#806015;--warning-bg:#faf2db;--danger:#ac333e;--danger-bg:#fcecef;--purple:#73519d;--purple-bg:#f1eaf9;--focus:var(--brand);--shadow:0 2px 10px #222b3806;--chrome:#303438;color-scheme:light}
:root[data-mode="dark"]{--ink:#e9edf2;--muted:#aab4c2;--surface:#171a1f;--panel:#20242b;--panel-subtle:#292e37;--line:#3b424d;--input-line:#697583;--brand:var(--accent-dark);--brand-soft:var(--tint-dark);--on-brand:#20242b;--teal:#a0dac2;--success:#a0dac2;--success-bg:#253c34;--info:#b0caf0;--info-bg:#2c364a;--warning:#e7cb88;--warning-bg:#3d3525;--danger:#f4b0b8;--danger-bg:#422c34;--purple:#d3b9ef;--purple-bg:#392e49;--chrome:#24282f;--shadow:0 4px 16px #00000014;color-scheme:dark}
:root{--color-ink:var(--ink);--color-brand:var(--brand);--color-teal:var(--teal);--color-surface:var(--surface)}
body{accent-color:var(--brand)}
:focus-visible{outline-color:var(--focus)}
::selection{background:var(--brand-soft);color:var(--ink)}
.brand-logo{display:block;width:155px;height:auto;max-width:100%;background:#fff;padding:7px 8px;border-radius:5px}
.brand{min-height:105px}.brand-caption{letter-spacing:0;margin-top:7px}
.login-brand .brand-logo{width:210px;padding:11px 14px;border-radius:7px}
.button.primary,.ai-chat-launcher,.ai-chat-send{color:var(--on-brand);box-shadow:none}
.button.primary:hover,.ai-chat-launcher:hover,.ai-chat-send:hover:not(:disabled){background:var(--brand);border-color:var(--brand);filter:brightness(.92)}
.workflow-band,.login-story{background:var(--chrome);color:#f5f6f8}
.topbar{background:var(--panel)}
.input:focus,.ai-chat-compose:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}
.ai-chat{--ai-soft:var(--brand-soft);--ai-border:var(--line)}
.planning{--plan-line:var(--line);--plan-muted:var(--muted);--plan-blue:var(--brand);--plan-teal:var(--success);--plan-amber:var(--warning);--plan-purple:var(--purple)}
.plan-hero,.plan-code{background:var(--chrome);color:#e9edf2}
.nav-link.active,.avatar,.module-symbol{background:var(--brand-soft);color:var(--brand)}
.workspace-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;margin:auto;padding:30px;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--ink);box-shadow:0 24px 80px #0004}
.workspace-dialog::backdrop{background:#12182088;backdrop-filter:blur(4px)}
.workspace-dialog h2{font-size:23px}.workspace-dialog p{color:var(--muted);line-height:1.75;margin:12px 0 22px;font-size:14px}
.dialog-symbol{width:48px;height:48px;border-radius:12px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;margin-bottom:22px}
.dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:24px}.dialog-actions form{display:flex}.workspace-dialog .button{min-height:44px}
.password-prompt[open]:not(:modal){position:fixed;inset:0;z-index:90}
.appearance-settings{margin-bottom:25px;scroll-margin-top:100px}#password-settings{scroll-margin-top:100px}
.appearance-settings fieldset{margin:0;padding:0;border:0;min-width:0}.appearance-settings legend{font-weight:500;font-size:14px;margin-bottom:14px}
.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:12px}
.theme-option{position:relative;border:1px solid var(--line);border-radius:9px;padding:11px;cursor:pointer;min-height:101px;background:var(--panel)}
.theme-option:has(input:checked){border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}
.theme-option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}
.theme-option input{position:absolute;right:10px;bottom:13px;width:16px;height:16px;accent-color:var(--brand)}
.theme-preview{display:flex;height:30px;border-radius:5px;overflow:hidden;margin-bottom:10px}.theme-preview span:nth-child(1){width:25%;background:#303438}.theme-preview span:nth-child(2){width:45%;background:var(--swatch)}.theme-preview span:nth-child(3){width:30%;background:var(--tint-light)}
[data-palette="acotec"]{--swatch:#bc1919;--tint-light:#fbecec}.theme-label{display:block;font-size:13px;font-weight:500;padding-right:20px}.theme-standard{display:block;font-size:10px;color:var(--muted)}
.mode-options{display:flex;flex-wrap:wrap;gap:10px}.mode-options label{display:flex;gap:9px;align-items:center;min-height:44px;padding:10px 17px;border:1px solid var(--line);border-radius:8px;cursor:pointer;font-size:13px}.mode-options label:has(input:checked){background:var(--brand-soft);border-color:var(--brand)}
.appearance-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.appearance-actions .field-help{flex-basis:100%}
.login-illustration{width:100%;max-width:520px;height:auto}.login-barrier-caption{font-size:11px;color:#b7bec8;margin-top:12px}
.document-paper{--ink:#292e35;--muted:#626973;--panel:#fff;--panel-subtle:#f0f2f4;--line:#dfe2e6;--brand:#bc1919;--warning:#806015;--warning-bg:#faf2db;background:white;color:var(--ink);color-scheme:light}
@media(max-width:600px){.workspace-dialog{padding:24px}.dialog-actions>*{flex:1}.dialog-actions .button{width:100%;white-space:normal}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appearance-actions>.button{flex:1;white-space:normal}.login-brand .brand-logo{width:155px}.login-barrier-caption{display:none}}
@media print{:root[data-mode]{--ink:#292e35;--muted:#626973;--surface:#fff;--panel:#fff;--panel-subtle:#f0f2f4;--line:#dfe2e6;--brand:#bc1919;color-scheme:light}body{background:white;color:#292e35}.workspace-dialog{display:none!important}}
.workflow-heading p,.pipeline-label,.login-story p{color:#c4c9d1}.workflow-live{color:#e2e5e9;border-color:#ffffff30}.pipeline-step .icon,.login-footer{color:#b3bbc6}.pipeline-track{background:#ffffff20}.pipeline-track:before{background:#c2a4a4}.pipeline-step[data-tone="teal"] .pipeline-track:before{background:#97c8b7}.pipeline-step[data-tone="blue"] .pipeline-track:before{background:#a4bfe8}.pipeline-step[data-tone="amber"] .pipeline-track:before{background:#d9c18c}.pipeline-step:hover .pipeline-label{color:#fff}.plan-hero p,.plan-handoff-step{color:#c4c9d1}

.input,select.input,textarea.input{border-color:var(--input-line)}

.button.teal{color:var(--on-brand)}
