:root[data-theme=dark]{
 color-scheme:dark;--bg:#10151f;--panel:#1a2231;--sidebar:#151d2b;--input:#111926;--text:#edf2fa;--muted:#aebad0;
 --line:#303e51;--input-line:#455269;--hover:#243145;--selected:#244334;--selected-text:#b6e8c9;
 --accent:#287a4b;--on-accent:#fff;--secondary:#293e36;--secondary-text:#a5e0bc;--link:#8ee1bc;
 --notice:#21392e;--danger:#ffb5a8;--focus:#4c9bdf;--code:#a6cfff;--overlay:#10151ff5;
 --group:#223b30;--group-line:#38684b;--warning:#40341f;--warning-line:#8c6b35;--warning-text:#ffe0a2;
 --ghost:#25354b;--audio:#192a3c;--shadow:#0000001f;--subtle:#15251d77;
}
:root,:root[data-theme=light]{
 color-scheme:light;--bg:#f3f5f7;--panel:#fff;--sidebar:#fff;--input:#fff;--text:#18232e;--muted:#526273;
 --line:#d6dee6;--input-line:#a3b1bf;--hover:#edf2f6;--selected:#e1f0e6;--selected-text:#195735;
 --accent:#226d43;--on-accent:#fff;--secondary:#e6eee9;--secondary-text:#215638;--link:#1b6940;
 --notice:#e7f3ea;--danger:#aa2929;--focus:#2169ad;--code:#245b88;--overlay:#f3f5f7f5;
 --group:#edf6ef;--group-line:#8ab89a;--warning:#fff6df;--warning-line:#b08332;--warning-text:#704912;
 --ghost:#fff;--audio:#edf2f6;--shadow:#18232e0d;--subtle:#edf6ef;
}
html{background:var(--bg)}
dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:12px}
dialog::backdrop{background:#0008}
.pl-tabs button,.pl-company-slot>div>button{color:var(--text)!important}
input,select,textarea{color-scheme:inherit}
.pl-expiry input{color-scheme:inherit!important}
.media-drop{color:var(--muted)!important;border-color:var(--input-line)}
#theme-toggle{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;min-height:44px;padding:10px;border:1px solid var(--line);background:var(--panel);color:var(--text);margin:0;cursor:pointer;border-radius:9px}
#theme-toggle:hover{background:var(--hover)}
#theme-toggle:focus-visible,#menu-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
#menu-toggle{display:none}
/* Keep every destination visible in the expanded mobile menu. */
@media(max-width:650px){
 header>.row{width:100%;justify-content:flex-end}header>.row>.badge{display:none}
 #menu-toggle{margin-right:auto;display:inline-flex;align-items:center;gap:8px;background:var(--secondary);color:var(--secondary-text);min-height:44px;padding:10px 14px}
 #panel-nav{display:none;margin:0 0 16px;padding:8px;position:relative;top:auto;background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:visible}
 #panel-nav.is-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
 #panel-nav a{white-space:normal;overflow-wrap:anywhere;padding:12px;font-size:14px}
}
/* Login uses the same preference without changing the authentication flow. */
body.login-page{background:var(--bg);color:var(--text)}
.login-page .intro{background:var(--panel)}
.login-page .intro p,.login-page .hint,.login-page .foot,.login-page .eyebrow{color:var(--muted)}
.login-page input{background:var(--input);border-color:var(--input-line);color:var(--text)}
.login-page .error{color:var(--danger)}
.login-page a{color:var(--link)}
.login-page #theme-toggle{position:absolute;top:20px;right:20px;z-index:1}
.login-page .login{position:relative}
.login-page .form{padding-top:28px}

/* Shared readable typography, including login and dynamic dialogs. */
:root{--ui-font:Arial,"Helvetica Neue",sans-serif}body{font-family:var(--ui-font);font-size:16px;line-height:1.5}button,input,select,textarea,summary{font-family:var(--ui-font)}button,input,select,textarea{line-height:1.4}h1,h2,h3,strong{font-family:var(--ui-font)}h1,h2,h3{line-height:1.25;letter-spacing:normal}button,a.button{font-size:14px}input,select,textarea{font-size:16px}.muted,small{line-height:1.5}dialog{line-height:1.5}dialog h2{margin:0}dialog .page-heading{margin-bottom:20px}

/* Context help is opt-in. Actual feedback and safety warnings remain visible. */
.help-source{display:none!important}.help-slot{display:inline-flex;align-items:center;vertical-align:middle;margin:4px 6px 4px 0}h2>.help-slot,h3>.help-slot{margin:0 0 0 8px}button.help-trigger{display:inline-grid;place-items:center;width:34px;min-width:34px;height:34px;min-height:34px;padding:6px;border:0;border-radius:50%;color:var(--link);background:var(--selected);vertical-align:middle;cursor:help;flex:none}button.help-trigger:hover,button.help-trigger[aria-expanded=true]{background:var(--hover);outline:1px solid var(--input-line)}button.help-trigger:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.help-popover{position:fixed;inset:auto;margin:0;z-index:20000;max-width:calc(100vw - 24px);max-height:calc(100svh - 24px);overflow:auto;padding:20px;border:1px solid var(--input-line);border-radius:12px;background:var(--panel);color:var(--text);box-shadow:0 10px 36px #0004;font:15px/1.6 Arial,sans-serif;overflow-wrap:anywhere}.help-popover>strong{display:block;font-size:16px;padding-right:34px}.help-popover>p{white-space:pre-line;margin:12px 0 0;color:var(--text);font-size:15px;line-height:1.6}button.help-dismiss{position:absolute;top:6px;right:6px;width:36px;height:36px;min-height:36px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:24px;font-weight:400;line-height:1}.help-popover::backdrop{background:transparent;pointer-events:none}@media(pointer:coarse){button.help-trigger{width:44px;min-width:44px;height:44px;min-height:44px;padding:11px}button.help-dismiss{width:44px;height:44px;min-height:44px}.help-popover>strong{padding-right:40px}}

/* Keep contextual-help controls away from adjacent text and actions. */
.help-slot{margin:8px 12px}h1>.help-slot,h2>.help-slot,h3>.help-slot{margin:0 8px 0 16px}.help-popover>strong{padding-right:48px}.help-popover>p{margin-top:16px}@media(pointer:coarse){.help-popover>strong{padding-right:56px}}

/* Compact home overview: stable values, enough room for actions and mobile. */
.home-resources{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.home-resource-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.home-resource-heading h3{margin:0}.home-resource-heading a{flex:none;min-height:44px;text-decoration:none}.home-resource-status{min-height:24px;margin:12px 0 18px!important;font-size:13px}.home-resource-status[data-error=true]{color:var(--error,#c04444)}.home-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.home-resource-grid article{min-width:0;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:8px}.home-resource-grid article>span{font-size:13px;min-height:20px}.home-resource-grid strong{font-size:23px;font-weight:650;line-height:1.4;min-height:33px;white-space:nowrap;font-variant-numeric:tabular-nums}.home-resource-grid small{color:var(--muted);font-size:12px;line-height:1.5;min-height:36px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.home-resource-network{grid-column:span 2}.home-resource-network strong{font-size:20px}.home-resource-grid article[data-warning=true]{border-color:var(--error,#c04444)}@media(max-width:650px){.home-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-resource-grid article{padding:14px}.home-resource-grid strong{font-size:21px}.home-resource-network strong{font-size:19px}.home-resource-heading{gap:16px}.home-resources{margin-top:24px;padding-top:20px}}@media(max-width:370px){.home-resource-grid{grid-template-columns:1fr}.home-resource-network{grid-column:auto}.home-resource-grid small{min-height:36px}.home-resource-network strong{white-space:normal}}
