/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base,components;@layer utilities{.\@container{container-type:inline-size}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.text-wrap{text-wrap:wrap}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--bg:#edf0f5;--surface:#fff;--surface-2:#f5f7fa;--line:#d6dce6;--ink:#142036;--ink-2:#44526b;--ink-3:#5a6780;--accent:#2346b4;--accent-ink:#fff;--accent-soft:#e2e8f9;--good:#1b7048;--good-soft:#dff1e7;--warn:#8f5400;--warn-soft:#fbeed6;--bad:#b0231a;--bad-soft:#fbe3df;--leave:#596983;--leave-soft:#e6eaf1;--shadow:0 1px 2px #1420360f, 0 4px 14px #1420360d;--font-display:"Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--font-body:"Public Sans", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--radius:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0c1320;--surface:#131c2d;--surface-2:#192437;--line:#29354c;--ink:#e5eaf3;--ink-2:#b0bacc;--ink-3:#8f9bb1;--accent:#86a0ff;--accent-ink:#0c1320;--accent-soft:#1d2a50;--good:#5fc995;--good-soft:#13352a;--warn:#e9b45c;--warn-soft:#3a2a10;--bad:#ff8e80;--bad-soft:#3e1b18;--leave:#a3b0c6;--leave-soft:#222d42;--shadow:0 1px 2px #0000004d, 0 6px 18px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0c1320;--surface:#131c2d;--surface-2:#192437;--line:#29354c;--ink:#e5eaf3;--ink-2:#b0bacc;--ink-3:#8f9bb1;--accent:#86a0ff;--accent-ink:#0c1320;--accent-soft:#1d2a50;--good:#5fc995;--good-soft:#13352a;--warn:#e9b45c;--warn-soft:#3a2a10;--bad:#ff8e80;--bad-soft:#3e1b18;--leave:#a3b0c6;--leave-soft:#222d42;--shadow:0 1px 2px #0000004d, 0 6px 18px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0;padding-block:16px 48px;font-size:15px;line-height:1.5}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;margin:0;line-height:1.15}button,input,select{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}.mono{font-family:var(--font-mono);font-size:.86em}.muted{color:var(--ink-3)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.stage{max-width:1240px;margin:0 auto}.app{background:var(--bg);min-width:0;container:app/inline-size}.topbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px 20px;padding-bottom:14px;display:flex}.brand{align-items:center;gap:10px;margin-right:auto;display:flex}.brand-mark{background:var(--accent);width:34px;height:34px;color:var(--accent-ink);font-family:var(--font-mono);border-radius:9px;place-items:center;font-size:13px;font-weight:500;display:grid}.brand h1{font-size:19px}.brand p{color:var(--ink-3);margin:0;font-size:12px}.nav{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.nav button{cursor:pointer;color:var(--ink-2);background:0 0;border:0;border-radius:8px;padding:7px 12px;font-weight:500}.nav button:hover{background:var(--surface)}.nav button[aria-current=page]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.who{color:var(--ink-3);overflow-wrap:anywhere;padding:0 6px;font-size:12px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;padding:18px 20px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:12px;font-weight:600}.btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;padding:8px 16px;font-weight:600}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.danger{background:var(--bad);color:#fff;border-color:var(--bad)}:root[data-theme=dark] .btn.danger{color:#1a0d0b}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.small{padding:5px 10px;font-size:13px}.linkbtn{color:var(--accent);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 12px}tr:last-child td{border-bottom:0}th{color:var(--ink-3);letter-spacing:.03em;background:var(--surface-2);white-space:nowrap;font-size:12px;font-weight:600}.pill{white-space:nowrap;border-radius:99px;align-items:center;gap:5px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-flex}.pill.ok{background:var(--good-soft);color:var(--good)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.off{background:var(--leave-soft);color:var(--leave)}.pill.role{background:var(--accent-soft);color:var(--accent)}.auth-wrap{place-items:start center;padding:40px 0 16px;display:grid}.auth{gap:18px;width:100%;max-width:420px;display:grid}.auth h2{font-size:24px}.auth .lede{color:var(--ink-2);margin:-8px 0 0;font-size:14px}.steps{color:var(--ink-3);flex-wrap:wrap;gap:6px;font-size:12px;display:flex}.steps span{align-items:center;gap:6px;display:inline-flex}.steps span:before{content:"";background:var(--line);border-radius:50%;width:8px;height:8px}.steps span.done:before{background:var(--good)}.steps span.now{color:var(--ink);font-weight:600}.steps span.now:before{background:var(--accent)}.form{gap:14px;display:grid}.field{color:var(--ink-2);gap:5px;font-size:13px;font-weight:600;display:grid}.field input{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:8px;width:100%;min-width:0;padding:10px 12px;font-size:15px;font-weight:400}.field input[aria-invalid=true]{border-color:var(--bad)}.hint{color:var(--ink-3);font-size:12px;font-weight:400}.pw-row{gap:6px;display:flex}.pw-row input{flex:1}.pw-row button{flex:none}.code-input{letter-spacing:.4em;text-align:center;font-family:var(--font-mono)!important;font-size:24px!important}.msg{border-radius:8px;padding:10px 12px;font-size:14px;display:none}.msg.show{display:block}.msg.bad{background:var(--bad-soft);color:var(--bad);font-weight:600}.msg.good{background:var(--good-soft);color:var(--good);font-weight:600}.note{background:var(--accent-soft);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:13px}.captcha{border:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);border-radius:8px;align-items:center;gap:10px;max-width:300px;padding:10px 12px;font-size:13px;display:flex}.captcha .tick{background:var(--good);color:#fff;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:13px;display:grid}.captcha .spin{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;flex:none;width:18px;height:18px;animation:.8s linear infinite spin}.captcha small{color:var(--ink-3);margin-left:auto;font-size:11px}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.captcha .spin{animation:none}}.qr-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;display:grid}.qr{border:1px solid var(--line);background:#fff;border-radius:8px;width:150px;height:150px;padding:8px}.qr svg{width:100%;height:100%;display:block}.key{font-family:var(--font-mono);letter-spacing:.08em;word-break:break-all;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:13px}.rules{gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.rules li{color:var(--ink-3);align-items:center;gap:8px;display:flex}.rules li:before{content:"○";text-align:center;width:14px}.rules li.met{color:var(--good)}.rules li.met:before{content:"✓";font-weight:700}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.placeholder{text-align:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--ink-3);margin-top:20px;padding:40px 20px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin:20px 0 14px;display:flex}.page-head h2{font-size:22px}.page-head p{color:var(--ink-2);margin:4px 0 0;font-size:14px}.add-form{flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:16px;display:flex}.add-form .field{flex:260px}.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}td.email{overflow-wrap:anywhere;font-weight:600}.cards{display:none}.acct-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:8px;padding:14px;display:grid}.acct-card .email{overflow-wrap:anywhere;font-weight:600}.acct-card .pills{flex-wrap:wrap;gap:6px;display:flex}.acct-card .row-actions{justify-content:flex-start}@container app (width<=640px){.table-wrap{display:none}.cards{gap:10px;display:grid}.qr-row{grid-template-columns:minmax(0,1fr);justify-items:start}.auth-wrap{padding-top:20px}.nav{width:100%}}dialog{border:1px solid var(--line);background:var(--surface);color:var(--ink);width:min(460px,100vw - 32px);box-shadow:var(--shadow);border-radius:14px;padding:22px}dialog::backdrop{background:#0c13208c}dialog h3{margin-bottom:8px;font-size:19px}dialog p{color:var(--ink-2);margin:0 0 12px;font-size:14px}.temp{font-family:var(--font-mono);letter-spacing:.06em;background:var(--surface-2);border:1px solid var(--line);text-align:center;word-break:break-all;border-radius:8px;margin:6px 0 12px;padding:12px;font-size:20px}.chk{cursor:pointer;align-items:flex-start;gap:8px;margin-bottom:14px;font-size:14px;display:flex}.chk input{margin-top:3px}.toast{background:var(--ink);color:var(--bg);box-shadow:var(--shadow);opacity:0;pointer-events:none;border-radius:10px;max-width:calc(100vw - 32px);padding:10px 16px;font-size:14px;font-weight:600;transition:opacity .2s;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast.show{opacity:1}.captcha-box{min-height:65px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.fresh{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:13px;display:flex}.fresh b{color:var(--ink)}.grid2{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.stack{gap:16px;min-width:0;display:grid}.drop{text-align:center;border:2px dashed var(--line);border-radius:var(--radius);background:var(--surface-2);cursor:pointer;color:var(--ink-2);place-items:center;gap:6px;padding:26px 16px;font-size:14px;display:grid}.drop:hover,.drop.over{border-color:var(--accent);background:var(--accent-soft)}.drop b{color:var(--ink);font-size:15px}.drop .file{font-family:var(--font-mono);color:var(--ink);overflow-wrap:anywhere;font-size:13px}.drop input{opacity:0;width:1px;height:1px;position:absolute}.row2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.field input[type=date],.field input[type=number]{font-family:var(--font-mono)}.window{color:var(--ink-2);font-size:13px}.window b{font-family:var(--font-mono);color:var(--ink);font-weight:500}.rule-list{color:var(--ink-2);counter-reset:r;gap:6px;margin:0;padding-left:0;font-size:13px;list-style:none;display:grid}.rule-list li{grid-template-columns:26px minmax(0,1fr);gap:6px;display:grid}.rule-list li:before{counter-increment:r;content:counter(r);font-family:var(--font-mono);color:var(--ink-3);text-align:center;border:1px solid var(--line);border-radius:6px;height:20px;font-size:12px;line-height:18px}.rule-list li.hit{color:var(--bad);font-weight:600}.rule-list li.hit:before{border-color:var(--bad);color:var(--bad)}.progress{background:var(--surface-2);border:1px solid var(--line);border-radius:99px;height:10px;overflow:hidden}.progress>i{background:var(--accent);width:0;height:100%;transition:width .15s;display:block}.prog-text{color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:13px;display:flex}.prog-text b{font-family:var(--font-mono);color:var(--ink);font-weight:500}.checks{gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.checks li{color:var(--ink-3);gap:8px;display:flex}.checks li:before{content:"○";text-align:center;width:14px}.checks li.done{color:var(--good)}.checks li.done:before{content:"✓";font-weight:700}.checks li.now{color:var(--ink);font-weight:600}.checks li.now:before{content:"●";color:var(--accent)}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;padding:14px 16px}.kpi .eyebrow{font-size:11px}.kpi .v{font-family:var(--font-display);overflow-wrap:anywhere;margin-top:4px;font-size:26px;font-weight:700;line-height:1.1}.kpi .v.mono-v{font-family:var(--font-mono);font-size:16px;font-weight:500}.kpi .s{color:var(--ink-3);margin-top:4px;font-size:12px}.kpi.match{border-color:var(--good)}.kpi.mismatch{border-color:var(--bad);background:var(--bad-soft)}.kpi.mismatch .v{color:var(--bad)}.status-bar{border:1px solid var(--line);border-radius:99px;height:12px;display:flex;overflow:hidden}.status-bar span{height:100%;display:block}.legend{color:var(--ink-2);flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:13px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:3px;width:10px;height:10px;display:inline-block}.c-present{background:var(--good)}.c-late{background:var(--warn)}.c-absent{background:var(--bad)}.c-leave{background:var(--leave)}td.num,th.num{text-align:right;font-family:var(--font-mono)}.banner{border-radius:var(--radius);border:1px solid;align-items:flex-start;gap:12px;padding:14px 16px;font-size:14px;display:flex}.banner .ico{border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:14px;font-weight:700;display:grid}.banner h3{margin-bottom:4px;font-size:17px}.banner p{color:var(--ink-2);margin:0}.banner.bad{background:var(--bad-soft);border-color:var(--bad)}.banner.bad .ico{background:var(--bad);color:#fff}.banner.good{background:var(--good-soft);border-color:var(--good)}.banner.good .ico{background:var(--good);color:#fff}.banner.warn{background:var(--warn-soft);border-color:var(--warn)}.banner.warn .ico{background:var(--warn);color:#fff}:root[data-theme=dark] .banner .ico{color:#0c1320}.sticky-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.sticky-actions .muted{margin-right:auto;font-size:13px}@container app (width<=900px){.grid2{grid-template-columns:minmax(0,1fr)}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@container app (width<=640px){.row2{grid-template-columns:minmax(0,1fr)}.nav{width:100%}.sticky-actions{justify-content:stretch}.sticky-actions .btn{flex:auto}.kpi .v{font-size:22px}}@media (prefers-reduced-motion:reduce){.progress>i{transition:none}}.cell-note{color:var(--ink-3);font-size:12px}.count-badge{background:var(--bad-soft);min-width:1.6em;color:var(--bad);text-align:center;border-radius:99px;margin-left:6px;padding:0 6px;font-size:12px;font-weight:600;display:inline-block}.app>.fresh{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px 14px;padding:10px 0;font-size:13px;display:flex}.app>.fresh .dot{background:var(--good);border-radius:50%;flex:none;width:8px;height:8px}.app>.fresh.stale{color:var(--warn)}.app>.fresh.stale .dot{background:var(--warn)}.app>.fresh .fresh-warn{background:var(--warn-soft);color:var(--warn);border-radius:99px;align-items:center;gap:6px;padding:2px 10px;font-weight:600;display:inline-flex}.views .num{font-variant-numeric:tabular-nums}.views .range{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:end;gap:10px 14px;margin-bottom:18px;padding:12px 14px;display:flex}.views .field{color:var(--ink-3);letter-spacing:.02em;gap:3px;font-size:12px;font-weight:600;display:grid}.views .field input,.views .field select{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:7px;width:auto;min-width:0;padding:6px 9px;font-size:14px;font-weight:400}.views .chips{flex-wrap:wrap;gap:6px;display:flex}.views .chip{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:99px;padding:5px 11px;font-size:13px}.views .chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.views .range-note{color:var(--ink-3);margin-left:auto;font-size:12px}.views .error{color:var(--bad);width:100%;font-size:13px;font-weight:600}.views .crumbs{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:10px;font-size:13px;display:flex}.views .crumbs button{color:var(--accent);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:2px 4px;text-decoration:underline}.views .crumbs span[aria-current]{color:var(--ink);padding:2px 4px;font-weight:600}.views .hero{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:16px;margin-bottom:22px;display:grid}.views .big{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:6px 0 4px;font-size:72px;font-weight:700;line-height:1}.views .big.low{color:var(--bad)}.views .sub{color:var(--ink-2);font-size:14px}.views .marks{margin-top:18px}.views .bar{background:var(--surface-2);border-radius:99px;height:12px;display:flex;overflow:hidden}.views .bar i{height:100%;display:block}.views .legend{color:var(--ink-2);flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-size:13px;display:flex}.views .legend b{color:var(--ink);font-weight:600}.views .sw{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.views .c-P{background:var(--good)}.views .c-L{background:var(--warn)}.views .c-A{background:var(--bad)}.views .c-AL{background:var(--leave)}.views .legend-note{width:100%;color:var(--ink-3);font-size:12px}.views .chart-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.views .chart-head h2{font-size:16px}.views .chart{width:100%;height:auto;margin-top:8px;display:block;overflow:visible}.views .chart .grid{stroke:var(--line);stroke-width:1px}.views .chart .axis{fill:var(--ink-3);font-size:11px;font-family:var(--font-body)}.views .chart .area{fill:var(--accent-soft)}.views .chart .line{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linejoin:round}.views .chart .pt{fill:var(--surface);stroke:var(--accent);stroke-width:2px}.views .chart .pt.end{fill:var(--accent)}.views .chart .thr{stroke:var(--bad);stroke-width:1.5px;stroke-dasharray:5 4}.views .chart .thr-label{fill:var(--bad);font-size:11px;font-weight:600;font-family:var(--font-body)}.views .chart .end-label{fill:var(--ink);font-size:12px;font-weight:700;font-family:var(--font-body)}.views .section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin:6px 0 10px;display:flex}.views .section-head h2{font-size:20px}.views .campuses{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:24px;display:grid}.views .campus{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);cursor:pointer;box-shadow:var(--shadow);align-content:start;gap:8px;min-width:0;padding:16px;transition:border-color .15s,transform .15s;display:grid}.views .campus:hover{border-color:var(--accent);transform:translateY(-1px)}.views .campus-name{font-family:var(--font-display);font-size:16px;font-weight:600}.views .campus .pct{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:34px;font-weight:700;line-height:1}.views .campus .pct.low{color:var(--bad)}.views .campus .meta{color:var(--ink-3);font-size:13px}.views .meter{background:var(--surface-2);border-radius:99px;height:8px;position:relative}.views .meter i{background:var(--accent);border-radius:99px;position:absolute;inset:0 auto 0 0}.views .meter i.low{background:var(--bad)}.views .meter b{background:var(--ink-2);width:2px;position:absolute;top:-3px;bottom:-3px}.views .campus-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.views .flag{background:var(--bad-soft);color:var(--bad);white-space:nowrap;border-radius:99px;align-items:center;gap:5px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-flex}.views .flag svg{fill:currentColor;width:10px;height:10px}.views .cell-flag svg{fill:currentColor;vertical-align:0;width:9px;height:9px;margin-right:5px}.views .ok{background:var(--good-soft);color:var(--good);white-space:nowrap;border-radius:99px;align-items:center;gap:5px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-flex}.views .nodata{color:var(--ink-3);white-space:nowrap;font-size:12px}.views th.r,.views td.r{text-align:right}.views th button{cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.views th[aria-sort] button{color:var(--ink)}.views th .arrow{opacity:.8;font-size:10px}.views tbody tr.click{cursor:pointer}.views tbody tr.click:hover td{background:var(--surface-2)}.views td .link{color:var(--accent);cursor:pointer;text-align:left;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:600;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.views td .link:hover{text-decoration-color:currentColor}.views td.pct-cell{font-variant-numeric:tabular-nums;font-weight:700}.views td.pct-cell.low{color:var(--bad)}.views .mark{text-align:center;min-width:2.6em;font-family:var(--font-mono);border-radius:6px;padding:1px 6px;font-size:12px;font-weight:500;display:inline-block}.views .m-P{background:var(--good-soft);color:var(--good)}.views .m-L{background:var(--warn-soft);color:var(--warn)}.views .m-A{background:var(--bad-soft);color:var(--bad)}.views .m-AL{background:var(--leave-soft);color:var(--leave)}.views .summary{flex-wrap:wrap;align-items:end;gap:12px 28px;margin:4px 0 16px;display:flex}.views .summary h2{font-size:26px}.views .summary .stat{display:grid}.views .summary .stat b{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:30px;line-height:1.05}.views .summary .stat b.low{color:var(--bad)}.views .summary .stat span{color:var(--ink-3);letter-spacing:.03em;font-size:12px;font-weight:600}.views .summary .title{gap:4px;min-width:0;margin-right:auto;display:grid}.views .summary .title p{color:var(--ink-3);margin:0;font-size:13px}.views .weeks{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin-bottom:18px;display:grid}.views .week{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 10px}.views .week span{color:var(--ink-3);font-size:11px;display:block}.views .week b{font-variant-numeric:tabular-nums;font-size:15px}.views .week b.low{color:var(--bad)}.views .week b span{display:inline}.views .teaser{gap:10px;display:grid}.views .empty{text-align:center;color:var(--ink-3);padding:26px}.views .settings{gap:14px;max-width:560px;display:grid}.views .settings .row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.views .settings input[type=range]{min-width:160px;accent-color:var(--accent);flex:1}.views .settings input[type=number]{border:1px solid var(--line);background:var(--surface-2);border-radius:7px;width:88px;padding:7px 9px}.views .note{color:var(--ink-3);background:0 0;border-radius:0;padding:0;font-size:13px}@container app (width<=760px){.views .hero{grid-template-columns:minmax(0,1fr)}.views .big{font-size:60px}.views .hide-md{display:none}}@container app (width<=520px){.views .hide-sm{display:none}.views .big{font-size:54px}.views .panel{padding:14px}.views th,.views td{padding:9px 8px}.views .range-note{margin-left:0}.views .summary h2{font-size:22px}.views .summary .stat b{font-size:24px}.views .campuses{grid-template-columns:minmax(0,1fr)}}@container app (width<=640px){.views .table-wrap{display:block}}
