/* Semantic colors shared by every view. Theme changes never modify roster data. */
:root{
 --ink:#191C1A;--muted:#60695E;--faint:#687261;--bg:#F4F4EF;--surface:#FFFFFF;--surface-subtle:#EDF0E9;--hover:#E8EEDF;--selected:#EDF7CD;--line:#DDE3D6;--line-soft:#E8ECE3;
 --accent:#DDFB67;--accent-ink:#3C501C;--accent-bg:#EDF7CD;--accent-line:#A2B473;--focus-ring:#6A7E36;--button-bg:#191C1A;--button-ink:#FFFFFF;--button-hover:#30382A;
 --sidebar-bg:#FFFFFF;--sidebar-ink:#191C1A;--sidebar-muted:#60695E;--sidebar-active-bg:#DDFB67;--sidebar-active-ink:#191C1A;--brand-bg:#30382A;--brand-ink:#DDFB67;
 --avatar-bg:#E8EDE1;--avatar-ink:#4D5D3C;--chart-track:#E8EEDC;--chart-fill:#789538;--highlight:#DDFB67;--attack:#916675;--defense:#526E67;
 --warning-bg:#FBF2DF;--warning-ink:#7C581A;--warning-line:#E2C792;--success-bg:#EAF4E7;--success-ink:#386344;--success:#4F7957;--danger:#B53C3C;--danger-line:#D7AAAA;--toast-bg:#25301F;--toast-ink:#FFFFFF;--toast-error:#8A3434;--shadow-color:#17200F20;--overlay:#11180B66;
 --career-0:#96601E;--career-1:#AC4040;--career-2:#7459AA;--career-3:#356494;--career-4:#A93E70;--career-5:#2F746B;--career-6:#795093;--career-7:#90602B;--career-8:#5B702E;--career-9:#286D83;--career-10:#445C92;
}
:root[data-theme="blue"]{
 --ink:#172B4D;--muted:#53657C;--faint:#60728A;--bg:#F8FAFC;--surface:#FFFFFF;--surface-subtle:#F0F4F9;--hover:#EAF0FA;--selected:#E5EEFF;--line:#D9E2EF;--line-soft:#E9EEF5;
 --accent:#1E40AF;--accent-ink:#1E40AF;--accent-bg:#E5EEFF;--accent-line:#9BB0DF;--focus-ring:#1E40AF;--button-bg:#1E40AF;--button-ink:#FFFFFF;--button-hover:#17348F;
 --sidebar-bg:#FFFFFF;--sidebar-ink:#344864;--sidebar-muted:#60728A;--sidebar-active-bg:#E5EEFF;--sidebar-active-ink:#1E40AF;--brand-bg:#1E40AF;--brand-ink:#FFFFFF;
 --avatar-bg:#E8EEF8;--avatar-ink:#486490;--chart-track:#E7EEF9;--chart-fill:#D97706;--highlight:#D97706;--attack:#986375;--defense:#3D6A97;
}
:root[data-theme="teal"]{
 --ink:#134E4A;--muted:#456B66;--faint:#53746E;--bg:#F0FDFA;--surface:#FFFFFF;--surface-subtle:#E8F5F0;--hover:#DEF2EB;--selected:#D7F3E9;--line:#C9E5DA;--line-soft:#E4F1EB;
 --accent:#0D9488;--accent-ink:#09675E;--accent-bg:#D7F3E9;--accent-line:#6DB5A3;--focus-ring:#0B7B70;--button-bg:#0D9488;--button-ink:#061F1B;--button-hover:#11A99A;
 --sidebar-bg:#FFFFFF;--sidebar-ink:#27584F;--sidebar-muted:#53746E;--sidebar-active-bg:#D7F3E9;--sidebar-active-ink:#09675E;--brand-bg:#0D7166;--brand-ink:#FFFFFF;
 --avatar-bg:#DDF0E6;--avatar-ink:#2F7060;--chart-track:#DDEEE5;--chart-fill:#EA580C;--highlight:#EA580C;--attack:#A16B3F;--defense:#397F75;
}
:root[data-theme="indigo"]{
 --ink:#312E81;--muted:#625E82;--faint:#6D688D;--bg:#F5F3FF;--surface:#FFFFFF;--surface-subtle:#F0EDF8;--hover:#EAE6F7;--selected:#E8E5FF;--line:#DED8EE;--line-soft:#ECE8F5;
 --accent:#6366F1;--accent-ink:#4647AC;--accent-bg:#E8E5FF;--accent-line:#B0A8DF;--focus-ring:#5554CA;--button-bg:#6366F1;--button-ink:#000000;--button-hover:#7C7EF8;
 --sidebar-bg:#FFFFFF;--sidebar-ink:#4D4775;--sidebar-muted:#6D688D;--sidebar-active-bg:#E8E5FF;--sidebar-active-ink:#4647AC;--brand-bg:#4E48B4;--brand-ink:#FFFFFF;
 --avatar-bg:#E8E4F5;--avatar-ink:#5C568E;--chart-track:#E7E2F7;--chart-fill:#059669;--highlight:#059669;--attack:#966680;--defense:#6567A3;
}
:root[data-theme="dark"]{
 --ink:#F8FAFC;--muted:#BAC6D6;--faint:#9AACC4;--bg:#020617;--surface:#0F172A;--surface-subtle:#162238;--hover:#1B2D42;--selected:#15382E;--line:#334155;--line-soft:#243248;
 --accent:#22C55E;--accent-ink:#86EFAC;--accent-bg:#15382E;--accent-line:#3E7858;--focus-ring:#86EFAC;--button-bg:#22C55E;--button-ink:#06190D;--button-hover:#4ADE80;
 --sidebar-bg:#0B1222;--sidebar-ink:#E2E8F0;--sidebar-muted:#A7B8CB;--sidebar-active-bg:#173B2C;--sidebar-active-ink:#86EFAC;--brand-bg:#173B2C;--brand-ink:#86EFAC;
 --avatar-bg:#23344B;--avatar-ink:#C8D8EA;--chart-track:#24354B;--chart-fill:#4ADE80;--highlight:#22C55E;--attack:#E0A8BB;--defense:#92C6E0;
 --warning-bg:#3A2C17;--warning-ink:#F8CE87;--warning-line:#74562F;--success-bg:#143424;--success-ink:#A0E9B5;--success:#86EFAC;--danger:#F6A1A1;--danger-line:#985757;--toast-bg:#D6F5E1;--toast-ink:#0B2716;--toast-error:#6F2727;--shadow-color:#00000066;--overlay:#00000099;
 --career-0:#ECC17D;--career-1:#F6A5A5;--career-2:#C8B1F3;--career-3:#9BC4F0;--career-4:#F4AFD0;--career-5:#8DD6C7;--career-6:#D8B5EC;--career-7:#EDC28E;--career-8:#BFDA8E;--career-9:#8AD1E5;--career-10:#A8BEF3;
}
/* Overview and inspector cards keep their hierarchy in all five palettes. */
:root{--summary-accent:#DDFB67;--summary-accent-ink:#191C1A;--inverse-bg:#191C1A;--inverse-ink:#F8FAF5;--inverse-muted:#C6CEC0}
:root[data-theme="blue"]{--summary-accent:#1E40AF;--summary-accent-ink:#FFFFFF;--inverse-bg:#172B4D;--inverse-ink:#FFFFFF;--inverse-muted:#C6D4E8}
:root[data-theme="teal"]{--summary-accent:#0D9488;--summary-accent-ink:#061F1B;--inverse-bg:#134E4A;--inverse-ink:#FFFFFF;--inverse-muted:#C4DDD7}
:root[data-theme="indigo"]{--summary-accent:#6366F1;--summary-accent-ink:#000000;--inverse-bg:#312E81;--inverse-ink:#FFFFFF;--inverse-muted:#D5D2F4}
:root[data-theme="dark"]{--summary-accent:#22C55E;--summary-accent-ink:#06190D;--inverse-bg:#162238;--inverse-ink:#F8FAFC;--inverse-muted:#BAC6D6}
/* The layout and row density stay the same in all palettes. */
.theme-changing,.theme-changing *,.theme-changing *::before,.theme-changing *::after{transition:none!important}
:focus-visible{outline-color:var(--focus-ring)}input:focus,select:focus,textarea:focus{border-color:var(--focus-ring)}
.sidebar{background:var(--sidebar-bg);color:var(--sidebar-ink);border-color:var(--line)}
.sidebar .brand div>span,.sidebar .nav-label,.sidebar .nav-item svg,.sidebar .nav-count,.sidebar .local-user div>span{color:var(--sidebar-muted)}
.sidebar .nav-item{color:var(--sidebar-ink)}.sidebar .nav-item:hover{background:color-mix(in srgb,var(--sidebar-ink) 9%,var(--sidebar-bg))}
.sidebar .nav-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-ink)}.sidebar .nav-item.active svg{color:inherit}
.brand-mark{background:var(--brand-bg);color:var(--brand-ink)}.sidebar .user-avatar{background:var(--brand-bg);color:var(--brand-ink)}
.button.primary{background:var(--button-bg);border-color:var(--button-bg);color:var(--button-ink)}.button.primary:hover{background:var(--button-hover);border-color:var(--button-hover)}.button.primary svg{color:inherit}
dialog{background:var(--surface)}.toast{color:var(--toast-ink)}.toast.error{background:var(--toast-error);color:#FFFFFF}
.theme-toggle{min-height:44px;font-size:14px;gap:8px;background:var(--surface)}.theme-toggle .theme-dot{width:12px;height:12px;border-radius:50%;background:var(--highlight);border:1px solid color-mix(in srgb,var(--ink) 25%,transparent)}
.theme-current{color:var(--muted);max-width:74px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.theme-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.theme-option{display:block;position:relative;cursor:pointer;border:1px solid var(--line);border-radius:9px;padding:10px;color:var(--ink);background:var(--surface)}
.theme-option:has(input:checked){border-color:var(--focus-ring);box-shadow:0 0 0 1px var(--focus-ring)}.theme-option:has(input:focus-visible){outline:2px solid var(--focus-ring);outline-offset:3px}
.theme-option input{position:absolute;top:12px;right:12px;width:20px;height:20px;min-height:20px;accent-color:var(--focus-ring);padding:0}.theme-option strong{display:block;padding-right:28px;font-size:16px;font-weight:600}.theme-option small{display:block;margin-top:4px;font-size:14px;color:var(--muted)}
.theme-preview{display:grid;grid-template-columns:18px 1fr;gap:6px;margin-top:11px;height:59px;padding:6px;border:1px solid #64748B33;border-radius:5px;background:var(--preview-bg)}.theme-preview-rail{border-radius:3px;background:var(--preview-ink)}.theme-preview-main{display:grid;grid-template-columns:1fr 1fr;gap:5px}.theme-preview-main i{display:block;border-radius:3px;background:var(--preview-surface)}.theme-preview-main i:first-child{background:var(--preview-accent)}.theme-preview-main i:last-child{grid-column:1/-1;background:var(--preview-primary)}
.theme-note{margin-bottom:16px!important}.theme-dialog-footer{font-size:14px;color:var(--muted);margin-top:15px}
@media(max-width:800px){.theme-current{display:none}.topbar-status{gap:8px}}
@media(max-width:570px){.theme-options{gap:10px}.theme-option{padding:12px}.theme-option small{font-size:14px}.theme-preview{height:51px}}
