/* Shared colour system. Themes contain validated colours, not user CSS. */
:root{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--accent:#2261d5;--on-accent:#fff;--sidebar-bg:#f5f7fb;--sidebar-ink:#172033;--sidebar-muted:#657187;--surface-subtle:#f3f5f9}
body{background:var(--bg);color:var(--ink)}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-ink);border-right:1px solid var(--line)}.sidebar .brand{color:var(--sidebar-ink)}.sidebar-caption,.sidebar-bottom small{color:var(--sidebar-muted)}.sidebar-bottom{border-color:var(--line)}.nav-item:hover{background:var(--sidebar-hover);color:var(--sidebar-ink)}.nav-item.active{background:var(--sidebar-active);color:var(--sidebar-ink)}.nav-item.active .icon{color:inherit}.brand-mark{background:var(--accent);color:var(--on-accent);font-family:inherit;font-style:normal;font-size:25px;font-weight:700}.brand-dot{color:var(--green)}.server-indicator:before{background:var(--accent)}
.topbar{background:var(--white)}.breadcrumb,.breadcrumb>span{color:var(--muted)}.breadcrumb strong{color:var(--ink)}.avatar{background:var(--soft);color:var(--green)}.card,.metric,.table-wrap,.tool-search,.settings-grid .tool-tile,.wizard{background:var(--white);border-color:var(--line)}.card,.metric{box-shadow:0 3px 14px #1a2d5003}.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:none}.primary:hover{background:var(--accent);filter:brightness(.94)}.secondary,.small-button{background:var(--white);color:var(--green);border-color:var(--line)}.secondary:hover,.small-button:hover,.tool-tile:hover,.settings-grid .tool-tile:hover{background:var(--soft);border-color:var(--line)}.tool-group .tool-tile,.recent-job{border-color:var(--line)}.tool-icon{background:var(--soft);color:var(--green)}.tool-copy small,.detail-list dt,.metric-label,.metric>small,.app-footer{color:var(--muted)}.detail-list dd,.host-summary .icon,.metric-label .icon{color:var(--ink)}.tool-search kbd,pre{background:var(--surface-subtle);border-color:var(--line);color:var(--muted)}.field input,.field select,.field textarea,.list-search{background:var(--white);color:var(--ink);border-color:var(--line)}.field.checkbox,th{background:var(--surface-subtle);color:var(--muted);border-color:var(--line)}td{color:var(--ink);border-color:var(--line)}button:focus-visible,a:focus-visible{outline-color:var(--accent)}input:focus,select:focus,textarea:focus{outline-color:var(--accent)}input[type=color]{height:44px;cursor:pointer;padding:5px 7px}.wizard-steps{background:var(--surface-subtle)}.wizard-steps li.current>span{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 4px var(--soft)}.toast{background:var(--ink);color:var(--white)}.login-side{background:var(--bg)}.login-intro{background:#16233c}.login-intro .brand-dot{color:#b6ccf9}.login-switch{margin-top:24px;font-size:12px}.notice:not(.error):not(.warning):not(.success){background:var(--soft);color:var(--ink);border-color:var(--line)}
.theme-presets{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.theme-preset{background:transparent;border:2px solid transparent;border-radius:15px;color:var(--ink);padding:8px;font-size:12px;text-align:left}.theme-preset[aria-pressed=true]{border-color:var(--accent);background:var(--soft)}.theme-preset strong{display:block;margin:11px 3px 4px;font-weight:550}.theme-swatch{display:block;height:90px;border:1px solid #98a3b633;border-radius:9px;position:relative;overflow:hidden;box-shadow:0 3px 8px #00000008}.swatch-rail{position:absolute;left:0;top:0;bottom:0;width:29%;border-right:1px solid #98a3b633}.swatch-dot{position:absolute;right:14%;bottom:20%;width:37%;height:18%;border-radius:4px}
[data-appearance=dark]{color-scheme:dark}[data-appearance=dark] .badge.good{color:#a6ddbc;background:#263e33}[data-appearance=dark] .badge.neutral{color:#e3c895;background:#3b352c}[data-appearance=dark] .notice.warning{background:#352e22;color:#e2ca9b;border-color:#5f5035}[data-appearance=dark] .notice.error{background:#40282b;color:#ffc3bb;border-color:#684044}[data-appearance=dark] .error{color:#ffa9a0}[data-appearance=dark] .tool-icon{background:var(--soft);color:var(--green)}
@media(max-width:1100px){.theme-presets{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){.theme-presets{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
.password-field{min-width:0}.password-controls{display:flex;gap:14px;align-items:center;margin-top:9px}.password-controls .text-button{font-size:11px;padding:4px 0}.login-card .field.checkbox.recovery-choice{margin-top:20px;padding:12px;font-size:11px}.recovery-choice span{font-weight:400}
