/* Public customization tokens. Load after template.css. */
:root{--primary:#002b5c;--accent:#ff5a00;--background:#f2f6fb;--surface:#fff;--text:#052b59;--muted:#55708d;--border:#ccdaea;--accent-text:#052b59;--sidebar-text:#fff;--ink:var(--text);--cream:var(--background);--card:var(--surface);--green:var(--accent);--lime:var(--accent);--line:var(--border);--navy:var(--primary);--navy-soft:var(--primary);--accent-soft:color-mix(in srgb,var(--accent) 12%,var(--surface));--focus-soft:color-mix(in srgb,var(--accent) 25%,transparent)}
body{font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button:disabled{opacity:.5;cursor:not-allowed}a{color:var(--ink)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1{font-size:clamp(28px,3vw,36px)}.sub{max-width:65ch}.label,.section-label,.switch,.fine,th,.pill{font-size:14px}.primary-btn{color:var(--accent-text);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px}.secondary-btn{background:var(--primary);color:var(--sidebar-text);padding:12px 20px;border:0;border-radius:10px;cursor:pointer;min-height:44px}.logout{background:var(--surface);cursor:pointer;min-height:44px}.nav a{color:var(--sidebar-text)}.nav a.active{color:var(--accent-text)}.nav a:hover{outline:1px solid currentColor}.side{padding:28px 20px}.nav{margin-top:32px;overflow-y:auto;flex:1;min-height:0}.nav-icon{display:grid;place-items:center}.brand-logo{max-height:56px;object-fit:contain}.mark{color:var(--accent-text)}.side-toggle{width:40px;height:40px;right:-20px}.resize-handle:focus-visible{outline:3px solid var(--accent)}.topbar{gap:16px}.main{max-width:1600px}.skip-link{position:fixed;left:16px;top:-80px;background:var(--surface);padding:12px;z-index:100}.skip-link:focus{top:16px}.mobile-backdrop{display:none}.cardhead{gap:16px;flex-wrap:wrap}.table-scroll{overflow:auto}table{min-width:600px}td{font-size:15px}.section-body{padding:24px}.toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin:24px 0}.toolbar label{flex:1;min-width:180px}.field{display:grid;gap:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wide{grid-column:1/-1}.button-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px}.status-success{background:#e8f6ef;color:#176044}.status-warning{background:#fff4df;color:#805400}.status-error{background:#fcecec;color:#a52b35}.demo-note{border-left:4px solid var(--accent);padding:12px 18px;background:var(--accent-soft);margin:24px 0;color:var(--ink)}.switch input{flex-shrink:0}.rds-dialog .rds-accept{background:var(--primary);color:var(--sidebar-text);border-color:var(--primary)}.rds-dialog[data-kind=confirm] .rds-accept{background:#a52b35;color:#fff;border-color:#a52b35}.loginbox{min-height:100vh}.loginbox .panel{width:min(460px,100%)}.color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.color-grid input{width:100%;height:44px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.preview-logo{max-width:180px;max-height:70px;object-fit:contain}.nav-footer{font-size:12px;color:var(--sidebar-text);margin-top:20px}.report-bars{display:flex;align-items:flex-end;gap:20px;height:180px;padding:10px 0;margin-bottom:30px}.bar{flex:1;height:var(--value);background:var(--accent);border-radius:8px 8px 0 0;position:relative;min-width:30px}.bar span{position:absolute;bottom:-28px;left:0;right:0;text-align:center;color:var(--ink);font-size:14px}.report-bars[role=img]{border-bottom:1px solid var(--line)}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media(max-width:800px){.shell,.shell.collapsed{grid-template-columns:1fr}.shell.mobile-open .side{width:min(300px,85vw);padding:28px 20px}.mobile-backdrop{position:fixed;inset:0;background:#001b3f88;z-index:35;border:0}.shell.mobile-open .mobile-backdrop{display:block}.form-grid{grid-template-columns:1fr}.color-grid{grid-template-columns:1fr 1fr}.topbar{padding:0 18px}.main{padding:24px 18px}.account-meta{display:none}.nav-footer{display:none}}
