@font-face{font-family:Bricolage Grotesque Ext;src:url(../media/BricolageGrotesque-latin-ext.14r01_8b-ryu9.woff2)format("woff2");font-weight:200 800;font-display:swap;unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Ext;src:url(../media/HankenGrotesk-latin-ext.1akpt5k8ff_pw.woff2)format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--page:#fff;--tint:#faf7f4;--line:#e8e4e1;--row:#f4f1ee;--ink:#262b31;--muted:#5f6670;--placeholder:#7a828b;--primary:#4c6084;--on-primary:#fff;--secondary-border:#d9d3d6;--destructive:#8e5b46;--observer:#b5806a;--observer-ink:#8e5b46;--observer-soft:#f8eee9;--pupils:#8a6478;--pupils-ink:#6d4a5c;--pupils-soft:#f3edf1;--pupils-track:#e2d5dd;--teacher:#6b7fa3;--teacher-ink:#4c6084;--teacher-soft:#eef1f6;--rail:#262b31;--rail-label:#b2b8bf;--rail-active:#ffffff1f;--gold:#c9a68f;--grid-line:#f1eeeb;--field-border:#e0dcd8;--line-soft:#eeeae7;--neutral-fill:#e6e2de;--neutral-soft:#f2f0ee;--teacher-pale:#c7d0de;--track:#efece9;--level-1:#6f4433;--level-2:#9a6550;--level-3:#cfa491;--level-4:#e8d3c8;--level-5:#f6ece7;--r-card:14px;--r-control:8px;--r-chip:999px;--rail-width:88px;--font-display:"Bricolage Grotesque Ext", var(--font-bricolage), system-ui, sans-serif;--font-body:"Hanken Grotesk Ext", var(--font-hanken), system-ui, sans-serif;--fs-body:15px;--fs-small:13.5px;--fs-table:13.5px;--fs-rail:10.5px;--fs-h1:27px;--fs-h1-landing:64px;--ls-display:-.03em;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--page);min-height:100vh;color:var(--ink);font:400 var(--fs-body) / 1.5 var(--font-body);margin:0}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:var(--ls-display);overflow-wrap:break-word;margin:0;font-weight:600;line-height:1.15}h1{font-size:var(--fs-h1)}h2{font-size:calc(20px * var(--fs-scale,1))}h3{font-size:calc(17px * var(--fs-scale,1))}p{margin:0}a{color:inherit}a:hover{color:var(--primary)}button,input,select,textarea{font:inherit;color:inherit}svg{display:block}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--muted)}.num{font-family:var(--font-display);letter-spacing:var(--ls-display);font-variant-numeric:tabular-nums;font-weight:600}.btn{border:1px solid var(--secondary-border);border-radius:var(--r-control);background:var(--page);color:var(--primary);font:600 calc(13.5px * var(--fs-scale,1))/1.35 var(--font-body);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:9px 16px;text-decoration:none;display:inline-flex}.btn:hover{color:var(--primary);border-color:var(--teacher)}.btn.primary{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.btn.primary:hover{color:var(--on-primary);filter:brightness(.93)}.btn.destructive{color:var(--destructive)}.btn.large{font-size:calc(15px * var(--fs-scale,1));border-radius:10px;padding:14px 18px}.btn.block{width:100%;display:flex}.btn:disabled,.btn[aria-disabled=true],.btn.primary:disabled,.btn.primary[aria-disabled=true]{border-color:var(--neutral-fill);background:var(--neutral-fill);color:var(--muted);filter:none;cursor:not-allowed}.link-action{min-height:24px;color:var(--primary);cursor:pointer;background:0 0;border:0;align-items:center;padding:0 2px;font-weight:600;text-decoration:none;display:inline-flex}.link-action:hover{text-decoration:underline}.field{gap:8px;display:grid}.field>label,.field>.label{font-size:calc(14px * var(--fs-scale,1));color:var(--ink);font-weight:600}.field>.hint{font-size:var(--fs-small);color:var(--muted)}.field>.error{font-size:var(--fs-small);color:var(--destructive)}.input,.select,.textarea{border:1px solid var(--field-border);background:var(--page);width:100%;font-size:calc(14px * var(--fs-scale,1));border-radius:9px;padding:11px 13px;line-height:1.4}.input.large{font-size:calc(15.5px * var(--fs-scale,1));border-radius:10px;padding:15px 16px}.textarea{resize:vertical;min-height:120px}.input::placeholder,.textarea::placeholder{color:var(--placeholder);opacity:1}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:2px solid var(--primary);outline-offset:0;border-color:var(--primary);border-radius:9px}.segmented{border:1px solid var(--line);border-radius:var(--r-chip);background:var(--tint);font-size:calc(13px * var(--fs-scale,1));gap:2px;padding:3px;display:inline-flex}.segmented>a,.segmented>label{border-radius:var(--r-chip);color:var(--muted);cursor:pointer;padding:6px 14px;text-decoration:none}.segmented>a[aria-current=true]{background:var(--ink);color:var(--on-primary);font-weight:600}.segmented>label:has(input:checked){background:var(--ink);color:var(--on-primary);font-weight:600}.segmented input{opacity:0;pointer-events:none;position:absolute}.segmented>label:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.card{border:1px solid var(--line);border-radius:var(--r-card);background:var(--page)}.card.tint{background:var(--tint)}.card-head{border-bottom:1px solid var(--line-soft);border-radius:var(--r-card) var(--r-card) 0 0;background:var(--tint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;padding:14px 20px;display:flex}.card-head>b,.card-head>h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0;flex:none}.plain-page{gap:18px;max-width:880px;margin:0 auto;padding:40px 24px 72px;display:grid}.plain-page>header{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:18px;display:flex}.plain-page table{border-collapse:collapse;width:100%;font-size:var(--fs-table)}.plain-page th,.plain-page td{border-bottom:1px solid var(--row);text-align:left;vertical-align:top;padding:10px 8px}.plain-page th{color:var(--muted);font-weight:600}.pupil-screen{background:var(--page);width:100%;max-width:420px;min-height:100dvh;font-size:calc(15px * var(--fs-scale,1));flex-direction:column;margin:0 auto;padding:0 28px;line-height:1.5;display:flex}.pupil-entry{text-align:center;flex-direction:column;flex:1;align-items:center;padding:62px 0 34px;display:flex}.pupil-screen h1{margin:22px 0 0;line-height:1.15}.pupil-entry h1{font-size:calc(26px * var(--fs-scale,1))}.pupil-entry>p{color:var(--muted);margin:12px 0 0}.pupil-entry>.pupil-small{font-size:calc(13px * var(--fs-scale,1));margin-top:22px}.pupil-error{color:var(--destructive);font-size:calc(14px * var(--fs-scale,1));margin:14px 0 0}.code-entry{margin-top:28px;position:relative}.code-entry input{border:1.5px solid var(--field-border);width:100%;font:600 calc(26px * var(--fs-scale,1)) var(--font-display);letter-spacing:.3em;text-align:center;text-transform:uppercase;border-radius:12px;padding:14px}.code-boxes{display:none}.code-entry.awake input{opacity:0;cursor:text;width:100%;height:100%;position:absolute;inset:0}.code-entry.awake .code-boxes{justify-content:center;gap:8px;display:flex}.code-boxes span{border:1.5px solid var(--field-border);width:52px;height:60px;font:600 calc(26px * var(--fs-scale,1)) var(--font-display);border-radius:12px;justify-content:center;align-items:center;display:flex}.code-boxes span.filled{border-color:var(--primary)}.code-entry:focus-within .code-boxes span.caret:after{content:"";background:var(--primary);width:1px;height:26px}.code-entry:focus-within .code-boxes span.caret{border-color:var(--primary)}.code-entry.awake:has(input:focus-visible) .code-boxes{outline:2px solid var(--primary);outline-offset:4px;border-radius:14px}.pupil-continue,.pupil-next{font:600 calc(16px * var(--fs-scale,1)) var(--font-body);cursor:pointer;border:0;border-radius:14px}.pupil-continue{background:var(--primary);width:100%;color:var(--on-primary);margin-top:auto;padding:16px}.pupil-entry:has(input:invalid) .pupil-continue{background:var(--neutral-fill);color:var(--muted)}.pupil-says{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:32px 0;display:flex}.pupil-says p{max-width:34ch;color:var(--muted);margin:12px 0 0}.pupil-form{flex-direction:column;flex:1;padding:14px 0 30px;display:flex}.pupil-count{color:var(--muted);font-size:calc(12px * var(--fs-scale,1));text-align:right;margin:0}.pupil-progress{gap:4px;margin-top:22px;display:flex}.pupil-progress i{background:var(--pupils-track);border-radius:99px;flex:1;height:4px}.pupil-progress i.on{background:var(--pupils)}.pupil-kicker{color:var(--pupils-ink);font-size:calc(12.5px * var(--fs-scale,1));letter-spacing:.06em;text-transform:uppercase;margin:22px 0 0;font-weight:700}.pupil-form fieldset{border:0;flex-direction:column;gap:10px;min-width:0;margin:0;padding:0;display:flex}.pupil-form legend{padding:0}.pupil-form legend h1{font-size:calc(27px * var(--fs-scale,1));margin:10px 0 28px;line-height:1.2}.pupil-form legend h1:focus{outline:none}.pupil-form label{border:1.5px solid var(--field-border);font-size:calc(16px * var(--fs-scale,1));cursor:pointer;border-radius:14px;justify-content:space-between;padding:16px 18px;display:flex;position:relative}.pupil-form label input{opacity:0;cursor:pointer;position:absolute;inset:0}.pupil-form label:has(input:focus-visible){outline:2px solid var(--pupils-ink);outline-offset:2px}.pupil-form label.chosen{border-color:var(--pupils);background:var(--pupils-soft);color:var(--pupils-ink);font-weight:600}.pupil-nav{justify-content:space-between;align-items:center;margin-top:auto;padding-top:28px;display:flex}.pupil-back{color:var(--muted);font:inherit;font-size:calc(14px * var(--fs-scale,1));cursor:pointer;background:0 0;border:0;padding:8px 0}.pupil-back:disabled{visibility:hidden}.pupil-next{background:var(--pupils-ink);color:var(--on-primary);padding:14px 26px}.pupil-next:disabled{background:var(--neutral-fill);color:var(--muted);cursor:not-allowed}.wordmark{font-family:var(--font-display);letter-spacing:var(--ls-display);color:inherit;align-items:center;gap:.42em;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.mark{flex:none}.skip-link{z-index:60;border-radius:var(--r-control);background:var(--page);color:var(--primary);padding:9px 14px;font-weight:600;text-decoration:none;position:absolute;top:8px;left:8px;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.app-frame{background:var(--page);min-height:100vh;font:400 var(--fs-body) / 1.55 var(--font-body);display:flex}.app-main{flex:1;min-width:0;padding:32px 36px}.rail{width:var(--rail-width);background:var(--rail);height:100vh;color:var(--rail-label);font:500 var(--fs-rail) / 1.2 var(--font-body);flex-direction:column;flex:none;align-items:center;padding:18px 6px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.rail-home{border-radius:8px;margin-bottom:22px;display:flex}.rail-items{flex-direction:column;gap:4px;width:100%;margin:0;padding:0;list-style:none;display:flex}.rail-item{width:100%;color:var(--rail-label);border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:8px 0;text-decoration:none;display:flex;position:relative}.rail-item:hover{color:var(--on-primary)}.rail-item[aria-current=page]{background:var(--rail-active);color:var(--on-primary);font-weight:700}.rail :focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:10px}.rail-badge{border-radius:var(--r-chip);background:var(--gold);min-width:16px;height:16px;color:var(--ink);font-size:calc(10px * var(--fs-scale,1));justify-content:center;align-items:center;padding:0 3px;font-weight:700;display:flex;position:absolute;top:4px;right:14px}.rail-foot{flex-direction:column;align-items:center;width:100%;margin-top:auto;display:flex}.rail-avatar{border-radius:var(--r-chip);background:var(--gold);width:32px;height:32px;color:var(--ink);font-size:calc(11px * var(--fs-scale,1));justify-content:center;align-items:center;margin-top:10px;font-weight:700;text-decoration:none;display:flex}.rail-avatar:hover{color:var(--ink)}.rail-avatar[aria-current=page]{box-shadow:0 0 0 3px var(--rail-active)}.rail .rail-avatar:focus-visible{border-radius:var(--r-chip)}.rail-switch{border-top:1px solid var(--rail-active);border-bottom:1px solid var(--rail-active);flex-direction:column;align-items:center;gap:2px;width:100%;margin:0 0 8px;padding:8px 0 10px;display:flex}.rail-switch-title{font-size:var(--fs-rail);letter-spacing:.04em;text-transform:uppercase;color:var(--rail-label);margin:0 0 4px;font-weight:700}.rail-switch-item{width:100%;color:var(--rail-label);font:400 var(--fs-rail) / 1.2 var(--font-body);text-align:center;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:5px 2px;display:flex}.rail-switch-item:hover{color:var(--on-primary)}.rail-switch-initials{border-radius:var(--r-chip);background:var(--rail-active);width:26px;height:26px;color:var(--on-primary);font-size:calc(10px * var(--fs-scale,1));justify-content:center;align-items:center;font-weight:700;display:flex}.rail-switch-item[aria-pressed=true]{background:var(--rail-active);color:var(--on-primary);font-weight:700}.rail-switch-item[aria-pressed=true] .rail-switch-initials{background:var(--gold);color:var(--ink)}.app-column{flex-direction:column;flex:1;min-width:0;min-height:100vh;display:flex}:is(.app-column>.app-main:has(>.notes-screen),.app-column>.app-main:has(>.code-screen)){flex-direction:column;display:flex}.app-column .notes-screen,.app-column .code-screen{flex:1;min-height:0}.demo-banner{background:var(--ink);color:var(--on-primary);font-size:calc(13px * var(--fs-scale,1));flex-wrap:wrap;align-items:center;gap:4px 16px;padding:7px 36px;line-height:1.4;display:flex}.demo-banner p{margin:0}.demo-banner a{color:var(--gold);white-space:nowrap;font-weight:600;text-decoration:none}.demo-banner a:hover{text-decoration:underline}.demo-banner form,.demo-banner .demo-banner-door{margin-left:auto}.demo-banner .demo-banner-door+form{margin-left:0}.demo-banner-again{border:1px solid var(--rail-label);border-radius:var(--r-control);color:var(--on-primary);font:600 calc(12.5px * var(--fs-scale,1))/1.4 var(--font-body);cursor:pointer;background:0 0;padding:3px 12px}.demo-banner-again:hover{border-color:var(--on-primary)}.demo-banner :focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media (max-width:900px){.demo-banner{padding:7px 18px}}.not-here{text-align:center;max-width:520px;margin:56px auto 0}.not-here>.mark{opacity:.5;margin:0 auto}.not-here>h1{font-size:calc(26px * var(--fs-scale,1));margin-top:26px}.not-here>p{color:var(--muted);margin-top:10px}.not-here-actions{justify-content:center;gap:10px;margin-top:18px;display:flex}.not-here-actions .btn{padding:10px 16px}.toasts{z-index:50;pointer-events:none;justify-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);display:grid;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}body:has(.app-frame) .toasts{left:calc(50% + var(--rail-width) / 2);max-width:calc(100vw - var(--rail-width) - 32px)}.toast{background:var(--ink);color:var(--on-primary);font-size:var(--fs-small);pointer-events:auto;border-radius:12px;align-items:center;gap:12px;padding:12px 16px;line-height:1.4;display:flex;box-shadow:0 12px 30px -12px #00000080}.toast-dot{border-radius:var(--r-chip);background:var(--gold);flex:none;width:8px;height:8px}.toast-dismiss{color:var(--rail-label);font-size:var(--fs-small);cursor:pointer;background:0 0;border:0;flex:none;margin-left:6px;padding:0}.toast-dismiss:hover{color:var(--on-primary)}.toast-dismiss:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.page-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.page-head .dateline{font-size:calc(13px * var(--fs-scale,1));color:var(--muted)}.page-head h1{margin-top:6px}.page-head .btn{font-size:calc(14px * var(--fs-scale,1));padding:11px 18px}.state-pill{border-radius:var(--r-chip);font-size:calc(12px * var(--fs-scale,1));white-space:nowrap;border:1.5px solid #0000;padding:4px 11px;font-weight:600;line-height:1.35;display:inline-block}.state-pill.proposed{border-color:var(--teacher);background:var(--page);color:var(--teacher-ink)}.state-pill.scheduled{background:var(--teacher-soft);color:var(--teacher-ink)}.state-pill.live,.state-pill.evidence-window{background:var(--observer-soft);color:var(--observer-ink)}.state-pill.summary{background:var(--pupils-soft);color:var(--pupils-ink)}.state-pill.closed,.state-pill.lapsed,.state-pill.cancelled{background:var(--neutral-soft);color:var(--muted)}.coverage-dots{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dot{border-radius:var(--r-chip);flex:none;width:14px;height:14px;display:inline-block}.dot.closed{background:var(--teacher)}.dot.taught{border:2px solid var(--teacher);background:linear-gradient(90deg, var(--teacher) 50%, transparent 50%)}.dot.scheduled{border:2px solid var(--teacher)}.dot.walk{border:1.5px dashed var(--secondary-border)}.dot.none{background:var(--neutral-fill)}.coverage-key{font-size:calc(12px * var(--fs-scale,1));color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;display:flex}.coverage-key>span{align-items:center;gap:5px;display:flex}.coverage-key .dot{width:10px;height:10px}.coverage-bar{border-radius:var(--r-chip);background:var(--track);display:flex;overflow:hidden}.coverage-bar.lg{height:12px}.coverage-bar.row{height:9px}.coverage-bar .observed{background:var(--teacher)}.coverage-bar .scheduled{background:var(--teacher-pale)}.coverage-bar.alert .observed{background:var(--observer)}.card.waiting,.card.coverage,.card.departments{overflow:hidden}.card-head .count{border-radius:var(--r-chip);background:var(--ink);min-width:22px;height:22px;color:var(--on-primary);font-size:calc(12px * var(--fs-scale,1));justify-content:center;align-items:center;padding:0 5px;font-weight:700;display:flex}.waiting ul,.agenda ul{margin:0;padding:0;list-style:none}.waiting li+li{border-top:1px solid var(--row)}.waiting a{color:inherit;gap:12px;padding:13px 20px;text-decoration:none;display:flex}.waiting li.with-quick{align-items:center;display:flex}.waiting li.with-quick>a{flex:1;min-width:0}.waiting li.with-quick>form{flex:none;padding-right:20px}.waiting a.with-action{padding:14px 20px}.waiting a:hover{background:var(--tint);color:inherit}.waiting a:focus-visible{outline-offset:-2px}.waiting .tone{border-radius:var(--r-chip);flex:none;width:8px;height:8px;margin-top:7px}.tone.almond{background:var(--observer)}.tone.plum{background:var(--pupils)}.tone.denim{background:var(--teacher)}.waiting .words{flex:1;gap:2px;display:grid}.waiting .words>b{font-size:calc(14px * var(--fs-scale,1))}.waiting .words>span{font-size:calc(13px * var(--fs-scale,1));color:var(--muted)}.waiting a.with-action .words>b{font-size:calc(14.5px * var(--fs-scale,1))}.waiting a.with-action .words>span{font-size:var(--fs-small)}.waiting .action{font-size:var(--fs-small);color:var(--primary);flex:none;font-weight:600}.empty{font-size:var(--fs-small);color:var(--muted);padding:14px 20px}.card.agenda{padding:18px 20px}.card.agenda>h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.agenda ul{gap:8px;margin-top:10px;display:grid}.agenda a{background:var(--tint);color:inherit;font-size:var(--fs-small);border-radius:9px;padding:10px 12px;text-decoration:none;display:grid}.agenda a>span{color:var(--muted)}.agenda a.mine{border-left:3px solid var(--observer);background:var(--observer-soft)}.agenda a.no-observer{border:1px dashed var(--secondary-border)}.agenda a>span.alert{color:var(--destructive);font-weight:600}.agenda .empty{padding:8px 0 0}.next-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0 0;padding:0;list-style:none;display:grid}.next-steps>li{background:var(--tint);font-size:calc(14px * var(--fs-scale,1));border-radius:10px;padding:12px 14px}.next-steps .n{margin-right:8px}.date-tile{border:1px solid var(--line);background:var(--tint);border-radius:10px;flex:none;justify-items:center;width:58px;padding:7px 0;display:grid}.date-tile>span{font-size:calc(11px * var(--fs-scale,1));color:var(--muted)}.date-tile>b{font:600 calc(24px * var(--fs-scale,1))/1 var(--font-display);letter-spacing:var(--ls-display)}.person-discs{display:inline-flex}.person-discs>i{border-radius:var(--r-chip);width:24px;height:24px;color:var(--on-primary);font-size:calc(10px * var(--fs-scale,1));justify-content:center;align-items:center;font-style:normal;font-weight:700;display:flex}.person-discs>i+i{box-sizing:content-box;border:2px solid var(--page);margin-left:-4px}.person-discs .lead{background:var(--teacher-ink)}.person-discs .guest{background:var(--observer-ink)}.today-grid{align-items:start;gap:22px;margin-top:22px;display:grid}.today-grid.teacher{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);margin-top:24px}.today-grid.wide{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.today-grid.wide>.today-coverage{grid-area:1/1}.today-grid.wide>.today-actions{grid-area:1/2}.today-grid.first-run{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);margin-top:24px}.stack{gap:20px;display:grid}.eyebrow{font-size:calc(11px * var(--fs-scale,1));letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}.card .top{justify-content:space-between;align-items:center;gap:12px;display:flex}.card .top>h2,.what-happens>h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.card .top .meta,.card-head .meta{font-size:calc(13px * var(--fs-scale,1));color:var(--muted)}.card .when{align-items:center;gap:16px;margin-top:16px;display:flex}.card .when>div{display:grid}.card .when>div>b{font-size:calc(16px * var(--fs-scale,1))}.card .when>div>span{font-size:var(--fs-small);color:var(--muted)}.card .focus{border-top:1px solid var(--grid-line);gap:3px;margin-top:16px;padding-top:14px;display:grid}.card .focus>p{margin-top:1px}.card .focus>.small{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted)}.card .actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.card .actions .error{font-size:var(--fs-small);color:var(--destructive);flex-basis:100%}.next-observation{padding:20px 22px}.next-observation .observers{font-size:var(--fs-small);align-items:center;gap:12px;margin-top:14px;display:flex}.next-observation .nothing{font-size:calc(14.5px * var(--fs-scale,1));color:var(--muted);margin-top:14px}.last-steps{border-left:3px solid var(--teacher);margin-top:22px;padding:18px 22px}.last-steps .foot{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin-top:12px}.today-foot{font-size:var(--fs-small);color:var(--muted);flex-wrap:wrap;gap:26px;margin-top:22px;display:flex}.today-foot b{color:var(--ink)}.today-foot a{color:var(--primary);margin-left:auto;font-weight:600;text-decoration:none}.today-foot a:hover{text-decoration:underline}.card.invite{border-left:3px solid var(--pupils);max-width:760px;margin-top:24px;padding:20px 22px}.card.invite .actions .btn{padding:10px 18px}.peer-note{background:var(--pupils-soft);color:var(--pupils-ink);font-size:calc(12.5px * var(--fs-scale,1));border-radius:8px;margin-top:14px;padding:10px 12px}.one-thing{border-left:3px solid var(--teacher);justify-items:start;padding:22px 24px;display:grid}.one-thing .eyebrow{color:var(--teacher-ink)}.one-thing>h2{font-size:calc(22px * var(--fs-scale,1));letter-spacing:-.02em;margin-top:8px;line-height:1.2}.one-thing>p{font-size:calc(14.5px * var(--fs-scale,1));color:var(--muted);margin-top:8px}.one-thing>.reminded{color:var(--observer-ink);font-weight:600}.one-thing .week{grid-template-columns:repeat(5,1fr);gap:3px;width:100%;max-width:260px;margin-top:12px;display:grid}.one-thing .week>i{background:var(--neutral-fill);border-radius:3px;height:16px}.one-thing>.btn{margin-top:18px;padding:10px 18px}.what-happens{padding:18px 20px}.what-happens ul{font-size:var(--fs-small);color:var(--muted);gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.what-happens li{gap:10px;display:flex}.what-happens li b{color:var(--ink)}.what-happens .tone{border-radius:var(--r-chip);flex:none;width:10px;height:10px;margin-top:6px}.what-happens>p{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin-top:14px}.first-run-foot{font-size:var(--fs-small);color:var(--muted);margin-top:22px}.coverage ul,.departments ul{margin:0;padding:0;list-style:none}.coverage li,.departments li{border-bottom:1px solid var(--row);font-size:var(--fs-small);align-items:center;gap:14px;display:grid}.coverage li{grid-template-columns:minmax(0,1.3fr) 150px minmax(0,1.4fr) 92px;min-height:66px;padding:12px 20px}.departments li{grid-template-columns:minmax(0,1.2fr) minmax(0,1.5fr) 110px 70px;padding:13px 20px}.departments li:last-child{border-bottom:0}.coverage li.alert,.departments li.alert{background:var(--tint)}.coverage .who,.departments .who{display:grid}.coverage .who>span,.departments .who>span{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted)}.coverage .note,.departments .counts{color:var(--muted)}.coverage li.alert .note,.departments li.alert .counts,.departments li.alert .who>span{color:var(--destructive)}.departments li.alert .counts,.departments li.alert .who>span{font-weight:600}.departments .counts{font-variant-numeric:tabular-nums}.coverage .link-action,.departments .link-action,.departments .acts,.coverage li>.muted:last-child{text-align:right;justify-self:end}.coverage .foot{border-top:1px solid var(--line-soft);font-size:calc(13px * var(--fs-scale,1));color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px 20px;display:flex}.coverage ul+.foot{margin-top:-1px}.coverage .foot b{color:var(--ink)}@media (max-width:1200px){.coverage li{grid-template-columns:minmax(0,1fr) 120px}}.school-coverage{grid-template-columns:170px minmax(0,1fr);align-items:center;gap:24px;margin-top:22px;padding:18px 22px;display:grid}.school-coverage .total{font-size:calc(14px * var(--fs-scale,1));color:var(--muted);align-items:baseline;gap:6px;display:flex}.school-coverage .total .num{font-size:calc(32px * var(--fs-scale,1));color:var(--ink);line-height:1}.school-coverage .caption{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin-top:4px}.school-coverage .legend{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);flex-wrap:wrap;gap:18px;margin-top:8px;display:flex}.school-coverage .legend b{color:var(--ink)}.school-coverage .legend .left{margin-left:auto}@media (max-width:900px){.app-main{padding:24px 18px}.today-grid.teacher,.today-grid.wide,.today-grid.first-run,.next-steps,.school-coverage{grid-template-columns:minmax(0,1fr)}.departments li{grid-template-columns:minmax(0,1fr) 120px}.today-grid.wide>.today-coverage,.today-grid.wide>.today-actions{grid-area:auto}.page-head{flex-wrap:wrap}}@media (max-width:480px){.coverage li{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who act""dots dots""note note"}.departments li{grid-template-columns:minmax(0,1fr) 72px;grid-template-areas:"who act""bar counts"}.coverage li>.who,.departments li>.who{grid-area:who}.coverage li>.coverage-dots{grid-area:dots}.coverage li>.note{grid-area:note}.departments li>.coverage-bar{grid-area:bar}.departments li>.counts{grid-area:counts}.coverage li>.link-action,.coverage li>.muted:last-child,.departments li>.link-action,.departments li>.acts{grid-area:act}}.public-card{min-height:100vh;font:400 var(--fs-body) / 1.55 var(--font-body);justify-content:center;align-items:center;padding:40px 20px;display:flex}.public-card .over{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin-top:28px}.public-card h1{font-size:calc(30px * var(--fs-scale,1));margin-top:28px;line-height:1.12}.public-card .over+h1{margin-top:6px}.public-card .lede{color:var(--muted);margin-top:10px}.public-card .lede b{color:var(--ink)}.public-form{gap:12px;margin-top:26px;display:grid}.public-form .field{gap:6px}.public-form .field>label{font-size:calc(13px * var(--fs-scale,1))}.public-form .input.large{font-size:calc(14.5px * var(--fs-scale,1));padding:12px 14px}.public-form .notice{border-radius:var(--r-control);background:var(--observer-soft);color:var(--observer-ink);font-size:var(--fs-small);padding:10px 12px}.public-card .small-print{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin-top:18px}.public-card .small-print a,.public-actions a:not(.btn){color:var(--primary);font-weight:600;text-decoration:none}.public-card .small-print a:hover,.public-actions a:not(.btn):hover{text-decoration:underline}.public-note{font-size:var(--fs-small);color:var(--muted);margin-top:22px;padding:18px 20px}.public-note b{color:var(--ink)}.public-note p{margin-top:6px}.public-actions{font-size:var(--fs-small);color:var(--muted);flex-wrap:wrap;align-items:flex-start;gap:10px 14px;margin-top:18px;display:flex}.public-actions>span{padding:10px 0}.public-actions .btn{padding:10px 16px}.resend-status{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin-top:6px}.resend-status:empty{display:none}.you-are{margin-top:22px;padding:18px 20px;display:grid}.you-are>b{font-size:calc(16px * var(--fs-scale,1));margin-top:6px;font-weight:600}.you-are .chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.you-are>p{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin-top:10px}.sign-in-with{gap:6px;margin-top:14px}.sign-in-with .label{font-size:calc(12.5px * var(--fs-scale,1))}.sign-in-with+form{margin-top:16px}.sign-in-with+form .error{font-size:var(--fs-small);color:var(--destructive);margin-top:8px}.membership-chip{background:var(--neutral-soft);color:var(--muted);font-size:calc(12px * var(--fs-scale,1));border-radius:6px;padding:3px 9px;display:inline-block}.membership-chip.curriculum-leader{background:var(--observer-soft);color:var(--observer-ink);font-weight:600}.membership-chip.slt{background:var(--teacher-soft);color:var(--teacher-ink);font-weight:600}.back-link{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);text-decoration:none;display:inline-block}.back-link:hover{color:var(--primary)}.page-head.bottom{align-items:flex-end;margin-top:8px}.page-head.bottom h1{margin-top:0}.page-head .lede{font-size:calc(14px * var(--fs-scale,1));color:var(--muted);margin-top:6px}.status-chip{border-radius:var(--r-chip);background:var(--neutral-soft);color:var(--muted);font-size:calc(12.5px * var(--fs-scale,1));white-space:nowrap;flex:none;padding:5px 12px;font-weight:600}.status-chip.verified,.status-chip.filled-in{background:var(--teacher-soft);color:var(--teacher-ink)}.status-chip.not-started{background:var(--observer-soft);color:var(--observer-ink)}.empty-words{color:var(--muted);margin-top:22px;padding:22px 24px}.week-grid{border-collapse:collapse;table-layout:fixed;width:100%}.week-grid thead th,.week-grid thead td{border-bottom:1px solid var(--line-soft);background:var(--tint);font-size:calc(13px * var(--fs-scale,1));text-align:left;padding:11px 12px;font-weight:600}.week-grid thead td{width:78px}.week-grid thead th,.week-grid tbody td{border-left:1px solid var(--grid-line)}.week-grid thead th .sub{color:var(--muted);font-weight:400}.week-grid tbody th[scope=row]{font-size:calc(12px * var(--fs-scale,1));color:var(--muted);text-align:left;vertical-align:top;padding:8px 12px;font-weight:400;line-height:1.3}.week-grid tbody th[scope=row] b{color:var(--ink);display:block}.week-grid tbody td{vertical-align:top;height:60px;padding:0}.week-grid tbody tr:not(.band)+tr:not(.band) td{border-top:1px solid var(--row)}.week-grid tr.band th{vertical-align:middle;border-top:1px solid var(--grid-line);border-bottom:1px solid var(--grid-line);background:var(--tint);height:60px;font-size:calc(11.5px * var(--fs-scale,1));color:var(--muted);padding:6px 12px}.week-grid.picker thead td{width:44px}.week-grid.picker tbody td{height:56px}.timetable-layout{grid-template-columns:minmax(0,1fr) 268px;align-items:start;gap:22px;margin-top:22px;display:grid}.week-card{overflow:hidden}.slot-block,.slot-edit{border-radius:var(--r-control);min-height:48px;line-height:1.55;font-size:calc(13px * var(--fs-scale,1));border:1.5px solid #0000;flex-direction:column;margin:6px;padding:6.5px 8.5px;display:flex}.slot-block,.slot-edit.filled{background:var(--row)}.slot-block b{font-weight:700}.slot-block span{font-size:calc(12px * var(--fs-scale,1));color:var(--muted)}.slot-edit input{width:100%;min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;padding:0;line-height:1.55}.slot-edit input:focus-visible{outline:2px solid var(--primary);outline-offset:1px;border-radius:3px}.slot-edit .code{font-weight:700}.slot-edit .room{font-size:calc(12px * var(--fs-scale,1));color:var(--muted)}.slot-edit input::placeholder{color:#0000}.slot-edit:not(.filled):not(:focus-within) .room{visibility:hidden}.slot-edit:hover{border-color:var(--teacher-pale)}.slot-edit:focus-within{border-color:var(--primary);background:var(--page)}.slot-edit:focus-within .code{font-weight:400}.slot-edit:focus-within input::placeholder,.slot-edit:hover input::placeholder{color:var(--placeholder)}.slot-edit.filled:not(:focus-within):hover input::placeholder{color:var(--muted)}.timetable-side .card{padding:18px 20px}.timetable-side .card+.card{margin-top:16px}.timetable-side h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.timetable-side p{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin-top:12px}.this-week .totals{gap:22px;margin:12px 0 0;display:flex}.this-week .totals dd{font:600 calc(24px * var(--fs-scale,1))/1 var(--font-display);letter-spacing:var(--ls-display);margin:0}.this-week .totals dt{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin-top:4px}.this-week .totals>div{flex-direction:column;display:flex}.class-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.class-chip{border:1px solid var(--line);border-radius:var(--r-chip);background:var(--page);font:400 calc(12.5px * var(--fs-scale,1))/1.5 var(--font-body);color:var(--ink);cursor:pointer;padding:4px 10px}.class-chip:hover{border-color:var(--teacher);color:var(--primary)}.this-week .hint:empty{display:none}.unsaved .eyebrow{color:var(--observer-ink)}.unsaved h2{margin-top:4px}.unsaved p{font-size:calc(13.5px * var(--fs-scale,1));margin-top:6px}.unsaved .error{font-size:calc(13px * var(--fs-scale,1));color:var(--destructive);margin:10px 0 0;padding-left:18px}.unsaved .btn{white-space:normal;margin-top:12px}.timetable-side .foot-note{font-size:calc(12.5px * var(--fs-scale,1));margin-top:14px}@media (max-width:900px){.timetable-layout{grid-template-columns:minmax(0,1fr)}.week-card{overflow-x:auto}.week-card .week-grid{min-width:640px}}.queue-counts{font-size:calc(13.5px * var(--fs-scale,1));gap:22px;margin:20px 0 0;display:flex}.queue-counts>div{align-items:baseline;gap:5px;display:flex}.queue-counts dd{font:600 calc(22px * var(--fs-scale,1))/1 var(--font-display);letter-spacing:var(--ls-display);margin:0}.queue-counts dt{color:var(--muted)}.queue-counts .awaiting dd{color:var(--teacher-ink)}.queue-counts .not-started dd{color:var(--observer-ink)}.queue{margin-top:18px;position:relative;overflow:hidden}.queue table{border-collapse:collapse;width:100%;font-size:var(--fs-table)}.queue th,.queue td{border-bottom:1px solid var(--row);text-align:left;color:var(--muted);padding:13px 7px}.queue th:first-child{padding-left:20px}.queue td:last-child,.queue th:last-child{padding-right:20px}.queue thead th{font-size:calc(11.5px * var(--fs-scale,1));letter-spacing:.06em;text-transform:uppercase;padding-top:10px;padding-bottom:10px;font-weight:700}.queue thead th:nth-child(2){width:164px}.queue thead th:nth-child(3){width:154px}.queue thead th:nth-child(5){width:160px}.queue tbody th{color:var(--ink);font-weight:700}.queue tbody th a{text-decoration:none}.queue tbody th .you{color:var(--muted);font-weight:400}.queue tr.filled-in .status{color:var(--teacher-ink);font-weight:600}.queue tr.not-started .status{color:var(--observer-ink);font-weight:600}.queue .act{text-align:right;padding-top:4px;padding-bottom:4px}.queue .act .btn{padding:8px 16px}.queue .act .open{font-size:calc(13px * var(--fs-scale,1));color:var(--primary);font-weight:600;text-decoration:none}.queue .act .open:hover{color:var(--primary);text-decoration:underline}.queue-foot{background:var(--tint);font-size:calc(13px * var(--fs-scale,1));color:var(--muted);padding:12px 20px}@media (max-width:760px){.queue{overflow-x:auto}.queue table{min-width:640px}}.state-line{font-size:calc(12px * var(--fs-scale,1));color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;padding:6px 0 0;list-style:none;display:flex}.state-line>li{white-space:nowrap;align-items:center;gap:6px;display:flex}.state-line>li+li:before{content:"·"}.state-line .state-pill{font-weight:700}.state-line>li.side:before{content:"";width:10px}.page-head.bottom .segmented{font-size:calc(13.5px * var(--fs-scale,1));flex:none}.page-head.bottom .segmented>a{padding:7px 14px}.slot-picker{grid-template-columns:196px minmax(0,1fr) 256px;align-items:start;gap:18px;margin-top:22px;display:grid}.slot-picker.ask{grid-template-columns:236px minmax(0,1fr) 280px}.slot-picker.move{grid-template-columns:minmax(0,1fr) 300px;gap:22px}.slot-picker>.card{overflow:hidden}.arrange-why{font-size:calc(14px * var(--fs-scale,1));color:var(--ink);padding:14px 18px}.picker-head{border-bottom:1px solid var(--line-soft);background:var(--tint);font:600 calc(13px * var(--fs-scale,1))/1.4 var(--font-body);letter-spacing:0;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:12px 16px;display:flex}.picker-head h2{font:inherit;letter-spacing:0}.picker-head h2:focus{outline:none}.picker-foot{border-top:1px solid var(--line-soft);font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);padding:10px 16px}.picker-people ul{margin:0;padding:0;list-style:none}.picker-empty{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);padding:14px 16px}.picker-people li+li{border-top:1px solid var(--row)}.picker-people li>a,.picker-people li>.unavailable{font-size:calc(13.5px * var(--fs-scale,1));color:var(--ink);align-items:center;gap:10px;padding:11px 16px;text-decoration:none;display:flex}.picker-people li>a:hover,.picker-people li>a[aria-current=true]{background:var(--teacher-soft);color:var(--ink)}.picker-people li>a:focus-visible{outline-offset:-2px}.picker-people .dot{width:10px;height:10px}.picker-people .who{flex:1;min-width:0}.picker-people .who b{display:block}.picker-people .note,.picker-people .trailing{font-size:calc(12px * var(--fs-scale,1));color:var(--muted)}.picker-people .note.alert{color:var(--observer-ink)}.picker-people .trailing{flex:none}.disc{border-radius:var(--r-chip);background:var(--neutral-fill);width:28px;height:28px;color:var(--muted);font:700 calc(10.5px * var(--fs-scale,1))/1 var(--font-body);flex:none;justify-content:center;align-items:center;font-style:normal;display:inline-flex}.picker-people a[aria-current=true] .disc{background:var(--primary);color:var(--on-primary)}.week-switch{font-size:calc(12.5px * var(--fs-scale,1));gap:2px;font-weight:400;display:flex}.week-switch a{border-radius:var(--r-chip);color:var(--muted);border:1px solid #0000;padding:4px 10px;text-decoration:none}.week-switch a[aria-current=true]{border-color:var(--line);background:var(--page);color:var(--ink);font-weight:600}.week-grid.picker thead th,.week-grid.picker thead td{border-bottom:1px solid var(--line-soft);background:var(--page);font-size:calc(12.5px * var(--fs-scale,1));padding:9px 8px}.week-grid.picker thead th .sub{color:inherit;font-weight:600}.week-grid.picker tbody th[scope=row]{font-size:calc(11px * var(--fs-scale,1));text-align:right;padding:6px 8px}.week-grid.picker tbody th[scope=row] b{color:var(--muted);font-weight:400}.week-grid.picker tbody th[scope=row] .time{display:none}.week-grid.picker tbody tr+tr td{border-top-color:var(--row)}.slot-cell{border:1px solid var(--teacher-pale);border-radius:var(--r-control);background:var(--teacher-soft);font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin:5px;padding:7px 9px;line-height:1.45;text-decoration:none;display:block}.slot-cell b{color:var(--teacher-ink);overflow-wrap:break-word;display:block}.slot-cell>span{overflow-wrap:break-word;min-height:1.45em;display:block}a.slot-cell:hover{border-color:var(--teacher);color:var(--muted)}a.slot-cell[aria-current=true],a.slot-cell[aria-current=true]:hover{border-color:var(--primary);background:var(--primary);color:#ffffffd9}a.slot-cell[aria-current=true] b{color:var(--on-primary)}.slot-cell.past{background:var(--neutral-soft);font-size:calc(12px * var(--fs-scale,1));color:var(--muted);border-color:#0000}.slot-cell.current{border:0;border-left:3px solid var(--observer);background:var(--observer-soft)}.slot-cell.current b{color:var(--observer-ink)}.picker-summary{padding:20px 22px}.picker-summary h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.picker-summary .when{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin-top:2px}.picker-summary .eyebrow{margin-top:16px;display:block}.picker-summary .value{font-size:calc(14.5px * var(--fs-scale,1));margin-top:4px}.picker-summary .field-block .input,.picker-summary .field-block .textarea{border-radius:var(--r-control);font-size:calc(13.5px * var(--fs-scale,1));margin-top:6px;padding:10px 12px}.picker-summary .field-block .textarea{resize:vertical;min-height:0;display:block}.picker-summary .hint{font-size:calc(12px * var(--fs-scale,1));color:var(--muted);margin-top:5px}.picker-summary .field-block+.field-block .eyebrow,.picker-summary .observers .eyebrow{margin-top:14px}.add-guest summary{font-size:calc(13.5px * var(--fs-scale,1));cursor:pointer;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;list-style:none;display:flex}.add-guest summary::-webkit-details-marker{display:none}.add-guest .you{align-items:center;gap:8px;display:flex}.add-guest .you .disc{background:var(--observer-ink);width:24px;height:24px;color:var(--on-primary);font-size:calc(10px * var(--fs-scale,1))}.add-guest .add{color:var(--primary);font-weight:600}.add-guest .select{border-radius:var(--r-control);font-size:calc(13.5px * var(--fs-scale,1));margin-top:8px;padding:9px 10px}.type-note{border:1px solid var(--field-border);border-radius:var(--r-control);background:var(--page);font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin-top:16px;padding:10px 12px}.type-note b{color:var(--ink)}.arrange-form .error{font-size:calc(13px * var(--fs-scale,1));color:var(--destructive);margin-top:12px}.arrange-form .btn.block{font-size:calc(14px * var(--fs-scale,1));white-space:normal;margin-top:16px;padding:12px}@media (max-width:1180px){.slot-picker{grid-template-columns:196px minmax(0,1fr)}.slot-picker.ask{grid-template-columns:220px minmax(0,1fr)}.slot-picker.move{grid-template-columns:minmax(0,1fr)}.slot-picker>.picker-summary{grid-column:1/-1}}@media (max-width:1000px){.slot-picker,.slot-picker.ask,.slot-picker.move{grid-template-columns:minmax(0,1fr)}.slot-picker>.picker-week{overflow-x:auto}.picker-week .week-grid{min-width:560px}}.room-head{justify-content:space-between;align-items:flex-start;gap:24px;margin-top:8px;display:flex}.room-head .meta{font-size:calc(13px * var(--fs-scale,1));color:var(--muted)}.room-head h1{margin-top:4px}.room-head .state-line{flex:none;max-width:100%}.room-facts{border-top:1px solid var(--grid-line);border-bottom:1px solid var(--grid-line);font-size:calc(13.5px * var(--fs-scale,1));justify-content:space-between;align-items:flex-start;gap:12px 24px;margin-top:14px;padding:12px 0;display:flex}.room-facts .facts{flex-wrap:wrap;align-items:baseline;gap:10px 28px;min-width:0;padding-top:10px;display:flex}.room-facts .label{color:var(--muted);margin-right:6px}.room-facts .acts{flex:none;gap:10px;display:flex}.room-facts .acts .btn{padding:10px 16px}.focus-edit{vertical-align:top;margin-left:8px;display:inline-block}.focus-edit summary{color:var(--primary);cursor:pointer;font-weight:600;list-style:none;display:inline}.focus-edit summary::-webkit-details-marker{display:none}.focus-edit form{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.focus-edit .input{width:min(420px,60vw);max-width:100%;font-size:calc(13.5px * var(--fs-scale,1));padding:9px 12px}@media (max-width:480px){.focus-edit{margin-left:0;display:block}.focus-edit .input{width:100%}}.room-body{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:22px;margin-top:22px;display:grid}.room-main{gap:16px;display:grid}.room-body .panel{padding:18px 20px}.room-body .panel h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.room-body .panel p{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin-top:6px}.room-body .panel p.small{font-size:calc(13px * var(--fs-scale,1));margin-top:10px}.room-body .panel p b{color:var(--ink)}.room-body .panel.alert{border-left:3px solid var(--observer)}.room-body .panel form,.room-body .panel>.btn,.room-body .panel .row-actions{margin-top:12px}.room-body .panel .row-actions{flex-wrap:wrap;gap:10px;display:flex}.room-body .panel .row-actions form{margin-top:0}.room-body .panel .actions,.room-body .with-pill{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.room-body .with-pill.apart{flex-wrap:nowrap;justify-content:space-between;align-items:flex-start}.room-body .with-pill.apart .state-pill{flex:none}.room-body .panel p.quoted{color:var(--ink)}.cancel-dialog{border:1px solid var(--line);border-radius:var(--r-card);background:var(--page);width:min(420px,100vw - 32px);color:var(--ink);padding:20px 22px;box-shadow:0 16px 40px -24px #00000059}.cancel-dialog::backdrop{background:#262b3152}.cancel-dialog .eyebrow{color:var(--observer-ink)}.cancel-dialog h2{font:700 calc(16px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0;margin-top:6px}.cancel-dialog p{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin-top:6px}.cancel-dialog fieldset{font-size:calc(13.5px * var(--fs-scale,1));border:0;gap:6px;margin:12px 0 0;padding:0;display:grid}.cancel-dialog fieldset label{border:1px solid var(--line);border-radius:var(--r-control);cursor:pointer;align-items:center;gap:10px;padding:9px 12px;display:flex}.cancel-dialog fieldset label:has(input:checked){border-color:var(--teacher-pale);background:var(--teacher-soft)}.cancel-dialog fieldset input{width:14px;height:14px;accent-color:var(--primary);margin:0}.cancel-dialog .actions{font-size:calc(13.5px * var(--fs-scale,1));flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:16px;display:flex}.cancel-dialog .actions .btn{padding:10px 18px}.cancel-dialog .link-action.quiet{color:var(--muted);font:600 calc(13.5px * var(--fs-scale,1))/1.35 var(--font-body);margin-left:auto}.cancel-dialog .foot{font-size:calc(12.5px * var(--fs-scale,1));margin-top:12px}.cancel-dialog .error{color:var(--destructive)}.picker-summary .value.small{font-size:calc(13.5px * var(--fs-scale,1))}.picker-summary .value.replaced{color:var(--muted)}.picker-summary .hint.after{font-size:calc(12.5px * var(--fs-scale,1));margin-top:14px}@media (max-width:1000px){.room-body{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.room-head{flex-direction:column;gap:8px}.room-facts{flex-direction:column}}.app-main:has(>.notes-screen){padding:0}.notes-screen{flex-direction:column;min-height:100vh;display:flex}.notes-head{border-bottom:1px solid var(--line);align-items:center;gap:18px;padding:18px 36px;display:flex}.notes-head .back{color:var(--muted);font-size:calc(13px * var(--fs-scale,1));white-space:nowrap;text-decoration:none}.notes-head .back:hover{color:var(--primary)}.notes-what{flex-direction:column;min-width:0;display:flex}.notes-what b{font-size:calc(16px * var(--fs-scale,1));font-weight:700}.notes-what span{color:var(--muted);font-size:calc(13px * var(--fs-scale,1))}.notes-live{font-size:calc(12.5px * var(--fs-scale,1));border:0;align-items:center;gap:6px;padding:5px 12px;font-weight:700;display:inline-flex}.notes-live i,.notes-waiting i{background:var(--observer);border-radius:99px;width:7px;height:7px}.notes-focus{border:1px solid var(--line);border-radius:var(--r-chip);background:var(--tint);color:var(--muted);font-size:calc(12.5px * var(--fs-scale,1));white-space:nowrap;text-overflow:ellipsis;max-width:320px;padding:5px 12px;overflow:hidden}.notes-others{color:var(--muted);font-size:calc(12.5px * var(--fs-scale,1));text-align:right;margin-left:auto}.note-lines{flex-direction:column;flex:1;gap:10px;max-width:892px;margin:0;padding:22px 36px;list-style:none;display:flex}.note-lines li{font-size:calc(14.5px * var(--fs-scale,1));gap:14px;line-height:1.5;display:flex}.note-lines time{width:44px;color:var(--observer-ink);font-size:calc(12.5px * var(--fs-scale,1));font-variant-numeric:tabular-nums;flex:none;padding-top:2px;font-weight:700}.note-lines li time.other-day small{color:var(--muted);font-size:calc(11px * var(--fs-scale,1));white-space:nowrap;font-weight:600;display:block}.note-lines li.pending span{color:var(--muted)}.note-lines li.pending small{font-size:calc(12px * var(--fs-scale,1))}.note-lines li.none{color:var(--muted)}.notes-dock{border-top:1px solid var(--line);background:var(--tint);padding:16px 36px 0;position:sticky;bottom:0}.notes-dock.closed{padding-bottom:16px}.notes-dock>*{max-width:820px}.notes-add{border:1px solid var(--secondary-border);background:var(--page);border-radius:12px;align-items:center;gap:12px;padding:4px 16px 4px 4px;display:flex}.notes-add:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--teacher-soft)}.notes-add input{min-width:0;color:var(--ink);font:inherit;font-size:calc(15px * var(--fs-scale,1));background:0 0;border:0;flex:1;padding:10px 12px}.notes-add input:focus{outline:none}.notes-add input::placeholder{color:var(--placeholder)}.notes-add kbd{background:var(--row);color:var(--muted);font:inherit;font-size:calc(11.5px * var(--fs-scale,1));border-radius:6px;padding:3px 8px}.notes-add-btn{background:var(--ink);color:var(--page);font:inherit;font-size:calc(14px * var(--fs-scale,1));cursor:pointer;border:0;border-radius:10px;padding:10px 18px;font-weight:600;display:none}.notes-hints{color:var(--muted);font-size:calc(12.5px * var(--fs-scale,1));align-items:center;gap:18px;margin-top:10px;display:flex}.notes-waiting{white-space:nowrap;align-items:center;gap:6px;margin-left:auto;display:inline-flex}.notes-waiting i{background:var(--gold)}.notes-closed,.notes-refusal{font-size:calc(14px * var(--fs-scale,1));margin:0}.notes-refusal{color:var(--destructive);font-size:calc(13px * var(--fs-scale,1));margin-top:8px}.notes-submit{background:var(--tint);padding:18px 36px 22px}.notes-submit-row{border-top:1px solid var(--line);max-width:820px;color:var(--muted);font-size:calc(13px * var(--fs-scale,1));justify-content:space-between;align-items:center;gap:18px;margin:0;padding-top:16px;display:flex}.notes-submit-row p{flex:1;margin:0}.notes-submit-row .notes-error{color:var(--destructive)}.notes-submit-row .btn{padding:10px 18px}.notes-submit-row .btn:not(.primary){color:var(--ink)}.notes-hints .on-tablet{display:none}.notes-submit-form{max-width:820px}.mark-step{border:1px solid var(--line);border-radius:var(--r-card);background:var(--page);margin:0 0 4px;padding:18px 20px 6px}.mark-step-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.mark-step h2{font-size:calc(17px * var(--fs-scale,1));margin:0 0 4px}.notes-dock.marking{display:none}.mark-step h2:focus{outline:none}.mark-step>p{color:var(--muted);font-size:calc(13.5px * var(--fs-scale,1));max-width:62ch;margin:0 0 14px}.mark-rows{margin:0;padding:0;list-style:none}.mark-rows li{border-top:1px solid var(--row)}.mark-rows fieldset{border:0;justify-content:space-between;align-items:center;gap:18px;min-width:0;margin:0;padding:10px 0;display:flex}.mark-rows legend{float:left;font-size:calc(14.5px * var(--fs-scale,1));color:var(--ink);padding:0}.mark-rows li.unmarked legend{color:var(--observer-ink)}.mark-choice{border:1px solid var(--line);border-radius:var(--r-chip);background:var(--tint);font-size:calc(13px * var(--fs-scale,1));flex:none;gap:2px;padding:3px;display:inline-flex}.mark-choice label{border-radius:var(--r-chip);color:var(--muted);cursor:pointer;white-space:nowrap;padding:6px 12px;position:relative}.mark-choice input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.mark-choice label.on{background:var(--observer-ink);color:var(--on-primary);font-weight:600}.mark-choice label.on.partly{background:var(--observer-soft);color:var(--observer-ink);box-shadow:inset 0 0 0 1.5px var(--observer)}.mark-choice label.on.not_seen{background:var(--ink)}.mark-choice label:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.marks-locked{padding:0 36px 18px}.marks-locked h2{font-size:calc(15px * var(--fs-scale,1));margin:0 0 8px}.marks-locked ul{max-width:820px;margin:0;padding:0;list-style:none}.marks-locked li{border-top:1px solid var(--row);font-size:calc(13.5px * var(--fs-scale,1));justify-content:space-between;gap:18px;padding:7px 0;display:flex}.marks-locked .mark{color:var(--observer-ink);flex:none;font-weight:600}.marks-locked .mark.not_seen{color:var(--ink)}.marks-locked .mark.partly{color:var(--muted)}@media (max-width:1100px),(pointer:coarse){body:has(.notes-screen) .rail{display:none}.notes-head{gap:14px;padding:14px 22px}.notes-others{display:none}.notes-hints{justify-content:space-between}.notes-hints .on-desktop{display:none}.notes-hints .on-tablet{display:inline}.notes-focus{background:0 0;border:0;margin-left:auto;padding:0}.note-lines{flex:none;gap:12px;padding:18px 22px}.note-lines li{font-size:calc(16px * var(--fs-scale,1))}.note-lines time{width:48px;font-size:calc(13px * var(--fs-scale,1));padding-top:3px}.notes-submit{background:0 0;flex:1;order:2;padding:0 22px 22px}.notes-dock{order:3;padding:14px 22px 18px}.notes-dock.closed{padding-bottom:18px}.notes-add{border-radius:14px;padding:6px}.notes-add input{font-size:calc(17px * var(--fs-scale,1))}.notes-add kbd{display:none}.notes-add-btn{display:block}.mark-step{padding:18px 18px 8px}.mark-step h2{font-size:calc(19px * var(--fs-scale,1))}.mark-step>p{font-size:calc(15px * var(--fs-scale,1))}.mark-rows fieldset{flex-direction:column;align-items:stretch;gap:8px;padding:12px 0}.mark-rows legend{float:none;font-size:calc(16px * var(--fs-scale,1))}.mark-choice{font-size:calc(15px * var(--fs-scale,1));display:flex}.mark-choice label{text-align:center;white-space:normal;flex:1;justify-content:center;align-items:center;min-height:44px;padding:8px 10px;display:flex}.marks-locked{padding:0 22px 18px}.marks-locked li{font-size:calc(15px * var(--fs-scale,1))}}@media (max-width:760px){.notes-head{flex-wrap:wrap}.notes-hints,.notes-submit-row{flex-direction:column;align-items:stretch;gap:8px}.notes-waiting{margin-left:0}}body:has(.code-screen) .rail{display:none}.app-main:has(>.code-screen){padding:0}.code-screen{background:var(--rail);min-height:100vh;color:var(--page);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px;display:flex}.code-screen a:focus-visible,.code-screen button:focus-visible,.code-screen input:focus-visible{outline-color:var(--page)}.code-kicker{color:var(--rail-label);font-size:calc(14px * var(--fs-scale,1));letter-spacing:.1em;text-transform:uppercase;margin:0;font-weight:700}.code-main{align-items:center;gap:60px;margin-top:36px;display:flex}.code-qr{background:var(--page);border-radius:18px;flex:none;width:220px;height:220px;padding:18px}.code-qr svg{width:100%;height:100%;display:block}.code-type{text-align:left}.code-type p{color:var(--rail-label);font-size:calc(15px * var(--fs-scale,1));margin:0}.code-type .code-host{color:var(--page);font:600 calc(30px * var(--fs-scale,1))/1.1 var(--font-display);margin-top:4px}.code-type .code-tiles{gap:10px;margin-top:22px;display:flex}.code-tiles span{background:var(--page);width:64px;height:76px;color:var(--ink);font:600 calc(38px * var(--fs-scale,1)) var(--font-display);border-radius:14px;justify-content:center;align-items:center;display:flex}.code-type p:last-child{font-size:calc(14px * var(--fs-scale,1));margin-top:18px}.code-foot{color:var(--rail-label);font-size:calc(13.5px * var(--fs-scale,1));flex-wrap:wrap;justify-content:center;gap:8px 24px;margin:36px 0 0;display:flex}.code-foot a{color:var(--page);font-weight:600;text-decoration:none}.code-foot a:hover{color:var(--page);text-decoration:underline}.code-ask{max-width:560px;margin-top:28px}.code-ask h1{color:var(--page);font-size:calc(30px * var(--fs-scale,1));margin:0;line-height:1.15}.code-ask p{color:var(--rail-label);margin:12px 0 0}.code-ask-buttons{justify-content:center;gap:12px;margin-top:24px;display:flex}.code-ask input[type=number]{border:1px solid var(--field-border);border-radius:var(--r-control);background:var(--page);width:110px;color:var(--ink);font:600 calc(22px * var(--fs-scale,1)) var(--font-display);text-align:center;padding:10px 14px}.code-ask .btn.primary{border-color:var(--page);background:var(--page);color:var(--ink)}.code-ask .code-error{color:var(--gold)}@media (max-width:760px){.code-screen{padding:28px 18px}.code-main{flex-direction:column;gap:28px}.code-type{text-align:center}.code-type .code-tiles{justify-content:center}.code-tiles span{width:52px;height:64px;font-size:calc(30px * var(--fs-scale,1))}}.legs-dots{vertical-align:middle;align-items:center;gap:5px;display:inline-flex}.legs-dots i{box-sizing:border-box;border:1.5px solid var(--secondary-border);border-radius:99px;width:12px;height:12px}.legs-dots i.observer.open{border-color:var(--observer)}.legs-dots i.pupils.open{border-color:var(--pupils)}.legs-dots i.teacher.open{border-color:var(--teacher)}.legs-dots i.observer.in{border-color:var(--observer);background:var(--observer)}.legs-dots i.pupils.in{border-color:var(--pupils);background:var(--pupils)}.legs-dots i.teacher.in{border-color:var(--teacher);background:var(--teacher)}.room-facts .aside{color:var(--muted);text-align:right;align-self:center;margin:0 0 0 auto}.room-head h1 .optional{vertical-align:middle;border-radius:var(--r-chip);background:var(--teacher-soft);color:var(--teacher-ink);font:600 calc(12px * var(--fs-scale,1))/1.4 var(--font-body);letter-spacing:0;margin-left:10px;padding:3px 10px}.prediction-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;margin-top:22px;display:grid}.prediction-form{flex-direction:column;gap:16px;display:flex}.prediction-card{border:1px solid var(--line);border-top:3px solid var(--teacher);border-radius:var(--r-card);padding:18px 22px 8px}.prediction-card h2{font-size:calc(20px * var(--fs-scale,1));letter-spacing:-.02em;margin:0;line-height:1.3}.prediction-lead{color:var(--muted);font-size:calc(13.5px * var(--fs-scale,1));max-width:64ch;margin:6px 0 14px}.tap-rows{margin:0;padding:0;list-style:none}.tap-rows li{border-top:1px solid var(--row)}.tap-rows fieldset{border:0;min-width:0;margin:0;padding:12px 0}.tap-rows legend{float:left;width:100%;padding:0 0 8px}.tap-no{color:var(--teacher-ink);font-size:calc(11.5px * var(--fs-scale,1));letter-spacing:.07em;text-transform:uppercase;font-weight:700;display:block}.tap-statement{font-size:calc(15.5px * var(--fs-scale,1));color:var(--ink);display:block}.tap-choice{clear:both;border:1px solid var(--line);border-radius:var(--r-chip);background:var(--tint);font-size:calc(13px * var(--fs-scale,1));gap:2px;padding:3px;display:flex}.tap-choice label{border-radius:var(--r-chip);min-height:34px;color:var(--muted);text-align:center;cursor:pointer;flex:1;justify-content:center;align-items:center;padding:6px 8px;display:flex;position:relative}.tap-choice input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.tap-choice label.on{background:var(--teacher-ink);color:var(--on-primary);font-weight:600}.tap-choice label:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.tap-rows.locked li{grid-template-columns:56px minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:10px 0;display:grid}.tap-rows.locked .tap-made{color:var(--teacher-ink);font-size:calc(13.5px * var(--fs-scale,1))}.prediction-says{margin:0}.prediction-foot{justify-content:space-between;align-items:center;gap:16px;padding-top:6px;display:flex}.prediction-foot p{color:var(--muted);font-size:calc(13px * var(--fs-scale,1));margin:0}.prediction-foot p.unsaved{color:var(--destructive)}.prediction-foot.end{justify-content:flex-end}.prediction-foot div{gap:10px;display:flex}.prediction-foot .btn{padding:10px 16px}.prediction-grid aside{flex-direction:column;gap:16px;display:flex}.prediction-grid aside .card{padding:18px 20px}.prediction-grid aside .card.tinted{background:var(--tint)}.prediction-grid aside h2{font:700 calc(15px * var(--fs-scale,1))/1.4 var(--font-body);letter-spacing:0;margin:0}.prediction-grid aside p{color:var(--muted);font-size:calc(13.5px * var(--fs-scale,1));margin:8px 0 0}.legs-list{font-size:calc(13.5px * var(--fs-scale,1));flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.legs-list li{align-items:center;gap:10px;display:flex}@media (max-width:1000px){.prediction-grid{grid-template-columns:minmax(0,1fr)}.room-facts .aside{text-align:left;margin-left:0}}@media (max-width:760px){.prediction-foot{flex-direction:column;align-items:stretch}.prediction-foot div{flex-wrap:wrap}.prediction-foot .btn{text-align:center;flex:auto}.tap-choice{flex-wrap:wrap}.tap-choice label{flex:30%;min-height:40px}}.week-grid thead th b{font-weight:inherit}.week-grid .today-pill,.week-grid .day-note{display:none}.calendar-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;display:flex}.calendar-head .left,.calendar-head .right{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.week-nav{font-size:calc(13.5px * var(--fs-scale,1));align-items:center;gap:4px;display:flex}.week-nav b{white-space:nowrap;padding:0 10px;font-weight:600}.week-nav .step,.week-nav .today{border:1px solid var(--line);border-radius:var(--r-control);height:30px;color:var(--muted);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.week-nav .step{width:30px}.week-nav .today{font-size:calc(13px * var(--fs-scale,1));margin-left:6px;padding:0 12px}.week-nav .mine{font-size:calc(13px * var(--fs-scale,1));color:var(--primary);margin-left:14px;font-weight:600;text-decoration:none}.week-nav .mine:hover{text-decoration:underline}.week-nav .step:hover,.week-nav .today:hover{border-color:var(--teacher);color:var(--primary)}.calendar-head .btn{font-size:calc(14px * var(--fs-scale,1));padding:10px 16px}.calendar-card{margin-top:20px;overflow:hidden}.week-grid.calendar thead td{width:64px}.week-grid.calendar thead th,.week-grid.calendar thead td{background:var(--page);font-size:calc(13.5px * var(--fs-scale,1));padding:12px;font-weight:400}.week-grid.calendar thead th b{font-weight:700}.week-grid.calendar thead th .sub{color:var(--muted)}.week-grid.calendar thead th.today{background:var(--tint)}.week-grid.calendar .today-pill{border-radius:var(--r-chip);background:var(--ink);color:var(--on-primary);font-size:calc(10.5px * var(--fs-scale,1));text-transform:uppercase;margin-left:6px;padding:1px 7px;font-weight:700;display:inline-block}.week-grid.calendar .day-note{font-size:calc(11.5px * var(--fs-scale,1));color:var(--observer-ink);display:block}.week-grid.calendar tbody th[scope=row]{font-size:calc(11.5px * var(--fs-scale,1));text-align:right;padding:8px 10px}.week-grid.calendar tbody th[scope=row] b{color:var(--muted);font-weight:400}.week-grid.calendar tbody th[scope=row] .time{font-size:calc(10.5px * var(--fs-scale,1))}.week-grid.calendar tbody td{height:74px}.cal-event{border-left:3px solid var(--teacher);background:var(--teacher-soft);font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);overflow-wrap:break-word;border-radius:9px;margin:5px 6px;padding:8px 10px;line-height:1.45;text-decoration:none;display:block}.cal-event b,.cal-event span{display:block}.cal-event .part{max-width:100%;display:inline-block}.cal-event b{color:var(--teacher-ink)}.cal-event .label{font-size:calc(11px * var(--fs-scale,1));margin-top:2px}.cal-event .label.strong{font-weight:700}a.cal-event:hover{color:var(--muted);filter:brightness(.97)}.cal-event.proposed{border:1.5px solid var(--teacher);background:var(--page)}.cal-event.proposed .label{color:var(--teacher-ink)}.cal-event.live-today{border-left-color:var(--observer);background:var(--observer-soft)}.cal-event.live-today b,.cal-event.live-today .label,.cal-event.no-observer b,.cal-event.no-observer .label{color:var(--observer-ink)}.cal-event.after{border-left-color:var(--secondary-border);background:var(--neutral-soft)}.cal-event.after b{color:var(--ink)}.cal-event.peer{border-left-color:var(--pupils);background:var(--pupils-soft)}.cal-event.peer b,.cal-event.peer .label{color:var(--pupils-ink)}.cal-event.no-observer{border:1px dashed var(--gold);background:var(--page)}.cal-event.walk{border:1.5px dashed var(--secondary-border);background:var(--page)}.cal-event.walk b{color:var(--ink)}.cal-event.lapsed{border:1px solid var(--line);background:var(--page)}.cal-event.lapsed b{color:var(--muted)}.calendar-empty{border-top:1px solid var(--line-soft);font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);padding:14px 18px}.calendar-legend{border-top:1px solid var(--line-soft);font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);flex-wrap:wrap;gap:8px 18px;padding:12px 18px;display:flex}.calendar-legend>span{align-items:center;gap:6px;display:flex}.calendar-legend .note{margin-left:auto}.swatch{border-left:3px solid var(--teacher);background:var(--teacher-soft);border-radius:3px;width:12px;height:12px;display:inline-block}.swatch.proposed{border:1.5px solid var(--teacher);background:var(--page)}.swatch.live-today{border-left-color:var(--observer);background:var(--observer-soft)}.swatch.after{border-left-color:var(--secondary-border);background:var(--neutral-soft)}.swatch.peer{border-left-color:var(--pupils);background:var(--pupils-soft)}.swatch.walk{border:1.5px dashed var(--secondary-border);background:var(--page)}@media (max-width:900px){.calendar-card{overflow-x:auto}.calendar-card .week-grid{min-width:600px}.week-grid.calendar thead td{width:48px}.week-grid.calendar tbody th[scope=row]{padding:8px 6px}.cal-event{margin:5px 3px;padding:8px 7px}}.week-waiting{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin-bottom:16px;padding:14px 18px}.next-observation .actions .asked{font-size:calc(13px * var(--fs-scale,1));color:var(--muted)}.week-nav a,.week-switch a,.segmented>a,.queue-counts>div,.picker-head h2{white-space:nowrap}@media (max-width:760px){.page-head.bottom{flex-wrap:wrap}.page-head.bottom .segmented{max-width:100%;overflow-x:auto}.picker-head{flex-wrap:wrap}.picker-head h2{white-space:normal}.week-nav{flex-wrap:wrap;row-gap:8px}.week-nav .mine{margin-left:6px}.queue-counts{flex-wrap:wrap;gap:10px 22px}.room-facts .acts{flex-wrap:wrap}}@media (max-width:480px){.page-head.bottom .segmented{border-radius:14px;flex-wrap:wrap;overflow-x:visible}}.obs-list-head{align-items:center}.obs-list-head .head-acts{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.obs-search .input{width:240px;font-size:calc(13.5px * var(--fs-scale,1));padding:9px 12px}@media (max-width:480px){.obs-list-head{flex-direction:column;align-items:stretch}.obs-list-head .head-acts,.obs-list-head .obs-search,.obs-search .input,.obs-list-head .btn{text-align:center;width:100%}}.obs-tabs{border-bottom:1px solid var(--line);font-size:calc(14px * var(--fs-scale,1));align-items:center;gap:4px;margin-top:18px;display:flex}.obs-tabs>a{color:var(--muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;text-decoration:none}.obs-tabs>a[aria-current=page]{border-bottom-color:var(--ink);color:var(--ink);font-weight:600}.obs-tabs>a .count{margin-left:6px}.obs-tabs>a .badge{background:var(--observer-soft);color:var(--observer-ink);font-size:calc(12px * var(--fs-scale,1));border-radius:999px;margin-left:6px;padding:1px 7px;font-weight:700}.obs-tabs>a .counted,.obs-tabs>a .also{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);font-weight:400}@media (max-width:480px){.obs-tabs>a{padding-inline:12px}.obs-tabs>a .also{font-size:calc(12px * var(--fs-scale,1));display:block}.obs-tabs>a .sep{display:none}}.obs-tabs .scope{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin-left:auto;padding:10px 0}.obs-table{border:1px solid var(--line);border-radius:var(--r-card);background:var(--page);margin-top:18px;overflow:hidden}.obs-row{border-bottom:1px solid var(--row);font-size:calc(13.5px * var(--fs-scale,1));grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 150px 120px minmax(0,1fr) 110px;align-items:center;gap:14px;padding:14px 20px;display:grid}.obs-table.teacher .obs-row{grid-template-columns:minmax(0,1.6fr) 150px 120px minmax(0,1.4fr) 110px}.obs-row.head{font-size:calc(11.5px * var(--fs-scale,1));letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:10px 20px;font-weight:700}.obs-row.plain{grid-template-columns:minmax(0,1fr) 110px}.obs-row .who{align-items:center;gap:10px;min-width:0;display:flex}.obs-row .who i{background:var(--primary);color:#fff;width:30px;height:30px;font:700 calc(11px * var(--fs-scale,1))/1 var(--font-body);border-radius:99px;flex:none;justify-content:center;align-items:center;font-style:normal;display:inline-flex}.obs-row .who small,.obs-row .lesson small{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin-top:2px;display:block}.obs-row .needed{color:var(--muted)}.obs-row .needed.alert{color:var(--observer-ink);font-weight:600}.obs-row .act{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.obs-row .act .btn{font-size:calc(13px * var(--fs-scale,1));padding:7px 12px}.obs-row .act form{margin:0}.obs-empty{font-size:calc(14px * var(--fs-scale,1));color:var(--muted);margin:0;padding:22px 20px}.obs-foot{background:var(--tint);font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin:0;padding:14px 20px}.obs-foot b.observer{color:var(--observer-ink)}.obs-foot b.pupils{color:var(--pupils-ink)}.obs-foot b.teacher{color:var(--teacher-ink)}.obs-side h2{border-bottom:1px solid var(--row);background:var(--tint);font:700 calc(11.5px * var(--fs-scale,1)) / 1.4 var(--font-body);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:10px 20px}.obs-side h2 .count{margin-left:6px}@media (max-width:1100px){.obs-row,.obs-table.teacher .obs-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.obs-row.head{display:none}.obs-row>[data-label]:before{content:attr(data-label);font-size:calc(11px * var(--fs-scale,1));letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-weight:700;display:block}.obs-row>.who{flex-wrap:wrap;row-gap:0}.obs-row>.who:before{flex-basis:100%}.obs-table.teacher .obs-row:not(.plain)>.act{grid-column:1/-1}.obs-tabs{flex-wrap:wrap}.obs-tabs .scope{flex-basis:100%;margin-left:0}}.people-row{border-bottom:1px solid var(--row);font-size:var(--fs-table);grid-template-columns:minmax(0,1.4fr) minmax(0,1.6fr) 170px 120px 130px;align-items:center;gap:14px;padding:13px 20px;display:grid}.people-row.head{font-size:calc(11.5px * var(--fs-scale,1));letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 20px;font-weight:700}.people-row.alert{background:var(--tint)}.people-row .who{align-items:center;gap:10px;min-width:0;display:flex}.people-row .who>i{border-radius:var(--r-chip);background:var(--primary);width:30px;height:30px;color:var(--on-primary);font:700 calc(11px * var(--fs-scale,1))/30px var(--font-body);text-align:center;flex:none;font-style:normal}.people-row .who>i.observer{background:var(--observer-ink)}.people-row .who>i.pupils{background:var(--pupils-ink)}.people-row .who>i.none{background:var(--neutral-fill);color:var(--muted)}.people-row .who .name{min-width:0;font-weight:700}.people-row .who .name a{text-decoration:none}.people-row .who .you{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);font-weight:400}.people-row .chips{flex-wrap:wrap;gap:6px;display:flex}.people-row .alert{color:var(--destructive);font-weight:600}.people-row .alert .link-action{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline}.people-row .not-counted{font-size:calc(12.5px * var(--fs-scale,1))}.dots-sm .coverage-dots{gap:5px}.dots-sm .dot{width:12px;height:12px}.people-row form{display:inline}.people-foot{border-top:1px solid var(--line-soft);background:var(--tint);font-size:calc(13px * var(--fs-scale,1));color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;padding:12px 20px;display:flex}.membership-chip.probationer{background:var(--pupils-soft);color:var(--pupils-ink);font-weight:600}.obs-tabs>a.alert{color:var(--observer-ink);font-weight:600}.obs-tabs>a[aria-current=page] .count{color:var(--muted)}.people-row .people-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1100px){.people-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.people-row.head{display:none}.people-row .people-label{clip:auto;width:auto;height:auto;color:var(--muted);font-size:calc(11px * var(--fs-scale,1));letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px;font-weight:700;display:block;position:static;overflow:visible}}.room-inside{gap:20px;margin-top:20px;display:grid}.room-inside .panel{padding:18px 20px}.room-inside .panel h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.room-inside .panel p{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin-top:6px}.room-facts .facts .fact.visible{color:var(--muted);margin-left:auto}.room-facts .facts .fact.first-read{color:var(--teacher-ink);margin-left:auto;font-weight:600}.summary-panel{border:1px solid var(--line);border-top:3px solid var(--pupils);border-radius:var(--r-card);background:var(--page)}.summary-head{border-bottom:1px solid var(--line-soft);border-radius:var(--r-card) var(--r-card) 0 0;background:var(--tint);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:14px 22px;display:flex}.summary-head h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.summary-head .stamp{background:var(--pupils-soft);color:var(--pupils-ink);font-size:calc(11px * var(--fs-scale,1));letter-spacing:.02em;border-radius:6px;padding:3px 9px;font-weight:700}.summary-head .stamp.teacher{background:var(--teacher-soft);color:var(--teacher-ink)}.summary-head .stamp.draft{text-transform:uppercase}.summary-head .note{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted)}.summary-head .switch{margin-left:auto}.summary-head .acts{gap:8px;display:flex}.summary-head .acts.alone{margin-left:auto}.summary-head .acts form{margin:0}.summary-head .acts .btn{font-size:calc(13px * var(--fs-scale,1));padding:8px 14px}.summary-preface{border-bottom:1px solid var(--grid-line);font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin:0;padding:12px 22px}.switch{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.switch input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.switch i{background:var(--neutral-fill);border-radius:99px;width:32px;height:18px;transition:background .12s;position:relative}.switch i:after{content:"";background:#fff;border-radius:99px;width:14px;height:14px;transition:transform .12s;position:absolute;top:2px;left:2px}.switch input:checked+i{background:var(--primary)}.switch input:checked+i:after{transform:translate(14px)}.switch input:focus-visible+i{outline:2px solid var(--primary);outline-offset:2px}.buckets{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.buckets.four{grid-template-columns:repeat(4,minmax(0,1fr))}.summary-panel.stacked .buckets{grid-template-columns:minmax(0,1fr)}.bucket{border-right:1px solid var(--grid-line);padding:18px 22px}.bucket:last-child{border-right:0}.bucket.differ{background:#fdfbfa}.summary-panel.stacked .bucket{border-right:0;border-bottom:1px solid var(--grid-line)}.summary-panel.stacked .bucket.differ{background:#fdfbfa}.bucket h3{font:700 calc(11px * var(--fs-scale,1))/1.4 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0}.bucket.differ h3{color:var(--observer-ink)}.bucket .line{margin-top:10px}.bucket .line+.line{margin-top:14px}.bucket .line p{font-size:calc(14px * var(--fs-scale,1));margin:0;line-height:1.5}.bucket-empty{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin:10px 0 0}.cite-chips{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.summary-panel[data-no-evidence] .cite-chips{display:none}.cite{font:500 calc(11px * var(--fs-scale,1))/1.5 var(--font-body);cursor:pointer;border:0;border-radius:5px;padding:2px 7px}.cite.observer{background:var(--observer-soft);color:var(--observer-ink)}.cite.pupils{background:var(--pupils-soft);color:var(--pupils-ink)}.cite.teacher{background:var(--teacher-soft);color:var(--teacher-ink)}.cite:hover{filter:brightness(.96)}.cite-pop{border:1px solid var(--line);border-radius:var(--r-card);background:var(--page);width:min(560px,100vw - 32px);max-height:min(70vh,640px);color:var(--ink);padding:18px 20px 16px;overflow:auto;box-shadow:0 18px 48px #262b312e}.cite-pop::backdrop{background:#262b3147}.cite-pop-head{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted)}.cite-pop-head.observer b{color:var(--observer-ink)}.cite-pop-head.pupils b{color:var(--pupils-ink)}.cite-pop-head.teacher b{color:var(--teacher-ink)}.cite-pop-body{font-size:calc(15px * var(--fs-scale,1));margin:8px 0 0;line-height:1.5}.cite-pop-count{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin:10px 0 0}.cite-dist{font-size:calc(13px * var(--fs-scale,1));margin:8px 0 0;padding:0;list-style:none}.cite-dist li{border-top:1px solid var(--row);justify-content:space-between;padding:4px 0;display:flex}.cite-lines{font-size:calc(13.5px * var(--fs-scale,1));margin:8px 0 0;padding:0;list-style:none}.cite-lines li{border-top:1px solid var(--row);padding:6px 0}.cite-lines b{color:var(--observer-ink);margin-right:6px}.cite-close{font-size:calc(13px * var(--fs-scale,1));margin-top:14px;padding:8px 14px}.line.editing{border-bottom:1px solid var(--row);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 10px;padding:10px 0 14px;display:grid}.line.editing form:first-child{gap:8px;display:grid}.line.editing .input{font-size:calc(14px * var(--fs-scale,1));resize:vertical}.line.editing .line-acts .btn{font-size:calc(13px * var(--fs-scale,1));padding:8px 14px}.line.editing form:nth-child(2) .btn{font-size:calc(13px * var(--fs-scale,1));padding:8px 12px}.line.editing .cite-chips{grid-column:1/-1;margin-top:0}.summary-steps{border-top:1px solid var(--line-soft);padding:16px 22px}.summary-steps:focus,.steps-answer .step:focus,.respond-card h2:focus{outline:none}.summary-steps .steps-title{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.summary-steps .steps-title b{font-size:calc(14.5px * var(--fs-scale,1))}.summary-steps .steps-title span{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted)}.summary-steps .after{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin:12px 0 0}.steps-empty{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin:10px 0 0}.steps-written{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.steps-written li{border:1px solid var(--teacher-pale);background:var(--teacher-soft);font-size:calc(13.5px * var(--fs-scale,1));border-radius:10px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.steps-written li p{margin:0}.steps-written li small{font-size:calc(12px * var(--fs-scale,1));color:var(--muted);margin-top:4px;display:block}.steps-written li form .btn{font-size:calc(12.5px * var(--fs-scale,1));padding:6px 10px}.steps-written.read li{border-color:var(--line);background:var(--page)}.steps-add{gap:6px;max-width:640px;margin-top:14px;display:grid}.steps-add label{font-size:calc(13px * var(--fs-scale,1));color:var(--muted)}.steps-add .input{font-size:calc(13.5px * var(--fs-scale,1))}.steps-add .btn{font-size:calc(13px * var(--fs-scale,1));justify-self:start;margin-top:4px;padding:8px 14px}.steps-answer{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.steps-answer .step{border:1px solid var(--line);font-size:calc(14px * var(--fs-scale,1));border-radius:10px;padding:14px 16px}.steps-answer .step.agreed,.steps-answer .step.changed{border-color:var(--teacher-pale);background:var(--teacher-soft)}.steps-answer .step p{margin:0}.steps-answer .step-changed{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin-top:6px!important}.steps-answer .step-acts{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:10px;display:flex}.steps-answer .step-acts .btn{font-size:calc(13px * var(--fs-scale,1));border-radius:999px;padding:8px 16px}.step-state{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);border-radius:999px;padding:7px 14px;font-weight:600;display:inline-block}.step-state.agreed,.step-state.changed{background:var(--primary);color:#fff}.step-change summary{color:var(--primary);font-size:calc(13.5px * var(--fs-scale,1));cursor:pointer;font-weight:600;list-style:none}.step-change summary::-webkit-details-marker{display:none}.step-change form{gap:8px;margin-top:8px;display:flex}.steps-answer .step-change[open]{flex-basis:100%}.step-change .input{min-width:0;font-size:calc(13.5px * var(--fs-scale,1));flex:1}.step-change .btn{font-size:calc(13px * var(--fs-scale,1));padding:8px 14px}.steps-agreed{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.steps-agreed li{background:var(--teacher-soft);font-size:calc(14px * var(--fs-scale,1));border-radius:10px;gap:8px;padding:14px 16px;display:flex}.steps-agreed .n{font-family:var(--font-display);color:var(--teacher-ink);flex:none;font-weight:600}.steps-agreed small{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin-top:6px;display:block}.response-block{border-top:1px solid var(--line-soft);padding:16px 22px}.response-block h3{font:700 calc(11px * var(--fs-scale,1))/1.4 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--teacher-ink);margin:0}.response-block blockquote{font-size:calc(14.5px * var(--fs-scale,1));margin:8px 0 0;font-style:italic;line-height:1.5}.respond-card{padding:18px 22px}.respond-card h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.respond-card p{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin:4px 0 0}.respond-card .textarea{min-height:140px;font-size:calc(15px * var(--fs-scale,1));margin-top:12px}.respond-card .foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.respond-card .foot .btns{flex-wrap:wrap;gap:10px;display:flex}.respond-card .foot .btn{padding:10px 16px}@media (max-width:480px){.respond-card .foot .btns,.respond-card .foot .btns form,.respond-card .foot .btn{width:100%}}.room-aside{gap:16px;display:grid}.room-aside .card{padding:18px 20px}.room-aside .card h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.room-aside .card>p{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin-top:6px}.room-aside .card .kicker{font:700 calc(11px * var(--fs-scale,1))/1.4 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--teacher-ink);margin:0 0 4px}.room-aside .card.next{border-top:3px solid var(--teacher)}.room-aside .card.next .btn{text-align:center;width:100%;margin-top:10px;display:block}.room-aside .card.next .btn:first-of-type{margin-top:16px}.room-aside .card.next form{margin:0}.legs-list{font-size:calc(14px * var(--fs-scale,1));margin:12px 0 0;padding:0;list-style:none}.legs-list li{align-items:center;gap:8px;padding:7px 0;display:flex}.legs-list li a{color:var(--primary);margin-left:auto;font-weight:600}.travels{border-collapse:collapse;width:100%;font-size:calc(14px * var(--fs-scale,1));margin-top:10px}.travels td{border-top:1px solid var(--row);padding:7px 0}.travels tr:first-child td{border-top:0}.travels td:last-child{text-align:right;font-weight:700}.edit-log ul{font-size:calc(13.5px * var(--fs-scale,1));margin:8px 0 0;padding:0;list-style:none}.edit-log li+li{margin-top:8px}.edit-log details{font-size:calc(13px * var(--fs-scale,1));margin-top:4px}.edit-log summary{color:var(--primary);cursor:pointer;font-weight:600}.edit-log details p{margin:6px 0 0}.edit-log .since,.edit-log>p{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin-top:8px}.legs-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.leg-card{border:1px solid var(--line);background:var(--page);border-radius:12px}.leg-card.observer{border-top:3px solid var(--observer)}.leg-card.pupils{border-top:3px solid var(--pupils)}.leg-card.teacher{border-top:3px solid var(--teacher)}.leg-head{border-bottom:1px solid var(--line-soft);background:var(--tint);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;padding:12px 16px;display:flex}.leg-head b{font-size:calc(14px * var(--fs-scale,1))}.leg-head span{font-size:calc(12px * var(--fs-scale,1));color:var(--muted)}.leg-card.compact .leg-head{background:var(--page);border-bottom:0}.leg-card.compact .leg-head span{font-size:calc(13.5px * var(--fs-scale,1));flex-basis:100%}.leg-card.compact{position:relative}.leg-card.compact .leg-head{padding-right:72px}.leg-more.compact{border-top:0}.leg-more.compact>summary{font-size:calc(14px * var(--fs-scale,1));padding:0;font-weight:700;position:absolute;top:12px;right:16px}.leg-more.compact[open]>summary{border-bottom:0}.leg-more.compact[open]{border-top:1px solid var(--line-soft)}.leg-tally{border-bottom:1px solid var(--row);font-size:calc(12px * var(--fs-scale,1));flex-wrap:wrap;gap:6px;padding:10px 16px;display:flex}.leg-tally span{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:3px 9px}.leg-tally span.on{background:var(--observer-soft);color:var(--observer-ink);border-color:#0000;font-weight:600}.leg-line{border-bottom:1px solid var(--row);font-size:calc(13px * var(--fs-scale,1));padding:12px 16px;line-height:1.5}.leg-line b{color:var(--observer-ink);margin-right:6px}.leg-line small{color:var(--muted);display:block}.leg-words{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);margin:0;padding:12px 16px}.leg-words a{font-weight:600}.leg-more{border-top:1px solid var(--line-soft)}.leg-more>summary{color:var(--primary);font-size:calc(13px * var(--fs-scale,1));cursor:pointer;padding:10px 16px;font-weight:600;list-style:none}.leg-more>summary::-webkit-details-marker{display:none}.leg-more[open]>summary{border-bottom:1px solid var(--row)}.leg-marks{border-top:1px solid var(--line-soft);padding:12px 16px}.leg-marks h4{font:700 calc(12px * var(--fs-scale,1))/1.4 var(--font-body);color:var(--observer-ink);margin:0 0 6px}.leg-marks ol{font-size:calc(13px * var(--fs-scale,1));margin:0;padding:0;list-style:none}.leg-marks li{border-top:1px solid var(--row);justify-content:space-between;gap:12px;padding:5px 0;display:flex}.leg-marks li b{color:var(--observer-ink);flex:none;font-weight:600}.leg-marks li b.not_seen,.leg-marks li b.none{color:var(--muted)}.leg-item{border-bottom:1px solid var(--row);font-size:calc(13px * var(--fs-scale,1));padding:12px 16px}.leg-item small{color:var(--muted);margin-top:4px;display:block}.leg-item b.tap{color:var(--teacher-ink);margin-top:4px;display:block}.leg-bar{align-items:center;gap:8px;margin-top:6px;display:flex}.leg-bar .track{background:var(--pupils-track);border-radius:99px;flex:1;height:8px;overflow:hidden}.leg-bar .fill{background:var(--pupils);border-radius:99px;height:100%;display:block}.leg-bar small{font-size:calc(12px * var(--fs-scale,1));flex:none;margin:0}.not-ready{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.not-ready .card{padding:20px 24px}.not-ready .card .with-pill{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.not-ready .card h2{font:700 calc(17px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.not-ready .card>p{font-size:calc(14.5px * var(--fs-scale,1));margin-top:10px;line-height:1.55}.not-ready .card .aside{background:var(--tint);font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);border-radius:10px;margin-top:14px;padding:12px 14px}.not-ready .card .link-action{margin-top:12px;display:inline-block}.not-ready .pupils-pill{background:var(--pupils-soft);color:var(--pupils-ink);font-size:calc(13px * var(--fs-scale,1));border-radius:999px;flex:none;padding:6px 12px;font-weight:600}.not-ready .card.wide{grid-column:1/-1}.room-aside .card.next .handed{font-size:calc(13px * var(--fs-scale,1));color:var(--teacher-ink);margin-top:12px}.export-page{max-width:760px;font-size:calc(14px * var(--fs-scale,1));line-height:1.55}.export-bar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.export-page header{border-bottom:1px solid var(--line);padding-bottom:14px}.export-page h1{margin:6px 0}.export-page .meta{font-size:calc(13px * var(--fs-scale,1));color:var(--muted);margin:2px 0}.export-page section{margin-top:22px}.export-page h2{font:600 calc(18px * var(--fs-scale,1))/1.3 var(--font-display);letter-spacing:var(--ls-display)}.export-page h3{font:700 calc(11px * var(--fs-scale,1))/1.4 var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:12px 0 4px}.export-page ol{margin:4px 0 0;padding-left:22px}.export-page li{margin:4px 0}.export-page li small{color:var(--muted)}.export-page blockquote{margin:6px 0 0;font-style:italic}.export-page footer{border-top:1px solid var(--line);margin-top:28px;padding-top:12px}@media print{nav[aria-label=Observewell],.no-print,.toast,.skip-link,.demo-banner,.help-pointer{display:none!important}body,main{background:#fff;margin:0;padding:0}.export-page{max-width:none}}.room-closed-grid{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:22px;display:grid}.room-teacher-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:22px;display:grid}@media (max-width:1100px){.buckets,.buckets.four,.steps-written,.legs-row,.not-ready{grid-template-columns:minmax(0,1fr)}.bucket{border-right:0;border-bottom:1px solid var(--grid-line)}.steps-answer,.steps-agreed,.room-closed-grid,.room-teacher-grid{grid-template-columns:minmax(0,1fr)}}.state-pill.walk{background:var(--neutral-soft);color:var(--muted)}.obs-row .legs.muted{font-size:calc(12.5px * var(--fs-scale,1))}.obs-start-walk{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.obs-start-walk .small{font-size:calc(13px * var(--fs-scale,1));color:var(--muted)}.walk-head{justify-content:space-between;align-items:flex-end;gap:20px;margin-top:8px;display:flex}.walk-head p{max-width:900px;font-size:calc(14px * var(--fs-scale,1));color:var(--muted);margin:6px 0 0}.walk-pill{flex:none;align-items:center;gap:6px;display:inline-flex}.walk-pill i{background:var(--observer);border-radius:99px;width:8px;height:8px}.walk-grid{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:22px;margin-top:22px;display:grid}.walk-main{gap:16px;display:grid}.walk-page .card{padding:18px 20px}.walk-page .card h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0}.walk-where h2{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font:700 calc(11px * var(--fs-scale,1))/1.4 var(--font-body)!important}.walk-page .small{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin:8px 0 0}.walk-chips{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.walk-chips form{margin:0}.walk-chips .chip{border:1px solid var(--line);background:var(--page);color:var(--muted);font:600 calc(12px * var(--fs-scale,1))/1.6 var(--font-body);cursor:pointer;border-radius:999px;padding:4px 10px;text-decoration:none;display:inline-block}.walk-chips .chip.on{background:var(--teacher-soft);color:var(--teacher-ink);border-color:#0000}.walk-elsewhere summary{list-style:none}.walk-elsewhere summary::-webkit-details-marker{display:none}.walk-elsewhere form{gap:6px;max-width:420px;margin-top:10px;display:grid}.walk-elsewhere label{font-size:calc(13px * var(--fs-scale,1));color:var(--muted)}.walk-elsewhere .btn{justify-self:start;margin-top:4px}.walk-line{font-size:calc(14.5px * var(--fs-scale,1));gap:14px;margin-bottom:10px;line-height:1.5;display:flex}.walk-line b{width:44px;font-size:calc(12.5px * var(--fs-scale,1));color:var(--observer-ink);flex:none;padding-top:2px}.walk-field{margin:4px 0 0}.walk-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}.walk-foot.end{justify-content:flex-end}.walk-foot .small{margin:0}.walk-foot .row-actions{gap:10px;display:flex}.walk-foot form{margin:0}.walk-stop+.walk-stop{border-top:1px solid var(--row);margin-top:16px;padding-top:16px}.walk-stop-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:8px;display:flex}.walk-stop-head .small{margin:0}.walk-aside{gap:16px;display:grid}.walk-sofar{font-size:calc(13.5px * var(--fs-scale,1));flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.walk-sofar li{justify-content:space-between;gap:12px;display:flex}.walk-sofar li span:last-child{color:var(--muted)}.walk-sofar li.now span{font-weight:700}.walk-sofar li.now span:last-child{color:var(--observer-ink);font-weight:600}.walk-by{align-items:center;gap:8px;display:flex}.walk-by .disc{background:var(--gold);width:26px;height:26px;color:var(--ink);font:700 calc(10px * var(--fs-scale,1))/1 var(--font-body);border-radius:99px;justify-content:center;align-items:center;font-style:normal;display:inline-flex}@media (max-width:1100px){.walk-grid{grid-template-columns:minmax(0,1fr)}.walk-head{flex-wrap:wrap}}.landing{--landing-caveat:#7a6a58;--landing-rule:#d9d4cf;--landing-cell-observer:#e6dcd4;--landing-cell-teacher:#dfe3ea;--landing-cell-pupils:#e8dee4;--landing-gold-soft:#d8bf94;--landing-on-ink:#cfd4d9;--landing-on-ink-strong:#e2e6ea;--landing-arrow:#bdaa84;background:var(--page);color:var(--ink);font:400 calc(16px * var(--fs-scale,1))/1.6 var(--font-body);-webkit-font-smoothing:antialiased}.landing a{color:inherit;text-decoration:none}.landing a:hover{color:var(--primary)}.landing h1,.landing h2,.landing h3{font-family:var(--font-display);margin:0;font-weight:600}.landing-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:28px;max-width:1440px;margin:0 auto;padding:20px 44px;display:flex}.landing-logo,.landing-foot-logo{align-items:center;gap:10px;display:flex}.landing-logo>span{font:600 calc(21px * var(--fs-scale,1))/1 var(--font-display);letter-spacing:-.03em}.landing-nav{font-size:calc(14.5px * var(--fs-scale,1));color:var(--muted);align-items:center;gap:30px;display:flex}.landing a.landing-start,.landing a.landing-cta{border-radius:var(--r-control);background:var(--primary);color:var(--on-primary);font-weight:600}.landing a.landing-start{font-size:calc(14.5px * var(--fs-scale,1));padding:11px 20px}.landing a.landing-start:hover,.landing a.landing-cta:hover{color:var(--on-primary);filter:brightness(.93)}.landing-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:center;gap:48px;max-width:1280px;margin:0 auto;padding:64px 44px 0;display:grid}.landing-hero h1{font:600 clamp(calc(42px * var(--fs-scale,1)), 4.6vw, 64px) / 1.05 var(--font-display);letter-spacing:-.045em;padding-bottom:12px}.landing-underlined{white-space:nowrap;display:inline-block;position:relative}.landing-underlined svg{fill:none;width:100%;height:14px;stroke:var(--observer);stroke-width:2.5px;stroke-linecap:round;position:absolute;bottom:-10px;left:0}.landing-lede{max-width:44ch;font-size:calc(17.5px * var(--fs-scale,1));color:var(--muted);margin:26px 0 0;line-height:1.65}.landing-ctas{flex-wrap:wrap;align-items:center;gap:22px;margin-top:30px;display:flex}.landing a.landing-cta{font-size:calc(15px * var(--fs-scale,1));align-items:center;gap:22px;padding:15px 24px;display:inline-flex}.landing-play{font-size:calc(14.5px * var(--fs-scale,1));align-items:center;gap:10px;font-weight:600;display:inline-flex}.landing-play-icon{border:1px solid var(--secondary-border);border-radius:99px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.landing-play-icon>span{border-top:4.5px solid #0000;border-bottom:4.5px solid #0000;border-left:7px solid var(--ink);width:0;height:0;margin-left:2px}.landing-art-column{min-width:0;position:relative}.landing-caveat{font-size:calc(23px * var(--fs-scale,1));color:var(--landing-caveat);transform-origin:0 100%;margin:0 0 30px 46%;font-weight:500;line-height:1.2;transform:rotate(-2deg)}.landing-art-frame{position:relative}.landing-art{-webkit-mask-composite:source-in;width:100%;height:auto;display:block;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000),linear-gradient(#0000,#000 6% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000),linear-gradient(#0000,#000 6% 92%,#0000);-webkit-mask-composite:source-in;mask-composite:intersect}.landing-badge{border:1px solid var(--line);border-radius:var(--r-chip);background:var(--page);font-size:calc(12px * var(--fs-scale,1));align-items:center;gap:7px;padding:7px 12px;font-weight:600;line-height:1.6;display:flex;position:absolute;box-shadow:0 6px 18px -12px #00000073}.landing-badge>span{border-radius:99px;width:7px;height:7px}.landing-badge.teacher{color:var(--teacher-ink);top:1%;left:0;transform:rotate(-2deg)}.landing-badge.teacher>span{background:var(--teacher)}.landing-badge.observer{color:var(--observer-ink);bottom:26%;right:0;transform:rotate(1.6deg)}.landing-badge.observer>span{background:var(--observer)}.landing-badge.pupils{color:var(--pupils-ink);bottom:7%;left:26%;transform:rotate(-1.4deg)}.landing-badge.pupils>span{background:var(--pupils)}.landing-how{background:var(--page);margin-top:96px}.landing-how-inner{max-width:1280px;margin:0 auto;padding:84px 44px}.landing-how-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:64px;display:flex}.landing-how-head h2{font:600 calc(42px * var(--fs-scale,1))/1.12 var(--font-display);letter-spacing:-.04em}.landing-how-head p{max-width:34ch;font-size:calc(16px * var(--fs-scale,1));color:var(--muted)}.landing-steps{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:stretch;gap:26px;margin-top:40px;display:grid}.landing-step{flex-direction:column;height:100%;display:flex}.landing-step-rule{border-top:1px solid var(--landing-rule);font-size:calc(10.5px * var(--fs-scale,1));letter-spacing:.12em;text-transform:uppercase;color:var(--muted);justify-content:space-between;padding-top:16px;font-weight:700;display:flex}.landing-step h3{font:600 calc(23px * var(--fs-scale,1))/1.2 var(--font-display);letter-spacing:-.03em;margin:18px 0 0}.landing-step>p{min-height:48px;font-size:calc(15px * var(--fs-scale,1));color:var(--muted);margin:10px 0 18px}.landing-mock{border:1px solid var(--field-border);background:var(--page);border-radius:10px;margin-top:auto;overflow:hidden}.landing-mock-head{border-bottom:1px solid var(--line-soft);background:var(--tint);font-size:calc(11.5px * var(--fs-scale,1));color:var(--muted);align-items:center;gap:8px;padding:10px 14px;display:flex}.landing-mock-head.spread{justify-content:space-between}.landing-mock-head .live{color:var(--observer-ink);font-weight:600}.landing-mock-body{flex-direction:column;min-height:206px;padding:14px;display:flex}.landing-mock-body.notes{gap:8px}.landing-mock-foot{border-top:1px solid var(--line-soft);font-size:calc(12px * var(--fs-scale,1));color:var(--muted);margin-top:auto;padding-top:12px}.landing-mock-foot .tick{margin-right:6px;font-weight:700}.landing-mock-foot .tick.teacher{color:var(--teacher-ink)}.landing-mock-foot .tick.observer{color:var(--observer-ink)}.landing-week-days,.landing-week{grid-template-columns:34px repeat(5,1fr);gap:4px;display:grid}.landing-week-days{font-size:calc(10px * var(--fs-scale,1));color:var(--muted);text-align:center}.landing-week{margin-top:6px}.landing-week>span{font-size:calc(10px * var(--fs-scale,1));color:var(--muted);align-self:center}.landing-week>i{background:var(--grid-line);border-radius:4px;height:20px}.landing-week>i.observer{background:var(--landing-cell-observer)}.landing-week>i.teacher{background:var(--landing-cell-teacher)}.landing-week>i.pupils{background:var(--landing-cell-pupils)}.landing-note{border:1px solid var(--line-soft);background:var(--page);border-radius:8px;gap:10px;padding:9px 11px;display:flex}.landing-note.shared{border:0;border-left:3px solid var(--observer);background:var(--observer-soft)}.landing-note .when{width:34px;font-size:calc(11px * var(--fs-scale,1));color:var(--muted);text-align:right;flex:none}.landing-note.shared .when{color:var(--observer-ink);font-weight:700}.landing-note .when .tag{font-size:calc(9px * var(--fs-scale,1));letter-spacing:.08em;font-weight:700}.landing-note .what{font-size:calc(12.5px * var(--fs-scale,1));flex:1;line-height:1.45}.landing-summary-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.landing-summary-title>div{font-size:calc(13px * var(--fs-scale,1));font-weight:700}.landing-summary-title>span{background:var(--observer-soft);color:var(--observer-ink);font-size:calc(10.5px * var(--fs-scale,1));border-radius:6px;padding:3px 9px;font-weight:700}.landing-voices{gap:6px;margin-top:12px;display:flex}.landing-voices>div{font-size:calc(11.5px * var(--fs-scale,1));border-radius:8px;flex:1;padding:9px 10px;line-height:1.4}.landing-voices .who{font-size:calc(9px * var(--fs-scale,1));letter-spacing:.09em;margin-bottom:6px;font-weight:700;line-height:1.6}.landing-voices .observer{background:var(--observer-soft)}.landing-voices .observer .who{color:var(--observer-ink)}.landing-voices .pupils{background:var(--pupils-soft)}.landing-voices .pupils .who{color:var(--pupils-ink)}.landing-voices .teacher{background:var(--teacher-soft)}.landing-voices .teacher .who{color:var(--teacher-ink)}.landing-questions{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:64px;max-width:1280px;margin:0 auto;padding:84px 44px 0;display:grid}.landing-questions h2{font:600 calc(36px * var(--fs-scale,1))/1.12 var(--font-display);letter-spacing:-.04em}.landing-questions details{border-bottom:1px solid var(--line)}.landing-questions summary{font-size:calc(15.5px * var(--fs-scale,1));cursor:pointer;padding:18px 0;font-weight:600}.landing-questions details>p{font-size:calc(14.5px * var(--fs-scale,1));color:var(--muted);margin:0;padding:0 30px 20px 0}.landing-demo{background:var(--ink);margin-top:88px}.landing-demo-inner{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:64px;max-width:1280px;margin:0 auto;padding:76px 44px;display:grid}.landing-demo-pitch{position:relative}.landing-demo-pitch h2{font:600 calc(42px * var(--fs-scale,1))/1.1 var(--font-display);letter-spacing:-.04em;color:var(--on-primary)}.landing-demo-pitch h2>span{color:var(--landing-gold-soft)}.landing-demo-pitch>p{max-width:44ch;font-size:calc(16px * var(--fs-scale,1));color:var(--landing-on-ink);margin:18px 0 0;line-height:1.7}.landing-demo-list{font-size:calc(14px * var(--fs-scale,1));color:var(--landing-on-ink-strong);flex-direction:column;gap:10px;margin-top:28px;display:flex}.landing-demo-list>span>span{color:var(--gold);margin-right:14px}.landing-demo-arrow{fill:none;width:150px;stroke:var(--landing-arrow);stroke-width:1.4px;position:absolute;bottom:0;right:-10px;transform:rotate(-12deg)}.landing-book{background:var(--page);border-radius:12px;padding:28px}.landing-book-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.landing-book-head h3{font:600 calc(24px * var(--fs-scale,1))/1.1 var(--font-display);letter-spacing:-.03em}.landing-book-head span{font-size:calc(11.5px * var(--fs-scale,1));color:var(--muted)}.landing-book-fields{flex-direction:column;gap:12px;margin-top:20px;display:flex}.landing-book-fields label{font-size:calc(12px * var(--fs-scale,1));margin-bottom:6px;font-weight:600;line-height:1.6;display:block}.landing-book-fields input{border:1px solid var(--field-border);border-radius:var(--r-control);background:var(--page);width:100%;height:44px;font-size:calc(15px * var(--fs-scale,1));padding:0 12px;display:block}.landing-book-fields input:focus-visible,.landing-book-fields button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.landing-book-fields button{border-radius:var(--r-control);background:var(--primary);color:var(--on-primary);font-size:calc(15px * var(--fs-scale,1));cursor:pointer;border:0;margin-top:6px;padding:13px;font-weight:600;line-height:1.6}.landing-book-fields button:hover{filter:brightness(.93)}.landing-foot{flex-wrap:wrap;align-items:center;gap:28px;max-width:1280px;margin:0 auto;padding:36px 44px 48px;display:flex}.landing-foot-logo{gap:9px}.landing-foot-logo>span{font:600 calc(18px * var(--fs-scale,1))/1 var(--font-display);letter-spacing:-.03em}.landing-foot>p{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted)}.landing-foot>p>span{color:var(--secondary-border);margin:0 8px}.landing-foot>p>a{text-underline-offset:3px;-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.landing-foot-links{font-size:calc(13.5px * var(--fs-scale,1));color:var(--muted);gap:24px;margin-left:auto;display:flex}.landing .glyph{font-family:system-ui,sans-serif}.landing :focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px}@media (max-width:900px){.landing-head{flex-wrap:wrap;gap:14px 28px;padding:18px 20px}.landing-hero,.landing-questions,.landing-demo-inner{grid-template-columns:minmax(0,1fr);gap:40px;padding-left:20px;padding-right:20px}.landing-how-inner,.landing-foot{padding-left:20px;padding-right:20px}.landing-caveat{margin-left:20%}.landing-demo-arrow{display:none}}@media (max-width:480px){.landing-nav{display:none}.landing-underlined{white-space:normal}}.upload-page .lede{max-width:62ch}.upload-form{gap:16px;margin-top:22px;display:grid}.drop-zone{border:1.5px dashed var(--secondary-border);border-radius:var(--r-card);background:var(--tint);text-align:center;justify-items:center;gap:10px;padding:30px 24px;display:grid}.drop-zone.over{border-color:var(--primary);border-style:solid}.drop-zone>b{font:700 calc(17px * var(--fs-scale,1))/1.3 var(--font-body)}.drop-zone>p{max-width:62ch;font-size:var(--fs-small);color:var(--muted)}.drop-zone:has(input:focus-visible) .btn{outline:2px solid var(--primary);outline-offset:2px}.drop-zone .chosen{font-size:calc(13px * var(--fs-scale,1));color:var(--muted)}.upload-form .actions{border:0;flex-wrap:wrap;align-items:center;gap:10px;padding:0;display:flex}.upload-form .actions .error{font-size:var(--fs-small);color:var(--destructive);flex-basis:100%;margin:0}.upload-table{margin-top:22px}.upload-row{border-bottom:1px solid var(--row);font-size:var(--fs-table);grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) minmax(0,.9fr) minmax(0,1.2fr);align-items:baseline;gap:14px;padding:13px 20px;display:grid}.upload-row.head{font-size:calc(11.5px * var(--fs-scale,1));letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 20px;font-weight:700}.upload-row.alert{background:var(--tint)}.upload-row .name{font-weight:700}.upload-row .alert{color:var(--destructive);font-weight:600}.upload-row .why{font-size:calc(12.5px * var(--fs-scale,1));color:var(--destructive);margin-top:4px;display:block}.upload-row .read-as{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);margin-top:4px;display:block}.read-as-card{margin-top:22px;padding:18px 20px}.read-as-card h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0;margin:0 0 10px}.read-as-list{font-size:var(--fs-body);flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.read-as-list li{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.read-as-card .obs-foot{margin-bottom:0}@media (max-width:900px){.upload-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.upload-row.head{display:none}}.person-page .today-grid{margin-top:22px}.person-form{gap:18px;max-width:560px;padding:20px;display:grid}.card>.person-form{padding:18px 20px 20px}.person-form .actions{flex-wrap:wrap;gap:10px;margin-top:0;display:flex}.person-form .checkline{align-items:center;gap:10px;font-weight:600;display:flex}.person-form .checkline input{width:16px;height:16px;accent-color:var(--primary)}.membership-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.membership-list li{border-bottom:1px solid var(--row);font-size:var(--fs-table);align-items:center;gap:12px;padding:12px 20px;display:flex}.membership-list li:last-child{border-bottom:0}.membership-list li form{margin-left:auto}.membership-list li.empty{color:var(--muted)}.card-foot-form{border-top:1px solid var(--line-soft);background:var(--tint);flex-wrap:wrap;align-items:flex-end;gap:12px;padding:14px 20px;display:flex}.card-foot-form:last-child{border-radius:0 0 var(--r-card) var(--r-card)}.card-foot-form .field{gap:6px}.card-foot-form .field>label{font-size:calc(13px * var(--fs-scale,1))}.card-foot-form .select{width:auto;min-width:170px;font-size:calc(13.5px * var(--fs-scale,1));padding:9px 10px}.stat-list{font-size:var(--fs-table);gap:10px;margin:0;padding:18px 20px;list-style:none;display:grid}.stat-list li{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.stat-list li>span{color:var(--muted)}.stat-list li>b{overflow-wrap:anywhere;text-align:right;min-width:0}.stat-list li>b.small{font-size:calc(12.5px * var(--fs-scale,1));font-weight:400}.stat-list .alert{color:var(--destructive)}.card>.muted{font-size:var(--fs-small);padding:0 20px}.card>form.actions{margin-top:0;padding:14px 20px 18px}.sheet{border:1px solid var(--line);border-radius:var(--r-card);background:var(--page);width:min(420px,100vw - 32px);color:var(--ink);font-size:calc(14px * var(--fs-scale,1));text-align:left;padding:0;font-weight:400}.sheet::backdrop{background:#262b3152}.sheet-body{gap:8px;padding:20px 22px;display:grid}.sheet h3{font:700 calc(16px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0;margin:0}.sheet .btns{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.department-page .today-grid,.teacher-page .today-grid{margin-top:22px}.department-page .coverage ul{margin:0;padding:0;list-style:none}.department-page .coverage li .who{gap:2px;min-width:0;display:grid}.card>.foot-link{padding:0 20px 18px}.teacher-page .record{margin:0;padding:0;list-style:none}.teacher-page .record li{border-bottom:1px solid var(--row);font-size:var(--fs-table);grid-template-columns:110px minmax(0,1fr) 140px minmax(0,1.2fr);align-items:center;gap:14px;padding:13px 20px;display:grid}.teacher-page .record li .when{color:var(--muted)}.teacher-page .record+.foot,.teacher-page .card>.foot{border-top:1px solid var(--line-soft);border-radius:0 0 var(--r-card) var(--r-card);background:var(--tint);font-size:calc(13px * var(--fs-scale,1));color:var(--muted);padding:12px 20px}.teacher-page .card.next{border-left:3px solid var(--teacher)}.teacher-page .steps-body,.teacher-page .coverage-body,.teacher-page .exports-body{gap:10px;padding:16px 20px 18px;display:grid}.teacher-page .export-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.teacher-page .export-list li{border-radius:var(--r-control);background:var(--tint);font-size:var(--fs-small);gap:2px;padding:10px 12px;display:grid}.teacher-page .card>.muted{padding-bottom:18px}.teacher-page .steps-agreed{grid-template-columns:minmax(0,1fr);margin-top:0}.teacher-page .steps-agreed li{background:var(--tint)}.state-pill.peer{background:var(--pupils-soft);color:var(--pupils-ink)}.record-export .export-note{max-width:78ch;font-size:var(--fs-small);margin-top:14px}.record-block{border-top:1px solid var(--line);margin-top:26px;padding-top:18px}.record-block h2{font-size:calc(18px * var(--fs-scale,1))}.record-block h3{font-size:calc(15px * var(--fs-scale,1));margin-top:14px}.record-block ul,.record-block ol{font-size:var(--fs-small);margin:8px 0 0;padding-left:22px}.record-block li{margin-top:4px}@media (max-width:1000px){.teacher-page .record li{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.panel-title{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0;margin:0;padding:18px 20px 0}.panel-title+p,.panel-title+.stat-list,.panel-title+.steps-body,.panel-title+.coverage-body,.panel-title+ul{padding-top:8px}.card>.panel-title+.muted{padding:8px 20px 18px}.school-page .decision-grid,.account-page .decision-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;margin-top:22px;display:grid}.school-page .decision-col,.account-page .decision-col{align-content:start;gap:16px;display:grid}.school-page .card.decisions{padding:18px 20px}.school-page .decisions-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.school-page .decisions-head>b{font-size:var(--fs-body)}.school-page .decisions-head .link-action,.school-page .decisions-head>.muted{font-size:calc(13px * var(--fs-scale,1));font-weight:600}.school-page .decision{font-size:var(--fs-table);justify-content:space-between;align-items:baseline;gap:16px;margin-top:6px;display:flex}.school-page .decisions-head+.decision,.school-page .decisions-head+form.decision{margin-top:10px}.school-page .decision .what{color:var(--muted);flex:none}.school-page .decision>b,.school-page .decision>span:last-child{text-align:right}.school-page .rule{font-size:var(--fs-table);color:var(--muted);margin:10px 0 0}.school-page .rule.small{font-size:calc(12.5px * var(--fs-scale,1))}.school-page .empty{font-size:var(--fs-table);color:var(--muted);margin:10px 0 0}.school-page .decision.switch-row{align-items:center;margin-top:16px}.school-page .decision.switch-row .what{color:var(--ink);flex:1}.school-page .decision.switch-row>b{text-align:right;flex:none;min-width:26px}.school-page .switch-btn{cursor:pointer;background:0 0;border:0;flex:none;align-items:center;padding:0;display:inline-flex}.school-page .switch-btn>i{background:var(--neutral-fill);border-radius:99px;width:32px;height:18px;transition:background .12s;position:relative}.school-page .switch-btn>i:after{content:"";background:#fff;border-radius:99px;width:14px;height:14px;transition:transform .12s;position:absolute;top:2px;left:2px}.school-page .switch-btn[aria-pressed=true]>i{background:var(--primary)}.school-page .switch-btn[aria-pressed=true]>i:after{transform:translate(14px)}.school-page .switch-btn:focus-visible>i{outline:2px solid var(--primary);outline-offset:2px}.school-page .sessions{background:var(--tint)}@media (max-width:1000px){.school-page .decision-grid,.account-page .decision-grid{grid-template-columns:minmax(0,1fr)}}.departments-card .dept-row{border-bottom:1px solid var(--row);font-size:var(--fs-table);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) 70px 130px;align-items:center;gap:14px;padding:12px 20px;display:grid}.departments-card .dept-row.head{font-size:calc(11.5px * var(--fs-scale,1));letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 20px;font-weight:700}.departments-card .dept-row form{align-items:center;gap:8px;min-width:0;display:flex}.departments-card .dept-name{min-width:0}.departments-card .dept-acts{font-size:calc(12.5px * var(--fs-scale,1));justify-content:flex-end;align-items:baseline;gap:10px;display:flex}.departments-card .dept-row .save-on-change{flex:1;min-width:0}.departments-card .dept-row .input,.departments-card .dept-row .select{width:100%}.departments-card .dept-row .btn.small{font-size:calc(12.5px * var(--fs-scale,1));flex:none;padding:7px 12px}.departments-card .dept-remove{justify-content:flex-end}.departments-card .link-action.destructive{color:var(--destructive)}.departments-card .dept-add{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:16px 20px 18px;display:grid}.departments-card .dept-add>label{font-weight:600}.departments-card .dept-add .hint{font-size:var(--fs-small);color:var(--muted);grid-column:1/-1;margin:0}.departments-card .empty{padding:16px 20px}@media (max-width:1000px){.departments-card .dept-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.departments-card .dept-row.head{display:none}}.departments-card .dept-row.asked{background:var(--tint);scroll-margin-top:24px}.departments-card .dept-row.no-lead{background:var(--tint)}.windows-form .card.setting{padding:18px 20px}.windows-form .card.setting h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0;margin:0}.windows-form .card.setting .muted{font-size:var(--fs-table);margin:6px 0 0;padding:0}.windows-form .card.setting form{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.windows-form .card.setting .segmented{flex-wrap:wrap}.windows-form .card.setting .hint{font-size:var(--fs-small);color:var(--muted);flex-basis:100%;margin:0}.windows-form .custom-minutes{font-size:var(--fs-small);color:var(--muted);align-items:center;gap:8px;display:inline-flex}.windows-form .custom-minutes .input{width:92px}.windows-form .type-chips{flex-wrap:wrap;gap:8px;display:inline-flex}.windows-form .type-chip{border:1px solid var(--line);border-radius:var(--r-chip);font-size:calc(13px * var(--fs-scale,1));color:var(--muted);cursor:pointer;align-items:center;gap:6px;padding:7px 14px;display:inline-flex}.windows-form .type-chip:has(input:checked){background:var(--teacher-soft);color:var(--teacher-ink);border-color:#0000;font-weight:600}.windows-form .type-chip:has(input:checked)>span:before{content:"✓ "}.windows-form .type-chip:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.windows-form .type-chip input{opacity:0;pointer-events:none;position:absolute}.windows-form .switch-row{align-items:center}.windows-form .switch-btn{cursor:pointer;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.windows-form .switch-btn>i{background:var(--neutral-fill);border-radius:99px;width:32px;height:18px;transition:background .12s;position:relative}.windows-form .switch-btn>i:after{content:"";background:#fff;border-radius:99px;width:14px;height:14px;transition:transform .12s;position:absolute;top:2px;left:2px}.windows-form .switch-btn[aria-pressed=true]>i{background:var(--primary)}.windows-form .switch-btn[aria-pressed=true]>i:after{transform:translate(14px)}.windows-form .switch-btn:focus-visible>i{outline:2px solid var(--primary);outline-offset:2px}.windows-form .card.setting.with-switch{justify-content:space-between;align-items:center;gap:20px;display:flex}.windows-form .card.setting.with-switch form{flex:none;margin-top:0}.windows-form .card.setting.with-switch .hint{margin-top:6px}.skeleton-form .cycle-row{align-items:center;gap:12px;display:flex}.skeleton-form .segmented>label.is-unbuilt{color:var(--muted);cursor:not-allowed;-webkit-text-decoration:line-through dotted;text-decoration:line-through dotted}.skeleton-form .cycle-note{color:var(--muted);font-size:var(--fs-small);margin:-4px 0 0}.skeleton-form .frozen-note{border-radius:var(--r-control);background:var(--tint);font-size:var(--fs-table);color:var(--muted);margin:0;padding:12px 16px}.skeleton-form .period-row{border-bottom:1px solid var(--row);font-size:var(--fs-table);grid-template-columns:62px minmax(0,1fr) 96px 96px 72px;align-items:center;gap:14px;padding:10px 20px;display:grid}.skeleton-form .period-row.head{font-size:calc(11.5px * var(--fs-scale,1));letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 20px;font-weight:700}.skeleton-form .period-row.break{background:var(--tint);color:var(--muted)}.skeleton-form .period-label{font-weight:700}.skeleton-form .period-row>span:not(.period-label){min-width:0}.skeleton-form .period-row:has(.period-fields){grid-template-columns:62px minmax(0,1fr)}.skeleton-form .period-fields{grid-template-columns:minmax(0,1fr) 96px 96px 72px;align-items:center;gap:14px;display:grid}.skeleton-form .period-fields .save-on-change,.skeleton-form .period-fields .input{width:100%}.skeleton-form .period-add{font-size:var(--fs-table);gap:18px;padding:14px 20px 16px;display:flex}.skeleton-dates .term-list{gap:8px;padding:10px 20px 18px;display:grid}.skeleton-dates .term-row{border-bottom:1px solid var(--row);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:8px;padding-bottom:10px;display:grid}.skeleton-dates .term-row .remove-term{grid-area:1/3;justify-self:end}.skeleton-dates .term-add{padding-top:4px}.skeleton-dates .term-read{font-size:var(--fs-table);justify-content:space-between;align-items:baseline;gap:12px;display:flex}.skeleton-dates .term-row .save-on-change,.skeleton-dates .term-row .input{width:100%}.skeleton-dates .closed-row{font-size:var(--fs-table);justify-content:space-between;align-items:baseline;gap:12px;display:flex}.skeleton-dates .closed-add{grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:6px;display:grid}.skeleton-form .btn.small,.skeleton-dates .btn.small{font-size:calc(12.5px * var(--fs-scale,1));padding:7px 12px}.skeleton-form .link-action.destructive,.skeleton-dates .link-action.destructive{color:var(--destructive)}.skeleton-form .empty,.skeleton-dates .empty{font-size:var(--fs-table);color:var(--muted);margin:0}.data-page .card.setting .input[type=number]{width:90px}.headings-form .head-acts{align-items:center;gap:10px;display:flex}.headings-form .head-acts .input{width:260px}.headings-form .heading-row{border-bottom:1px solid var(--row);font-size:var(--fs-table);grid-template-columns:58px minmax(0,1.4fr) minmax(0,1fr) minmax(0,.9fr) 78px;align-items:start;gap:14px;padding:14px 20px;display:grid}.headings-form .heading-row.head{font-size:calc(11.5px * var(--fs-scale,1));letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:baseline;padding:10px 20px;font-weight:700}.headings-form .code{font-weight:700}.headings-form .element{gap:6px;min-width:0;display:grid}.headings-form .element .input.title{font-weight:700}.headings-form .element .textarea{resize:vertical}.headings-form .statements-note{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted)}.headings-form .heading-row .select,.headings-form .heading-row .input,.headings-form .heading-row .textarea{width:100%}.headings-form .row-acts{font-size:calc(12.5px * var(--fs-scale,1));flex-direction:column;align-items:flex-end;gap:6px;display:flex}.headings-form .lens{min-width:0;color:var(--ink)}.headings-form .link-action.destructive{color:var(--destructive)}.headings-form .heading-add{font-size:var(--fs-table);padding:14px 20px 16px}.headings-form .used-list{font-size:var(--fs-table);gap:8px;margin:0;padding:10px 20px 0;list-style:none;display:grid}.headings-form .preset-pick{align-items:center;gap:8px;margin:12px 0;padding:0 20px;display:flex}.headings-form .preset-pick .select{flex:1;min-width:0}.headings-form .empty{font-size:var(--fs-table);color:var(--muted);padding:16px 20px}.headings-form .used-note{margin-top:12px;padding:0 20px 4px}.archive-page .archive-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.archive-page .card.stat{gap:4px;padding:18px 20px;display:grid}.archive-page .card.stat>b{font:600 calc(27px * var(--fs-scale,1))/1.1 var(--font-display);letter-spacing:-.03em}.archive-page .card.stat>span{font-size:var(--fs-table);color:var(--muted)}.archive-page .today-grid{margin-top:16px}.archive-page .archive-row{border-bottom:1px solid var(--row);font-size:var(--fs-table);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) 90px;align-items:baseline;gap:14px;padding:13px 20px;display:grid}.archive-page .archive-row .counts{text-align:right;color:var(--muted)}.archive-page .empty{font-size:var(--fs-table);color:var(--muted);padding:16px 20px}.school-page .start-session{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:12px;display:grid}.school-page .start-session .input{width:100%;font-size:var(--fs-small)}.school-page .start-session .rule.small{grid-column:1/-1;margin-top:2px}@media (max-width:1000px){.archive-page .archive-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.app-frame[data-larger-text]{--fs-body:17px;--fs-small:15px;--fs-table:15px}.app-frame[data-larger-text] .app-main{font-size:var(--fs-body);--fs-scale:1.133}.account-page .card.account-card{padding:18px 20px}.account-page .card.account-card h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0;margin:0 0 10px}.account-page .card.account-card .muted{font-size:var(--fs-table);margin:12px 0 0;padding:0}.account-page .chips{flex-wrap:wrap;gap:8px;display:flex}.account-page .account-acts{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.account-page .segmented .seg{border-radius:var(--r-chip);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 14px}.account-page .segmented .seg[aria-pressed=true]{background:var(--ink);color:var(--on-primary);font-weight:600}.account-page .segmented .seg:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.account-page .btn.destructive{border-color:var(--line);color:var(--destructive)}.account-record .exports-body{gap:10px;padding:16px 20px 18px;display:grid}.account-record .export-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.account-record .export-list li{border-radius:var(--r-control);background:var(--tint);font-size:var(--fs-small);gap:2px;padding:10px 12px;display:grid}.account-record .record li{grid-template-columns:110px minmax(0,1.6fr) 140px minmax(0,1fr);align-items:baseline}@media (max-width:1180px){.account-record .record li{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.help-page .help-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;margin-top:22px;display:grid}.help-page .card.help-card{flex-direction:column;padding:18px 20px;display:flex}.help-page .card.help-card h2{font:700 calc(15px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0;margin:0 0 10px}.help-page .card.help-card .muted{font-size:var(--fs-table);margin:0;padding:0}.help-page .help-open{color:var(--primary);font-size:var(--fs-small);margin-top:auto;padding-top:14px;font-weight:600;text-decoration:none}.help-page .help-open:hover{text-decoration:underline}.help-page .card.help-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:18px 20px;display:flex}.help-page .card.help-foot .muted{max-width:62ch;font-size:var(--fs-table);margin:0;padding:0}@media (max-width:900px){.help-page .help-grid{grid-template-columns:minmax(0,1fr)}}.help-pointer{border:1px solid var(--line);border-radius:var(--r-card);background:var(--tint);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:18px;padding:12px 16px;display:flex}.help-pointer p{color:var(--ink);font-size:var(--fs-small);margin:0}.help-pointer button{color:var(--primary);font:inherit;font-size:var(--fs-small);cursor:pointer;background:0 0;border:0;font-weight:600}.help-pointer button:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--r-control)}.start-overlay{background:0 0;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;overflow:auto}.start-overlay::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#262b31e0}.start-overlay-body{text-align:center;flex-direction:column;align-items:center;gap:16px;width:min(560px,100% - 32px);margin:max(12vh,48px) auto;display:flex}.start-overlay-body h2{color:#fff;font:600 calc(34px * var(--fs-scale,1))/1.15 var(--font-display);letter-spacing:-.03em;margin:8px 0 12px}.start-door{background:var(--page);width:100%;color:var(--ink);text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;text-decoration:none;display:flex}.start-door>span:first-child{flex-direction:column;gap:6px;display:flex}.start-door strong{font:600 calc(19px * var(--fs-scale,1))/1.2 var(--font-display);letter-spacing:-.02em}.start-door span span{color:var(--muted);font-size:calc(14px * var(--fs-scale,1))}.start-door>span:last-child{color:var(--primary);font-size:calc(19px * var(--fs-scale,1))}.start-door.quiet{color:#fff;background:#ffffff14;border:1px solid #ffffff3d}.start-door.quiet span span,.start-door.quiet>span:last-child{color:#ffffffb8}.start-door:hover{filter:brightness(.96)}.start-door:focus-visible,.start-overlay-body button:focus-visible{outline-offset:3px;outline:2px solid #fff}.start-overlay-body button{color:#ffffffa8;font:inherit;font-size:calc(14px * var(--fs-scale,1));cursor:pointer;background:0 0;border:0;margin-top:6px}.landing-book-sent p{font-size:calc(15px * var(--fs-scale,1));margin-top:20px;line-height:1.6}.landing-book-sent a{color:var(--primary);font-weight:600}.plain-page .platform-table{border-collapse:collapse;width:100%;font-size:var(--fs-table)}.plain-page .platform-table th{border-bottom:1px solid var(--line);color:var(--muted);font-size:var(--fs-small);letter-spacing:.04em;text-align:left;text-transform:uppercase;padding:10px 12px;font-weight:600}.plain-page .platform-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:12px}.plain-page .platform-table code{font-size:var(--fs-small)}.plain-page .platform-view-as{flex-wrap:wrap;gap:6px;display:flex}.plain-page .platform-acting{align-items:center;gap:12px;display:flex}.plain-page .platform-red{border:1px solid var(--observer);background:var(--observer-soft);color:var(--observer-ink);border-radius:14px;margin:0;padding:12px 14px}.plain-page .platform-red code{font-size:var(--fs-small)}.setup-shell{background:var(--page);min-height:100dvh}.setup-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex}.setup-brand{align-items:center;gap:16px;display:flex}.setup-which{color:var(--muted);font-size:var(--fs-body)}.setup-saved{color:var(--muted);font-size:var(--fs-body);margin:0}.setup-steps{padding:16px 28px 0}.setup-steps ol{flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex}.setup-steps li{align-items:center;display:flex}.setup-dash{background:var(--line);width:18px;height:1px;margin:0 10px}.setup-steps a{color:var(--muted);font-size:var(--fs-body);border-radius:8px;align-items:center;gap:8px;padding:4px 2px;text-decoration:none;display:inline-flex}.setup-steps a:hover .setup-label{text-decoration:underline}.setup-n{border:1px solid var(--line);width:22px;height:22px;color:var(--muted);font-size:calc(12px * var(--fs-scale,1));border-radius:999px;place-items:center;font-style:normal;font-weight:600;display:grid}.setup-steps .is-here a{color:var(--ink);font-weight:700}.setup-steps .is-here .setup-n{border-color:var(--ink);background:var(--ink);color:#fff}.setup-steps .is-done a{color:var(--ink)}.setup-steps .is-done .setup-n{border-color:var(--teacher);color:var(--teacher-ink)}.setup-main{padding:8px 28px 64px}.setup-step{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:48px;max-width:1280px;display:grid}.setup-body h1{margin:18px 0 8px}.setup-body>.lede{max-width:62ch;margin:0 0 22px}.setup-side{padding-top:24px}.setup-note{background:var(--tint);border-radius:14px;padding:16px 18px}.setup-note b{font-size:var(--fs-body);margin-bottom:8px;display:block}.setup-note p{color:var(--muted);font-size:var(--fs-body);margin:0}.setup-move{justify-content:space-between;align-items:center;gap:16px;margin-top:28px;display:flex}.setup-back{color:var(--primary);font-weight:600;text-decoration:none}.setup-back:hover{text-decoration:underline}@media (max-width:1080px){.setup-step{grid-template-columns:minmax(0,1fr);gap:24px}.setup-side{padding-top:0}}.setup-form{gap:18px;max-width:820px;display:grid}.setup-pair{grid-template-columns:1fr 1fr;gap:18px;display:grid}.setup-form .label{font-size:var(--fs-body);margin-bottom:6px;font-weight:600;display:block}.setup-static{border:1px solid var(--line);background:var(--tint);color:var(--ink);border-radius:8px;margin:0;padding:11px 13px}.setup-form .hint{color:var(--muted);font-size:var(--fs-small);margin:6px 0 0}.setup-form>.btn{justify-self:start}@media (max-width:720px){.setup-pair{grid-template-columns:1fr}}.about-card{padding:20px 22px}.setup-count{color:var(--muted);font-size:var(--fs-body);margin:0 0 18px}.headings-form .headings-body{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:24px;display:grid}.setup-step .headings-form .headings-body{grid-template-columns:minmax(0,1fr)}@media (max-width:1080px){.headings-form .headings-body{grid-template-columns:minmax(0,1fr)}}.preset-chips{flex-wrap:wrap;gap:10px;margin-bottom:10px;display:flex}.chip-btn{border:1px solid var(--secondary-border);background:var(--page);color:var(--ink);font:inherit;font-size:var(--fs-body);cursor:pointer;border-radius:999px;padding:9px 16px}.chip-btn:hover{border-color:var(--ink)}.chip-btn.is-unwritten{color:var(--muted);cursor:default;border-style:dashed}.chip-btn.is-unwritten:hover{border-color:var(--secondary-border)}.preset-hint{max-width:68ch;color:var(--muted);font-size:var(--fs-small);margin:0 0 18px}.setup-list-name{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:18px;display:flex}.setup-list-name label{font-size:var(--fs-body);flex-basis:100%;font-weight:600}.setup-list-name .input{flex:320px}.chip-btn.is-on{border-color:var(--ink);background:var(--ink);color:#fff;font-weight:600}.statements-card{gap:4px;max-width:980px;display:grid}.statement-group{border-bottom:1px solid var(--line);padding:0 0 18px}.statement-group:has(+.statements-save){border-bottom:0}.statement-heading{background:var(--tint);color:var(--muted);font-size:var(--fs-small);letter-spacing:.04em;text-transform:uppercase;margin:0 -18px 14px;padding:12px 18px;font-weight:600}.statement-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:12px;padding:8px 0;display:grid}.pair-field{gap:6px;display:grid}.pair-field label{color:var(--muted);font-size:var(--fs-small)}.statements-save{border-top:1px solid var(--line);padding-top:16px}.statements-save .hint{max-width:68ch;color:var(--muted);font-size:var(--fs-small);margin:10px 0 0}@media (max-width:860px){.statement-pair{grid-template-columns:minmax(0,1fr);align-items:stretch}}.preview-card{margin-top:14px}.pupil-preview{border:1px solid var(--line);border-radius:14px;padding:14px}.preview-what{color:var(--pupils-ink);font-size:var(--fs-small);letter-spacing:.04em;font-weight:700}.preview-statement{font-size:var(--fs-body);margin:8px 0 12px;font-weight:600}.preview-scale{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.preview-scale span{border:1px solid var(--line);border-radius:8px;height:30px}.preview-scale span.is-on{border-color:var(--pupils);background:var(--pupils-soft)}.preview-observer{color:var(--muted);font-size:var(--fs-small);margin:12px 0 0}.review-card{max-width:980px;padding:0}.review-row{border-bottom:1px solid var(--row);grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;display:grid}.review-row:last-child{border-bottom:0}.review-mark{background:var(--teacher-soft);width:24px;height:24px;color:var(--teacher-ink);font-size:calc(13px * var(--fs-scale,1));border-radius:999px;place-items:center;font-style:normal;font-weight:700;display:grid}.review-mark.is-gap{background:var(--observer-soft);color:var(--observer-ink)}.review-what{gap:3px;min-width:0;display:grid}.review-what .muted{font-size:var(--fs-small)}.setup-fix{border:1px solid var(--observer);background:var(--observer-soft);color:var(--observer-ink);border-radius:14px;margin-top:14px;padding:16px 18px}.setup-fix b{margin-bottom:8px;display:block}.setup-fix ul{margin:0 0 10px;padding-left:18px}.setup-fix li{font-size:var(--fs-body);margin-bottom:4px}.setup-fix p{font-size:var(--fs-small);margin:0}.themes-head{align-items:center}.themes-head .lede{max-width:720px;font-size:var(--fs-body);line-height:1.55}.themes-controls{flex:none;align-items:center;gap:12px;display:flex}.themes-controls .segmented{font-size:calc(14px * var(--fs-scale,1))}.themes-controls .segmented>a{padding:8px 16px}.themes-term{align-items:center;gap:8px;display:flex;position:relative}.themes-term .select{width:auto;min-width:170px;color:var(--ink);font-weight:600}.reveal-on-focus:not(:focus-visible){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.themes-note{border:1px solid var(--line);border-radius:var(--r-control);background:var(--tint);font-size:var(--fs-small);color:var(--muted);margin-top:16px;padding:12px 16px}.themes-card .card-head,.themes-card>.empty{padding:16px 24px}.themes-card .card-head>h2{font-size:calc(15.5px * var(--fs-scale,1))}.themes-key{border-bottom:1px solid var(--row);font-size:var(--fs-small);color:var(--muted);gap:18px;padding:12px 24px;display:flex}.themes-key span{align-items:center;gap:7px;display:inline-flex}.themes-key i{border-radius:3px;width:11px;height:11px}.themes-key .agree,.themes-bar .agree{background:var(--teacher)}.themes-key .differ,.themes-bar .differ{background:var(--observer)}.themes-key .one-voice,.themes-bar .one-voice{background:var(--neutral-fill)}.themes-key .few,.themes-bar .few{background:var(--teacher-pale)}.themes-rows{margin:0;padding:0;list-style:none}.themes-rows>li{border-bottom:1px solid var(--row);padding:16px 24px 14px}.themes-rows>li:last-child{border-bottom:0}.themes-rows>li.most{background:var(--tint)}.themes-row-top{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.themes-row-top b{font-size:calc(15px * var(--fs-scale,1))}.themes-row-top .meta{font-size:calc(14px * var(--fs-scale,1));color:var(--muted);flex:none}.themes-rows>li.most .themes-row-top .meta{color:var(--observer-ink);font-weight:600}.themes-bar{border-radius:var(--r-chip);background:var(--track);height:9px;margin-top:10px;display:flex;overflow:hidden}.themes-counts{font-size:var(--fs-small);color:var(--muted);margin:6px 0 0}.themes-careful .muted{line-height:1.6}.themes-table td{font-variant-numeric:tabular-nums}.themes-table tbody th{color:var(--ink);font-weight:600}@media (max-width:900px){.themes-head{flex-direction:column;align-items:flex-start}.themes-controls{flex-wrap:wrap}}.skeleton-dates .term-row{grid-template-columns:minmax(0,1fr) auto}.skeleton-dates .term-row .name-field{grid-column:1}.skeleton-dates .term-row .remove-term{grid-area:1/2}.skeleton-dates .term-row>input[name=starts_on],.skeleton-dates .term-add .name-field{grid-column:1/-1}.skeleton-dates .term-list>.empty{padding:0}.skeleton-dates .closed-add{grid-template-columns:minmax(0,1fr) auto}.skeleton-dates .closed-add>input[type=date]{grid-column:1/-1}.setup-side{align-content:start;gap:16px;display:grid}.statements-card{padding:0 0 18px;overflow:hidden}.statement-group,.statements-save{padding-left:18px;padding-right:18px}.statement-pair.is-new{border-radius:var(--r-control);background:var(--teacher-soft);margin:4px -8px 0;padding:8px}.preview-card{padding:16px 18px}.add-one{margin-top:16px;padding:14px 20px}.add-one>summary{color:var(--primary);cursor:pointer;font-weight:600}.add-one-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px 16px;margin-top:14px;display:grid}.add-one-form .btn{justify-self:start}.setup-saved.is-unsaved{color:var(--observer-ink);font-weight:600}.setup-leaving{z-index:50;border:1px solid var(--observer);border-radius:var(--r-card);background:var(--observer-soft);width:calc(100% - 32px);max-width:560px;color:var(--observer-ink);padding:16px 18px;position:fixed;top:76px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #262b312e}.setup-leaving p{margin:0}.setup-leaving-acts{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}@media (max-width:720px){.setup-top{flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px}.setup-brand{flex-direction:column;align-items:flex-start;gap:4px}.skeleton-form .period-row{grid-template-columns:44px minmax(0,1fr) 58px 58px auto;gap:8px;padding:10px 14px}.skeleton-form .period-row.head{display:none}.skeleton-form .period-row:has(.period-fields){grid-template-columns:44px minmax(0,1fr)}.skeleton-form .period-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.skeleton-form .period-fields>input[name=name]{grid-column:1/-1}.headings-form .heading-row{grid-template-columns:minmax(0,1fr);gap:8px}.headings-form .heading-row.head{display:none}.headings-form .row-acts{flex-direction:row;align-items:center}.upload-row{grid-template-columns:minmax(0,1fr);gap:2px}.upload-row.head{display:none}.upload-row>span{overflow-wrap:anywhere}.add-one-form{grid-template-columns:minmax(0,1fr)}.themes-card .card-head{flex-wrap:wrap}.themes-card .card-head>h2{flex:100%;min-width:0}.themes-row-top{flex-wrap:wrap}.themes-export .record-block{overflow-x:auto}}.save-waiting{color:var(--observer-ink);font-size:var(--fs-small);margin-top:6px;font-weight:600;display:block}@media (max-width:720px){.skeleton-form .period-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.skeleton-form .period-fields>input[name=name],.skeleton-form .period-fields>button{grid-column:1/-1}}.walks-card{padding:24px 28px}.walks-card+.walks-card{margin-top:20px}.walks-card-title{font:600 calc(19px * var(--fs-scale,1))/1.2 var(--font-display);letter-spacing:var(--ls-display);margin:0 0 6px;padding:0}.walks-card-lede{max-width:78ch;font-size:var(--fs-small);margin-bottom:16px}.walks-sub{font:700 calc(14.5px * var(--fs-scale,1))/1.3 var(--font-body);letter-spacing:0;margin:22px 0 10px}.walks-form-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin-top:22px;padding-top:18px;display:flex}.walks-form-foot .muted{max-width:60ch}.small{font-size:var(--fs-small)}.block{display:block}.pill{border-radius:var(--r-chip);font-size:calc(12.5px * var(--fs-scale,1));white-space:nowrap;align-items:center;gap:6px;padding:3px 10px;font-weight:600;display:inline-flex}.pill.open{background:var(--observer-soft);color:var(--observer-ink)}.pill.next{background:var(--row);color:var(--muted)}.pill.focus-area{background:var(--teacher-soft);color:var(--teacher-ink);font-size:calc(11.5px * var(--fs-scale,1));padding:2px 8px}.pill.pupil{background:var(--pupils-soft);color:var(--pupils-ink)}.walks-card>.muted{padding:0}.walks-card>.muted:not(.small){font-size:inherit}.walks-setup .page-head{margin-bottom:18px}.walks-setup-nav{font-size:var(--fs-small);flex-wrap:wrap;gap:6px 18px;margin-bottom:18px;display:flex}.walks-setup-nav a{color:var(--primary);font-weight:600;text-decoration:none}.walks-setup-nav a:hover{text-decoration:underline}.walks-mode-form fieldset{border:0;margin:0;padding:0}.walks-mode-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.stack .walks-mode-options{grid-template-columns:minmax(0,1fr)}.walks-option{border:1px solid var(--field-border);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.walks-option:has(input:checked){border-color:var(--teacher);background:var(--teacher-soft)}.walks-option:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.walks-option input{accent-color:var(--primary);margin-top:4px}.walks-option>span{gap:2px;display:grid}.walks-option b{font-weight:600}.walks-option:has(input:checked) .muted{color:var(--teacher-ink)}.rubric-upload{gap:14px;display:grid}.rubric-upload-actions{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.rubric-upload-actions .error{color:var(--destructive);font-size:var(--fs-small)}.rubric-result{margin-top:18px}.rubric-result-sum{font-size:var(--fs-small);margin-bottom:8px;font-weight:600}.rubric-result-table,.session-table{border-collapse:collapse;width:100%;font-size:var(--fs-table)}.rubric-result-table th,.session-table thead th{border-bottom:1px solid var(--line);color:var(--muted);font-size:calc(12px * var(--fs-scale,1));text-align:left;padding:8px 6px;font-weight:600}.rubric-result-table td,.session-table td,.session-table tbody th{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:middle;padding:9px 6px}.session-table tbody th{font-weight:600}.rubric-result-table tr.alert td{background:var(--observer-soft)}.rubric-result-table .why{color:var(--observer-ink)}.session-table input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}.session-table td:last-child{min-width:260px}.rubric-edit{margin-top:8px}.rubric-group{margin-top:14px}.rubric-group .eyebrow{margin-bottom:6px}.rubric-heading{border-top:1px solid var(--line-soft)}.rubric-heading>summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:10px 0;display:flex}.rubric-heading>summary b{font-weight:600}.rubric-heading[open]{padding-bottom:14px}.rubric-heading-fields,.rubric-level,.focus-row{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:10px 14px;margin-top:10px;display:grid}.rubric-level .textarea{min-height:0}.window-list{margin:0;padding:0;list-style:none}.window-list>li{border-top:1px solid var(--line-soft);padding:12px 0}.window-list>li:first-child{border-top:0}.window-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.window-dept{gap:2px;display:grid}.window-edit>summary{margin-top:6px;list-style:none}.window-edit>summary::-webkit-details-marker{display:none}.window-edit[open]>summary{margin-bottom:8px}.window-form{justify-items:start;gap:12px;display:grid}.window-form.add{border-top:1px solid var(--line);margin-top:10px;padding-top:4px}.window-fields{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:12px;width:100%;display:grid}.window-edit form+form{margin-top:10px}.focus-deadline{max-width:320px}.programme-rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;display:grid}.pupils-form{gap:14px;display:grid}.pupils-min{max-width:420px}.pupils-min .input{max-width:120px}@media (max-width:900px){.walks-mode-options,.rubric-heading-fields,.rubric-level,.focus-row,.programme-rows,.window-fields{grid-template-columns:minmax(0,1fr)}.session-table thead{display:none}.session-table,.session-table tbody,.session-table tr,.session-table td,.session-table tbody th{display:block}.session-table tr{border-bottom:1px solid var(--line-soft);padding:10px 0}.session-table td,.session-table tbody th{border:0;padding:4px 0}.session-table td:last-child{min-width:0}.session-table td:nth-child(2):after{content:" On the walk form";font-size:var(--fs-small)}.session-table td:nth-child(3):after{content:" Focus";font-size:var(--fs-small)}.rubric-result-table{display:block;overflow-x:auto}}@media (max-width:720px){.app-frame[data-mode=walks]{flex-direction:column}.app-frame[data-mode=walks] .rail{z-index:5;flex-direction:row;justify-content:space-around;width:100%;height:auto;padding:6px 8px;overflow:visible}.app-frame[data-mode=walks] .rail-home,.app-frame[data-mode=walks] .rail-switch{display:none}.app-frame[data-mode=walks] .rail-items{flex-direction:row;flex:1;justify-content:space-around;width:auto}.app-frame[data-mode=walks] .rail-foot{flex-direction:row;gap:4px;margin-top:0}.app-frame[data-mode=walks] .rail-item{width:auto;padding:8px 10px}.app-frame[data-mode=walks] .app-main{padding:24px 16px 72px}.app-frame[data-mode=walks] .walks-card{padding:20px 18px}}.walks-head{margin-bottom:28px}.walks-head .lede{font-size:var(--fs-body);margin-top:8px}.walks-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.walks-grid>.stack{gap:20px}.walks-grid .walks-card+.walks-card{margin-top:0}.walks-card-h{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.walks-card-h3{font:600 calc(16px * var(--fs-scale,1))/1.15 var(--font-display);letter-spacing:var(--ls-display);margin:0}.walks-card>.walks-card-h3:first-child{margin-bottom:6px}.walks-gap{margin-top:6px}.window-title{flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}.window-title h2{font-size:calc(24px * var(--fs-scale,1))}.walk-dots{flex-wrap:wrap;gap:7px;margin:16px 0 8px;display:flex}.walk-dots i{border:1.5px solid var(--observer);background:var(--page);border-radius:50%;width:14px;height:14px}.walk-dots i.on{background:var(--observer)}.ink{color:var(--ink);font-weight:600}.btn-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.walks-card .btn{font-size:calc(14.5px * var(--fs-scale,1));padding:10px 18px}.meter{border-radius:var(--r-chip);background:var(--track);height:8px;margin:10px 0 6px;overflow:hidden}.meter i{background:var(--teacher);height:100%;display:block}.meter.pupils i{background:var(--pupils)}.walks-list{margin:0;padding:0;list-style:none}.walks-list-row{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.walks-list-row:first-child{border-top:0}.walk-who{color:var(--ink);font-weight:600;text-decoration:none}.walk-who:hover{color:var(--primary);text-decoration:underline}.walks-focus-chosen{font:600 calc(19px * var(--fs-scale,1))/1.25 var(--font-display);letter-spacing:var(--ls-display);margin-top:6px}.copy-link{flex-wrap:wrap;align-items:center;gap:6px 10px;display:inline-flex}.copy-link-url{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);overflow-wrap:anywhere}.btn-row form{display:contents}@media (max-width:980px){.walks-grid{grid-template-columns:minmax(0,1fr)}}.walk-form .form-top{grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:14px;display:grid}.walk-form .field>label,.walk-form .feedback-field legend{font-size:var(--fs-small);font-weight:600}.walk-form .input,.walk-form .textarea{border-radius:var(--r-control);font-size:var(--fs-body);padding:10px 12px}.walk-form .err{min-height:1px;color:var(--destructive);font-size:calc(13px * var(--fs-scale,1));margin-top:8px}.focus-banner{background:var(--teacher-soft);border-radius:12px;flex-wrap:wrap;gap:24px;margin-top:16px;padding:14px 18px;display:flex}.focus-banner>div{flex-direction:column;gap:2px;display:flex}.focus-banner .eyebrow{color:var(--teacher-ink)}.focus-banner b{font-weight:600}.walk-form .group-label{margin:26px 0 4px}.hrow{border-top:1px solid var(--line-soft);grid-template-columns:190px minmax(0,1fr);align-items:center;gap:6px 18px;padding:14px 0;display:grid}.hrow .hname{flex-direction:column;align-items:flex-start;gap:4px;font-weight:600;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--field-border);border-radius:var(--r-chip);background:var(--page);font-size:var(--fs-small);cursor:pointer;align-items:center;padding:6px 13px;display:inline-flex;position:relative}.chip input{opacity:0;cursor:inherit;margin:0;position:absolute;inset:0}.chip:hover{border-color:var(--observer)}.chip:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.chip:has(input:checked){border-color:#0000;font-weight:600}.chip[data-rank="1"]:has(input:checked){background:var(--level-1);color:#fff}.chip[data-rank="2"]:has(input:checked){background:var(--level-2);color:#fff}.chip[data-rank="3"]:has(input:checked){background:var(--level-3);color:var(--ink)}.chip[data-rank="4"]:has(input:checked){background:var(--level-4);color:var(--ink)}.chip[data-rank="5"]:has(input:checked){background:var(--level-5);color:var(--ink);box-shadow:inset 0 0 0 1px var(--level-3)}.chip:has(input:disabled){opacity:.4;cursor:not-allowed}.chip:has(input:disabled):hover{border-color:var(--field-border)}.chip.ns{color:var(--muted);border-style:dashed}.chip.ns:has(input:checked){border-style:solid;border-color:var(--line);background:var(--row);color:var(--muted)}.hrow .desc{font-size:var(--fs-small);color:var(--muted);grid-column:2;margin:0}.btn-link{color:var(--primary);font:600 calc(14px * var(--fs-scale,1))/1.4 var(--font-body);cursor:pointer;background:0 0;border:0;padding:0}.btn-link:hover{text-decoration:underline}.more-toggle{margin-top:14px}.walk-form .form-bottom{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:12px;display:grid}.walk-notes{margin-top:14px}.walk-notes .textarea{min-height:84px}.save-bar{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:20px;display:flex}.feedback-field{border:0;margin:0;padding:0}.feedback-field legend{margin-bottom:8px;padding:0}.walk-form .segmented{border-color:var(--field-border);background:var(--page);font-size:var(--fs-small)}@media (max-width:980px){.walk-form .form-top{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.hrow{grid-template-columns:minmax(0,1fr)}.hrow .desc{grid-column:1}.walk-form .form-top,.walk-form .form-bottom{grid-template-columns:minmax(0,1fr)}}.walk-summary .stack{gap:20px}.walk-summary .stack>*,.walks-grid .stack>*,.grid-half>*{min-width:0}.level-legend{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin-bottom:6px;display:flex}.swatch{vertical-align:-2px;border-radius:3px;width:12px;height:12px;margin-right:6px;display:inline-block}.level-1{background:var(--level-1)}.level-2{background:var(--level-2)}.level-3{background:var(--level-3)}.level-4{background:var(--level-4)}.level-5{background:var(--level-5);box-shadow:inset 0 0 0 1px var(--level-3)}.swatch.pupils{background:var(--pupils)}.srow{border-top:1px solid var(--line-soft);grid-template-columns:200px minmax(0,1fr) 210px;align-items:center;gap:6px 20px;padding:16px 0;display:grid}.srow .hname{flex-direction:column;align-items:flex-start;gap:4px;font-weight:600;display:flex}.stack-bar{border-radius:6px;gap:2px;height:26px;display:flex;overflow:hidden}.stack-bar span{min-width:0;font-size:calc(12px * var(--fs-scale,1));place-items:center;font-weight:600;display:grid}.srow .word{font-weight:600}.srow .word small,.srow .ly{font-size:calc(12.5px * var(--fs-scale,1));color:var(--muted);font-weight:400;display:block}.pline{grid-column:2/4;grid-template-columns:minmax(0,1fr) 210px;align-items:center;gap:20px;display:grid}.pbar{border-radius:var(--r-chip);background:var(--pupils-track);height:10px;overflow:hidden}.pbar i{background:var(--pupils);height:100%;display:block}.pmeta{font-size:calc(13px * var(--fs-scale,1));color:var(--pupils-ink)}.pquote{margin-bottom:5px}.agree{border-radius:var(--r-chip);font-size:calc(12px * var(--fs-scale,1));margin-top:4px;padding:2px 8px;font-weight:600;display:inline-block}.agree.same{color:#3e5c45;background:#e9f0ea}.agree.diff{background:var(--pupils-soft);color:var(--pupils-ink)}.grid-half{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}.walks-card .tally-title{margin-bottom:10px}.tally{margin:0;padding:0;list-style:none}.tally-row{font-size:calc(14px * var(--fs-scale,1));grid-template-columns:150px minmax(0,1fr) 26px;align-items:center;gap:12px;padding:6px 0;display:grid}.tally-row .bar{border-radius:var(--r-chip);background:var(--track);height:10px;overflow:hidden}.tally-row .bar i{height:100%;display:block}.tally-row .bar i.strength{background:var(--level-2)}.tally-row .bar i.development{background:var(--teacher)}.tally-row b{text-align:right;font-weight:600}.btn-row.tight{margin-top:0}.btn-row.centre,.centre{text-align:center;justify-content:center}.textarea.draft{min-height:260px;font-size:var(--fs-body);border-radius:12px;padding:18px 20px;line-height:1.65}.draft.read{border:1px solid var(--field-border);border-radius:12px;padding:18px 20px;line-height:1.65}.draft.read p+p{margin-top:10px}.pdf-area{margin-top:20px}.pdf-wrap{border-radius:var(--r-card);background:var(--row);padding:28px}.pdf-wrap .btn-row{margin-top:18px}.pdf-wrap>.muted{margin-top:10px}.table-wrap{position:relative;overflow-x:auto}.walks-table{border-collapse:collapse;width:100%;font-size:var(--fs-table)}.walks-table th{border-bottom:1px solid var(--line);color:var(--muted);font-size:calc(12px * var(--fs-scale,1));text-align:left;white-space:nowrap;padding:8px 6px;font-weight:600}.walks-table abbr{text-decoration:none}.walks-table td{border-bottom:1px solid var(--line-soft);vertical-align:middle;padding:8px 6px}.walks-table tr.w:hover td,.walks-table tr.w.open td{background:var(--tint)}.walks-table .nowrap{white-space:nowrap}.row-toggle{color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.row-toggle:hover{color:var(--primary);text-decoration:underline}.cell{border-radius:5px;width:30px;height:22px;display:inline-block}.cell.n{border:1px dashed var(--line);background:0 0}.walks-table tr.notes td{background:var(--tint);font-size:var(--fs-small);padding:12px 14px}.walk-pdf{background:var(--page);max-width:760px;box-shadow:0 1px 0 var(--line), 0 0 0 1px var(--line);font-size:var(--fs-small);margin:0 auto;padding:44px 52px;line-height:1.55}.export-page .walk-pdf-head,.walk-pdf-head{border-bottom:0;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:0;display:flex}.walk-pdf h1{font-size:calc(22px * var(--fs-scale,1));margin:0}.walk-pdf-meta{color:var(--muted);margin:6px 0 18px}.walk-pdf-text p+p{margin-top:8px}.walk-pdf .placeholder{color:var(--placeholder)}.walk-pdf table{border-collapse:collapse;width:100%;margin:14px 0}.walk-pdf th,.walk-pdf td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;padding:6px 4px}.walk-pdf th{font-size:calc(11.5px * var(--fs-scale,1));color:var(--muted);font-weight:600}.walk-pdf-foot{font-size:calc(11.5px * var(--fs-scale,1));color:var(--muted);margin-top:18px}.walk-export{max-width:820px}.walk-export>.muted{margin-bottom:12px}@media print{.walk-pdf{max-width:none;box-shadow:none;padding:0}}@media (max-width:980px){.srow{grid-template-columns:minmax(0,1fr)}.pline{grid-column:1;grid-template-columns:minmax(0,1fr);gap:8px}.grid-half{grid-template-columns:minmax(0,1fr)}}@media (max-width:720px){.tally-row{grid-template-columns:110px minmax(0,1fr) 22px}.walk-pdf{padding:24px 20px}.pdf-wrap{padding:12px}}.walk-public{background:var(--page);min-height:100vh;padding:40px 16px 80px}.walk-public-mark{max-width:620px;margin:0 auto 18px}.walks-card.narrow{max-width:620px}.walk-public .walks-card.narrow{margin:0 auto}.focus-title{font-size:calc(19px * var(--fs-scale,1));margin-top:8px}.focus-lede{margin-top:6px}.focus-choose fieldset{border:0;margin:0;padding:0}.opt{border:1px solid var(--field-border);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;margin-top:10px;padding:14px 16px;display:flex}.opt:has(input:checked){border-color:var(--teacher);background:var(--teacher-soft)}.opt:has(input:checked) .muted{color:var(--teacher-ink)}.opt:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.opt input{accent-color:var(--primary);margin-top:4px}.opt b{font-weight:600}.opt.opt-small{align-items:center;margin:0;padding:10px 14px}.opt.opt-small input{margin-top:0}.focus-programmes{margin-top:22px!important}.focus-programmes legend{font-size:var(--fs-small);margin-bottom:8px;font-weight:600}.focus-choose .save-bar .err{color:var(--destructive);font-size:var(--fs-small)}.pulse-screen{padding:28px 22px 48px}.pulse-mark{margin-bottom:18px}.pulse-school{color:var(--pupils-ink)}.pulse-screen h1{font-size:calc(19px * var(--fs-scale,1));margin-top:8px}.pulse-promise{margin-top:8px}.pulse-form fieldset{border:0;margin:0;padding:0}.pulse-form .yg{margin-top:18px}.pulse-form .yg legend{font-size:var(--fs-small);margin-bottom:8px;font-weight:600}.yg-chips{flex-wrap:wrap;gap:6px;display:flex}.yg-chips label,.scale label{cursor:pointer;position:relative}.yg-chips input,.scale input{opacity:0;cursor:inherit;margin:0;position:absolute;inset:0}.yg-chips span{border:1px solid var(--field-border);border-radius:var(--r-chip);background:var(--page);font-size:var(--fs-small);padding:6px 12px;display:inline-block}.yg-chips input:checked+span{border-color:var(--pupils);background:var(--pupils);color:#fff}.yg-chips input:focus-visible+span,.scale input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.pulse-form .q{border-top:1px solid var(--line-soft);margin-top:10px;padding:16px 0 0}.pulse-form .q legend{float:left;width:100%;margin-bottom:10px;font-weight:600}.scale{clear:both;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.scale span{border:1px solid var(--field-border);background:var(--page);min-height:44px;font-size:calc(11.5px * var(--fs-scale,1));text-align:center;border-radius:10px;place-items:center;padding:8px 2px;line-height:1.2;display:grid}.scale input:checked+span{border-color:var(--pupils);background:var(--pupils);color:#fff;font-weight:600}.pulse-form .err{min-height:1px;color:var(--destructive);font-size:calc(13px * var(--fs-scale,1));margin-top:8px}.btn.btn-pupil{border-color:var(--pupils);background:var(--pupils);color:#fff;width:100%;font-size:calc(14.5px * var(--fs-scale,1));justify-content:center;margin-top:18px;padding:12px 18px}.btn.btn-pupil:hover{color:#fff;filter:brightness(.94)}.pulse-done{text-align:center;padding:60px 0}.pulse-done p{margin-top:10px}.pulse-again{margin-top:22px}
