/* Shared look for every page: one top bar, one page-header style, one title style.
   Loaded last so it settles differences between the older per-page stylesheets. */
:root{--ui-ink:#17302f;--ui-muted:#5f7672;--ui-brand:#12403c;--ui-accent:#146d59;--ui-line:#dbe5e1;--ui-surface:#fff;--ui-bar:#eef3f1;--ui-chip:#fff}
:root[data-theme="dark"]{--ui-ink:#e1e9ed;--ui-muted:#9fb3b0;--ui-brand:#d5f0ea;--ui-accent:#2d9e89;--ui-line:#33474a;--ui-surface:#162127;--ui-bar:#131c21;--ui-chip:#1c2a30}
:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}

/* Top bar: workstreams on the left, where you are in the middle, account and night mode on the right. */
body:has(.workstream-nav:not([hidden])) .theme-bar{display:none}
:root .workstream-nav{display:flex;align-items:center;gap:10px 20px;flex-wrap:wrap;padding:8px 24px;background:var(--ui-bar);border-bottom:1px solid var(--ui-line);color:var(--ui-ink);font:14px/1.4 Segoe UI,Arial,sans-serif}
:root .workstream-nav .ws-switch>strong{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ui-muted)}
:root .workstream-nav a{min-height:34px;padding:6px 11px;color:var(--ui-ink)}
:root .workstream-nav a.current{background:var(--ui-chip);border-color:var(--ui-line);color:var(--ui-brand)}
:root .workstream-nav .ws-active{margin-left:auto;font-size:14px;align-items:baseline;gap:6px;color:var(--ui-muted)}
:root .workstream-nav .ws-active>span{font-weight:600;font-size:11px;letter-spacing:1.5px;text-transform:uppercase}
:root .workstream-nav .ws-active>strong{color:var(--ui-brand);font-size:15px;font-weight:750}
.ws-break{flex-basis:100%;height:0;margin-top:-10px}  /* the account menu always starts its own row, on every page (11 Nov) */
.ws-account{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-left:auto;padding-left:16px;border-left:1px solid var(--ui-line)}  /* always on the right, also when it wraps to its own line */
.ws-user{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--ui-muted)}
:root .ws-account button{font:600 13px/1.3 Segoe UI,Arial,sans-serif;min-height:32px;width:auto;padding:6px 11px;border:1px solid var(--ui-line);border-radius:7px;background:var(--ui-chip);color:var(--ui-ink);cursor:pointer}
:root .ws-account button:hover{border-color:var(--ui-accent)}
/* The top bar now holds the signed-in user and Sign out; avoid showing them twice on Candidate Review. */
body:has(.workstream-nav:not([hidden])) .header-actions #who,body:has(.workstream-nav:not([hidden])) .header-actions #logout{display:none}
@media(max-width:1440px){:root .workstream-nav .ws-active>span{display:none}}
@media(max-width:1200px){:root .workstream-nav .ws-active{margin-left:0;flex-basis:100%;order:3;justify-content:flex-start;text-align:left}.ws-account{margin-left:auto}}
@media(max-width:600px){:root .workstream-nav{padding:8px 16px}.ws-account{border-left:0;padding-left:0;margin-left:0;flex-basis:100%}.ws-user{max-width:none;flex:1}}

/* Page header: the same white band, brand and buttons on every page. */
:root .app-header{display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;height:auto;min-height:64px;padding:12px 32px;background:var(--ui-surface);color:var(--ui-ink);border-bottom:1px solid var(--ui-line)}
:root .app-header>b,:root .app-header>.brand{display:flex;align-items:baseline;gap:12px;margin-right:auto;font-size:22px;font-weight:800;letter-spacing:-.5px;color:var(--ui-brand);text-decoration:none}
:root .app-header:has(.run)>.brand{margin-right:0}
:root .app-header>b small,:root .app-header>.brand small,:root .app-header>.brand span{display:inline;margin:0;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--ui-muted)}
:root .app-header>a:not(.brand),:root .app-header .header-actions>a,:root .app-header .header-actions>button{display:inline-flex;align-items:center;min-height:34px;padding:6px 12px;border:1px solid var(--ui-line);border-radius:7px;background:var(--ui-surface);color:var(--ui-ink);font-size:13px;font-weight:600;text-decoration:none}
:root .app-header>a:not(.brand):hover,:root .app-header .header-actions>a:hover,:root .app-header .header-actions>button:hover{border-color:var(--ui-accent);color:var(--ui-accent)}
:root .app-header #identity{font-size:13px;color:var(--ui-muted)}
body:has(.workstream-nav:not([hidden])) .app-header #identity{display:none}
@media(max-width:720px){:root .app-header{padding:12px 16px}}

/* Adhoc priority notice (static/adhoc-priority.js): full width above the page content. */
.adhoc-banner{margin:16px 32px 0;padding:12px 16px;border:1px solid #d9a07f;border-left:4px solid #bc5338;border-radius:8px;background:#fff4e8;color:#5e2a17;font:14px/1.5 Segoe UI,Arial,sans-serif}
.adhoc-banner a{color:#9a3a1f;font-weight:700}
:root[data-theme="dark"] .adhoc-banner{background:#2d1f16;border-color:#6c4632;border-left-color:#d9734f;color:#f3dccd}
:root[data-theme="dark"] .adhoc-banner a{color:#ffb592}
@media(max-width:720px){.adhoc-banner{margin:12px 16px 0}}

/* Name watermark (theme.js): above everything, never in the way of clicks. */
.qc-watermark{position:fixed;inset:0;pointer-events:none;z-index:2147483000;background-repeat:repeat}
@media print{.qc-watermark{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Page titles: plain names, one size. */
:root main h1,:root .page-heading h1{font-size:30px;line-height:1.2;letter-spacing:-.5px;color:var(--ui-ink)}
@media(max-width:720px){:root main h1,:root .page-heading h1{font-size:25px}}
