/* CargoChain Fleet OS: the signature layer. Loaded last, over every page (calm or not).
   Identity: monday-style, a blue that means "act here", Figtree and Poppins, status colours with jobs, light and night themes. Ink and paper, one signal amber that only ever means "this is live / this is yours",
   editorial type, hairlines instead of boxes, numbers set like a ledger. Colour has jobs: teal = settled, brick = needs you,
   ochre = watch, steel = neutral data. Nothing decorative; no gradients except where a surface really fades.
   Tune it here, in the tokens. */
:root{color-scheme:light;
--ink:#323338;--ink-2:#434455;--ink-3:#676879;--ink-4:#9699a6;
--paper:#f6f7fb;--paper-2:#f5f6f8;--card:#ffffff;--sunk:#e6e9ef;
--rule:#d0d4e4;--rule-2:#c3c6d4;
--brand:#0073ea;--brand-hover:#0060b9;--brand-soft:#cce5ff;
--ai1:#00d2d2;--ai2:#0073ea;--ai3:#a25ddc;
--signal:#0073ea;--signal-ink:#0060b9;--signal-soft:#cce5ff;
--teal:#00854d;--teal-soft:#d6f5e6;--brick:#d83a52;--brick-soft:#fde4e8;--ochre:#8a5a00;--ochre-soft:#fff1c2;--steel:#2f6db5;--steel-soft:#dbeaff;--purple:#784bd1;--purple-soft:#ece3fb;
--done:#00c875;--working:#fdab3d;--stuck:#e2445c;--sky:#66ccff;--pink:#ff5ac4;--bright:#579bfc;--grape:#a25ddc;--yolk:#ffcb00;
--side-bg:#ffffff;--side-text:#676879;--side-text-2:#9699a6;--side-hover:#f0f1f5;--side-active:#cce5ff;--side-active-text:#0060b9;--side-line:#e6e9ef;
--topbar-bg:rgba(246,247,251,.92);--toast-bg:#323338;--scrim:rgba(50,51,56,.42);--shadow-pop:0 20px 50px rgba(50,51,56,.2);
--bg:var(--paper);--surface:var(--card);--surface2:var(--paper-2);--surface3:var(--sunk);--surface-2:var(--paper-2);
--line:var(--rule);--line-strong:var(--rule-2);--muted:var(--ink-3);--ink-soft:var(--ink-3);--ink-faint:var(--ink-4);
--blue:var(--brand);--blue2:var(--brand);--accent:var(--brand);--accent-deep:var(--brand-hover);
--green:var(--teal);--good:var(--teal);--good-soft:var(--teal-soft);--red:var(--brick);--bad:var(--brick);--amber:var(--ochre);--warn:var(--ochre);
--series-1:var(--brand);--series-2:var(--bright);
--shadow:0 1px 2px rgba(50,51,56,.06);
--r:8px;--r-sm:4px;
--f-display:"Poppins","Figtree",system-ui,sans-serif;
--f-ui:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
--f-mono:"Figtree",ui-monospace,SFMono-Regular,Menlo,monospace;
--spring:cubic-bezier(.22,1,.36,1);
--press:cubic-bezier(.3,0,.25,1);
--settle:cubic-bezier(.2,.9,.25,1.08);
}
/* monday's night theme: the same roles, the same names, different values */
html[data-theme="dark"]{color-scheme:dark;
--ink:#d5d8df;--ink-2:#c3c6d4;--ink-3:#9699a6;--ink-4:#797e93;
--paper:#181b34;--paper-2:#212541;--card:#30324e;--sunk:#3c3f59;
--rule:#4b4e69;--rule-2:#5c5f7a;
--brand-soft:#133774;--signal-ink:#69a7ef;--signal-soft:#133774;
--teal:#00c875;--teal-soft:rgba(0,200,117,.16);--brick:#ff7b8e;--brick-soft:rgba(216,58,82,.24);--ochre:#ffcb00;--ochre-soft:rgba(255,203,0,.14);--steel:#69a7ef;--steel-soft:rgba(105,167,239,.18);--purple:#b39af0;--purple-soft:rgba(162,93,220,.22);
--side-bg:#14172e;--side-text:#c3c6d4;--side-text-2:#9699a6;--side-hover:#242846;--side-active:#133774;--side-active-text:#ffffff;--side-line:#2a2e4d;
--topbar-bg:rgba(24,27,52,.9);--toast-bg:#434660;--scrim:rgba(10,12,30,.64);--shadow-pop:0 20px 50px rgba(0,0,0,.55);
--shadow:0 1px 2px rgba(0,0,0,.3);
}
@supports (transition-timing-function:linear(0,1)){
:root{--spring:linear(0,.18 4%,.5 9%,.78 15%,.93 22%,1.012 31%,1.018 40%,1.004 52%,.998 66%,1)}
}
html body:is(.calm,:not(.calm)){background:var(--paper);color:var(--ink);font-family:var(--f-ui);font-size:14px;font-feature-settings:"ss01","tnum";letter-spacing:-.003em}
html body:is(.calm,:not(.calm)) .content{background:var(--paper)}
html body:is(.calm,:not(.calm)) ::selection{background:var(--signal);color:var(--ink)}
html body:is(.calm,:not(.calm)) :focus-visible{outline:1px solid var(--rule);outline-offset:2px;border-radius:6px}
html body:is(.calm,:not(.calm)) .sidebar{background:var(--side-bg);color:var(--side-text);padding:20px 10px 14px;border-right:1px solid var(--side-line)}
html body:is(.calm,:not(.calm)) .sidebar .brand{color:var(--ink);padding:0 10px 26px;gap:12px;font-family:var(--f-display);font-size:19px;font-weight:700;letter-spacing:-.4px}
html body:is(.calm,:not(.calm)) .sidebar .brandmark{width:34px;height:34px;border-radius:9px;background:var(--signal);color:#fff;font-family:var(--f-display);font-size:21px;font-weight:800;box-shadow:none;display:grid;place-items:center}
html body:is(.calm,:not(.calm)) .sidebar .brandtext small{font-family:var(--f-ui);font-size:11px;letter-spacing:.2px;color:var(--side-text-2);font-weight:500;margin-top:1px}
html body:is(.calm,:not(.calm)) .sidebar .workspace-label{font-family:var(--f-mono);font-size:9.5px;letter-spacing:1.8px;color:var(--side-text-2);margin:0 10px 12px}
html body:is(.calm,:not(.calm)) .sidebar .nav button{color:var(--side-text);font-family:var(--f-ui);font-size:13.5px;font-weight:500;border-radius:8px;position:relative;transition:background-color .2s,color .2s}
html body:is(.calm,:not(.calm)) .sidebar .nav button:hover{background:var(--side-hover);color:var(--ink)}
html body:is(.calm,:not(.calm)) .sidebar .nav>button.active, html body:is(.calm,:not(.calm)) .sidebar .groupitems button.active{background:var(--side-active);color:var(--side-active-text);box-shadow:none}
html body:is(.calm,:not(.calm)) .sidebar .nav>button.active::before, html body:is(.calm,:not(.calm)) .sidebar .groupitems button.active::before{content:none}
html body:is(.calm,:not(.calm)) .sidebar .grouphead{font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--side-text-2);font-weight:600;display:flex;align-items:center;gap:10px;margin-top:10px}
html body:is(.calm,:not(.calm)) .sidebar .navgroup.open>.grouphead{color:var(--ink)}
html body:is(.calm,:not(.calm)) .sidebar .fleet-icon{width:17px;height:17px;flex:none;stroke-width:1.6}
html body:is(.calm,:not(.calm)) .sidebar .fleet-icon.grp{width:15px;height:15px;opacity:.8}
html body:is(.calm,:not(.calm)) .sidebar .sidefoot{border-color:var(--side-line);color:var(--side-text-2);font-family:var(--f-mono);font-size:11px}
html body:is(.calm,:not(.calm)) .content>.topbar{background:var(--topbar-bg);border-bottom:1px solid var(--rule);backdrop-filter:blur(10px)}
html body:is(.calm,:not(.calm)) .searchbox input{background:var(--card);border:1px solid var(--rule);border-radius:10px;font-family:var(--f-ui)}
html body:is(.calm,:not(.calm)) .rightnote{font-family:var(--f-mono);font-size:11.5px!important;color:var(--ink-3);letter-spacing:.2px}
html body:is(.calm,:not(.calm)) main{max-width:1560px}
html body:is(.calm,:not(.calm)) .pagehead{align-items:flex-end;border-bottom:1px solid var(--rule);padding-bottom:18px;margin-bottom:26px}
html body:is(.calm,:not(.calm)) .pagehead h1{font-family:var(--f-display);font-size:34px;font-weight:700;letter-spacing:-1.1px;line-height:1.05;color:var(--ink)}
html body:is(.calm,:not(.calm)) .pagehead p{font-size:13.5px;color:var(--ink-3);margin-top:8px}
html body:is(.calm,:not(.calm)) .subhead{font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-3);font-weight:600;margin:0 0 12px}
html body:is(.calm,:not(.calm)) .card, html body:is(.calm,:not(.calm)) .tablewrap, html body:is(.calm,:not(.calm)) .modal{background:var(--card);border:1px solid var(--rule);border-radius:var(--r);box-shadow:none}
html body:is(.calm,:not(.calm)) .card{padding:20px}
html body:is(.calm,:not(.calm)) .muted{color:var(--ink-3)}
html body:is(.calm,:not(.calm)) .mono, html body:is(.calm,:not(.calm)) .kpi-v, html body:is(.calm,:not(.calm)) td.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
html body:is(.calm,:not(.calm)) .kpis{gap:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:transparent;margin:0 0 26px}
html body:is(.calm,:not(.calm)) .kpi{border:0;border-radius:0;background:transparent;box-shadow:none;padding:16px 20px 18px;border-left:1px solid var(--rule);position:relative}
html body:is(.calm,:not(.calm)) .kpi:first-child{border-left:0;padding-left:2px}
html body:is(.calm,:not(.calm)) .kpi-k{font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.3px;text-transform:uppercase;color:var(--ink-3);font-weight:600}
html body:is(.calm,:not(.calm)) .kpi-v{font-family:var(--f-display);font-size:38px;font-weight:700;letter-spacing:-1.6px;line-height:1.05;margin:10px 0 4px;color:var(--ink);font-feature-settings:"tnum"}
html body:is(.calm,:not(.calm)) .kpi-s{font-size:12px;color:var(--ink-3)}
html body:is(.calm,:not(.calm)) .kpi-l{font-family:var(--f-mono);font-size:11px;color:var(--ink);margin-top:10px;display:inline-flex;gap:6px;align-items:center}
html body:is(.calm,:not(.calm)) .kpi.click{cursor:pointer;text-align:left}
html body:is(.calm,:not(.calm)) .kpi.click::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--settle)}
html body:is(.calm,:not(.calm)) .kpi.click:hover::after, html body:is(.calm,:not(.calm)) .kpi.on::after{transform:scaleX(1)}
html body:is(.calm,:not(.calm)) .kpi.on{background:rgba(0,115,234,.1)}
html body:is(.calm,:not(.calm)) .kpi.bad .kpi-v{color:var(--brick)}
html body:is(.calm,:not(.calm)) .grid.cards4, html body:is(.calm,:not(.calm)) .grid.cards6{gap:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:26px}
html body:is(.calm,:not(.calm)) .grid.cards4>.card.metric, html body:is(.calm,:not(.calm)) .grid.cards6>.card.metric{border:0;border-radius:0;background:transparent;border-left:1px solid var(--rule);padding:16px 20px 18px}
html body:is(.calm,:not(.calm)) .grid.cards4>.card.metric:first-child, html body:is(.calm,:not(.calm)) .grid.cards6>.card.metric:first-child{border-left:0;padding-left:2px}
html body:is(.calm,:not(.calm)) .metric .k{font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.3px;color:var(--ink-3)}
html body:is(.calm,:not(.calm)) .metric .v{font-family:var(--f-display);font-size:34px;font-weight:700;letter-spacing:-1.4px;color:var(--ink)}
html body:is(.calm,:not(.calm)) .metric.alertmetric .v{color:var(--brick)}
html body:is(.calm,:not(.calm)) .tablewrap{border-radius:var(--r);overflow:auto}
html body:is(.calm,:not(.calm)) table{font-variant-numeric:tabular-nums}
html body:is(.calm,:not(.calm)) th{font-family:var(--f-mono);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-3);background:var(--paper-2);border-bottom:1px solid var(--rule-2);font-weight:600;padding:11px 12px}
html body:is(.calm,:not(.calm)) td{border-bottom:1px solid var(--rule);padding:12px;font-size:13px;color:var(--ink-2)}
html body:is(.calm,:not(.calm)) td b{color:var(--ink);font-weight:600}
html body:is(.calm,:not(.calm)) tbody tr{transition:background-color .18s}
html body:is(.calm,:not(.calm)) tbody tr:hover{background:var(--paper-2)}
html body:is(.calm,:not(.calm)) tbody tr:hover td:first-child{box-shadow:inset 3px 0 var(--signal)}
html body:is(.calm,:not(.calm)) tr:last-child td{border-bottom:0}
html body:is(.calm,:not(.calm)) tr.total td{border-top:1px solid var(--ink);font-weight:700;color:var(--ink)}
html body:is(.calm,:not(.calm)) .pill{font-family:var(--f-mono);font-size:10.5px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;padding:3px 9px 3px 8px;border-radius:6px;background:var(--sunk);color:var(--ink-2);display:inline-flex;align-items:center;gap:6px}
html body:is(.calm,:not(.calm)) .pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.75}
html body:is(.calm,:not(.calm)) .pill.good{background:var(--teal-soft);color:var(--teal)}
html body:is(.calm,:not(.calm)) .pill.warn{background:var(--ochre-soft);color:var(--ochre)}
html body:is(.calm,:not(.calm)) .pill.bad{background:var(--brick-soft);color:var(--brick)}
html body:is(.calm,:not(.calm)) .flag{font-family:var(--f-mono);font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:var(--brick);background:var(--brick-soft);border-radius:5px;padding:2px 6px}
html body:is(.calm,:not(.calm)) .errorbox{background:var(--brick-soft);border:1px solid color-mix(in srgb,var(--brick) 40%,transparent);color:var(--brick);border-radius:var(--r-sm)}
html body:is(.calm,:not(.calm)) .warnbox{background:var(--ochre-soft);border:1px solid color-mix(in srgb,var(--ochre) 40%,transparent);color:var(--ochre);border-radius:var(--r-sm)}
html body:is(.calm,:not(.calm)) .tabs{display:flex;gap:2px;border-bottom:1px solid var(--rule);margin:0 0 20px;flex-wrap:wrap}
html body:is(.calm,:not(.calm)) .tabs .btn{border:0;background:transparent;border-radius:0;color:var(--ink-3);font-weight:550;padding:9px 14px 11px;min-height:0;position:relative;margin-bottom:-1px;border-bottom:2px solid transparent}
html body:is(.calm,:not(.calm)) .tabs .btn:hover{background:transparent;color:var(--ink);border-bottom-color:var(--rule-2)}
html body:is(.calm,:not(.calm)) .tabs .btn.primary{background:transparent;color:var(--ink);border-bottom-color:var(--signal);font-weight:650}
html body:is(.calm,:not(.calm)) .tabs .btn::before{display:none}
html body:is(.calm,:not(.calm)) .btn{font-family:var(--f-ui);font-weight:600;font-size:13px;border:1px solid var(--rule-2);border-radius:10px;background:var(--card);color:var(--ink);padding:8px 14px;min-height:36px;position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:none;text-decoration:none;transform:translate3d(var(--mx,0px),var(--my,0px),0) scale(var(--sc,1));transition:transform 560ms var(--spring),background-color .25s,border-color .25s,color .25s}
html body:is(.calm,:not(.calm)) .btn:hover{background:var(--card);border-color:var(--ink)}
html body:is(.calm,:not(.calm)) .btn:active{--sc:.96;transition-duration:70ms,.1s,.1s,.1s;transition-timing-function:var(--press)}
html body:is(.calm,:not(.calm)) .btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}
html body:is(.calm,:not(.calm)) .btn.primary::before{content:"";position:absolute;inset:0;background:var(--brand-hover);transform:scaleX(0);transform-origin:left;transition:transform 520ms cubic-bezier(.65,0,.2,1);z-index:-1}
html body:is(.calm,:not(.calm)) .btn.primary:hover{background:var(--brand);border-color:var(--brand-hover);color:#fff}
html body:is(.calm,:not(.calm)) .btn.primary:hover::before{transform:scaleX(1)}
html body:is(.calm,:not(.calm)) .btn.small, html body:is(.calm,:not(.calm)) .btn.tiny{min-height:28px;padding:4px 10px;font-size:12px;border-radius:8px}
html body:is(.calm,:not(.calm)) .btn.danger{color:var(--brick);border-color:color-mix(in srgb,var(--brick) 45%,transparent)}
html body:is(.calm,:not(.calm)) .btn:disabled{opacity:.45;cursor:not-allowed}
html body:is(.calm,:not(.calm)) .btn .ico, html body:is(.calm,:not(.calm)) .btn svg.ico{width:1.1em;height:1.1em}
html body:is(.calm,:not(.calm)) .btn .ico, html body:is(.calm,:not(.calm)) .modarrow .ico, html body:is(.calm,:not(.calm)) .kpi-l .ico, html body:is(.calm,:not(.calm)) .nudge{transition:transform 520ms var(--spring) 45ms}
html body:is(.calm,:not(.calm)) .btn:hover .ico, html body:is(.calm,:not(.calm)) .modtile:hover .modarrow .ico, html body:is(.calm,:not(.calm)) .kpi.click:hover .kpi-l .ico, html body:is(.calm,:not(.calm)) .nudge-host:hover .nudge{transform:translateX(4px)}
html body:is(.calm,:not(.calm)) .btn:active .ico{transform:translateX(1px);transition-duration:80ms}
html body:is(.calm,:not(.calm)) input, html body:is(.calm,:not(.calm)) select, html body:is(.calm,:not(.calm)) textarea{font-family:var(--f-ui)}
html body:is(.calm,:not(.calm)) .field label{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.9px;text-transform:uppercase;color:var(--ink-3);font-weight:600}
html body:is(.calm,:not(.calm)) .field input, html body:is(.calm,:not(.calm)) .field select, html body:is(.calm,:not(.calm)) .field textarea, html body:is(.calm,:not(.calm)) .filtergrid input, html body:is(.calm,:not(.calm)) .filtergrid select, html body:is(.calm,:not(.calm)) .toolbarline input, html body:is(.calm,:not(.calm)) .toolbarline select, html body:is(.calm,:not(.calm)) .searchbox input, html body:is(.calm,:not(.calm)) #ccGate input{background:var(--card);border:1px solid var(--rule-2);border-radius:var(--r-sm);color:var(--ink);padding:9px 11px;transition:border-color .25s,background-color .25s}
html body:is(.calm,:not(.calm)) .field input:hover, html body:is(.calm,:not(.calm)) .field select:hover, html body:is(.calm,:not(.calm)) .field textarea:hover{border-color:var(--ink-4)}
html body:is(.calm,:not(.calm)) .field input:focus, html body:is(.calm,:not(.calm)) .field select:focus, html body:is(.calm,:not(.calm)) .field textarea:focus, html body:is(.calm,:not(.calm)) .filtergrid input:focus, html body:is(.calm,:not(.calm)) .filtergrid select:focus, html body:is(.calm,:not(.calm)) .toolbarline input:focus, html body:is(.calm,:not(.calm)) .toolbarline select:focus, html body:is(.calm,:not(.calm)) .searchbox input:focus{outline:none;border-color:var(--ink)}
html body:is(.calm,:not(.calm)) .filtergrid input:focus, html body:is(.calm,:not(.calm)) .filtergrid select:focus, html body:is(.calm,:not(.calm)) .toolbarline input:focus, html body:is(.calm,:not(.calm)) .toolbarline select:focus, html body:is(.calm,:not(.calm)) .searchbox input:focus{animation:ringIn .46s var(--settle) both}
@keyframes ringIn{from{box-shadow:0 0 0 8px rgba(0,115,234,0)}to{box-shadow:0 0 0 3px rgba(0,115,234,.38)}}
html body:is(.calm,:not(.calm)) .fx{position:relative;display:block;width:100%;border-radius:var(--r-sm)}
html body:is(.calm,:not(.calm)) .fx>input, html body:is(.calm,:not(.calm)) .fx>select, html body:is(.calm,:not(.calm)) .fx>textarea{position:relative;z-index:1;width:100%}
html body:is(.calm,:not(.calm)) .fx::before{content:"";position:absolute;inset:-4px;border-radius:calc(var(--r-sm) + 4px);border:2px solid var(--signal);opacity:0;transform:scale(.965);transition:opacity .28s cubic-bezier(.2,.8,.2,1),transform .5s var(--settle);pointer-events:none}
html body:is(.calm,:not(.calm)) .fx:focus-within::before{opacity:.5;transform:scale(1)}
html body:is(.calm,:not(.calm)) .fx::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;pointer-events:none;z-index:2;opacity:0;background:linear-gradient(100deg,transparent 35%,var(--brand) 50%,transparent 65%) 160% 0/260% 100% no-repeat;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}
html body:is(.calm,:not(.calm)) .fx:focus-within::after{opacity:1;animation:borderSweep .9s cubic-bezier(.4,0,.2,1) forwards}
@keyframes borderSweep{from{background-position:160% 0}to{background-position:-60% 0}}
html body:is(.calm,:not(.calm)) .fx.is-err::before{border-color:var(--brick)}
html body:is(.calm,:not(.calm)) .modalback{background:var(--scrim);backdrop-filter:blur(3px)}
html body:is(.calm,:not(.calm)) .modal{border-radius:16px;box-shadow:var(--shadow-pop);animation:modalIn .42s var(--settle) both}
@keyframes modalIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
html body:is(.calm,:not(.calm)) .modalhead h2{font-family:var(--f-display);font-size:22px;font-weight:700;letter-spacing:-.6px}
html body:is(.calm,:not(.calm)) .modgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--rule);border-left:1px solid var(--rule);max-width:1080px}
html body:is(.calm,:not(.calm)) .modtile{position:relative;border:0;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);border-radius:0;background:transparent;box-shadow:none;padding:22px 22px 24px;min-height:176px;gap:10px;overflow:hidden;transform:translate3d(var(--mx,0px),var(--my,0px),0) scale(var(--sc,1));transition:transform 560ms var(--spring),background-color .3s}
html body:is(.calm,:not(.calm)) .modtile:hover{background:var(--card);box-shadow:none;transform:translate3d(var(--mx,0px),var(--my,0px),0) scale(var(--sc,1))}
html body:is(.calm,:not(.calm)) .modtile::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--signal);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--settle)}
html body:is(.calm,:not(.calm)) .modtile:hover::after{transform:scaleX(1)}
html body:is(.calm,:not(.calm)) .modtile:active{--sc:.97;transition-duration:70ms,.1s;transition-timing-function:var(--press)}
html body:is(.calm,:not(.calm)) .modicon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;font-size:0;color:var(--ink);background:var(--sunk);border:1px solid var(--rule-2)}
html body:is(.calm,:not(.calm)) .modicon .ico{width:21px;height:21px}
html body:is(.calm,:not(.calm)) .modicon[data-m=Dispatch]{background:var(--signal-soft);border-color:var(--rule)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Accounting]{background:var(--teal-soft);border-color:var(--rule)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Safety], html body:is(.calm,:not(.calm)) .modicon[data-m=Fleet]{background:var(--brick-soft);border-color:var(--rule)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Directory], html body:is(.calm,:not(.calm)) .modicon[data-m=Integrations]{background:var(--steel-soft);border-color:var(--rule)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Recruitment]{background:var(--ochre-soft);border-color:var(--rule)}
html body:is(.calm,:not(.calm)) .modname{font-family:var(--f-display);font-size:21px;font-weight:700;letter-spacing:-.6px;color:var(--ink)}
html body:is(.calm,:not(.calm)) .modtext{font-size:12.5px;color:var(--ink-3);min-height:36px}
html body:is(.calm,:not(.calm)) .modarrow{position:absolute;right:18px;top:20px;color:var(--ink-4)}
html body:is(.calm,:not(.calm)) .modtile:hover .modarrow{color:var(--ink)}
html body:is(.calm,:not(.calm)) .doctile{border-radius:12px;background:var(--card);border-color:var(--rule);box-shadow:none;transform:translate3d(var(--mx,0px),var(--my,0px),0) scale(var(--sc,1));transition:transform 560ms var(--spring),border-color .25s,box-shadow .3s}
html body:is(.calm,:not(.calm)) .doctile:hover{border-color:var(--ink);box-shadow:var(--shadow-pop)}
html body:is(.calm,:not(.calm)) .doctile:active{--sc:.97;transition-duration:70ms,.1s;transition-timing-function:var(--press)}
html body:is(.calm,:not(.calm)) .docthumb{background:var(--sunk);border-radius:8px}
html body:is(.calm,:not(.calm)) .doctitle{font-family:var(--f-display);font-weight:650;font-size:14px;letter-spacing:-.2px}
html body:is(.calm,:not(.calm)) .dociconbox{border-radius:5px;font-family:var(--f-mono);background:var(--ink-3)}
html body:is(.calm,:not(.calm)) .dociconbox.pdf{background:var(--brick)}
html body:is(.calm,:not(.calm)) .dociconbox.img{background:var(--steel)}
html body:is(.calm,:not(.calm)) .docgroup>summary b{font-family:var(--f-display);font-size:17px;letter-spacing:-.4px}
html body:is(.calm,:not(.calm)) .wizsteps button.active{background:var(--card);border-color:var(--ink);color:var(--ink)}
html body:is(.calm,:not(.calm)) .wizsteps button.active .wizn{background:var(--brand);color:#fff}
html body:is(.calm,:not(.calm)) .wizn{font-family:var(--f-mono)}
html body:is(.calm,:not(.calm)) .ustat{border-left-width:3px}
html body:is(.calm,:not(.calm)) .ustat.g{border-color:var(--teal)}
html body:is(.calm,:not(.calm)) .ustat.o{border-color:var(--ochre)}
html body:is(.calm,:not(.calm)) .ustat.r{border-color:var(--brick)}
html body:is(.calm,:not(.calm)) .ustat.b{border-color:var(--steel)}
html body:is(.calm,:not(.calm)) .ustat-v{font-family:var(--f-display);font-size:26px;letter-spacing:-.8px}
html body:is(.calm,:not(.calm)) button.ustat.on, html body:is(.calm,:not(.calm)) .agetable tr.on{background:var(--signal-soft)}
html body:is(.calm,:not(.calm)) .agebar i{background:var(--brand)}
html body:is(.calm,:not(.calm)) .toolbarline{gap:10px}
html body:is(.calm,:not(.calm)) .toast{background:var(--toast-bg);color:#fff;border-radius:10px;font-family:var(--f-ui)}
html body:is(.calm,:not(.calm)) .statusdot.good{background:var(--done);box-shadow:0 0 0 3px rgba(0,200,117,.25)}
@media (prefers-reduced-motion:reduce){
html body:is(.calm,:not(.calm)) .btn, html body:is(.calm,:not(.calm)) .modtile, html body:is(.calm,:not(.calm)) .doctile{transition:none!important;transform:none!important}
html body:is(.calm,:not(.calm)) .fx:focus-within::after{animation:none}
html body:is(.calm,:not(.calm)) .modal{animation:none}
}
@media(max-width:900px){
html body:is(.calm,:not(.calm)) .kpis{grid-template-columns:1fr 1fr}
html body:is(.calm,:not(.calm)) .kpi:nth-child(odd){border-left:0;padding-left:2px}
}
html body:is(.calm,:not(.calm)) .mobile-menu{display:none}
html body:is(.calm,:not(.calm)) .sidebar .grouphead{justify-content:flex-start;text-align:left}
html body:is(.calm,:not(.calm)) .sidebar .grouphead span{flex:1;text-align:left}
html body:is(.calm,:not(.calm)) .sidebar .grouphead i{margin-left:auto}
html body:is(.calm,:not(.calm)) .fleet-metrics{border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);border-radius:0;background:transparent;gap:0;margin-bottom:26px;overflow:hidden}
html body:is(.calm,:not(.calm)) .fleet-metric{border:0!important;box-shadow:-1px 0 0 var(--rule),0 -1px 0 var(--rule);padding:16px 20px 18px 22px!important;background:transparent;gap:6px}
html body:is(.calm,:not(.calm)) .fleet-metric>span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.3px;text-transform:uppercase;color:var(--ink-3);font-weight:600}
html body:is(.calm,:not(.calm)) .fleet-metric strong{font-family:var(--f-display);font-size:34px;font-weight:700;letter-spacing:-1.4px;line-height:1.05;color:var(--ink)}
html body:is(.calm,:not(.calm)) .fleet-metric small{font-size:12px;color:var(--ink-3)}
html body:is(.calm,:not(.calm)) .fleet-metric:hover{background:var(--paper-2)}
html body:is(.calm,:not(.calm)) .fleet-eyebrow, html body:is(.calm,:not(.calm)) .eyebrow{font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-3)}
@media(max-width:900px){
html body:is(.calm,:not(.calm)) .mobile-menu{display:inline-flex}
}
html body:is(.calm,:not(.calm)) th.sortable{cursor:pointer;user-select:none;transition:color .2s;white-space:nowrap}
html body:is(.calm,:not(.calm)) th.sortable:hover{color:var(--ink)}
html body:is(.calm,:not(.calm)) th.sortable::after{content:"";display:inline-block;width:0;height:0;margin-left:7px;vertical-align:middle;border-left:3.5px solid transparent;border-right:3.5px solid transparent;border-top:4.5px solid var(--rule-2);transition:transform .35s var(--settle),border-top-color .2s}
html body:is(.calm,:not(.calm)) th.sortable:hover::after{border-top-color:var(--ink-3)}
html body:is(.calm,:not(.calm)) th.sortable[aria-sort=ascending]::after{border-top-color:var(--ink);transform:rotate(180deg)}
html body:is(.calm,:not(.calm)) th.sortable[aria-sort=descending]::after{border-top-color:var(--ink)}
html body:is(.calm,:not(.calm)) th.sortable[aria-sort]{color:var(--ink)}
html body:is(.calm,:not(.calm)) .sidebar .nav{scrollbar-width:thin;scrollbar-color:var(--rule-2) transparent}
html body:is(.calm,:not(.calm)) *{scrollbar-width:thin;scrollbar-color:var(--rule-2) transparent}
@media(max-width:900px){
html body:is(.calm,:not(.calm)) .modgrid{grid-template-columns:1fr 1fr}
}
html body:is(.calm,:not(.calm)) .team-pulse{background:var(--brand);border-radius:var(--r);color:#fff;padding:26px 30px}
html body:is(.calm,:not(.calm)) .team-pulse .fleet-eyebrow{color:#cce5ff}
html body:is(.calm,:not(.calm)) .team-pulse h2{font-family:var(--f-display);font-size:28px;font-weight:700;letter-spacing:-.9px;color:#fff}
html body:is(.calm,:not(.calm)) .team-pulse p{color:rgba(255,255,255,.85)}
html body:is(.calm,:not(.calm)) .team-pulse-value strong{font-family:var(--f-display);font-size:54px;font-weight:700;letter-spacing:-1.2px;color:#fff;line-height:1}
html body:is(.calm,:not(.calm)) .agent-hero{background:var(--card);border:1px solid var(--rule);border-top:1px solid var(--rule);border-radius:var(--r)}
html body:is(.calm,:not(.calm)) .agent-hero h2{font-family:var(--f-display);letter-spacing:-.7px}
html body:is(.calm,:not(.calm)) .service-assistant{background:var(--card)}
html body:is(.calm,:not(.calm)) .assistant-symbol{background:var(--signal-soft);color:var(--ink)}
html body:is(.calm,:not(.calm)) .team-board .taskgroup{background:var(--sunk);border:1px solid var(--rule);border-top:3px solid var(--ink-4);border-radius:var(--r)}
html body:is(.calm,:not(.calm)) .team-board .taskgroup:nth-child(2){border-top-color:var(--signal)}
html body:is(.calm,:not(.calm)) .team-board .taskgroup:nth-child(3){border-top-color:var(--steel)}
html body:is(.calm,:not(.calm)) .team-lane-empty{border-color:var(--rule-2);color:var(--ink-3)}
.ico{width:1.15em;height:1.15em;vertical-align:-.2em;flex:none}
html body:is(.calm,:not(.calm)) .agenticon{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--sunk);border:1px solid var(--rule-2);color:var(--ink);font-size:0}
html body:is(.calm,:not(.calm)) .agenticon .ico{width:21px;height:21px}
html body:is(.calm,:not(.calm)) .dz-icon .ico{width:26px;height:26px}
html body:is(.calm,:not(.calm)) .muted .ico{width:1em;height:1em}

/* provider logos: a white tile so every brand sits on the same ground */
.plogo{flex:none;width:44px;height:44px;border-radius:11px;background:#fff;border:1px solid var(--rule);display:inline-grid;place-items:center;overflow:hidden;padding:7px;font-family:var(--f-display);font-weight:700;font-size:18px;color:var(--ink);transition:transform .5s var(--settle),border-color .25s}
.plogo img{width:100%;height:100%;object-fit:contain;display:block}
.plogo.nologo{background:var(--sunk);padding:0}
.plogo .ico{width:22px;height:22px}
.agentcard:hover .plogo{border-color:var(--ink);transform:scale(1.04)}
.agenthead{align-items:center}

/* Settings as Numeo lays it out: a tab strip across the top, then stacked sections */
html body:is(.calm,:not(.calm)) .settingslayout{display:block}
html body:is(.calm,:not(.calm)) .settingsnav{display:flex;flex-direction:row;flex-wrap:wrap;gap:2px;position:static;border-bottom:1px solid var(--rule);margin:0 0 22px}
html body:is(.calm,:not(.calm)) .settingsnav button{border:0;background:transparent;border-radius:0;padding:10px 15px 12px;font-family:var(--f-ui);font-size:13.5px;font-weight:550;color:var(--ink-3);margin-bottom:-1px;border-bottom:2px solid transparent;box-shadow:none;transition:color .2s,border-color .25s}
html body:is(.calm,:not(.calm)) .settingsnav button:hover{background:transparent;color:var(--ink);border-bottom-color:var(--rule-2)}
html body:is(.calm,:not(.calm)) .settingsnav button.active{background:transparent;color:var(--ink);font-weight:650;border-bottom-color:var(--signal);box-shadow:none}
html body:is(.calm,:not(.calm)) .settingspane{background:var(--card)!important;border:1px solid var(--rule)!important;border-radius:var(--r)!important;padding:0!important;margin-bottom:18px}
html body:is(.calm,:not(.calm)) .panehead{padding:20px 24px 16px;border-bottom:1px solid var(--rule);margin:0;align-items:flex-start}
html body:is(.calm,:not(.calm)) .panehead h2,.sethead h2{font-family:var(--f-display);font-size:19px;font-weight:700;letter-spacing:-.5px;margin:0}
html body:is(.calm,:not(.calm)) .panehead p,.sethead p{margin:4px 0 0;font-size:13px}
html body:is(.calm,:not(.calm)) #secBody{padding:20px 24px 24px;margin:0}
html body:is(.calm,:not(.calm)) #secError{margin:16px 24px 0;padding:10px 14px}
.identity{display:flex;align-items:center;gap:22px;padding:20px 24px;margin:0 0 18px;background:var(--card);border:1px solid var(--rule);border-top:1px solid var(--rule);border-radius:var(--r)}
.logodrop{flex:none;width:84px;height:84px;border-radius:50%;border:1.5px dashed var(--rule-2);display:grid;place-items:center;cursor:pointer;overflow:hidden;background:var(--paper-2);transition:border-color .25s,transform .5s var(--settle)}
.logodrop:hover{border-color:var(--ink);transform:scale(1.04)}
.logodrop.has{border-style:solid;background:#fff}.logodrop img{width:100%;height:100%;object-fit:contain;padding:8px}
.logoempty{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--ink-3)}.logoempty .ico{width:20px;height:20px}.logoempty small{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.5px;text-transform:uppercase}
.idmain{flex:1;min-width:0}.idmain h2{margin:0 0 10px;font-family:var(--f-display);font-size:24px;font-weight:700;letter-spacing:-.7px;text-transform:uppercase}
.idfacts{display:flex;gap:30px;flex-wrap:wrap}.idfacts div{display:flex;flex-direction:column;gap:2px}
.idfacts span{font-family:var(--f-mono);font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:var(--ink-3)}.idfacts b{font-size:14px;color:var(--ink)}
.idactions{display:flex;gap:8px;flex:none}
.setcard{padding:0;margin:0 0 18px}.sethead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px 16px;border-bottom:1px solid var(--rule)}
.setbody{padding:18px 24px 22px;display:flex;flex-direction:column;gap:10px}
.mailrow{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--rule);border-radius:10px;background:var(--paper-2);transition:border-color .25s,background-color .25s}
.mailrow.sel{border-color:var(--ink);background:var(--card)}.mailrow .pill{margin-left:auto}
.mailico{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--sunk);color:var(--ink)}.mailico .ico{width:17px;height:17px}
@media(max-width:800px){.identity{flex-wrap:wrap}.idactions{width:100%}}

/* Operations home: My board */
.hbar-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px}.hbtns{display:flex;gap:8px}
.hboard{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:stretch}
.hw{grid-column:span 6;background:var(--card);border:1px solid var(--rule);border-top:1px solid var(--rule);border-radius:var(--r);padding:14px 18px 18px;display:flex;flex-direction:column;min-width:0;transition:box-shadow .3s,border-color .25s,opacity .2s}
.hw.hw-s{grid-column:span 3}.hw.hw-l{grid-column:span 12}
.hw>header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px}
.hw>header h3{margin:0;font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3);font-weight:600}
.hwbody{flex:1;min-width:0}
.hw-metricbox{justify-content:center}
.hwmetric{cursor:default}.hwmetric[data-go]{cursor:pointer}
.hwv{font-family:var(--f-display);font-size:42px;font-weight:700;letter-spacing:-1.8px;line-height:1.05;color:var(--ink);font-feature-settings:"tnum"}
.hwl{font-family:var(--f-mono);font-size:10.5px;letter-spacing:1.3px;text-transform:uppercase;color:var(--ink-3);margin-top:8px;font-weight:600}.hws{font-size:12px;color:var(--ink-3);margin-top:6px}
.hwmetric.bad .hwv{color:var(--brick)}.hwmetric.warn .hwv{color:var(--ochre)}
.hw-empty{color:var(--ink-3);font-size:13px;padding:14px 0}.hw-empty.bad{color:var(--brick)}
.hwlist{list-style:none;margin:0;padding:0}.hwlist li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--rule);font-size:13px}.hwlist li:first-child{border-top:0}
.hwlist li[data-go]{cursor:pointer;transition:padding .25s var(--settle)}.hwlist li[data-go]:hover{padding-left:6px}
.hwlist li>span{display:flex;flex-direction:column;min-width:0}.hwlist small{color:var(--ink-3);font-size:11.5px}.hwlist em{font-style:normal;font-family:var(--f-mono);font-size:12px;color:var(--ink-2);white-space:nowrap}
.hbars{display:flex;flex-direction:column;gap:9px}.hbar{display:grid;grid-template-columns:minmax(70px,.9fr) minmax(0,2fr) auto;gap:12px;align-items:center;font-size:12.5px}
.hbar[data-go]{cursor:pointer}.hbk{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hbt{height:8px;border-radius:4px;background:var(--sunk);overflow:hidden}
.hbt i{display:block;height:100%;background:var(--brand);border-radius:4px;transform-origin:left;animation:hbGrow .7s var(--settle) both;transition:background-color .2s}.hbar:hover .hbt i{background:var(--brand-hover)}
.hbar b{font-family:var(--f-mono);font-size:12px;font-weight:600;color:var(--ink)}
@keyframes hbGrow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hcols{display:flex;align-items:flex-end;gap:10px;height:190px;padding-top:18px}.hcol{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:4px;min-width:0}
.hcol i{display:block;width:100%;max-width:46px;background:var(--brand);border-radius:5px 5px 0 0;transform-origin:bottom;animation:hcGrow .7s var(--settle) both;transition:background-color .2s}.hcol:hover i{background:var(--brand-hover)}
.hcv{font-family:var(--f-mono);font-size:10.5px;color:var(--ink-2)}.hck{font-family:var(--f-mono);font-size:10px;color:var(--ink-3);white-space:nowrap}
@keyframes hcGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.hwembed{width:100%;border:1px solid var(--rule);border-radius:10px;background:#fff;display:block}
.hwnotes{width:100%;min-height:150px;resize:vertical;border:1px solid var(--rule);border-radius:10px;background:var(--paper-2);padding:12px;font:inherit;color:var(--ink);transition:border-color .25s}.hwnotes:focus{outline:none;border-color:var(--ink)}
.hwlink{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;flex:1;min-width:0;transition:transform .45s var(--settle)}.hwlink:hover{transform:translateX(4px)}.hwlink .plogo{width:32px;height:32px;font-size:14px;border-radius:8px}
.hwx{border:0;background:transparent;color:var(--ink-4);cursor:pointer;width:26px;height:26px;border-radius:6px;display:grid;place-items:center;transition:color .2s,background-color .2s}.hwx:hover{color:var(--brick);background:var(--brick-soft)}.hwx .ico{width:14px;height:14px}
.hwform{display:flex;gap:6px;margin-top:10px}.hwform input{flex:1;min-width:0;border:1px solid var(--rule-2);border-radius:8px;padding:7px 10px;background:var(--card);font:inherit;font-size:13px}.hwform input:focus{outline:none;border-color:var(--ink)}
.hwcheck{display:flex;align-items:center;gap:10px;font-size:13px;cursor:pointer}.hwcheck span.done{text-decoration:line-through;color:var(--ink-4)}
.hwclocks{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hwclocks div{display:flex;flex-direction:column}.hwclocks b{font-family:var(--f-display);font-size:24px;letter-spacing:-.8px}.hwclocks small{font-family:var(--f-mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-3)}
.hwquick{display:flex;flex-wrap:wrap;gap:8px}
.hwtools{display:flex;gap:4px}.hwtools button{border:1px solid var(--rule-2);background:var(--card);border-radius:7px;min-width:28px;height:26px;display:grid;place-items:center;cursor:pointer;font:600 11px var(--f-mono);color:var(--ink-2);transition:border-color .2s,background-color .2s,transform .45s var(--spring)}
.hwtools button:hover{border-color:var(--ink);background:var(--paper-2)}.hwtools button:active{transform:scale(.94)}.hwtools .ico{width:14px;height:14px}.hwtools .flip{transform:scaleX(-1)}
.hboard.editing .hw{cursor:grab;border-style:dashed;border-top-style:solid}.hw.dragging{opacity:.45}.hw.dragover{border-color:var(--signal);box-shadow:0 0 0 3px rgba(0,115,234,.3)}
.hwcat{max-height:min(60vh,520px);overflow:auto;margin-top:10px}.hwcatgroup{margin-bottom:14px}.hwcatgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.hwcatitem{text-align:left;font:inherit;border:1px solid var(--rule);border-radius:10px;background:var(--card);padding:12px 14px;cursor:pointer;display:flex;flex-direction:column;gap:3px;transition:border-color .2s,transform .45s var(--spring)}.hwcatitem:hover{border-color:var(--ink);transform:translateY(-2px)}.hwcatitem:active{transform:scale(.97)}
.hwcatitem b{font-family:var(--f-display);font-size:14.5px;letter-spacing:-.2px}.hwcatitem small{color:var(--ink-3);font-size:12px;line-height:1.4}
@media(max-width:1100px){.hw.hw-s{grid-column:span 6}}
@media(max-width:700px){.hw,.hw.hw-s,.hw.hw-m,.hw.hw-l{grid-column:span 12}}

.hwlink>span:last-child{display:flex;flex-direction:column;min-width:0}.hwlink small{color:var(--ink-3);font-size:11.5px}

/* ===== monday voice ===== */
html body:is(.calm,:not(.calm)){font-family:var(--f-ui);font-feature-settings:normal;letter-spacing:0}
html body:is(.calm,:not(.calm)) .pagehead{border-bottom:0;padding-bottom:6px;margin-bottom:20px}
html body:is(.calm,:not(.calm)) .pagehead h1{font-family:var(--f-display);font-size:28px;font-weight:600;letter-spacing:-.3px}
html body:is(.calm,:not(.calm)) .pagehead p{font-size:14px}
html body:is(.calm,:not(.calm)) :is(.kpi-k,.metric .k,.subhead,.fleet-metric>span,.hwl,.idfacts span,.hw>header h3,.field label,.fleet-eyebrow,.eyebrow,.hcv,.hck,.logoempty small,.workspace-label,.rightnote){font-family:var(--f-ui);text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:600;color:var(--ink-3)}
html body:is(.calm,:not(.calm)) th{font-family:var(--f-ui);text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:600;color:var(--ink-3);background:transparent;border-bottom:1px solid var(--rule)}
html body:is(.calm,:not(.calm)) .subhead{font-size:14px;color:var(--ink);margin-bottom:10px}
html body:is(.calm,:not(.calm)) :is(.kpi-v,.metric .v,.fleet-metric strong,.hwv,.ustat-v){font-family:var(--f-display);font-weight:600;letter-spacing:-.6px;font-size:32px}
html body:is(.calm,:not(.calm)) .modname, html body:is(.calm,:not(.calm)) .doctitle, html body:is(.calm,:not(.calm)) .panehead h2, html body:is(.calm,:not(.calm)) .sethead h2, html body:is(.calm,:not(.calm)) .idmain h2, html body:is(.calm,:not(.calm)) .modalhead h2, html body:is(.calm,:not(.calm)) .docgroup>summary b, html body:is(.calm,:not(.calm)) .hwcatitem b, html body:is(.calm,:not(.calm)) .hwclocks b{font-family:var(--f-display);font-weight:600;letter-spacing:-.2px}
html body:is(.calm,:not(.calm)) .idmain h2{text-transform:none;font-size:22px}
html body:is(.calm,:not(.calm)) .pill, html body:is(.calm,:not(.calm)) .flag{font-family:var(--f-ui);text-transform:none;letter-spacing:0;font-size:12px;font-weight:600;border-radius:4px}
html body:is(.calm,:not(.calm)) .pill::before{display:none}
html body:is(.calm,:not(.calm)) .sidebar .grouphead{font-family:var(--f-ui);text-transform:none;letter-spacing:0;font-size:13px;font-weight:600}
html body:is(.calm,:not(.calm)) .btn{border-radius:4px;font-weight:500;border-color:var(--rule-2);background:transparent;color:var(--ink)}
html body:is(.calm,:not(.calm)) .btn:hover{background:var(--side-hover);border-color:var(--rule-2)}
html body:is(.calm,:not(.calm)) .btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}
html body:is(.calm,:not(.calm)) .btn.small, html body:is(.calm,:not(.calm)) .btn.tiny{border-radius:4px}
html body:is(.calm,:not(.calm)) .tabs .btn{font-weight:500;border-radius:0}
html body:is(.calm,:not(.calm)) .tabs .btn.primary{background:transparent;color:var(--brand);border-bottom-color:var(--brand)}
html body:is(.calm,:not(.calm)) :is(.card,.tablewrap,.hw,.setcard,.identity,.settingspane){border-radius:8px}
html body:is(.calm,:not(.calm)) .kpis, html body:is(.calm,:not(.calm)) .grid.cards4, html body:is(.calm,:not(.calm)) .grid.cards6, html body:is(.calm,:not(.calm)) .fleet-metrics{border-top:0;border:1px solid var(--rule);border-radius:8px;background:var(--card);overflow:hidden}
html body:is(.calm,:not(.calm)) .kpi, html body:is(.calm,:not(.calm)) .grid.cards4>.card.metric, html body:is(.calm,:not(.calm)) .grid.cards6>.card.metric{padding:16px 20px 18px}
html body:is(.calm,:not(.calm)) .kpi:first-child, html body:is(.calm,:not(.calm)) .grid.cards4>.card.metric:first-child, html body:is(.calm,:not(.calm)) .grid.cards6>.card.metric:first-child{padding-left:20px}
html body:is(.calm,:not(.calm)) .kpi.click::after{height:3px;background:var(--brand)}
html body:is(.calm,:not(.calm)) .kpi.on{background:var(--brand-soft)}
html body:is(.calm,:not(.calm)) tbody tr:hover{background:color-mix(in srgb,var(--brand) 8%,transparent)}
html body:is(.calm,:not(.calm)) tbody tr:hover td:first-child{box-shadow:inset 3px 0 var(--brand)}
html body:is(.calm,:not(.calm)) .modgrid{border:0;gap:16px;max-width:1080px}
html body:is(.calm,:not(.calm)) .modtile{border:1px solid var(--rule);border-radius:8px;background:var(--card);min-height:0}
html body:is(.calm,:not(.calm)) .modtile:hover{background:var(--card);border-color:var(--brand)}
html body:is(.calm,:not(.calm)) .modtile::after{display:none}
html body:is(.calm,:not(.calm)) .modicon{border:0;color:#fff}
html body:is(.calm,:not(.calm)) .modicon[data-m=Dispatch]{background:var(--bright)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Accounting]{background:var(--done)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Safety]{background:var(--working)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Fleet]{background:var(--stuck)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Directory]{background:var(--grape)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Integrations]{background:var(--sky)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Recruitment]{background:var(--pink)}
html body:is(.calm,:not(.calm)) .modicon[data-m=Reports]{background:var(--yolk);color:#323338}
html body:is(.calm,:not(.calm)) .modicon[data-m=Settings]{background:#797e93}
html body:is(.calm,:not(.calm)) .hw{border-top:1px solid var(--rule)}
html body:is(.calm,:not(.calm)) .logodrop, html body:is(.calm,:not(.calm)) .mailico{border-radius:8px}
html body:is(.calm,:not(.calm)) .logodrop{border-radius:50%}
html body:is(.calm,:not(.calm)) a{color:var(--signal-ink)}
html body:is(.calm,:not(.calm)) .pill.good{background:var(--done);color:#fff}
html body:is(.calm,:not(.calm)) .pill.warn{background:var(--working);color:#323338}
html body:is(.calm,:not(.calm)) .pill.bad{background:var(--stuck);color:#fff}
html body:is(.calm,:not(.calm)) .ustat.g{border-color:var(--done)}
html body:is(.calm,:not(.calm)) .ustat.o{border-color:var(--working)}
html body:is(.calm,:not(.calm)) .ustat.r{border-color:var(--stuck)}
html body:is(.calm,:not(.calm)) .ustat.b{border-color:var(--bright)}
html body:is(.calm,:not(.calm)) .wizsteps button.active{background:var(--brand-soft);border-color:var(--brand)}
html body:is(.calm,:not(.calm)) :is(.askcard,.ah-ask){border:1px solid transparent;border-radius:12px;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(135deg,var(--ai1),var(--ai2) 50%,var(--ai3)) border-box;transition:box-shadow .5s var(--settle)}
html body:is(.calm,:not(.calm)) :is(.askcard,.ah-ask):focus-within{box-shadow:0 0 0 1px transparent,0 0 22px rgba(0,210,210,.28),0 0 34px rgba(162,93,220,.24)}
html body:is(.calm,:not(.calm)) :is(.askcard,.ah-ask) input{border:0;background:transparent}
html body:is(.calm,:not(.calm)) :is(.askcard,.ah-ask) input:focus{box-shadow:none;animation:none}
html body:is(.calm,:not(.calm)) .agent-hero h2{background:linear-gradient(90deg,var(--ai2),var(--ai3));-webkit-background-clip:text;background-clip:text;color:transparent}
html body:is(.calm,:not(.calm)) .agent-hero{background:var(--card);border:1px solid var(--rule);border-radius:8px}
html body:is(.calm,:not(.calm)) .sidebar .nav>button.active .fleet-icon, html body:is(.calm,:not(.calm)) .sidebar .groupitems button.active{font-weight:600}

html[data-theme="dark"] body:is(.calm,:not(.calm)) .kpi.on{background:rgba(0,115,234,.22)}
html[data-theme="dark"] body:is(.calm,:not(.calm)) .wizsteps button.active{background:rgba(0,115,234,.2)}

.themebtn{width:36px;height:36px;border-radius:50%;border:1px solid var(--rule);background:transparent;color:var(--ink-2);display:grid;place-items:center;cursor:pointer;flex:none;margin-left:auto;margin-right:8px;transition:background-color .2s,color .2s,transform .5s var(--spring)}
.themebtn:hover{background:var(--side-hover);color:var(--ink)}.themebtn:active{transform:scale(.92)}.themebtn .ico{width:18px;height:18px}
body.calm{--c-line:var(--rule);--c-line2:var(--rule-2);--c-soft:var(--paper-2);--c-ink:var(--ink);--c-sub:var(--ink-3);--c-radius:8px}

/* Boards and Files gallery */
.btabs{display:flex;gap:4px;border-bottom:1px solid var(--rule);margin:0 0 14px;overflow-x:auto}
.btab{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--ink-3);font:500 13.5px var(--f-ui);padding:9px 14px 11px;margin-bottom:-1px;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:color .2s,border-color .25s}
.btab:hover{color:var(--ink)}.btab.on{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}.btab .ico{width:15px;height:15px}.btab.add{font-size:18px;padding:6px 12px}
.btools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 12px}.btools input{min-width:220px;border:1px solid var(--rule-2);border-radius:4px;background:var(--card);color:var(--ink);padding:7px 10px;font:inherit;font-size:13px}
.btools input:focus{outline:none;border-color:var(--brand)}.bsel{display:inline-flex;gap:6px;align-items:center;font-size:13px;color:var(--ink-3)}.bsel select{border:1px solid var(--rule-2);border-radius:4px;background:var(--card);color:var(--ink);padding:6px 8px;font:inherit;font-size:13px}
.bchips{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}.bchip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--rule);background:var(--card);color:var(--ink-2);border-radius:999px;padding:4px 12px;font:500 12.5px var(--f-ui);cursor:pointer;transition:border-color .2s,background-color .2s,transform .45s var(--spring)}
.bchip i{width:9px;height:9px;border-radius:50%}.bchip span{color:var(--ink-3)}.bchip:hover{border-color:var(--brand)}.bchip:active{transform:scale(.95)}.bchip.on{border-color:var(--brand);background:var(--brand-soft);color:var(--ink)}.bchip.clear{border-style:dashed}
.bgroup{margin:0 0 22px}.bghead{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--gc);font:600 15px var(--f-display);cursor:pointer;padding:4px 2px;margin-bottom:6px}.bghead b{color:var(--gc)}.bghead .muted{font:500 12.5px var(--f-ui)}
.bchev{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--gc);transform:rotate(-90deg);transition:transform .3s var(--settle)}.bgroup.open .bchev{transform:none}
.bscroll{overflow-x:auto;border:1px solid var(--rule);border-left:4px solid var(--gc);border-radius:6px;background:var(--card)}
.bscroll table{min-width:100%;border-collapse:collapse}.bscroll th{position:relative;white-space:nowrap;cursor:pointer;user-select:none;text-align:left;padding:9px 12px;font-size:12.5px}
.bscroll th.sorted{color:var(--brand)}.bscroll th.sorted::after{content:"↑";margin-left:6px}.bscroll th.sorted[aria-sort=descending]::after{content:"↓"}
.bscroll td{padding:0;border-bottom:1px solid var(--rule);border-left:1px solid var(--rule);height:38px;font-size:13px;color:var(--ink)}.bscroll td:first-child{border-left:0}
.bscroll tr:last-child td{border-bottom:0}.bscroll td.bchk{width:26px}.bscroll td.bchk i{display:block;width:4px;height:100%;min-height:38px;opacity:0}
.bc{padding:0 12px!important;white-space:nowrap}.bc.can{cursor:text}.bc.can:hover{background:color-mix(in srgb,var(--brand) 7%,transparent)}.bc.money,.bc.number{text-align:right;font-variant-numeric:tabular-nums}
.bc.status{padding:0!important;text-align:center}.bstat{display:flex;align-items:center;justify-content:center;height:38px;font:600 12.5px var(--f-ui);padding:0 12px}.bstat.can{cursor:pointer;transition:filter .2s}.bstat.can:hover{filter:brightness(1.1)}
.bpeople{display:inline-flex;align-items:center;gap:8px}.bpeople i{width:22px;height:22px;border-radius:50%;background:var(--brand);color:#fff;font:700 11px var(--f-ui);font-style:normal;display:grid;place-items:center}
.bedit{width:100%;height:36px;border:2px solid var(--brand);border-radius:3px;background:var(--card);color:var(--ink);font:inherit;font-size:13px;padding:0 8px;box-sizing:border-box}
.bsum{text-align:right;padding:0 12px;font:600 12.5px var(--f-ui);color:var(--ink-2);border-left:1px solid var(--rule);background:var(--paper-2);height:34px}
.bopen{width:40px;text-align:center}.bopenbtn{border:0;background:transparent;color:var(--ink-4);cursor:pointer;width:28px;height:28px;border-radius:50%;display:inline-grid;place-items:center;transition:color .2s,background-color .2s,transform .5s var(--spring)}.bopenbtn:hover{color:var(--brand);background:var(--brand-soft)}.bopenbtn .ico{width:15px;height:15px}
.bmenu{position:fixed;z-index:200;background:var(--card);border:1px solid var(--rule);border-radius:8px;box-shadow:var(--shadow-pop);padding:6px;display:grid;gap:5px;min-width:170px;max-height:320px;overflow:auto;animation:modalIn .25s var(--settle) both}
.bmenu button{border:0;background:transparent;border-radius:4px;padding:2px;cursor:pointer;text-align:left;color:var(--ink);font:500 13px var(--f-ui)}.bmenu button:not(:has(.bstat)){padding:7px 10px}.bmenu button.on,.bmenu button:not(:has(.bstat)):hover{background:var(--brand-soft)}.bmenu .bstat{height:32px;border-radius:4px}
.bkan{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:14px;overflow-x:auto;padding-bottom:10px}.bkcol{background:var(--paper-2);border:1px solid var(--rule);border-radius:8px;padding:10px;transition:border-color .2s,box-shadow .3s;min-height:200px}
.bkcol.over{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 25%,transparent)}.bkhead{border-radius:4px;padding:7px 12px;font:600 13px var(--f-ui);display:flex;justify-content:space-between;margin-bottom:10px}.bkbody{display:grid;gap:8px}
.bkcard{position:relative;background:var(--card);border:1px solid var(--rule);border-radius:6px;padding:11px 36px 11px 12px;cursor:pointer;transition:border-color .2s,box-shadow .3s,transform .5s var(--spring)}.bkcard:hover{border-color:var(--brand);box-shadow:var(--shadow)}.bkcard.dragging{opacity:.4}
.bkcard b{display:block;font:600 14px var(--f-ui)}.bkcard .muted{font-size:12px;margin-bottom:6px}.bkf{display:flex;justify-content:space-between;gap:10px;font-size:12px;border-top:1px solid var(--rule);padding-top:5px;margin-top:5px}.bkf span{color:var(--ink-3)}
.bkcard .bopenbtn{position:absolute;right:6px;top:8px}.bkempty{color:var(--ink-4);font-size:12.5px;text-align:center;padding:16px 0}
.bcols{display:grid;gap:8px}
.galmonth{margin:0 0 20px}.galmonth .subhead{margin-bottom:10px}
.docthumb.mini{width:46px;height:36px;aspect-ratio:auto;border-radius:6px}.docthumb.mini .dociconbox{width:26px;height:30px;font-size:8px}

/* Workflows */
.wfask{max-width:860px}.wftemps{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.wftemp{text-align:left;font:inherit;border:1px solid var(--rule);border-radius:8px;background:var(--card);padding:14px 16px;cursor:pointer;display:flex;flex-direction:column;gap:5px;transition:border-color .2s,transform .5s var(--spring),box-shadow .3s}
.wftemp:hover{border-color:var(--brand);box-shadow:var(--shadow)}.wftemp:active{transform:scale(.97)}.wftemp b{font:600 14.5px var(--f-display)}.wftemp small{color:var(--ink-3);font-size:12.5px;line-height:1.45}
.wflist{display:grid;gap:10px}.wfrow{display:flex;align-items:center;gap:16px;border:1px solid var(--rule);border-radius:8px;background:var(--card);padding:14px 16px;transition:opacity .25s,border-color .2s}.wfrow:hover{border-color:var(--rule-2)}.wfrow.off{opacity:.55}
.wfmain{flex:1;min-width:0}.wfmain b{font:600 15px var(--f-display)}.wfmeta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:6px;font-size:12.5px}
.wfsw{position:relative;width:40px;height:22px;flex:none;cursor:pointer}.wfsw input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}.wfsw i{position:absolute;inset:0;border-radius:999px;background:var(--rule-2);transition:background-color .25s}
.wfsw i::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .45s var(--spring)}.wfsw input:checked+i{background:var(--done)}.wfsw input:checked+i::after{transform:translateX(18px)}
.wfpend{margin-left:10px;font-weight:600}
.wfcond,.wfact2{display:grid;grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) minmax(100px,1fr) 30px;gap:8px;align-items:center;margin:0 0 8px}.wfact2{grid-template-columns:minmax(180px,1.2fr) repeat(2,minmax(110px,1fr)) 30px}
.wfcond select,.wfcond input,.wfact2 select,.wfact2 input,#wfMode,#wfName,#wfSrc{border:1px solid var(--rule-2);border-radius:4px;background:var(--card);color:var(--ink);padding:7px 9px;font:inherit;font-size:13px;width:100%;box-sizing:border-box}
.wfprev{margin-top:16px;border:1px dashed var(--rule-2);border-radius:8px;padding:12px 14px;background:var(--paper-2)}.wfprow{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-top:1px solid var(--rule);font-size:13px}.wfprow:first-of-type{border-top:0}
@media(max-width:700px){.wfcond,.wfact2{grid-template-columns:1fr 1fr}}

.wfact2{display:flex!important;flex-wrap:wrap;gap:8px;align-items:center}.wfact2>select,.wfact2>input{flex:1 1 140px;width:auto}.wfact2>.hwx{flex:0 0 30px}
