@layer tokens,legacy,redesign,print;@layer tokens{:root{color-scheme:light;--bg: #f5f4f0;--surface: #ffffff;--surface-subtle: #faf9f6;--surface-strong: #efeee9;--border: #e3e1da;--border-strong: #c9c6bc;--text: #15171c;--text-soft: #2f333c;--muted: #5b6170;--primary: #3346b8;--primary-strong: #23318a;--primary-soft: #e9ecfb;--primary-border: #c3caf3;--on-primary: #ffffff;--green: #0b5e45;--green-soft: #e1f3ec;--green-border: #a9dcc9;--green-dot: #128764;--coral: #a8432c;--coral-soft: #fdece7;--coral-border: #efb9aa;--amber: #8a4300;--amber-soft: #fff0dd;--amber-border: #f3c98f;--amber-dot: #e07b00;--red: #b42318;--red-soft: #fdeceb;--red-border: #f4b8b2;--red-dot: #d92d20;--on-red: #ffffff;--nav-bg: #ffffff;--shadow: 0 1px 2px rgb(20 24 32 / .04), 0 4px 14px rgb(20 24 32 / .05);--shadow-small: 0 1px 2px rgb(20 24 32 / .06);--radius: 14px;--radius-small: 10px;--font-display: "Bricolage Grotesque", Figtree, system-ui, sans-serif;font-family:Figtree,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-variant-numeric:tabular-nums;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: .9375rem;--text-lg: 1.0625rem;--text-xl: 1.25rem;--text-2xl: 1.5625rem;--text-3xl: 2rem;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-pop: cubic-bezier(.34, 1.45, .64, 1);--dur-fast: .14s;--dur: .22s;--dur-slow: .42s;--surface-inverse: #15171c;--text-inverse: #f5f4f0;--primary-inverse: #b3bcff}.dark{color-scheme:dark;--bg: #101217;--surface: #181b22;--surface-subtle: #1c2028;--surface-strong: #232730;--border: #2d323d;--border-strong: #454c5a;--text: #ecedf1;--text-soft: #c9cdd6;--muted: #a4aab7;--primary: #8e9bff;--primary-strong: #b3bcff;--primary-soft: #272e57;--primary-border: #3e4886;--on-primary: #0d1026;--green: #8fe6ca;--green-soft: #16322a;--green-border: #2a5a4b;--green-dot: #5cd3ae;--coral: #ffac96;--coral-soft: #3a1f19;--coral-border: #6e3a2e;--amber: #ffb86b;--amber-soft: #3a2915;--amber-border: #6b4a22;--amber-dot: #ff9f3d;--red: #ff9d94;--red-soft: #3b1a1a;--red-border: #713030;--red-dot: #f0544a;--on-red: #1d0b0a;--nav-bg: #181b22;--shadow: 0 1px 2px rgb(0 0 0 / .3), 0 6px 18px rgb(0 0 0 / .22);--shadow-small: 0 1px 2px rgb(0 0 0 / .3);--surface-inverse: #f5f4f0;--text-inverse: #15171c;--primary-inverse: #3346b8}}@layer legacy{*{box-sizing:border-box}html{min-width:320px}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{min-height:34px;border:1px solid var(--primary);border-radius:var(--radius-small);background:var(--primary);color:var(--on-primary);padding:0 12px;font-size:.82rem;font-weight:750;cursor:pointer}button:hover{border-color:var(--primary-strong);background:var(--primary-strong)}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 30%,transparent)}button.ghost{min-height:30px;border-color:var(--border);background:var(--surface);color:var(--text-soft);padding:0 9px;box-shadow:var(--shadow-small)}button.ghost:hover{border-color:var(--border-strong);background:var(--surface-strong);color:var(--text)}input[type=search],input[type=date],select,textarea{width:100%;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text)}input[type=search],input[type=date],select{min-height:36px;padding:0 9px}textarea{padding:7px 8px;resize:vertical}label{color:var(--muted);font-size:.76rem;font-weight:750}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:0}.hidden{display:none!important}.app-nav{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--border);background:var(--nav-bg);box-shadow:0 2px 10px #1f2d4314;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.nav-inner{display:grid;grid-template-columns:1fr auto 1fr;width:min(1480px,calc(100% - 24px));min-height:54px;align-items:center;gap:12px;margin:0 auto}.brand{display:inline-flex;width:max-content;align-items:center;gap:9px;color:var(--text);text-decoration:none}.brand img{width:auto;height:30px;object-fit:contain}.brand strong,.brand small{display:block}.brand strong{font-size:.86rem;line-height:1}.brand small{margin-top:2px;color:var(--muted);font-size:.65rem;font-weight:650}.app-nav{position:sticky}#guardies-chrome-root{display:contents}.nav-progress{position:absolute;left:0;right:0;bottom:0;height:2px;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .16s ease}.nav-progress:before{content:"";position:absolute;inset:0 auto 0 0;width:35%;background:var(--primary);animation:nav-progress .9s ease-in-out infinite}.nav-progress.active{opacity:1}@keyframes nav-progress{0%{transform:translate(-100%)}to{transform:translate(290%)}}@media(prefers-reduced-motion:reduce){.nav-progress:before{animation:none;width:100%;opacity:.6}}.page{width:min(1480px,calc(100% - 24px));margin:0 auto;padding:12px 0 32px}.work-header,.admin-panel,.entry-panel,.day-panel,.empty,.alert{border:1px solid var(--border);border-radius:7px;background:var(--surface);box-shadow:var(--shadow)}.work-header-stack{display:grid;gap:6px}.day-conflict{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;border:1px solid var(--border);border-radius:6px;background:var(--surface)}.work-header{display:grid;grid-template-columns:auto minmax(460px,1fr) auto;align-items:center;gap:20px;min-height:72px;padding:10px 14px}.guardies-auth-gate{display:flex;align-items:center;gap:8px;margin-bottom:10px}.guardies-auth-gate p{margin:0;color:var(--coral);font-size:.72rem}.unclosed-days-warning{width:100%;margin:0;border:1px solid var(--amber-border);border-radius:5px;background:var(--amber-soft);color:var(--text);padding:6px 9px;font-size:.7rem;line-height:1.25}.unclosed-days-warning strong{color:var(--amber-strong)}.unclosed-day-link{border:0;border-radius:3px;background:transparent;color:var(--amber-strong);cursor:pointer;font:inherit;font-weight:850;padding:0 3px;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent);text-underline-offset:2px;transition:background-color .15s ease,text-decoration-color .15s ease}.unclosed-day-link:hover,.unclosed-day-link:focus-visible{background:color-mix(in srgb,var(--amber-strong) 14%,transparent);text-decoration-color:currentColor}.range-builder,.outing-range{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:7px;border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.range-copy,.range-builder>button,.outing-range>button{grid-column:1 / -1}.range-copy strong{display:block}.range-copy strong{color:var(--text);font-size:.72rem}.range-builder label,.outing-range label{display:grid;gap:3px}.range-builder input,.outing-range input{min-height:34px;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text);padding:0 6px}.outing-range{border-top:0;margin-top:5px;padding-top:0}.range-feedback{grid-column:1 / -1;margin:0;color:var(--muted);font-size:.68rem;font-weight:700}.range-feedback.is-success{color:var(--green)}.range-feedback.is-error{color:var(--coral)}.companion-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:0 8px 8px}.info-only-label{color:var(--muted);font-size:.7rem;font-weight:800}.completion-toggle{display:flex;align-items:center;gap:5px;margin-top:4px;font-size:.6rem}.coverage-item.not-completed{background:var(--surface-strong);opacity:.68}.coverage-item.not-completed strong{text-decoration:line-through}.coverage-item.informational{border-left:3px solid var(--amber)}.close-day{background:var(--green);border-color:var(--green)}.work-title{min-width:130px}.work-title h1{margin:1px 0 0;font-size:1.35rem;line-height:1.05}.kicker{margin-bottom:2px;color:var(--primary-strong);font-size:.65rem;font-weight:850;text-transform:uppercase}.day-command-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:56px}.day-command-bar>button{min-height:36px}.pill{display:inline-flex;min-height:27px;align-items:center;border:1px solid var(--primary-border);border-radius:999px;background:var(--primary-soft);color:var(--primary-strong);padding:0 9px;font-size:.69rem;font-weight:850;white-space:nowrap}.admin-panel{margin-top:8px;overflow:visible}.admin-panel>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:40px;padding:0 12px;cursor:pointer;list-style:none}.admin-panel>summary::-webkit-details-marker{display:none}.admin-panel>summary:after{content:"+";color:var(--primary-strong);font-size:1rem;font-weight:900}.admin-panel[open]>summary{border-bottom:1px solid var(--border)}.admin-panel[open]>summary:after{content:"-"}.admin-summary-title{display:inline-flex;align-items:center;gap:7px;color:var(--text-soft);font-size:.78rem}.admin-icon{color:var(--primary-strong);font-size:.9rem}.cache-info{min-width:0;overflow:hidden;color:var(--muted);font-size:.68rem;font-weight:650;text-align:right;text-overflow:ellipsis;white-space:nowrap}.admin-body{display:grid;grid-template-columns:minmax(340px,.72fr) minmax(0,1.7fr);gap:10px;padding:10px}.admin-body-single{grid-template-columns:minmax(0,1fr)}.convivencia-panel{border-left:3px solid var(--green)}.convivencia-panel .admin-icon{color:var(--green)}.pati-panel{border-left:3px solid var(--amber)}.pati-panel .admin-icon{color:var(--amber)}.pati-admin-grid{display:grid;grid-template-columns:minmax(270px,.75fr) minmax(420px,1.25fr);gap:10px;padding:10px}.pati-calendar-block,.pati-preview-block{grid-column:1 / -1}.pati-zone-list,.pati-roster-list{display:grid;gap:6px}.pati-add-zone{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-bottom:8px}.pati-zone-row{display:grid;grid-template-columns:30px 24px minmax(0,1fr) 30px;align-items:center;gap:6px;border-radius:5px;transition:background .12s ease,opacity .12s ease,outline-color .12s ease}.pati-zone-row.is-dragging{opacity:.45}.pati-zone-row.is-drop-target:not(.is-dragging){outline:2px solid var(--amber);outline-offset:2px;background:var(--amber-soft)}.pati-zone-drag{display:grid;width:30px;min-width:30px;height:30px;min-height:30px;place-items:center;border:1px solid var(--border);border-radius:5px;background:var(--surface-subtle);color:var(--muted);padding:0;cursor:grab;touch-action:none}.pati-zone-drag:hover,.pati-zone-drag:focus-visible{border-color:var(--amber);color:var(--amber)}.pati-zone-drag:active{cursor:grabbing}.pati-zone-drag span{font-size:1rem;line-height:1}.pati-zone-row>span{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:var(--amber-soft);color:var(--amber);font-size:.68rem;font-weight:900}.pati-zone-row input,.pati-add-zone input,.pati-holiday-form input[type=text]{min-width:0;min-height:36px;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text);padding:0 9px}.pati-day-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-bottom:8px}.pati-day-tabs button{min-width:0;border-color:var(--border);background:var(--surface);color:var(--text-soft);padding:0 5px}.pati-day-tabs button span{display:inline-grid;min-width:18px;height:18px;place-items:center;margin-left:2px;border-radius:99px;background:var(--surface-strong);font-size:.62rem}.pati-day-tabs button.active{border-color:var(--amber-border);background:var(--amber-soft);color:var(--amber)}.pati-add-teacher{margin-bottom:8px}.pati-teacher-autocomplete{position:relative;min-width:0}.pati-teacher-results{position:absolute;z-index:30;top:calc(100% + 3px);right:0;left:0;display:grid;max-height:245px;overflow-y:auto;border:1px solid var(--border-strong);border-radius:5px;background:var(--surface);box-shadow:var(--shadow)}.pati-teacher-results button{min-height:34px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:var(--surface);color:var(--text-soft);padding:6px 9px;text-align:left}.pati-teacher-results button:last-child{border-bottom:0}.pati-teacher-results button:hover,.pati-teacher-results button:focus-visible,.pati-teacher-results button.suggested{background:var(--primary-soft);color:var(--primary-strong)}.pati-teacher-results strong{font-size:.72rem}.pati-roster-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(130px,.7fr) 30px;align-items:end;gap:7px;border:1px solid var(--border);border-radius:5px;background:var(--surface);padding:7px}.pati-roster-row>div{min-width:0}.pati-roster-row strong{display:block;overflow:hidden;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.pati-roster-row label{display:grid;gap:3px}.source-chip{display:inline-flex;width:max-content;margin-top:3px;border-radius:99px;background:var(--green-soft);color:var(--green);padding:2px 6px;font-size:.58rem;font-weight:850}.source-chip.official{margin:0;background:var(--primary-soft);color:var(--primary-strong);text-decoration:none}.official-calendar-summary{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:9px}.official-calendar-summary>span,.custom-holiday-list>span{border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text-soft);padding:4px 7px;font-size:.66rem}.pati-holiday-form{display:grid;grid-template-columns:155px minmax(220px,1fr) auto;gap:6px}.custom-holiday-list{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.custom-holiday-list button{min-height:18px;margin-left:5px;border:0;background:transparent;color:var(--coral);padding:0}.week-nav{display:flex;gap:4px}.pati-week-preview{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.pati-day-card{min-width:0;border:1px solid var(--border);border-radius:6px;background:var(--surface);overflow:hidden}.pati-day-card>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:var(--surface-strong);padding:6px 7px;font-size:.68rem}.pati-day-card>header span{color:var(--muted)}.pati-preview-assignments{display:grid}.pati-preview-assignments>span{display:grid;gap:1px;min-width:0;border-bottom:1px solid var(--border);color:var(--text-soft);padding:5px 7px;font-size:.63rem}.pati-preview-assignments>span:last-child{border-bottom:0}.pati-preview-assignments strong{color:var(--amber);font-size:.59rem;text-transform:uppercase}.pati-day-card.holiday{border-color:var(--coral-border);background:var(--coral-soft)}.non-teaching-label,.pati-no-roster{margin:0;color:var(--muted);padding:12px 7px;font-size:.65rem;font-weight:750;text-align:center}.non-teaching-label{color:var(--coral)}.pati-save-bar{display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid var(--border);padding:10px}.pati-save-message{color:var(--green);font-size:.68rem;font-weight:800}.pati-save-message.error{color:var(--coral)}.admin-block{min-width:0;border:1px solid var(--border);border-radius:6px;background:var(--surface-subtle);padding:10px}.admin-block-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.admin-block-head h2{margin:0;font-size:.9rem}.upload{display:inline-flex;min-height:34px;align-items:center;border:1px solid var(--primary);border-radius:var(--radius-small);background:var(--primary);color:var(--on-primary);padding:0 10px;font-size:.74rem;font-weight:800;cursor:pointer}.upload-secondary{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary-strong)}.upload input{display:none}.upload.disabled{cursor:not-allowed;opacity:.45}.setup-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.release-notes-panel{margin-top:8px}.release-notes-panel .admin-icon{font-family:Georgia,serif;font-weight:800}.release-notes-body{display:grid;gap:0;padding:0 12px 12px}.release-note{padding:12px 2px}.release-note+.release-note{border-top:1px solid var(--border)}.release-note header{display:grid;gap:3px}.release-note header strong{color:var(--text);font-size:.78rem}.release-note time{color:var(--muted);font-size:.68rem;font-weight:700}.release-note ul{display:grid;gap:5px;margin:8px 0 0;padding-left:18px}.release-note li{color:var(--text-soft);font-size:.7rem;line-height:1.45}.setup-step{display:grid;grid-template-columns:26px minmax(0,1fr) auto auto 27px;min-height:50px;align-items:center;gap:7px;border:1px solid var(--border);border-left:3px solid var(--border-strong);border-radius:5px;background:var(--surface);padding:6px}.setup-step.complete{border-color:var(--green-border);border-left-color:var(--green);background:var(--green-soft)}.setup-step.locked{background:var(--surface-strong)}.setup-number{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:var(--surface-strong);color:var(--text-soft);font-size:.7rem;font-weight:900}.setup-step.complete .setup-number{background:var(--green);color:#fff}.setup-copy{min-width:0}.setup-copy strong,.setup-copy small{display:block;min-width:0}.setup-copy strong{font-size:.72rem}.setup-copy small{margin-top:2px;overflow:hidden;color:var(--muted);font-size:.61rem;text-overflow:ellipsis;white-space:nowrap}.setup-status{border:1px solid var(--border);border-radius:999px;color:var(--muted);padding:3px 7px;font-size:.58rem;font-weight:900;white-space:nowrap}.setup-step.complete .setup-status{border-color:var(--green-border);background:var(--surface);color:var(--green)}.setup-step .upload{min-height:29px;padding:0 8px;font-size:.65rem}.remove-upload{width:27px;min-width:27px;min-height:27px;border-color:var(--coral-border);background:var(--surface);color:var(--coral);padding:0;box-shadow:none}.remove-upload:hover{border-color:var(--coral);background:var(--coral-soft)}.empty,.alert{margin-top:10px;padding:24px;text-align:center}.empty h2{margin-bottom:4px;font-size:1rem}.empty.is-loading{display:grid;justify-items:center;gap:10px;color:var(--text)}.loading-spinner{width:26px;height:26px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:guardies-spin .8s linear infinite}@keyframes guardies-spin{to{transform:rotate(360deg)}}.empty p{margin-bottom:0;color:var(--muted);font-size:.82rem}.alert{border-color:var(--coral-border);background:var(--coral-soft);color:var(--coral);font-size:.8rem;font-weight:750}.workspace{margin-top:10px}.guard-layout{display:grid;grid-template-columns:350px minmax(0,1fr);gap:10px;align-items:start}.guard-layout.is-readonly{grid-template-columns:1fr}.teacher-view-tabs,.admin-view-tabs{display:flex;gap:4px;width:fit-content;margin-bottom:10px;border:1px solid var(--border);border-radius:7px;background:var(--surface);padding:4px;box-shadow:var(--shadow-sm)}.teacher-view-tabs button,.admin-view-tabs button,.admin-view-tabs .diagnostics-tab{min-height:34px;border-color:transparent;background:transparent;color:var(--muted);box-shadow:none}.admin-view-tabs .diagnostics-tab{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:5px;padding:.35rem .7rem;font:inherit;font-size:.82rem;font-weight:800;text-decoration:none}.admin-view-tabs .diagnostics-tab:hover,.admin-view-tabs .diagnostics-tab:focus-visible{border-color:var(--border-strong);color:var(--text)}.teacher-view-tabs button.active,.admin-view-tabs button.active{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary-strong)}.guard-counts-panel .admin-icon{font-weight:900}.teacher-exclusions-panel .admin-icon{color:var(--amber);font-weight:900}.observation-presets-panel .admin-icon{color:var(--primary-strong);font-weight:900}.observation-preset-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px}.observation-preset-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.observation-preset-list>span{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--primary-border);border-radius:999px;background:var(--primary-soft);color:var(--text);padding:4px 5px 4px 9px;font-size:.7rem;font-weight:700}.observation-preset-list button{width:22px;min-width:22px;min-height:22px;border:0;background:transparent;color:var(--coral);padding:0;box-shadow:none}.teacher-exclusions-toolbar{display:grid;grid-template-columns:minmax(110px,170px) minmax(220px,420px);align-items:center;gap:10px;margin-bottom:10px}.teacher-exclusions-toolbar label{font-size:.76rem;font-weight:850}.teacher-exclusions-table{overflow:hidden;border:1px solid var(--border);border-radius:7px}.teacher-exclusions-row{display:grid;grid-template-columns:minmax(230px,1fr) minmax(260px,1fr) 90px;align-items:center;min-height:46px;border-top:1px solid var(--border-soft);cursor:pointer}.teacher-exclusions-row:first-child{border-top:0}.teacher-exclusions-row>*{min-width:0;padding:7px 10px}.teacher-exclusions-row strong,.teacher-exclusions-row small{display:block}.teacher-exclusions-row small,.teacher-email{color:var(--muted);font-size:.7rem}.teacher-exclusions-columns{min-height:32px;background:var(--surface-2);color:var(--muted);cursor:default;font-size:.67rem;font-weight:850;text-transform:uppercase}.teacher-exclusion-check{display:grid;place-items:center}.teacher-exclusion-check input{width:18px;height:18px;accent-color:var(--coral)}.guard-count-toolbar{display:grid;grid-template-columns:auto minmax(180px,1fr) auto minmax(220px,1fr);align-items:center;gap:10px;margin-bottom:10px}.guard-count-toolbar label{font-size:.76rem;font-weight:850}.guard-count-table{overflow:hidden;border:1px solid var(--border);border-radius:7px}.guard-count-row{display:grid;grid-template-columns:minmax(240px,1fr) 130px 150px;align-items:center;min-height:42px;border-top:1px solid var(--border-soft)}.guard-count-row:first-child{border-top:0}.guard-count-row>*{padding:7px 10px}.guard-count-row>:not(:first-child){text-align:center}.guard-count-columns{min-height:32px;background:var(--surface-2);color:var(--muted);font-size:.67rem;font-weight:850;text-transform:uppercase}.guard-count-row label{display:flex;align-items:center;justify-content:center;gap:7px}.guard-count-row input{width:68px;text-align:center}.guard-count-row small{color:var(--success);font-size:.65rem;font-weight:800}.guard-count-error{margin:8px 0 0;color:var(--coral);font-size:.75rem;font-weight:750}.guard-reset-button{margin-top:12px;border-color:var(--coral-border);background:var(--coral-soft);color:var(--coral)}.guard-reset-button:hover:not(:disabled){border-color:var(--coral)}.my-guards-panel{display:grid;gap:12px;border:1px solid var(--border);border-radius:7px;background:var(--surface);margin-bottom:10px;padding:12px;box-shadow:var(--shadow-sm)}.my-guards-head h2,.my-guards-head p,.my-guards-section h3{margin:0}.my-guards-head h2{font-size:1.05rem}.my-guards-section{display:grid;gap:6px}.my-guards-section h3{font-size:.9rem}.my-guards-note{margin:0;color:var(--muted);font-size:var(--text-sm, .8rem)}.my-guards-note.is-error{color:var(--coral)}.my-guards-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.my-guards-totals article{display:flex;align-items:baseline;gap:8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-subtle);padding:8px 10px}.my-guards-totals strong{font-size:1.4rem;line-height:1}.my-guards-totals span{color:var(--muted);font-size:.78rem;font-weight:700}.my-upcoming,.my-upcoming ul,.my-mails,.my-history{display:grid;gap:6px;margin:0;padding:0;list-style:none}.my-upcoming>li{border:1px solid var(--border);border-radius:6px;padding:7px 9px}.my-upcoming>li.is-today{border-color:var(--primary-border);background:var(--primary-soft)}.my-upcoming-day{display:block;margin-bottom:4px;text-transform:capitalize}.my-upcoming ul li{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:.82rem}.my-upcoming-hour{min-width:7.5rem;color:var(--muted);font-weight:800}.my-upcoming-comment{flex-basis:100%;color:var(--muted)}.my-mails li,.my-history li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;border-bottom:1px solid var(--border);padding:4px 0;font-size:.82rem}.my-mails li span,.my-mails li small{color:var(--muted)}.my-mails li small{grid-column:2;grid-row:1 / span 2;align-self:center;font-weight:700}.my-mails li.is-pendent small{color:var(--amber-strong)}.my-history li{grid-template-columns:7.5rem 4rem minmax(0,1fr)}.my-history li span{color:var(--muted)}.my-timetable-scroll{overflow-x:auto}.my-timetable{width:100%;min-width:560px;border-collapse:collapse;font-size:.74rem}.my-timetable th,.my-timetable td{border:1px solid var(--border);padding:4px 5px;vertical-align:top;text-align:left}.my-timetable thead th{background:var(--surface-subtle)}.my-timetable tbody th{width:3.5rem;color:var(--muted);white-space:nowrap}.my-timetable td.is-class{background:var(--surface-subtle)}.my-timetable td.is-guard{background:var(--primary-soft)}.my-timetable td.is-patio{background:var(--amber-soft)}.my-timetable-item{display:grid}.my-timetable-item small{color:var(--muted)}.my-guards-legend{display:flex;gap:10px;margin:0;font-size:.72rem}.my-guards-legend span{border-radius:4px;padding:1px 6px}.my-guards-legend .is-guard{background:var(--primary-soft)}.my-guards-legend .is-patio{background:var(--amber-soft)}.my-guards-legend .is-class{background:var(--surface-subtle);border:1px solid var(--border)}.guard-statistics-panel{display:grid;gap:12px;border:1px solid var(--border);border-radius:7px;background:var(--surface);margin-bottom:10px;padding:12px;box-shadow:var(--shadow-sm)}.guard-statistics-head h2,.guard-statistics-head p{margin:0}.guard-statistics-head h2{font-size:1.05rem}.guard-statistics-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.guard-statistics-totals article{display:grid;gap:3px;border:1px solid var(--primary-border);border-radius:6px;background:var(--primary-soft);padding:10px 12px}.guard-statistics-totals span{color:var(--text-soft);font-size:.64rem;font-weight:800;text-transform:uppercase}.guard-statistics-totals strong{color:var(--primary-strong);font-size:1.45rem;line-height:1}.guard-statistics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.guard-ranking-card{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:6px;background:var(--surface-subtle)}.guard-ranking-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--border);background:var(--surface-strong);padding:8px 10px}.guard-ranking-card>header h3{margin:0;color:var(--text);font-size:.78rem}.guard-ranking-card>header span{border-radius:999px;background:var(--primary-soft);color:var(--primary-strong);padding:2px 6px;font-size:.55rem;font-weight:850;text-transform:uppercase}.guard-ranking-card ol{display:grid;margin:0;padding:0;list-style:none}.guard-ranking-card li{display:grid;grid-template-columns:24px minmax(0,1fr) auto 38px;align-items:center;gap:7px;min-height:42px;border-top:1px solid var(--border-soft);padding:6px 8px}.guard-ranking-card li:first-child{border-top:0}.guard-ranking-card li>b{display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:var(--surface-strong);color:var(--muted);font-size:.61rem}.guard-ranking-card li>strong{min-width:0;overflow:hidden;color:var(--text-soft);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.guard-ranking-breakdown{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px}.guard-ranking-breakdown em{border:1px solid var(--border-soft);border-radius:999px;background:var(--surface);color:var(--muted);padding:2px 5px;font-size:.54rem;font-style:normal;font-weight:800;white-space:nowrap}.guard-ranking-card li>mark{display:grid;min-width:34px;min-height:28px;place-items:center;border-radius:5px;background:var(--primary-soft);color:var(--primary-strong);font-size:.82rem;font-weight:900}.guard-slot-ranking li{grid-template-columns:24px minmax(0,1fr) 38px}.teacher-stats-panel{display:grid;gap:10px;border:1px solid var(--border);border-radius:7px;background:var(--surface);margin-bottom:10px;padding:12px;box-shadow:var(--shadow-sm)}.teacher-stats-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.teacher-stats-head h2,.teacher-stats-head p{margin:0}.teacher-stats-head h2{font-size:1rem}.teacher-stats-head>div:first-child>p:last-child{margin-top:3px;color:var(--muted);font-size:.67rem}.guard-matrix-frame{max-height:680px;overflow:auto;border:1px solid var(--border);border-radius:6px;background:var(--surface)}.guard-matrix{min-width:1040px}.guard-matrix-row{display:grid;grid-template-columns:92px repeat(5,minmax(180px,1fr));min-height:86px;border-top:1px solid var(--border)}.guard-matrix-row:first-child{border-top:0}.guard-matrix-columns{position:sticky;z-index:3;top:0;min-height:34px;background:var(--surface-strong)}.guard-matrix-columns>*{display:grid;place-items:center;border-left:1px solid var(--border);color:var(--primary-strong);padding:7px;font-size:.66rem;text-transform:uppercase}.guard-matrix-columns>:first-child{border-left:0}.guard-matrix-corner,.guard-matrix-hour{position:sticky;z-index:2;left:0;background:var(--surface-strong)}.guard-matrix-corner{z-index:4}.guard-matrix-hour{display:grid;align-content:center;justify-items:center;border-right:1px solid var(--border);color:var(--primary-strong)}.guard-matrix-hour strong{font-size:.78rem}.guard-matrix-hour small{color:var(--muted);font-size:.58rem;font-weight:750}.guard-matrix-cell{display:grid;min-width:0;align-content:start;gap:4px;border-left:1px solid var(--border);padding:6px}.guard-matrix-cell .guard-roster-teacher{min-height:29px}.guard-matrix-cell .guard-roster-teacher span{font-size:.61rem;white-space:normal}.guard-matrix-cell .guard-roster-teacher b{flex-basis:auto;min-width:34px;padding:0 4px;white-space:nowrap}.guard-matrix-empty{align-self:center;color:var(--muted);text-align:center}.guard-roster-teacher{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--border-soft);border-radius:4px;background:var(--surface);padding:4px 5px 4px 7px;cursor:pointer}.guard-roster-teacher:focus-visible{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 30%,transparent)}.guard-roster-teacher.is-mine{border-color:var(--green-border);background:var(--green-soft)}.guard-roster-teacher.selected{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 22%,transparent)}.guard-roster-teacher span{overflow:hidden;color:var(--text-soft);font-size:.64rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.guard-roster-teacher b{display:grid;flex:0 0 24px;min-height:22px;place-items:center;border-radius:4px;background:var(--primary-soft);color:var(--primary-strong);font-size:.72rem}.guard-roster-teacher.heat-0 b{background:var(--surface-strong);color:var(--muted)}.guard-roster-teacher.heat-1 b{border-color:color-mix(in srgb,var(--primary) 22%,var(--border));background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-strong)}.guard-roster-teacher.heat-2 b{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));background:color-mix(in srgb,var(--primary) 20%,var(--surface));color:var(--primary-strong)}.guard-roster-teacher.heat-3 b{border-color:color-mix(in srgb,var(--amber) 45%,var(--border));background:color-mix(in srgb,var(--amber) 24%,var(--surface));color:var(--amber)}.guard-roster-teacher.heat-4 b{border-color:color-mix(in srgb,var(--amber) 62%,var(--border));background:color-mix(in srgb,var(--amber) 38%,var(--surface));color:var(--text)}.guard-roster-teacher.heat-5 b{border-color:color-mix(in srgb,var(--coral) 68%,var(--border));background:color-mix(in srgb,var(--coral) 42%,var(--surface));color:var(--text)}.guard-history-tooltip{position:absolute;z-index:20;top:calc(100% + 6px);left:0;display:none;min-width:190px;max-width:280px;border:1px solid var(--border);border-radius:6px;background:var(--surface);box-shadow:0 8px 22px color-mix(in srgb,var(--text) 18%,transparent);color:var(--text);padding:7px 8px;white-space:pre-line;font-size:.68rem;font-weight:700;line-height:1.35;pointer-events:none}.guard-roster-teacher{position:relative}.guard-roster-teacher:hover .guard-history-tooltip,.guard-roster-teacher:focus-visible .guard-history-tooltip{display:block}.entry-panel{position:sticky;top:66px;max-height:calc(100vh - 78px);overflow:auto}.entry-head{position:sticky;top:0;z-index:6;display:grid;gap:8px;border-bottom:1px solid var(--border);background:var(--surface);padding:10px}.entry-head h2,.day-panel-head h2{margin:0;font-size:1rem}.mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:3px;border:1px solid var(--border);border-radius:5px;background:var(--surface-strong);padding:3px}.mode-tab{min-height:31px;border-color:transparent;background:transparent;color:var(--muted);padding:0 8px}.mode-tab:hover{border-color:transparent;background:var(--surface);color:var(--text)}.mode-tab.active{border-color:var(--primary-border);background:var(--surface);color:var(--primary-strong);box-shadow:var(--shadow-small)}.mode-panel{padding:10px}.mode-panel-head,.group-selection-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.mode-panel-head{margin:10px 0 7px;border-top:1px solid var(--border);padding-top:9px}.mode-panel-head h3{margin:0;min-width:0;overflow:hidden;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.schedule-actions{display:flex;gap:5px}.teacher-search,.group-picker{position:relative}.teacher-search>label,.group-picker>label{display:block;margin-bottom:4px}.search-results{display:grid;gap:4px;max-height:196px;overflow:auto}.teacher-search>.search-results,.group-picker>.search-results{position:absolute;right:0;left:0;z-index:15;margin-top:4px;border-radius:6px;background:var(--surface);box-shadow:0 12px 28px #1f2d4338}.search-result{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:33px;align-items:center;gap:7px;border-color:var(--border);background:var(--surface);color:var(--text);padding:4px 8px;text-align:left}.search-result:hover,.search-result.active,.search-result.suggested{border-color:var(--primary);background:var(--primary-soft);color:var(--text)}.search-result strong{min-width:0;overflow:hidden;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.search-result span,.search-empty{color:var(--muted);font-size:.68rem;font-weight:750}.search-empty{border:1px dashed var(--border);border-radius:5px;background:var(--surface);padding:8px}.schedule-grid{display:grid;gap:5px}.schedule-item{display:grid;grid-template-columns:17px 48px minmax(0,1fr) auto;min-height:43px;align-items:center;gap:7px;border:1px solid var(--border);border-left:3px solid var(--primary-border);border-radius:5px;background:var(--surface-subtle);padding:5px 7px;color:var(--text);cursor:pointer}.schedule-item:hover{border-color:var(--primary-border)}.schedule-item input{width:15px;height:15px;margin:0;accent-color:var(--primary)}.schedule-item-muted{border-left-color:var(--border);cursor:default;opacity:.72}.schedule-time{color:var(--primary-strong);font-size:.72rem;font-weight:850}.schedule-main{min-width:0}.schedule-main strong,.schedule-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-main strong{font-size:.75rem}.schedule-main small{margin-top:1px;color:var(--muted);font-size:.65rem;font-weight:650}.schedule-type{border-radius:999px;background:var(--surface-strong);color:var(--muted);padding:3px 6px;font-size:.6rem;font-weight:850}.schedule-empty{display:grid;gap:7px}.day-jumps{display:flex;flex-wrap:wrap;gap:5px}.group-search-row{display:block}.group-selection-head{margin:10px 0 6px}.selected-groups{display:grid;gap:6px}.selected-group-card{border:1px solid var(--border);border-left:3px solid var(--green);border-radius:5px;background:var(--surface-subtle);padding:7px}.selected-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.selected-group-head strong{font-size:.78rem}.outing-hours{display:flex;flex-wrap:wrap;align-items:end;gap:4px 10px;margin:6px 0;font-size:.74rem}.outing-hours>span{flex-basis:100%;color:var(--muted);font-weight:800}.outing-hours label{display:grid;gap:2px;color:var(--muted);font-weight:700}.outing-hours select{min-width:7rem}.group-completeness{display:flex;align-items:center;gap:8px;border:1px solid var(--green-border);border-radius:5px;background:var(--green-soft);margin-top:7px;padding:7px 8px;cursor:pointer}.group-completeness.is-partial{border-color:var(--amber-border);background:var(--amber-soft)}.group-completeness span,.group-completeness strong,.group-completeness small{display:block}.group-completeness strong{color:var(--text);font-size:.68rem}.group-completeness small{margin-top:1px;color:var(--muted);font-size:.59rem;font-weight:600}.selected-group-head button,.icon-remove{width:25px;min-width:25px;min-height:25px;border-color:var(--coral-border);background:var(--surface);color:var(--coral);padding:0;box-shadow:none}.selected-group-head .remove-group{display:inline-flex;width:auto;align-items:center;gap:4px;padding:0 7px;font-size:.66rem}.selected-group-head .remove-group span{font-weight:900}.selected-group-head button:hover,.icon-remove:hover{border-color:var(--coral);background:var(--coral-soft);color:var(--coral)}.group-teacher-list{display:grid;gap:3px}.companion-picker{display:grid;gap:5px;margin:7px 0;border-radius:5px;background:var(--surface-strong);padding:7px}.companion-picker label{display:grid;gap:3px;color:var(--text-soft);font-size:.62rem;font-weight:750}.companion-picker select{width:100%;min-height:32px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);padding:0 7px}.companion-chips{display:flex;flex-wrap:wrap;gap:4px}.companion-chips>small{color:var(--muted);font-size:.58rem}.companion-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--green-border);border-radius:999px;background:var(--green-soft);color:var(--green);padding:2px 3px 2px 7px;font-size:.59rem;font-weight:750}.companion-chip button{min-width:20px;min-height:20px;border:0;border-radius:50%;background:transparent;color:inherit;padding:0}.group-teacher-title{margin:7px 0 4px;color:var(--text-soft);font-size:.62rem;font-weight:800}.group-teacher{display:grid;grid-template-columns:13px minmax(0,1fr);min-height:29px;align-items:center;gap:5px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text-soft);padding:3px 5px;font-size:.62rem;cursor:pointer}.group-teacher:has(input:checked){border-color:var(--green-border);background:var(--green-soft);color:var(--green)}.group-teacher input{width:12px;height:12px;margin:0;accent-color:var(--green)}.group-teacher span,.group-teacher b,.group-teacher small{display:block;min-width:0}.group-teacher b{overflow:hidden;color:var(--text);font-size:.64rem;text-overflow:ellipsis;white-space:nowrap}.group-teacher .shared-group-warning{color:var(--amber);font-weight:750;white-space:normal}.group-teacher small{margin-top:1px;overflow:hidden;color:var(--muted);font-size:.57rem;text-overflow:ellipsis;white-space:nowrap}.released-disclosure{margin-top:10px;border-top:1px solid var(--border)}.released-disclosure>summary{padding:9px 1px 0;color:var(--text-soft);font-size:.75rem;font-weight:800;cursor:pointer}.released-list{display:grid;gap:5px;margin-top:7px}.released-session{border:1px solid var(--border);border-radius:5px;background:var(--surface-subtle);overflow:hidden}.released-session .coverage-session-head{min-height:30px}.released-session-list{display:grid;gap:4px;padding:5px}.released-item{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:5px;border-left:3px solid var(--green-border);background:var(--surface);padding:5px 6px}.released-item.absent{grid-template-columns:minmax(0,1fr) auto;border-left-color:var(--coral)}.released-item .pati-absence-badge{align-self:center}.released-item strong,.released-item span{display:block}.released-item strong{overflow:hidden;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.released-item span{margin-top:1px;color:var(--muted);font-size:.61rem;font-weight:700}.day-panel{min-width:0;overflow:hidden;overflow:clip}.day-panel-head{display:flex;min-height:51px;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);padding:8px 10px}.day-panel-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.auto-assignment-feedback{color:var(--muted);font-size:.65rem;font-weight:800}.auto-assignment-feedback.is-success{color:var(--green)}.auto-assignment-feedback.is-error{color:var(--coral)}.coverage-list{display:grid;gap:6px;background:var(--surface-strong);padding:7px}.outings-line-slot{position:sticky;z-index:6;top:var(--app-nav-height, 0px)}.outings-line-slot:not(:empty){background:var(--surface-strong);padding:7px 7px 0}.outings-line{margin:0;border:1px solid var(--amber-border);border-radius:5px;background:var(--amber-soft);color:var(--text);padding:6px 9px;font-size:.74rem;line-height:1.35}.outings-line-title{color:var(--amber-strong);font-weight:900}.outing-item strong{font-weight:850}.outing-separator{color:var(--muted)}.coverage-session{border:1px solid color-mix(in srgb,var(--border-strong) 82%,var(--primary-border));border-radius:5px;background:var(--surface);box-shadow:0 1px 4px color-mix(in srgb,var(--text) 11%,transparent);overflow:hidden}.coverage-session.pati-session{border:2px solid var(--amber-border);background:var(--amber-soft);box-shadow:inset 4px 0 0 var(--amber),0 1px 4px color-mix(in srgb,var(--text) 11%,transparent)}.pati-session .coverage-session-head{min-height:42px;border-bottom-color:var(--amber-border);background:color-mix(in srgb,var(--amber-soft) 72%,var(--surface));padding-left:12px}.pati-session .coverage-session-head h3{color:var(--amber);font-size:.88rem;font-weight:950;letter-spacing:.025em;text-transform:uppercase}.pati-session .coverage-session-head span{color:var(--amber);font-weight:850}.coverage-session-head{display:flex;min-height:40px;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--primary-border);background:linear-gradient(90deg,var(--primary-soft),var(--surface-subtle) 72%);padding:6px 10px 6px 13px;box-shadow:inset 4px 0 0 var(--primary)}.coverage-session-head h3{margin:0;color:var(--primary-strong);font-size:.82rem;font-weight:900;letter-spacing:.015em}.coverage-session-head span{border:1px solid var(--primary-border);border-radius:999px;background:var(--surface);color:var(--text-soft);padding:3px 7px;font-size:.64rem;font-weight:850}.pati-session .coverage-session-head{box-shadow:inset 4px 0 0 var(--amber)}.pati-session .coverage-session-head span{border-color:var(--amber-border);background:color-mix(in srgb,var(--amber-soft) 60%,var(--surface))}.coverage-session-list{padding:5px}.coverage-empty{min-height:28px;border:1px dashed var(--border);border-radius:4px;color:var(--muted);padding:6px 8px;text-align:center;font-size:.7rem;font-weight:650}.coverage-table{display:grid;gap:4px}.coverage-row{display:grid;grid-template-columns:minmax(145px,.92fr) minmax(175px,1.12fr) minmax(180px,1.1fr) minmax(150px,.9fr);gap:5px;align-items:stretch}.coverage-row-head{padding:0 4px 1px;color:var(--muted);font-size:.58rem;font-weight:850;text-transform:uppercase}.coverage-professor-cell,.coverage-detail-cell,.coverage-assignment-cell,.coverage-comment-cell{min-width:0;border:1px solid var(--border);border-radius:4px;background:var(--surface);padding:5px 6px}.coverage-professor-cell{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;border-color:var(--coral-border);border-left:3px solid var(--coral);background:var(--coral-soft)}.coverage-professor-cell .cell-kicker{grid-column:1}.coverage-professor-cell strong{grid-column:1;min-width:0;overflow:hidden;font-size:.72rem;line-height:1.15;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.coverage-professor-cell .icon-remove{grid-column:2;grid-row:1 / span 2}.coverage-detail-cell{border-color:var(--primary-border);background:var(--primary-soft)}.coverage-detail-cell strong,.coverage-detail-cell span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coverage-detail-cell strong{font-size:.71rem}.coverage-detail-cell .coverage-group-label,.coverage-detail-cell .coverage-room-label{font-weight:900}.coverage-detail-cell .coverage-room-label{margin-top:2px;font-size:.68rem}.coverage-detail-cell span:not(.cell-kicker){margin-top:1px;color:var(--text-soft);font-size:.64rem}.coverage-assignment-cell{display:grid;gap:3px;align-content:start}.coverage-assignment-cell select{min-height:31px;font-size:.7rem}.readonly-assignment,.readonly-comment{display:block;align-self:center;font-size:.7rem;line-height:1.25}.readonly-assignment.assigned{color:var(--green)}.readonly-assignment.pending{color:var(--coral)}.readonly-comment{color:var(--text-soft)}.coverage-assignment-cell.has-released-candidates{border-color:var(--green-border);background:var(--green-soft)}.coverage-assignment-cell.has-released-candidates select{border-color:var(--green-border);background:var(--surface);font-weight:750}.coverage-assignment-cell .candidate-option{background:var(--surface);color:var(--text-soft)}.coverage-assignment-cell .candidate-released{color:var(--green);font-weight:800}.coverage-assignment-cell .candidate-outside-duty{color:var(--amber);font-weight:750}.coverage-assignment-cell .candidate-unavailable{background:var(--coral-soft);color:var(--coral);font-weight:800}.coverage-assignment-cell.only-unavailable{border-color:var(--coral-border);background:var(--coral-soft)}.coverage-assignment-cell.only-unavailable select{border-color:var(--coral-border)}.co-teacher-badge{color:var(--primary-strong);font-size:.62rem;font-weight:800}.coverage-comment-cell{display:grid;align-content:start;gap:4px}.coverage-comment-cell select{min-height:28px;font-size:.65rem}.coverage-comment-cell textarea{min-height:31px;max-height:72px;border:0;background:transparent;padding:2px;font-size:.7rem;line-height:1.25}.cell-kicker{display:block;margin-bottom:2px;color:var(--muted);font-size:.55rem;font-weight:850;text-transform:uppercase}.covered{border-color:var(--green-border)}.covered .coverage-professor-cell{border-color:var(--green-border);border-left-color:var(--green);background:var(--green-soft)}.convivencia-badge{color:var(--green);font-size:.58rem;font-weight:900;text-transform:uppercase}.pati-info-strip{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:start;gap:8px;border-bottom:1px solid var(--amber-border);background:var(--amber-soft);padding:6px 7px}.pati-info-strip>span{color:var(--amber);font-size:.58rem;font-weight:900;text-transform:uppercase}.pati-content{display:grid;min-width:0;gap:6px}.pati-zone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:5px}.pati-zone-card{display:grid;grid-template-rows:auto minmax(2.25em,auto) 17px;align-content:start;gap:2px;box-sizing:border-box;min-width:0;height:76px;border:1px solid var(--amber-border);border-radius:4px;background:var(--surface);color:var(--text-soft);padding:6px 7px;font-size:.65rem}.pati-zone-name{display:block;min-width:0;overflow:hidden;color:var(--amber);font-size:.78rem;font-weight:900;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.pati-zone-select{display:block;width:100%;min-width:0;height:auto;min-height:0;overflow:hidden;border:0;border-radius:3px;background:transparent;color:var(--amber);padding:0 18px 0 0;font-size:.78rem;font-weight:900;line-height:1.1;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.pati-zone-select:hover,.pati-zone-select:focus-visible{background:var(--amber-soft);outline:2px solid var(--amber-border);outline-offset:1px}.pati-teacher-name{display:-webkit-box;min-width:0;overflow:hidden;color:var(--text-soft);font-size:.63rem;font-weight:750;line-height:1.12;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.pati-zone-card.absent{border:2px solid var(--coral);background:var(--coral-soft);padding:5px 6px}.pati-zone-card.absent .pati-zone-name,.pati-zone-card.absent .pati-zone-select{color:var(--coral)}.pati-absence-badge{align-self:end;justify-self:start;border-radius:999px;background:var(--coral);color:#fff;padding:2px 6px;font-size:.54rem;font-weight:900;line-height:1.2;text-transform:uppercase}.pati-override-badge{align-self:end;justify-self:start;border:1px solid var(--amber-border);border-radius:999px;background:var(--amber-soft);color:var(--amber);padding:1px 5px;font-size:.52rem;font-weight:850;line-height:1.2;text-transform:uppercase}.pati-card-spacer{visibility:hidden}.pati-observation{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:7px;border-top:1px solid var(--amber-border);padding-top:6px}.pati-observation>span{color:var(--amber);font-size:.58rem;font-weight:900;text-transform:uppercase}.pati-observation textarea{width:100%;min-height:34px;resize:vertical;border-color:var(--amber-border);background:var(--surface);font-size:.68rem}.seventh-observation{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:7px;border-top:1px solid var(--border);padding:7px}.seventh-observation>span{color:var(--text-soft);font-size:.62rem;font-weight:900;text-transform:uppercase}.seventh-observation textarea{width:100%;min-height:42px;resize:vertical;font-size:.68rem}.seventh-observation-readonly{margin:0;border-top:1px solid var(--border);padding:7px;color:var(--text-soft);font-size:.68rem;font-weight:700}@media screen{.pati-observation-readonly,.pati-observation-print{border-top:1px solid var(--amber-border);padding-top:5px;color:var(--text-soft)!important;font-weight:700}}.pati-observation-print:empty{display:none}.pati-info-strip p{margin:0;color:var(--muted);font-size:.65rem}.pati-info-strip.holiday{border-color:var(--coral-border);background:var(--coral-soft)}.pati-info-strip.holiday>span,.pati-info-strip.holiday p{color:var(--coral)}.convivencia-badge{justify-self:start;border-radius:999px;background:var(--green-soft);padding:2px 5px}.convivencia-admin-list{max-height:470px;overflow:auto}.convivencia-week{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:6px}.convivencia-day{border:1px solid var(--border);border-radius:5px;background:var(--surface);overflow:hidden}.convivencia-day h3{margin:0;border-bottom:1px solid var(--primary-border);background:var(--primary-soft);color:var(--primary-strong);padding:6px 7px;font-size:.72rem}.convivencia-day-slots{display:grid}.convivencia-slot{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:4px;border-bottom:1px solid var(--border);padding:4px}.convivencia-slot:last-child{border-bottom:0}.convivencia-slot.covered{background:var(--green-soft)}.convivencia-slot.without-guards{background:var(--surface-strong)}.convivencia-slot.without-guards select{color:var(--muted)}.convivencia-slot-time{text-align:center}.convivencia-slot-time strong,.convivencia-slot-time small{display:block}.convivencia-slot-time strong{color:var(--text);font-size:.64rem}.convivencia-slot-time small{margin-top:1px;color:var(--muted);font-size:.56rem}.convivencia-slot select{min-height:30px;padding:0 5px;font-size:.62rem}.empty-small{border:1px dashed var(--border);border-radius:5px;color:var(--muted);padding:10px;text-align:center;font-size:.7rem;font-weight:650}@media screen{.print-header,.print-only{display:none!important}}@media(max-width:1120px){.work-header{grid-template-columns:auto minmax(420px,1fr)}.day-command-bar{grid-column:1 / -1;justify-content:flex-end;border-top:1px solid var(--border);padding-top:7px}.admin-body,.pati-admin-grid{grid-template-columns:1fr}.pati-calendar-block,.pati-preview-block,.convivencia-admin{grid-column:auto}.convivencia-week{grid-template-columns:repeat(3,minmax(160px,1fr))}.guard-layout{grid-template-columns:320px minmax(0,1fr)}.coverage-row{grid-template-columns:minmax(135px,.9fr) minmax(150px,1fr) minmax(160px,1fr)}.coverage-row-head span:last-child{display:none}.coverage-comment-cell{grid-column:1 / -1}.guard-layout.is-readonly .coverage-row{grid-template-columns:minmax(135px,.9fr) minmax(165px,1.1fr) minmax(155px,1fr) minmax(135px,.9fr)}.guard-layout.is-readonly .coverage-row-head span:last-child{display:block}.guard-layout.is-readonly .coverage-comment-cell{grid-column:auto}}@media(max-width:820px){.nav-inner{grid-template-columns:1fr auto}.work-header{grid-template-columns:1fr;gap:9px}.work-title{display:flex;align-items:baseline;gap:8px}.day-command-bar{grid-column:auto}.admin-body{grid-template-columns:1fr}.convivencia-admin{grid-column:auto}.convivencia-week{grid-template-columns:repeat(2,minmax(150px,1fr))}.pati-week-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.guard-layout{grid-template-columns:1fr}.entry-panel{position:static;max-height:none}.coverage-row{grid-template-columns:minmax(130px,.85fr) minmax(160px,1fr) minmax(170px,1fr)}}@media(max-width:620px){.page,.nav-inner{width:min(100% - 12px,1480px)}.brand small{display:none}.work-header{padding:9px}.day-command-bar{flex-wrap:wrap;justify-content:flex-start}.teacher-stats-head{display:grid}.teacher-view-tabs,.admin-view-tabs{width:100%;flex-wrap:wrap;min-width:0}.teacher-view-tabs button,.admin-view-tabs button,.admin-view-tabs .diagnostics-tab{flex:1}.guard-statistics-grid{grid-template-columns:1fr}.guard-ranking-card li{grid-template-columns:24px minmax(0,1fr) auto 34px;gap:5px}.guard-slot-ranking li{grid-template-columns:24px minmax(0,1fr) 34px}.guard-ranking-breakdown{display:grid;justify-items:end}.guard-count-toolbar,.observation-preset-form,.teacher-exclusions-toolbar{grid-template-columns:1fr}.teacher-exclusions-columns{display:none}.teacher-exclusions-row{grid-template-columns:minmax(0,1fr) 48px}.teacher-exclusions-row>:first-child{grid-column:1}.teacher-exclusions-row .teacher-email{grid-column:1;padding-top:0}.teacher-exclusion-check{grid-column:2;grid-row:1 / span 2}.guard-count-row{grid-template-columns:minmax(135px,1fr) 82px 96px}.guard-count-row>*{padding-inline:4px;font-size:.62rem}.guard-matrix{min-width:900px}.guard-matrix-row{grid-template-columns:74px repeat(5,minmax(160px,1fr))}.range-builder,.outing-range{grid-template-columns:1fr 1fr}.range-copy,.range-builder button,.outing-range button{grid-column:1 / -1}.cache-info{display:none}.admin-panel>summary{grid-template-columns:1fr auto}.upload{justify-content:center}.setup-step{grid-template-columns:26px minmax(0,1fr) auto 27px}.setup-number,.setup-step .upload,.remove-upload{grid-row:1 / span 2}.setup-copy{grid-column:2;grid-row:1}.setup-status{grid-column:2;grid-row:2;justify-self:start}.convivencia-week{grid-template-columns:1fr}.pati-admin-grid{padding:7px}.pati-roster-row{grid-template-columns:minmax(0,1fr) 30px}.pati-roster-row label{grid-column:1 / -1;grid-row:2}.pati-holiday-form,.pati-week-preview{grid-template-columns:1fr}.pati-save-bar{align-items:stretch;flex-direction:column}.pati-info-strip,.pati-observation,.seventh-observation,.coverage-row{grid-template-columns:1fr}.coverage-row-head{display:none}.coverage-comment-cell{grid-column:auto}.guard-layout.is-readonly .coverage-session-list{overflow-x:auto}.guard-layout.is-readonly .coverage-table{min-width:640px}.coverage-professor-cell,.coverage-detail-cell,.coverage-assignment-cell,.coverage-comment-cell{min-height:40px}.companion-list{grid-template-columns:1fr}}body{font-family:Figtree,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em}button{border-radius:var(--radius-small);font-weight:700;transition:background-color .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease}button.ghost{border-radius:var(--radius-small);box-shadow:none}.work-header,.admin-panel,.entry-panel,.day-panel,.empty,.alert{border-radius:var(--radius)}}@layer redesign{:root{--shadow-sm: var(--shadow-small)}.app-nav{border-bottom:1px solid var(--border);background:var(--nav-bg);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.app-nav .nav-inner{display:flex;align-items:center;gap:14px;width:min(1480px,calc(100% - 32px));min-height:60px;margin:0 auto}.app-nav .brand{display:inline-flex;flex-shrink:0;align-items:center;gap:12px;color:var(--text);text-decoration:none}.app-nav .brand img{display:block;width:auto;height:36px}.dark .app-nav .brand img{border-radius:8px;background:#f5f4f0;padding:3px 6px}.app-nav .brand-title{border-left:1px solid var(--border);padding-left:12px;font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:-.01em}.nav-chip-button,.nav-icon-button,.nav-today{display:inline-flex;min-height:36px;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-small);background:transparent;color:var(--muted);padding:0 10px;font-size:var(--text-base);font-weight:600;box-shadow:none}.nav-chip-button{border-color:var(--border)}.nav-icon-button{width:36px;padding:0}.nav-chip-button:hover,.nav-icon-button:hover{border-color:var(--border);background:var(--surface-strong);color:var(--text)}.view-switch{display:inline-flex;flex-shrink:0;gap:2px;border-radius:11px;background:var(--surface-strong);padding:3px}.view-switch a{display:inline-flex;min-height:32px;align-items:center;border-radius:8px;padding:0 14px;color:var(--muted);font-size:var(--text-base);font-weight:600;text-decoration:none;transition:background-color .12s ease,color .12s ease}.view-switch a:hover{color:var(--text)}.view-switch a.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #1418201a}.nav-center{display:flex;flex:1 1 auto;justify-content:center;min-width:0}.nav-date{display:flex;align-items:center;gap:4px}.nav-date-pill{display:inline-flex;min-height:38px;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface);padding:0 4px 0 12px;color:var(--text);font-size:var(--text-md);font-weight:700;cursor:pointer}.nav-date-pill:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.nav-date-weekday{color:var(--muted);font-weight:600;text-transform:capitalize}.nav-date-pill.is-non-teaching .nav-date-weekday{color:var(--coral)}.nav-date-pill input[type=date]{width:auto;min-height:34px;border:0;background:transparent;padding:0 6px;color:inherit;font-weight:700;box-shadow:none}.nav-date-pill input[type=date]:focus-visible{box-shadow:none}.nav-today{min-height:30px;border-radius:999px;background:var(--primary-soft);color:var(--primary-strong);padding:0 12px;font-size:var(--text-sm)}.nav-today:hover{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary-strong)}.nav-today.is-today{background:transparent;color:var(--muted)}.nav-status{display:inline-flex;flex-shrink:0;align-items:center;gap:7px;color:var(--muted);font-size:var(--text-sm);font-weight:500;white-space:nowrap}.nav-status-dot{width:8px;height:8px;border-radius:999px;background:var(--green-dot)}.nav-status.is-saving .nav-status-dot,.nav-status.is-stale .nav-status-dot{background:var(--amber-dot)}.nav-status.is-error .nav-status-dot{background:var(--coral)}.nav-status.is-error{color:var(--coral);font-weight:700}@media(prefers-reduced-motion:no-preference){.nav-status.is-saving .nav-status-dot{animation:nav-status-pulse 1s ease-in-out infinite}}@keyframes nav-status-pulse{50%{opacity:.35}}.teacher-view-tabs,.admin-view-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:22px;width:100%;margin-bottom:18px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;padding:0;box-shadow:none}.teacher-view-tabs button,.admin-view-tabs button,.admin-view-tabs .diagnostics-tab{flex-shrink:0;white-space:nowrap;min-height:42px;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:0 2px;color:var(--muted);font-size:var(--text-base);font-weight:600}.teacher-view-tabs button:hover,.admin-view-tabs button:hover,.admin-view-tabs .diagnostics-tab:hover{border-color:transparent;border-bottom-color:var(--border-strong);background:transparent;color:var(--text)}.teacher-view-tabs button.active,.admin-view-tabs button.active{border-color:transparent;border-bottom-color:var(--primary);background:transparent;color:var(--text)}.work-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;min-height:0;border:0;background:transparent;padding:4px 0 8px;box-shadow:none}.work-title{display:grid;gap:4px;min-width:0}.work-title .kicker{margin:0;color:var(--muted);font-size:var(--text-xs);font-weight:600;letter-spacing:0;text-transform:none}.work-title h1{margin:0;font-size:var(--text-3xl);font-weight:700;line-height:1.1;letter-spacing:-.02em}.work-title-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.day-status-badge{display:inline-flex;min-height:24px;align-items:center;border-radius:999px;background:var(--surface-strong);padding:0 10px;color:var(--text);font-size:var(--text-xs);font-weight:700}.day-status-badge.is-published{background:var(--primary-soft);color:var(--primary-strong)}.day-status-badge.is-closed{background:var(--green-soft);color:var(--green)}.non-teaching-note{color:var(--coral);font-size:var(--text-sm);font-style:normal;font-weight:700}.work-header .day-command-bar{flex-wrap:wrap;min-height:0;border:0;padding:0}.work-header .day-command-bar>button{min-height:40px;padding:0 16px}.unclosed-days-warning{width:fit-content;max-width:100%;border:0;border-radius:999px;background:var(--amber-soft);padding:6px 14px;color:var(--amber);font-size:var(--text-sm)}.unclosed-days-warning strong{color:var(--amber)}@media(max-width:1100px){.nav-status-label,.nav-status-time{display:none}}@media(max-width:860px){.app-nav .nav-inner{flex-wrap:wrap;row-gap:8px;padding:10px 0}.nav-center{order:10;flex-basis:100%}.nav-date{width:100%;justify-content:center}.nav-date-pill{flex:0 1 340px;justify-content:center}.nav-status{margin-left:auto}}@media(max-width:520px){.app-nav .nav-inner{gap:8px;width:calc(100% - 20px)}.app-nav .brand img{height:30px}.app-nav .brand-title{display:none}.nav-date-pill{flex-basis:auto}.nav-chip-label{display:none}.nav-chip-button{width:36px;padding:0}.view-switch a{padding:0 10px}.work-title h1{font-size:var(--text-2xl)}}@media screen{.day-kpis{display:flex;flex-wrap:wrap;gap:10px;margin-left:auto}.day-kpi{display:grid;min-width:112px;gap:2px;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:9px 14px}.day-kpi strong{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;line-height:1}.day-kpi span{color:var(--muted);font-size:var(--text-sm);font-weight:600}.day-kpi.is-open{border-color:transparent;background:var(--red-soft);color:var(--red)}.day-kpi.is-open span{color:var(--red)}.day-kpi.is-covered{border-color:transparent;background:var(--green-soft);color:var(--green)}.day-kpi.is-covered span{color:var(--green)}.work-header .day-command-bar{align-self:center}.guard-layout{grid-template-columns:340px minmax(0,1fr);gap:24px}.entry-panel{top:76px;border-color:var(--border);box-shadow:none}.entry-head{gap:12px;border-bottom:0;padding:16px 16px 4px}.entry-head .kicker{display:none}.entry-head h2{font-size:var(--text-lg)}.mode-tabs{gap:2px;border:0;border-radius:11px;background:var(--surface-strong);padding:3px}.mode-tab{min-height:34px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:var(--text-base);font-weight:600;box-shadow:none}.mode-tab:hover{border:0;background:transparent;color:var(--text)}.mode-tab.active{border:0;background:var(--surface);color:var(--text);box-shadow:0 1px 2px #1418201a}.mode-panel{padding:12px 16px 16px}.teacher-search input[type=search],.group-picker select{min-height:44px;border-radius:var(--radius-small);padding:0 12px;font-size:var(--text-md)}.teacher-search input[type=search]:focus,.group-picker select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.mode-panel-head{border-top:0}.schedule-grid{gap:2px}.schedule-item{min-height:48px;border:0;border-radius:var(--radius-small);background:transparent;padding:6px 10px}.schedule-item:hover{background:var(--surface-strong)}.schedule-item:has(input:checked){background:var(--primary-soft)}.schedule-item input{width:18px;height:18px}.schedule-time{color:var(--text);font-size:var(--text-base);font-weight:700}.schedule-item-muted{opacity:.6}.range-builder{border-top-color:var(--border)}.day-panel{border:0;background:transparent;box-shadow:none;overflow:visible}.day-panel-head{min-height:0;border-bottom:0;padding:0 0 12px}.day-panel-head .kicker{display:none}.day-panel-head h2{font-size:var(--text-lg)}.coverage-list{gap:14px;background:transparent;padding:0}.coverage-session{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:none}.coverage-session-head{min-height:46px;border-bottom:1px solid var(--border);background:var(--surface);padding:8px 18px;box-shadow:none}.coverage-session-head h3{color:var(--text);font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;letter-spacing:-.01em}.coverage-session-head span{border:0;background:transparent;padding:0;color:var(--muted);font-size:var(--text-sm);font-weight:600}.coverage-session.pati-session{border:1px solid var(--border);background:var(--surface-strong);box-shadow:none}.pati-session .coverage-session-head,.coverage-session.pati-session .coverage-session-head{border-bottom-color:var(--border);background:transparent;box-shadow:none}.pati-session .coverage-session-head h3{color:var(--text);font-size:var(--text-lg);letter-spacing:-.01em;text-transform:none}.pati-session .coverage-session-head span{border:0;background:transparent;color:var(--muted)}.coverage-session-list{padding:0}.coverage-table{gap:0}.coverage-row-head{display:none}.coverage-row{grid-template-columns:minmax(170px,.95fr) minmax(170px,1fr) minmax(220px,1.25fr) minmax(190px,1fr);gap:16px;align-items:start;padding:14px 18px}.coverage-item+.coverage-item{border-top:1px solid var(--border)}.coverage-professor-cell,.coverage-detail-cell,.coverage-assignment-cell,.coverage-comment-cell,.covered .coverage-professor-cell{border:0;border-radius:0;background:transparent;padding:0}.schedule-actions button{white-space:nowrap}.coverage-professor-cell{align-items:center;row-gap:4px}.coverage-professor-cell .cell-kicker,.coverage-detail-cell .cell-kicker{display:none}.coverage-professor-cell strong{font-size:var(--text-md);font-weight:600}.coverage-status{display:inline-flex;grid-column:1;align-items:center;gap:6px;color:var(--muted);font-size:var(--text-xs);font-weight:600}.coverage-status:before{content:"";width:7px;height:7px;border-radius:999px;background:currentColor}.status-open .coverage-status{color:var(--red)}.status-covered .coverage-status{color:var(--primary)}.status-coteacher .coverage-status,.status-returns .coverage-status,.status-outing .coverage-status{color:var(--green)}.status-not-done .coverage-status{color:var(--muted)}.coverage-professor-cell .icon-remove{align-self:center;grid-row:1 / span 2;width:32px;min-height:32px;border:0;border-radius:8px;background:transparent;color:var(--muted)}.coverage-professor-cell .icon-remove:hover{background:var(--coral-soft);color:var(--coral)}.coverage-detail-cell strong{font-size:var(--text-base)}.coverage-detail-cell span:not(.cell-kicker){color:var(--muted);font-size:var(--text-sm)}.coverage-detail-cell .coverage-room-label{font-size:var(--text-sm)}.coverage-assignment-cell select,.coverage-comment-cell select{min-height:44px;border-radius:var(--radius-small);padding:0 12px;font-size:var(--text-base);font-weight:600}.status-open .coverage-assignment-cell select{border-color:var(--red-dot);background:var(--red-soft);color:var(--red)}.coverage-assignment-cell.has-released-candidates,.coverage-assignment-cell.only-unavailable{border:0;background:transparent}.coverage-assignment-cell.has-released-candidates select{border-color:var(--green-border)}.coverage-comment-cell{gap:6px}.coverage-comment-cell select{min-height:36px;font-size:var(--text-sm);font-weight:500}.coverage-comment-cell textarea{min-height:40px;border-radius:var(--radius-small);background:var(--surface-subtle);padding:9px 12px;font-size:var(--text-base)}.coverage-item.informational{border-left:0}.coverage-item.not-completed{background:var(--surface-subtle)}}@media screen and (max-width:1180px){.guard-layout{grid-template-columns:1fr}.coverage-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.guard-layout.is-readonly .coverage-row{grid-template-columns:repeat(4,minmax(0,1fr))}}@media screen and (max-width:620px){.day-kpis{width:100%;margin-left:0}.day-kpi{flex:1 1 0;min-width:0;padding:8px 10px}.day-kpi strong{font-size:var(--text-xl)}.coverage-row{grid-template-columns:1fr;gap:10px;padding:14px}}@media screen{.teacher-stats-panel{gap:18px;border:0;border-radius:0;background:transparent;padding:0;box-shadow:none}.teacher-stats-head{flex-wrap:wrap;align-items:flex-end;gap:16px 24px}.teacher-stats-title{display:grid;flex:1 1 320px;gap:6px}.teacher-stats-head h2{font-size:var(--text-3xl);font-weight:700;line-height:1.1;letter-spacing:-.02em}.teacher-stats-title p{color:var(--muted);font-size:var(--text-base)}.teacher-stats-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 16px}.stats-search{display:grid;gap:6px;color:var(--muted);font-size:var(--text-sm);font-weight:600}.stats-search-field{display:flex;width:260px;min-height:44px;align-items:center;gap:10px;border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface);padding:0 12px;color:var(--muted)}.stats-search-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.stats-search-field input[type=search]{min-height:40px;border:0;background:transparent;padding:0;color:var(--text);font-size:var(--text-md);box-shadow:none}.stats-search-field input[type=search]:focus-visible{box-shadow:none}.stats-toggle{display:inline-flex;min-height:44px;align-items:center;gap:8px;border:1px solid var(--border);background:var(--surface);color:var(--muted);padding:0 14px;font-size:var(--text-base);font-weight:600}.stats-toggle:hover{border-color:var(--border-strong);background:var(--surface);color:var(--text)}.stats-toggle[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong)}.stats-legend{display:flex;min-height:44px;align-items:center;gap:5px;color:var(--muted);font-size:var(--text-xs)}.heat-swatch{width:16px;height:16px;border-radius:5px}.heat-swatch.heat-0,.guard-roster-teacher.heat-0 b{background:var(--surface-strong);color:var(--muted)}.heat-swatch.heat-1,.guard-roster-teacher.heat-1 b{background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary-strong)}.heat-swatch.heat-2,.guard-roster-teacher.heat-2 b{background:color-mix(in srgb,var(--primary) 28%,var(--surface));color:var(--primary-strong)}.heat-swatch.heat-3,.guard-roster-teacher.heat-3 b{background:color-mix(in srgb,var(--primary) 46%,var(--surface));color:var(--primary-strong)}.heat-swatch.heat-4,.guard-roster-teacher.heat-4 b{background:color-mix(in srgb,var(--primary) 72%,var(--surface));color:var(--on-primary)}.heat-swatch.heat-5,.guard-roster-teacher.heat-5 b{background:var(--primary);color:var(--on-primary)}.guard-matrix-frame{max-height:calc(100vh - 230px);min-height:320px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.guard-matrix-row{grid-template-columns:92px repeat(5,minmax(180px,1fr));min-height:0}.guard-matrix-columns{min-height:46px;border-bottom:1px solid var(--border);background:var(--surface)}.guard-matrix-columns>*{color:var(--muted);font-size:var(--text-sm);font-weight:700;text-transform:none}.guard-matrix-corner,.guard-matrix-hour{background:var(--surface)}.guard-matrix-hour{align-content:start;justify-items:start;padding:14px 16px;color:var(--text)}.guard-matrix-hour strong{font-family:var(--font-display);font-size:var(--text-lg)}.guard-matrix-hour small{font-size:var(--text-sm);font-weight:500}.guard-matrix-cell{gap:6px;padding:10px;transition:background-color .15s ease}.guard-matrix-cell.is-mine-slot{background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.guard-roster-teacher{position:relative;min-height:40px;gap:8px;border:1px solid transparent;border-radius:var(--radius-small);background:var(--surface-subtle);padding:0 6px 0 10px;transition:opacity .15s ease,border-color .15s ease}.guard-roster-teacher:hover{border-color:var(--border-strong)}.guard-roster-teacher.is-mine{border:2px solid var(--primary);background:var(--surface)}.guard-roster-teacher.is-dimmed{opacity:.32}.guard-roster-teacher .roster-name,.guard-matrix-cell .guard-roster-teacher .roster-name{flex:1 1 auto;min-width:0;overflow:hidden;color:var(--text);font-size:var(--text-sm);font-weight:500;text-overflow:ellipsis;white-space:nowrap}.guard-roster-teacher.is-mine .roster-name{font-weight:700}.guard-roster-teacher .roster-you{flex-shrink:0;border-radius:999px;background:var(--primary);padding:2px 7px;color:var(--on-primary);font-size:var(--text-xs);font-weight:700}.guard-roster-teacher b,.guard-matrix-cell .guard-roster-teacher b{flex:0 0 auto;min-width:28px;min-height:28px;border:0;border-radius:7px;padding:0 6px;font-size:var(--text-sm)}.guard-roster-teacher .guard-history-tooltip{overflow:visible;text-overflow:clip;top:calc(100% + 6px);width:280px;max-width:80vw;border:0;border-radius:14px;background:var(--surface-inverse);padding:14px 16px;color:var(--text-inverse);box-shadow:0 18px 40px #14182047;white-space:normal;font-size:var(--text-sm);font-weight:500}.guard-history-tooltip>span,.guard-history-tooltip .tooltip-line span{overflow:visible;color:inherit;font-size:inherit;white-space:normal}.guard-history-tooltip .tooltip-name{display:block;font-size:var(--text-md);font-weight:700}.guard-history-tooltip .tooltip-meta{display:block;margin:2px 0 10px;opacity:.72}.guard-history-tooltip .tooltip-line{display:flex;gap:12px;padding:3px 0}.guard-history-tooltip .tooltip-date{flex-shrink:0;opacity:.72}}@media screen and (max-width:620px){.teacher-stats-head h2{font-size:var(--text-2xl)}.teacher-stats-tools,.stats-search,.stats-search-field{width:100%}}@media screen{.undo-toast-region{position:fixed;z-index:80;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%);width:max-content;max-width:calc(100vw - 32px);pointer-events:none}.undo-toast{display:flex;align-items:center;gap:12px;border-radius:14px;background:var(--surface-inverse);padding:8px 8px 8px 18px;color:var(--text-inverse);box-shadow:0 16px 40px #1418204d;font-size:var(--text-base);font-weight:500;pointer-events:auto;animation:undo-toast-in .18s ease-out}.undo-toast-action{min-height:36px;border:0;border-radius:var(--radius-small);background:transparent;padding:0 12px;color:var(--primary-inverse);font-weight:700}.undo-toast-action:hover{border:0;background:color-mix(in srgb,var(--text-inverse) 12%,transparent)}.undo-toast-close{display:grid;width:36px;min-height:36px;place-items:center;border:0;background:transparent;padding:0;color:inherit;opacity:.7}.undo-toast-close:hover{border:0;background:transparent;opacity:1}@keyframes undo-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.undo-toast{animation:none}}}@media screen{.unclosed-close-all{min-height:28px;margin-left:8px;border:1px solid var(--amber-border);border-radius:999px;background:var(--surface);padding:0 12px;color:var(--amber);font-size:var(--text-sm);font-weight:700}.unclosed-close-all:hover{border-color:var(--amber-dot);background:var(--surface);color:var(--amber)}}@media screen{.unmatched-absences{display:grid;justify-items:start;gap:6px;border:1px solid var(--amber-border);border-radius:8px;background:var(--amber-soft);padding:10px 14px;color:var(--text);font-size:var(--text-sm);line-height:1.4}.unmatched-absences p{margin:0}.unmatched-absences p>strong{color:var(--amber)}.unmatched-absences ul{display:grid;gap:2px;margin:0;padding-left:18px}.unmatched-absences button{min-height:28px;border:1px solid var(--amber-border);border-radius:999px;background:var(--surface);padding:0 12px;color:var(--amber);font-size:var(--text-sm);font-weight:700}.unmatched-absences button:hover:not(:disabled){border-color:var(--amber-dot);background:var(--surface);color:var(--amber)}}@media screen{.day-history{display:grid;gap:10px;border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface);padding:12px 14px;font-size:var(--text-sm)}.day-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.day-history-head h2{margin:0;font-size:var(--text-md)}.day-history-head p,.day-history-empty{margin:2px 0 0;color:var(--muted)}.day-history-feedback{margin:0;font-weight:700}.day-history-feedback.is-success{color:var(--green)}.day-history-feedback.is-error{color:var(--coral)}.day-history-list{display:grid;margin:0;padding:0;list-style:none}.day-history-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding:8px 0}.day-history-item:first-child{border-top:0}.day-history-item p{margin:2px 0 0}.day-history-item small{color:var(--muted);font-size:var(--text-xs)}.day-history-status{margin-left:8px;border-radius:999px;background:var(--surface-strong);padding:1px 8px;color:var(--text-soft);font-size:var(--text-xs);font-weight:700}.day-history-item button{flex:none}.day-history-toggle{min-height:24px;border:1px solid var(--border);border-radius:999px;background:transparent;padding:0 10px;color:var(--text-soft);font-size:var(--text-xs);font-weight:700}.day-history-toggle:hover,.day-history-toggle[aria-expanded=true]{border-color:var(--border-strong);background:var(--surface-strong);color:var(--text)}}@media screen{.mail-block{display:grid;gap:16px}.mail-log-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;padding:6px 0 2px}.mail-log-actions .danger{color:var(--coral)}.mail-form{display:contents;min-width:0;margin:0;border:0;padding:0}.mail-block h3{margin:0;font-family:var(--font-display);font-size:var(--text-md)}.mail-overview{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px}.mail-master{display:grid;align-content:space-between;gap:10px;border:1px solid var(--amber-border);border-left-width:4px;border-radius:var(--radius-small);background:var(--amber-soft);padding:12px 14px}.mail-master.is-on{border-color:var(--green-border);background:var(--green-soft)}.mail-master strong{display:block;font-size:var(--text-md)}.mail-master small{display:block;margin-top:2px;color:var(--text-soft);font-size:var(--text-sm)}.mail-service{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted);font-size:var(--text-sm)}.mail-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--green-dot)}.mail-service.is-missing{color:var(--amber);font-weight:700}.mail-service.is-missing .mail-dot{background:var(--amber-dot)}.mail-rules{display:grid;align-content:center;gap:6px;margin:0;border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface-subtle);padding:12px 14px 12px 32px;color:var(--text-soft);font-size:var(--text-sm)}.mail-sender{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mail-sender small.is-error{color:var(--coral);font-size:var(--text-xs)}.mail-switch{position:relative;display:inline-flex;flex:none;align-items:center;gap:8px;cursor:pointer;font-size:var(--text-sm);font-weight:700}.mail-switch input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.mail-switch-track{position:relative;flex:none;width:36px;height:20px;border-radius:999px;background:var(--border-strong);transition:background var(--dur-fast) var(--ease-out)}.mail-switch-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow-small);transition:transform var(--dur-fast) var(--ease-out)}.mail-switch input:checked+.mail-switch-track{background:var(--green-dot)}.mail-switch input:checked+.mail-switch-track:after{transform:translate(16px)}.mail-switch input:focus-visible+.mail-switch-track{outline:2px solid var(--primary);outline-offset:2px}.mail-switch-large{align-items:flex-start;gap:12px;font-weight:400}.mail-switch-large .mail-switch-track{margin-top:1px;width:44px;height:24px}.mail-switch-large .mail-switch-track:after{width:20px;height:20px}.mail-switch-large input:checked+.mail-switch-track:after{transform:translate(20px)}.mail-kinds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mail-template{--kind: var(--primary);--kind-soft: var(--primary-soft);--kind-border: var(--primary-border);display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;border:1px solid var(--kind-border);border-top:4px solid var(--kind);border-radius:var(--radius-small);background:var(--surface);box-shadow:var(--shadow-small)}.mail-template.is-pati{--kind: var(--green-dot);--kind-soft: var(--green-soft);--kind-border: var(--green-border)}.mail-template-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;background:var(--kind-soft);padding:12px 14px}.mail-template-head p{margin:2px 0 0;color:var(--text-soft);font-size:var(--text-sm)}.mail-template-body{display:grid;align-content:start;gap:14px;border-top:1px solid var(--kind-border);background:var(--surface-subtle);padding:14px}.mail-template.is-off .mail-template-body{opacity:.55}.mail-template-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;border-top:1px dashed var(--border-strong);background:var(--surface-strong);padding:10px 14px}.mail-template-foot small{flex:1;min-width:160px;color:var(--text-soft);font-size:var(--text-xs)}.mail-badge{display:inline-flex;flex:none;align-items:center;min-height:20px;border-radius:999px;background:var(--primary-soft);padding:0 8px;color:var(--primary-strong);font-size:var(--text-xs);font-weight:700}.mail-badge.is-pati{background:var(--green-soft);color:var(--green)}.mail-badge.is-prova{background:var(--surface-inverse);color:var(--text-inverse)}.mail-template-body>label,.mail-sender label{display:grid;gap:5px;color:var(--text);font-size:var(--text-sm);font-weight:700}.mail-template input[type=text],.mail-template textarea,.mail-sender input{width:100%;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);box-shadow:inset 0 1px 2px #1418200f;color:var(--text);font:inherit;font-weight:400}.mail-template input[type=text]:hover,.mail-template textarea:hover,.mail-sender input:hover{border-color:var(--muted)}.mail-template input[type=text],.mail-sender input{min-height:36px;padding:0 10px}.mail-template textarea{min-height:76px;padding:8px 10px;resize:vertical}.mail-template input[type=text]:focus-visible,.mail-template textarea:focus-visible,.mail-sender input:focus-visible{border-color:var(--primary-border);outline:2px solid color-mix(in srgb,var(--primary) 25%,transparent);outline-offset:0}.mail-sender input[aria-invalid=true]{border-color:var(--coral-border)}.mail-fields{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--muted);font-size:var(--text-xs)}.mail-fields button{min-height:26px;border:1px solid var(--border);border-radius:999px;background:var(--surface-subtle);padding:0 8px;color:var(--text);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:var(--text-xs)}.mail-fields button:hover{border-color:var(--border-strong)}.mail-preview{border:1px dashed var(--border-strong);border-radius:8px;background:var(--surface);font-size:var(--text-sm)}.mail-preview-label{display:block;padding:8px 12px 0;color:var(--muted);font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.mail-preview dl{display:grid;gap:2px;margin:0;border-bottom:1px solid var(--border);padding:8px 12px}.mail-preview dl div{display:flex;gap:8px}.mail-preview dt{flex:none;width:64px;color:var(--muted);font-size:var(--text-xs);line-height:1.6}.mail-preview dd{margin:0}.mail-preview-subject{font-weight:700}.mail-preview p{margin:0;padding:10px 12px;white-space:pre-line}.mail-actions{position:sticky;bottom:0;z-index:2;display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px solid transparent;background:var(--surface);padding:10px 0}.mail-actions.is-dirty{border-top-color:var(--border)}.mail-unsaved{color:var(--amber);font-size:var(--text-sm);font-weight:700}.mail-feedback{font-size:var(--text-sm);font-weight:700}.mail-feedback.is-success{color:var(--green)}.mail-feedback.is-error{color:var(--coral)}.mail-recent h3{margin:0 0 6px}.mail-recent h4{margin:10px 0 4px;color:var(--muted);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase}.mail-recent ul{display:grid;margin:0;padding:0;list-style:none}.mail-recent li{border-top:1px solid var(--border);font-size:var(--text-sm)}.mail-log summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;cursor:pointer;list-style:none;padding:7px 4px}.mail-log summary::-webkit-details-marker{display:none}.mail-log summary:hover{background:var(--surface-subtle)}.mail-log[open] summary{background:var(--surface-subtle)}.mail-log summary .mail-badge{min-width:84px;justify-content:center}.mail-log-who{display:grid;min-width:0}.mail-log-who span{color:var(--muted)}.mail-log summary>small{font-size:var(--text-xs);font-weight:700;text-align:right}.mail-log summary>small:after{content:"▾";display:inline-block;margin-left:6px;color:var(--muted);transition:transform var(--dur-fast) var(--ease-out)}.mail-log[open] summary>small:after{transform:rotate(180deg)}.mail-log-message{margin:2px 4px 10px}.mail-log-note{display:block;padding:0 12px 10px;color:var(--muted);font-size:var(--text-xs)}.mail-recent li.is-enviat summary>small{color:var(--green)}.mail-recent li.is-pendent summary>small,.mail-recent li.is-enviant summary>small{color:var(--amber)}.mail-recent li.is-test .mail-log-who strong{font-weight:600}}@media screen and (max-width:900px){.mail-overview,.mail-kinds,.mail-sender{grid-template-columns:minmax(0,1fr)}}@media screen and (max-width:560px){.mail-template-head{flex-direction:column}.mail-log summary{grid-template-columns:minmax(0,1fr) auto}.mail-log summary .mail-badge{grid-column:1 / -1;justify-self:start;min-width:0}}@media screen and (max-width:820px){.guard-layout.is-readonly .coverage-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.guard-layout.is-readonly .coverage-comment-cell{grid-column:1 / -1}}@media screen and (max-width:620px){.guard-layout.is-readonly .coverage-row{grid-template-columns:minmax(0,1fr)}}@media screen{.guard-layout.is-readonly{grid-template-columns:1fr}.released-session .coverage-session-head{min-height:30px}.coverage-assignment-cell.has-released-candidates select{font-weight:700}}@media screen{.guard-layout.is-readonly .public-row{position:relative;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);align-items:start;gap:4px 18px;padding:12px 16px 12px 20px}.guard-layout.is-readonly .public-row:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--border-strong)}.guard-layout.is-readonly .public-row>div{display:grid;min-width:0;min-height:0;align-content:start;gap:2px;border:0;background:transparent;padding:0}.guard-layout.is-readonly .public-row .coverage-professor-cell strong,.guard-layout.is-readonly .public-row .readonly-assignment,.guard-layout.is-readonly .public-row .coverage-detail-cell strong{color:var(--text);font-size:var(--text-md);font-weight:700;line-height:1.3;text-decoration:none;white-space:normal;overflow-wrap:anywhere}.guard-layout.is-readonly .public-row .coverage-detail-line{margin:0;color:var(--muted);font-size:var(--text-sm);white-space:normal}.guard-layout.is-readonly .public-row .status-label{color:var(--muted);font-size:var(--text-xs);font-weight:800;letter-spacing:.05em;text-transform:uppercase}.guard-layout.is-readonly .public-row .coverage-comment-cell{color:var(--text-soft);font-size:var(--text-sm);font-weight:600}.guard-layout.is-readonly .public-row.status-open:before,.guard-layout.is-readonly .public-row.status-covered:before{background:var(--red-dot)}.guard-layout.is-readonly .public-row.status-covered .status-label{color:var(--primary)}.guard-layout.is-readonly .public-row.status-open{background:color-mix(in srgb,var(--red-soft) 70%,transparent)}.guard-layout.is-readonly .public-row.status-open .status-label,.guard-layout.is-readonly .public-row.status-open .readonly-assignment{color:var(--red)}.guard-layout.is-readonly .public-row.status-coteacher:before,.guard-layout.is-readonly .public-row.status-returns:before,.guard-layout.is-readonly .public-row.status-info:before{background:var(--green-dot)}.guard-layout.is-readonly .public-row.status-coteacher .status-label,.guard-layout.is-readonly .public-row.status-returns .status-label{color:var(--green)}.guard-layout.is-readonly .public-row.status-returns .readonly-assignment,.guard-layout.is-readonly .public-row.status-info .readonly-assignment{color:var(--muted);font-weight:600}.guard-layout.is-readonly .public-row.status-not-done{opacity:1}.guard-layout.is-readonly .public-row.status-not-done:before{background:var(--border-strong)}.guard-layout.is-readonly .public-row.status-not-done .status-label{color:var(--muted)}.guard-layout.is-readonly .public-row.status-not-done .readonly-assignment{color:var(--muted);text-decoration:line-through}.guard-layout.is-readonly .coverage-session:not(.pati-session):not(.is-empty){background:var(--surface-subtle)}.guard-layout.is-readonly .public-row{overflow:hidden;margin:10px 10px 0;border:1px solid var(--border-strong);border-radius:var(--radius-small);background:var(--surface);box-shadow:var(--shadow-small)}.guard-layout.is-readonly .public-row:last-of-type{margin-bottom:10px}}@media screen and (max-width:820px){.guard-layout.is-readonly .public-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 14px;padding:12px 14px 12px 18px}.guard-layout.is-readonly .public-row .coverage-professor-cell{grid-column:1;grid-row:1}.guard-layout.is-readonly .public-row .coverage-assignment-cell{grid-column:2;grid-row:1}.guard-layout.is-readonly .public-row .coverage-detail-cell{display:flex;flex-wrap:wrap;align-items:baseline;grid-column:1 / -1;grid-row:2;column-gap:8px}.guard-layout.is-readonly .public-row .coverage-comment-cell{grid-column:1 / -1}}@media screen and (max-width:520px){.nav-date{gap:2px}.nav-date-pill,.nav-date-pill input[type=date]{min-width:0}.nav-date-pill{flex:0 1 auto;padding-left:10px}}@media screen{.completion-toggle,.co-teacher-badge,.convivencia-badge{font-size:var(--text-xs)}.coverage-professor-cell .icon-remove{font-size:var(--text-xl);font-weight:400;line-height:1}.coverage-professor-cell .icon-remove:focus-visible{outline:2px solid var(--primary);outline-offset:2px}}@media screen and (max-width:620px){.coverage-professor-cell .icon-remove{width:44px;min-width:44px;min-height:44px}.admin-view-tabs{gap:14px}.admin-view-tabs button,.admin-view-tabs .diagnostics-tab{font-size:var(--text-sm)}}@media screen{button,.admin-view-tabs button,.teacher-view-tabs button,.mode-tab,.search-result,.schedule-item,.day-kpi,.coverage-item,.coverage-assignment-cell select,.coverage-comment-cell select,.coverage-comment-cell textarea,input,select,textarea{transition:background-color var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out),color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),transform var(--dur-fast) var(--ease-out)}#day-status-action:not(.ghost):not(:disabled):hover{transform:translateY(-1px);box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 30%,transparent)}button:not(:disabled):active{transform:translateY(1px) scale(.985);box-shadow:none}.day-kpi{position:relative;overflow:hidden}.day-kpi:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.day-kpi strong{display:inline-block;transform-origin:left bottom}.day-progress{flex:1 0 100%;height:6px;overflow:hidden;border-radius:999px;background:var(--surface-strong)}.day-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green-dot),var(--green));transition:width var(--dur-slow) var(--ease-out)}.day-progress.is-complete>span{background:var(--green-dot)}.coverage-session{transition:border-color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.coverage-session:not(.pati-session):hover{box-shadow:var(--shadow)}.coverage-session.needs-cover{border-color:var(--red-border)}.coverage-session.no-cover{border-color:var(--green-border)}.coverage-session.needs-cover .coverage-session-head{border-bottom-color:var(--red-border);background:var(--red-soft)}.coverage-session.no-cover .coverage-session-head{border-bottom-color:var(--green-border);background:var(--green-soft)}.coverage-session.needs-cover .coverage-session-head>span{color:var(--red)}.coverage-session.no-cover .coverage-session-head>span{color:var(--green)}.coverage-session-head .cover-count{font-size:inherit;font-weight:inherit}.coverage-session.needs-cover .coverage-session-head h3:before,.coverage-session.no-cover .coverage-session-head h3:before{content:"";display:inline-block;width:10px;height:10px;margin-right:9px;border-radius:999px;vertical-align:.1em;transition:background-color var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.coverage-session.needs-cover .coverage-session-head h3:before{background:var(--red-dot);box-shadow:0 0 0 3px color-mix(in srgb,var(--red-dot) 22%,transparent)}.coverage-session.no-cover .coverage-session-head h3:before{background:var(--green-dot);box-shadow:0 0 0 3px color-mix(in srgb,var(--green-dot) 20%,transparent)}.session-pending{margin-left:auto;border-radius:999px;background:var(--red-dot);padding:3px 9px;color:var(--on-red);font-size:var(--text-xs);font-style:normal;font-weight:700;white-space:nowrap}.guard-layout:not(.is-readonly) .coverage-item{position:relative}.guard-layout:not(.is-readonly) .coverage-item:before{content:"";position:absolute;top:12px;bottom:12px;left:0;width:3px;border-radius:0 3px 3px 0;background:transparent;transition:background-color var(--dur) var(--ease-out),top var(--dur) var(--ease-out),bottom var(--dur) var(--ease-out)}.guard-layout:not(.is-readonly) .coverage-item.status-open{background:color-mix(in srgb,var(--red-soft) 55%,transparent)}.guard-layout:not(.is-readonly) .coverage-item.status-open:before,.guard-layout:not(.is-readonly) .coverage-item.status-covered:before{background:var(--red-dot)}.guard-layout:not(.is-readonly) .coverage-item.status-coteacher:before,.guard-layout:not(.is-readonly) .coverage-item.status-returns:before,.guard-layout:not(.is-readonly) .coverage-item.status-outing:before,.guard-layout:not(.is-readonly) .coverage-item.status-info:before{background:var(--green-dot)}.guard-layout:not(.is-readonly) .coverage-item.not-completed:before{background:var(--border-strong)}.guard-layout:not(.is-readonly) .coverage-item:hover{background:var(--surface-subtle)}.guard-layout:not(.is-readonly) .coverage-item:hover:before{top:0;bottom:0}.schedule-item:hover{transform:translate(2px)}.admin-panel>summary:after{content:"+";display:inline-block;transition:transform var(--dur) var(--ease-out)}.admin-panel[open]>summary:after{content:"+";transform:rotate(45deg)}.admin-panel>summary{transition:background-color var(--dur) var(--ease-out)}.admin-panel>summary:hover{background:var(--surface-subtle)}.comment-editor{display:flex;align-items:flex-start;gap:6px}.comment-editor textarea{flex:1 1 0;width:100%;min-width:0;min-height:44px;max-height:9.5em;resize:none;field-sizing:content;overflow-y:auto;padding-block:11px;line-height:1.4}.comment-editor textarea:focus{background:var(--surface)}.coverage-comment-cell .comment-editor select{flex:0 0 auto;width:auto;max-width:6.5rem;min-height:44px;border-color:var(--border);background-color:var(--surface);padding:0 26px 0 10px;color:var(--primary);font-weight:600}.coverage-comment-cell .comment-editor select:hover:not(:disabled){border-color:var(--primary-border);background-color:var(--primary-soft)}.coverage-session.is-empty{border-style:dashed;background:transparent}.coverage-session.is-empty .coverage-session-head{border-bottom:0;background:transparent}.coverage-session.is-empty .coverage-session-head h3{color:var(--muted);font-size:var(--text-base);font-weight:600}.coverage-session.is-empty .coverage-session-head span{font-size:var(--text-xs);font-weight:500}.coverage-session.is-empty.no-cover .coverage-session-head h3{color:var(--green)}.coverage-session.is-empty:hover{box-shadow:none}}@media screen and (min-width:1181px){.guard-layout:not(.is-readonly) .coverage-row{grid-template-columns:minmax(170px,1fr) minmax(120px,.6fr) minmax(260px,1.4fr) minmax(200px,1fr)}}@media screen and (prefers-reduced-motion:no-preference){.work-header,.guard-layout,.admin-panel,.empty{animation:rise-in var(--dur-slow) var(--ease-out) backwards}.guard-layout{animation-delay:60ms}.admin-panel:nth-of-type(2){animation-delay:30ms}.admin-panel:nth-of-type(3){animation-delay:60ms}.admin-panel:nth-of-type(4){animation-delay:90ms}.admin-panel:nth-of-type(5){animation-delay:.12s}.admin-panel:nth-of-type(6){animation-delay:.15s}.admin-panel:nth-of-type(n+7){animation-delay:.18s}.coverage-session{animation:rise-in var(--dur-slow) var(--ease-out) backwards}.coverage-session:nth-child(2){animation-delay:40ms}.coverage-session:nth-child(3){animation-delay:80ms}.coverage-session:nth-child(4){animation-delay:.12s}.coverage-session:nth-child(5){animation-delay:.16s}.coverage-session:nth-child(n+6){animation-delay:.2s}.coverage-item:not(.coverage-row-head){animation:row-in var(--dur-slow) var(--ease-out) backwards}.schedule-item{animation:row-in var(--dur) var(--ease-out) backwards}.schedule-item:nth-child(2){animation-delay:25ms}.schedule-item:nth-child(3){animation-delay:50ms}.schedule-item:nth-child(4){animation-delay:75ms}.schedule-item:nth-child(5){animation-delay:.1s}.schedule-item:nth-child(n+6){animation-delay:125ms}.day-kpi strong{animation:kpi-pop var(--dur-slow) var(--ease-pop)}.session-pending{animation:pop-in var(--dur) var(--ease-pop) backwards}.admin-panel[open]>:not(summary){animation:rise-in var(--dur) var(--ease-out) backwards}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}}@keyframes row-in{0%{opacity:0;transform:translateY(-4px)}}@keyframes kpi-pop{0%{transform:scale(.82);opacity:.4}to{transform:scale(1);opacity:1}}@keyframes pop-in{0%{opacity:0;transform:scale(.7)}}}@media screen{#auto-assign-guards.ghost,.range-builder button.ghost{min-height:38px;padding:0 14px;font-weight:700}.schedule-type,.schedule-main small,.pati-info-strip>span{font-size:var(--text-xs)}.range-copy strong,.info-only-label,.pati-info-strip p{font-size:var(--text-sm)}.cache-info,.admin-block-head .kicker,.setup-number,.setup-copy small,.setup-status,.setup-step .upload>span,.teacher-exclusions-columns>span,.teacher-exclusions-row small,.teacher-email,.guard-count-columns>span,.pati-day-tabs button>span,.source-chip,.official-calendar-summary>span,.pati-day-card header strong,.pati-day-card header span,.non-teaching-label,.pati-no-roster,.pati-save-message,.convivencia-slot-time strong,.convivencia-slot-time small,.release-note time{font-size:var(--text-xs)}.setup-copy strong,.empty-small,.convivencia-day h3,.release-note li{font-size:var(--text-sm)}.guard-statistics-panel{gap:18px;margin-bottom:0;border:0;border-radius:0;background:transparent;padding:0;box-shadow:none}.guard-statistics-head .kicker{color:var(--muted);font-size:var(--text-xs);font-weight:600;letter-spacing:0;text-transform:none}.guard-statistics-head h2{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;letter-spacing:-.01em}.guard-statistics-totals{gap:10px}.guard-statistics-totals article{gap:4px;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:12px 16px}.guard-statistics-totals span{order:2;color:var(--muted);font-size:var(--text-sm);font-weight:600;text-transform:none}.guard-statistics-totals strong{color:var(--text);font-family:var(--font-display);font-size:var(--text-3xl);font-weight:700}.guard-statistics-grid{gap:14px}.guard-ranking-card{border-radius:var(--radius);background:var(--surface)}.guard-ranking-card>header{background:var(--surface);padding:12px 16px}.guard-ranking-card>header h3{font-size:var(--text-md)}.guard-ranking-card>header span{padding:2px 9px;font-size:var(--text-xs);font-weight:700;text-transform:none}.guard-ranking-card li{grid-template-columns:28px minmax(0,1fr) auto 44px;gap:12px;min-height:56px;border-top-color:var(--border);padding:8px 16px}.guard-slot-ranking li{grid-template-columns:28px minmax(0,1fr) 44px}.guard-ranking-card li>b{width:26px;height:26px;font-size:var(--text-xs)}.ranking-who{display:grid;min-width:0;gap:6px}.ranking-who strong{overflow:hidden;color:var(--text);font-size:var(--text-base);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.ranking-bar{display:block;height:5px;overflow:hidden;border-radius:999px;background:var(--surface-strong)}.ranking-bar>span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.guard-ranking-breakdown em{border-color:var(--border);padding:2px 8px;font-size:var(--text-xs);font-weight:600}.guard-ranking-card li>mark{min-width:40px;min-height:32px;border-radius:8px;font-size:var(--text-base);font-weight:800}.guard-layout.is-readonly .coverage-session.is-current{border:2px solid var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.guard-layout.is-readonly .coverage-session.is-current.pati-session .coverage-session-head{background:var(--primary-soft)}.coverage-session-head .now-badge{display:inline-flex;align-items:center;gap:7px;margin-left:auto;border-radius:999px;background:var(--primary);padding:3px 10px;color:var(--on-primary);font-size:var(--text-xs);font-weight:700}.coverage-session-head .now-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.coverage-session-head .now-badge+.session-pending{margin-left:0}}@media screen{.teacher-code{display:inline-block;margin-left:4px;border-radius:6px;background:var(--surface-strong);padding:0 6px;color:var(--muted);font-size:var(--text-xs);font-weight:600;white-space:nowrap;vertical-align:1px}.coverage-detail-cell .coverage-detail-line .coverage-room-label{display:inline;color:var(--text)}.my-guards{display:grid;gap:8px;border:1px solid var(--primary-border);border-radius:var(--radius);background:var(--primary-soft);padding:12px 16px}.my-guards-title{color:var(--primary-strong);font-size:var(--text-sm);font-weight:800}.my-guards-list{display:flex;flex-wrap:wrap;gap:8px}.my-guard{display:grid;gap:1px;border:1px solid var(--primary-border);border-radius:12px;background:var(--surface);padding:8px 12px;color:var(--text);text-decoration:none}.my-guard:hover{border-color:var(--primary)}.my-guard strong{font-size:var(--text-md)}.my-guard span{color:var(--muted);font-size:var(--text-sm);font-weight:600}.my-guard em{color:var(--primary);font-size:var(--text-xs);font-style:normal;font-weight:700}.mine-chip{display:inline-flex;width:fit-content;margin-left:4px;border-radius:999px;background:var(--primary);padding:1px 9px;color:var(--on-primary);font-size:var(--text-xs);font-weight:800}.guard-layout.is-readonly .public-row.is-mine{background:color-mix(in srgb,var(--primary-soft) 75%,transparent)}.guard-layout.is-readonly .public-row.is-mine:before{background:var(--primary)}.pati-zone-card.is-mine{border-color:var(--primary);background:var(--primary-soft)}}@media screen and (max-width:620px){.guard-count-row>*{font-size:var(--text-xs)}}@media screen and (max-width:820px){.my-guards{position:sticky;z-index:5;top:calc(var(--app-nav-height, 0px) + var(--outings-line-height, 0px) + 6px);box-shadow:var(--shadow)}}@media screen{.day-notice{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;border:1px solid var(--primary-border);border-left:4px solid var(--primary);border-radius:var(--radius-small);background:var(--primary-soft);padding:9px 12px;color:var(--text);font-size:var(--text-md);font-weight:700;line-height:1.35}.day-notice+.outings-line{margin-top:6px}.day-notice-title{color:var(--primary);font-size:var(--text-xs);font-weight:800;letter-spacing:.05em;text-transform:uppercase}.day-notice-text{white-space:pre-line}.day-notice-editor{display:grid;grid-template-columns:minmax(180px,.32fr) minmax(0,1fr);align-items:center;gap:8px 14px;border:1px solid var(--primary-border);border-radius:var(--radius);background:var(--primary-soft);padding:10px 14px}.day-notice-editor>span{display:grid;gap:2px;color:var(--primary);font-size:var(--text-sm);font-weight:800}.day-notice-editor small{color:var(--muted);font-size:var(--text-xs);font-weight:500}.day-notice-editor textarea{width:100%;min-height:44px;max-height:9.5em;resize:none;field-sizing:content;border-radius:var(--radius-small);background:var(--surface);padding:11px 12px;font-size:var(--text-base);line-height:1.4}}@media screen and (max-width:620px){.day-notice-editor{grid-template-columns:1fr}}@media screen{.view-as{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:12px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface);padding:10px 14px}.view-as label{display:flex;align-items:center;gap:10px;font-size:var(--text-sm);font-weight:700}.view-as select{min-height:40px;max-width:min(320px,70vw);border-radius:var(--radius-small);padding:0 10px;font-size:var(--text-base)}.view-as label>span{white-space:nowrap}.view-as p{margin:0;font-size:var(--text-sm);line-height:1.5}.view-as p button{margin-left:10px}.view-as-help{color:var(--muted)}.view-as.is-active{border:2px solid var(--primary);background:var(--primary-soft)}.view-as.is-active p{color:var(--text)}.view-as.is-active button{min-height:34px;font-size:var(--text-xs)}}@media screen{.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.my-guards-panel{gap:14px;border:0;background:transparent;padding:0;box-shadow:none}.my-guards-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px}.my-guards-head h2{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:-.01em}.my-guards-totals{display:flex;flex-wrap:wrap;gap:8px;margin:0}.my-guards-totals article{display:grid;min-width:120px;gap:2px;border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface);padding:8px 14px}.my-guards-totals dt{color:var(--muted);font-size:var(--text-xs);font-weight:700}.my-guards-totals dd{margin:0}.my-guards-totals strong{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.1}.my-guards-note{font-size:var(--text-base)}.my-guards-columns{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:14px}.my-guards-card{gap:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:16px 18px;box-shadow:var(--shadow-small)}.my-guards-card h3{font-family:var(--font-display);font-size:var(--text-lg)}.my-guards-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}.my-upcoming{display:grid;gap:12px;margin:0;padding:0;list-style:none}.my-upcoming>li{border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface);padding:0;overflow:hidden}.my-upcoming>li.is-today{border-color:var(--primary-border)}.my-upcoming-day{display:flex;align-items:center;gap:8px;margin:0;border-bottom:1px solid var(--border);background:var(--surface-subtle);padding:9px 14px;font-size:var(--text-md);text-transform:none}.my-upcoming>li.is-today .my-upcoming-day{border-bottom-color:var(--primary-border);background:var(--primary-soft)}.my-today-badge{border-radius:999px;background:var(--primary);padding:2px 9px;color:var(--on-primary);font-size:var(--text-xs);font-weight:800}.my-upcoming>li>ul{display:grid;margin:0;padding:0;list-style:none}.my-upcoming .my-upcoming-guard{display:grid;grid-template-columns:minmax(7.5rem,auto) minmax(0,1fr);align-items:baseline;gap:4px 16px;padding:11px 14px;font-size:var(--text-base)}.my-upcoming .my-upcoming-guard+.my-upcoming-guard{border-top:1px solid var(--border)}.my-upcoming-hour{min-width:0;color:var(--text-soft);font-size:var(--text-sm);font-weight:800;white-space:nowrap}.my-upcoming-what{display:grid;gap:2px}.my-upcoming-what strong{font-size:var(--text-md)}.my-upcoming-where{color:var(--text-soft)}.my-upcoming-what small{color:var(--muted);font-size:var(--text-sm)}.my-upcoming-comment{margin:6px 0 0;border-radius:8px;background:var(--primary-soft);padding:7px 10px;color:var(--text);font-size:var(--text-sm)}.my-upcoming-comment b{display:block;color:var(--primary);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase}.my-mails,.my-history{display:grid;margin:0;padding:0;list-style:none}.my-mails li{display:grid;grid-template-columns:minmax(0,1fr);gap:3px;border-top:1px solid var(--border);padding:10px 0;font-size:var(--text-base)}.my-mails li,.my-history li{border-bottom:0}.my-mails li:first-child{border-top:0;padding-top:0}.my-mails li strong{font-size:var(--text-base)}.my-mail-detail{color:var(--text-soft)}.my-mails .my-mail-status{justify-self:start;border-radius:999px;background:var(--surface-strong);padding:2px 9px;color:var(--text-soft);font-size:var(--text-xs);font-weight:800}.my-mails li.is-pendent .my-mail-status,.my-mails li.is-enviant .my-mail-status{background:var(--amber-soft);color:var(--amber)}.my-mails li.is-enviat .my-mail-status{background:var(--green-soft);color:var(--green)}.my-timetable{font-size:var(--text-sm)}.my-timetable th,.my-timetable td{min-width:7.5rem;padding:8px 10px;vertical-align:top}.my-timetable thead th{color:var(--text-soft);font-size:var(--text-sm);text-align:left}.my-timetable tbody th{position:sticky;left:0;z-index:1;min-width:0;width:4rem;background:var(--surface);font-size:var(--text-sm)}.my-timetable-item{gap:1px}.my-timetable-item+.my-timetable-item{margin-top:6px}.my-timetable-item b{font-size:var(--text-sm)}.my-timetable-item small{font-size:var(--text-xs)}.my-timetable td.is-guard b{color:var(--primary-strong)}.my-timetable td.is-patio b{color:var(--amber)}.my-guards-legend{gap:8px;font-size:var(--text-xs);font-weight:700}.my-guards-legend span{padding:3px 9px}.my-history li{display:grid;grid-template-columns:7rem 4rem minmax(0,1fr);align-items:baseline;gap:12px;border-top:1px solid var(--border);padding:9px 0;font-size:var(--text-base)}.my-history li:first-child{border-top:0;padding-top:0}.my-history-date,.my-history-hour{color:var(--muted)}}@media screen and (max-width:900px){.my-guards-columns{grid-template-columns:1fr}}@media screen and (max-width:560px){.my-guards-card{padding:14px}.my-guards-totals{width:100%}.my-guards-totals article{flex:1 1 0;min-width:0;padding:8px 10px}.my-upcoming .my-upcoming-guard{grid-template-columns:1fr;gap:3px}.my-history li{grid-template-columns:5.5rem 3.5rem minmax(0,1fr);gap:8px}}@media screen and (min-width:621px){.guard-layout:not(.is-readonly) .coverage-row{padding-right:56px}.coverage-professor-cell .icon-remove{position:absolute;top:12px;right:12px}}}@layer print{@media print{@page{size:A3 portrait;margin:10mm}:root{--surface: #fff;--surface-subtle: #f4f4f4;--surface-strong: #eee;--border: #555;--text: #000;--text-soft: #111;--muted: #333}body{background:#fff;overflow:visible}.day-panel,.day-panel *{border-color:#666!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}.no-print,.app-nav,.admin-panel,.empty,.entry-panel,.day-panel-head,.pill,.icon-remove{display:none!important}.page,.workspace,.guard-layout{display:block;width:100%;margin:0;padding:0}.day-panel{display:flex;flex-direction:column;height:390mm;border:0;box-shadow:none}.print-header,.print-only{display:block!important}.coverage-list{display:flex;flex:1 1 auto;flex-direction:column;gap:1.2mm;background:#fff;padding:0;min-height:0}.print-header{display:grid!important;grid-template-columns:20mm minmax(0,1fr) auto;align-items:center;gap:2mm;border:1.5px solid #333;border-left-width:4mm;background:#ededed!important;margin-bottom:2.5mm;padding:1.5mm 2mm}.print-header>img{width:20mm;height:7mm;object-fit:contain;object-position:left center;filter:grayscale(1) contrast(1.2)}.print-title-copy{display:flex;min-width:0;align-items:baseline;gap:3mm;white-space:nowrap}.print-title-copy span{display:none!important;color:#444}.outings-line-slot{position:static;padding:0!important}.outings-line{flex:0 0 auto;margin:0 0 2mm;border:1px solid #333;background:#fff!important;padding:1mm 2mm;font-size:10pt}.print-header h1{margin:0;font-size:12pt;line-height:1}.print-header p{margin:0;border-left:1px solid #777;padding-left:2mm;font-size:12pt;font-weight:850;white-space:nowrap}.coverage-session{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;break-inside:avoid;border:1.5px solid #333!important}.coverage-session.pati-session{flex:0 0 auto;background:#fff!important}.coverage-session.seventh-session{flex:0 0 auto;min-height:18mm}.seventh-observation-print{min-height:7mm;margin:0;border-top:1px solid #666;padding:1mm 2mm;font-size:8.5pt;font-weight:700}.coverage-row{grid-template-columns:1fr 1.15fr 1fr 1fr}.coverage-session-head{min-height:5.5mm;background:#e6e6e6!important;border-bottom:1px solid #444!important;padding:.8mm 2mm;-webkit-print-color-adjust:exact;print-color-adjust:exact}.coverage-session:not(.pati-session) .coverage-session-head span{border-color:#999;background:transparent!important;color:#000}.pati-session .coverage-session-head{background:#d6d6d6!important}.coverage-session-head h3{color:#000!important;font-size:9.5pt!important}.coverage-session-head span{padding:.4mm 1.4mm;font-size:7.5pt!important}.coverage-session-list{flex:1 1 auto;padding:1mm}.coverage-table{gap:.7mm}.coverage-row-head{padding-bottom:0;font-size:7pt!important}.coverage-row{min-height:6mm;gap:.7mm;font-size:8.5pt!important}.coverage-professor-cell,.coverage-detail-cell,.coverage-assignment-cell,.coverage-comment-cell{border-radius:1px;padding:.7mm 1mm}.coverage-professor-cell strong,.coverage-detail-cell strong,.coverage-detail-cell span,.print-assignment,.print-session-detail,.coverage-comment-cell .print-only{font-size:8.5pt!important;line-height:1.1}.print-session-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.print-session-detail .print-detail-highlight{display:inline;font-size:inherit;font-weight:900}.cell-kicker{display:none!important}.pati-info-strip{grid-template-columns:22mm minmax(0,1fr);padding:1mm}.pati-content{gap:1mm}.pati-zone-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:1mm}.pati-zone-card{height:15mm;grid-template-rows:auto minmax(0,1fr) auto;gap:.4mm;padding:1mm;font-size:6pt}.pati-zone-name{font-size:8.5pt!important}.pati-teacher-name{font-size:7.5pt!important;line-height:1.08}.coverage-item.not-completed{display:none}.coverage-comment-cell{grid-column:auto}.coverage-row{border-bottom:1px solid #aaa}.coverage-row:last-child{border-bottom:0}.coverage-professor-cell,.coverage-detail-cell,.coverage-assignment-cell,.coverage-comment-cell{border-color:#666;background:#fff}.coverage-professor-cell{background:#e8e8e8!important}.coverage-detail-cell{background:#f8f8f8!important}.coverage-assignment-cell{background:#ededed!important}.coverage-comment-cell{background:#fafafa!important}.pati-info-strip{border:1.5px solid #333;background:#d6d6d6!important}.pati-zone-card{border:1px solid #555;background:#ececec!important}.pati-zone-card:nth-child(2n){background:#f7f7f7!important}.coverage-comment-cell textarea,.coverage-comment-cell select,.coverage-assignment-cell select{display:none}html[data-guardies-print-density=compact] .print-header{margin-bottom:1.5mm;padding-block:1mm}html[data-guardies-print-density=compact] .print-header>img{height:7mm}html[data-guardies-print-density=compact] .print-header h1,html[data-guardies-print-density=compact] .print-header p{font-size:12pt}html[data-guardies-print-density=compact] .coverage-list{gap:.7mm}html[data-guardies-print-density=compact] .coverage-session-head{min-height:4.5mm;padding-block:.4mm}html[data-guardies-print-density=compact] .coverage-session-head h3{font-size:8pt!important}html[data-guardies-print-density=compact] .coverage-session-list{padding:.6mm}html[data-guardies-print-density=compact] .coverage-row-head{display:none}html[data-guardies-print-density=compact] .coverage-row{min-height:4.8mm}html[data-guardies-print-density=compact] .coverage-professor-cell,html[data-guardies-print-density=compact] .coverage-detail-cell,html[data-guardies-print-density=compact] .coverage-assignment-cell,html[data-guardies-print-density=compact] .coverage-comment-cell{padding:.45mm .7mm}html[data-guardies-print-density=compact] .coverage-professor-cell strong,html[data-guardies-print-density=compact] .coverage-detail-cell strong,html[data-guardies-print-density=compact] .coverage-detail-cell span,html[data-guardies-print-density=compact] .print-session-detail,html[data-guardies-print-density=compact] .print-assignment,html[data-guardies-print-density=compact] .coverage-comment-cell .print-only{font-size:7.25pt!important}html[data-guardies-print-density=maximum] .print-header{grid-template-columns:20mm minmax(0,1fr) auto;gap:2mm;margin-bottom:1mm;padding:.6mm 1.2mm}html[data-guardies-print-density=maximum] .print-header>img{width:20mm;height:6mm}html[data-guardies-print-density=maximum] .print-title-copy span{font-size:5pt}html[data-guardies-print-density=maximum] .print-header h1{font-size:11pt}html[data-guardies-print-density=maximum] .print-header p{font-size:10pt}html[data-guardies-print-density=maximum] .coverage-list{gap:.45mm}html[data-guardies-print-density=maximum] .coverage-session-head{min-height:3.8mm;padding:.2mm 1.2mm}html[data-guardies-print-density=maximum] .coverage-session-head h3{font-size:7pt!important}html[data-guardies-print-density=maximum] .coverage-session-head span{display:none}html[data-guardies-print-density=maximum] .coverage-session-list{padding:.4mm}html[data-guardies-print-density=maximum] .coverage-row-head{display:none}html[data-guardies-print-density=maximum] .coverage-table{gap:.35mm}html[data-guardies-print-density=maximum] .coverage-row{min-height:3.7mm;gap:.35mm}html[data-guardies-print-density=maximum] .coverage-professor-cell,html[data-guardies-print-density=maximum] .coverage-detail-cell,html[data-guardies-print-density=maximum] .coverage-assignment-cell,html[data-guardies-print-density=maximum] .coverage-comment-cell{padding:.25mm .5mm}html[data-guardies-print-density=maximum] .coverage-professor-cell strong,html[data-guardies-print-density=maximum] .coverage-detail-cell strong,html[data-guardies-print-density=maximum] .coverage-detail-cell span,html[data-guardies-print-density=maximum] .print-session-detail,html[data-guardies-print-density=maximum] .print-assignment,html[data-guardies-print-density=maximum] .coverage-comment-cell .print-only{font-size:6.25pt!important;line-height:1.02}html[data-guardies-print-density=maximum] .pati-info-strip{padding:.6mm}html[data-guardies-print-density=maximum] .pati-zone-card{height:11mm;padding:.6mm}html[data-guardies-print-density=maximum] .pati-zone-name,html[data-guardies-print-density=maximum] .pati-teacher-name{font-size:6pt!important}}}
