:root{--brand-logo-image:url(/brand/lesrooster-net-logo.png);--brand-font-family:var(--font-brand-sans), "Nunito Sans", "Segoe UI", Arial, sans-serif;--brand-heading-font-family:var(--font-heading-sans), "Noto Sans", "Segoe UI", Arial, sans-serif;--brand-navy:#012b63;--brand-blue:#0376b0;--brand-lime:#a1c53b;--brand-orange:#f89508;--brand-ice:#e0e9f4;--brand-orange-strong:#8a4b00;--brand-lime-strong:#4f7115;--color-ink:#172433;--color-muted:#5f6b76;--color-surface:#fff;--color-canvas:#f5f8fa;--color-line:#dfe6ec;--color-action:var(--brand-navy);--color-focus:var(--brand-blue);--color-success-fg:var(--brand-lime-strong);--color-success-bg:#f2f7e7;--color-warning-fg:#744600;--color-warning-bg:#fff4e2;--piloot-orange:var(--brand-orange-strong);--piloot-blue:var(--brand-navy);--piloot-lime:var(--brand-lime);--piloot-green:var(--brand-lime-strong);--ink:var(--color-ink);--muted:var(--color-muted);--line:var(--color-line);--surface:var(--color-surface);--canvas:var(--color-canvas)}:where(h1,h2,h3,h4,h5,h6),:where(header,.page-heading,.table-header,.school-year,.week-nav,.day-head,.progress-heading){font-family:var(--brand-heading-font-family)}.brand-logo{width:var(--brand-logo-width,166px);aspect-ratio:10/3;background-image:var(--brand-logo-image);background-position:50% 61%;background-repeat:no-repeat;background-size:108%;display:block}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.hidden{display:none}.table{display:table}.table-row{display:table-row}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}*{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);font-family:var(--brand-font-family);margin:0}button,a{font:inherit}button{color:inherit}:is(button:focus-visible,a:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.app-shell{grid-template:76px minmax(0,1fr)/218px minmax(0,1fr);min-height:100vh;display:grid}.topbar{z-index:20;border-bottom:1px solid var(--line);background:#fff;grid-column:1/-1;align-items:center;gap:28px;height:76px;padding:0 30px 0 24px;display:flex;position:sticky;top:0}.brand{place-items:center;width:166px;min-height:44px;display:grid}.brand .brand-logo{--brand-logo-width:166px}.tenant-switch{cursor:pointer;text-align:left;background:#f6f8f7;border:1px solid #e7ebea;border-radius:12px;align-items:center;gap:10px;min-width:228px;padding:8px 11px;display:flex}.tenant-switch>span:nth-child(2){flex-direction:column;flex:1;line-height:1.2;display:flex}.tenant-switch strong{font-size:13px}.tenant-switch small{color:var(--muted);margin-top:3px;font-size:11px}.tenant-dot,.profile-button>span:first-child{background:var(--piloot-orange);color:#fff;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.top-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.icon-button{border:1px solid var(--line);width:38px;height:38px;color:var(--piloot-orange);cursor:pointer;background:#fff;border-radius:50%;font-size:8px}.profile-button{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:4px 6px 4px 4px;display:flex}.profile-button>span:first-child{background:var(--piloot-blue)}.profile-copy{flex-direction:column;display:flex}.profile-copy strong{font-size:12px}.profile-copy small{color:var(--muted);margin-top:2px;font-size:10px}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;justify-content:space-between;height:calc(100vh - 76px);padding:24px 16px;display:flex;position:sticky;top:76px}.sidebar nav{gap:7px;display:grid}.nav-item{color:#53606c;border-radius:10px;align-items:center;gap:12px;min-height:43px;padding:0 13px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.nav-item>span{color:#7c8790;place-items:center;width:22px;display:grid}.nav-item:hover{background:#f6f8f7}.nav-item.active{background:var(--piloot-orange);position:relative}@supports (color:color-mix(in lab, red, red)){.nav-item.active{background:color-mix(in srgb, var(--piloot-orange) 12%, white)}}.nav-item.active{color:#9b5d0d}.nav-item.active:before{background:var(--piloot-orange);content:"";border-radius:0 4px 4px 0;width:4px;height:24px;position:absolute;left:-16px}.nav-item.active>span{color:var(--piloot-orange)}.sidebar-bottom{gap:14px;display:grid}.school-year{background:#f6f8f7;border-radius:10px;flex-direction:column;gap:2px;padding:13px;display:flex}.school-year small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.school-year strong{font-size:12px}.workspace{min-width:0;padding:30px clamp(22px,3vw,46px) 48px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;max-width:1600px;margin:0 auto 20px;display:flex}.eyebrow{color:var(--piloot-orange);letter-spacing:.13em;margin:0 0 7px;font-size:10px;font-weight:800}.title-row{align-items:center;gap:11px;display:flex}.title-row h1{letter-spacing:-.035em;margin:0;font-size:clamp(27px,2.2vw,36px);line-height:1.08}.page-heading>div:first-child>p:last-child{color:var(--muted);margin:7px 0 0;font-size:13px}.status-pill{background:var(--piloot-lime);border-radius:999px;padding:5px 9px}@supports (color:color-mix(in lab, red, red)){.status-pill{background:color-mix(in srgb, var(--piloot-lime) 26%, white)}}.status-pill{color:#68710e;text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:800}.status-pill.publication-state-active,.period-pill.publication-state-active{color:#4f7c20;background:#edf7e3}.status-pill.publication-state-draft_changes,.period-pill.publication-state-draft_changes{color:#93600e;background:#fff3df}.status-pill.publication-state-draft,.period-pill.publication-state-draft{color:#64707a;background:#f0f3f5}.heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.primary-button,.secondary-button{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 15px;font-size:12px;font-weight:800;display:inline-flex}.primary-button{border:1px solid var(--color-action);background:var(--color-action);color:#fff;box-shadow:0 7px 18px var(--brand-navy)}@supports (color:color-mix(in lab, red, red)){.primary-button{box-shadow:0 7px 18px color-mix(in srgb, var(--brand-navy) 20%, transparent)}}.secondary-button{background:#fff;border:1px solid #dfe4e6}.publication-button{border-color:var(--piloot-green)}@supports (color:color-mix(in lab, red, red)){.publication-button{border-color:color-mix(in srgb, var(--piloot-green) 40%, #dfe4e6)}}.publication-button{color:#527d22}.primary-button:disabled,.secondary-button:disabled{cursor:wait;color:#657077;box-shadow:none;background:#f4f6f5;border-color:#dfe4e6}.notice-card{background:#fffaf3;border:1px solid #f0d6b4;border-radius:12px;align-items:center;gap:12px;max-width:1600px;margin:0 auto 18px;padding:11px 13px;display:flex}.notice-icon{background:var(--piloot-orange);color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.notice-card>div{flex:1}.notice-card strong{font-size:12px}.notice-card p{color:#7b6852;margin:0 0 0 8px;font-size:11px;display:inline}.notice-card button{color:#995c0d;cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:800}.privacy-phase-banner{background:var(--color-warning-bg);border:1px solid #f0cf9f;border-radius:12px;align-items:center;gap:10px;max-width:1600px;margin:0 auto 12px;padding:11px 13px;display:flex}.privacy-phase-banner>span{background:var(--brand-orange-strong);color:#fff;border-radius:50%;flex:none;place-items:center;width:27px;height:27px;font-size:10px;font-weight:900;display:grid}.privacy-phase-banner p{color:#71552e;flex:1;margin:0;font-size:10px;line-height:1.5}.privacy-phase-banner strong{color:var(--color-warning-fg)}.privacy-phase-banner a{color:var(--brand-navy);white-space:nowrap;font-size:10px;font-weight:850}.planner-layout{grid-template-columns:minmax(680px,1fr) 286px;align-items:start;gap:18px;max-width:1600px;margin:0 auto;display:grid}.planner-card,.subject-panel{border:1px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:0 8px 30px #1a2b330a}.planner-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:70px;padding:13px 18px;display:flex}.schedule-interaction-help{border-bottom:1px solid var(--line);min-height:34px;color:var(--muted);background:#f8faf9;justify-content:space-between;align-items:center;gap:12px;padding:8px 18px;font-size:9px;line-height:1.4;display:flex}.schedule-interaction-help.selection-active{background:var(--piloot-blue)}@supports (color:color-mix(in lab, red, red)){.schedule-interaction-help.selection-active{background:color-mix(in srgb, var(--piloot-blue) 7%, white)}}.schedule-interaction-help.selection-active{color:var(--piloot-blue)}@supports (color:color-mix(in lab, red, red)){.schedule-interaction-help.selection-active{color:color-mix(in srgb, var(--piloot-blue) 82%, #29343b)}}.schedule-interaction-help button{border:1px solid var(--piloot-blue);flex:none;padding:3px 7px}@supports (color:color-mix(in lab, red, red)){.schedule-interaction-help button{border:1px solid color-mix(in srgb, var(--piloot-blue) 28%, white)}}.schedule-interaction-help button{color:var(--piloot-blue);cursor:pointer;background:#fff;border-radius:6px;font-size:8px;font-weight:800}.week-nav{align-items:center;gap:11px;display:flex}.week-nav button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;place-items:center;width:32px;height:32px;font-size:22px;display:grid}.week-nav div{flex-direction:column;min-width:198px;display:flex}.week-nav strong{font-size:13px}.week-nav small{color:var(--muted);margin-top:2px;font-size:10px}.view-toggle{background:#f1f4f3;border-radius:9px;padding:3px;display:flex}.view-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:10px;font-weight:800}.view-toggle button.selected{color:var(--ink);background:#fff;box-shadow:0 2px 7px #23343b17}.schedule-wrap{min-height:480px;max-height:calc(100vh - 325px);overflow:auto}.schedule-head{z-index:8;border-bottom:1px solid var(--line);background:#fff;grid-template-columns:64px repeat(5,minmax(142px,1fr));min-width:780px;display:grid;position:sticky;top:0}.corner-cell,.day-head{border-right:1px solid var(--line);min-height:58px;padding:10px 12px}.corner-cell{color:#8a949c;letter-spacing:.08em;justify-content:center;align-items:flex-end;font-size:9px;font-weight:800;display:flex}.day-head{grid-template-columns:auto 1fr;align-content:center;column-gap:7px;display:grid}.day-head span{color:#6f7a82;background:#f2f5f3;border-radius:8px;grid-row:1/span 2;align-self:center;place-items:center;width:29px;height:29px;font-size:9px;font-weight:900;display:grid}.day-head strong{font-size:11px}.day-head small{color:var(--muted);font-size:9px}.schedule-body{grid-template-columns:64px repeat(5,minmax(142px,1fr));min-width:780px;display:grid}.time-column,.day-column{grid-template-rows:repeat(24,26px);display:grid}.time-column{background:#fbfcfc}.time-column>div{border-right:1px solid var(--line);color:#77828b;text-align:center;border-bottom:1px solid #eef1f2;padding-top:5px;font-size:9px}.time-column>div.minor-time{color:#b1b8bd;font-size:8px}.day-column{border-right:1px solid var(--line);background:#fff;position:relative}.slot-line{border-bottom:1px solid #eef1f2;grid-column:1}.arrival-block,.lesson-block{z-index:2;border-radius:6px;grid-column:1;min-width:0;margin:2px 4px}.arrival-block{color:#6b7780;text-transform:uppercase;letter-spacing:.06em;background:#eef1f2;place-items:center;font-size:8px;font-weight:800;display:grid}.lesson-block{border-left:3px solid;padding:5px 7px;overflow:hidden;box-shadow:0 1px 5px #2125290d}.lesson-block>div{justify-content:space-between;align-items:center;gap:4px;display:flex}.lesson-block strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.lesson-block small{color:currentColor;margin-top:2px;display:block}@supports (color:color-mix(in lab, red, red)){.lesson-block small{color:color-mix(in srgb, currentColor 75%, #47505a)}}.lesson-block small{font-size:8px}.lesson-block.locked>div span{font-size:6px}.tone-orange{color:#a5630d;background:#fff2df}.tone-blue{color:var(--piloot-blue);background:#edf3fa}.tone-lime{color:#77810a;background:#f5f8d7}.tone-green{color:#52851a;background:#edf7e3}.tone-slate{color:#64707a;background:#f0f3f5}.subject-panel{padding:20px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.panel-heading h2{letter-spacing:-.02em;margin:0;font-size:18px}.panel-heading>span{color:var(--muted);background:#f2f5f3;border-radius:7px;padding:5px 7px;font-size:9px;font-weight:800}.panel-help{color:var(--muted);margin:8px 0 16px;font-size:10px}.subject-groups{gap:13px;display:grid}.subject-group{gap:6px;display:grid}.subject-group-heading{justify-content:space-between;align-items:center;gap:10px;padding-inline:2px;display:flex}.subject-group-heading h3{color:#66727a;letter-spacing:.07em;text-transform:uppercase;margin:0;font-size:8px;font-weight:850}.subject-group-heading span{color:#929ba1;font-size:8px;font-weight:750}.subject-list{gap:8px;display:grid}.subject-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:10px;width:100%;min-height:66px;position:relative;overflow:hidden}.subject-card:hover{border-color:#ccd4d7;box-shadow:0 5px 14px #2125290d}.subject-card-content{z-index:2;pointer-events:none;align-items:flex-start;gap:10px;min-height:66px;padding:9px 9px 24px;display:flex;position:relative}.subject-mark{border-radius:5px;flex:none;width:5px;height:31px}.subject-copy{flex-direction:column;flex:1;min-width:0;display:flex}.subject-copy strong{font-size:11px}.subject-copy small{color:var(--muted);margin-top:3px;font-size:9px}.subject-grip{z-index:3;color:#7f8a91;cursor:grab;pointer-events:auto;flex:none;place-items:center;width:24px;height:24px;margin:-3px -3px 0 0;display:grid;position:relative}.subject-grip:active{cursor:grabbing}.subject-grip.disabled{color:#c0c6ca;cursor:not-allowed}.subject-duration-zones{--duration-accent:var(--piloot-blue);z-index:1;grid-template-columns:repeat(4,1fr);height:24px;display:grid;position:absolute;bottom:0;left:0;right:0}.duration-tone-orange{--duration-accent:var(--piloot-orange)}.duration-tone-blue{--duration-accent:var(--piloot-blue)}.duration-tone-lime{--duration-accent:var(--piloot-lime)}.duration-tone-green{--duration-accent:var(--piloot-green)}.duration-tone-slate{--duration-accent:#7d8991}.duration-tone-purple{--duration-accent:#8a68a7}.duration-zone{background:var(--duration-accent);border:0;min-width:0;margin:0;padding:0;position:relative}@supports (color:color-mix(in lab, red, red)){.duration-zone{background:color-mix(in srgb, var(--duration-accent) 4%, white)}}.duration-zone{color:var(--duration-accent)}@supports (color:color-mix(in lab, red, red)){.duration-zone{color:color-mix(in srgb, var(--duration-accent) 72%, #5f6870)}}.duration-zone{cursor:grab}.duration-zone:not(:first-child):before{border-left:1px dashed var(--duration-accent);position:absolute;top:6px;bottom:6px;left:0}@supports (color:color-mix(in lab, red, red)){.duration-zone:not(:first-child):before{border-left:1px dashed color-mix(in srgb, var(--duration-accent) 34%, #dce1e3)}}.duration-zone:not(:first-child):before{content:""}.duration-zone:enabled:hover{background:var(--duration-accent)}@supports (color:color-mix(in lab, red, red)){.duration-zone:enabled:hover{background:color-mix(in srgb, var(--duration-accent) 13%, white)}}.duration-zone:enabled:active{cursor:grabbing}.duration-zone:focus-visible{outline:2px solid var(--duration-accent)}@supports (color:color-mix(in lab, red, red)){.duration-zone:focus-visible{outline:2px solid color-mix(in srgb, var(--duration-accent) 58%, white)}}.duration-zone:focus-visible{outline-offset:-3px}.duration-zone.included{background:var(--duration-accent)}@supports (color:color-mix(in lab, red, red)){.duration-zone.included{background:color-mix(in srgb, var(--duration-accent) 15%, white)}}:is(.subject-duration-zones:has(.duration-zone:first-child:is(:enabled:hover,:focus-visible)) .duration-zone:first-child,.subject-duration-zones:has(.duration-zone:nth-child(2):is(:enabled:hover,:focus-visible)) .duration-zone:nth-child(-n+2),.subject-duration-zones:has(.duration-zone:nth-child(3):is(:enabled:hover,:focus-visible)) .duration-zone:nth-child(-n+3),.subject-duration-zones:has(.duration-zone:nth-child(4):is(:enabled:hover,:focus-visible)) .duration-zone:nth-child(-n+4)){background:var(--duration-accent)}@supports (color:color-mix(in lab, red, red)){:is(.subject-duration-zones:has(.duration-zone:first-child:is(:enabled:hover,:focus-visible)) .duration-zone:first-child,.subject-duration-zones:has(.duration-zone:nth-child(2):is(:enabled:hover,:focus-visible)) .duration-zone:nth-child(-n+2),.subject-duration-zones:has(.duration-zone:nth-child(3):is(:enabled:hover,:focus-visible)) .duration-zone:nth-child(-n+3),.subject-duration-zones:has(.duration-zone:nth-child(4):is(:enabled:hover,:focus-visible)) .duration-zone:nth-child(-n+4)){background:color-mix(in srgb, var(--duration-accent) 13%, white)}}.duration-zone.selected{box-shadow:inset 0 -3px 0 var(--duration-accent)}.duration-zone:disabled{color:#aeb5b9;cursor:not-allowed;opacity:.38;background:#f7f8f8}.duration-zone>span,.duration-zone>small{font-size:7px;line-height:1;position:absolute;bottom:3px}.duration-zone>span{font-weight:850;right:calc(50% - 1px)}.duration-zone>small{left:calc(50% + 1px)}.text-button{width:100%;color:var(--piloot-blue);cursor:pointer;text-align:left;background:0 0;border:0;margin-top:12px;padding:9px 0;font-size:10px;font-weight:800}.text-button span{float:right}.legend-card{background:#f7f9f8;border-radius:11px;grid-template-columns:12px 1fr;gap:8px 3px;margin-top:16px;padding:13px;display:grid}.legend-card>strong{grid-column:1/-1;margin-bottom:2px;font-size:10px}.legend-card>div{color:#56616b;font-size:9px;display:contents}.legend-dot{border-radius:50%;align-self:center;width:7px;height:7px}.legend-dot.orange{background:var(--piloot-orange)}.legend-dot.lime{background:var(--piloot-lime)}.legend-dot.green{background:var(--piloot-green)}.legend-card p{color:var(--muted);grid-column:1/-1;margin:3px 0 0;font-size:9px;line-height:1.45}@media (max-width:1050px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.brand{width:146px}.brand .brand-logo{--brand-logo-width:146px}.sidebar{padding-inline:10px}.nav-item{justify-content:center;padding:0;font-size:0}.nav-item>span{font-size:15px}.nav-item.active:before{left:-10px}.school-year{display:none}.planner-layout{grid-template-columns:minmax(620px,1fr)}.subject-panel{width:100%}}@media (max-width:760px){.app-shell{display:block}.topbar{gap:12px;height:66px;padding:0 16px}.brand{width:132px}.brand .brand-logo{--brand-logo-width:132px}.tenant-switch{background:0 0;border:0;min-width:0;margin-left:auto;padding:4px}.tenant-switch>span:nth-child(2),.tenant-switch>span:last-child,.profile-copy,.icon-button{display:none}.sidebar{z-index:30;border:1px solid var(--line);border-radius:16px;width:auto;height:58px;padding:6px;display:block;position:fixed;inset:auto 12px 12px;box-shadow:0 12px 35px #1e2d3426}.sidebar nav{grid-template-columns:repeat(4,1fr);display:grid}.nav-item{min-height:44px}.nav-item.active:before,.sidebar-bottom{display:none}.workspace{padding:22px 14px 92px}.page-heading{align-items:flex-start}.heading-actions{width:auto}.secondary-button{width:42px;padding:0;font-size:0}.secondary-button span{font-size:15px}.publication-button{width:auto;padding-inline:11px;font-size:10px}.primary-button{padding-inline:12px}.notice-card{align-items:flex-start}.notice-card p{margin:2px 0 0;display:block}.notice-card button{display:none}.planner-layout{display:block}.planner-toolbar{flex-direction:column;align-items:flex-start}.view-toggle{align-self:stretch}.view-toggle button{flex:1}.schedule-wrap{max-height:620px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}input,select,textarea{font:inherit;color:inherit}:is(input:focus-visible,select:focus-visible,textarea:focus-visible){outline:3px solid var(--color-focus);outline-offset:1px}.brand{cursor:pointer;background:0 0;border:0;padding:0}.nav-item{cursor:pointer;text-align:left;background:0 0;border:0;width:100%}.save-status{color:var(--muted);white-space:nowrap;background:#f3f5f4;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:9px;font-weight:800;display:inline-flex}.save-status:before{content:"";background:#abb3b7;border-radius:50%;width:7px;height:7px}.status-opgeslagen:before{background:var(--piloot-green)}.status-opslaan:before,.status-laden:before{background:var(--piloot-orange);box-shadow:0 0 0 4px var(--piloot-orange)}@supports (color:color-mix(in lab, red, red)){.status-opslaan:before,.status-laden:before{box-shadow:0 0 0 4px color-mix(in srgb, var(--piloot-orange) 13%, transparent)}}.status-offline:before{background:#c84d42}.status-voorbeeld:before{background:var(--piloot-blue)}.profile-group{align-items:center;gap:7px;display:flex}.logout-button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 8px;font-size:9px;font-weight:750}.logout-button:hover{color:var(--ink);background:#f2f5f3}.notice-card{cursor:pointer;text-align:left;width:100%}.notice-copy{flex-direction:column;flex:1;gap:2px;display:flex}.notice-copy strong{font-size:12px}.notice-copy small{color:#7b6852;font-size:10px}.notice-link{color:#995c0d;white-space:nowrap;font-size:10px;font-weight:850}.notice-success{background:#fbfdf3;border-color:#dce9c1}.notice-success .notice-icon{background:var(--piloot-green)}.notice-success .notice-copy small{color:#65764d}.notice-success .notice-link{color:#50751f}.rotate-button span{font-size:17px;line-height:1}.time-column,.day-column{grid-template-rows:repeat(23,27px)}.time-column{position:relative}.time-column>div{min-height:27px;padding-top:6px}.time-end-label{z-index:3;color:#77828b;text-align:center;pointer-events:none;font-size:9px;position:absolute;bottom:-11px;left:0;right:0}.slot-line{cursor:default;background:0 0;border:0;border-bottom:1px solid #eef1f2;width:100%;min-width:0;min-height:27px;margin:0;padding:0}.slot-line:nth-child(odd){background:#fcfdfd}.slot-selectable{cursor:cell}.slot-selectable:hover{background:var(--piloot-blue)}@supports (color:color-mix(in lab, red, red)){.slot-selectable:hover{background:color-mix(in srgb, var(--piloot-blue) 9%, white)}}.slot-selectable:hover{box-shadow:inset 0 0 0 1px var(--piloot-blue)}@supports (color:color-mix(in lab, red, red)){.slot-selectable:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--piloot-blue) 28%, white)}}.lesson-block{cursor:default;position:relative}.lesson-block.movable{cursor:grab;padding:0}.lesson-block.movable:active{cursor:grabbing}.block-move-control{width:100%;height:100%;min-height:100%;color:inherit;cursor:grab;text-align:left;background:0 0;border:0;padding:5px 25px 5px 7px;display:block}.block-move-control:active{cursor:grabbing}.block-move-control:focus-visible{outline:3px solid var(--piloot-blue)}@supports (color:color-mix(in lab, red, red)){.block-move-control:focus-visible{outline:3px solid color-mix(in srgb, var(--piloot-blue) 46%, white)}}.block-move-control:focus-visible{outline-offset:-3px}.block-move-control>.block-title-row{justify-content:space-between;align-items:center;gap:4px;display:flex}.block-remove-button{z-index:2;color:currentColor;cursor:pointer;background:#ffffffd1;border:0;border-radius:50%;place-items:center;width:16px;height:16px;padding:0;font-size:12px;line-height:1;display:grid;position:absolute;top:4px;right:4px}.lesson-block.selected-for-move{z-index:3;outline:2px dashed var(--piloot-blue)}@supports (color:color-mix(in lab, red, red)){.lesson-block.selected-for-move{outline:2px dashed color-mix(in srgb, var(--piloot-blue) 72%, white)}}.lesson-block.selected-for-move{outline-offset:1px;box-shadow:0 0 0 3px var(--piloot-blue)}@supports (color:color-mix(in lab, red, red)){.lesson-block.selected-for-move{box-shadow:0 0 0 3px color-mix(in srgb, var(--piloot-blue) 12%, transparent)}}.lesson-block.drag-source{z-index:3;outline:2px solid var(--piloot-blue)}@supports (color:color-mix(in lab, red, red)){.lesson-block.drag-source{outline:2px solid color-mix(in srgb, var(--piloot-blue) 72%, white)}}.lesson-block.drag-source{outline-offset:1px}.lesson-block.swap-target{z-index:4;outline:3px solid var(--piloot-green)}@supports (color:color-mix(in lab, red, red)){.lesson-block.swap-target{outline:3px solid color-mix(in srgb, var(--piloot-green) 70%, #375719)}}.lesson-block.swap-target{outline-offset:1px}.lesson-block.swap-target:after{z-index:5;background:var(--piloot-green);border-radius:4px;place-items:center;display:grid;position:absolute;inset:3px}@supports (color:color-mix(in lab, red, red)){.lesson-block.swap-target:after{background:color-mix(in srgb, var(--piloot-green) 14%, white)}}.lesson-block.swap-target:after{color:#42631e;content:"Wisselen";letter-spacing:.04em;text-transform:uppercase;font-size:8px;font-weight:900}.lesson-block.swap-target-locked{outline-color:#a45a36}.lesson-block.swap-target-locked:after{color:#8b4525;content:"Vast blok";background:#fff4ed}.lesson-block em{color:currentColor;margin-top:2px;display:block;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.lesson-block em{color:color-mix(in srgb, currentColor 75%, #47505a)}}.lesson-block em{text-overflow:ellipsis;white-space:nowrap;font-size:7px;font-style:normal}.lock-mark{font-size:6px}.exact-badge{letter-spacing:.05em;text-transform:uppercase;background:#ffffffbd;border-radius:3px;padding:1px 3px;font-size:6px;font-weight:900;position:absolute;bottom:3px;right:4px}.tone-purple{color:#745394;background:#f3eef9}.subject-card.selected{border-color:var(--piloot-blue);box-shadow:0 0 0 2px var(--piloot-blue);background:#f7faff}@supports (color:color-mix(in lab, red, red)){.subject-card.selected{box-shadow:0 0 0 2px color-mix(in srgb, var(--piloot-blue) 10%, transparent)}}.package-complete{border-color:#dce9c1}.package-empty{text-align:center;background:#fbfdf3;border:1px dashed #cedda8;border-radius:12px;align-content:center;place-items:center;min-height:184px;padding:24px;display:grid}.package-empty>span{background:var(--piloot-green);color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;margin-bottom:9px;font-weight:900;display:grid}.package-empty strong{font-size:13px}.package-empty p{color:#687751;max-width:180px;margin:5px 0 0;font-size:9px;line-height:1.45}.selection-help{color:var(--piloot-blue);background:#edf3fa;border-radius:8px;margin:12px 0 0;padding:9px;font-size:9px;font-weight:750}.return-dropzone{color:#7a858d;border:1px dashed #ccd4d7;border-radius:9px;align-items:center;gap:8px;margin-top:13px;padding:10px;font-size:9px;display:flex}.return-dropzone>span{font-size:15px}.section-heading{align-items:center;margin-bottom:22px}.data-card{border:1px solid var(--line);background:#fff;border-radius:16px;box-shadow:0 8px 30px #1a2b330a}.period-overview{background:#fbfcfc;min-height:540px;padding:24px}.period-summary{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.period-summary>div{flex-direction:column;gap:3px;display:flex}.period-summary strong{font-size:15px}.period-summary span{color:var(--muted);font-size:10px}.period-pill{background:#eef5df;border-radius:999px;padding:5px 8px;font-weight:850;color:#657719!important}.period-weeks{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.period-week{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.period-week.current{border-color:var(--piloot-orange)}@supports (color:color-mix(in lab, red, red)){.period-week.current{border-color:color-mix(in srgb, var(--piloot-orange) 48%, white)}}.period-week.current{box-shadow:0 8px 18px var(--piloot-orange)}@supports (color:color-mix(in lab, red, red)){.period-week.current{box-shadow:0 8px 18px color-mix(in srgb, var(--piloot-orange) 10%, transparent)}}.period-week header,.period-week footer{justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.period-week header{border-bottom:1px solid var(--line)}.period-week header strong{font-size:11px}.period-week header small,.period-week footer{color:var(--muted);font-size:8px}.mini-week{grid-template-columns:repeat(5,1fr);gap:3px;padding:11px;display:grid}.mini-week span{color:#748089;text-align:center;gap:5px;font-size:7px;font-weight:850;display:grid}.mini-week i{background:repeating-linear-gradient(#edf1f2 0 3px,#fff 3px 7px);border-radius:4px;height:62px;display:block}.mini-week .school-day i{background:repeating-linear-gradient(135deg,#fff3e3 0 5px,#f7d6ab 5px 7px)}.overview-note{color:var(--muted);background:#f1f4f3;border-radius:10px;margin:18px 0 0;padding:12px;font-size:10px;line-height:1.5}.curriculum-baseline-card{max-width:1600px;margin:0 auto 18px;padding:20px}.curriculum-baseline-card>header{justify-content:space-between;align-items:start;gap:18px;display:flex}.curriculum-baseline-card h2{letter-spacing:-.025em;margin:0;font-size:18px}.curriculum-baseline-card header p:last-child{max-width:720px;color:var(--muted);margin:7px 0 0;font-size:10px;line-height:1.5}.curriculum-version{color:var(--muted);background:#f1f4f3;border-radius:7px;flex:none;padding:6px 8px;font-size:8px;font-weight:850}.curriculum-area-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.curriculum-area-grid article{border:1px solid var(--line);border-radius:10px;align-items:center;gap:9px;min-width:0;padding:10px;display:flex}.curriculum-area-grid article>span{border-radius:50%;flex:none;place-items:center;width:25px;height:25px;font-size:10px;font-weight:900;display:grid}.curriculum-area-grid article.covered>span{color:#52791d;background:#edf6df}.curriculum-area-grid article.missing>span{color:#9a5e10;background:#fff1dd}.curriculum-area-grid article>div{flex-direction:column;gap:2px;min-width:0;display:flex}.curriculum-area-grid strong{font-size:10px}.curriculum-area-grid small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.curriculum-baseline-card>footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:12px;font-size:9px;display:flex}.curriculum-baseline-card>footer a{color:var(--piloot-blue);font-weight:850;text-decoration:none}.curriculum-baseline-card>footer a:hover{text-decoration:underline}.subject-table-card{max-width:1600px;margin:0 auto;overflow:hidden}.table-header,.table-row{grid-template-columns:minmax(230px,1.5fr) 90px 120px minmax(120px,.8fr) 112px 88px;align-items:center;gap:12px;display:grid}.table-header{color:#7a858d;letter-spacing:.08em;text-transform:uppercase;background:#f6f8f7;padding:11px 18px;font-size:8px;font-weight:900}.table-row{border-top:1px solid var(--line);min-height:64px;padding:10px 18px;font-size:10px}.subject-name-cell{align-items:center;gap:10px;min-width:0;display:flex}.subject-name-cell>span:last-child{flex-direction:column;gap:2px;min-width:0;display:flex}.subject-name-cell strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.subject-name-cell small{color:var(--muted);font-size:8px}.delta-ok{color:#4f7c21;font-weight:800}.delta-warn{color:#a66510;font-weight:800}.source-fixed,.source-teacher{border-radius:6px;width:fit-content;padding:4px 6px;font-size:8px;font-weight:850}.source-fixed{color:#9a5e10;background:#fff1dd}.source-teacher{color:var(--piloot-blue);background:#edf3fa}.stepper{gap:4px;display:flex}.stepper button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;width:30px;height:28px;font-weight:900}.stepper button:disabled{cursor:not-allowed;color:#c4c9cc}.management-grid,.settings-grid{gap:18px;max-width:1600px;margin:0 auto;display:grid}.management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.management-card,.settings-card{padding:20px}.card-title h2,.settings-card h2,.year-sidebar h2{letter-spacing:-.025em;margin:0;font-size:18px}.people-list,.group-list{gap:8px;margin:16px 0;display:grid}.person-row,.group-card{border:1px solid var(--line);border-radius:10px;align-items:center;gap:10px;min-height:58px;padding:9px 10px;display:flex}.person-avatar,.group-card>span:first-child{width:35px;height:35px;color:var(--piloot-blue);background:#edf3fa;border-radius:9px;flex:none;place-items:center;font-size:11px;font-weight:900;display:grid}.person-row>div,.group-card>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.person-row strong,.group-card strong{font-size:11px}.person-row small,.group-card small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.person-row select{border:1px solid var(--line);background:#fff;border-radius:7px;max-width:130px;padding:7px;font-size:9px}.group-card>span:first-child{color:#707b11;background:#f3f6d9}.inline-add{border-top:1px solid var(--line);gap:7px;padding-top:15px;display:grid}.inline-add>label{font-size:9px;font-weight:850}.inline-add>div{gap:6px;display:flex}.inline-add input{border:1px solid #dfe4e6;border-radius:8px;flex:1;min-width:0;padding:9px 10px;font-size:10px}.inline-add button{background:var(--piloot-blue);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:0 11px;font-size:9px;font-weight:850}.inline-add>small{color:var(--muted);font-size:8px;line-height:1.4}.teacher-add>div{grid-template-columns:.75fr 1.25fr auto;display:grid}.form-error{margin:0;font-weight:750;color:#a5322b!important;font-size:9px!important}.year-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:18px;max-width:1600px;margin:0 auto;display:grid}.month-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.month-card{border:1px solid var(--line);background:#fff;border-radius:13px;min-height:164px;padding:14px}.month-card header{justify-content:space-between;align-items:center;display:flex}.month-card header strong{font-size:12px}.month-card header span{color:var(--muted);font-size:8px}.month-weeks{grid-template-columns:repeat(5,1fr);gap:4px;margin:15px 0 12px;display:grid}.month-weeks span{background:#f2f5f3;border-radius:4px;height:24px}.month-weeks i{background:#dce3e2;border-radius:4px;height:4px;margin:5px 4px;display:block}.month-events{flex-wrap:wrap;gap:4px;display:flex}.month-events>small{color:#9aa2a7;font-size:8px}.holiday-tag{color:var(--piloot-blue);background:#edf3fa;border-radius:5px;padding:4px 6px;font-size:7px;font-weight:850}.holiday-tag.advisory{color:#737d13;background:#f5f7dc}.holiday-tag.school{color:#9b5e10;background:#fff0dc}.year-sidebar{padding:20px;position:sticky;top:96px}.holiday-list{gap:11px;margin:17px 0 20px;display:grid}.holiday-list article{align-items:flex-start;gap:9px;display:flex}.holiday-list article>div{flex-direction:column;gap:2px;display:flex}.holiday-list strong{font-size:10px}.holiday-list small{color:var(--muted);font-size:8px}.holiday-dot{background:var(--piloot-blue);border-radius:50%;width:8px;height:8px;margin-top:3px}.holiday-dot.advisory{background:var(--piloot-lime)}.school-day-form,.settings-card{gap:12px;display:grid}.school-day-form{border-top:1px solid var(--line);padding-top:16px}.school-day-form>strong{font-size:10px}.school-day-form label,.settings-card label{color:#56616b;gap:5px;font-size:9px;font-weight:750;display:grid}.school-day-form input,.settings-card input,.settings-card select{background:#fff;border:1px solid #dfe4e6;border-radius:8px;width:100%;padding:9px 10px;font-size:10px}.school-day-form button{width:100%}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fixed-time-row{border-bottom:1px solid #eff2f2;justify-content:space-between;align-items:center;min-height:34px;padding:0 2px;font-size:10px;display:flex}.fixed-time-row span{color:var(--muted)}.fixed-time-row strong{font-size:10px}.settings-card fieldset{border:0;gap:7px;margin:2px 0 0;padding:0;display:grid}.settings-card legend{margin-bottom:6px;font-size:9px;font-weight:850}.radio-row{border:1px solid var(--line);cursor:pointer;border-radius:9px;grid-template-columns:auto 1fr;align-items:flex-start;padding:9px;gap:9px!important;display:flex!important}.radio-row input{width:auto;accent-color:var(--piloot-orange);margin-top:2px}.radio-row span{flex-direction:column;gap:2px;display:flex}.radio-row strong{color:var(--ink);font-size:10px}.radio-row small{color:var(--muted);font-size:8px}.settings-note{color:var(--muted);margin:0;font-size:9px;line-height:1.55}.settings-note.top{margin-top:-5px}.group-chip-list{flex-wrap:wrap;gap:6px;display:flex}.group-chip-list span{color:#657079;background:#f2f5f3;border-radius:7px;padding:6px 8px;font-size:8px;font-weight:800}.group-chip-list .combined{color:#99601a;background:#fff0dc}.assistant-fab{z-index:42;background:var(--piloot-blue);color:#fff;min-height:46px;box-shadow:0 13px 32px var(--piloot-blue);border:0;border-radius:999px;align-items:center;gap:8px;padding:0 15px;display:inline-flex;position:fixed;bottom:24px;right:24px}@supports (color:color-mix(in lab, red, red)){.assistant-fab{box-shadow:0 13px 32px color-mix(in srgb, var(--piloot-blue) 28%, transparent)}}.assistant-fab{cursor:pointer;font-size:10px;font-weight:850;transition:transform .2s,right .25s}.assistant-fab>span:first-child{color:#fbe09f;font-size:18px}.assistant-fab:hover{transform:translateY(-2px)}.assistant-fab.open{right:402px}.assistant-drawer{z-index:41;border-left:1px solid var(--line);visibility:hidden;background:#fff;width:min(390px,94vw);transition:transform .25s,visibility .25s;position:fixed;top:76px;bottom:0;right:0;overflow:auto;transform:translate(105%);box-shadow:-18px 0 45px #18283021}.assistant-drawer.visible{visibility:visible;transform:translate(0)}.assistant-drawer>header{z-index:2;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;padding:18px 20px;display:flex;position:sticky;top:0}.assistant-drawer>header>button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;place-items:center;width:32px;height:32px;font-size:18px;display:grid}.sparkle-title{align-items:center;gap:11px;display:flex}.sparkle-title>span{background:var(--piloot-blue);color:#fbe09f;border-radius:11px;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.sparkle-title p,.sparkle-title h2{margin:0}.sparkle-title p{color:var(--piloot-blue);letter-spacing:.12em;font-size:7px;font-weight:900}.sparkle-title h2{margin-top:2px;font-size:16px}.assistant-body{padding:20px}.assistant-intro{color:var(--muted);margin:0 0 14px;font-size:10px;line-height:1.55}.suggestion-chips{flex-wrap:wrap;gap:5px;margin-bottom:16px;display:flex}.suggestion-chips button{color:var(--piloot-blue);cursor:pointer;background:#f7faff;border:1px solid #dfe6ec;border-radius:999px;padding:6px 8px;font-size:8px;font-weight:750}.assistant-body form{gap:7px;display:grid}.assistant-body form label{font-size:9px;font-weight:850}.assistant-body textarea{resize:vertical;background:#fbfcfc;border:1px solid #dce2e5;border-radius:10px;width:100%;padding:11px;font-size:10px;line-height:1.5}.assistant-submit{width:100%;margin-top:3px}.assistant-status{background:#f2f5f3;border-radius:9px;align-items:flex-start;gap:8px;margin-top:13px;padding:10px;display:flex}.assistant-status>span{font-weight:900}.assistant-status p{color:#59656d;margin:0;font-size:9px;line-height:1.45}.assistant-status.ready{color:#5c7b27;background:#f5f9e9}.assistant-status.failed{color:#a44238;background:#fff0ed}.change-preview{border:1px solid var(--line);background:#fbfcfc;border-radius:11px;margin-top:14px;padding:14px}.change-preview h3{margin:0 0 9px;font-size:13px}.change-preview ul{color:#56616b;gap:6px;margin:0 0 12px;padding-left:18px;font-size:9px;line-height:1.45;display:grid}.change-preview>p:not(.eyebrow){color:var(--muted);font-size:9px}.preview-guard,.privacy-note{color:var(--piloot-blue);background:#edf3fa;border-radius:8px;align-items:flex-start;gap:8px;padding:9px;display:flex}.preview-guard p,.privacy-note p{margin:0;font-size:8px;line-height:1.45}.change-preview>button{width:100%;margin-top:11px}.modal-backdrop{z-index:80;background:#141f2694;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border-radius:17px;width:min(620px,100%);max-height:min(820px,100vh - 40px);overflow:hidden;box-shadow:0 24px 70px #07121947}.modal-card.compact{width:min(460px,100%)}.modal-card.wide{width:min(790px,100%)}.modal-card>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.modal-card>header h2,.modal-card>header p{margin:0}.modal-card>header h2{margin-top:2px;font-size:19px}.modal-card>header>button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;place-items:center;width:32px;height:32px;font-size:18px;display:grid}.modal-body{max-height:calc(100vh - 128px);padding:20px;overflow:auto}.modal-intro{color:var(--muted);margin:0 0 16px;font-size:10px;line-height:1.55}.modal-actions{justify-content:flex-end;gap:8px;margin-top:17px;display:flex}.publication-dialog{gap:14px;display:grid}.publication-dialog .modal-intro{margin-bottom:0}.publication-checks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.publication-checks li{border:1px solid var(--line);background:#fafbfa;border-radius:10px;align-items:flex-start;gap:10px;padding:10px;display:flex}.publication-checks li>span{border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:10px;font-weight:900;display:grid}.publication-checks li.ready>span{color:#4f7c20;background:#edf7e3}.publication-checks li.blocked>span{color:#a44238;background:#fff0ed}.publication-checks li>div{gap:3px;display:grid}.publication-checks strong{font-size:10px}.publication-checks small{color:var(--muted);font-size:9px;line-height:1.45}.publication-version-note{color:#56616b;background:#f2f5f3;border-radius:9px;margin:0;padding:10px;font-size:9px;line-height:1.5}.publication-dialog .primary-button:disabled{cursor:not-allowed}.issue-list{gap:8px;display:grid}.issue-row{border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:10px;padding:11px;display:flex}.issue-row>span{width:24px;height:24px;color:var(--piloot-blue);background:#edf3fa;border-radius:50%;flex:none;place-items:center;font-size:10px;font-weight:900;display:grid}.issue-row>div{flex-direction:column;gap:3px;display:flex}.issue-row strong{font-size:10px}.issue-row p{color:var(--muted);margin:0;font-size:9px;line-height:1.4}.issue-error>span{color:#b34338;background:#ffe9e5}.issue-warning>span{color:#a36410;background:#fff1dd}.modal-callout{background:#fffaf3;border-radius:10px;margin-top:13px;padding:12px}.modal-callout strong{font-size:10px}.modal-callout p{color:#786650;margin:4px 0 0;font-size:9px;line-height:1.5}.upload-form{gap:12px;display:grid}.upload-drop{cursor:pointer;text-align:center;background:#fafcfc;border:2px dashed #ced6d9;border-radius:13px;align-content:center;place-items:center;gap:6px;min-height:170px;padding:22px;display:grid}.upload-drop:hover{border-color:var(--piloot-blue);background:#f7faff}.upload-drop>span{width:38px;height:38px;color:var(--piloot-blue);background:#edf3fa;border-radius:50%;place-items:center;font-size:17px;display:grid}.upload-drop strong{font-size:11px}.upload-drop small{color:var(--muted);font-size:8px}.visually-hidden{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.progress-panel{padding:6px 0}.progress-heading{background:#f7f9f8;border-radius:10px;align-items:center;gap:11px;padding:12px;display:flex}.progress-heading>div{flex-direction:column;gap:3px;display:flex}.progress-heading strong{font-size:11px}.progress-heading small{color:var(--muted);font-size:8px}.progress-spinner{background:var(--piloot-blue);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:17px;display:grid}.progress-panel ol{gap:0;margin:16px 0 0;padding:0;list-style:none;display:grid}.progress-panel li{color:#929a9f;align-items:center;gap:10px;min-height:42px;font-size:9px;display:flex;position:relative}.progress-panel li:not(:last-child):after{content:"";background:#dfe4e6;width:1px;position:absolute;top:30px;bottom:-6px;left:13px}.progress-panel li>span{z-index:1;background:#eef1f2;border-radius:50%;place-items:center;width:27px;height:27px;font-size:8px;font-weight:900;display:grid}.progress-panel li.done,.progress-panel li.active{color:var(--ink);font-weight:750}.progress-panel li.done>span{background:var(--piloot-green);color:#fff}.progress-panel li.active>span{background:var(--piloot-orange);color:#fff;box-shadow:0 0 0 5px var(--piloot-orange)}@supports (color:color-mix(in lab, red, red)){.progress-panel li.active>span{box-shadow:0 0 0 5px color-mix(in srgb, var(--piloot-orange) 12%, transparent)}}.import-failure{background:#fff8f7;border:1px solid #f0c9c4;border-radius:11px;align-items:flex-start;gap:11px;padding:13px;display:flex}.import-failure>span{color:#fff;background:#c9574d;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-weight:900;display:grid}.import-failure>div{flex:1}.import-failure strong{font-size:10px}.import-failure p{color:#7f5c58;margin:4px 0 0;font-size:9px;line-height:1.45}.import-review{gap:13px;display:grid}.review-summary{background:#f5f9e9;border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.review-summary>span{background:var(--piloot-green);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.review-summary>div{flex-direction:column;gap:2px;display:flex}.review-summary strong{font-size:10px}.review-summary small{color:#687751;font-size:8px}.review-table{border:1px solid var(--line);border-radius:10px;overflow:hidden}.review-table header,.review-table>div{grid-template-columns:minmax(160px,1fr) 80px 130px 70px;align-items:center;gap:10px;padding:9px 11px;display:grid}.review-table header{color:var(--muted);text-transform:uppercase;background:#f4f6f5;font-size:7px;font-weight:900}.review-table>div{border-top:1px solid var(--line);font-size:9px}.review-table .low-confidence{color:#8d641f;background:#fffaf3}.review-warning{color:#8d641f;background:#fffaf3;border-radius:8px;margin:0;padding:8px 10px;font-size:8px}.toast{z-index:100;color:#fff;background:#26343c;border-radius:11px;max-width:360px;padding:12px 15px;font-size:10px;line-height:1.45;position:fixed;bottom:82px;right:24px;box-shadow:0 13px 34px #0e1a2147}.toast.toast-error{background:#7f2f2f}.signin-shell{background:#fff;grid-template-columns:minmax(360px,520px) minmax(420px,1fr);min-height:100vh;display:grid}.signin-card{flex-direction:column;justify-content:center;min-height:100vh;padding:clamp(34px,7vw,88px);display:flex}.signin-logo-link{border-radius:8px;width:fit-content;margin-bottom:48px;display:block}.signin-logo-link .brand-logo{--brand-logo-width:230px}.signin-card h1{letter-spacing:-.055em;max-width:420px;margin:0;font-size:clamp(38px,5vw,62px);line-height:.98}.signin-card>p:not(.eyebrow){max-width:430px;color:var(--muted);margin:18px 0 24px;font-size:13px;line-height:1.65}.signin-form{gap:8px;width:min(430px,100%);display:grid}.signin-form label{color:#42515a;justify-content:space-between;align-items:baseline;font-size:10px;font-weight:850;display:flex}.signin-form label span,.signin-form small{color:var(--muted);font-size:8px;font-weight:600}.signin-form input{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fbfcfc;border-radius:9px;padding:0 12px}.signin-form input:focus-visible{border-color:var(--color-focus);outline:3px solid var(--color-focus)}.signin-form .microsoft-button{cursor:pointer;border:0;margin-top:5px}.microsoft-button{background:var(--color-action);color:#fff;width:fit-content;min-height:48px;box-shadow:0 9px 22px var(--brand-navy);border-radius:10px;align-items:center;gap:11px;padding:0 18px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.microsoft-button{box-shadow:0 9px 22px color-mix(in srgb, var(--brand-navy) 22%, transparent)}}.microsoft-button{font-size:11px;font-weight:850;text-decoration:none}.microsoft-mark{grid-template-columns:repeat(2,1fr);gap:2px;width:17px;height:17px;display:grid}.microsoft-mark i:first-child{background:#f35325}.microsoft-mark i:nth-child(2){background:#81bc06}.microsoft-mark i:nth-child(3){background:#05a6f0}.microsoft-mark i:nth-child(4){background:#ffba08}.signin-alert{background:#fffaf3;border:1px solid #efcfaa;border-radius:10px;flex-direction:column;gap:4px;max-width:430px;margin-bottom:15px;padding:12px;display:flex}.signin-alert strong{font-size:10px}.signin-alert span{color:#7b6852;font-size:9px;line-height:1.4}.signin-policy{border-top:1px solid var(--line);color:#748089;align-items:flex-start;gap:8px;max-width:430px;margin-top:24px;padding-top:18px;display:flex}.signin-policy>span{color:var(--piloot-lime);font-size:8px}.signin-policy p{margin:0;font-size:9px;line-height:1.5}.signin-art{background:linear-gradient(145deg, var(--brand-navy) 0%, var(--brand-navy) 58%, var(--brand-blue) 100%);align-content:center;place-items:center;gap:22px;padding:60px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.signin-art{background:linear-gradient(145deg, var(--brand-navy) 0%, color-mix(in srgb, var(--brand-navy) 48%, var(--brand-blue)) 58%, var(--brand-blue) 100%)}}.signin-art:before,.signin-art:after{content:"";border-radius:50%;position:absolute}.signin-art:before{border:70px solid var(--brand-lime);width:390px;height:390px;top:-140px;right:-90px}@supports (color:color-mix(in lab, red, red)){.signin-art:before{border:70px solid color-mix(in srgb, var(--brand-lime) 75%, transparent)}}.signin-art:after{border:85px solid var(--brand-orange);width:430px;height:430px;bottom:-180px;left:-130px}@supports (color:color-mix(in lab, red, red)){.signin-art:after{border:85px solid color-mix(in srgb, var(--brand-orange) 86%, transparent)}}.signin-week-preview{z-index:1;background:#f9fbfb;border:1px solid #ffffff4d;border-radius:22px;grid-template-columns:repeat(5,1fr);gap:9px;width:min(650px,88%);height:min(460px,56vh);padding:36px 20px 20px;display:grid;position:relative;transform:rotate(-3deg);box-shadow:0 25px 70px #12243247}.signin-week-preview:before{color:#71808a;letter-spacing:.12em;content:"WEEK 36 · GROEP 7/8";font-size:8px;font-weight:900;position:absolute;top:15px;left:20px}.signin-preview-day{grid-template-rows:18px minmax(0,1fr);gap:4px;min-width:0;display:grid}.signin-preview-day>strong{color:#70808b;letter-spacing:.08em;text-align:center;font-size:8px;font-weight:900}.signin-preview-column{background:repeating-linear-gradient(#e9eef0 0 1px,#0000 1px 9.09%);border-radius:8px;grid-template-rows:repeat(11,minmax(0,1fr));gap:2px;min-height:0;padding:3px;display:grid}.signin-preview-block{color:#17344b;border:1px solid #12344e12;border-radius:4px;align-items:center;min-width:0;padding:2px 5px;font-size:clamp(5px,.6vw,8px);font-weight:850;line-height:1.05;display:flex;overflow:hidden;box-shadow:0 1px 2px #1224320f}.signin-preview-block.tone-blue{background:#dcecf8}.signin-preview-block.tone-green{background:#e2f1df}.signin-preview-block.tone-lime{background:#eff5c6}.signin-preview-block.tone-orange{background:#ffead1}.signin-preview-block.tone-purple{background:#ebe5f4}.signin-preview-block.tone-break{color:#77858d;background:#f1f4f5;border-style:dashed;font-weight:750}.signin-art>p{z-index:1;color:#fff;letter-spacing:.07em;margin:0;font-size:11px;font-weight:850;position:relative}@media (max-width:1180px){.table-header,.table-row{grid-template-columns:minmax(210px,1.4fr) 80px 105px minmax(110px,.8fr) 100px 78px;gap:8px}.year-layout{grid-template-columns:minmax(0,1fr) 270px}.month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1050px){.assistant-fab.open{right:24px}.management-grid,.settings-grid,.year-layout{grid-template-columns:1fr}.year-sidebar{position:static}.table-header,.table-row{min-width:860px}.subject-table-card{overflow:auto}.curriculum-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.top-actions .save-status,.logout-button{display:none}.assistant-fab{bottom:82px;right:16px}.assistant-drawer{width:100%;top:66px;bottom:72px}.period-weeks,.month-grid,.teacher-add>div{grid-template-columns:1fr}.inline-add button{min-height:38px}.modal-backdrop{align-items:end;padding:0}.modal-card,.modal-card.compact,.modal-card.wide{border-radius:18px 18px 0 0;width:100%;max-height:92vh}.review-table{overflow-x:auto}.review-table header,.review-table>div{min-width:530px}.toast{max-width:none;bottom:140px;left:14px;right:14px}.curriculum-baseline-card>header,.curriculum-baseline-card>footer{flex-direction:column;align-items:stretch}.curriculum-area-grid{grid-template-columns:1fr}.signin-shell{display:block}.signin-card{min-height:100vh;padding:34px 24px}.signin-logo-link{margin-bottom:54px}.signin-logo-link .brand-logo{--brand-logo-width:190px}.signin-art{display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
