/* Colour and type tokens, light and dark. */
/* Layout: Delta Personnel back office. Dark brand rail on the left (a dark band with a scrolling section strip on phones), page header, one filter panel, then list + sticky record pane; tables fold into cards when narrow. */
:root{
  --bg:#EEEEEB; --surface:#FFFFFF; --surface-2:#F6F6F3; --ink:#141414; --muted:#5D5D58; --line:#DEDDD8; --line-strong:#C5C4BE;
  --brand:#FFA300; --brand-hover:#F29A00; --brand-ink:#111111;
  --accent:#9A5700; --accent-soft:#FFF1D4; --accent-ink:#111111;
  --ok:#1A7743; --ok-soft:#DBF0E3; --info:#2A55B5; --info-soft:#E1E8F8; --warn:#B4500A; --warn-soft:#FBE5D2;
  --danger:#B3261E; --danger-soft:#FBE3E0; --danger-ink:#FFFFFF; --off:#66665F; --off-soft:#E8E8E4;
  --mark:#FFE08A; --mark-ink:#141414;
  --chat-bg:#ECEAE4; --bubble-out:#D3F0D1; --bubble-in:#FFFFFF;
  --scrim:rgba(17,17,17,.42);
  --shadow:0 1px 2px rgba(17,17,17,.06),0 12px 32px rgba(17,17,17,.12);
  --side-bg:#111111; --side-ink:#F2F2EF; --side-muted:#A8A8A2; --side-hover:#1D1D1D; --side-active:#272727; --side-line:#2B2B2B;
  --bar:#4A4A45; --bar-hi:#C27400;
  --badge-red:#E5484D; --badge-amber:#FFB224; --badge-green:#3FBF78; --badge-ink-light:#FFFFFF;
  --map-sea:#CBDBE2; --map-land:#F5F4EF; --map-coast:#A9BEC7; --map-urban:#E7E3D9; --map-river:#9EBBC8; --map-motorway:#6F849A; --map-motorway-case:#FFFFFF; --map-aroad:#C9C1AF; --map-road:#DDD8CD; --map-label:#3A3A36; --map-halo:rgba(245,244,239,.95);
  --tile-filter:saturate(.5) contrast(1.02);
  --pin-co:#141414; --pin-co-prospect:#5B5B56; --pin-co-lapsed:#8E8E88; --pin-ok:#1E8A4C; --pin-info:#2F62C9; --pin-off:#8A8A84; --pin-warn:#D9730D;
  --f-display:"Chakra Petch","Segoe UI",system-ui,sans-serif;
  --f-body:"Instrument Sans",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#101010; --surface:#191919; --surface-2:#212121; --ink:#EDEDEA; --muted:#A3A39D; --line:#2C2C2A; --line-strong:#3E3E3B;
    --brand:#FFA300; --brand-hover:#FFB433; --brand-ink:#111111;
    --accent:#FFB84D; --accent-soft:#3A2A0C; --accent-ink:#111111;
    --ok:#62CB8E; --ok-soft:#163625; --info:#8AAEF5; --info-soft:#1B2946; --warn:#F59E5B; --warn-soft:#3B2414;
    --danger:#F2867D; --danger-soft:#3A1916; --danger-ink:#2A0907; --off:#A0A09A; --off-soft:#2A2A28;
    --mark:#6A5713; --mark-ink:#F5EFD8;
    --chat-bg:#141716; --bubble-out:#1E4530; --bubble-in:#242424;
    --scrim:rgba(0,0,0,.62);
    --shadow:0 1px 2px rgba(0,0,0,.4),0 12px 32px rgba(0,0,0,.45);
    --side-bg:#0A0A0A; --side-line:#262626; --side-hover:#181818; --side-active:#222222;
    --bar:#9A9A94; --bar-hi:#FFA300;
    --map-sea:#0E161A; --map-land:#1C1C1B; --map-coast:#2E3D44; --map-urban:#272624; --map-river:#24404B; --map-motorway:#71859A; --map-motorway-case:#0E0E0E; --map-aroad:#4A463F; --map-road:#33312E; --map-label:#CFCFC9; --map-halo:rgba(16,16,16,.9);
    --tile-filter:invert(1) hue-rotate(180deg) saturate(.4) brightness(.86) contrast(.92);
    --pin-co:#111111; --pin-co-prospect:#55554F; --pin-co-lapsed:#7A7A74; --pin-ok:#2FA463; --pin-info:#4C80E8; --pin-off:#8A8A84; --pin-warn:#E8832A;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
    --bg:#101010; --surface:#191919; --surface-2:#212121; --ink:#EDEDEA; --muted:#A3A39D; --line:#2C2C2A; --line-strong:#3E3E3B;
    --brand:#FFA300; --brand-hover:#FFB433; --brand-ink:#111111;
    --accent:#FFB84D; --accent-soft:#3A2A0C; --accent-ink:#111111;
    --ok:#62CB8E; --ok-soft:#163625; --info:#8AAEF5; --info-soft:#1B2946; --warn:#F59E5B; --warn-soft:#3B2414;
    --danger:#F2867D; --danger-soft:#3A1916; --danger-ink:#2A0907; --off:#A0A09A; --off-soft:#2A2A28;
    --mark:#6A5713; --mark-ink:#F5EFD8;
    --chat-bg:#141716; --bubble-out:#1E4530; --bubble-in:#242424;
    --scrim:rgba(0,0,0,.62);
    --shadow:0 1px 2px rgba(0,0,0,.4),0 12px 32px rgba(0,0,0,.45);
    --side-bg:#0A0A0A; --side-line:#262626; --side-hover:#181818; --side-active:#222222;
    --bar:#9A9A94; --bar-hi:#FFA300;
    --map-sea:#0E161A; --map-land:#1C1C1B; --map-coast:#2E3D44; --map-urban:#272624; --map-river:#24404B; --map-motorway:#71859A; --map-motorway-case:#0E0E0E; --map-aroad:#4A463F; --map-road:#33312E; --map-label:#CFCFC9; --map-halo:rgba(16,16,16,.9);
    --tile-filter:invert(1) hue-rotate(180deg) saturate(.4) brightness(.86) contrast(.92);
    --pin-co:#111111; --pin-co-prospect:#55554F; --pin-co-lapsed:#7A7A74; --pin-ok:#2FA463; --pin-info:#4C80E8; --pin-off:#8A8A84; --pin-warn:#E8832A;
    color-scheme:dark;
}

*{box-sizing:border-box}
body{
  background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.45;
  padding-left:max(16px, env(safe-area-inset-left, 0px));
  padding-right:max(16px, env(safe-area-inset-right, 0px));
  padding-block:0;
  -webkit-font-smoothing:antialiased;
}
html.lock, html.lock body{overflow:hidden}
button,input,select,textarea{font:inherit;color:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.muted{color:var(--muted)}
.i{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
