@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:OrarioScuola Digits;font-style:normal;font-weight:200 599;src:local(Segoe UI),local(SegoeUI),local(Helvetica Neue),local(HelveticaNeue),local(Roboto),local(Roboto-Regular),local(Arial),local(ArialMT),local(Noto Sans),local(NotoSans-Regular),local(DejaVu Sans),local(DejaVuSans);unicode-range:U+30-39}@font-face{font-family:OrarioScuola Digits;font-style:normal;font-weight:600 800;src:local(Segoe UI Bold),local(SegoeUI-Bold),local(Helvetica Neue Bold),local(HelveticaNeue-Bold),local(Roboto Bold),local(Roboto-Bold),local(Arial Bold),local(Arial-BoldMT),local(Noto Sans Bold),local(NotoSans-Bold),local(DejaVu Sans Bold),local(DejaVuSans-Bold);unicode-range:U+30-39}:root{--ground:#f5f6f8;--surface:#fff;--surface-2:#f5f6f8;--surface-3:#eef1f5;--ink:#172033;--text-2:#3d475c;--muted:#5a6478;--line:#e3e7ee;--line-strong:#c9d0dc;--line-input:#8a94a6;--overlay:#1720336b;--primary:#2550c9;--primary-hover:#1a3c9e;--primary-soft:#eaf0ff;--on-primary:#fff;--focus:#2550c9;--uncovered:#a63a0a;--uncovered-bg:#ffeee3;--awaiting:#2550c9;--awaiting-bg:#eaf0ff;--confirm:#6236b8;--confirm-bg:#f1ebff;--covered:#0f7a5c;--covered-strong:#0b6449;--covered-bg:#e3f5ee;--danger:#b3261e;--danger-bg:#fdecea;--warning:#8a5100;--warning-bg:#fff3d6;--success:var(--covered-strong);--success-bg:var(--covered-bg);--accent:var(--primary);--soft:var(--primary-soft);--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:999px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:2.5rem;--space-9:3rem;--page-gutter:clamp(1rem, 3vw, 2rem);--page-max:1280px;--font-numeric:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font:"OrarioScuola Digits", "Atkinson Hyperlegible Next", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text-xs:.8125rem;--text-sm:.875rem;--text-md:.9375rem;--text-base:1rem;--text-lg:1.1875rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:clamp(1.75rem, 3.6vw, 2.125rem);--shadow-1:0 1px 2px #1720330f, 0 1px 1px #1720330a;--shadow-2:0 4px 14px #17203314, 0 1px 3px #1720330f;--shadow-pop:0 16px 40px #1720332e, 0 2px 8px #1720331a;--motion-in:.2s;--motion-out:.15s;--motion-reduced:80ms;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--touch:44px;--header-height:68px;font-family:var(--font);color:var(--ink);background:var(--ground);font-synthesis:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;line-height:1.5}*{box-sizing:border-box}html{scrollbar-gutter:stable;scroll-padding-top:calc(var(--header-height) + 1rem)}body{background:var(--ground);min-width:320px;color:var(--ink);font-size:var(--text-base);margin:0}button,select,input,textarea{font:inherit}button,select,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}a{color:var(--primary);text-underline-offset:3px}a:hover{color:var(--primary-hover)}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-main{width:100%;max-width:var(--page-max);padding:var(--space-7) var(--page-gutter) var(--space-9);flex:1 0 auto;margin:0 auto}h1,h2,h3,h4,p{margin-top:0}h1{margin-bottom:var(--space-4);letter-spacing:-.03em;max-width:900px;font-size:clamp(2rem,4.2vw,2.9rem);font-weight:800;line-height:1.08}h2{margin-bottom:var(--space-2);letter-spacing:-.015em;font-size:clamp(1.3rem,2vw,1.6rem);font-weight:800;line-height:1.2}h3{margin-bottom:var(--space-2);font-size:1.1rem;font-weight:800;line-height:1.3}h4{font-weight:700}p{color:var(--text-2)}.eyebrow,.step-label{margin-bottom:var(--space-2);color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:var(--text-xs);font-weight:800}.intro{max-width:690px;font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.65}button{min-height:var(--touch);border-radius:var(--radius-md);background:var(--primary);color:var(--on-primary);cursor:pointer;border:1px solid #0000;padding:.6rem 1.1rem;font-weight:700;line-height:1.25;transition:background-color .15s,border-color .15s,box-shadow .15s}button:where(:hover:not(:disabled)){background:var(--primary-hover)}button:disabled{opacity:.55;cursor:not-allowed}.action-link{width:fit-content;min-height:var(--touch);border-radius:var(--radius-md);background:var(--primary);color:var(--on-primary);justify-content:center;align-items:center;padding:.6rem 1.1rem;font-weight:700;line-height:1.25;text-decoration:none;display:inline-flex}.action-link:hover{background:var(--primary-hover);color:var(--on-primary)}.button-secondary{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.button-secondary:hover:not(:disabled),.button-tertiary:hover:not(:disabled){background:var(--primary-soft);color:var(--ink)}.button-tertiary{width:fit-content;color:var(--ink);border-color:var(--line-strong);font-size:var(--text-sm);background:0 0;padding:.5rem .85rem}select{min-height:var(--touch);border:1px solid var(--line-input);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);padding:.55rem 2.25rem .55rem .8rem}@supports (appearance:base-select){select:not([multiple]):not([size]){appearance:base-select}select:not([multiple]):not([size])::picker(select){appearance:base-select}select:not([multiple]):not([size]){cursor:pointer;gap:.75rem;padding-inline-end:.8rem}select:not([multiple]):not([size]):disabled{cursor:not-allowed}select:not([multiple]):not([size])::picker-icon{color:var(--muted);margin-inline-start:auto}select:not([multiple]):not([size])::picker(select){min-inline-size:anchor-size(width);overscroll-behavior:contain;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);max-block-size:min(22rem,60dvh);max-inline-size:calc(100vw - 24px);color:var(--ink);font:inherit;box-shadow:var(--shadow-pop);margin-block:6px;padding:6px;overflow-y:auto}select:not([multiple]):not([size]) option{min-block-size:var(--touch);border-radius:var(--radius-sm);white-space:normal;overflow-wrap:anywhere;cursor:pointer;gap:.75rem;padding:.65rem .75rem;font-weight:500}select:not([multiple]):not([size]) option:checked{background:var(--primary-soft);color:var(--ink);font-weight:700}select:not([multiple]):not([size]) option:not(:disabled):hover{background:var(--surface-3)}select:not([multiple]):not([size]) option:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;background:var(--primary-soft)}select:not([multiple]):not([size]) option::checkmark{color:var(--primary)}select:not([multiple]):not([size]) option:disabled{color:var(--muted);cursor:not-allowed}}label{font-size:var(--text-sm);font-weight:700}.sign-in-layout{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:center;gap:clamp(2rem,8vw,6rem);min-height:calc(100vh - 230px);display:grid}.state-card{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);max-width:520px;box-shadow:var(--shadow-2);padding:clamp(1.5rem,5vw,2.5rem)}.state-card p{line-height:1.65}.sign-in-card button{margin-top:var(--space-2);width:100%}.centered{text-align:center;margin:12vh auto 0}.centered h1{margin:var(--space-5) auto var(--space-3);font-size:clamp(1.6rem,4vw,2.2rem)}.loading-line{align-items:center;gap:var(--space-3);min-height:var(--touch);display:flex}.empty-state{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface-3)}.empty-state p{margin:var(--space-1) 0 0;font-size:var(--text-sm);line-height:1.55}.inline-error{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-left:4px solid var(--danger);border-radius:var(--radius-sm);background:var(--danger-bg)}.inline-error p,.error{margin-bottom:var(--space-2);color:var(--danger)}.global-error{margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--danger);border-radius:var(--radius-md);background:var(--danger-bg);color:var(--danger)}.spinner{border:3px solid var(--line);border-top-color:var(--primary);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin;display:inline-block}.spinner.small{border-width:2px;width:18px;height:18px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{border-top-color:var(--line);animation:none}*{scroll-behavior:auto!important}}@media (width<=800px){.sign-in-layout{grid-template-columns:1fr;align-content:center}}.app-shell select,.app-shell input:is([type=date],[type=time],[type=datetime-local]){box-sizing:border-box;border:1px solid var(--line-strong);background-color:var(--surface);max-width:100%;min-height:44px;color:var(--ink);font:inherit;border-radius:12px;font-size:1rem;font-weight:600;line-height:1.35;transition:border-color .15s,box-shadow .15s,background-color .15s;box-shadow:0 2px 6px #1720330a}.app-shell select{padding-block:.65rem;padding-inline:.85rem 2.5rem}.app-shell input:is([type=date],[type=time],[type=datetime-local]){appearance:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-variant-numeric:tabular-nums;padding:.65rem .85rem}.app-shell select:not(:disabled):hover,.app-shell input:is([type=date],[type=time],[type=datetime-local]):not(:disabled):not([readonly]):hover{border-color:var(--muted)}.app-shell select:focus-visible,.app-shell input:is([type=date],[type=time],[type=datetime-local]):focus-visible{border-color:var(--primary);outline:3px solid var(--primary);outline-offset:2px;box-shadow:0 0 0 4px #2550c91a}.app-shell select:disabled,.app-shell input:is([type=date],[type=time],[type=datetime-local]):disabled,.app-shell input:is([type=date],[type=time],[type=datetime-local])[readonly]{border-color:var(--line);background-color:var(--surface-3);color:var(--muted);box-shadow:none;cursor:not-allowed}.app-shell input:is([type=date],[type=time],[type=datetime-local])::-webkit-calendar-picker-indicator{background-color:var(--primary-soft);cursor:pointer;border-radius:6px;margin-inline-start:.5rem;padding:.25rem}.app-shell input:is([type=date],[type=time],[type=datetime-local]):is(:disabled,[readonly])::-webkit-calendar-picker-indicator{opacity:.55;cursor:not-allowed}.screen-transition{min-width:0;animation:.22s cubic-bezier(.22,1,.36,1) both screen-fade-in}.screen-transition>.setup-workspace,.screen-transition>.operations-workspace,.year-workspace.daily-home{animation:none}.setup-current,.setup-summary,.setup-step-panel:not([hidden]){animation:.2s cubic-bezier(.22,1,.36,1) both screen-fade-in}@keyframes screen-fade-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.screen-transition,.setup-current,.setup-summary,.setup-step-panel:not([hidden]){animation:none}}.skip-link{left:var(--space-3);z-index:100;border-radius:var(--radius-md);background:var(--ink);color:var(--surface);padding:.65rem 1rem;font-weight:700;text-decoration:none;position:absolute;top:-4rem}.skip-link:focus{top:var(--space-3);color:var(--surface)}.app-header{z-index:50;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0}.app-header-inner{align-items:center;gap:var(--space-6);min-height:var(--header-height);max-width:var(--page-max);padding:0 var(--page-gutter);margin:0 auto;display:flex}.brand{min-height:var(--touch);color:var(--ink);border-radius:var(--radius-sm);flex:none;align-items:center;gap:.65rem;text-decoration:none;display:flex}.brand:hover{color:var(--ink);background:var(--surface-3)}.brand-mark{background:var(--primary);width:34px;height:34px;color:var(--on-primary);border-radius:9px;flex:none;place-items:center;display:grid}.brand-name{letter-spacing:-.01em;font-size:1.1875rem;font-weight:800}.nav-area{flex:auto;min-width:0;position:relative}.nav-menu-button{display:none}.primary-nav{gap:var(--space-1);flex-wrap:wrap;display:flex}.primary-nav a{min-height:var(--touch);color:var(--text-2);font-weight:500;font-size:var(--text-base);white-space:nowrap;border-radius:10px;align-items:center;padding:.5rem .9rem;text-decoration:none;display:inline-flex}.primary-nav a:hover{background:var(--surface-3);color:var(--ink)}.primary-nav a[aria-current=page]{background:var(--primary-soft);color:var(--primary);font-weight:700}.header-end{align-items:center;gap:var(--space-3);flex:none;min-width:0;margin-left:auto;display:flex}.nav-area+.header-end{margin-left:0}.context-chip{min-height:var(--touch);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface);max-width:20rem;color:var(--ink);font-size:var(--text-md);text-align:left;align-items:center;gap:.5rem;padding:.45rem .9rem;font-weight:400;display:inline-flex}button.context-chip:hover:not(:disabled){background:var(--primary-soft);color:var(--ink)}.context-chip.fixed{border-color:var(--line);background:var(--surface-2)}.chip-school{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;overflow:hidden}.chip-year{color:var(--muted);white-space:nowrap}.chip-chevron{color:var(--muted);flex:none}.avatar-button{width:var(--touch);height:var(--touch);min-height:var(--touch);background:var(--ink);color:var(--surface);font-weight:700;font-size:var(--text-sm);border-radius:50%;place-items:center;padding:0;display:grid}.avatar-button:hover:not(:disabled){background:var(--text-2)}.header-popover{position:relative}.popover-panel{z-index:60;width:min(24rem,100vw - 2rem);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-pop);position:absolute;top:calc(100% + .5rem);right:0}.popover-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.popover-close{flex:none}.switcher-panel{width:min(26rem,100vw - 2rem)}.context-picker{gap:var(--space-4);display:grid}.context-field{gap:var(--space-2);align-content:start;min-width:0;display:grid}.context-field select{width:100%}.context-field .button-tertiary{margin-top:var(--space-1)}.account-panel{gap:var(--space-3);width:min(20rem,100vw - 2rem);display:grid}.account-identity{padding-bottom:var(--space-3);border-bottom:1px solid var(--line);overflow-wrap:anywhere;display:grid}.account-identity small{color:var(--muted);font-size:var(--text-sm)}.account-section{gap:var(--space-2);display:grid}.account-label{color:var(--muted);font-size:var(--text-sm);font-weight:700}.segmented{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface-2);gap:3px;padding:3px;display:inline-flex}.segmented button{min-height:38px;color:var(--text-2);background:0 0;border-radius:9px;padding:.35rem .9rem;font-weight:500}.segmented button:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.segmented button.active,.segmented button.active:hover:not(:disabled){background:var(--surface);color:var(--primary);box-shadow:var(--shadow-1);font-weight:700}.menu-item{text-align:left;width:100%;color:var(--ink);border:1px solid var(--line);background:0 0;justify-content:flex-start;font-weight:600}.menu-item:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.menu-item.sign-out{color:var(--danger);border-color:var(--line-strong)}.start-card{max-width:34rem;margin:var(--space-8) auto 0;border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-2);padding:clamp(1.25rem,4vw,2rem)}.start-card h1{margin-bottom:var(--space-2);font-size:clamp(1.6rem,4vw,2rem)}.start-card>p{margin-bottom:var(--space-5)}.app-main>.workspace-context-loading{justify-content:center;align-items:center;gap:var(--space-3);min-height:10rem;color:var(--muted);display:flex}@media (width<=1120px){.app-header-inner{gap:var(--space-2) var(--space-4);padding-block:var(--space-2);flex-wrap:wrap}.nav-area{flex:none;margin-left:auto}.nav-area+.header-end{margin-left:0}.nav-menu-button{background:var(--surface);color:var(--ink);border-color:var(--line-strong);align-items:center;gap:.5rem;padding:.45rem .9rem;font-weight:700;display:inline-flex}.nav-menu-button:hover:not(:disabled){background:var(--primary-soft);color:var(--ink)}.primary-nav{z-index:60;width:min(18rem,100vw - 2rem);padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-pop);flex-flow:column;display:none;position:absolute;top:calc(100% + .5rem);right:0}.primary-nav[data-open=true]{display:flex}.primary-nav a{width:100%}}@media (width<=760px){.brand-name{font-size:1.0625rem}.app-header-inner{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"brand menu account""chip chip chip";align-items:center;display:grid}.app-header:not(.authenticated) .app-header-inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand account"}.brand{grid-area:brand}.nav-area{grid-area:menu;margin-left:0}.header-end{display:contents}.header-end>.context-switcher,.header-end>.context-chip{grid-area:chip}.header-end>.account-menu,.header-end>.segmented{grid-area:account;justify-self:end}.context-chip{width:100%;max-width:none}.context-switcher{width:100%}.context-switcher>.context-chip{justify-content:flex-start}.context-switcher .chip-chevron{margin-left:auto}.switcher-panel{width:100%;left:0;right:auto}.context-switcher{position:static}.context-switcher .popover-panel{top:calc(100% - .25rem);left:var(--space-3);right:var(--space-3);width:auto}.app-header-inner{position:relative}.nav-area{position:static}.primary-nav{left:var(--page-gutter);right:var(--page-gutter);width:auto}.brand{min-width:0;overflow:hidden}.brand-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.app-header-inner{grid-template-columns:minmax(0,1fr) auto auto}.nav-menu-button{max-width:100%}}@media (width<=380px){.brand-name{display:none}}.page-heading{margin-bottom:var(--space-5)}.page-heading h1{margin-bottom:var(--space-1);font-size:var(--text-3xl);letter-spacing:-.02em}.page-heading p{max-width:46rem;color:var(--muted);margin:0}.settings-workspace{gap:var(--space-6);display:grid}.settings-section{gap:var(--space-2);padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);display:grid}.settings-section>h2{margin:0}.settings-section>p{margin:0 0 var(--space-2);color:var(--muted)}.app-main:focus{outline:none}.day-picker{min-height:var(--touch);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font-size:var(--text-md);cursor:pointer;align-items:center;gap:.5rem;padding:0 .9rem;font-weight:500;display:inline-flex;position:relative}.day-picker:hover{background:var(--primary-soft)}.day-picker:focus-within{outline:3px solid var(--focus);outline-offset:2px}.day-picker input[type=date]{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;box-shadow:none;border:0;padding:0;position:absolute;inset:0}.day-picker.disabled{opacity:.6;cursor:not-allowed}.dialog-day{width:fit-content;max-width:100%}.published-date-field .day-picker{width:100%;font-weight:500;font-size:var(--text-md);flex-direction:row;justify-content:flex-start;align-items:center;display:flex}.access-main{max-width:1180px;margin-inline:auto}.access-hero{grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);align-items:start;gap:clamp(2rem,6vw,5.5rem);padding-top:clamp(1rem,4vw,3.5rem);display:grid}.access-hero-copy{padding-top:1.25rem}.access-hero-copy h1,.owner-access-heading h1{max-width:760px;font-size:clamp(2.35rem,5vw,4.2rem)}.access-hero-copy .intro,.owner-access-heading .intro{max-width:680px}.access-account-summary{border-top:1px solid var(--line);gap:.25rem;margin-top:2rem;padding-top:1.25rem;display:grid}.access-account-summary span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:750}.access-account-summary strong{overflow-wrap:anywhere}.access-card{border:1px solid var(--line);background:var(--surface);border-radius:20px;min-width:0;padding:clamp(1.35rem,3vw,2.2rem);box-shadow:0 18px 50px #1720330d}.access-form,.access-form-fields{gap:1.15rem;display:grid}.access-form label,.year-create-form label,.access-decision-form label{gap:.45rem;display:grid}.access-form label>span,.year-create-form label>span,.access-decision-form label>span{color:var(--muted);font-size:.78rem;font-weight:550}.access-form input,.access-form textarea,.access-decision-form input,.access-decision-form textarea,.year-create-form input[type=text]{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:44px;color:var(--ink);font:inherit;border-radius:10px;padding:.7rem .8rem}.access-form textarea,.access-decision-form textarea{resize:vertical;min-height:110px}.access-form input:focus-visible,.access-form textarea:focus-visible,.access-decision-form input:focus-visible,.access-decision-form textarea:focus-visible,.year-create-form input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 4px #2550c91a}.access-form-actions,.access-actions,.access-section-actions,.year-create-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.access-status{gap:.8rem;display:grid}.access-status h2,.access-status h3,.access-status p{margin-bottom:0}.access-status-mark{background:var(--soft);width:48px;height:48px;color:var(--accent);border-radius:14px;place-items:center;font-size:1.2rem;font-weight:850;display:grid}.access-status.pending .access-status-mark{background:var(--warning-bg);color:var(--warning)}.access-status.approved .access-status-mark{background:var(--covered-bg);color:var(--covered-strong)}.access-status.rejected .access-status-mark,.access-status.error .access-status-mark{background:var(--danger-bg);color:var(--danger)}.access-reason{border-left:4px solid var(--line-strong);background:var(--surface-2);padding:1rem}.access-reason strong,.access-reason span{display:block}.access-reason span{color:var(--muted);margin-top:.25rem}.access-notice{border:1px solid var(--primary-soft);background:var(--surface-2);border-radius:10px;padding:.9rem 1rem}.access-notice.error{border-color:var(--line-strong);background:var(--danger-bg);color:var(--danger)}.access-notice.success{border-color:var(--muted);background:var(--covered-bg);color:var(--covered-strong)}.access-notice p:last-child,.access-card>p:last-child{margin-bottom:0}.owner-access{gap:1.35rem;display:grid}.owner-access-heading{max-width:760px}.owner-access-heading h1{font-size:clamp(2rem,4vw,3rem)}.owner-access-grid{grid-template-columns:minmax(270px,.72fr) minmax(0,1.28fr);align-items:start;gap:1.25rem;display:grid}.access-panel{border:1px solid var(--line);background:var(--surface);border-radius:16px;min-width:0;padding:1.25rem;box-shadow:0 9px 28px #1720330a}.access-panel-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.access-panel-heading h2,.access-panel-heading h3,.access-panel-heading p{margin-bottom:0}.access-queue-list,.access-grant-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.access-queue-item button{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);text-align:left;box-shadow:none;gap:.3rem;padding:.9rem;display:grid}.access-queue-item button:hover{border-color:var(--line-strong);background:var(--surface-2)}.access-queue-item button[aria-current=true]{border-color:var(--accent);background:var(--soft);box-shadow:0 0 0 2px #2550c91f}.access-queue-item strong,.access-queue-item span,.access-queue-item small{overflow-wrap:anywhere}.access-queue-item span,.access-queue-item small{color:var(--muted)}.access-queue-item small{font-size:.74rem}.access-review-detail{gap:1.35rem;display:grid}.access-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:0;display:grid}.access-detail-facts>div{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;min-width:0;padding:.8rem}.access-detail-facts dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:760}.access-detail-facts dd{overflow-wrap:anywhere;margin:.2rem 0 0;font-weight:650}.access-choice{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;padding:0;display:grid}.access-choice legend{margin-bottom:.6rem;font-size:.88rem;font-weight:760}.access-choice label{border:1px solid var(--line-strong);cursor:pointer;border-radius:10px;align-items:center;gap:.6rem;min-height:48px;padding:.7rem .8rem;display:flex}.access-choice label:has(input:checked){border-color:var(--accent);background:var(--soft)}.access-choice input{width:1.1rem;height:1.1rem;accent-color:var(--accent)}.access-grant-box{border:1px solid var(--line-strong);background:var(--surface-2);border-radius:12px;padding:1rem}.access-grant-box strong,.access-grant-box span,.access-grant-box small{display:block}.access-grant-box>span{margin-top:.35rem;font-weight:760}.access-grant-box small{color:var(--muted);margin-top:.3rem;line-height:1.5}.access-grants{grid-column:1/-1}.access-grant-list li{border:1px solid var(--line);border-radius:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem;display:grid}.access-grant-list strong,.access-grant-list span,.access-grant-list small{overflow-wrap:anywhere;display:block}.access-grant-list span,.access-grant-list small{color:var(--muted)}.access-confirmation{border:1px solid var(--line-strong);background:var(--danger-bg);border-radius:10px;padding:1rem}.access-confirmation p{color:var(--danger)}.access-loading{min-height:120px;color:var(--muted);justify-content:center;align-items:center;gap:.7rem;display:flex}.first-year-setup{max-width:860px;margin:1.5rem auto 0}.first-year-setup h1{overflow-wrap:anywhere;max-width:720px;font-size:clamp(2rem,4vw,3rem)}.year-create-form{gap:1.25rem;display:grid}.year-create-fields{grid-template-columns:1.2fr repeat(2,minmax(0,.8fr));gap:.8rem;display:grid}.topbar-owner-action{border:1px solid var(--line-strong);background:var(--surface);min-height:40px;color:var(--ink);white-space:nowrap;border-radius:9px;padding:.58rem .8rem;font-size:.82rem}.topbar-owner-action:hover,.topbar-owner-action[aria-pressed=true]{border-color:var(--line-strong);background:var(--soft);color:var(--ink)}@media (width<=900px){.access-hero,.owner-access-grid{grid-template-columns:1fr}.access-hero-copy{max-width:720px;padding-top:0}.access-grants{grid-column:auto}}@media (width<=680px){.access-detail-facts,.access-choice,.year-create-fields,.access-grant-list li{grid-template-columns:1fr}.access-grant-list button{width:100%}}@media (width<=520px){.topbar-owner-action{order:initial;white-space:normal;width:auto;min-width:0}.access-hero-copy h1,.owner-access-heading h1{font-size:2.35rem}.access-card,.access-panel{border-radius:14px}.access-form-actions>button,.access-actions>button,.year-create-actions>button{width:100%}}.dialog-backdrop,.dialog-ghost{z-index:90;padding:var(--space-4);overscroll-behavior:contain;place-items:center;display:grid;position:fixed;inset:0}.dialog-backdrop:before,.dialog-ghost:before{content:"";background:var(--overlay);animation:dialog-fade-in var(--motion-in) var(--ease-out) both;position:absolute;inset:0}.dialog-backdrop[data-swap]:before{animation:none}.dialog{border-radius:var(--radius-xl);background:var(--surface);width:min(40rem,100%);max-height:min(46rem,100dvh - 2rem);box-shadow:var(--shadow-pop);animation:dialog-in var(--motion-in) var(--ease-out) both;flex-direction:column;display:flex;position:relative;overflow:hidden}.dialog:focus:not(:focus-visible){outline:none}.dialog:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.dialog-ghost{pointer-events:none}.dialog-ghost:before{animation:dialog-fade-out var(--motion-out) var(--ease-in) both}.dialog-ghost .dialog{animation:dialog-out var(--motion-out) var(--ease-in) both}@keyframes dialog-fade-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-fade-out{0%{opacity:1}to{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(.5rem)scale(.96)}to{opacity:1;transform:none}}@keyframes dialog-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(.25rem)scale(.98)}}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:none}}@keyframes sheet-out{0%{transform:none}to{transform:translateY(100%)}}.dialog-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line);display:flex}.dialog-heading{min-width:0}.dialog-heading .eyebrow{margin:0 0 .15rem}.dialog-header h2{font-size:var(--text-xl);overflow-wrap:anywhere;margin:0}.dialog-close{width:var(--touch);min-width:var(--touch);height:var(--touch);min-height:var(--touch);border-radius:var(--radius-pill);color:var(--text-2);background:0 0;border-color:#0000;flex:none;place-items:center;padding:0;display:grid}.dialog-close:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.dialog-header{position:relative}.dialog-busy{z-index:1;padding:var(--space-2) var(--space-5);background:var(--warning-bg);color:var(--ink);font-size:var(--text-sm);box-shadow:var(--shadow-2);margin:0;position:absolute;top:100%;left:0;right:0}.dialog-busy:empty{display:none}.dialog-body{gap:var(--space-5);padding:var(--space-5);overscroll-behavior:contain;display:grid;overflow-y:auto}.dialog-footer{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--line);background:var(--surface-2);flex-wrap:wrap;display:flex}@media (width<=600px){.dialog-backdrop,.dialog-ghost{align-items:end;padding:0}.dialog{border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-height:92dvh;animation-name:sheet-in;animation-duration:var(--motion-in)}.dialog-ghost .dialog{animation-name:sheet-out;animation-duration:var(--motion-out)}.dialog-body:last-child{padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px))}.dialog-footer{padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion:reduce){.dialog-backdrop:before,.dialog-ghost:before{animation-duration:var(--motion-reduced)}.dialog,.dialog-ghost .dialog{animation-name:dialog-fade-in;animation-duration:var(--motion-reduced);animation-timing-function:linear}.dialog-ghost .dialog{animation-name:dialog-fade-out}}.school-day-timeline{border:1px solid var(--line);background:var(--surface);border-radius:22px;margin-top:2rem;padding:clamp(1rem,2.2vw,1.6rem);box-shadow:0 14px 40px #1720330d}.school-day-heading{justify-content:space-between;align-items:flex-end;gap:1.5rem;display:flex}.school-day-heading h3{margin:.15rem 0 .25rem;font-size:clamp(1.55rem,2.5vw,2.2rem)}.school-day-heading p{color:var(--muted);margin:0}.school-day-heading>span{background:var(--surface-3);color:var(--muted);white-space:nowrap;border-radius:999px;padding:.45rem .8rem;font-weight:750}.school-day-state{background:var(--surface-2);min-height:9rem;color:var(--muted);border-radius:14px;justify-content:center;align-items:center;gap:.8rem;margin-top:1.2rem;display:flex}.school-day-state.error{background:var(--danger-bg);color:var(--danger)}.school-day-status{background:var(--surface-2);color:var(--muted);border-radius:10px;margin:1rem 0 0;padding:.65rem .85rem;font-size:.86rem}.school-day-scroll{overscroll-behavior-inline:contain;border:1px solid var(--line);border-radius:15px;margin-top:1.1rem;overflow-x:auto}.school-day-board{grid-template-columns:70px repeat(auto-fit,minmax(178px,1fr));grid-template-rows:var(--school-day-header-height) var(--school-day-height);background:var(--surface);display:grid;position:relative;overflow:hidden}.school-day-corner{border-bottom:1px solid var(--line);background:var(--surface-2);grid-area:1/1}.school-day-class-heading{border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-2);align-content:center;min-width:0;padding:.45rem .65rem;display:grid}.school-day-class-heading strong{font-size:.86rem}.school-day-class-heading span,.school-day-class-heading small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.school-day-axis{background:var(--surface-2);grid-area:2/1;position:relative}.school-day-axis span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.68rem;position:absolute;right:8px;transform:translateY(-7px)}.school-day-lane{min-width:0;height:var(--school-day-height);border-left:1px solid var(--line);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--school-day-quarter-height) - 1px),#1720330a calc(var(--school-day-quarter-height) - 1px),#1720330a var(--school-day-quarter-height)),repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--school-day-hour-height) - 1px),#17203324 calc(var(--school-day-hour-height) - 1px),#17203324 var(--school-day-hour-height));grid-row:2;position:relative}.school-day-lesson{z-index:1;min-width:0;height:var(--lesson-height);border:1px solid var(--line-strong);border-left:4px solid var(--primary);background:var(--primary-soft);color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:8px;align-content:start;gap:2px;padding:7px 8px;transition:opacity .2s,box-shadow .2s,transform .2s;display:grid;position:absolute;left:5px;right:5px;overflow:hidden;box-shadow:0 2px 7px #17203314}.school-day-lesson:hover,.school-day-lesson:focus-visible{z-index:4;height:auto;min-height:max(var(--lesson-height),84px);outline:3px solid var(--primary);outline-offset:2px;overflow:visible;transform:translateY(-1px);box-shadow:0 9px 20px #17203329}.school-day-lesson.selected{z-index:4;box-shadow:0 0 0 3px #2550c94d,0 9px 20px #17203329}.school-day-lesson.past{opacity:.78;filter:saturate(.88)}.school-day-lesson.past:hover,.school-day-lesson.past:focus-visible{opacity:1}.school-day-lesson.active{z-index:3;border-color:var(--covered-strong);background:var(--covered-bg);box-shadow:0 0 0 3px #07876f26,0 7px 18px #17203321}.school-day-lesson.changed{border-left-color:var(--warning);background:var(--warning-bg)}.school-day-lesson-heading{flex-wrap:wrap;justify-content:space-between;gap:.25rem;min-width:0;display:flex}.school-day-lesson strong{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.school-day-lesson-heading>span{background:var(--warning-bg);color:var(--warning);border-radius:999px;padding:.08rem .3rem;font-size:.58rem;font-weight:800}.school-day-lesson time,.school-day-lesson small{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;line-height:1.25;overflow:hidden}.school-day-lesson:hover time,.school-day-lesson:hover small,.school-day-lesson:focus-visible time,.school-day-lesson:focus-visible small{text-overflow:clip;white-space:normal;overflow:visible}.school-day-now-marker{z-index:5;pointer-events:none;background:var(--danger);height:2px;position:absolute;left:55px;right:0;box-shadow:0 1px 4px #e3313154}.school-day-now-marker:before{content:"";background:var(--danger);border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:12px}.school-day-now-marker span{color:var(--surface);background:var(--danger);font-variant-numeric:tabular-nums;border-radius:5px;padding:2px 5px;font-size:.62rem;font-weight:850;position:absolute;top:-10px;left:0}@media (width<=620px){.school-day-heading{flex-direction:column;align-items:flex-start}.school-day-board{grid-template-columns:58px repeat(auto-fit,minmax(160px,1fr))}.school-day-now-marker{left:46px}}.lesson-detail-dialog{width:min(44rem,100%)}.school-day-lesson-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:0;display:grid}.school-day-lesson-facts>div{background:var(--surface-2);border-radius:11px;min-width:0;padding:.75rem}.school-day-lesson-facts dt{color:var(--muted);font-size:.78rem;font-weight:750}.school-day-lesson-facts dd{overflow-wrap:anywhere;margin:.2rem 0 0;font-weight:750}.school-day-lesson-audiences>strong{font-size:.84rem}.school-day-lesson-audiences ul{flex-wrap:wrap;gap:.45rem;margin:.45rem 0 0;padding:0;list-style:none;display:flex}.school-day-lesson-audiences li,.school-day-lesson-change{background:var(--primary-soft);color:var(--text-2);overflow-wrap:anywhere;border-radius:999px;padding:.4rem .65rem;font-size:.82rem}.school-day-lesson-change{justify-self:start;margin:0}.school-day-lesson-operations{border-top:1px solid var(--line);padding-top:1rem}.school-day-lesson-operations-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.school-day-lesson-operations h3{margin:0;font-size:1.05rem}.school-day-lesson-operations>p{color:var(--muted);margin:.65rem 0 0}.school-day-lesson-operations>ul{gap:.65rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.school-day-lesson-operations>ul>li{border:1px solid var(--line);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem;display:flex}.school-day-lesson-operations li>div:first-child{gap:.2rem;min-width:0;display:grid}.school-day-lesson-operations li span{color:var(--muted);font-size:.84rem}.school-day-lesson-operation-actions{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}.school-day-lesson-operation-actions button{white-space:nowrap}.absence-lesson-card:focus,.coverage-card:focus{outline:3px solid var(--primary);outline-offset:3px}@media (width<=620px){.school-day-lesson-operations>ul>li{flex-direction:column;align-items:stretch}.school-day-lesson-facts{grid-template-columns:1fr}.school-day-lesson-operation-actions{flex-direction:column;justify-content:stretch}.school-day-lesson-operation-actions button{white-space:normal;width:100%}}.substitution-policy{border:1px solid var(--line-strong);background:var(--surface);border-radius:12px;margin:.9rem 0 1.25rem}.substitution-policy summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:46px;padding:.65rem .85rem;font-weight:750;display:flex}.substitution-policy summary:hover{background:var(--surface-2)}.substitution-policy summary strong{color:var(--muted);text-align:right;font-size:.78rem;font-weight:700}.substitution-policy-body{border-top:1px solid var(--surface-3);padding:0 .85rem .85rem}.substitution-policy-body>p[role=status]{align-items:center;gap:.5rem;margin:.75rem 0 0;display:flex}.substitution-policy-read{justify-content:space-between;align-items:flex-start;gap:1rem;margin-top:.8rem;display:flex}.substitution-policy-read p,.substitution-policy-future{margin:.15rem 0 0;font-size:.82rem;line-height:1.45}.substitution-policy fieldset{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:.8rem 0 0;padding:0;display:grid}.substitution-policy fieldset label{border:1px solid var(--line-strong);cursor:pointer;border-radius:10px;align-items:flex-start;gap:.55rem;padding:.7rem;display:flex}.substitution-policy fieldset input{flex:none;margin-top:.2rem}.substitution-policy fieldset span{gap:.15rem;display:grid}.substitution-policy fieldset small{color:var(--muted);font-weight:500;line-height:1.4}.substitution-policy-actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.substitution-policy-notice{border-radius:8px;margin:.6rem 0 0;padding:.55rem .7rem;font-size:.82rem}.substitution-policy-notice.success,.operations-notice.relaunch-success{background:var(--covered-bg);color:var(--covered-strong)}.substitution-policy-notice.error,.operations-notice.relaunch-error{background:var(--danger-bg);color:var(--danger)}.candidate-fallback>button{margin-top:.35rem}.candidate-relaunch{margin-top:.55rem}@media (width<=620px){.substitution-policy summary{align-items:flex-start}.substitution-policy fieldset{grid-template-columns:1fr}.substitution-policy-read{flex-direction:column}}.school-day-timeline{min-width:0}.school-day-filters{flex-wrap:wrap;align-items:end;gap:.8rem 1rem;margin-top:1.1rem;display:flex}.school-day-filters label{flex:210px;gap:.35rem;min-width:0;max-width:420px;font-size:.85rem;font-weight:700;display:grid}.school-day-filters select{width:100%;min-width:0}.school-day-filters p{color:var(--muted);flex-basis:100%;margin:0;font-size:.8rem}.school-day-scroll{max-width:100%}.school-day-board{overflow:visible}.school-day-axis{z-index:6;position:sticky;left:0;box-shadow:3px 0 5px #17203312}.school-day-axis span:first-child{transform:translateY(2px)}.school-day-corner{z-index:7;position:sticky;left:0}@media (width<=620px){.school-day-filters label{max-width:none}}.absence-lessons{border:1px solid var(--line);background:var(--surface);border-radius:20px;margin-top:1.25rem;padding:clamp(1rem,2vw,1.4rem);box-shadow:0 12px 32px #1720330a}.absence-lessons-heading{justify-content:space-between;align-items:flex-start;gap:1.25rem;display:flex}.absence-lessons-heading h3{margin:.12rem 0 .25rem;font-size:clamp(1.35rem,2.2vw,1.85rem)}.absence-lessons-heading p:not(.eyebrow){max-width:58rem;color:var(--muted);margin:0}.absence-lessons-heading>span{background:var(--surface-3);min-width:2rem;height:2rem;color:var(--text-2);border-radius:999px;place-items:center;padding:0 .55rem;font-weight:800;display:grid}.absence-lesson-list{gap:.7rem;margin-top:1rem;display:grid}.absence-lesson-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;overflow:hidden}.absence-lesson-card.cancelled{background:var(--surface-2);color:var(--muted)}.absence-lesson-main{grid-template-columns:6.5rem minmax(13rem,1fr) minmax(12rem,auto);align-items:center;gap:1rem;padding:.85rem 1rem;display:grid}.absence-lesson-time{border-right:1px solid var(--line);flex-direction:column;display:flex}.absence-lesson-time strong{font-size:1.25rem}.absence-lesson-time span,.absence-lesson-description p,.absence-lesson-description small,.absence-lesson-action small{color:var(--muted);font-size:.82rem}.absence-lesson-description{gap:.15rem;min-width:0;display:grid}.absence-lesson-description h4,.absence-lesson-description p{overflow-wrap:anywhere;margin:0}.absence-lesson-description small{display:block}.absence-lesson-action{text-align:right;flex-direction:column;justify-content:center;align-items:flex-end;gap:.5rem;display:flex}.absence-status{background:var(--warning-bg);color:var(--warning);border-radius:999px;padding:.32rem .62rem;font-size:.8rem;font-weight:750;display:inline-flex}.absence-status.status-assigned{background:var(--covered-bg);color:var(--covered-strong)}.absence-status.status-cancelled,.absence-status.status-completed,.absence-status.status-expired{background:var(--surface-3);color:var(--muted)}.absence-lessons-empty{background:var(--covered-bg);border-radius:12px;align-items:center;gap:.75rem;margin-top:1rem;padding:1rem;display:flex}.absence-lessons-empty>span{background:var(--covered-strong);width:1.8rem;height:1.8rem;color:var(--surface);border-radius:50%;place-items:center;display:grid}.absence-lessons-empty p{margin:0}.absence-cancellation{border-top:1px solid var(--line);background:var(--surface-2);padding:1rem}.absence-cancellation>p[aria-busy=true]{align-items:center;gap:.65rem;margin:0;display:flex}.absence-cancellation-preview h4{margin:0 0 .45rem}.absence-cancellation-preview p{margin:.35rem 0}.absence-cancellation-blockers{background:var(--danger-bg);color:var(--danger);border-radius:10px;margin:.7rem 0 0;padding:.75rem 1rem .75rem 2rem}.absence-cancellation-notice{border-radius:9px;margin:0 0 .75rem;padding:.7rem .8rem}.absence-cancellation-notice.error{background:var(--danger-bg);color:var(--danger)}.absence-cancellation-notice.warning{background:var(--warning-bg);color:var(--warning)}.absence-cancellation-notice.success{background:var(--covered-bg);color:var(--covered-strong)}.absence-cancellation-actions{flex-wrap:wrap;justify-content:flex-end;gap:.55rem;margin-top:.85rem;display:flex}@media (width<=760px){.absence-lesson-main{grid-template-columns:5rem 1fr}.absence-lesson-action{text-align:left;grid-column:1/-1;align-items:stretch}.absence-lesson-action button{width:100%}.absence-cancellation-actions{flex-direction:column;align-items:stretch}.absence-cancellation-actions button{width:100%}}@media (width<=480px){.absence-lessons-heading{align-items:flex-start}.absence-lesson-main{grid-template-columns:1fr}.absence-lesson-time{border-right:0}.absence-lesson-action{grid-column:auto}}.operations-timetable-column .school-day-timeline{border-color:var(--line);border-radius:16px;height:auto;margin-top:0;padding:.6rem;scroll-margin-top:90px;box-shadow:0 10px 26px #1720330d}.operations-timetable-column .school-day-heading{align-items:end}.operations-timetable-column .school-day-heading>div{flex:1;grid-template-columns:auto minmax(12rem,1fr);align-items:baseline;gap:.05rem 1rem;display:grid}.operations-timetable-column .school-day-heading .eyebrow{grid-column:1/-1;margin:0}.operations-timetable-column .school-day-heading h3{margin:0;font-size:clamp(1.4rem,1.8vw,1.6rem)}.operations-timetable-column .school-day-heading p:not(.eyebrow){margin:0;font-size:.78rem;line-height:1.3}.operations-timetable-column .school-day-heading>span{padding:.32rem .6rem;font-size:.75rem}.operations-timetable-column .school-day-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(12rem,.72fr);align-items:end;gap:.5rem .65rem;margin-top:.5rem;display:grid}.operations-timetable-column .school-day-filters label{gap:.15rem;max-width:none;font-size:.72rem}.operations-timetable-column .school-day-filters p{grid-column:auto;margin:0 0 .35rem;font-size:.69rem;line-height:1.3}.operations-timetable-column .school-day-status{margin:.45rem 0 0;padding:.36rem .65rem;font-size:.72rem}.school-day-heading h3{color:var(--ink)}.school-day-heading p,.school-day-filters p{color:var(--muted)}.school-day-heading>span{background:var(--primary-soft);color:var(--text-2)}.school-day-scroll{border-color:var(--line);border-radius:12px}.school-day-corner,.school-day-class-heading{border-color:var(--line);background:var(--surface-2)}.school-day-class-heading span,.school-day-class-heading small,.school-day-axis span{color:var(--muted)}.school-day-axis{background:var(--surface-2);box-shadow:3px 0 5px #17203312}.school-day-lane{border-color:var(--line);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--school-day-quarter-height) - 1px),#1720330a calc(var(--school-day-quarter-height) - 1px),#1720330a var(--school-day-quarter-height)),repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--school-day-hour-height) - 1px),#1720331f calc(var(--school-day-hour-height) - 1px),#1720331f var(--school-day-hour-height))}.absence-lessons{border-color:var(--line);border-radius:16px;box-shadow:0 10px 26px #1720330d}.absence-lessons-heading p:not(.eyebrow),.absence-lesson-time span,.absence-lesson-description p,.absence-lesson-description small,.absence-lesson-action small{color:var(--muted)}.absence-lessons-heading>span{background:var(--primary-soft);color:var(--text-2)}.absence-lesson-card,.absence-lesson-time,.substitution-policy{border-color:var(--line)}.substitution-policy summary strong{color:var(--text-2)}.substitution-policy-body{border-color:var(--line)}.substitution-policy fieldset label{border-color:var(--line-strong)}.substitution-policy fieldset label:has(input:checked){border-color:var(--primary);background:var(--primary-soft)}.substitution-policy fieldset small{color:var(--muted)}@media (width<=820px){.operations-timetable-column .school-day-heading>div{grid-template-columns:1fr}.operations-timetable-column .school-day-heading .eyebrow{grid-column:auto}.operations-timetable-column .school-day-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-timetable-column .school-day-filters p{grid-column:1/-1;margin:0}}@media (width<=620px){.operations-timetable-column .school-day-heading{align-items:flex-start}.operations-timetable-column .school-day-filters{grid-template-columns:1fr}}.operations-workspace{gap:var(--space-6);min-width:0;color:var(--ink);flex-direction:column;display:flex}.today-header{justify-content:space-between;align-items:flex-end;gap:var(--space-5);flex-wrap:wrap;display:flex}.today-heading{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.today-title-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.today-title-row h1{font-size:var(--text-3xl);letter-spacing:-.02em;margin:0}.today-pill{border-radius:var(--radius-pill);background:var(--ink);color:var(--surface);font-size:var(--text-xs);padding:.2rem .7rem;font-weight:700}.read-only-pill,.searching-pill{border-radius:var(--radius-pill);background:var(--surface-3);color:var(--text-2);font-size:var(--text-sm);padding:.25rem .7rem;font-weight:600;display:inline-flex}.today-return{border-radius:var(--radius-pill);min-height:36px;font-size:var(--text-sm);padding:.2rem .85rem}.day-controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.icon-button{width:var(--touch);place-items:center;padding:0;display:grid}.freshness{align-items:center;gap:var(--space-2);margin-left:var(--space-2);color:var(--muted);font-size:var(--text-sm);display:inline-flex}.primary-action{border-radius:var(--radius-md);min-height:48px;font-size:var(--text-base);box-shadow:var(--shadow-1);align-items:center;gap:.5rem;padding:0 1.25rem;display:inline-flex}.operations-notice{justify-content:space-between;align-items:center;gap:var(--space-3);margin:0 0 var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--warning-bg);color:var(--ink);font-size:var(--text-md);display:flex}.operations-notice.error,.operations-notice.relaunch-error{background:var(--danger-bg);color:var(--danger)}.operations-notice.relaunch-success{background:var(--covered-bg);color:var(--covered-strong)}.operations-state{justify-content:center;align-items:center;gap:var(--space-4);min-height:14rem;display:flex}.operations-state p{margin:0}.phase-notice{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--primary-soft);color:var(--ink);font-size:var(--text-md);margin:0}.phase-empty{align-items:flex-start}.phase-empty h2{font-size:var(--text-xl);margin:0}.phase-empty .phase-link{margin-top:var(--space-4);display:inline-flex}.phase-empty .phase-refresh{margin-top:var(--space-4);margin-left:var(--space-2);min-height:2.75rem}.phase-empty .phase-refresh-error{color:var(--danger)}.status-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:.875rem;display:grid}.status-filter{--status-fg:var(--ink);--status-bg:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-height:7.25rem;color:var(--ink);text-align:left;box-shadow:var(--shadow-1);flex-direction:column;align-items:flex-start;gap:.4rem;padding:1.1rem 1.25rem;font-weight:400;display:flex}.status-filter:hover:not(:disabled){background:var(--surface);border-color:var(--line-strong);box-shadow:var(--shadow-2)}.status-filter.uncovered{--status-fg:var(--uncovered);--status-bg:var(--uncovered-bg)}.status-filter.awaiting{--status-fg:var(--awaiting);--status-bg:var(--awaiting-bg)}.status-filter.confirm{--status-fg:var(--confirm);--status-bg:var(--confirm-bg)}.status-filter.covered{--status-fg:var(--covered-strong);--status-bg:var(--covered-bg)}.status-filter[aria-pressed=true]{border:2px solid var(--status-fg);padding:calc(1.1rem - 1px) calc(1.25rem - 1px)}.status-filter-label{color:var(--status-fg);font-size:var(--text-md);align-items:center;gap:.5rem;font-weight:700;display:flex}.status-filter[aria-pressed=true] .status-filter-label:after{content:"✓";font-weight:800}.status-dot{background:var(--status-fg,currentColor);border-radius:50%;flex:none;width:10px;height:10px}.status-filter-count{letter-spacing:-.03em;font-size:2.25rem;font-weight:700;line-height:1}.status-filter-hint{color:var(--muted);font-size:var(--text-sm);line-height:1.35}.today-grid{gap:var(--space-6) var(--space-7);grid-template-columns:minmax(0,1fr) minmax(18.75rem,21rem);align-items:start;display:grid}.today-queue{gap:var(--space-3);border-radius:var(--radius-md);outline-offset:6px;flex-direction:column;min-width:0;display:flex}.queue-heading{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.queue-heading h2{font-size:var(--text-xl);letter-spacing:-.01em;margin:0}.queue-heading>span{color:var(--muted);font-size:var(--text-md)}.link-button{min-height:var(--touch);color:var(--primary);text-align:left;text-underline-offset:3px;background:0 0;border:0;padding:0 .25rem;font-weight:700;text-decoration:underline}.link-button:hover:not(:disabled){color:var(--primary-hover);background:0 0}.queue-heading .link-button{min-height:32px}.queue-empty{align-items:center;gap:var(--space-4);padding:var(--space-6);border:1px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);display:flex}.queue-empty.done{background:var(--covered-bg);border:1px solid #0000}.queue-empty.done>span{background:var(--covered-strong);width:2.25rem;height:2.25rem;color:var(--surface);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.queue-empty p,.queue-none{color:var(--text-2);margin:.25rem 0 0}.queue-empty div,.queue-empty{flex-wrap:wrap}.coverage-list{gap:.875rem;display:grid}.coverage-list.covered{margin-top:var(--space-2)}.coverage-card{align-items:center;gap:var(--space-3) 1.25rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);grid-template-columns:5.25rem minmax(0,1fr) 15rem;padding:1.125rem;display:grid}.coverage-card:focus-visible,.coverage-card:focus{outline:3px solid var(--focus);outline-offset:3px}.coverage-time{border-radius:var(--radius-md);background:var(--ground);flex-direction:column;align-items:center;gap:2px;padding:.75rem 0;display:flex}.coverage-time strong{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:700}.coverage-time span{color:var(--muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.coverage-body{overflow-wrap:anywhere;min-width:0}.coverage-detail{overflow-wrap:anywhere}.coverage-title{font-size:var(--text-lg);overflow-wrap:anywhere;margin:0 0 .3rem;font-weight:800;line-height:1.25}.coverage-meta{color:var(--text-2);font-size:var(--text-md);margin:0 0 .55rem}.coverage-meta strong{color:var(--ink)}.coverage-status{flex-wrap:wrap;align-items:center;gap:.4rem .75rem;margin:0;display:flex}.coverage-detail{color:var(--text-2);font-size:var(--text-md)}.status-chip{--status-fg:var(--ink);--status-bg:var(--surface-3);border-radius:var(--radius-pill);background:var(--status-bg);color:var(--status-fg);font-size:var(--text-sm);overflow-wrap:anywhere;max-width:100%;padding:.25rem .7rem;font-weight:700}.status-chip.uncovered{--status-fg:var(--uncovered);--status-bg:var(--uncovered-bg)}.status-chip.awaiting{--status-fg:var(--awaiting);--status-bg:var(--awaiting-bg)}.status-chip.confirm{--status-fg:var(--confirm);--status-bg:var(--confirm-bg)}.status-chip.covered{--status-fg:var(--covered-strong);--status-bg:var(--covered-bg)}.status-chip.inProgress{--status-fg:var(--uncovered);--status-bg:var(--uncovered-bg)}.status-chip.ended{--status-fg:var(--text-2);--status-bg:var(--surface-3)}.status-chip.cancelled{--status-fg:var(--muted);--status-bg:var(--surface-3)}.coverage-card.inProgress{border-color:var(--uncovered)}.coverage-card.ended{background:var(--surface-2);box-shadow:none}.absence-lesson-detail{color:var(--text-2);font-size:var(--text-sm);margin:.15rem 0 0}.assign-choices{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.assign-choice{align-items:center;gap:var(--space-3);min-height:var(--touch);padding:.6rem var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;font-weight:400;display:flex}.assign-choice.chosen{border-color:var(--primary);background:var(--primary-soft)}.assign-choice input{width:1.25rem;height:1.25rem;accent-color:var(--primary);flex:none}.assign-choice-text{gap:.25rem;min-width:0;display:grid}.assign-badges{flex-wrap:wrap;gap:.4rem;display:flex}.badge{border-radius:var(--radius-pill);background:var(--surface-3);color:var(--text-2);font-size:var(--text-xs);padding:.15rem .55rem;font-weight:700}.badge.teaches{background:var(--covered-bg);color:var(--covered-strong)}.badge.invitation.pending{background:var(--awaiting-bg);color:var(--awaiting)}.badge.invitation.declined{background:var(--uncovered-bg);color:var(--uncovered)}.coverage-actions{align-items:stretch;gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.coverage-actions button{min-height:var(--touch)}.coverage-actions .coverage-details{color:var(--primary);text-underline-offset:3px;background:0 0;border-color:#0000;font-weight:600;text-decoration:underline}.coverage-actions .coverage-details:hover:not(:disabled){background:var(--primary-soft);color:var(--primary-hover)}.coverage-note{color:var(--muted);text-align:center}.coverage-choices{gap:var(--space-2);padding:var(--space-3) 0 0;border-top:1px solid var(--line);grid-column:1/-1;margin:0;list-style:none;display:grid}.coverage-choices .candidate{justify-content:space-between;align-items:center;gap:var(--space-3);font-weight:700;display:flex}.covered-toggle{min-height:var(--touch);border:1px dashed var(--line-strong);border-radius:var(--radius-md);color:var(--text-2);background:0 0;padding:.75rem 1rem;font-weight:600}.covered-toggle:hover:not(:disabled){background:var(--surface);color:var(--ink)}.absent-panel{top:calc(var(--header-height) + var(--space-4));gap:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);flex-direction:column;padding:1.25rem;display:flex;position:sticky}.absent-panel h2{font-size:var(--text-lg);margin:0}.absent-panel ul{margin:0;padding:0;list-style:none;display:grid}.absent-hint{color:var(--muted);font-size:var(--text-sm);margin:0}.absent-person{--status-fg:var(--ink);border-top:1px solid var(--surface-3)}.absent-person-button{border-radius:var(--radius-md);width:100%;min-height:3.5rem;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:.75rem;padding:.6rem .5rem;font-weight:400;display:flex}.absent-person-button:hover:not(:disabled){background:var(--primary-soft);color:var(--ink)}.row-chevron{color:var(--muted);flex:none}.absence-list-dialog .absence-lessons{box-shadow:none;background:0 0;border:0;margin:0;padding:0}.absence-list-dialog{width:min(44rem,100%)}.absence-list-dialog .absence-lesson-main{grid-template-columns:4.5rem minmax(0,1fr);gap:.75rem 1rem}.absence-list-dialog .absence-lesson-action{text-align:left;flex-flow:wrap;grid-column:1/-1;justify-content:space-between;align-items:center}.absence-list-dialog .absence-lesson-action button{flex:0 auto}@media (width<=520px){.absence-list-dialog .absence-lesson-main{grid-template-columns:1fr}.absence-list-dialog .absence-lesson-time{border-right:0;flex-direction:row;gap:.5rem}.absence-list-dialog .absence-lesson-action{align-items:stretch}.absence-list-dialog .absence-lesson-action button{width:100%}}.published-date-field{align-content:start;gap:.35rem;display:grid}.published-field-label{font-size:var(--text-sm);font-weight:700}.absent-person.uncovered{--status-fg:var(--uncovered)}.absent-person.awaiting{--status-fg:var(--awaiting)}.absent-person.confirm{--status-fg:var(--confirm)}.absent-person.covered{--status-fg:var(--covered)}.avatar{background:var(--surface-3);width:2.4rem;height:2.4rem;color:var(--text-2);font-size:var(--text-sm);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.absent-person-text{overflow-wrap:anywhere;flex:auto;min-width:0;display:grid}.absent-person-text strong{font-size:var(--text-base);overflow-wrap:anywhere}.absent-person-text small{color:var(--muted);font-size:var(--text-sm)}.absent-panel .link-button{margin-top:var(--space-1)}.operations-timetable-column{min-width:0}.operations-timetable-column .school-day-timeline{padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);scroll-margin-top:calc(var(--header-height) + var(--space-4));margin-top:0}.operations-timetable-column .school-day-timeline:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.school-day-lesson.active{border-color:var(--covered);border-left-color:var(--covered);background:var(--covered-bg)}.school-day-lesson.changed{border-color:var(--line-strong);border-left-color:var(--warning);background:var(--warning-bg)}.school-day-lesson.cover-uncovered,.school-day-lesson.cover-inProgress{border-color:var(--uncovered);border-left-color:var(--uncovered);background:var(--uncovered-bg)}.school-day-lesson.cover-awaiting{border-left-color:var(--awaiting);background:var(--awaiting-bg)}.school-day-lesson.cover-confirm{border-left-color:var(--confirm);background:var(--confirm-bg)}.school-day-lesson.cover-ended{border-left-color:var(--muted);background:var(--surface-2)}.school-day-lesson.cover-covered{border-left-color:var(--covered);background:var(--covered-bg)}.school-day-lesson-heading>.status-chip{background:var(--status-bg);color:var(--status-fg);border-radius:999px;padding:.08rem .45rem;font-size:.62rem;font-weight:800}.dialog-count{color:var(--text-2);font-size:var(--text-sm);flex:auto;margin-right:auto}.dialog-step{gap:var(--space-3);min-width:0;display:grid}.dialog-step h3{font-size:var(--text-base);margin:0}.dialog-hint,.dialog-muted{color:var(--muted);font-size:var(--text-sm);margin:0}.dialog-notice{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-md);margin:0}.dialog-notice.error{background:var(--danger-bg);color:var(--danger)}.dialog-notice.warning{background:var(--warning-bg);color:var(--ink)}.dialog-search{width:100%;min-height:var(--touch);border:1px solid var(--line-input);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);padding:.55rem .8rem}.teacher-choices ul{gap:var(--space-1);border:1px solid var(--line);border-radius:var(--radius-md);max-height:13rem;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.teacher-choices p{color:var(--muted);margin:0}.teacher-choice{background:var(--surface);width:100%;color:var(--ink);text-align:left;border:0;border-radius:0;justify-content:flex-start;font-weight:500}.teacher-choice:hover:not(:disabled){background:var(--primary-soft);color:var(--ink)}.chosen-teacher{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2);display:flex}.chosen-teacher>span{min-width:0;display:grid}.chosen-teacher small{color:var(--muted)}.lesson-choices{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.lesson-choice{align-items:center;gap:var(--space-3);min-height:var(--touch);padding:.6rem var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;font-weight:400;display:flex}.lesson-choice:has(input:checked){border-color:var(--primary);background:var(--primary-soft)}.lesson-choice input{width:1.25rem;height:1.25rem;accent-color:var(--primary);flex:none}.lesson-choice-time{font-variant-numeric:tabular-nums;flex:none;font-weight:700}.lesson-choice-body{min-width:0;display:grid}.lesson-choice-body strong{overflow-wrap:anywhere}.lesson-choice-body small{color:var(--muted)}@media (width<=1000px){.today-grid{grid-template-columns:minmax(0,1fr)}.absent-panel{position:static}.status-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.coverage-card{grid-template-columns:5.25rem minmax(0,1fr)}.coverage-actions{flex-flow:wrap;grid-column:1/-1;min-width:0}.coverage-actions button{flex:10rem}.coverage-note{flex-basis:100%}}@media (width<=520px){.today-header{align-items:stretch}.primary-action{justify-content:center;width:100%}.coverage-card{grid-template-columns:minmax(0,1fr)}.coverage-time{flex-direction:row;justify-content:flex-start;gap:.5rem;width:fit-content;padding:.4rem .75rem}.coverage-time span:before{content:"–";margin-right:.5rem}.freshness{flex-basis:100%;margin-left:0}.dialog-footer button{flex:100%}.dialog-count{flex-basis:100%}}@media (prefers-reduced-motion:no-preference){.coverage-card{transition:box-shadow .15s,border-color .15s}.coverage-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}}.detail-notice-region{display:contents}.operations-timetable-column .school-day-timeline{gap:var(--space-2);display:grid}.school-day-bar{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.school-day-bar h3{font-size:var(--text-xl);margin:0}.school-day-count{border-radius:var(--radius-pill);background:var(--surface-3);color:var(--text-2);font-size:var(--text-sm);white-space:nowrap;padding:.25rem .7rem;font-weight:600}.operations-timetable-column .school-day-filters{align-items:end;gap:var(--space-2) var(--space-3);flex-wrap:wrap;margin-top:0;display:flex}.operations-timetable-column .school-day-filters label{max-width:22rem;font-size:var(--text-sm);flex:14rem}.operations-timetable-column .school-day-filters select{min-height:var(--touch);padding-block:.55rem}.school-day-hint{color:var(--muted);font-size:var(--text-sm);margin:0}.operations-timetable-column .school-day-scroll{margin-top:var(--space-2)}@media (width<=600px){.operations-workspace{gap:var(--space-4)}.today-header{gap:var(--space-3)}.today-heading{gap:var(--space-2)}.status-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem}.status-filter{text-align:center;border-radius:var(--radius-md);align-items:center;gap:.1rem;min-height:0;padding:.5rem .25rem}.status-filter[aria-pressed=true]{padding:calc(.5rem - 1px) calc(.25rem - 1px)}.status-filter-count{order:-1;font-size:1.5rem}.status-filter-label{flex-wrap:wrap;justify-content:center;gap:.25rem;font-size:.75rem;line-height:1.2}.status-filter[aria-pressed=true] .status-filter-label:after{content:""}.status-filter-hint{display:none}.queue-heading h2{font-size:var(--text-lg)}}@media (width<=360px){.status-filter-label{font-size:.68rem}.status-filter-label,.status-filter-count{overflow-wrap:break-word}}.school-day-state.action{padding:var(--space-5);text-align:center;flex-direction:column}.join-page{place-items:start center;min-height:calc(100vh - 72px);padding:clamp(32px,8vh,86px) 20px;display:grid}.join-card{border:1px solid var(--line);background:var(--surface);border-radius:22px;width:min(100%,620px);padding:clamp(26px,5vw,44px);box-shadow:0 18px 55px #17203317}.join-card.success{border-color:var(--line-strong);background:linear-gradient(145deg,var(--covered-bg),var(--surface) 58%)}.join-card h1{margin:.25rem 0 1rem;font-size:clamp(1.9rem,5vw,2.8rem)}.join-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.join-card>button,.join-card>.button-link{margin:14px 8px 0 0}.join-destination{border:1px solid var(--line);border-radius:13px;gap:0;margin:24px 0 8px;display:grid;overflow:hidden}.join-destination>div{border-top:1px solid var(--line);grid-template-columns:minmax(110px,.65fr) 1.35fr;gap:16px;padding:13px 15px;display:grid}.join-destination>div:first-child{border-top:0}.join-destination dt{color:var(--muted);font-size:.82rem;font-weight:700}.join-destination dd{overflow-wrap:anywhere;margin:0;font-weight:750}.join-loading{align-items:center;gap:12px;min-height:90px;display:flex}.join-warning,.join-error{background:var(--warning-bg);border-radius:10px;padding:12px 14px;color:var(--warning)!important}.join-error{background:var(--danger-bg);color:var(--danger)!important}.join-help{margin:14px 0 0;font-size:.85rem}.join-current-account{overflow-wrap:anywhere;font-weight:750;color:var(--ink)!important}.button-link{min-height:44px;color:var(--surface);background:var(--accent);border-radius:9px;justify-content:center;align-items:center;padding:10px 16px;font-weight:750;text-decoration:none;display:inline-flex}.button-link:hover{background:var(--primary-hover);color:var(--on-primary)}@media (width<=520px){.join-page{padding:22px 12px}.join-card{padding:24px 20px}.join-destination>div{grid-template-columns:1fr;gap:3px}.join-card>button,.join-card>.button-link{width:100%;margin-right:0}}
