/* 91HR RMS v2 styles: the 91HR look (design board "91HR RMS Look": deep ink menu, teal actions, Jost and IBM Plex),
   light and dark. Extend this file; do not add a CSS framework.
   One spacing scale only: 4, 8, 12, 16, 20, 24, 32, 40px. Cards: white, 1px border, 12px corners, no shadows. */

/* IBM Plex, hosted with the app (public/fonts, SIL Open Font License: public/fonts/LICENSE-IBM-Plex.txt).
   Only the weights the app uses. Complete character set, so ₹ and the other symbols are included. */
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/IBMPlexSans-Regular.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/IBMPlexSans-Medium.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/IBMPlexSans-SemiBold.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/IBMPlexSans-Bold.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/IBMPlexMono-Regular.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/IBMPlexMono-SemiBold.woff2") format("woff2")}
/* Jost (variable, weights 300 to 600), hosted with the app (SIL Open Font License: public/fonts/LICENSE-Jost.txt).
   Jost has no ₹, so the stack falls back to IBM Plex Sans for that one sign. */
@font-face{font-family:"Jost";font-style:normal;font-weight:300 600;font-display:swap;src:url("../fonts/Jost-Variable-Latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Jost";font-style:normal;font-weight:300 600;font-display:swap;src:url("../fonts/Jost-Variable-LatinExt.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20B8,U+20BA-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* Tokens. Status colours (good, warn, crit) are for status only. The older names (violet, wa, d-*) map onto the
   91HR palette so every screen picks the new look up without a markup change. */
:root{
  --deep:#0F2226;--deep-2:#163036;--deep-ink:#B9C7CA;--deep-mute:#8FA3A7;--deep-lab:#6F8589;
  --plane:#F4F6F6;--surface:#FFFFFF;--surface-2:#F7F9F9;--surface-3:#EEF2F2;
  --ink:#0E1A1D;--ink-2:#4A5A5E;--ink-3:#5F7175;
  --rule:#E1E7E8;--rule-2:#D3DBDD;
  --teal:#0A8A9E;--action:#066A79;--action-hover:#04505B;--teal-2:#066A79;--teal-3:#066A79;--teal-wash:#E6F3F5;--teal-line:#BFDDE2;
  --good-ink:#1C6B45;--good-wash:#E5F3EC;
  --warn:#B7791F;--warn-ink:#7A5200;--warn-wash:#FBF1DC;
  --crit:#C2410C;--crit-ink:#A33A12;--crit-wash:#FCEDE8;--crit-line:#EBC3B3;
  --violet:#4A5A5E;--violet-ink:#24363A;--violet-wash:#EEF2F2;
  --wa:#1C6B45;--wa-wash:#E5F3EC;
  --gold:#7A5200;
  --d-sales:#0A8A9E;--d-ops:#0A8A9E;--d-acc:#0A8A9E;--d-hr:#0A8A9E;--d-admin:#0A8A9E;
  --focus:0 0 0 3px rgba(10,138,158,.18);
  --shadow:none;--shadow-2:0 16px 40px rgba(14,26,29,.18);
  --sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --display:"Jost","IBM Plex Sans",system-ui,sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --deep:#0C1B1E;--deep-2:#14292E;
  --plane:#081315;--surface:#0F1D20;--surface-2:#132427;--surface-3:#1A2E32;
  --ink:#E7EEEF;--ink-2:#B3C1C4;--ink-3:#8FA3A7;
  --rule:#1F3438;--rule-2:#2B4448;
  --teal:#22A6BA;--action:#0A7F91;--action-hover:#0B93A8;--teal-2:#6CCAD8;--teal-3:#8AD8E3;--teal-wash:#10343A;--teal-line:#1D5A63;
  --good-ink:#7FD8A8;--good-wash:#11301F;
  --warn:#D9A24A;--warn-ink:#F0C46A;--warn-wash:#332710;
  --crit:#E0693C;--crit-ink:#F4A184;--crit-wash:#3A1C12;--crit-line:#6B3422;
  --violet:#B3C1C4;--violet-ink:#D5DFE1;--violet-wash:#1A2E32;
  --wa:#7FD8A8;--wa-wash:#11301F;--gold:#F0C46A;
  --d-sales:#22A6BA;--d-ops:#22A6BA;--d-acc:#22A6BA;--d-hr:#22A6BA;--d-admin:#22A6BA;
  --focus:0 0 0 3px rgba(34,166,186,.3);--shadow-2:0 16px 40px rgba(0,0,0,.6);
  color-scheme:dark;
}}
:root[data-theme="dark"]{
  --deep:#0C1B1E;--deep-2:#14292E;
  --plane:#081315;--surface:#0F1D20;--surface-2:#132427;--surface-3:#1A2E32;
  --ink:#E7EEEF;--ink-2:#B3C1C4;--ink-3:#8FA3A7;
  --rule:#1F3438;--rule-2:#2B4448;
  --teal:#22A6BA;--action:#0A7F91;--action-hover:#0B93A8;--teal-2:#6CCAD8;--teal-3:#8AD8E3;--teal-wash:#10343A;--teal-line:#1D5A63;
  --good-ink:#7FD8A8;--good-wash:#11301F;
  --warn:#D9A24A;--warn-ink:#F0C46A;--warn-wash:#332710;
  --crit:#E0693C;--crit-ink:#F4A184;--crit-wash:#3A1C12;--crit-line:#6B3422;
  --violet:#B3C1C4;--violet-ink:#D5DFE1;--violet-wash:#1A2E32;
  --wa:#7FD8A8;--wa-wash:#11301F;--gold:#F0C46A;
  --d-sales:#22A6BA;--d-ops:#22A6BA;--d-acc:#22A6BA;--d-hr:#22A6BA;--d-admin:#22A6BA;
  --focus:0 0 0 3px rgba(34,166,186,.3);--shadow-2:0 16px 40px rgba(0,0,0,.6);
  color-scheme:dark;
}

/* base */
*{box-sizing:border-box}html,body{margin:0}
body{background:var(--plane);color:var(--ink);font:14px/1.5 var(--sans);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--teal-2);text-underline-offset:3px}a:hover{color:var(--action-hover)}
b,strong{font-weight:600}
h1{font:300 36px/1.15 var(--display);letter-spacing:-.01em;margin:0 0 8px;color:var(--ink)}
h2,h3,h4{font-family:var(--display);font-weight:500}
.mono{font-family:var(--mono);font-size:.92em}.num{font-variant-numeric:tabular-nums}.m{font-weight:500}.s{font-size:12px;color:var(--ink-3)}
.lab{font:500 11px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
svg.i{width:18px;height:18px;flex:none;display:block}
.logo-dark{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo-light{display:none}:root:not([data-theme="light"]) .logo-dark{display:block}}
:root[data-theme="dark"] .logo-light{display:none}:root[data-theme="dark"] .logo-dark{display:block}

/* shell: deep ink menu on the left, white top bar, content up to 1180px */
.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh;background:var(--deep)}
.shell.bare{grid-template-columns:minmax(0,1fr)}
.maincol{min-width:0;display:flex;flex-direction:column;background:var(--plane)}
.rail{background:var(--deep);color:var(--deep-ink);position:sticky;top:0;height:100vh;overflow-y:auto;padding:24px 16px;display:flex;flex-direction:column;gap:24px;scrollbar-width:thin;scrollbar-color:var(--deep-2) transparent}
.rail-brand{display:flex;flex-direction:column;gap:8px;padding:0 12px;text-decoration:none}
.rail-brand img{width:96px;height:auto;display:block}
.rail-brand span{font:400 10.5px/1 var(--display);letter-spacing:.32em;color:var(--deep-mute);white-space:nowrap}
.rail-nav{display:flex;flex-direction:column;gap:4px}
.rg{font:500 11px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--deep-lab);padding:16px 12px 8px}
.rg:first-child{padding-top:0}
.ri{display:flex;align-items:center;gap:12px;min-height:40px;padding:8px 12px;border-radius:8px;color:var(--deep-ink);font-size:14px;line-height:1.3;text-decoration:none;border:0;background:transparent;width:100%;text-align:left}
.ri svg.i{color:currentColor;opacity:.9}
a.ri:hover{background:rgba(255,255,255,.06);color:#FFFFFF}
.ri.on{background:rgba(10,138,158,.22);color:#FFFFFF}
.ri.later{opacity:.5;cursor:default}.ri.later .ph{margin-left:auto;font:500 11px/1 var(--sans);border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:4px 8px;white-space:nowrap}
.pill2{margin-left:auto;font:500 11px/1 var(--mono);color:#7FD3DF;background:rgba(10,138,158,.18);padding:4px 8px;border-radius:12px}
.pill2[hidden]{display:none}
.railsel{display:none;width:100%;height:44px;padding:0 12px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:var(--deep-2);color:#FFFFFF}
.rail>*{flex:none}
.me{margin-top:auto;position:sticky;bottom:0;padding:12px;border-radius:12px;background:var(--deep-2);box-shadow:0 0 0 8px var(--deep);display:flex;align-items:center;gap:12px}
.av{width:36px;height:36px;border-radius:50%;background:var(--teal);color:#FFFFFF;display:grid;place-items:center;font:500 14px/1 var(--display);flex:none;text-transform:uppercase}
.me-t{display:flex;flex-direction:column;gap:4px;min-width:0}
.me-t b{color:#FFFFFF;font-size:14px;font-weight:500;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.me-t span{color:var(--deep-mute);font-size:12px;line-height:1.2}
.me form{margin-left:auto}
.iconbtn{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;color:var(--deep-ink);background:transparent;border:0;cursor:pointer;flex:none}
.iconbtn:hover{background:rgba(255,255,255,.08);color:#FFFFFF}

.top{position:sticky;top:0;z-index:50;background:var(--surface);border-bottom:1px solid var(--rule)}
.top-in{display:flex;align-items:center;gap:16px;padding:12px 40px;min-height:64px;flex-wrap:wrap}
.brand{display:flex;align-items:center;flex:none}.brand img{height:32px;width:auto}
.gsearch{flex:1 1 320px;max-width:520px;margin:0;display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border:1px solid var(--rule-2);border-radius:8px;background:var(--surface-2);color:var(--ink-3)}
.gsearch:focus-within{border-color:var(--teal);box-shadow:var(--focus)}
.gsearch input{flex:1;min-width:0;height:38px;border:0;padding:0;background:transparent;font-size:14px;color:var(--ink)}
.gsearch input:focus{outline:0;box-shadow:none}
.top-act{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.top-act form{margin:0}
.tbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:8px;border:1px solid var(--rule-2);background:var(--surface);color:var(--ink);font:500 14px/1 var(--sans);cursor:pointer;white-space:nowrap;text-decoration:none}
.tbtn:hover{background:var(--surface-2);color:var(--ink);border-color:var(--ink-3)}
.tbtn.icon{width:40px;padding:0}
.aswrap{display:flex;align-items:center;gap:8px;white-space:nowrap}
.aswrap label{margin:0;font:500 12px/1 var(--sans);color:var(--ink-3)}
.aswrap select{width:auto;max-width:220px;height:40px;font-size:13px}
.asbar{background:var(--teal-wash);color:var(--ink);border-bottom:1px solid var(--teal-line);padding:8px 40px;font-size:13px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;min-height:48px}
.asbar b{color:var(--ink)}
.who{display:none}
main{min-width:0;flex:1}
.page{max-width:1180px;margin:0 auto;padding:40px}
.wrap{max-width:1180px;margin:0 auto;padding:24px 20px}

/* screen head: section label, Jost Light title, short lede */
.sh{padding:0;border:0;margin:0 0 32px}
.sh .crumb{font:500 11px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);display:flex;align-items:center;gap:8px}
.sh .crumb i{display:none}
.sh h1{margin:8px 0 0}.sh p{margin:8px 0 0;font-size:14px;color:var(--ink-3);max-width:74ch}

/* cards */
.card{background:var(--surface);border:1px solid var(--rule);border-radius:12px;overflow:hidden;margin:0 0 20px}
.card-h{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:16px 20px;min-height:64px;border-bottom:1px solid var(--rule)}
.card-h h3{margin:0;font:500 18px/32px var(--display);color:var(--ink)}
.card-h>span,.card-h span.s{font-size:12px;color:var(--ink-3)}
.card-b{padding:20px}
.two{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:20px;align-items:start}
.two>.card{margin-bottom:0}.two>div>.card:last-child{margin-bottom:0}.two{margin-bottom:20px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.callout{border:1px solid var(--teal-line);background:var(--teal-wash);border-radius:12px;padding:16px 20px;margin-bottom:20px}
.callout.vio{border-color:var(--rule);background:var(--surface-2)}
.callout h4{margin:0 0 4px;font:500 16px/1.3 var(--display)}.callout p{margin:0;font-size:13px;color:var(--ink-2)}
.kv{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:14px}
.kv:last-child{border-bottom:0}.kv span{color:var(--ink-2)}
.err{background:var(--crit-wash);color:var(--crit-ink);border:1px solid var(--crit-line);border-radius:8px;padding:12px 16px;font-size:14px;margin-bottom:20px}
.ok{background:var(--good-wash);color:var(--good-ink);border-radius:8px;padding:12px 16px;font-size:14px;margin-bottom:20px}
.cred{font-family:var(--mono);font-size:20px;font-weight:600;padding:8px 12px;border:1px dashed var(--teal);border-radius:8px;background:var(--teal-wash);color:var(--teal-3);display:inline-block}
.login{max-width:440px;margin:0 auto;padding:0}

/* sign-in: split screen, deep ink panel and a white form panel */
.signin{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh}
.signin-l{background:var(--deep);color:#FFFFFF;padding:40px;display:flex;flex-direction:column;justify-content:space-between;gap:40px;position:relative;overflow:hidden}
.signin-l::before,.signin-l::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(127,211,223,.14);pointer-events:none}
.signin-l::before{right:-120px;bottom:-120px;width:420px;height:420px}
.signin-l::after{right:-40px;bottom:-40px;width:260px;height:260px;border-color:rgba(127,211,223,.1)}
.signin-brand{display:flex;flex-direction:column;gap:12px}
.signin-brand img{width:148px;height:auto;display:block}
.signin-brand span{font:400 12px/1 var(--display);letter-spacing:.5em;color:var(--deep-mute)}
.signin-pitch{position:relative;max-width:460px;display:flex;flex-direction:column;gap:16px}
.signin-pitch h1{margin:0;font:300 44px/1.12 var(--display);color:#FFFFFF;text-wrap:balance}
.signin-pitch p{margin:0;font-size:16px;line-height:1.6;color:var(--deep-ink)}
.signin-foot{position:relative;display:flex;gap:24px;flex-wrap:wrap;font-size:13px;color:var(--deep-mute)}
.signin-r{background:var(--surface);display:flex;align-items:center;justify-content:center;padding:40px 32px}
.signin-form{width:100%;max-width:380px;display:flex;flex-direction:column;gap:20px}
.signin-form h2{margin:0;font:400 32px/1.15 var(--display);color:var(--ink)}
.signin-form .lede{margin:8px 0 0;font-size:14px;color:var(--ink-3)}
.signin-form label{margin:0 0 8px}
.signin-form input{height:48px;font-size:15px}
.signin-form .btn{height:48px;width:100%;font-size:15px}
.signin-form .rule{height:1px;background:var(--rule);margin:0}
.signin-form p.s{margin:0;line-height:1.6}.signin-form .err{margin:0}
.signin-form .ask{margin:0;font-size:13px;color:var(--ink-3)}

/* forms: one label style, above the field; inputs 44px */
label{display:block;font:500 13px/1.4 var(--sans);letter-spacing:0;text-transform:none;color:var(--ink-2);margin:16px 0 8px}
input,select,textarea{width:100%;height:44px;padding:0 12px;border:1px solid var(--rule-2);border-radius:8px;background:var(--surface);font-size:14px;color:var(--ink)}
textarea{height:auto;min-height:88px;padding:12px;line-height:1.5}
select[multiple]{height:auto;padding:8px 12px}
input[type=checkbox],input[type=radio]{width:16px;height:16px;padding:0;margin:0;accent-color:var(--action);flex:none}
input[type=file]{height:auto;padding:8px 12px}
input[type=color]{padding:4px;width:56px}
input[readonly]{background:var(--surface-3);color:var(--ink-2)}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--teal);box-shadow:var(--focus)}
input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid var(--teal);outline-offset:2px;box-shadow:none}
.hint{font-size:12px;color:var(--ink-3);margin-top:8px}
.inline{display:flex;gap:8px;align-items:center}.inline input,.inline select{flex:1;min-width:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:8px;border:1px solid var(--action);background:var(--action);color:#FFFFFF;font:500 14px/1 var(--sans);cursor:pointer;white-space:nowrap;text-decoration:none}
.btn:hover{background:var(--action-hover);border-color:var(--action-hover);color:#FFFFFF}
.btn:focus-visible,.tbtn:focus-visible,.hlink:focus-visible,.namebtn:focus-visible,.ri:focus-visible,.iconbtn:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn.ghost{background:var(--surface);color:var(--ink);border-color:var(--rule-2)}
.btn.ghost:hover{background:var(--surface-2);border-color:var(--ink-3);color:var(--ink)}
.btn.danger{background:var(--surface);color:var(--crit-ink);border-color:var(--crit-line)}
.btn.danger:hover{background:var(--crit-wash);color:var(--crit-ink);border-color:var(--crit-line)}
.btn.sm{height:32px;padding:0 12px;font-size:13px}
.btn svg.i{width:18px;height:18px}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.hlink{font:500 13px/1.4 var(--sans);color:var(--teal-2);background:none;border:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;padding:0}
.hlink:hover{color:var(--action-hover)}

/* switch */
.sw{display:inline-flex;cursor:pointer;position:relative}
.sw input{position:absolute;opacity:0;width:1px;height:1px}
.sw i{width:36px;height:20px;border-radius:12px;background:var(--surface-3);border:1px solid var(--rule-2);position:relative;transition:background .15s}
.sw i::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#FFFFFF;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:left .15s}
.sw input:checked+i{background:var(--action);border-color:var(--action)}.sw input:checked+i::after{left:18px}
.sw input:focus-visible+i{outline:2px solid var(--teal);outline-offset:2px}.sw input:disabled+i{opacity:.5}

/* chips and tags: rounded, sentence case */
.chip{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 12px;border-radius:12px;font:500 12px/1 var(--sans);white-space:nowrap;background:var(--surface-3);color:var(--ink-2);vertical-align:middle}
.chip.ok{background:var(--good-wash);color:var(--good-ink);padding:0 12px;margin:0;border-radius:12px;font-size:12px}.chip.teal{background:var(--teal-wash);color:var(--teal-3)}
.chip.warn{background:var(--warn-wash);color:var(--warn-ink)}.chip.bad{background:var(--crit-wash);color:var(--crit-ink)}
.chip.mute{background:var(--surface-3);color:var(--ink-2)}.chip.vio{background:var(--violet-wash);color:var(--violet-ink)}
.tag{display:inline-flex;align-items:center;gap:4px;font-size:12px;line-height:16px;padding:4px 8px;border-radius:12px;background:var(--surface-3);color:var(--ink-2);margin:0 4px 4px 0}
.tag.off,.tchip.off{opacity:.5;text-decoration:line-through}
.tchip{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:500;background:var(--teal-wash);color:var(--teal-3);padding:4px 4px 4px 12px;border-radius:16px;border:0;cursor:pointer;text-decoration:none}
.tchip.sel{outline:2px solid var(--teal)}
.tchip button,.tag button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:14px;line-height:1;padding:0 4px;opacity:.7}
.tchip button:hover,.tag button:hover{opacity:1}
.chipbox{position:relative;display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:4px 8px;min-height:44px;border:1px solid var(--rule-2);border-radius:8px;background:var(--surface)}
.chipbox:focus-within{border-color:var(--teal);box-shadow:var(--focus)}
.chipin{flex:1;min-width:120px;height:32px!important;border:0!important;outline:0!important;box-shadow:none!important;padding:0 4px!important;background:transparent!important}
.sugg{position:absolute;left:-1px;right:-1px;top:calc(100% + 4px);background:var(--surface);border:1px solid var(--rule-2);border-radius:12px;box-shadow:var(--shadow-2);z-index:20;max-height:256px;overflow-y:auto;padding:4px}
.sugg[hidden]{display:none}
.sugg button{display:flex;justify-content:space-between;gap:8px;width:100%;text-align:left;padding:8px 12px;border:0;background:transparent;border-radius:8px;cursor:pointer;font-size:13px}
.sugg button:hover,.sugg button.kb{background:var(--teal-wash)}.sugg button em{font-style:normal;font-size:12px;color:var(--ink-3)}
.sugg .req{color:var(--violet-ink);border-top:1px solid var(--rule);margin-top:4px;padding-top:8px}.sugg .none{padding:8px 12px;font-size:12px;color:var(--ink-3)}
.tabs2{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.tabs2 a,.tabs2 button{display:inline-flex;align-items:center;height:32px;font:500 13px/1 var(--sans);padding:0 12px;border-radius:16px;border:1px solid var(--rule-2);background:var(--surface);color:var(--ink-2);cursor:pointer;text-decoration:none}
.tabs2 a:hover,.tabs2 button:hover{border-color:var(--teal);color:var(--ink)}
.tabs2 [aria-current="page"],.tabs2 [aria-pressed="true"]{background:var(--teal-wash);color:var(--teal-3);border-color:var(--teal)}
details.guide{background:var(--surface);border:1px solid var(--rule);border-radius:12px;margin-bottom:20px}
details.guide summary{cursor:pointer;padding:12px 16px;font:500 14px/1.4 var(--sans);list-style:none;display:flex;justify-content:space-between;gap:12px}
details.guide summary::-webkit-details-marker{display:none}
details.guide summary::after{content:"Show";font:500 13px/1.4 var(--sans);color:var(--teal-2)}details.guide[open] summary::after{content:"Hide"}
details.guide ol{margin:0;padding:0 20px 16px 40px;font-size:13px;color:var(--ink-2)}details.guide li{margin-bottom:8px}
.indgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.indc{border:1px solid var(--rule);border-radius:8px;padding:8px 12px;display:flex;justify-content:space-between;gap:8px;align-items:start}
.indc b{display:block;font-size:13px;font-weight:500}.indc span{font-size:12px;color:var(--ink-3)}.indc.off{opacity:.55}
.fnlist{padding:8px 0;max-height:520px;overflow-y:auto}
.fnlist .ri{color:var(--ink-2);border-radius:0;padding:8px 20px;min-height:40px}
.fnlist a.ri:hover{background:var(--surface-2);color:var(--ink)}
.fnlist .ri.on{background:var(--teal-wash);color:var(--ink)}

/* tables: labels left, numbers right with tabular figures; headers line up with their values */
.scroller{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:14px;font-variant-numeric:tabular-nums}
thead th,th{text-align:left;font:500 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);padding:12px 16px;border-bottom:1px solid var(--rule);background:var(--surface-2);white-space:nowrap;vertical-align:bottom}
tbody td,td{padding:12px 16px;border-bottom:1px solid var(--rule);vertical-align:middle}
.card table tr>:first-child,.drill table tr>:first-child{padding-left:20px}.card table tr>:last-child,.drill table tr>:last-child{padding-right:20px}
tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--surface-2)}
td.r,th.r{text-align:right}
.sticky1 th:first-child,.sticky1 td:first-child{position:sticky;left:0;z-index:1;background:var(--surface);box-shadow:1px 0 0 var(--rule)}
.sticky1 thead th:first-child,.sticky1 tr.tot td:first-child{background:var(--surface-2)}
.sticky1 tbody tr:hover td:first-child{background:var(--surface-2)}
tfoot tr.tot td{border-top:1px solid var(--rule-2);font-weight:600;background:var(--surface-2)}
.lt-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}
.card-b>.lt-block .lt-tools,.drill .lt-tools{margin-bottom:16px}
.lt-tools input[type=search]{flex:1 1 200px;max-width:320px;height:40px}.lt-tools select{width:auto;height:40px;font-size:13px}
.lt-tools .btn{height:40px;font-size:14px;padding:0 16px}
.card>.lt-block>.lt-tools{padding:16px 20px 0}.card>.lt-block .pager{padding:12px 20px}
.thbtn{border:0;background:transparent;padding:0;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;text-decoration:none}
.thbtn:hover{color:var(--teal-2)}
.pager{display:flex;gap:8px;align-items:center;justify-content:flex-end;padding:12px 0 0;font-size:13px;color:var(--ink-3)}

/* drill-down side panel */
.scrim{position:fixed;inset:0;background:rgba(8,19,21,.52);z-index:90}
.scrim[hidden],.drill[hidden]{display:none}
.drill{position:fixed;top:0;right:0;bottom:0;width:min(720px,100%);background:var(--surface);border-left:1px solid var(--rule);box-shadow:var(--shadow-2);z-index:95;display:flex;flex-direction:column}
.drill .mh{padding:16px 20px;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;gap:12px;align-items:center}
.drill .mh h3{margin:0;font:500 20px/1.3 var(--display)}.drill .mh p{margin:4px 0 0;font-size:12px;color:var(--ink-3)}
.drill .mb{padding:20px;overflow-y:auto;flex:1}
button.kpi{border:0;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit;padding:4px 8px;border-radius:8px}
button.kpi:hover{background:var(--surface-2)}

/* tiles: white stat cards, label above a Jost figure */
.minitiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;margin-bottom:24px}
.mt{display:grid;grid-template-rows:minmax(29px,auto) auto 1fr;align-content:start;gap:8px;width:100%;min-width:0;text-align:left;font:inherit;color:inherit;background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:20px;cursor:pointer;text-decoration:none}
.mt:hover{border-color:var(--teal)}.mt:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.mt .v{order:1;font:400 28px/1.1 var(--display);letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--ink);overflow-wrap:anywhere}
.mt .l{display:contents;font:500 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.mt .l .gst{order:2;display:block;font:400 12px/1.3 var(--sans);letter-spacing:0;text-transform:none;color:var(--ink-3);margin:0}
.mt.bad .v{color:var(--crit-ink)}
a.mt{color:inherit}
.adminbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:32px}
.abtn{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;padding:16px 20px;min-height:76px;border-radius:12px;border:1px solid var(--rule);background:var(--surface);color:var(--ink);cursor:pointer;text-align:left;font:inherit;text-decoration:none;min-width:0}
.abtn b{font:500 16px/1.3 var(--display);color:var(--ink)}
.abtn span{font-size:13px;line-height:1.4;color:var(--ink-3);font-variant-numeric:tabular-nums}
.abtn.stat{display:grid;grid-template-rows:minmax(29px,auto) auto 1fr;align-content:start;justify-content:stretch;justify-items:start;gap:8px;padding:20px}
.abtn.stat b{font:500 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.abtn.stat span{font:400 30px/1.1 var(--display);letter-spacing:-.01em;color:var(--ink)}
.abtn small{font-size:13px;color:var(--ink-3);line-height:1.3}
.abtn:hover{border-color:var(--teal);color:var(--ink)}
.site{border:1px solid var(--rule);border-radius:12px;overflow:hidden;margin-bottom:20px;background:var(--surface)}
.site-bar{display:flex;gap:8px;align-items:center;padding:8px 12px;background:var(--surface-3);border-bottom:1px solid var(--rule)}
.site-bar i{width:8px;height:8px;border-radius:50%;background:var(--rule-2);display:inline-block}
.site-bar .u{flex:1;min-width:0;margin-left:8px;font-family:var(--mono);font-size:12px;color:var(--ink-3);background:var(--surface);padding:4px 12px;border-radius:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.site-hero{padding:24px 24px 8px}.site-hero h2{margin:0 0 4px;font:400 24px/1.2 var(--display)}.site-hero p{margin:0;color:var(--ink-2);font-size:14px}
.site-body{padding:16px 24px 24px}
.fg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.fg .full{grid-column:1/-1}
.f label{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 8px}
.f label .req{color:var(--crit-ink);font-size:12px;font-weight:400}
.f label .auto{color:var(--ink-3);font-size:12px;font-weight:400}
.f .locpick label{margin-top:0}
.fsub{font:500 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border-top:1px solid var(--rule);padding-top:16px;margin-top:8px}
.qrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 20px;border-bottom:1px solid var(--rule)}
.qrow:last-child{border-bottom:0}
.namebtn{border:0;background:transparent;padding:0;font-weight:500;color:var(--ink);cursor:pointer;text-align:left;text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:3px}
.namebtn:hover{color:var(--teal-2);text-decoration-color:currentColor}
dialog.modal{width:min(640px,calc(100% - 32px));max-height:calc(100vh - 40px);padding:0;overflow-y:auto;background:var(--surface);color:var(--ink);border:1px solid var(--rule);border-radius:12px;box-shadow:var(--shadow-2)}
dialog.modal::backdrop{background:rgba(8,19,21,.52)}
.modal .mh{padding:16px 20px;border-bottom:1px solid var(--rule)}.modal .mh h3{margin:0;font:500 20px/1.3 var(--display)}.modal .mh p{margin:4px 0 0;font-size:13px;color:var(--ink-3)}
.modal .mb{padding:20px}
.modal .mb>label:first-child,.modal .mb>.f:first-child label,.modal .mb>.fg:first-child{margin-top:0}
.modal .mf{padding:16px 20px;border-top:1px solid var(--rule);background:var(--surface-2);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}
tr.hl td{background:var(--teal-wash)}
@media (max-width:1100px){.minitiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.adminbar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.minitiles{grid-template-columns:repeat(2,minmax(0,1fr))}.site-hero,.site-body{padding-left:16px;padding-right:16px}}

/* Operations: checkboxes, allotment board, live matches */
label.chk{display:flex;gap:8px;align-items:center;margin:0;text-transform:none;letter-spacing:0;font-size:14px;font-weight:400;color:var(--ink-2);cursor:pointer;min-height:24px}
.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(192px,1fr));gap:8px 12px}
.board-tools{display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.board-tools label:not(.chk){margin-top:0}.board-tools input[type=date],.board-tools select,.board-tools input[type=search]{width:auto;min-width:160px}
.board-tools .btn{height:44px}
.board-checks{display:flex;flex-direction:column;gap:8px;margin-bottom:4px}
table.board{font-size:13px}
table.board th.rc,table.board td.cell{text-align:center;min-width:76px;padding:8px}
table.board th.rc{text-transform:none;letter-spacing:0;font-size:12px;color:var(--ink-2);font-weight:500;white-space:normal;max-width:96px;line-height:1.3}
table.board th.rc .s{font-weight:400;font-size:11px}
table.board .ofs{border-left:1px solid var(--rule-2)}
table.board tr.offrow th{padding:8px;background:var(--surface-3)}
table.board th.offh{text-align:center;border-left:1px solid var(--rule-2);color:var(--ink-2)}
table.board tr.inactive td{background:var(--surface-2);color:var(--ink-3)}
table.board tr.tot td{border-top:1px solid var(--rule-2);background:var(--surface-2)}
.rolecell{display:flex;justify-content:space-between;gap:8px;align-items:start}
.cell-toggle{min-width:44px;height:32px;padding:0 8px;border-radius:8px;border:1px solid var(--rule-2);background:var(--surface);color:var(--ink-3);font:500 12px/1 var(--sans);cursor:pointer}
.cell-toggle.on{background:var(--action);border-color:var(--action);color:#FFFFFF}
.cell-toggle:hover:not(:disabled){border-color:var(--teal)}.cell-toggle:disabled{cursor:default;opacity:.75}
.cell-toggle[aria-busy="true"]{opacity:.5}
.mrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--rule)}
.mrow:last-child{border-bottom:0}.mrow b{font-weight:500}
.score{display:inline-flex;align-items:center;justify-content:center;height:24px;min-width:36px;padding:0 8px;border-radius:12px;font:600 12px/1 var(--mono);background:var(--surface-3);color:var(--ink-2)}
.score.strong{background:var(--good-wash);color:var(--good-ink)}
table.board th.role{min-width:220px}
.f label.chk{justify-content:flex-start}
@media (max-width:860px){.board-tools{align-items:stretch}.board-tools>div:not(.board-checks),.board-tools input:not([type=checkbox]),.board-tools select{width:100%}
  table.board th.role{min-width:152px}.rolecell{flex-direction:column}}

/* Recruiter: score ring, KPI cards, interviews, coverage bar, meter, drop zone, WhatsApp, bulk upload */
.rag{display:inline-flex;align-items:center;justify-content:center;height:24px;min-width:40px;padding:0 8px;border-radius:12px;font:600 12px/1 var(--mono);font-variant-numeric:tabular-nums;text-align:center;background:var(--surface-3);color:var(--ink-2)}
.rag.g{background:var(--good-wash);color:var(--good-ink)}.rag.a{background:var(--warn-wash);color:var(--warn-ink)}.rag.r{background:var(--crit-wash);color:var(--crit-ink)}
.rag.big{height:32px;min-width:52px;font-size:16px;padding:0 12px;border-radius:16px}
.ring{--c:var(--teal);width:104px;height:104px;border-radius:50%;flex:none;display:grid;place-items:center;background:conic-gradient(var(--c) calc(var(--p,0) * 1%),var(--surface-3) 0)}
.ring.g{--c:var(--good-ink)}.ring.a{--c:var(--teal)}.ring.r{--c:var(--crit)}
.ring>span{width:84px;height:84px;border-radius:50%;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.ring b{font:400 32px/1 var(--display);font-variant-numeric:tabular-nums;color:var(--ink)}.ring small{font-size:11px;line-height:1;color:var(--ink-3)}
.kgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:20px}
.kc{display:flex;flex-direction:column;gap:8px;width:100%;text-align:left;font:inherit;color:inherit;background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:20px;cursor:pointer;min-width:0}
.kc:hover{border-color:var(--teal)}.kc:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.kc-h{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:29px;font:500 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.kc-h .rag{min-width:36px;letter-spacing:0}
.kc-v{font:400 24px/1.15 var(--display);margin:0;font-variant-numeric:tabular-nums;color:var(--ink);overflow-wrap:anywhere}
.kc .s{line-height:1.4}
.rec-hero{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.rec-hero h3{margin:0 0 4px;font:500 20px/1.3 var(--display)}
.rec-hero .rec-who{flex:1 1 240px;min-width:0}
.rec-today{display:grid;grid-template-columns:repeat(4,auto);gap:8px 24px;margin-left:auto}
.rec-today button{display:flex;flex-direction:column;align-items:flex-end;gap:4px;border:0;background:transparent;font:inherit;color:inherit;cursor:pointer;padding:4px 8px;border-radius:8px}
.rec-today button:hover{background:var(--surface-2)}
.rec-today b{font:400 28px/1.1 var(--display);font-variant-numeric:tabular-nums}.rec-today span{font-size:12px;color:var(--ink-3)}
.intbanner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--deep);border:0;color:#FFFFFF;border-radius:12px;padding:16px 20px;margin-bottom:20px;font-size:14px}
.intbanner svg.i{color:#7FD3DF}
.intbanner b{color:#FFFFFF}
.card.intcard{border-color:var(--teal-line)}
.introw{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 20px;border-bottom:1px solid var(--rule)}
.introw:last-child{border-bottom:0}.introw.today{background:var(--teal-wash)}
.intt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:56px;border:1px solid var(--rule);border-radius:8px;background:var(--surface)}
.intt b{display:block;font:400 18px/1 var(--display);font-variant-numeric:tabular-nums}.intt span{font:500 11px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.intc{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.bar{display:inline-block;width:72px;height:6px;border-radius:3px;background:var(--surface-3);margin-right:8px;vertical-align:middle;overflow:hidden}
.bar i{display:block;height:100%;background:var(--teal)}
.meter{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden}
.meter i{display:block;height:100%;border-radius:3px;background:var(--crit);transition:width .3s,background .3s}
.meter.full i{background:var(--teal)}
.missing{font-size:13px;color:var(--crit-ink);margin-top:8px}.missing.ok{color:var(--good-ink);background:none;padding:0;border:0}
.drop{display:block;border:1px dashed var(--rule-2);border-radius:12px;padding:20px;text-align:center;background:var(--surface-2);cursor:pointer;margin:0;color:var(--ink-2);font-weight:400}
.drop:hover,.drop:focus-within{border-color:var(--teal);background:var(--teal-wash)}
.drop b{display:block;font-size:14px;margin-bottom:4px;color:var(--ink);font-weight:500}.drop span{font-size:12px;color:var(--ink-3)}
.drop input[type=file]{margin-top:8px;border:0;background:transparent;padding:0;font-size:13px;height:auto}
.tag.hit{background:var(--teal-wash);color:var(--teal-3);font-weight:500}
.tag.amber{background:var(--warn-wash);color:var(--warn-ink)}
.chip.wa{background:var(--wa-wash);color:var(--wa)}
.btn.wa{background:var(--good-ink);border-color:var(--good-ink)}
.bubble{max-width:340px;background:var(--wa-wash);border:1px solid var(--rule);border-radius:12px 12px 12px 4px;padding:8px 12px;font-size:13px;margin:8px 0}
.bubble .t{font-size:11px;color:var(--ink-3);margin-top:4px;text-align:right}
.cvtext{white-space:pre-wrap;font-size:13px;color:var(--ink-2);max-height:420px;overflow-y:auto;margin:0;font-family:var(--sans)}
.prog{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;margin-bottom:20px}
.prog div{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:20px;display:grid;grid-template-rows:minmax(29px,auto) auto;align-content:start;gap:8px}
.prog b{display:block;font:400 28px/1.1 var(--display);font-variant-numeric:tabular-nums;order:1}.prog span{font:500 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.prog .bad b{color:var(--crit-ink)}
.rowedit{background:var(--surface-2)}
.rowedit td{padding:12px 16px}
@media (max-width:1100px){.kgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.prog{grid-template-columns:repeat(3,minmax(0,1fr))}.rec-today{grid-template-columns:repeat(2,auto)}}
@media (max-width:760px){.rec-today{margin-left:0;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.rec-today button{align-items:flex-start}}
@media (max-width:620px){.introw{grid-template-columns:56px minmax(0,1fr)}.intc{grid-column:1/-1;justify-content:flex-start}.prog{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Coordination to joining */
.copybox{width:100%;min-height:232px;font-family:var(--mono);font-size:12px;line-height:1.6}
.att{display:inline-flex;align-items:center;gap:8px;font-size:12px;padding:4px 8px;border:1px solid var(--rule-2);border-radius:8px;margin:4px 4px 0 0;background:var(--surface)}
.conn{display:flex;align-items:center;gap:8px;font-size:13px;padding:8px 12px;border-radius:8px;background:var(--good-wash);color:var(--good-ink);margin-bottom:16px}
.conn::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--good-ink);flex:none}
.conn.warn{background:var(--warn-wash);color:var(--warn-ink)}.conn.warn::before{background:var(--warn-ink)}
.tl{list-style:none;margin:0;padding:0}
.tl li{position:relative;padding:0 0 12px 20px;font-size:13px;color:var(--ink-2)}
.tl li::before{content:"";position:absolute;left:4px;top:6px;width:8px;height:8px;border-radius:50%;background:var(--teal)}
.tl li::after{content:"";position:absolute;left:7px;top:16px;bottom:0;width:1px;background:var(--rule-2)}
.tl li:last-child::after{display:none}
.tl li.rev::before{background:var(--crit)}
.tl li b{color:var(--ink)}
.vbtns{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.vbtns select,.vbtns input{width:auto;display:inline-block;height:32px;padding:0 8px;font-size:13px}
.ocform{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ocform select,.ocform input{width:auto;height:32px;padding:0 8px;font-size:13px}
.ocnext{flex-basis:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:4px}
.ocnext input,.ocnext select{width:100%}
.ocnext[hidden]{display:none}
.warnline{font-size:13px;color:var(--warn-ink);margin-top:4px}
.minitiles.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.minitiles.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.minitiles.c5{grid-template-columns:repeat(5,minmax(0,1fr))}
.minitiles.c7,.minitiles.c8{grid-template-columns:repeat(4,minmax(0,1fr))}
.adminbar.c5{grid-template-columns:repeat(5,minmax(0,1fr))}.adminbar.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.minitiles.c5{grid-template-columns:repeat(3,minmax(0,1fr))}.adminbar.c5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.minitiles.c7,.minitiles.c8{grid-template-columns:repeat(3,minmax(0,1fr))}.adminbar.c5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.minitiles.c3,.minitiles.c4,.minitiles.c5,.minitiles.c7,.minitiles.c8{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* "Balance is TDS" opens a small form under its button */
details.pop{position:relative;display:inline-block}details.pop summary{list-style:none;cursor:pointer}details.pop summary::-webkit-details-marker{display:none}
details.pop .pop-b{position:absolute;right:0;top:calc(100% + 4px);z-index:20;width:264px;display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--surface);border:1px solid var(--rule);border-radius:12px;box-shadow:var(--shadow-2);white-space:normal;text-align:left}
details.pop .pop-b input{width:100%}
.mailprev{border:1px solid var(--rule);border-radius:12px;overflow:hidden;font-size:13px}
.mailprev .mrowh{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px;padding:8px 12px;border-bottom:1px solid var(--rule);background:var(--surface-2)}
.mailprev .mrowh span{color:var(--ink-3);font:500 11px/1.6 var(--sans);text-transform:uppercase;letter-spacing:.12em}
.mailprev .mrowh div{overflow-wrap:anywhere}
.mailprev .mbody{padding:12px;color:var(--ink-2);white-space:pre-line}
/* "incl. GST" / "excl. GST" under a money tile's label */
.gst{display:block;font-size:12px;color:var(--ink-3);margin-top:4px}
/* HR and KPIs: the KPI table's cells, the detail panel's tier ladder, the sheet in edit mode */
.kpic{font-size:11px;color:var(--ink-3);display:block;margin-top:4px;white-space:nowrap}
.kpic .nottyped,.nottyped{color:var(--warn-ink);font-weight:600}
.cellbtn{border:0;background:transparent;padding:0;cursor:pointer;font:inherit;color:inherit;text-align:right}
.cellbtn:hover .rag,.cellbtn:focus-visible .rag{outline:2px solid var(--teal);outline-offset:1px}
table.kpit td{vertical-align:top}
.b03{color:var(--ink-2)}
tr.selrow td{background:var(--teal-wash)}.sticky1 tr.selrow td:first-child{background:var(--teal-wash)}
.attf{display:inline-flex;align-items:center;gap:4px;justify-content:flex-end;flex-wrap:nowrap}
.attf input[type=number]{width:64px;height:32px;padding:0 8px;text-align:right}.attf input[type=text]{width:140px;height:32px;padding:0 8px;font-size:13px}
.krow{display:grid;grid-template-columns:200px minmax(0,1fr) 192px;gap:16px;align-items:center;padding:12px 0;border-top:1px solid var(--rule)}
.krow:first-of-type{border-top:0}
.krow .m{font-weight:500;color:var(--ink);text-align:left}
.ladder{display:flex;flex-wrap:wrap;gap:4px}
.tier{font-size:12px;line-height:16px;padding:4px 8px;border-radius:12px;border:1px solid var(--rule-2);color:var(--ink-3);white-space:nowrap;font-variant-numeric:tabular-nums}
.tier.on{background:var(--teal-wash);border-color:var(--teal);color:var(--teal-3);font-weight:600}
.tierin{display:flex;align-items:center;gap:4px;margin:4px 0;white-space:nowrap}
.tierin input{width:84px;height:32px;padding:0 8px;font-size:13px}.tierin input+input,.tierin input:last-child{width:56px}
.tierin .fixed{display:inline-block;width:84px}
h4.sub{margin:24px 0 8px;font:500 16px/1.3 var(--display)}
.callout.warnbox{border-color:var(--warn-wash);background:var(--warn-wash)}
.hist{padding:4px 0 8px;border-top:1px solid var(--rule)}.hist:first-child{border-top:0}
.hist ul{margin:4px 0 0;padding-left:20px;line-height:1.6}
a.kv.rowlink{text-decoration:none;color:inherit}a.kv.rowlink:hover b{color:var(--teal-2)}
@media (max-width:760px){.krow{grid-template-columns:1fr;gap:8px}.krow .r{text-align:left}.adminbar.c3{grid-template-columns:1fr}}
table.kpit th:first-child,table.kpit td:first-child{min-width:192px}
table.kpit td.attc{min-width:152px;white-space:nowrap}
.attf .btn.sm{height:32px;padding:0 8px}
.js .attf .btn.autohide{display:none}
.kv .rag{align-self:center}

/* Super Admin: console, settings, audit, health, search, data check */
.sev{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;font-size:12px;font-weight:600;flex:none}
.sev.c{background:var(--crit-wash);color:var(--crit-ink)}.sev.s{background:var(--warn-wash);color:var(--warn-ink)}.sev.w{background:var(--teal-wash);color:var(--teal-3)}
.qrow.sevrow{grid-template-columns:auto minmax(0,1fr) auto;gap:16px}
.tgroup{font:500 11px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:0 0 12px}
.hl{display:grid;grid-template-columns:auto 192px minmax(0,1fr);gap:12px;align-items:start;padding:12px 20px;border-bottom:1px solid var(--rule)}
.hl:last-child{border-bottom:0}.hl b{font-weight:500}.hl .fix{font-size:13px;color:var(--ink-2);margin-top:4px}
.dot{width:12px;height:12px;border-radius:50%;margin-top:4px;display:inline-block}
.dot.green{background:var(--good-ink)}.dot.amber{background:var(--warn)}.dot.red{background:var(--crit)}
@media (max-width:700px){.hl{grid-template-columns:auto minmax(0,1fr)}.hl>div:last-child{grid-column:2}}
.sres h3{margin:24px 0 8px;font:500 18px/1.3 var(--display)}
.setgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(264px,1fr));gap:20px}
.setgrid textarea{width:100%;min-height:152px;font:inherit;font-size:13px;line-height:1.5}
.logo-prev{max-height:48px;max-width:200px;background:#FFFFFF;border:1px solid var(--rule);border-radius:8px;padding:4px}
pre.audit{white-space:pre-wrap;word-break:break-word;margin:0;font-size:12px;max-width:420px}

/* Help: the user guide rendered from Markdown */
article.guide{padding:20px;line-height:1.6;max-width:900px}
article.guide h1{font:300 28px/1.2 var(--display);margin:0 0 8px}
article.guide h2{font:500 20px/1.3 var(--display);margin:24px 0 8px;padding-top:12px;border-top:1px solid var(--rule)}
article.guide h3{font:500 16px/1.3 var(--display);margin:16px 0 4px}
article.guide p,.guide li{font-size:14px;color:var(--ink-2)}
article.guide ul,.guide ol{padding-left:20px;margin:8px 0}
article.guide table{width:100%;border-collapse:collapse;margin:8px 0;font-size:13px;display:block;overflow-x:auto}
article.guide th,.guide td{border-bottom:1px solid var(--rule);padding:8px;text-align:left;vertical-align:top}
article.guide th{color:var(--ink-3);font-weight:500}
article.guide code{font-size:12px;background:var(--surface-2);padding:0 4px;border-radius:4px}
article.guide a{color:var(--teal-2)}

/* phone and tablet: the menu becomes a bar with the screen picker; page padding 16px */
@media (max-width:860px){
  .shell{grid-template-columns:minmax(0,1fr)}
  .rail{position:static;height:auto;overflow:visible;padding:12px 16px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px}
  .rail-brand{padding:0;gap:4px}.rail-brand img{width:56px}.rail-brand span{display:none}
  .rail-nav{display:block}
  .rail .rg,.rail .ri,.rail .me{display:none}.railsel{display:block}
  .top-in{padding:12px 16px;gap:8px}
  .gsearch{order:2;flex:1 1 100%;max-width:none}
  .top-act{margin-left:0;flex:1 1 100%;justify-content:flex-end}
  
  .top-act{flex-wrap:nowrap;min-width:0}.aswrap{flex:1 1 auto;min-width:0}.aswrap label{display:none}.aswrap select{flex:1;min-width:0;max-width:none}
  .asbar{padding:8px 16px}
  .page{padding:16px}
  h1{font-size:28px}
  .sh{margin-bottom:24px}
  .two,.grid,.fg{grid-template-columns:minmax(0,1fr)}
  .adminbar{gap:12px}.minitiles,.kgrid,.prog{gap:12px}
  .signin{grid-template-columns:minmax(0,1fr)}
  .signin-l{padding:32px 24px;gap:32px}.signin-pitch h1{font-size:32px}.signin-l::before,.signin-l::after{display:none}
  .signin-r{padding:40px 24px}
}
@media (max-width:560px){
  .mt,.abtn,.kc{padding:16px}
  .mt .v,.kc-v,.prog b{font-size:24px}.abtn.stat span{font-size:24px}
  .card-h{padding:12px 16px;min-height:56px}.card-b{padding:16px}
  .qrow,.introw,.hl{padding-left:16px;padding-right:16px}
  .card table tr>:first-child{padding-left:16px}.card table tr>:last-child{padding-right:16px}
  .card>.lt-block>.lt-tools{padding:16px 16px 0}.card>.lt-block .pager{padding:12px 16px}
  .ring{width:88px;height:88px}.ring>span{width:72px;height:72px}.ring b{font-size:28px}
}
.intbanner>span:not(.chip){flex:1 1 240px;min-width:0}
.minitiles.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.kv>b.s{text-align:right;max-width:50%}
.lt-tools select{max-width:100%}
/* a table inside a card's body runs edge to edge, like the board's tables; its first and last cells keep the 20px inset */
.card-b>.scroller,.card-b>.lt-block>.scroller,.card-b>form>.scroller{margin-left:-20px;margin-right:-20px}
.card-b>.scroller:first-child,.card-b>form:first-child>.scroller:first-child{margin-top:-20px}
@media (max-width:560px){.card-b>.scroller,.card-b>.lt-block>.scroller,.card-b>form>.scroller{margin-left:-16px;margin-right:-16px}.card-b>.scroller:first-child,.card-b>form:first-child>.scroller:first-child{margin-top:-16px}}
/* a row of fields with its button: everything 44px high, bottoms lined up */
.frow{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.frow label{margin-top:0}.frow .btn{height:44px}.frow>.s,.frow>span.s{align-self:center}
.card-h>form.lt-tools{flex:1 1 auto;justify-content:flex-end;min-width:0}
/* a button beside a field matches the field: 44px */
.inline input:not([type=hidden])~.btn,.inline select~.btn,.inline input:not([type=hidden])~.btn.sm,.inline select~.btn.sm{height:44px}
