body:has(.display-board){overflow:hidden}.display-board{position:fixed;top:0;right:0;bottom:0;left:0;max-width:none;width:100%;height:100dvh;padding:20px 24px 14px;display:flex;flex-direction:column;gap:12px;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.3}.display-header{display:flex;justify-content:space-between;align-items:end;gap:24px;padding-right:35px}.display-header p{margin:0}.display-eyebrow{color:var(--mute);font-size:12px;font-weight:500;letter-spacing:normal}.display-header h1{margin:3px 0 0;font-size:26px;line-height:1.1}.display-context{text-align:right;font-size:16px}.display-context .display-updated{font-size:12px;color:var(--mute);margin-top:4px}.display-area{flex:1;min-height:0;position:relative}.display-tables tbody tr{height:var(--display-row-height)}.display-tables{display:grid;align-items:start;gap:24px}.display-board .display-table{table-layout:fixed;border:1px solid var(--line);width:100%;border-collapse:collapse}.display-name-column{width:27%}.display-board .display-table :is(th,td){padding:4px 7px;border:1px solid var(--line);overflow-wrap:anywhere;vertical-align:top}.display-board .display-table thead th{display:table-cell;background:var(--pan);color:var(--ink);font-size:14px;font-weight:600;text-align:center;height:32px}.display-table thead th:first-child{text-align:left}.display-table thead span{font-size:11px;font-weight:500}.display-board .display-table tbody th{vertical-align:middle;font-size:15px;font-weight:600;line-height:1.2}.display-table td{height:44px;text-align:center}.display-table tr:nth-child(2n){background:color-mix(in srgb,var(--bg) 60%,var(--pan))}.display-board .display-table .display-assigned{background:color-mix(in srgb,var(--pan) 92%,var(--acc))}.display-lesson{display:grid;gap:1px;line-height:1.15}.display-lesson+.display-lesson{margin-top:5px;padding-top:5px;border-top:1px solid var(--line)}.display-lesson strong{font-size:16px;font-weight:600}.display-lesson>span{font-size:13px}.display-replaced{display:grid;gap:1px;font-size:12px;line-height:1.25;margin-top:3px}.display-replaced-label{color:var(--mute)}.display-replaced-names{font-size:inherit}.display-changes{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 20px;font-size:14px}.display-changes>strong{color:var(--mute);font-weight:500}.display-measure{position:absolute;top:0;left:0;width:100%;visibility:hidden;pointer-events:none;contain:layout}.display-measure-double{width:calc((100% - 24px)/2)}.display-message{margin:auto;padding:24px;text-align:center;font-size:20px}.display-message a{display:inline-block;margin:16px;color:var(--acc)}.display-warning{padding:10px 16px;border:1px solid var(--line);color:var(--ink);background:var(--pan);font-weight:500;font-size:14px}.display-bottom{border-top:1px solid var(--line);padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:16px 24px}.display-bottom:empty{display:none}.display-bottom .display-changes{flex:1;min-width:0}.display-footer{margin-left:auto;display:flex;align-items:center;gap:10px;flex-shrink:0;color:var(--ink);font-size:19px;font-weight:500;white-space:nowrap}.display-footer strong{color:var(--ink);font-weight:600}.display-footer small{display:block;text-align:right;color:var(--mute);font-size:14px}.display-countdown{width:30px;height:30px;flex-shrink:0;transform:rotate(-90deg)}.display-countdown circle{fill:none;stroke-width:3}.display-countdown-track{stroke:var(--line)}.display-countdown-fill{stroke:var(--acc);stroke-dasharray:100;stroke-linecap:round;animation:display-countdown linear forwards}@keyframes display-countdown{to{stroke-dashoffset:0}}.display-page-enter{animation:display-page-enter .28s ease-out}@keyframes display-page-enter{0%{opacity:0}to{opacity:1}}.display-signature-reminder{padding:8px 0;border-top:1px solid var(--line);color:var(--ink);font-size:14px;font-weight:500;text-align:left}@media(prefers-reduced-motion:reduce){.display-page-enter{animation:none}}.display-controls{position:fixed;right:32px;bottom:132px;display:flex;gap:8px;opacity:0;pointer-events:none}.display-controls button{min-height:44px;padding:10px 16px;background:var(--acc);color:var(--on);border-radius:4px}.display-controls.is-visible,.display-controls:focus-within{opacity:1;pointer-events:auto}@media(max-width:900px){.display-board{padding:16px;gap:12px}.display-header h1{font-size:24px}.display-context{font-size:14px}.display-table thead span{display:none}}.display-slot-heading{display:grid;justify-items:center;gap:3px}.display-slot-heading .display-kind{padding:0;color:var(--mute);font-size:11px;font-weight:500;line-height:1.2}:root{--bg: #f2f4f7;--pan: #fff;--ink: #16181d;--mute: #667085;--line: #d5d9e0;--acc: #1d2f7a;--on: #fff;--soft: #e6eaf6;--bar-h: 52px;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #13151a;--pan: #1a1d24;--ink: #e9ebf0;--mute: #98a0b0;--line: #313641;--acc: #93a8ee;--on: #101420;--soft: #232a45}}:root[data-theme=dark]{--bg: #13151a;--pan: #1a1d24;--ink: #e9ebf0;--mute: #98a0b0;--line: #313641;--acc: #93a8ee;--on: #101420;--soft: #232a45}html{scroll-padding-top:env(safe-area-inset-top,0px)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 Instrument Sans,system-ui,-apple-system,Segoe UI,sans-serif;font-variant-numeric:tabular-nums}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.app{display:grid;grid-template-columns:410px 1fr;flex:1;min-height:0}aside{background:var(--pan);border-right:1px solid var(--line);padding:12px 16px;display:flex;flex-direction:column;gap:10px;position:sticky;top:var(--bar-h);height:calc(100vh - var(--bar-h));overflow:hidden}main{padding:26px 34px;max-width:980px}h1{font-size:28px;line-height:1.15;margin:0;font-weight:650;letter-spacing:-.01em;text-transform:capitalize}h2{font-size:13px;margin:0 0 2px;font-weight:600;color:var(--mute)}.sub{color:var(--mute);margin:4px 0 22px}.cal-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:0}.cal-h b{font-weight:600;text-transform:capitalize}.cal-h button{width:24px;height:24px;border-radius:3px}.cal-h button:hover{background:var(--soft)}.g{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.g .w{color:var(--mute);font-size:11px;padding:2px 0}.d{height:28px;font-size:13px;position:relative;border-radius:3px}.d:hover:not(:disabled){background:var(--soft)}.d:disabled{color:var(--mute);opacity:.45;cursor:default}.d.sel{background:var(--acc);color:var(--on);font-weight:600}.d i{position:absolute;bottom:3px;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--acc)}.d.sel i{background:var(--on)}.opt{display:flex;gap:6px;margin-top:6px}.opt button{padding:2px 9px;font-size:13px;border:1px solid var(--line);border-radius:3px;color:var(--mute)}.opt button.on{background:var(--acc);border-color:var(--acc);color:var(--on);font-weight:600}input,select{font:inherit;color:var(--ink);background:var(--pan);border:1px solid var(--line);border-radius:3px;padding:6px 8px;min-width:0}.sw{position:relative}.sug{position:absolute;left:0;right:0;top:100%;background:var(--pan);border:1px solid var(--acc);z-index:5}.sug button{display:flex;justify-content:space-between;gap:8px;width:100%;padding:7px 10px;text-align:left}.sug button.on,.sug button:hover{background:var(--soft)}.sug small{color:var(--mute)}.lk{color:var(--acc);font-size:13px;text-decoration:underline;text-underline-offset:2px}.hrs{display:flex;gap:2px}.hrs button{width:21px;height:22px;font-size:12px;border:1px solid var(--line);border-radius:3px;color:var(--mute)}.hrs button.on{background:var(--acc);border-color:var(--acc);color:var(--on);font-weight:600}.x{color:var(--mute);width:20px;height:22px}.x:hover{color:var(--ink)}@media(max-width:900px){.app{grid-template-columns:1fr}}table{width:100%;border-collapse:collapse;background:var(--pan);border:1px solid var(--line)}th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:middle}thead th{font-size:13px;color:var(--mute);font-weight:500;background:var(--bg)}@media(max-width:900px){.app{grid-template-columns:1fr}aside{border-right:0;border-bottom:1px solid var(--line);position:static;height:auto;overflow:visible}main{padding:20px 14px}th,td{padding:8px 6px}thead th:last-child{display:none}}.upload-btn{display:block;text-align:center;background:var(--acc);color:var(--on);padding:9px 12px;border-radius:5px;font-weight:600;cursor:pointer}.upload-btn:hover{opacity:.88}.db-status{color:var(--mute);font-size:12px;margin-top:7px;overflow-wrap:anywhere}.db-status b{color:var(--ink)}#upload-error{color:#c34242;font-size:12px;margin-top:5px}.type-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;line-height:1.25;border-radius:4px;padding:3px 7px;margin-top:5px;width:max-content;max-width:100%}.type-pot-c,.type-dis{background:#d7f4df;color:#155b32}.type-pot-s{background:#fff0b3;color:#755000}.type-tc{background:#f9d9eb;color:#8c235b}.type-comp{background:#ffd9d9;color:#9d1c1c}.type-utc,.type-uts,.type-dsi{background:#dceafe;color:#1a4b9a}.type-dir{background:#fff;color:#343b47;border:1px solid #bfc5ce}.type-special{background:#24262e;color:#fff}.type-bo{background:#e9ddff;color:#59358d}.type-unknown{background:#e5e7eb;color:#414651}.site-filter{display:flex;gap:5px;flex-wrap:wrap;margin:0 0 14px}.site-filter button{border:1px solid var(--line);border-radius:5px;padding:5px 11px;font-size:13px;color:var(--mute)}.site-filter button.active{background:var(--acc);color:var(--on);border-color:var(--acc);font-weight:600}.shell{display:flex;flex-direction:column;min-height:100vh}.bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;height:var(--bar-h);padding:0 16px;background:var(--pan);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:8px;font-weight:650;white-space:nowrap}.brand svg{width:22px;height:22px;color:var(--acc)}.build-warning{font-size:12px;color:var(--acc);flex-shrink:0}.build-warning small{display:block}.bar:has(.build-warning){height:auto;min-height:var(--bar-h);flex-wrap:wrap;padding-block:8px}.tabs{display:flex;gap:4px;margin-left:auto;overflow-x:auto;scrollbar-width:thin}.tabs a{padding:6px 12px;border-radius:4px;color:var(--mute);text-decoration:none;white-space:nowrap}.tabs a:hover{background:var(--soft)}.tabs a.on{background:var(--soft);color:var(--ink);font-weight:600}.stub,.settings{flex:1;padding:26px 34px}.credits{padding:16px 34px;border-top:1px solid var(--line);color:var(--mute);font-size:13px;text-align:center}.app>main{width:100%;margin-inline:auto}.hour-help{display:inline-block;position:relative}.hour-help:focus-visible{outline:2px solid var(--acc);outline-offset:3px}.tip{position:fixed;z-index:30;width:230px;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--pan);color:var(--ink);font-size:13px;font-weight:400;box-shadow:0 4px 12px #0002}.warning-icon{width:18px;height:18px;color:#a65b00;vertical-align:middle}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.palette-blue{background:#dbeafe;color:#1e3a8a}.palette-green{background:#dcfce7;color:#14532d}.palette-purple{background:#f3e8ff;color:#581c87}.palette-amber{background:#fef3c7;color:#78350f}.palette-rose{background:#ffe4e6;color:#881337}.palette-teal{background:#ccfbf1;color:#134e4a}.stats-layout{min-height:calc(100vh - var(--bar-h))}.stats-controls{overflow-y:auto;gap:24px;padding-top:24px}.stats-controls h2{margin-bottom:10px}.stats-controls .site-filter{margin-bottom:12px}.stats-calendar .cal-h{margin:8px 0}.stats-calendar .d{height:36px}.stats-calendar .in-range{background:var(--soft);color:var(--acc)}.stats-calendar .d[aria-current=date]{text-decoration:underline;text-underline-offset:3px}.stats-range{font-size:13px;margin:12px 0 6px}.stats-calendar-help{color:var(--mute);font-size:12px;margin:0;line-height:1.5}.stats-page{--stats-absence: #ab5c13;--stats-teachers: #28785f;width:100%;min-width:0;max-width:1200px;margin:0 auto;padding:24px 28px 48px}.stats-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.stats-heading h1{font-size:24px}.stats-actions{display:flex;gap:12px;flex-wrap:wrap}.stats-actions button{color:var(--acc);font-size:13px;padding:8px 0;text-decoration:underline;text-underline-offset:3px}.stats-actions button:disabled{opacity:.5;cursor:default}.stats-scope{color:var(--mute);font-size:13px;margin:8px 0 16px}.stats-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 0 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0}.stats-card{min-width:0;padding:0 14px;border-left:1px solid var(--line)}.stats-card:first-child{border-left:0;padding-left:0}.stats-card h2{font-size:12px;font-weight:500;color:var(--mute);margin:0 0 3px;text-transform:none}.stats-card strong{font-size:28px;font-weight:600;letter-spacing:-.03em}.stats-card span,.stats-card p{color:var(--mute);font-size:12px}.stats-card p{margin:2px 0 0}.stats-outcomes{display:flex;gap:8px 20px;flex-wrap:wrap;margin-bottom:10px}.stats-outcomes>div{display:flex;align-items:baseline;gap:7px;font-size:12px;color:var(--mute)}.stats-outcomes strong{color:var(--ink);font-size:16px;font-weight:600}.stats-outcomes .outcome-uncovered strong{color:#b43e3e}.stats-notes{margin-bottom:16px}.stats-notes summary{color:var(--mute);font-size:12px;padding:6px 0;cursor:pointer}.stats-method{color:var(--mute);font-size:12px;line-height:1.6;margin:8px 0 12px;max-width:100ch}.stats-warning{padding:12px;border-left:2px solid var(--acc);background:var(--soft);font-size:13px}.stats-warning button{padding:8px 12px;color:var(--acc)}.stats-panel{min-width:0;border-top:1px solid var(--line);padding:18px 0}.stats-panel h2{font-size:14px;font-weight:600;text-transform:none;margin:0 0 8px}.stats-panel-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:12px}.stats-panel-heading .site-filter{margin:0}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.stats-chart{height:280px;width:100%;min-width:0;font-size:12px}.stats-scroll{overflow:auto;max-height:480px}.stats-scroll table{width:100%;border-collapse:collapse;font-size:13px}.stats-scroll caption{color:var(--mute);text-align:left;padding:8px 0;font-size:12px}.stats-scroll th,.stats-scroll td{text-align:right;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.stats-scroll th:first-child{text-align:left}.stats-scroll tbody th{font-weight:500}.stats-scroll thead th{color:var(--mute);font-weight:500}.stats-values{margin-top:8px}.stats-values summary{cursor:pointer;color:var(--mute);padding:8px 0;font-size:12px}.stats-values summary:focus-visible,.stats-notes summary:focus-visible,.stats-scroll:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.stats-heatmap td{font-weight:600}.type-uncovered{background:var(--soft);border:1px solid #c34242}.stats-preview-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px;padding:12px;border:1px solid var(--line)}.stats-preview-actions button{padding:10px 14px;min-height:44px;border:1px solid var(--line);border-radius:5px}.stats-preview-layout{display:block}.stats-preview-layout .stats-controls{display:none}.stats-print-preview{--bg: white;--pan: white;--ink: black;--mute: #444;--line: #bbb;--acc: #1d2f7a;--soft: #f1f2f6;background:#fff;color:#000}.stats-print-preview .stats-actions,.stats-print-preview .stats-panel-heading .site-filter,.stats-print-preview .stats-values summary,.stats-print-preview .stats-notes summary{display:none}.stats-print-preview .stats-scroll{max-height:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .stats-page:not(.stats-print-preview){--stats-absence: #e5a563;--stats-teachers: #78c4aa}}:root[data-theme=dark] .stats-page:not(.stats-print-preview){--stats-absence: #e5a563;--stats-teachers: #78c4aa}@media(max-width:1100px){.stats-grid{grid-template-columns:1fr}.stats-cards{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.stats-card:nth-child(3){border-left:0;padding-left:0}}@media(max-width:760px){.stats-layout{display:block}.stats-controls{position:static;height:auto;overflow:visible;display:grid;grid-template-columns:1fr 1.4fr;gap:20px;border-right:0;border-bottom:1px solid var(--line);padding:16px}.stats-calendar .d{height:40px}.stats-page{padding:20px 16px 40px}.stats-heading{flex-wrap:wrap;gap:8px}.stats-heading h1{font-size:22px}}@media(max-width:480px){.stats-controls{display:block}.stats-controls section+section{margin-top:16px}.stats-calendar .d{height:44px}.stats-controls .site-filter button{min-height:36px}.stats-card{padding:0 10px}.stats-card strong{font-size:26px}.stats-chart{height:300px}}@media print{:root{--bg: white;--pan: white;--ink: black;--mute: #444;--line: #bbb;--acc: #1d2f7a;--soft: #f1f2f6}.bar,.stats-controls,.stats-actions,.stats-preview-actions,.stats-panel-heading .site-filter{display:none!important}.stats-layout{display:block}.stats-page{max-width:none;padding:0}.stats-panel,.stats-card{break-inside:avoid}.stats-grid{grid-template-columns:1fr}.stats-scroll{max-height:none;overflow:visible}.stats-values summary,.stats-notes summary{display:none!important}.stats-scroll table{font-size:9px}.stats-scroll th,.stats-scroll td{padding:5px 4px}.stats-heatmap td{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.stats-cards{grid-template-columns:1.4fr repeat(3,minmax(0,1fr))}.stats-card:first-child h2{color:var(--ink);font-size:13px;font-weight:600}.stats-card:first-child strong{color:var(--acc);font-size:36px}.stats-card:not(:first-child) strong{font-size:24px}@media(max-width:1100px){.stats-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.stats-heatmap td:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}.stats-cell-tooltip{position:fixed;z-index:40;width:min(320px,calc(100vw - 16px));max-height:256px;overflow-y:auto;padding:10px 12px;background:var(--pan);color:var(--ink);border:1px solid var(--line);border-radius:5px;box-shadow:0 4px 12px #0002;text-align:left;white-space:normal;font-size:13px;font-weight:400}.stats-cell-tooltip>strong,.stats-cell-tooltip>span{display:block}.stats-cell-tooltip>span{color:var(--mute);font-size:12px;margin-bottom:8px}.stats-cell-tooltip ul{list-style:none;padding:0;margin:0}.stats-cell-tooltip li{padding:2px 0}@media print{.stats-cell-tooltip{display:none}}.type-rp{background:var(--acc);color:var(--on)}.classification{flex-wrap:wrap;gap:4px}.classification button{min-height:26px;padding:3px 8px;font-size:12px}@media(pointer:coarse){.classification button{min-height:44px}}.tip{box-sizing:border-box;max-width:calc(100vw - 16px);white-space:pre-wrap;overflow-wrap:anywhere;overflow-y:auto}.tip:focus-visible,textarea:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.testing-ribbon{position:fixed;top:20px;right:-36px;width:150px;padding:6px 0;transform:rotate(45deg);background:#b91c1c;color:#fff;font-size:13px;font-weight:800;text-align:center;letter-spacing:1px;z-index:10001;pointer-events:none;box-shadow:0 2px 5px #0004}.attachment-field{display:grid;gap:4px;margin-block:8px;min-width:0}.attachment-paste{border:1px dashed var(--mute);border-radius:5px;padding:8px;display:grid;gap:4px;font-size:13px}.attachment-paste small{color:var(--mute)}.attachment-paste img{max-width:100%;max-height:120px;object-fit:contain;justify-self:start}.attachment-field>button{justify-self:start}.attachment-field p{color:#b83232;margin:0;font-size:13px}.info-trigger{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;min-width:0;min-height:0;border:1px solid var(--mute);border-radius:50%;color:var(--mute);background:transparent;font-size:10px;font-weight:600;font-style:italic;line-height:1;cursor:pointer}.record-info{flex-shrink:0;display:inline-flex;margin-inline:3px}.record-popover{inset:auto;margin:0}.record-popover p{margin:0 0 8px}.record-popover a{display:block;color:var(--acc);padding-block:6px}.attachment-paste:focus-visible,.info-trigger:focus-visible,.record-popover a:focus-visible{outline:2px solid var(--acc);outline-offset:2px}@media(pointer:coarse){.record-popover a{min-height:44px;display:flex;align-items:center}}.inbox-count{margin-left:6px;padding:1px 6px;border-radius:10px;background:var(--soft);color:var(--acc)}.inbox-notice:empty{display:none}.inbox-notice{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;padding:8px 16px;background:var(--soft);color:var(--ink);border-bottom:1px solid var(--line)}.inbox-notice a{color:var(--acc);padding:5px}.campus-centrale{--campus-edge: #4c9c6a;--campus-fill: #dcfce7;--campus-ink: #14532d;--campus-mark: #237a43}.campus-succursale{--campus-edge: #b89c25;--campus-fill: #fef9c3;--campus-ink: #713f12;--campus-mark: #856512}.campus-unknown{--campus-edge: #9ca3af;--campus-fill: #e5e7eb;--campus-ink: #374151;--campus-mark: var(--mute)}:root[data-theme=dark] .campus-centrale{--campus-mark: #8bd5a4}:root[data-theme=dark] .campus-succursale{--campus-mark: #e8ce69}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .campus-centrale{--campus-mark: #8bd5a4}:root:not([data-theme=light]) .campus-succursale{--campus-mark: #e8ce69}}.availability-date{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px}.availability-date input{min-height:44px;padding:6px 10px;color:var(--ink);background:var(--pan);border:1px solid var(--line);border-radius:5px}.availability-switch{margin:12px 0}.availability-switch button{min-height:44px}.availability-ratio{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 24px;margin:20px 0 8px}.availability-ratio span{color:var(--mute);font-size:13px}.stats-print-preview .availability-date,.stats-print-preview .availability-switch{display:none}@media print{.availability-date,.availability-switch{display:none!important}}.stats-heatmap{table-layout:fixed}.stats-scroll .stats-heatmap th,.stats-scroll .stats-heatmap td{width:auto;padding:8px 4px;white-space:normal;overflow-wrap:anywhere;text-align:center}.stats-scroll .stats-heatmap th:first-child{width:52px;text-align:left}.stats-scroll .stats-heatmap thead th:last-child{display:table-cell}.stats-cards{grid-template-columns:1.4fr repeat(2,minmax(0,1fr))}.availability-tooltip{pointer-events:none;padding:8px 10px;font-size:12px;line-height:1.35}.availability-tooltip.is-pinned{pointer-events:auto}.availability-tooltip h3{margin:7px 0 2px;font-size:12px;font-weight:600}.availability-tooltip li{padding:1px 0;overflow-wrap:anywhere}.availability-tooltip small{display:block;margin-top:7px;color:var(--mute);font-size:10px}@media(max-width:480px){.stats-cards{grid-template-columns:1fr}.stats-card{border-left:0;padding:6px 0}}.account-identity{margin-left:auto;display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.account-identity strong{overflow-wrap:anywhere;min-width:0;max-width:100%}.account-identity span{font-size:.85em;opacity:.8}.auth-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:var(--bg,#fff);display:grid;place-items:center;padding:1rem}.auth-login{width:min(26rem,100%);padding:2rem}.auth-login form,.auth-login label{display:grid;gap:.75rem}.auth-login form{gap:1rem}button:disabled,select:disabled,[aria-disabled=true]{cursor:not-allowed}@media(max-width:700px){.account-identity{width:100%;justify-content:flex-end}.bar{flex-wrap:wrap}}.settings-permissions{border:0;padding:0;margin:0;min-width:0}.ui-page,.ui-scope{--ui-gap: 8px;--ui-field-gap: 12px;--ui-label-gap: 8px;--ui-padding: 12px;--ui-control-padding: 6px 8px;--ui-control-height: 36px;--ui-radius: 4px;--ui-form-width: 640px;--ui-danger: color-mix(in srgb, var(--ink) 35%, #c34242);--ui-surface: var(--pan);--ui-border: var(--line);min-width:0;color:var(--ink);font:inherit}.ui-page h1,.ui-page .ui-title{margin:0;font-size:22px}.ui-page h2{margin:0;font-size:16px;color:var(--ink);font-weight:650;line-height:1.4}.ui-page h3{margin:0;font-size:15px;color:var(--ink);font-weight:600;line-height:1.4}.ui-page :where(p){margin:0;line-height:1.45}.ui-page .sub{color:var(--mute);font-size:12px}.ui-page a{color:var(--acc)}.ui-surface{min-width:0;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius)}.ui-table{width:100%;border-collapse:collapse;font-size:13px;border:0;background:transparent}.ui-table :is(th,td){text-align:left;padding:var(--ui-padding);border-bottom:1px solid var(--ui-border);vertical-align:top}.ui-form{display:grid;gap:var(--ui-field-gap);min-width:0}.ui-page :is(label:has(>input:not([type=checkbox])),label:has(>select),label:has(>textarea),.ui-field){display:grid;gap:var(--ui-label-gap);width:100%;min-width:0;font-size:13px;font-weight:500;color:var(--ink);line-height:1.4}.ui-page :is(input:not([type=checkbox]),select,textarea){font:inherit;font-size:13px;color:var(--ink);background:var(--bg);border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:var(--ui-control-padding);min-height:var(--ui-control-height);min-width:0;width:100%}.ui-page textarea{min-height:64px;resize:vertical}.ui-page input[type=checkbox]{width:18px;height:18px;flex:0 0 auto;accent-color:var(--acc)}.ui-actions{display:flex;align-items:end;gap:var(--ui-gap);flex-wrap:wrap}.ui-actions .ui-field{flex:1 1 240px}:is(.ui-page,.ui-scope) .ui-button,.ui-page :is(.classification button,.attachment-field>button){display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:var(--ui-control-height);padding:var(--ui-control-padding);border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);color:var(--ink);font:inherit;font-size:13px;font-weight:500;cursor:pointer;justify-self:start}:is(.ui-page,.ui-scope) .ui-button-primary,.ui-page .classification button.on{background:var(--acc);color:var(--on);border-color:var(--acc)}:is(.ui-page,.ui-scope) .ui-button-danger{color:var(--ui-danger)}:is(.ui-page,.ui-scope) .ui-button.on:not(.ui-button-primary){background:var(--soft);color:var(--acc);border-color:var(--acc)}:is(.ui-page,.ui-scope) .ui-button:hover:not(:disabled),.ui-page :is(.classification button,.attachment-field>button):hover:not(:disabled){filter:brightness(.95)}.ui-page :disabled,.ui-scope .ui-button:disabled{opacity:.55;cursor:not-allowed}.ui-page :is(summary,button,input,select,textarea,.attachment-paste):focus-visible{outline:2px solid var(--acc);outline-offset:2px}.ui-notice{padding:var(--ui-control-padding);background:var(--soft);border-left:2px solid var(--acc);font-size:13px;overflow-wrap:anywhere}.ui-notice:empty{display:none}.ui-notice-error{color:var(--ui-danger);border-color:var(--ui-danger)}.ui-page .classification{margin:0;gap:var(--ui-gap);flex-wrap:wrap}.ui-page .attachment-field{gap:var(--ui-gap);margin:0}.ui-page .attachment-paste{padding:var(--ui-padding);border-radius:var(--ui-radius)}.ui-page .attachment-field p{color:var(--ui-danger)}@media(max-width:650px),(pointer:coarse){.ui-page,.ui-scope{--ui-control-height: 44px}}.ui-loading{display:inline-flex;align-items:center;gap:8px;padding-block:6px;color:inherit;font-size:13px;line-height:1.4}.ui-spinner{display:inline-block;flex:0 0 auto;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ui-spin .8s linear infinite}.ui-loading-content{opacity:.45;pointer-events:none}@keyframes ui-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ui-spinner{animation:none}}@media print{.ui-loading,.ui-loading-content{display:none!important}}.loading-permit-status{grid-column:1 / -1}.ui-operation-status{position:fixed;bottom:16px;left:50%;transform:translate(-50%);z-index:200;padding:6px 16px;border:1px solid var(--line);border-radius:4px;background:var(--pan);color:var(--ink);box-shadow:0 4px 16px #0002}
