@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}:root{--ink: #13232a;--ink-2: #47585f;--ink-3: #6f8086;--line: #dbe2e0;--line-soft: #e9eeec;--bg: #f1f4f3;--card: #ffffff;--brand: #0f6b5c;--brand-strong: #0b5347;--brand-deep: #0a3a35;--brand-tint: #e3f0ed;--good: #1b7f4b;--watch: #c98a1a;--low: #c2412f;--good-bg: #e4f3ea;--watch-bg: #fbf0d9;--low-bg: #fbe6e2;--radius: 6px;font-family:IBM Plex Sans,Segoe UI,system-ui,sans-serif;font-size:14px;line-height:1.45;color:var(--ink);background:var(--bg);font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}h1,h2,p{margin:0}h1{font-size:22px;font-weight:600;letter-spacing:-.2px}h2{font-size:15px;font-weight:600}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.muted{color:var(--ink-3)}.small{font-size:12.5px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.nowrap{white-space:nowrap}.r{text-align:right}.boot{min-height:100vh;display:grid;place-items:center;color:var(--ink-3)}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:8px 10px;min-height:36px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #0f6b5c26}input:disabled,textarea:disabled{background:#f6f8f7;color:var(--ink-2)}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;padding:0;accent-color:var(--brand);flex:none}label{display:grid;gap:5px;font-size:13px;font-weight:500;color:var(--ink-2)}.btn{border:1px solid var(--line);background:#fff;border-radius:var(--radius);padding:7px 13px;font-weight:500;white-space:nowrap}.btn:hover:not(:disabled){border-color:#b8c4c1;background:#f8faf9}.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-strong);border-color:var(--brand-strong)}.btn-quiet{border-color:transparent;background:transparent;color:var(--brand)}.btn-danger{color:var(--low);border-color:#f3b6ad}.btn-danger:hover:not(:disabled){background:var(--low-bg);border-color:var(--low)}.btn-small{padding:4px 9px;font-size:12.5px;margin-left:6px}.btn-block{width:100%;padding:10px}.link,.th-sort{border:0;background:none;padding:0;text-align:inherit}.link{color:var(--brand-strong);font-weight:500;text-decoration:underline;text-decoration-color:#0f6b5c4d;text-underline-offset:3px}.link:hover{text-decoration-color:currentColor}.th-sort{font-weight:600;color:inherit;white-space:nowrap}.stack{display:grid;gap:14px}.alert{border-radius:var(--radius);padding:10px 12px;font-size:13.5px;border:1px solid}.alert-error{background:var(--low-bg);border-color:#efc2ba;color:#8b2a1d}.alert-warn{background:var(--watch-bg);border-color:#ecd49d;color:#6b4a08}.alert-info{background:var(--brand-tint);border-color:#bcdcd5;color:var(--brand-deep)}.tag{display:inline-block;font-size:12px;font-weight:500;padding:2px 8px;border-radius:999px;white-space:nowrap}.tag-good{background:var(--good-bg);color:#14613a}.tag-watch{background:var(--watch-bg);color:#7a5306}.tag-low{background:var(--low-bg);color:#96301f}td .tag+.tag,td>.tag:not(:first-child){margin-left:6px}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--radius);box-shadow:0 6px 24px #0a1e1c40;z-index:60}.shell{display:flex;min-height:100vh}.side{width:232px;flex:none;background:var(--brand-deep);color:#d7e6e2;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:10px;align-items:center;padding:18px 16px;border-bottom:1px solid rgba(255,255,255,.1)}.brand strong{display:block;color:#fff;font-size:14.5px;font-weight:600;line-height:1.2}.brand span{font-size:12px;color:#9dbdb6}.mark{width:34px;height:34px;color:var(--brand);flex:none}.side nav{display:grid;gap:2px;padding:12px 8px}.side nav button{text-align:left;border:0;background:none;color:#c9dcd7;padding:9px 12px;border-radius:var(--radius);border-left:3px solid transparent;font-weight:500}.side nav button:hover:not(:disabled){background:#ffffff12;color:#fff}.side nav button.active{background:#ffffff1f;color:#fff;border-left-color:#f0b545}.side-foot{margin-top:auto;padding:14px 16px;border-top:1px solid rgba(255,255,255,.1);display:grid;gap:10px}.who strong{display:block;color:#fff;font-weight:600}.who span{display:block;font-size:12px;color:#9dbdb6}.btn-side{background:transparent;border-color:#ffffff40;color:#fff}.btn-side:hover:not(:disabled){background:#ffffff1a;border-color:#fff6}.main{flex:1;min-width:0}.mobile-bar{display:none}.report{padding:22px 26px 40px;max-width:1640px;margin:0 auto;display:grid;gap:14px}.report.narrow{max-width:560px;margin:0}.report-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.report-head p{margin-top:3px}.inline-field{grid-auto-flow:column;align-items:center;gap:8px}.inline-field input{width:160px}.slicers{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;position:sticky;top:0;z-index:20}.slicer{position:relative;display:grid;gap:3px;min-width:132px;flex:1 1 132px;max-width:220px}.slicer.grow{max-width:none;flex:2 1 220px}.slicer-label{font-size:11.5px;font-weight:600;color:var(--ink-3)}.slicer input,.slicer select,.slicer-button{min-height:34px;padding:6px 9px}.slicer-button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:1px solid var(--line);border-radius:var(--radius);background:#fff;text-align:left}.slicer-button:disabled{background:#f6f8f7;opacity:1;color:var(--ink-3)}.slicer.is-set .slicer-button{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-deep);font-weight:500}.slicer-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slicer-pop{position:absolute;top:calc(100% + 4px);left:0;width:max(100%,270px);background:#fff;border:1px solid #c5d0cd;border-radius:var(--radius);box-shadow:0 10px 30px #0a282429;z-index:40;padding:8px;display:grid;gap:6px}.slicer-actions{display:flex;justify-content:space-between}.slicer-actions button{border:0;background:none;color:var(--brand);font-size:12.5px;font-weight:500;padding:2px 4px}.slicer-list{max-height:270px;overflow-y:auto;display:grid}.slicer-option{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:4px;font-weight:400;color:var(--ink);cursor:pointer}.slicer-option:hover{background:#f1f5f4}.slicer-option span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slicer-option small{color:var(--ink-3);font-size:11.5px;white-space:nowrap}.slicer-empty{color:var(--ink-3);font-size:12.5px;padding:8px 6px}.slicer-reset{flex:none}.check{grid-auto-flow:column;align-items:center;gap:7px;min-height:34px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid #bcdcd5;background:var(--brand-tint);color:var(--brand-deep);border-radius:999px;padding:2px 6px 2px 10px;font-size:12.5px;display:inline-flex;gap:6px;align-items:center}.chip span{font-size:15px;line-height:1;opacity:.7}.chip:hover{border-color:var(--brand)}.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:opacity .15s}.kpis.is-loading{opacity:.55}.kpi{background:var(--card);box-shadow:1px 0 0 var(--line),0 1px 0 var(--line);padding:14px 16px;display:grid;gap:2px;align-content:start}.kpi:first-child{box-shadow:inset 3px 0 0 var(--brand),1px 0 0 var(--line),0 1px 0 var(--line)}.kpi-label{font-size:12.5px;color:var(--ink-2);font-weight:500}.kpi-value{font-size:28px;font-weight:600;letter-spacing:-.5px;font-variant-numeric:tabular-nums;line-height:1.2}.kpi-foot{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:12px;color:var(--ink-3);align-items:baseline}.delta{font-weight:600;color:var(--ink-2);white-space:nowrap}.delta.up{color:var(--good)}.delta.down{color:var(--low)}.compare-note{font-size:12px;color:var(--ink-3);margin-top:-8px}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);overflow-x:auto}.tabs button{border:0;background:none;padding:9px 14px;font-weight:500;color:var(--ink-2);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.tabs button:hover{color:var(--ink)}.tabs button.active{color:var(--brand-strong);border-bottom-color:var(--brand)}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;align-items:stretch}.span-12{grid-column:span 12}.span-8{grid-column:span 8}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-7{grid-column:span 7}.span-6{grid-column:span 6}.row-2{grid-row:span 2;align-self:stretch;display:flex;flex-direction:column}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.pad-card{padding:18px;display:grid;gap:10px}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px 8px}.card-head.wrap{flex-wrap:wrap;align-items:center}.card-head p{font-size:12.5px;color:var(--ink-3);margin-top:1px}.toggles{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.segmented button{border:0;background:none;padding:5px 10px;font-size:12.5px;font-weight:500;color:var(--ink-2);white-space:nowrap}.segmented button+button{border-left:1px solid var(--line)}.segmented button.active{background:var(--brand);color:#fff}.mini-select{width:auto;min-height:30px;padding:4px 8px;font-size:12.5px}.search{width:220px;min-height:32px;padding:5px 9px}.scroll-y{overflow-y:auto;max-height:520px;flex:1}.scroll-y.short{max-height:262px}.scroll-y.tall{max-height:640px}.scroll-y.days{max-height:330px}.scroll-y.mid{max-height:420px}.scroll-y.mid thead th{position:sticky;top:0;z-index:1}.up{color:var(--good)}.down{color:var(--low)}.day-compare{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;padding:14px 16px}.day-box{display:grid;gap:1px;min-width:190px;flex:1;padding-left:14px;border-left:3px solid var(--line)}.day-box.is-main{border-left-color:var(--brand)}.day-box span{font-size:12.5px;font-weight:500;color:var(--ink-2)}.day-box strong{font-size:26px;font-weight:600;letter-spacing:-.4px;font-variant-numeric:tabular-nums;line-height:1.2}.day-box small{font-size:12px;color:var(--ink-3)}.day-nav{display:flex;gap:6px}.foot-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.progress-note{display:block;font-size:12.5px;color:#b5d1cb;margin-top:6px}.scroll-y.days thead th{position:sticky;top:0;z-index:1}.scroll-y.days tfoot td{position:sticky;bottom:0}.scroll-y.tall thead th{position:sticky;top:0;z-index:1}.sub{display:block;color:var(--ink-3);font-size:11.5px}.meter-track.wide{width:180px}.band-brand{background:var(--brand)}.pad{padding:10px 14px 12px;font-size:12.5px}.empty{color:var(--ink-3);padding:26px 14px;text-align:center}.legend{display:flex;flex-wrap:wrap;gap:4px 14px;padding:8px 14px 10px;font-size:12px;color:var(--ink-2);border-top:1px solid var(--line-soft)}.legend span{display:inline-flex;align-items:center;gap:5px}.legend i{width:10px;height:10px;border-radius:2px;display:inline-block}.band-good{background:var(--good)}.band-watch{background:var(--watch)}.band-low{background:var(--low)}.bars{list-style:none;margin:0;padding:2px 6px 10px}.bars li{transition:opacity .12s}.bars li.is-dim{opacity:.38}.bar-row{display:grid;grid-template-columns:minmax(84px,34%) 1fr 58px;gap:10px;align-items:center;width:100%;border:0;background:none;padding:4px 8px;border-radius:4px;text-align:left}button.bar-row:hover{background:#f1f5f4}button.bar-row[aria-pressed=true]{background:var(--brand-tint)}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.bar-track{height:12px;background:#eef2f1;border-radius:0 4px 4px 0;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--brand);border-radius:0 4px 4px 0}.bar-value{text-align:right;font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:500}.bars-2col .bars{columns:2;column-gap:24px}.bars-2col .bars li{break-inside:avoid}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-weight:600;color:var(--ink-2);background:#f6f8f7;border-bottom:1px solid var(--line);padding:8px 12px;white-space:nowrap}.table th.r{text-align:right}.table td{padding:7px 12px;border-bottom:1px solid var(--line-soft);vertical-align:middle}.table td.r{font-variant-numeric:tabular-nums;white-space:nowrap}.table tbody tr:hover{background:#fafcfb}.table tr.is-picked{background:var(--brand-tint)}.table tfoot td{font-weight:600;background:#f6f8f7;border-top:1px solid var(--line);border-bottom:0}.table.compact td,.table.compact th{padding:6px 12px}.meter{display:inline-flex;align-items:center;gap:8px;min-width:132px}.meter-track{width:78px;height:8px;background:#eef2f1;border-radius:4px;overflow:hidden;flex:none}.meter-fill{display:block;height:100%;border-radius:4px}.meter-text{font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:500}.pager,.pager-note{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:10px 14px;font-size:12.5px;color:var(--ink-2)}.heat{border-collapse:separate;border-spacing:2px;font-size:12px;margin:0 12px 12px}.heat thead th{height:96px;vertical-align:bottom;font-weight:500;color:var(--ink-2);padding:0 0 4px;min-width:50px}.heat thead th span{display:inline-block;writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap}.heat tbody th{text-align:left;font-weight:500;padding-right:10px;white-space:nowrap;position:sticky;left:0;background:var(--card)}.heat td{text-align:center;padding:5px 4px;border-radius:3px;font-variant-numeric:tabular-nums;color:var(--ink);min-width:50px}.trend{position:relative;padding:0 10px 8px}.trend svg{width:100%;height:auto;display:block}.grid-line{stroke:#e6ebea;stroke-width:1}.axis-text{font-size:11px;fill:var(--ink-3);font-family:inherit}.trend-line{fill:none;stroke:var(--brand);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.trend-area{fill:#0f6b5c14}.trend-dot{fill:var(--brand);stroke:#fff;stroke-width:2}.crosshair{stroke:#9fb0ac;stroke-width:1;stroke-dasharray:3 3}.tip{position:absolute;top:8px;background:var(--ink);color:#fff;border-radius:var(--radius);padding:6px 10px;display:grid;pointer-events:none;font-size:12px;white-space:nowrap;z-index:5}.tip strong{font-size:15px;font-weight:600}.tip small{color:#b9c7c4}.show-sm{display:none}.actions{white-space:nowrap}.company{font-size:11px;color:#8fb0a9;line-height:1.3;margin-top:2px}.company-login{display:block;color:#d7e6e2;font-weight:500;font-size:13px;margin-bottom:3px}.progress-card{background:var(--brand-deep);color:#fff;border-radius:var(--radius);padding:16px 20px;display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center}.progress-figure strong,.progress-side strong{font-size:30px;font-weight:600;display:block;line-height:1.1;font-variant-numeric:tabular-nums}.progress-figure span,.progress-side span{font-size:12.5px;color:#b5d1cb}.progress-side{text-align:right}.progress-track{height:10px;background:#ffffff29;border-radius:5px;overflow:hidden}.progress-track span{display:block;height:100%;background:#f0b545;border-radius:5px;transition:width .3s}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a1e1c6b;z-index:50;display:flex;justify-content:flex-end}.drawer-backdrop.center{justify-content:center;align-items:center;padding:16px}.drawer{width:min(560px,100%);background:#fff;height:100%;display:flex;flex-direction:column;box-shadow:-12px 0 40px #0a1e1c33}.drawer-head{display:flex;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}.drawer-head h2{font-size:17px;margin-bottom:2px}.drawer-body{padding:16px 20px 0;overflow-y:auto;display:grid;gap:14px;flex:1;align-content:start}.drawer-foot{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);margin:4px -20px 0;padding:12px 20px;display:flex;justify-content:space-between;align-items:center}.drawer-foot strong{display:block;font-size:22px;font-weight:600;font-variant-numeric:tabular-nums}.drawer-foot .muted{font-size:12px}fieldset{border:0;padding:0;margin:0;display:grid;gap:8px}legend{font-weight:600;font-size:13px;padding:0;margin-bottom:6px;color:var(--ink)}.count-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.count-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.count-grid input{font-variant-numeric:tabular-nums}.hint{font-size:12.5px;color:var(--ink-3)}.field{display:grid;gap:5px}.field .slicer{max-width:none}.role-cards{display:grid;gap:8px}.role-card{display:flex;grid-auto-flow:column;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;cursor:pointer}.role-card.active{border-color:var(--brand);background:var(--brand-tint)}.role-card input{margin-top:2px}.role-card strong{display:block;color:var(--ink)}.role-card small{color:var(--ink-2);font-weight:400;font-size:12.5px}.dialog{background:#fff;border-radius:8px;padding:22px;width:min(440px,100%);display:grid;gap:12px;box-shadow:0 20px 60px #0a1e1c4d}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}.secret{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:18px;background:#f3f6f5;border:1px dashed #b8c4c1;border-radius:var(--radius);padding:12px;text-align:center;-webkit-user-select:all;user-select:all;letter-spacing:.5px}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr)}.login-story{background:var(--brand-deep);color:#d7e6e2;padding:36px 48px;display:flex;flex-direction:column;justify-content:space-between;gap:32px;background-image:repeating-linear-gradient(115deg,rgba(255,255,255,.028) 0 2px,transparent 2px 26px)}.brand.light{padding:0;border:0}.login-story h1{font-size:clamp(28px,3.4vw,42px);line-height:1.12;color:#fff;font-weight:600;letter-spacing:-.8px;max-width:16ch}.login-story h1+p{margin-top:14px;max-width:52ch;font-size:15px;color:#b5d1cb}.login-roles{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:0;max-width:560px;border-top:1px solid rgba(255,255,255,.14)}.login-roles li{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:13.5px}.login-roles strong{color:#f0b545;font-weight:600}.login-story small{color:#8fb0a9}.login-form{display:grid;place-items:center;padding:32px;background:#fff}.login-form form{width:min(340px,100%)}.login-form h2{font-size:22px}@media (max-width: 1180px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.span-8,.span-4,.span-5,.span-6,.span-7{grid-column:span 12}.row-2{grid-row:auto}.scroll-y{max-height:380px}}@media (max-width: 820px){.shell{display:block}.side{position:fixed;inset:0 auto 0 0;z-index:45;transform:translate(-100%);transition:transform .2s}.side.open{transform:none;box-shadow:12px 0 40px #0000004d}.mobile-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.report{padding:14px 12px 32px}.slicers{position:static}.slicer{max-width:none;flex-basis:45%}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-value{font-size:23px}.bars-2col .bars{columns:1}.progress-card{grid-template-columns:1fr auto}.progress-track{grid-column:1 / -1;order:3}.count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.login{grid-template-columns:1fr}.login-story{padding:24px}.login-roles li{grid-template-columns:1fr;gap:2px}.search{width:100%}.hide-sm{display:none!important}.show-sm{display:block;color:var(--ink-3);font-size:12px;font-weight:400;margin-top:1px}.table td,.table th{padding:8px}.actions .btn-small{display:block;width:100%;margin:3px 0;padding:7px 10px}.drawer-head,.drawer-body{padding-left:14px;padding-right:14px}.drawer-foot{margin:4px -14px 0;padding:12px 14px}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}
