@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,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@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;--color-slate-50:#f8fafc;--color-neutral-100:#f5f5f5;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-semibold:600;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--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)}@supports (color:lab(0% 0 0)){:root,:host{--color-slate-50:lab(98.1434% -.369519 -1.05966);--color-neutral-100:lab(96.52% -.0000298023 .0000119209)}}}@layer base{*,:after,:before,::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]){appearance:button}::file-selector-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{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.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}}.mt-1{margin-top:var(--spacing)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.h-5{height:calc(var(--spacing) * 5)}.h-24{height:calc(var(--spacing) * 24)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-24{min-height:calc(var(--spacing) * 24)}.min-h-44{min-height:calc(var(--spacing) * 44)}.w-5{width:calc(var(--spacing) * 5)}.w-full{width:100%}.min-w-0{min-width:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}.rounded{border-radius:.25rem}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-neutral-100{background-color:var(--color-neutral-100)}.bg-slate-50{background-color:var(--color-slate-50)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.wrap-anywhere{overflow-wrap:anywhere}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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))}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}}:root{--ink-950:#13251f;--ink-800:#294139;--ink-650:#52675f;--ink-500:#71847c;--paper:#fffefa;--mist:#f4f7f3;--mist-deep:#eaf0eb;--line:#dce5de;--sage-700:#285f4d;--sage-600:#34745e;--sage-500:#498a73;--sage-100:#dcece4;--sand-500:#d18b54;--sand-100:#f7e6d6;--blue-100:#ddebf0;--danger:#a13f43;--danger-soft:#f9e5e4;--success:#28674d;--success-soft:#e1f1e8;--shadow-sm:0 1px 2px #13251f0d, 0 8px 24px #13251f0d;--shadow-lg:0 30px 80px #13251f21, 0 4px 18px #13251f14;--radius-sm:.65rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-xl:2rem;--shell:74rem;--font-sans:"Avenir Next", Avenir, "Segoe UI", Inter, system-ui, -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--paper);min-width:20rem;color:var(--ink-950);font-family:var(--font-sans);text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.6}.ph-shs-mapping-workspace,.ph-shs-programme-workspace{overflow-wrap:anywhere;min-width:0}.ph-shs-mapping-workspace :is(.card,.app-form,.field,.input),.ph-shs-programme-workspace :is(.card,.app-form,.field,.input){min-width:0;max-width:100%}.ph-pilot-review-status,.ph-temporary-admission{overflow-wrap:anywhere;min-width:0}.ph-temporary-admission li a{align-items:center;min-width:2.75rem;min-height:2.75rem;padding-block:.5rem;text-decoration:underline;display:inline-flex}.application-decision-history li{overflow-wrap:anywhere;min-width:0}.application-decision-history span{display:block}.ph-shs-completion{overflow-wrap:anywhere;gap:1rem;min-width:0;display:grid}.ph-shs-completion>*,.ph-shs-completion details{min-width:0;max-width:100%}.ph-shs-completion .card{padding:1.25rem}.ph-shs-completion summary{cursor:pointer;min-height:2.75rem;padding-block:.5rem}.student-administration-page .checkbox-field{align-items:flex-start;gap:.75rem;min-height:2.75rem;padding-block:.5rem;display:flex}.student-administration-page .checkbox-field input{flex:none;width:1.25rem;height:1.25rem;margin-top:.2rem}button,input{font:inherit}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:.08em}button,a,input{-webkit-tap-highlight-color:transparent}:focus-visible{outline-offset:3px;outline:3px solid #f0ae6d}::selection{background:var(--sage-100);color:var(--ink-950)}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em;text-wrap:balance;line-height:1.12}h1{font-size:clamp(2.65rem,9vw,5.7rem)}h2{font-size:clamp(1.65rem,4vw,2.8rem)}.site-root{min-height:100vh;overflow:clip}.shell{width:min(calc(100% - 2rem), var(--shell));margin-inline:auto}.shell--narrow{max-width:54rem}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--ink-950);color:#fff;padding:.7rem 1rem;transition:transform .16s;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.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}.site-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffefae0;border-bottom:1px solid #dce5deb8;position:relative}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;min-height:5rem;display:flex}.brand{align-items:center;gap:.72rem;min-width:max-content;text-decoration:none;display:inline-flex}.brand__mark{background:var(--ink-950);border-radius:.8rem;place-items:center;width:2.5rem;height:2.5rem;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1a}.brand__mark span{transform-origin:50%;background:#f5ddbb;border-radius:999px;width:1.2rem;height:.2rem;position:absolute}.brand__mark span:first-child{transform:translateY(-.38rem)rotate(24deg)}.brand__mark span:nth-child(2){transform:rotate(-24deg)}.brand__mark span:last-child{transform:translateY(.38rem)rotate(24deg)}.brand__copy{line-height:1.05;display:grid}.brand__copy strong{letter-spacing:-.02em;font-size:1rem}.brand__copy small{color:var(--ink-650);margin-top:.27rem;font-size:.7rem;display:none}.site-nav{align-items:center;gap:1.8rem;display:none}.site-nav a,.site-footer__links a{color:var(--ink-650);font-size:.9rem;font-weight:650;text-decoration:none;transition:color .14s}.site-nav a:hover,.site-footer__links a:hover{color:var(--sage-700)}.site-header__actions{align-items:center;gap:.5rem;display:flex}.locale-nav a{border-radius:var(--radius-sm);min-height:2.75rem;color:var(--ink-650);place-items:center;padding-inline:.65rem;font-size:.72rem;font-weight:800;text-decoration:none;display:grid}.button{cursor:pointer;text-align:center;border:1px solid #0000;border-radius:.85rem;justify-content:center;align-items:center;gap:.45rem;min-height:3.15rem;padding:.78rem 1.2rem;font-weight:750;line-height:1.2;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-2px)}.button:disabled{cursor:wait;opacity:.62}.button--primary{background:var(--ink-950);color:#fff;box-shadow:0 8px 20px #13251f26}.button--primary:hover:not(:disabled){background:var(--sage-700);box-shadow:0 12px 28px #13251f38}.button--secondary{border-color:var(--line);color:var(--ink-950);background:#ffffff8c}.button--compact{min-height:2.75rem;padding:.6rem .82rem;font-size:.82rem}.button--wide{width:100%}.hero{isolation:isolate;background:linear-gradient(145deg,#f7f8f3 0%,#f0f5f0 58%,#f8f2e9 100%);position:relative;overflow:hidden}.hero__wash{z-index:-1;background:radial-gradient(circle,#c9e0d3b3 0%,#c9e0d300 68%);border-radius:999px;width:36rem;height:36rem;position:absolute;inset:-18rem -16rem auto auto}.hero__grid{align-items:center;gap:3rem;min-height:calc(100svh - 5rem);padding-block:4.8rem 5rem;display:grid}.hero__copy{max-width:46rem}.eyebrow{color:var(--sage-600);letter-spacing:.13em;text-transform:uppercase;margin-bottom:1rem;font-size:.76rem;font-weight:850}.hero h1{max-width:13ch;margin-bottom:1.4rem}.hero__lede,.lede{max-width:43rem;color:var(--ink-650);font-size:clamp(1.05rem,2.2vw,1.3rem);line-height:1.65}.hero__actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.hero-board{border-radius:var(--radius-xl);width:min(100%,31rem);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffefad1;border:1px solid #ffffffb3;margin-inline:auto;padding:1rem;transform:rotate(.8deg)}.hero-board__header{grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.65rem .55rem 1rem;display:grid}.hero-board__header small,.hero-board__focus small,.hero-board__tiles small{color:var(--ink-500);margin-bottom:.08rem;font-size:.72rem;display:block}.hero-board__header strong,.hero-board__focus strong,.hero-board__tiles strong{font-size:.9rem;line-height:1.3;display:block}.hero-board__signal{background:var(--sage-500);width:.68rem;height:.68rem;box-shadow:0 0 0 .3rem var(--sage-100);border-radius:999px}.hero-board__avatar{background:linear-gradient(145deg, var(--sand-100), #e8c7a6);border-radius:999px;width:2.5rem;height:2.5rem}.hero-board__focus{background:var(--ink-950);color:#fff;border-radius:1.2rem;grid-template-columns:auto 1fr auto;align-items:center;gap:.85rem;padding:1.05rem;display:grid}.hero-board__focus small{color:#b9cac3}.hero-board__arrow{background:#ffffff1a;border-radius:999px;place-items:center;width:2.1rem;height:2.1rem;display:grid}.hero-board__tiles{gap:.75rem;margin-top:.75rem;display:grid}.hero-board__tiles>div{border:1px solid var(--line);background:#fff;border-radius:1.15rem;min-height:8rem;padding:1rem}.hero-board__mini{border-radius:999px;width:2.1rem;height:.34rem;margin-bottom:1.8rem;display:block}.hero-board__mini--sand{background:var(--sand-500)}.hero-board__mini--sage{background:var(--sage-500)}.section{padding-block:clamp(5rem,10vw,8.5rem)}.section--soft{border-block:1px solid var(--line);background:var(--mist)}.page-header{justify-content:space-between;align-items:end;gap:1.5rem;max-width:49rem;margin-bottom:clamp(2.2rem,5vw,4rem);display:flex}.page-header h1,.page-header h2{margin-bottom:.75rem;font-size:clamp(2rem,5vw,3.5rem)}.page-header .lede{margin-bottom:0;font-size:1.02rem}.question-grid,.feature-grid,.legal-grid{gap:1rem;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff}.question-card,.feature-card{min-height:16rem;padding:1.5rem;position:relative;overflow:hidden}.question-card__index{color:var(--sage-600);letter-spacing:.14em;margin-bottom:3rem;font-size:.75rem;font-weight:850;display:block}.question-card h3,.feature-card h3,.legal-grid h2{margin-bottom:.85rem;font-size:1.35rem}.question-card p,.feature-card p,.legal-grid p{color:var(--ink-650);margin-bottom:0}.feature-card{min-height:19rem}.feature-mark{background:var(--sage-100);border-radius:.95rem;place-items:center;width:3.1rem;height:3.1rem;margin-bottom:3.3rem;display:grid;position:relative}.feature-mark span{background:var(--sage-700);border-radius:999px;display:block;position:absolute}.feature-mark span:first-child{width:1.4rem;height:.16rem;transform:translateY(-.4rem)}.feature-mark span:nth-child(2){width:1.4rem;height:.16rem}.feature-mark span:last-child{width:.85rem;height:.16rem;transform:translate(-.27rem,.4rem)}.feature-mark--absence{background:var(--sand-100)}.feature-mark--absence span,.feature-mark--document span{background:#965b32}.feature-mark--form{background:var(--blue-100)}.feature-mark--form span{background:#396d7c}.feature-mark--document{background:#f3e6d7}.feature-card__line{background:var(--line);height:1px;position:absolute;bottom:1.6rem;left:1.5rem;right:1.5rem}.security-section{background:var(--ink-950);color:#fff;position:relative}.security-section:before{content:"";background:radial-gradient(circle at 82% 20%,#498a734d,#0000 36%);position:absolute;inset:0}.security-grid{gap:3rem;display:grid;position:relative}.security-grid h2{max-width:15ch}.security-grid .lede{color:#bdccc6}.text-link{color:var(--sage-700);font-weight:760}.text-link--light{color:#d8eadf}.security-list{align-content:center;gap:.75rem;display:grid}.security-list>div{border-radius:var(--radius-md);background:#ffffff0d;border:1px solid #ffffff1a;grid-template-columns:auto 1fr;align-items:center;gap:.8rem;padding:1rem;display:grid}.security-list span{color:#b9dfca;background:#dcece41f;border-radius:999px;place-items:center;width:1.8rem;height:1.8rem;display:grid}.security-list p{margin:0;font-weight:700}.site-footer{border-top:1px solid var(--line);background:var(--paper);padding-block:4rem 1.5rem}.site-footer__grid{gap:2.5rem;display:grid}.site-footer__tagline{max-width:30rem;color:var(--ink-650);margin:1.2rem 0 0}.site-footer__links{flex-wrap:wrap;align-content:start;gap:1rem 1.5rem;display:flex}.site-footer__bottom{border-top:1px solid var(--line);color:var(--ink-650);flex-direction:column;gap:.3rem;margin-top:3rem;padding-top:1.2rem;display:flex}.auth-page{background:var(--mist);min-height:calc(100svh - 5rem);padding-block:clamp(3rem,8vw,7rem);position:relative;overflow:hidden}.auth-page__glow{background:radial-gradient(circle, var(--sage-100), transparent 68%);border-radius:999px;width:30rem;height:30rem;position:absolute;top:-12rem;right:-12rem}.auth-layout{align-items:center;gap:2rem;display:grid;position:relative}.auth-intro{max-width:37rem}.auth-intro .page-header{margin-bottom:2rem}.auth-intro__aside{border-left:3px solid var(--sage-500);max-width:31rem;color:var(--ink-650);padding-left:1rem}.auth-card{width:min(100%,31rem);box-shadow:var(--shadow-lg);padding:clamp(1.3rem,5vw,2.2rem)}.form-stack{gap:1.15rem;display:grid}.field{gap:.45rem;display:grid}.field__label{color:var(--ink-800);font-size:.9rem;font-weight:750}.field__hint,.field__error,.form-required,.form-privacy-note{color:var(--ink-650);font-size:.82rem}.field__error{color:var(--danger)}.input{width:100%;min-height:3.2rem;color:var(--ink-950);background:#fff;border:1px solid #cbd8cf;border-radius:.75rem;padding:.72rem .9rem;transition:border .14s,box-shadow .14s;box-shadow:inset 0 1px 2px #13251f0a}.input:hover{border-color:#a9bbb0}.input:focus{border-color:var(--sage-600);outline:none;box-shadow:0 0 0 3px #498a732b}.badge{color:#283c34;overflow-wrap:anywhere;text-align:center;background:#edf1ee;border:1px solid #c9d5ce;border-radius:999px;align-items:center;max-width:100%;min-height:1.75rem;padding:.24rem .55rem;font-size:.74rem;font-weight:800;line-height:1.25;display:inline-flex}.badge--neutral{color:#283c34;background:#edf1ee;border-color:#c9d5ce}.badge--sage,.badge--success{color:#22583f;background:#e1f1e8;border-color:#aed3bf}.badge--sand,.badge--warning{color:#654714;background:#f8eddd;border-color:#e4c69d}.badge--blue,.badge--information{color:#214f62;background:#e5f0f4;border-color:#b7d2dc}.badge--danger{background:var(--danger-soft);color:#782d31;border-color:#e7b4b2}.status-message{border:1px solid #0000;border-radius:.75rem;margin:0;padding:.85rem 1rem;font-size:.9rem}.status-message--error{background:var(--danger-soft);color:#782d31;border-color:#efc4c2}.status-message--success{background:var(--success-soft);color:#22583f;border-color:#bedbca}.status-message--warning{color:#654714;background:#f8eddd;border-color:#e4c69d}.admin-details{min-width:min(20rem,78vw)}.admin-details>summary{cursor:pointer;width:fit-content;color:var(--sage-700);font-weight:760}.admin-details[open]>summary{margin-bottom:1rem}.admin-details .app-form{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--mist);margin-block:.8rem;padding:1rem}.plain-list{gap:.55rem;padding:0;list-style:none;display:grid}.plain-list>li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-block:.55rem;display:flex}.form-secondary-action{justify-self:center}.form-privacy-note{text-align:center;margin:0}.legal-page{background:linear-gradient(180deg, var(--mist) 0, var(--paper) 28rem);min-height:65vh;padding-block:clamp(4rem,9vw,7rem)}.legal-placeholder{border-radius:var(--radius-md);color:#714f29;background:#fff8ed;border:1px solid #e6cfae;margin-bottom:2rem;padding:1rem 1.2rem}.legal-placeholder p{margin:.25rem 0 0}.legal-grid .card{padding:1.4rem}.status-page{align-content:center;place-items:start;width:min(100% - 2rem,38rem);min-height:65vh;margin-inline:auto;padding-block:5rem;display:grid}.status-page h1{margin-bottom:1rem;font-size:clamp(2.3rem,8vw,4.4rem)}.status-page>p:not(.eyebrow){color:var(--ink-650);margin-bottom:2rem;font-size:1.1rem}.status-page__mark{background:var(--sage-100);border-radius:1.3rem;width:4.2rem;height:4.2rem;margin-bottom:2rem;position:relative;transform:rotate(-4deg)}.status-page__mark span{background:var(--sage-700);border-radius:999px;width:1.8rem;height:.2rem;position:absolute;top:50%;left:50%}.status-page__mark span:first-child{transform:translate(-50%,-50%)rotate(45deg)}.status-page__mark span:last-child{transform:translate(-50%,-50%)rotate(-45deg)}.status-page__mark--error{background:var(--danger-soft)}.status-page__mark--error span{background:var(--danger)}.loading-page{width:min(calc(100% - 2rem), var(--shell));align-content:center;gap:1rem;min-height:65vh;margin-inline:auto;display:grid}.loading-page__line,.loading-page__cards span{background:var(--mist-deep);border-radius:999px;display:block;overflow:hidden}.loading-page__line:after,.loading-page__cards span:after{content:"";background:linear-gradient(90deg,#0000,#ffffffbf,#0000);width:45%;height:100%;animation:1.25s infinite shimmer;display:block}.loading-page__line{width:min(100%,39rem);height:2.4rem}.loading-page__line--short{width:9rem;height:.8rem}.loading-page__cards{gap:1rem;margin-top:1.5rem;display:grid}.loading-page__cards span{border-radius:var(--radius-lg);height:10rem}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(240%)}}@media (min-width:38rem){.shell{width:min(calc(100% - 3rem), var(--shell))}.brand__copy small{display:block}.button--compact{padding-inline:1rem}.hero-board__tiles,.question-grid,.feature-grid,.legal-grid,.loading-page__cards{grid-template-columns:repeat(2,minmax(0,1fr))}.question-card:last-child{grid-column:1/-1}.legal-grid--single{grid-template-columns:1fr}.site-footer__bottom{flex-direction:row;justify-content:space-between}}@media (min-width:52rem){.site-nav{display:flex}.hero__grid{grid-template-columns:minmax(0,1.2fr) minmax(22rem,.8fr);gap:4rem}.hero-board{transform:rotate(1.2deg)translateY(1rem)}.question-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.question-card:last-child{grid-column:auto}.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.security-grid,.auth-layout{grid-template-columns:minmax(0,1.1fr) minmax(22rem,.9fr);gap:6rem}.site-footer__grid{grid-template-columns:1fr auto}}@media (forced-colors:active){.brand__mark,.feature-mark,.status-page__mark{border:1px solid canvastext}.button{border-color:buttontext}}.class-register-page{--class-register-surface:var(--surface)}@supports (color:color-mix(in lab, red, red)){.class-register-page{--class-register-surface:color-mix(in srgb, var(--surface) 94%, var(--blue-100))}}.class-register-toolbar,.class-register-child-selector,.class-register-management-filters,.class-register-entry-summary,.class-register-preview-controls,.class-register-export-card,.class-register-policy-editor,.class-register-attendance-summary{padding:clamp(1rem,3vw,1.4rem)}.class-register-toolbar,.class-register-preview-controls,.class-register-toolbar nav,.class-register-preview-controls>div,.class-register-management-filters__actions,.class-register-pagination,.class-register-entry-summary__badges,.class-register-lesson-card__badges,.class-register-transition-grid,.class-register-editor__submit,.class-register-correction-review>div,.class-register-editor__item-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.class-register-toolbar,.class-register-preview-controls{justify-content:space-between}.class-register-toolbar>div{gap:.15rem;display:grid}.class-register-toolbar time,.class-register-lesson-card time,.class-register-public-card time,.class-register-management-card time{color:var(--ink-650);font-variant-numeric:tabular-nums}.class-register-lesson-list,.class-register-public-list,.class-register-management-list,.class-register-policy-list,.class-register-correction-list,.class-register-projection ol,.class-register-projection ul,.class-register-history ol{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.class-register-lesson-card,.class-register-public-card,.class-register-management-card,.class-register-policy-card,.class-register-correction-card,.class-register-previous-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);min-width:0;box-shadow:var(--shadow-soft);gap:1rem;padding:1rem;display:grid}.class-register-lesson-card__time{white-space:nowrap;align-items:baseline;gap:.35rem;font-weight:850;display:flex}.class-register-lesson-card__body,.class-register-lesson-card__body header,.class-register-public-card header,.class-register-management-card header,.class-register-policy-card header,.class-register-correction-card header,.class-register-previous-card header{min-width:0}.class-register-lesson-card__body header,.class-register-public-card header,.class-register-management-card header,.class-register-policy-card header,.class-register-correction-card header,.class-register-previous-card header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.65rem;display:flex}.class-register-lesson-card__body header>span{border-radius:var(--radius-sm);border:1px solid;justify-content:center;align-items:center;min-width:3rem;min-height:2.6rem;padding:.35rem;font-weight:900;display:inline-flex}.class-register-lesson-card h3,.class-register-public-card h3,.class-register-management-card h3,.class-register-editor h3,.class-register-projection h3{overflow-wrap:anywhere;margin:0}.class-register-lesson-card p,.class-register-public-card p,.class-register-management-card p,.class-register-policy-card p,.class-register-correction-card p,.class-register-previous-card p,.class-register-editor p,.class-register-projection p{overflow-wrap:anywhere;margin-block:.35rem 0}.class-register-lesson-card dl,.class-register-entry-summary dl,.class-register-management-card dl,.class-register-projection__counts{grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));gap:.75rem;margin:0;display:grid}.class-register-lesson-card dl div,.class-register-entry-summary dl div,.class-register-management-card dl div,.class-register-projection__counts div{min-width:0}.class-register-lesson-card dt,.class-register-entry-summary dt,.class-register-management-card dt,.class-register-projection__counts dt{color:var(--ink-650);font-size:.78rem;font-weight:800}.class-register-lesson-card dd,.class-register-entry-summary dd,.class-register-management-card dd,.class-register-projection__counts dd{overflow-wrap:anywhere;margin:.2rem 0 0}.class-register-lesson-card__action{align-self:center}.class-register-public-card .class-register-projection{border-top:1px solid var(--line);padding-top:.85rem}.class-register-projection{gap:1.2rem;display:grid}.class-register-projection>section{gap:.65rem;min-width:0;display:grid}.class-register-projection li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--class-register-surface);gap:.45rem;min-width:0;padding:.8rem;display:grid}.class-register-projection li>.badge{justify-self:start}.class-register-projection__item-heading{flex-wrap:wrap;justify-content:space-between;gap:.5rem;display:flex}.class-register-projection__internal{border:2px solid var(--ink-650);border-radius:var(--radius-md);padding:1rem}.class-register-projection__privacy-hint{color:var(--ink-650);font-size:.9rem}.class-register-projection__delivery{font-weight:750}.class-register-editor,.class-register-editor__section{gap:1rem;min-width:0;display:grid}.class-register-editor__section{border-top:1px solid var(--line);padding-block:1rem}.class-register-editor__section>header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.class-register-editor__item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--class-register-surface);gap:.9rem;min-width:0;padding:1rem;display:grid}.class-register-editor__item>legend,.class-register-editor__audiences>legend,.class-register-editor__homework-targets>legend,.class-register-editor__homework-materials>legend{padding-inline:.3rem;font-weight:850}.class-register-editor__grid,.class-register-policy-editor__grid,.class-register-management-filters>form{grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:.85rem;min-width:0;display:grid}.class-register-editor textarea,.class-register-transition-form textarea,.class-register-correction-review textarea{resize:vertical;min-height:7rem}.class-register-editor__audiences{border:0;flex-wrap:wrap;gap:.75rem;padding:0;display:flex}.class-register-editor__homework-targets,.class-register-editor__homework-materials{border:1px solid var(--line);border-radius:var(--radius-sm);gap:.65rem;padding:.85rem;display:grid}.class-register-editor__optional-details{border:1px dashed var(--line);border-radius:var(--radius-sm);padding:.75rem}.class-register-editor__optional-details>summary{cursor:pointer;min-height:2.75rem;font-weight:800}.class-register-editor__existing-document{border-inline-start:.25rem solid var(--ink-650);align-self:center;padding:.75rem}.class-register-attendance-summary,.class-register-attendance-summary__header,.class-register-attendance-summary dl,.class-register-revision-comparison__grid,.class-register-revision-comparison__snapshot{gap:.85rem;min-width:0;display:grid}.class-register-attendance-summary__header{grid-template-columns:minmax(0,1fr) auto;align-items:start}.class-register-attendance-summary__header h2,.class-register-revision-comparison__snapshot h4{margin:0}.class-register-attendance-summary dl,.class-register-revision-comparison__snapshot dl{grid-template-columns:repeat(auto-fit,minmax(min(8rem,100%),1fr));margin:0}.class-register-attendance-summary dd,.class-register-revision-comparison__snapshot dd{margin:.2rem 0 0;font-weight:800}.class-register-revision-comparison{border:1px solid var(--line);border-radius:var(--radius-sm);padding:.75rem}.class-register-revision-comparison>summary{cursor:pointer;min-height:2.75rem;font-weight:800}.class-register-revision-comparison__snapshot{border:1px solid var(--line);border-radius:var(--radius-sm);align-content:start;padding:.75rem}.class-register-editor__item-actions .button,.class-register-transition-grid .button{min-height:2.75rem}.class-register-correction-editor,.class-register-history{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);padding:1rem}.class-register-correction-editor>summary,.class-register-history>summary{cursor:pointer;min-height:2.75rem;font-weight:850}.class-register-transition-grid{align-items:flex-start}.class-register-transition-form,.class-register-correction-review,.class-register-copy-form,.class-register-policy-editor>form,.class-register-export-card form{gap:.8rem;min-width:min(100%,28rem);display:grid}.class-register-previous-card__orientation,.class-register-copy-form>fieldset{border:1px solid var(--line);border-radius:var(--radius-sm);gap:.65rem;padding:.85rem;display:grid}.class-register-previous-card__orientation{margin:0;list-style-position:inside}.class-register-copy-form>fieldset>legend{padding-inline:.3rem;font-weight:850}.class-register-policy-editor__choices{gap:.65rem;margin-block:1rem;display:grid}.class-register-management-filters__choices{border:1px solid var(--line);border-radius:var(--radius-sm);flex-wrap:wrap;grid-column:1/-1;gap:.75rem 1rem;padding:.85rem;display:flex}.class-register-management-filters__choices>legend{padding-inline:.3rem;font-weight:850}.class-register-management-filters__actions{grid-column:1/-1}.dashboard-subsection{gap:.8rem;display:grid}.dashboard-subsection>h3{margin:0}.class-register-pagination{justify-content:space-between;margin-top:1rem}@media (min-width:52rem){.class-register-lesson-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:start}.class-register-projection:not(.class-register-projection--compact){grid-template-columns:repeat(2,minmax(0,1fr))}.class-register-projection:not(.class-register-projection--compact)>:is(.class-register-projection__internal,.class-register-projection__delivery){grid-column:1/-1}.class-register-revision-comparison__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:38rem){.class-register-toolbar,.class-register-preview-controls,.class-register-toolbar nav,.class-register-preview-controls>div,.class-register-transition-grid,.class-register-editor__item-actions,.class-register-correction-review>div{flex-direction:column;align-items:stretch}.class-register-management-filters__choices{display:grid}.class-register-attendance-summary__header{grid-template-columns:minmax(0,1fr)}.class-register-attendance-summary__header .button,.class-register-toolbar .button,.class-register-preview-controls .button,.class-register-transition-grid .button,.class-register-editor__item-actions .button,.class-register-copy-form .button,.class-register-correction-review .button,.class-register-lesson-card__action .button{width:100%}.class-register-lesson-card,.class-register-public-card,.class-register-management-card,.class-register-policy-card,.class-register-correction-card,.class-register-previous-card,.class-register-editor__item{padding:.85rem}}@media (forced-colors:active){.class-register-lesson-card,.class-register-public-card,.class-register-management-card,.class-register-policy-card,.class-register-correction-card,.class-register-previous-card,.class-register-editor__item,.class-register-correction-editor,.class-register-history,.class-register-attendance-summary,.class-register-revision-comparison,.class-register-revision-comparison__snapshot,.class-register-projection li,.class-register-projection__internal{border:1px solid canvastext}}.attendance-page,.attendance-page *{min-width:0}.attendance-page select,.attendance-page textarea{font:inherit}.attendance-toolbar,.attendance-child-selector,.attendance-session-facts,.attendance-session-summary{padding:clamp(1rem,3vw,1.4rem)}.attendance-toolbar{flex-direction:column;gap:1rem;margin-block-end:1.5rem;display:flex}.attendance-toolbar__date{gap:.15rem;display:grid}.attendance-toolbar__date strong{font-size:1.15rem}.attendance-toolbar__date time{color:var(--ink-650);font-variant-numeric:tabular-nums;font-size:.78rem}.attendance-toolbar__navigation{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.attendance-toolbar__navigation .button{text-align:center;width:100%;min-height:2.9rem;padding-inline:.45rem}.attendance-child-selector{margin-block-end:1.5rem}.attendance-child-selector .app-form{gap:.8rem;display:grid}.attendance-stats,.attendance-session-summary__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-session-summary__stats{margin-block-end:0}.attendance-session-summary__stats .stat-card,.attendance-stats .stat-card{min-height:8.2rem}.attendance-session-list,.attendance-own-records,.attendance-roster{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.attendance-session-card,.attendance-own-record,.attendance-participant{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff}.attendance-session-card{border-inline-start:.35rem solid var(--sage-500);gap:1rem;padding:1rem;display:grid}.attendance-session-card__time,.attendance-own-record__time{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:.3rem;margin:0;font-weight:800;display:flex}.attendance-session-card__body{gap:.85rem;display:grid}.attendance-session-card__body header,.attendance-own-record header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.attendance-session-card__body header{justify-content:flex-start}.attendance-session-card__body h3,.attendance-own-record h3{overflow-wrap:anywhere;margin:0;font-size:1.1rem}.attendance-session-card__body header p{color:var(--ink-650);margin:.2rem 0 0;font-size:.84rem}.attendance-session-card__subject-code,.attendance-own-record header>div>span{border-radius:var(--radius-sm);min-width:2.8rem;min-height:2.8rem;color:var(--sage-700);letter-spacing:.025em;border:1px solid;flex:none;justify-content:center;align-items:center;padding:.35rem;font-size:.78rem;font-weight:900;display:inline-flex}.attendance-session-card dl,.attendance-own-record dl{gap:.45rem;margin:0;display:grid}.attendance-session-card dl>div,.attendance-own-record dl>div{grid-template-columns:minmax(5.5rem,34%) minmax(0,1fr);gap:.6rem;display:grid}.attendance-session-card dt,.attendance-own-record dt{color:var(--ink-650);font-size:.78rem;font-weight:800}.attendance-session-card dd,.attendance-own-record dd{overflow-wrap:anywhere;margin:0}.attendance-session-card__status{color:var(--ink-650);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.attendance-session-card__action,.attendance-session-card__action form,.attendance-session-card__action .button{width:100%}.attendance-session-card__action p{color:var(--ink-650);margin:0;font-size:.84rem}.attendance-own-record{gap:.85rem;padding:1rem;display:grid}.attendance-own-record header>div{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.65rem;display:grid}.attendance-session-facts-grid{gap:1rem;margin-block-end:clamp(2rem,5vw,3rem);display:grid}.attendance-session-facts__heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.attendance-session-facts__heading h2,.attendance-session-summary h2,.attendance-roster-section__heading h2{margin:0;font-size:clamp(1.3rem,4vw,1.75rem)}.attendance-session-facts__visible-info{border-inline-start:.3rem solid var(--sage-500);border-radius:var(--radius-sm);background:var(--mist);overflow-wrap:anywhere;margin:1rem 0 0;padding:.8rem}.attendance-roster-section{min-width:0}.attendance-roster-section__heading{gap:.65rem;margin-block-end:1rem;display:grid}.attendance-roster-section__heading .eyebrow,.attendance-roster-section__heading p{margin:0}.attendance-roster-section__heading>p{max-width:42rem;color:var(--ink-650);font-size:.84rem}.attendance-roster-form{gap:1rem;display:grid}.attendance-roster__bulk-actions{flex-wrap:wrap;gap:.6rem;display:flex}.attendance-roster__bulk-actions .button,.attendance-roster__filters .button{flex:12rem}.attendance-roster__filters{flex-wrap:wrap;gap:.6rem;display:flex}.attendance-roster__filters .button[aria-pressed=true]{border-color:var(--sage-700);background:var(--mist);box-shadow:0 0 0 2px #498a7326}.attendance-participant{gap:.9rem;min-inline-size:0;margin:0;padding:1rem;display:grid}.attendance-participant:disabled{opacity:1}.attendance-participant legend{overflow-wrap:anywhere;width:100%;padding:0 .25rem;font-size:1rem;font-weight:850}.attendance-participant legend small{color:var(--ink-650);font-size:.75rem;font-weight:700;display:block}.attendance-participant__status{display:flex}.attendance-participant__sources{border-radius:var(--radius-sm);background:var(--blue-100);color:var(--ink-800);gap:.25rem;margin:0;padding:.7rem .8rem .7rem 1.8rem;font-size:.82rem;display:grid}.attendance-participant__fields{gap:.8rem;display:grid}.attendance-participant__note{resize:vertical;min-height:7rem}.attendance-roster__actions{z-index:10;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffefaf0;grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr));gap:.6rem;padding:.75rem;padding-block-end:max(.75rem, env(safe-area-inset-bottom));display:grid;position:sticky;bottom:.5rem}.attendance-roster__actions .button{width:100%;min-height:3rem}.attendance-management-filters{margin-block-end:clamp(1.5rem,4vw,2.5rem);padding:clamp(1rem,3vw,1.4rem)}.attendance-management-filters__form,.attendance-policy__form,.attendance-export-card form,.attendance-correction-form,.attendance-session-workflow-card form,.attendance-participant-workflow form,.attendance-correction-actions form{gap:1rem;min-width:0;display:grid}.attendance-management-filters__actions,.attendance-correction-actions{gap:.6rem;min-width:0;display:grid}.attendance-management-filters__actions .button,.attendance-policy__form>.button,.attendance-export-card .button,.attendance-correction-form>.button,.attendance-session-workflow-card .button,.attendance-participant-workflow .button,.attendance-correction-actions .button{width:100%;min-height:3rem}.attendance-policy-list,.attendance-management-list,.attendance-session-workflows,.attendance-participant-workflows,.attendance-correction-list{gap:.85rem;min-width:0;margin:0;padding:0;list-style:none;display:grid}.attendance-policy,.attendance-management-record,.attendance-session-workflow-card,.attendance-participant-workflow,.attendance-correction-card{border:1px solid var(--line);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-sm);background:#fff;transition:border-color .14s,box-shadow .14s}.attendance-policy:focus-within,.attendance-management-record:focus-within,.attendance-session-workflow-card:focus-within,.attendance-participant-workflow:focus-within,.attendance-correction-card:focus-within{border-color:var(--sage-600);box-shadow:0 0 0 3px #498a7326}.attendance-policy>summary{cursor:pointer;overflow-wrap:anywhere;min-height:3.25rem;padding:.9rem 1rem}.attendance-policy>summary::marker{color:var(--sage-700)}.attendance-policy>summary>span{vertical-align:middle;gap:.12rem;max-width:calc(100% - 2rem);margin-inline:.35rem .55rem;display:inline-grid}.attendance-policy>summary strong,.attendance-policy>summary small{overflow-wrap:anywhere}.attendance-policy>summary small{color:var(--ink-650);font-size:.76rem;font-weight:700}.attendance-policy>summary .badge{vertical-align:middle;margin-block:.3rem}.attendance-policy[open]>summary{border-block-end:1px solid var(--line);background:var(--mist)}.attendance-policy__form{padding:clamp(1rem,3vw,1.4rem)}.attendance-policy__choices,.attendance-policy__fields,.attendance-correction-form__fields{gap:.8rem;min-width:0;display:grid}.attendance-policy__choices .app-choice{width:100%}.attendance-management-record,.attendance-session-workflow-card,.attendance-participant-workflow,.attendance-correction-card{overflow-wrap:anywhere;gap:.85rem;padding:1rem;display:grid}.attendance-management-record>header,.attendance-participant-workflow>header,.attendance-correction-card>header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.65rem;min-width:0;display:flex}.attendance-management-record>header>div,.attendance-participant-workflow>header>div,.attendance-correction-card>header>div{min-width:0}.attendance-management-record h3,.attendance-participant-workflow h3,.attendance-correction-card h3,.attendance-session-workflow-card h3{overflow-wrap:anywhere;margin:.2rem 0 0;font-size:1.05rem}.attendance-management-record time,.attendance-correction-card time{color:var(--ink-650);font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:750}.attendance-management-record>p,.attendance-session-workflow-card>p,.attendance-participant-workflow>p,.attendance-correction-card>p{color:var(--ink-650);margin:0}.attendance-management-record dl,.attendance-correction-card dl{gap:.5rem;min-width:0;margin:0;display:grid}.attendance-management-record dl>div,.attendance-correction-card dl>div{grid-template-columns:minmax(6.5rem,38%) minmax(0,1fr);gap:.6rem;min-width:0;display:grid}.attendance-management-record dt,.attendance-correction-card dt{color:var(--ink-650);font-size:.78rem;font-weight:800}.attendance-management-record dd,.attendance-correction-card dd{overflow-wrap:anywhere;min-width:0;margin:0}.attendance-management-record>.button{width:100%}.attendance-management-record__badges{flex-wrap:wrap;gap:.45rem;min-width:0;display:flex}.attendance-pagination{flex-wrap:wrap;gap:.6rem;min-width:0;margin-block-start:1rem;display:flex}.attendance-pagination .button{flex:12rem;min-width:min(12rem,100%)}.attendance-export-card{gap:1rem;min-width:0;margin-block-end:1rem;padding:clamp(1rem,3vw,1.4rem);display:grid}.attendance-export-card>p{color:var(--ink-650);margin:0}.attendance-export-card form{align-items:end}.attendance-correction-form{width:100%}.attendance-correction-form textarea{resize:vertical;min-height:7rem}.attendance-own-record__correction{border-block-start:1px solid var(--line);min-width:0;padding-block-start:.8rem}.attendance-own-record__correction>summary{cursor:pointer;min-height:3rem;color:var(--sage-700);overflow-wrap:anywhere;padding:.65rem .2rem;font-weight:800}.attendance-own-record__correction[open]>summary{margin-block-end:.8rem}.attendance-own-record__correction-history,.attendance-previous-session,.attendance-workflow-details{min-width:0}.attendance-own-record__correction-history>summary,.attendance-previous-session>summary,.attendance-workflow-details>summary{cursor:pointer;min-height:3rem;color:var(--sage-700);overflow-wrap:anywhere;padding:.65rem .2rem;font-weight:800}.attendance-own-correction-list,.attendance-previous-session__participants{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.attendance-own-correction-list>li,.attendance-previous-session__participants>li{border:1px solid var(--line);border-radius:var(--radius-md);overflow-wrap:anywhere;gap:.65rem;min-width:0;padding:.75rem;display:grid}.attendance-own-correction-list>li>div,.attendance-previous-session__participants>li>div{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}.attendance-own-correction-list time{color:var(--ink-650);font-size:.8rem}.attendance-own-correction-list .button,.attendance-workflow-details .button{width:100%;min-height:3rem}.attendance-previous-session{margin-block-end:1.25rem;padding:1rem}.attendance-previous-session__content{gap:.85rem;padding-block-start:.75rem;display:grid}.attendance-previous-session__content>p{color:var(--ink-650);margin:0}.attendance-workflow-details[open]>summary{margin-block-end:.75rem}.attendance-session-workflows,.attendance-participant-workflows{margin-block:1.25rem}.attendance-session-workflow-card,.attendance-participant-workflow{align-content:start}.attendance-session-workflow-card textarea,.attendance-participant-workflow textarea,.attendance-correction-actions textarea{resize:vertical;min-height:6.5rem}.attendance-correction-list{padding-block-start:.15rem}.attendance-correction-card{border-radius:var(--radius-md);background:var(--mist);box-shadow:none}.attendance-correction-actions{border-block-start:1px solid var(--line);padding-block-start:.8rem}@media (min-width:40rem){.attendance-toolbar{flex-direction:row;justify-content:space-between;align-items:center}.attendance-toolbar__navigation{flex-wrap:wrap;display:flex}.attendance-toolbar__navigation .button{width:auto}.attendance-child-selector .app-form{grid-template-columns:minmax(12rem,1fr) auto;align-items:end}.attendance-session-card{grid-template-columns:auto minmax(0,1fr)}.attendance-session-card__action{grid-column:2}.attendance-participant__fields{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-participant__fields .field:last-child{grid-column:1/-1}.attendance-management-filters__form,.attendance-policy__fields,.attendance-correction-form__fields{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-management-filters__actions,.attendance-policy__choices,.attendance-correction-actions{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr))}.attendance-correction-form__fields>.field:has(textarea){grid-column:1/-1}.attendance-export-card form{grid-template-columns:minmax(10rem,1fr) auto}.attendance-export-card form .button{width:auto}.attendance-management-record dl,.attendance-correction-card dl{grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr))}.attendance-management-record dl>div,.attendance-correction-card dl>div{display:block}.attendance-management-record>.button{justify-self:start;width:auto}.attendance-session-workflows,.attendance-participant-workflows{grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr))}}@media (min-width:64rem){.attendance-session-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:start}.attendance-session-card__action{grid-column:auto;width:auto}.attendance-session-card__action form,.attendance-session-card__action .button{width:auto}.attendance-session-facts-grid{grid-template-columns:minmax(18rem,.8fr) minmax(28rem,1.2fr);align-items:start}.attendance-roster-section__heading{grid-template-columns:minmax(0,1fr) minmax(18rem,.65fr);align-items:end}.attendance-participant__fields{grid-template-columns:repeat(4,minmax(0,1fr))}.attendance-management-filters__form,.attendance-policy__fields{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (forced-colors:active){.attendance-session-card,.attendance-own-record,.attendance-participant,.attendance-roster__actions,.attendance-session-card__subject-code,.attendance-own-record header>div>span,.attendance-policy,.attendance-management-record,.attendance-export-card,.attendance-own-record__correction,.attendance-own-record__correction-history,.attendance-own-correction-list>li,.attendance-previous-session,.attendance-previous-session__participants>li,.attendance-session-workflow-card,.attendance-participant-workflow,.attendance-correction-card{border:1px solid canvastext}.attendance-policy:focus-within,.attendance-management-record:focus-within,.attendance-session-workflow-card:focus-within,.attendance-participant-workflow:focus-within,.attendance-correction-card:focus-within{outline-offset:2px;box-shadow:none;outline:2px solid highlight}.attendance-policy[open]>summary,.attendance-own-record__correction,.attendance-correction-actions{border-color:canvastext}}.timetable-toolbar{min-width:0}.timetable-toolbar form,.timetable-navigation,.timetable-navigation__views,.timetable-navigation__period,.timetable-inline-actions{flex-wrap:wrap;align-items:end;gap:.65rem;min-width:0;display:flex}.timetable-toolbar .field{flex:15rem;min-width:min(15rem,100%)}.timetable-navigation{justify-content:space-between}.timetable-management-grid{gap:1rem;min-width:0;display:grid}.timetable-management-card,.timetable-resource-list,.timetable-resource-item,.timetable-create-panel{min-width:0}.timetable-management-card>h3,.timetable-management-card>h4{margin-block-start:0}.timetable-create-panel,.timetable-resource-item{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;padding:.75rem}.timetable-create-panel+.timetable-resource-list,.timetable-resource-item+.timetable-resource-item{margin-block-start:.75rem}.timetable-create-panel>summary,.timetable-resource-item>summary{cursor:pointer;min-height:2.75rem;font-weight:800}.timetable-create-panel[open]>summary,.timetable-resource-item[open]>summary{margin-block-end:1rem}.timetable-slot-row{border:1px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;min-width:0;margin-block:.75rem;padding:.75rem;display:grid}.timetable-slot-row .input,.timetable-management-card .input,.timetable-multiselect{width:100%;min-width:0;max-width:100%}.timetable-multiselect{min-height:8rem}.timetable-detail__facts{grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:.75rem;display:grid}.timetable-detail__facts div{border-radius:var(--radius-sm);background:var(--surface-subtle,#f5f7f8);min-width:0;padding:.75rem}.timetable-detail__facts dt{color:var(--ink-650);font-size:.78rem;font-weight:800}.timetable-detail__facts dd{overflow-wrap:anywhere;margin:.25rem 0 0}.timetable-detail__internal{border-inline-start:.3rem solid var(--sand-500,#957540);background:var(--sand-100,#f7f0df);padding:.75rem}.timetable-conflict-list,.timetable-simple-list,.timetable-version-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.timetable-pagination{flex-wrap:wrap;gap:.65rem;margin-block-start:1rem;display:flex}.timetable-conflict,.timetable-simple-list>li,.timetable-version-list>li{border:1px solid var(--line);border-radius:var(--radius-md);overflow-wrap:anywhere;min-width:0;padding:.75rem}.timetable-conflict--blocking{border-inline-start:.35rem solid var(--danger-600,#a83b3b)}.timetable-conflict--warning{border-inline-start:.35rem solid var(--sand-600,#87672d)}.timetable-simple-list>li,.timetable-end-form{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;min-width:0;display:flex}.timetable-end-form .input{width:auto;min-width:10rem}@media (min-width:60rem){.timetable-management-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.timetable-slot-row{grid-template-columns:1.15fr 1fr .7fr 1.5fr 1fr 1fr .7fr}}.ph-health-workspace{overflow-wrap:anywhere;gap:1rem;min-width:0;display:grid}.ph-health-workspace>*,.ph-health-workspace select{min-width:0;max-width:100%}.ph-health-workspace summary{cursor:pointer;min-height:2.75rem;padding-block:.625rem}@media (max-width:35rem){.app-page .page-header{flex-direction:column;align-items:stretch;width:100%;min-width:0}.app-page .page-header>*,.app-page .page-header__action,.app-page .page-header__action .button{width:100%;min-width:0;max-width:100%}.timetable-navigation__views,.timetable-navigation__period,.timetable-navigation__views .button,.timetable-navigation__period .button,.timetable-inline-actions,.timetable-inline-actions form,.timetable-inline-actions .button{width:100%}.timetable-navigation__period{grid-template-columns:1fr;display:grid}.timetable-slot-row{grid-template-columns:minmax(0,1fr)}.timetable-lesson{overflow:hidden}}@media (forced-colors:active){.timetable-create-panel,.timetable-resource-item,.timetable-conflict,.timetable-simple-list>li,.timetable-version-list>li{border:1px solid canvastext}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html:has(.ph-registrar-page){scroll-behavior:auto;scroll-padding-block-start:5.5rem}.ph-registrar-page>a{box-sizing:border-box;overflow-wrap:anywhere;align-items:center;min-block-size:2.75rem;max-inline-size:100%;margin-inline-end:.75rem;padding-block:.5rem;display:inline-flex}.ph-registrar-page summary{cursor:pointer;min-block-size:2.75rem;padding-block:.625rem;scroll-margin-block-start:5.5rem}.ph-sf1-remarks{overflow-wrap:anywhere}.app-shell{min-height:100svh;color:var(--ink-950);background:#f5f7f5}.app-topbar{z-index:35;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffefaeb;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;min-height:4.5rem;padding:.65rem 1rem;display:grid;position:sticky;top:0}.app-topbar__identity{min-width:0;line-height:1.2;display:grid}.app-topbar__identity strong,.app-topbar__identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-topbar__identity strong{font-size:.9rem}.app-topbar__identity small{color:var(--ink-650);margin-top:.18rem;font-size:.72rem}.app-topbar__actions{align-items:center;gap:.5rem;display:flex}.app-icon-button{border:1px solid var(--line);width:2.85rem;min-width:2.85rem;height:2.85rem;color:var(--ink-800);cursor:pointer;background:#fff;border-radius:.8rem;place-items:center;padding:0;text-decoration:none;display:inline-grid;position:relative}.app-menu-button>span{background:currentColor;border-radius:999px;width:1.15rem;height:.12rem;margin-block:.12rem;display:block}.app-notification-button__bell{border:.12rem solid;border-bottom:0;border-top-left-radius:.65rem;border-top-right-radius:.65rem;width:1rem;height:1.08rem;position:relative}.app-notification-button__bell:after{content:"";background:currentColor;border-radius:999px;height:.12rem;position:absolute;bottom:-.24rem;left:-.26rem;right:-.26rem}.app-notification-button__count{background:var(--danger);color:#fff;border:2px solid #fff;border-radius:999px;place-items:center;min-width:1.35rem;height:1.35rem;padding-inline:.25rem;font-size:.64rem;font-weight:850;display:grid;position:absolute;top:-.35rem;right:-.35rem}.app-main{width:100%;max-width:100rem;margin-inline:auto;padding:1.25rem 1rem 4rem}.app-sidebar{background:var(--ink-950);color:#fff}.app-sidebar--desktop{display:none}.app-sidebar__brand{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.8rem;min-height:4.5rem;margin-bottom:1rem;display:grid}.app-sidebar__brand>div{min-width:0;line-height:1.16;display:grid}.app-sidebar__brand strong,.app-sidebar__brand small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-sidebar__brand small{color:#a9beb5;margin-top:.25rem;font-size:.7rem}.app-product-mark{background:#ffffff12;border:1px solid #ffffff1f;border-radius:.82rem;place-items:center;width:2.55rem;height:2.55rem;display:grid;position:relative}.app-product-mark span{background:#f2d7ad;border-radius:999px;width:1.2rem;height:.16rem;position:absolute}.app-product-mark span:first-child{transform:translateY(-.36rem)rotate(24deg)}.app-product-mark span:nth-child(2){transform:rotate(-24deg)}.app-product-mark span:last-child{transform:translateY(.36rem)rotate(24deg)}.app-nav ul{gap:.28rem;margin:0;padding:0;list-style:none;display:grid}.app-nav__link{color:#c3d1cb;border:1px solid #0000;border-radius:.78rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;min-height:3rem;padding:.68rem .8rem;font-size:.9rem;font-weight:680;text-decoration:none;transition:background .14s,color .14s;display:grid}.app-nav__link:hover{color:#fff;background:#ffffff0f}.app-nav__link--active{color:#fff;background:#ffffff1a;border-color:#ffffff14}.app-nav__icon{place-items:center;width:1.35rem;height:1.35rem;display:grid}.app-nav__icon>svg{width:100%;height:100%}.app-nav__badge{color:#fff;text-align:center;background:#ffffff1c;border-radius:999px;min-width:1.5rem;padding:.1rem .35rem;font-size:.68rem}.app-roles{flex-wrap:wrap;gap:.35rem;margin-top:auto;padding-top:1.5rem;display:flex}.app-roles span{color:#a9beb5;background:#ffffff0d;border:1px solid #ffffff17;border-radius:.45rem;padding:.28rem .48rem;font-size:.65rem;line-height:1.2}.app-drawer-layer{z-index:80;position:fixed;inset:0}.app-drawer-backdrop{cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0b181494;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.app-sidebar--drawer{flex-direction:column;width:min(88vw,21rem);height:100%;padding:1rem;display:flex;position:relative;overflow-y:auto;box-shadow:20px 0 70px #00000047}.app-drawer__heading{justify-content:space-between;align-items:center;gap:1rem;min-height:3rem;margin-bottom:.5rem;display:flex}.app-drawer__close{color:#fff;background:#ffffff12;border-color:#ffffff1f}.app-drawer__close span{background:currentColor;border-radius:999px;width:1rem;height:.12rem;position:absolute}.app-drawer__close span:first-child{transform:rotate(45deg)}.app-drawer__close span:last-child{transform:rotate(-45deg)}.stats-grid,.quick-action-grid{grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:1rem;min-width:0;display:grid}.stats-grid{margin-block-end:clamp(1.5rem,4vw,2.5rem)}.quick-action{border:1px solid var(--line);border-radius:var(--radius-md);min-width:0;min-height:6rem;color:var(--ink-950);box-shadow:var(--shadow-sm);overflow-wrap:anywhere;background:#fff;align-content:start;gap:.38rem;padding:1rem;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.quick-action:hover{border-color:#a9bbb0;transform:translateY(-2px);box-shadow:0 12px 30px #13251f1a}.quick-action:focus-visible{border-color:var(--sage-600);box-shadow:0 0 0 4px #498a7330}.quick-action strong{font-size:.98rem;line-height:1.3}.quick-action span{color:var(--ink-650);font-size:.84rem;line-height:1.45}.dashboard-section{margin-bottom:clamp(2rem,5vw,3.5rem)}.dashboard-section__header{flex-direction:column;gap:1rem;margin-bottom:1.2rem;display:flex}.dashboard-section__header h2{margin-bottom:.3rem;font-size:clamp(1.35rem,4vw,1.85rem)}.dashboard-section__header p{color:var(--ink-650);margin:0}.dashboard-section__action{flex-wrap:wrap;gap:.6rem;display:flex}.stat-card{border-top:3px solid var(--line);min-height:9.5rem;padding:1.15rem}.stat-card--sage{border-top-color:var(--sage-500)}.stat-card--sand{border-top-color:var(--sand-500)}.stat-card--blue{border-top-color:#5791a2}.stat-card--danger{border-top-color:var(--danger)}.stat-card__top{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.stat-card__top p{color:var(--ink-650);margin:0;font-size:.84rem;font-weight:680}.stat-card__icon{background:var(--mist);width:2rem;height:2rem;color:var(--sage-700);border-radius:.6rem;place-items:center;display:grid}.stat-card__value{letter-spacing:-.04em;margin-top:1rem;font-size:clamp(1.6rem,5vw,2.2rem);line-height:1;display:block}.stat-card small{color:var(--ink-650);margin-top:.6rem;display:block}.timeline{margin:0;padding:0;list-style:none}.timeline__item{grid-template-columns:1.1rem minmax(0,1fr);gap:.75rem;display:grid;position:relative}.timeline__item:not(:last-child):before{background:var(--line);content:"";width:1px;position:absolute;top:1.25rem;bottom:-.25rem;left:.5rem}.timeline__marker{z-index:1;background:var(--ink-500);width:.7rem;height:.7rem;box-shadow:0 0 0 1px var(--line);border:2px solid #fff;border-radius:999px;margin-top:1rem;margin-left:.18rem;position:relative}.timeline__item--sage .timeline__marker{background:var(--sage-500)}.timeline__item--sand .timeline__marker{background:var(--sand-500)}.timeline__item--blue .timeline__marker{background:#5791a2}.timeline__item--danger .timeline__marker{background:var(--danger)}.timeline__row,.timeline__link{border-radius:.8rem;gap:.65rem;min-height:4.2rem;padding:.75rem .85rem;text-decoration:none;display:grid}.timeline__link:hover{box-shadow:var(--shadow-sm);background:#fff}.timeline__content strong{font-size:.94rem}.timeline__content p{color:var(--ink-650);margin:.25rem 0 0;font-size:.84rem}.timeline__meta{color:var(--ink-650);flex-wrap:wrap;align-items:start;gap:.4rem;font-size:.74rem;display:flex}.timeline__meta span{background:var(--mist-deep);border-radius:999px;padding:.14rem .4rem}.table-wrap{border:1px solid var(--line);border-radius:var(--radius-md);width:100%;box-shadow:var(--shadow-sm);background:#fff;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.88rem}.data-table th,.data-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:.85rem 1rem}.data-table th{background:var(--mist);color:var(--ink-650);letter-spacing:.04em;text-transform:uppercase;font-size:.73rem;font-weight:800}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fbfcfa}.data-table__cell--start{text-align:left}.data-table__cell--center{text-align:center}.data-table__cell--end{text-align:right}.app-empty-state{border-radius:var(--radius-md);text-align:center;background:#ffffff94;border:1px dashed #c8d5cc;align-content:center;justify-items:center;min-height:14rem;padding:2rem 1rem;display:grid}.empty-state{justify-items:center;display:grid}.empty-state__mark{border:1px solid var(--line);background:var(--mist-deep);border-radius:.85rem;width:2.8rem;height:2.8rem;margin-bottom:1rem}.empty-state h2{margin-bottom:.5rem;font-size:1.2rem}.empty-state p{max-width:32rem;color:var(--ink-650);margin:0}.app-empty-state__action{margin-top:1.25rem}.app-form{gap:1.2rem;width:100%;display:grid}.app-form--compact{max-width:42rem}.app-form__grid{gap:1rem;display:grid}.app-form__actions{flex-direction:column-reverse;gap:.65rem;padding-top:.5rem;display:flex}.app-form__submit{width:100%;min-height:3.3rem}.app-form__privacy-note,.app-form__notice{color:#315e49;background:#edf7f0;border:1px solid #c7ded0;border-radius:.8rem;margin:0;padding:.85rem 1rem;font-size:.86rem}.app-textarea{resize:vertical;min-height:7.5rem}.app-textarea--large{min-height:15rem}.app-multi-select{min-height:8.5rem;padding:.4rem}.app-multi-select option{border-radius:.4rem;min-height:2.5rem;padding:.55rem}input[type=file].input{min-height:3.6rem;padding:.55rem}input[type=file]::file-selector-button{border:1px solid var(--line);background:var(--mist);min-height:2.4rem;color:var(--ink-800);cursor:pointer;border-radius:.55rem;margin-right:.7rem;padding:.45rem .7rem;font-weight:700}.app-choice-list{gap:.55rem;margin-top:.8rem;display:grid}.app-choice{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:.75rem;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;min-height:3rem;padding:.65rem .75rem;display:grid}.app-choice:hover{border-color:#a9bbb0}.app-choice input{width:1.15rem;height:1.15rem;accent-color:var(--sage-700)}.app-choice--standalone{width:fit-content;max-width:100%}.builder-fields,.published-fieldset{border:0;min-width:0;margin:0;padding:0}.builder-fields>legend,.published-fieldset>legend:not(.sr-only){color:var(--ink-800);margin-bottom:.8rem;font-size:.95rem;font-weight:800}.builder-fields>ol{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.builder-fields__empty{color:var(--ink-650);text-align:center;border:1px dashed #c8d5cc;border-radius:.75rem;margin:0 0 1rem;padding:1rem}.builder-field{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--mist);gap:1rem;padding:1rem;display:grid}.builder-field__heading{flex-direction:column;gap:.65rem;display:flex}.builder-field__controls{flex-wrap:wrap;gap:.4rem;display:flex}.app-small-button{border-color:var(--line);min-width:2.75rem;min-height:2.75rem;color:var(--ink-800);background:#fff;padding:.45rem .65rem;font-size:.78rem}.app-small-button--danger{color:var(--danger);border-color:#ebcccc}.builder-fields__add{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;align-items:end;gap:.75rem;margin-top:1rem;padding:1rem;display:grid}.published-form{max-width:48rem}.published-field__meta{background:var(--mist-deep);color:var(--ink-650);border-radius:999px;justify-self:start;padding:.12rem .38rem;font-size:.7rem}.published-info,.published-fieldset--consent{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--mist);padding:1rem}.published-info h3{margin-bottom:.4rem;font-size:1.1rem}.published-info p,.published-fieldset>p{color:var(--ink-650);margin:0;font-size:.86rem}.published-fieldset--consent .app-choice{background:0 0}.current-status{border:1px solid var(--line);background:var(--mist);border-radius:.75rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;padding:.85rem 1rem;display:flex}.current-status span{color:var(--ink-650);font-size:.82rem}.current-status strong{background:var(--sage-100);color:var(--sage-700);border-radius:999px;padding:.2rem .5rem;font-size:.76rem}.app-route-status{align-content:center;gap:1rem;width:min(100%,48rem);min-height:55vh;margin-inline:auto;display:grid}.app-route-status--error{justify-items:start}.app-route-status--error h1{max-width:34rem;margin:0;font-size:clamp(1.8rem,5vw,3.2rem)}.detail-list{gap:0;margin:1rem 0 0;display:grid}.detail-list>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(7rem,34%) minmax(0,1fr);gap:.75rem;min-width:0;padding-block:.7rem;display:grid}.detail-list>div:last-child{border-bottom:0}.detail-list dt{color:var(--ink-650);font-size:.76rem;font-weight:800}.detail-list dd{overflow-wrap:anywhere;min-width:0;margin:0}.detail-list--compact{margin-block:.5rem}.detail-list--compact>div{padding-block:.5rem}.app-fieldset{border:0;min-width:0;margin:0;padding:0}.app-fieldset>legend{color:var(--ink-800);margin-bottom:.7rem;font-size:.88rem;font-weight:800}.app-choice-grid,.substitution-option-grid{grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));gap:.6rem;min-width:0;display:grid}.pagination{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:1.25rem;display:flex}.substitution-toolbar,.substitution-workflow-actions{margin-bottom:1.5rem}.substitution-toolbar .app-form--compact{max-width:none}.substitution-filter-grid{grid-template-columns:repeat(auto-fit,minmax(min(13rem,100%),1fr));gap:1rem;min-width:0;display:grid}.substitution-case-grid,.substitution-source-grid,.substitution-lessons,.substitution-conflicts{gap:1rem;min-width:0;display:grid}.substitution-case-grid{grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr))}.substitution-case-card,.substitution-source-card,.substitution-lesson,.substitution-conflict{overflow-wrap:anywhere;min-width:0}.substitution-case-card,.substitution-source-card{align-content:start;gap:1rem;display:grid}.substitution-case-card__heading,.substitution-lesson__header,.substitution-publication__heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;min-width:0;display:flex}.substitution-case-card__heading>div,.substitution-lesson__header>div{min-width:0}.substitution-case-card h2,.substitution-source-card h2,.substitution-lesson h3,.substitution-conflict h3{margin:0}.substitution-source-card>p,.substitution-lesson__header p,.substitution-publications p{color:var(--ink-650);margin:0}.substitution-candidates{gap:.65rem;display:grid}.substitution-candidate{border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;background:#fff;grid-template-columns:minmax(0,1fr) auto;gap:.55rem .75rem;min-width:0;padding:.75rem;display:grid}.substitution-candidate:hover,.substitution-candidate:focus-within{border-color:var(--sage-600);box-shadow:0 0 0 3px #498a7326}.substitution-candidate--unavailable{cursor:not-allowed;background:#f7f8f7}.substitution-candidate__choice{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.65rem;min-width:0;display:grid}.substitution-candidate__choice input{width:1.2rem;height:1.2rem;accent-color:var(--sage-700)}.substitution-candidate__reasons{color:var(--ink-650);grid-column:1/-1;gap:.25rem;margin:0;padding-inline-start:1.2rem;font-size:.8rem;display:grid}.substitution-decision-summary{border-inline-start:.3rem solid var(--blue-600,#315f78);border-radius:var(--radius-sm);background:#eef5f7;margin-top:1rem;padding:.8rem}.substitution-decision-summary p{margin:.25rem 0 0}.substitution-decision-form{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.substitution-decision-form>summary{cursor:pointer;min-height:2.75rem;color:var(--sage-700);font-weight:800}.substitution-decision-form[open]>summary{margin-bottom:1rem}.substitution-decision-form select[multiple]{min-height:9rem}.substitution-conflict{border-inline-start:.35rem solid var(--line)}.substitution-conflict:has(.badge--danger){border-inline-start-color:var(--danger)}.substitution-conflict:has(.badge--warning){border-inline-start-color:#b47a1b}.substitution-conflict:has(.badge--information){border-inline-start-color:#315f78}.substitution-conflict header{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.substitution-conflict>p{margin:.85rem 0 0}.substitution-conflict .status-message{gap:.25rem;margin-top:1rem;display:grid}.substitution-publications{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.substitution-publications>li{min-width:0}.substitution-workflow-actions>h2{margin-bottom:.75rem}.substitution-workflow-actions .app-form__actions{justify-content:flex-start}.substitution-case-summary{margin-bottom:1.5rem}@media (min-width:52rem){.substitution-source-grid,.substitution-lessons,.substitution-conflicts{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.substitution-source-grid>.app-empty-state{min-height:24rem}}@media (max-width:37.99rem){.detail-list>div{grid-template-columns:1fr;gap:.25rem}.substitution-candidate{grid-template-columns:1fr}.substitution-candidate .badge{justify-self:start}.substitution-candidate__reasons{grid-column:1}}@media (min-width:38rem){.app-main{padding:1.8rem 1.5rem 5rem}.dashboard-section__header{flex-direction:row;justify-content:space-between;align-items:end}.timeline__row,.timeline__link{grid-template-columns:minmax(0,1fr) auto}.timeline__meta{justify-content:end}.app-form__grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.app-form__actions{flex-direction:row;justify-content:flex-end}.app-form__actions .button{min-width:10rem}.builder-field__heading{flex-direction:row;justify-content:space-between;align-items:center}.builder-fields__add{grid-template-columns:minmax(0,1fr) auto}}@media (max-width:43.99rem){.table-wrap{box-shadow:none;background:0 0;border:0;overflow:visible}.data-table,.data-table tbody,.data-table tr,.data-table td{width:100%;display:block}.data-table thead{display:none}.data-table tbody{gap:.75rem;display:grid}.data-table tr{border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:#fff;padding:.45rem .8rem}.data-table td,.data-table tbody tr:last-child td{border-bottom:1px solid var(--line);text-align:left;grid-template-columns:minmax(6.5rem,40%) minmax(0,1fr);gap:.75rem;padding:.65rem 0;display:grid}.data-table td:last-child{border-bottom:0}.data-table td:before{color:var(--ink-650);content:attr(data-label);letter-spacing:.03em;text-transform:uppercase;font-size:.7rem;font-weight:800}}@media (min-width:62rem){.app-shell{grid-template-rows:auto 1fr;grid-template-columns:17.5rem minmax(0,1fr);display:grid}.app-sidebar--desktop{flex-direction:column;grid-row:1/3;height:100svh;padding:1rem;display:flex;position:sticky;top:0;overflow-y:auto}.app-topbar{grid-column:2;padding-inline:1.5rem}.app-menu-button{display:none}.app-main{grid-column:2;padding-inline:2rem}.app-drawer-layer{display:none}}.timetable-days{gap:1rem;min-width:0;display:grid}.timetable-day{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface,#fff);min-width:0;box-shadow:var(--shadow-sm);padding:1rem}.timetable-day--today{border-width:2px;border-color:var(--blue-600,#315f78)}.timetable-day__header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-block-end:.9rem;display:flex}.timetable-day__header h2,.timetable-lesson h3{margin:0}.timetable-day__header time,.timetable-lesson__heading p,.timetable-day__empty{color:var(--ink-650)}.timetable-day__lessons{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.timetable-lesson{border:1px solid var(--line);border-inline-start:.35rem solid var(--blue-600,#315f78);border-radius:var(--radius-md);background:#fff;gap:.75rem;min-width:0;padding:.9rem;display:grid}.timetable-lesson__time{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:.35rem;font-weight:800;display:flex}.timetable-lesson__body,.timetable-lesson__heading>div{min-width:0}.timetable-lesson__heading{align-items:flex-start;gap:.65rem;display:flex}.timetable-lesson__code{border-radius:var(--radius-sm);letter-spacing:.025em;border:1px solid;justify-content:center;align-items:center;min-width:2.8rem;min-height:2.8rem;padding:.35rem;font-weight:900;display:inline-flex}.timetable-lesson__facts{gap:.35rem;margin-block:.65rem;display:grid}.timetable-lesson__facts div{grid-template-columns:minmax(5rem,7rem) minmax(0,1fr);gap:.5rem;display:grid}.timetable-lesson__facts dt{color:var(--ink-650);font-size:.78rem;font-weight:800}.timetable-lesson__facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.timetable-lesson__change{border-radius:var(--radius-sm);background:var(--sand-100,#f7f0df);padding:.55rem .7rem}.timetable-day__empty{border:1px dashed var(--line);border-radius:var(--radius-md);text-align:center;margin:0;padding:1rem}.operations-toolbar,.operations-form,.calendar-toolbar{gap:1rem;min-width:0;display:grid}.operations-toolbar__grid,.calendar-toolbar__grid{gap:.85rem;min-width:0;display:grid}.operations-view-nav,.calendar-view-nav{flex-wrap:wrap;gap:.5rem;min-width:0;display:flex}.operations-view-nav .button,.calendar-view-nav .button{flex:8rem}.calendar-period-navigation{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.calendar-period-navigation .button{text-align:center;min-width:0;padding-inline:.55rem}.calendar-view,.room-plan,.resource-catalog,.operations-list{gap:1rem;min-width:0;margin:0;padding:0;list-style:none;display:grid}.calendar-day,.room-card,.resource-card,.operation-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface,#fff);min-width:0;box-shadow:var(--shadow-sm);padding:1rem}.calendar-day--today{border-width:2px;border-color:var(--blue-600,#315f78)}.calendar-day__header,.room-card__header,.resource-card__header,.operation-card>header,.calendar-entry__heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.65rem;min-width:0;display:flex}.calendar-day__header h2,.calendar-entry__heading h3,.room-card__header h2,.resource-card__header h2,.operation-card h3{overflow-wrap:anywhere;min-width:0;margin:0}.calendar-day__entries{gap:.7rem;margin:.9rem 0 0;padding:0;list-style:none;display:grid}.calendar-entry-link{color:inherit;text-decoration:none;display:block}.calendar-entry-link:focus-visible{border-radius:var(--radius-md);outline:.2rem solid var(--blue-600,#315f78);outline-offset:.18rem}.calendar-entry{border:1px solid var(--line);border-inline-start:.35rem solid var(--blue-600,#315f78);border-radius:var(--radius-md);background:#fff;gap:.7rem;min-width:0;padding:.85rem;display:grid}.calendar-entry-link:hover .calendar-entry{border-color:var(--blue-600,#315f78)}.calendar-entry__time,.room-occupancy__time{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:.3rem;font-weight:800;display:flex}.calendar-entry__facts,.room-card__facts,.resource-card__facts,.operation-detail-list{gap:.4rem;margin:.65rem 0 0;display:grid}.calendar-entry__facts>div,.room-card__facts>div,.resource-card__facts>div,.operation-detail-list>div{grid-template-columns:minmax(6rem,9rem) minmax(0,1fr);gap:.65rem;display:grid}.calendar-entry__facts dt,.room-card__facts dt,.resource-card__facts dt,.operation-detail-list dt{color:var(--ink-650);font-size:.78rem;font-weight:800}.calendar-entry__facts dd,.room-card__facts dd,.resource-card__facts dd,.operation-detail-list dd{overflow-wrap:anywhere;min-width:0;margin:0}.calendar-entry__link-label{color:var(--sage-700);align-self:center;font-weight:800}.calendar-entry__change,.calendar-day__empty{border-radius:var(--radius-sm);background:var(--sand-100,#f7f0df);margin:.65rem 0 0;padding:.55rem .7rem}.room-card__badges,.operation-card__badges{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.room-occupancy,.room-free-slots{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.room-occupancy h3,.room-free-slots h3{margin-top:0}.room-occupancy ol,.room-free-slots ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.room-occupancy li{border:1px solid var(--line);border-radius:var(--radius-sm);gap:.45rem;min-width:0;padding:.65rem;display:grid}.room-free-slots li{flex-wrap:wrap;gap:.35rem;display:flex}.room-card__actions,.resource-card__actions{flex-direction:column;gap:.6rem;margin-top:1rem;display:flex}.operation-card>p{overflow-wrap:anywhere}.operation-card>.button{margin-top:.5rem}.operations-section{gap:1rem;display:grid}.operations-section__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.8rem;display:flex}.operations-section__header h2,.operations-section__header p{margin:0}.operations-form__actions{flex-direction:column;gap:.65rem;display:flex}.operations-danger-zone{border-inline-start:.35rem solid var(--danger)}.event-resource-options{gap:.75rem;display:grid}.event-resource-option{border:1px solid var(--line);border-radius:var(--radius-md);gap:.75rem;min-width:0;padding:.85rem;display:grid}.event-resource-option>legend{padding-inline:.35rem;font-weight:800}@media (max-width:29.99rem){.calendar-period-navigation{grid-template-columns:1fr}.calendar-entry__facts>div,.room-card__facts>div,.resource-card__facts>div,.operation-detail-list>div{grid-template-columns:1fr;gap:.2rem}}@media (min-width:42rem){.operations-toolbar__grid,.calendar-toolbar__grid,.event-resource-options{grid-template-columns:repeat(2,minmax(0,1fr))}.room-card__actions,.resource-card__actions,.operations-form__actions{flex-flow:wrap}.room-occupancy li{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}}@media (min-width:56rem){.calendar-view--week,.room-plan,.resource-catalog,.operations-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.calendar-view--month{grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch}.calendar-view--month .calendar-day{padding:.7rem}.calendar-view--month .calendar-day__header{display:grid}.calendar-view--month .calendar-day__header h2{font-size:.9rem}.calendar-view--month .calendar-entry{grid-template-columns:1fr}.calendar-view--month .calendar-entry__facts,.calendar-view--month .calendar-entry__link-label{display:none}}@media (min-width:48rem){.timetable-days{grid-template-columns:repeat(auto-fit,minmax(min(19rem,100%),1fr))}.timetable-lesson{grid-template-columns:auto minmax(0,1fr) auto;align-items:start}}.learning-assignment-grid,.learning-manage-grid,.grading-candidate-list,.learning-detail-grid{gap:1rem;min-width:0;display:grid}.learning-assignment-card,.learning-assignment-editor,.learning-assignment-detail .card,.learning-submission-detail .card{overflow-wrap:anywhere;min-width:0}.learning-assignment-card__header,.learning-submission-row,.learning-inline-action{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.learning-assignment-card__header h3,.learning-assignment-card__header h2,.learning-assignment-card__header p{margin:0}.learning-meta{gap:.65rem;margin-block:1rem;display:grid}.learning-meta>div{grid-template-columns:minmax(7rem,.4fr) minmax(0,1fr);gap:.75rem;display:grid}.learning-meta dt{color:var(--color-text-muted);font-weight:700}.learning-meta dd{margin:0}.grading-rubric{margin-block-start:1rem}.grading-rubric ul{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.grading-rubric li{border-inline-start:.25rem solid var(--color-brand);background:var(--color-surface-subtle);gap:.35rem;padding:.75rem;display:grid}.grading-rubric li>div{flex-wrap:wrap;justify-content:space-between;gap:.75rem;display:flex}.grading-rubric li p{margin:0}.learning-submission-list,.learning-history{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.learning-submission-row,.learning-history li{border:1px solid var(--color-border);border-radius:var(--radius-md);color:inherit;padding:.85rem;text-decoration:none}.learning-submission-row span{gap:.2rem;display:grid}.learning-submission-row:hover{border-color:var(--color-brand)}.learning-submission-editor{resize:vertical;min-height:16rem}.learning-inline-action{justify-content:flex-start;margin-top:1rem}.rich-text-readable{white-space:pre-wrap;max-width:75ch}.privacy-note{border-inline-start:.25rem solid var(--color-border-strong);color:var(--color-text-muted);padding-inline-start:.8rem}.operations-page,.operations-card-grid,.operations-item-card,.operations-create-card,.operations-facts,.operations-meal-option{min-width:0}.operations-anchor-nav{flex-wrap:wrap;gap:.65rem;display:flex}.operations-anchor-nav .button{flex:9rem;min-height:2.75rem}.operations-card-grid,.operations-item-card,.operations-create-card{gap:1rem;display:grid}.operations-item-card__heading,.operations-meal-option>div{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.operations-item-card__heading h3,.operations-item-card__heading p,.operations-meal-option p{margin:0}.operations-facts{gap:.65rem;margin:0;display:grid}.operations-facts>div{grid-template-columns:minmax(6.5rem,.7fr) minmax(0,1fr);gap:.75rem;display:grid}.operations-facts dt{color:var(--color-text-muted);font-weight:700}.operations-facts dd{overflow-wrap:anywhere;min-width:0;margin:0}.operations-inline-action{flex-wrap:wrap;gap:.65rem;display:flex}.operations-inline-action .button{min-height:2.75rem}.operations-meal-option{border-block-start:1px solid var(--color-border,var(--line));gap:.55rem;padding-block:.85rem;display:grid}.operations-meal-option span{white-space:nowrap}.operations-school-picker{align-items:end}@media (max-width:29.99rem){.operations-item-card__heading,.operations-meal-option>div,.operations-facts>div{grid-template-columns:1fr;gap:.25rem;display:grid}.operations-anchor-nav .button,.operations-inline-action,.operations-inline-action .button{width:100%}}@media (min-width:48rem){.operations-card-grid,.learning-assignment-grid,.learning-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-manage-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.learning-assignment-editor{grid-column:1/-1}}@media (forced-colors:active){.app-product-mark,.app-icon-button,.app-nav__link,.app-choice,.current-status,.badge,.quick-action,.substitution-candidate,.substitution-conflict,.timetable-day,.timetable-lesson,.timetable-lesson__code,.calendar-day,.calendar-entry,.room-card,.resource-card,.operation-card,.room-occupancy li,.event-resource-option{border:1px solid canvastext}.learning-submission-row,.learning-history li,.privacy-note,.operations-item-card,.operations-meal-option{border-color:canvastext}}.support-page,.support-case-page{--support-private:var(--color-accent,#315b55)}@supports (color:color-mix(in lab, red, red)){.support-page,.support-case-page{--support-private:color-mix(in srgb, var(--color-accent,#315b55) 9%, transparent)}}.support-page,.support-case-page{gap:1.25rem;display:grid}.support-privacy-notice{border-inline-start:.25rem solid var(--color-accent,#315b55);background:var(--support-private);border-radius:.5rem;margin:0;padding:.9rem 1rem;line-height:1.55}.support-summary-grid,.support-card-grid,.support-two-column{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.support-summary-grid .card{gap:.35rem;display:grid}.support-summary-grid strong{font-size:clamp(1.2rem,3vw,1.8rem)}.support-two-column{grid-template-columns:minmax(0,1fr) minmax(18rem,.85fr);align-items:start}.support-card-list,.support-form-stack{gap:1rem;display:grid}.support-card-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.support-card-heading h3,.support-card-heading p{margin:0}.support-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.support-form-grid>:is(fieldset,.field:has(textarea),button,.checkbox-row){grid-column:1/-1}.support-internal-card,.support-internal-text{border-inline-start:.25rem solid var(--color-warning,#9b6b16);background:var(--color-warning,#9b6b16)}@supports (color:color-mix(in lab, red, red)){.support-internal-card,.support-internal-text{background:color-mix(in srgb, var(--color-warning,#9b6b16) 8%, transparent)}}.support-internal-text,.support-note-content,.preserve-whitespace{white-space:pre-wrap;overflow-wrap:anywhere}.support-case-page details{margin-block-start:1rem}.support-case-page summary{cursor:pointer;align-items:center;min-block-size:2.75rem;font-weight:650;display:flex}@media (max-width:780px){.support-summary-grid,.support-card-grid,.support-two-column,.support-form-grid{grid-template-columns:minmax(0,1fr)}.support-card-heading{flex-direction:column;align-items:stretch}.support-page :is(.button,button,select,input),.support-case-page :is(.button,button,select,input){min-block-size:2.75rem}}.ai-page,.ai-admin-page{gap:2rem;display:grid}.ai-layout{grid-template-columns:minmax(14rem,19rem) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.ai-conversations,.ai-main{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-inline-size:0}.ai-conversations{padding:1rem}.ai-conversations ul,.ai-messages{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.ai-conversations a{min-block-size:2.75rem;color:inherit;border-radius:var(--radius-md);gap:.2rem;padding:.65rem;text-decoration:none;display:grid}.ai-conversations a:hover,.ai-conversations a:focus-visible,.ai-conversations a[aria-current=page]{background:var(--color-surface-soft);outline:2px solid var(--color-focus);outline-offset:2px}.ai-conversations small{color:var(--color-text-muted)}.ai-main{grid-template-columns:minmax(0,1fr);gap:1rem;padding:clamp(1rem,2vw,1.5rem);display:grid}.ai-messages{max-block-size:min(55rem,62vh);padding:.25rem;overflow-y:auto}.ai-message{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-soft);max-inline-size:min(46rem,92%);padding:.9rem 1rem}.ai-message--user{background:var(--color-surface);justify-self:end}.ai-message p,.ai-inline-answer{white-space:pre-wrap;overflow-wrap:anywhere;margin-block-end:0}.ai-sources{border-block-start:1px solid var(--color-border);gap:.5rem;margin-block-start:.85rem;padding-block-start:.75rem;display:grid}.ai-sources ol{gap:.6rem;margin:0;padding-inline-start:1.25rem;display:grid}.ai-sources li{overflow-wrap:anywhere;min-inline-size:0}.ai-sources small{color:var(--color-text-muted);display:block}.ai-message .button-row{flex-wrap:wrap;gap:.5rem;margin-block-start:.75rem;display:flex}.ai-prompt-form,.ai-prompt-input{inline-size:100%}.ai-prompt-input{resize:vertical}.ai-admin-page section,.ai-page section{gap:1rem;display:grid}@media (max-width:780px){.ai-layout{grid-template-columns:1fr}.ai-conversations ul{scroll-snap-type:inline mandatory;grid-auto-columns:minmax(13rem,80vw);grid-auto-flow:column;padding-block-end:.35rem;overflow-x:auto}.ai-conversations li{scroll-snap-align:start}.ai-message{max-inline-size:100%}.ai-page :is(.button,button,select,input,textarea),.ai-admin-page :is(.button,button,select,input,textarea){min-block-size:2.75rem}}.integrations-page>section{gap:1rem;display:grid}.integrations-page>section+section{margin-block-start:2rem}.dashboard-grid,.management-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));align-items:start;gap:1rem;display:grid}.integrations-page .card{min-inline-size:0}.metric-value{color:var(--color-ink-strong);margin-block:.25rem;font-size:clamp(1.75rem,5vw,2.5rem);line-height:1;display:block}.card-heading-row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.card-heading-row>:first-child{min-inline-size:0}.ph-registrar-page section[aria-labelledby=ph-learner-title] .card-heading-row>div a{box-sizing:border-box;overflow-wrap:anywhere;min-block-size:2.75rem;max-inline-size:100%;padding-block:.5rem;display:inline-block}.tag-list,.checkbox-grid{flex-wrap:wrap;gap:.5rem;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--color-border);overflow-wrap:anywhere;border-radius:999px;padding:.25rem .5rem;font-size:.78rem}.check-row{align-items:center;gap:.5rem;min-block-size:2.75rem;padding-inline:.35rem;display:inline-flex}.check-row input{block-size:1.15rem;inline-size:1.15rem}.nested-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft);gap:.75rem;margin-block:1rem;padding:1rem;display:grid}.integration-secret-result{gap:.75rem;margin-block-end:0;display:grid}.integration-secret-result>div{min-inline-size:0}.integration-secret-result dd{margin:.25rem 0 0}.integration-secret-result code,.integrations-page code{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;max-inline-size:100%;display:inline-block}.philippines-issue-list,.philippines-shs-recognition-page{overflow-wrap:anywhere}@media (max-width:780px){.integrations-page .card-heading-row{flex-direction:column}.integrations-page :is(.button,button,select,input,textarea){min-block-size:2.75rem}}.ph-sf10-internal-preview{overflow-wrap:anywhere;min-width:0}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
