@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{-ms-touch-action:none;touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;-webkit-transform:translateZ(0);transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);-webkit-transform:translateY(-50%);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;-webkit-transform:translate(50%);transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);-webkit-transform:translateY(50%);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;-webkit-transform:translate(-50%);transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media(pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/quicksand-vietnamese-500-normal-CMA0PiFa.woff2) format("woff2"),url(/assets/quicksand-vietnamese-500-normal-DdPH4leT.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/quicksand-latin-ext-500-normal-Rkq3IeWS.woff2) format("woff2"),url(/assets/quicksand-latin-ext-500-normal-BlYHgpcu.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/quicksand-latin-500-normal-_DbwbYKP.woff2) format("woff2"),url(/assets/quicksand-latin-500-normal-7J1fbcAD.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/quicksand-vietnamese-600-normal-dD2kotB2.woff2) format("woff2"),url(/assets/quicksand-vietnamese-600-normal-JmvBH-hY.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/quicksand-latin-ext-600-normal-fxOF3zcr.woff2) format("woff2"),url(/assets/quicksand-latin-ext-600-normal-BDPVAPCS.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/quicksand-latin-600-normal-DTBPeRoM.woff2) format("woff2"),url(/assets/quicksand-latin-600-normal-CkxN0sDw.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/quicksand-vietnamese-700-normal-5oDqeHTF.woff2) format("woff2"),url(/assets/quicksand-vietnamese-700-normal-BsIWXrxI.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/quicksand-latin-ext-700-normal-8b1JBoEj.woff2) format("woff2"),url(/assets/quicksand-latin-ext-700-normal-DbLsDSEV.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Quicksand;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/quicksand-latin-700-normal-Dpk7G9Y6.woff2) format("woff2"),url(/assets/quicksand-latin-700-normal-HjJN-aaT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--card: 0 0% 100%;--card-foreground: 222.2 84% 4.9%;--popover: 0 0% 100%;--popover-foreground: 222.2 84% 4.9%;--primary: 221.2 83.2% 53.3%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 221.2 83.2% 53.3%;--radius: .5rem}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground));margin:0;color:var(--scoole-ink);font-family:Quicksand,Avenir Next Rounded,Trebuchet MS,sans-serif;font-weight:500}button,input,select,textarea{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid rgba(113,33,229,.28);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.contents{display:contents}.hidden{display:none}.h-10{height:2.5rem}.h-4{height:1rem}.h-8{height:2rem}.h-9{height:2.25rem}.min-h-screen{min-height:100vh}.w-4{width:1rem}.w-full{width:100%}.flex-1{flex:1 1 0%}.animate-spin{animation:spin 1s linear infinite}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-input{border-color:hsl(var(--input))}.bg-background{background-color:hsl(var(--background))}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.text-\[\#7121e5\]{--tw-text-opacity: 1;color:rgb(113 33 229 / var(--tw-text-opacity, 1))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}:root{--scoole-purple: var(--scoole-primary);--scoole-purple-bright: var(--scoole-primary-container);--scoole-ink: var(--scoole-on-surface);--scoole-muted: #625b70;--scoole-line: #d8cfea;--scoole-wash: var(--scoole-surface-low);--scoole-surface: #fdf7ff;--scoole-surface-lowest: #ffffff;--scoole-surface-low: #f8f1ff;--scoole-surface-container: #f3eaff;--scoole-surface-high: #ede4fa;--scoole-surface-highest: #e7dff5;--scoole-on-surface: #1d1928;--scoole-on-surface-variant: #4a4455;--scoole-inverse-surface: #322e3e;--scoole-inverse-on-surface: #f5eeff;--scoole-outline: #7c7487;--scoole-outline-variant: #ccc3d8;--scoole-primary: #7121e5;--scoole-on-primary: #ffffff;--scoole-primary-container: #8b46ff;--scoole-on-primary-container: #fef8ff;--scoole-primary-fixed: #ebddff;--scoole-primary-fixed-dim: #d3bbff;--scoole-on-primary-fixed-variant: #5b00c4;--scoole-secondary-container: #dfe0e0;--scoole-on-secondary-container: #616363;--scoole-secondary-fixed: #e2e2e2;--scoole-on-secondary-fixed-variant: #454747;--scoole-tertiary-fixed: #ffdea8;--scoole-tertiary-fixed-dim: #ffba20;--scoole-on-tertiary-fixed-variant: #5e4200;--scoole-error: #ba1a1a;--scoole-on-error: #ffffff;--scoole-error-container: #ffdad6;--scoole-on-error-container: #93000a;--scoole-success-container: #e3f6eb;--scoole-on-success-container: #24764e;--scoole-radius-sm: .25rem;--scoole-radius-default: .5rem;--scoole-radius-md: .75rem;--scoole-radius-lg: 1rem;--scoole-radius-xl: 1.5rem;--scoole-radius-full: 9999px;--scoole-space-base: 4px;--scoole-space-xs: 8px;--scoole-space-sm: 16px;--scoole-space-md: 24px;--scoole-space-lg: 32px;--scoole-space-xl: 48px;--scoole-gutter: 24px;--scoole-margin-mobile: 16px;--scoole-margin-desktop: 64px;--scoole-sidebar-width: 252px;--scoole-touch-target: 44px;--scoole-shadow-level-1: 0 4px 20px rgba(26, 22, 37, .05);--scoole-shadow-level-2: 0 8px 24px rgba(139, 70, 255, .15)}.calendar-type-options button[aria-disabled=true]{cursor:not-allowed;border-color:var(--scoole-outline-variant);background:var(--scoole-surface-high);color:var(--scoole-outline)}.agenda-timeline{display:grid;gap:var(--scoole-space-lg)}.agenda-day-group>h2{margin:0 0 var(--scoole-space-sm);color:var(--scoole-on-surface-variant);font-size:20px;line-height:28px;font-weight:700;text-transform:capitalize}.agenda-day-group+.agenda-day-group{padding-top:var(--scoole-space-xs)}.student-shell.student-shell .session-status.correct{background:var(--scoole-success-container);color:var(--scoole-on-success-container)}.parent-session-labels{display:flex;align-items:center;flex-wrap:wrap;gap:var(--scoole-space-xs)}.parent-session-subject{min-width:0;color:var(--scoole-primary);font-size:12px;line-height:14px;font-weight:600;overflow-wrap:anywhere}.parent-session-type{min-height:28px;display:inline-flex;align-items:center;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.parent-session-type.session-type-study{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.parent-session-type.session-type-assessment{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.parent-shell .parent-session-copy>strong{white-space:normal;overflow-wrap:anywhere}.parent-shell .parent-result.is-correct,.parent-shell .parent-result.is-completed{background:var(--scoole-success-container);color:var(--scoole-on-success-container)}.parent-shell .parent-result.is-incorrect{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.parent-shell .parent-result.is-partial,.parent-shell .parent-result.is-active{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.parent-shell .parent-result.is-neutral,.parent-shell .parent-result.is-paused{background:var(--scoole-surface-highest);color:var(--scoole-on-surface-variant)}.assessment-parent-concepts{display:flex;align-items:flex-start;flex-wrap:wrap;gap:var(--scoole-space-xs) var(--scoole-space-sm);margin:var(--scoole-space-xs) 0 0;padding-top:var(--scoole-space-xs);border-top:1px solid var(--scoole-outline-variant);color:var(--scoole-on-surface-variant);font-size:12px;line-height:18px}.assessment-concept-group,.assessment-concept-improvement{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--scoole-space-xs)}.assessment-parent-concepts dt{color:var(--scoole-on-surface);font-weight:700}.assessment-parent-concepts dd{min-width:0;margin:0}.assessment-parent-concepts ul{display:flex;flex-wrap:wrap;gap:0 var(--scoole-space-sm);margin:0;padding-left:var(--scoole-space-sm)}.assessment-parent-concepts li{overflow-wrap:anywhere}.auth-atmosphere{min-height:100vh;display:grid;place-items:center;padding:32px;position:relative;overflow:hidden;background:radial-gradient(circle at 8% 10%,#fff 0 6%,transparent 28%),radial-gradient(circle at 92% 92%,#dce8ff 0,transparent 34%),#eef4ff}.auth-cloud{position:absolute;width:260px;height:85px;border-radius:999px;background:#ffffff8f;filter:blur(1px)}.auth-cloud:before,.auth-cloud:after{content:"";position:absolute;border-radius:50%;background:inherit}.auth-cloud:before{width:110px;height:110px;left:35px;bottom:20px}.auth-cloud:after{width:145px;height:145px;right:32px;bottom:7px}.auth-cloud-one{top:8%;left:-80px;animation:cloud-drift 26s ease-in-out infinite alternate}.auth-cloud-two{bottom:8%;right:-70px;transform:scale(.75);animation:cloud-drift 32s ease-in-out infinite alternate-reverse}.auth-shell{width:min(1160px,100%);min-height:720px;display:grid;grid-template-columns:40% 60%;background:#fffffff5;border:1px solid rgba(255,255,255,.8);border-radius:32px;overflow:hidden;box-shadow:0 28px 80px #3e226b29;position:relative;z-index:1}.auth-shell-compact{min-height:620px;max-width:1040px}.auth-story-panel{position:relative;overflow:hidden;padding:58px 52px;display:flex;flex-direction:column;align-items:center;text-align:center;color:#eee2ff;background:linear-gradient(150deg,#6416d5,#8c46ff 72%,#a274ff)}.auth-story-panel:after{content:"";position:absolute;width:180px;height:120%;right:-110px;top:-10%;border-radius:50%;background:#fff}.scoole-logo{display:inline-flex;align-items:center;gap:8px;font-size:42px;font-weight:700;letter-spacing:-2px;line-height:1}.scoole-logo svg{width:30px;height:30px;fill:currentColor}.auth-story-panel>p{max-width:300px;margin-top:12px;font-size:16px}.story-orbit{position:absolute;border:1px solid rgba(255,255,255,.2);border-radius:50%;transform:rotate(-25deg)}.orbit-one{width:530px;height:200px;top:280px;left:-80px}.orbit-two{width:400px;height:155px;top:330px;left:-20px}.story-scene{--scene-accent:#ffca45;--scene-soft:#fff5d2;position:relative;width:280px;height:270px;margin:45px 0 25px;animation:story-float 4.8s ease-in-out infinite;filter:drop-shadow(0 24px 20px rgba(39,5,92,.2))}.story-scene:before{content:"";position:absolute;top:18px;right:0;bottom:0;left:16px;border:1px solid rgba(255,255,255,.34);border-radius:49% 51% 45% 55%;transform:rotate(-9deg)}.story-scene-card{position:absolute;left:51px;top:31px;width:174px;height:194px;border:7px solid rgba(255,255,255,.95);border-radius:38px 38px 52px 30px;background:linear-gradient(145deg,#fff 0 18%,var(--scene-soft) 18% 100%);color:var(--scene-accent);display:grid;place-items:center;transform:rotate(-5deg);box-shadow:inset 0 0 0 2px #5b21a514}.story-scene-card svg{width:88px;height:88px;stroke-width:1.75}.story-scene-token{position:absolute;right:7px;bottom:17px;width:72px;height:72px;border:6px solid white;border-radius:24px;background:var(--scene-accent);color:#fff;display:grid;place-items:center;transform:rotate(9deg)}.story-scene-token svg{width:32px;height:32px;stroke-width:2.4}.story-scene-ribbon{position:absolute;left:12px;top:28px;width:66px;height:75px;border-radius:19px;background:#ffca45;color:#6223ba;display:grid;place-items:center;font-size:29px;font-weight:700;transform:rotate(-11deg);box-shadow:0 12px 24px #2d046629}.story-scene-ribbon i{position:absolute;bottom:-13px;border-left:16px solid transparent;border-right:16px solid transparent;border-top:18px solid #ffca45}.story-scene-spark{position:absolute;right:20px;top:9px;color:#ffe17d}.story-scene-spark svg{width:36px;height:36px;fill:currentColor}.story-scene-dot{position:absolute;border-radius:50%;background:#ffffffb8}.story-scene-dot-one{width:12px;height:12px;left:22px;bottom:51px}.story-scene-dot-two{width:7px;height:7px;right:34px;top:94px}.story-scene-step-1{--scene-accent:#f45f91;--scene-soft:#ffe5ef}.story-scene-step-2{--scene-accent:#2c9fb5;--scene-soft:#dcf7f7}.story-scene-step-3{--scene-accent:#ff875c;--scene-soft:#fff0d9}.story-scene-step-4{--scene-accent:#4f7ee8;--scene-soft:#e5edff}.story-scene-step-5{--scene-accent:#39a678;--scene-soft:#ddf7e9}.story-scene-step-6{--scene-accent:#e45f76;--scene-soft:#ffe5e8}.story-scene-step-7{--scene-accent:#2aa5a0;--scene-soft:#dcf6f1}.story-scene-step-8{--scene-accent:#6475d9;--scene-soft:#e8eaff}.story-caption{font-size:14px!important;line-height:1.5;opacity:.94}.auth-content-panel{position:relative;padding:58px 64px;display:flex;align-items:center;justify-content:center;background:#fff}.auth-language{position:absolute;right:28px;top:24px}.login-card,.registration-complete{width:min(430px,100%)}.eyebrow{display:inline-flex;padding:7px 12px;border-radius:999px;background:#f1e7ff;color:#6b16d4;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.login-card h1,.wizard-step h1,.migration-form h1,.registration-complete h1{font-size:34px;line-height:1.16;letter-spacing:-.035em;font-weight:700;margin:14px 0 8px}.login-card>p,.wizard-step>p,.migration-form>p,.registration-complete>p{color:var(--scoole-muted);line-height:1.55}.scoole-form{display:grid;gap:11px;margin-top:28px}.scoole-form label,.scoole-field>span{font-size:14px;font-weight:700;color:#3d3748}.scoole-form input,.scoole-field input,.scoole-field select{width:100%;min-height:52px;border:1.5px solid var(--scoole-line);border-radius:13px;padding:0 16px;background:#fff;transition:.2s}.scoole-form input:focus,.scoole-field input:focus,.scoole-field select:focus{border-color:var(--scoole-purple-bright);box-shadow:0 0 0 4px #8b46ff1a;outline:none}.password-field{position:relative}.password-field input{padding-right:52px}.password-field button{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#766d84;padding:8px}.password-field svg{width:19px}.scoole-primary-button,.scoole-secondary-button{min-height:52px;border:0;border-radius:14px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;transition:.2s;text-decoration:none}.scoole-primary-button{color:#fff;background:var(--scoole-purple);box-shadow:0 9px 22px #7121e538}.scoole-primary-button:hover{background:#5e10ca;transform:translateY(-1px)}.scoole-primary-button:disabled{opacity:.55;transform:none}.scoole-primary-button svg,.scoole-secondary-button svg{width:19px}.scoole-form>.scoole-primary-button{margin-top:14px;width:100%}.scoole-secondary-button{color:var(--scoole-purple);background:#f4edff;border:1px solid #decefa}.auth-switch{text-align:center;margin-top:24px!important;font-size:14px;color:var(--scoole-muted)}.auth-switch a,.text-link{color:var(--scoole-purple);font-weight:700}.text-link{display:block;margin:12px auto 0;background:transparent;border:0;font-size:13px}.form-alert{padding:12px 14px;margin:16px 0;border-radius:12px;background:#fff0ef;border:1px solid #ffc7c2;color:#9c2118;font-size:14px}.form-alert:focus{outline:2px solid var(--scoole-primary);outline-offset:var(--scoole-space-base)}.text-link{width:-moz-fit-content;width:fit-content;min-height:var(--scoole-touch-target);display:flex;align-items:center;justify-content:center;margin:var(--scoole-space-xs) auto 0;padding:0 var(--scoole-space-xs);border-radius:var(--scoole-radius-default);font-size:14px;line-height:20px}.text-link:hover{text-decoration:underline}.form-notice,.login-card>.form-success{padding:var(--scoole-space-sm);margin:var(--scoole-space-sm) 0;border-radius:var(--scoole-radius-md);font-size:14px;line-height:20px}.form-notice{border:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant)}.login-card>.form-success{border:1px solid var(--scoole-primary-fixed-dim);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.login-card>.form-success:focus{outline:2px solid var(--scoole-primary);outline-offset:var(--scoole-space-base)}.registration-flow{width:100%;max-width:680px;padding-top:28px}.registration-progress>div:first-child{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#746d7e;font-weight:700}.registration-progress strong{color:var(--scoole-purple)}.progress-track{height:8px;margin-top:10px;background:#ece5f4;border-radius:99px;overflow:hidden}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,#7121e5,#9b60ff);border-radius:inherit;transition:width .4s ease}.wizard-step{margin-top:42px;animation:step-in .35s ease both}.wizard-step h1{font-size:30px}.wizard-fields{margin-top:26px}.mini-avatar{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#efe6ff;color:#7121e5}.mini-avatar svg{width:23px}.scoole-field{display:grid;gap:8px}.scoole-field small{font-size:12px;color:#716a7b}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wizard-actions{display:flex;justify-content:space-between;align-items:center;margin-top:36px}.wizard-back{border:0;background:transparent;color:#635b6e;font-weight:700;display:flex;align-items:center;gap:8px;padding:12px}.wizard-back svg{width:18px}.children-summary{display:grid;gap:10px;margin-bottom:18px}.children-summary article{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #e1d8ed;border-radius:16px;background:#fff}.children-summary article div{display:flex;flex:1;min-width:0;flex-direction:column}.children-summary small{color:#716a7b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.children-summary article>button{border:0;background:transparent;font-size:24px;color:#887e93}.children-summary article>.child-edit-access{padding:8px 11px;border-radius:10px;background:#f2eaff;color:#6523c6;font-size:12px;font-weight:700;white-space:nowrap}.children-summary article>.child-edit-access:hover{background:#e8dcfa}.consent-row{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid #dfd4ed;border-radius:15px;margin-top:16px;background:#fcfaff}.consent-row input{width:20px;height:20px;accent-color:var(--scoole-purple);margin-top:2px}.consent-row span{display:flex;flex-direction:column;gap:3px}.consent-row small{color:#6c6476}.security-note{display:flex;align-items:center;gap:9px;padding:12px 14px;border-radius:12px;background:#f0fbf5;color:#246747;font-size:13px;margin-top:18px}.security-note svg{width:20px}.registration-complete{text-align:center}.success-seal{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;margin:0 auto 22px;background:#e6f8ee;color:#238653}.success-seal svg{width:34px}.registration-complete .scoole-primary-button{margin-top:24px}.migration-form{width:100%;max-width:650px}.migration-form .two-fields{margin-top:20px}.migration-form>.scoole-primary-button{margin-top:24px;float:right}.scoole-loading{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:15px;background:#faf7ff;color:#5f566c}.scoole-loading span{width:38px;height:38px;border:4px solid #dfd1f2;border-top-color:#7121e5;border-radius:50%;animation:spin .8s linear infinite}.empty-access{min-height:70vh;display:grid;place-content:center;text-align:center}.family-manager{display:grid;gap:var(--scoole-space-md);color:var(--scoole-on-surface)}.family-manager-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--scoole-space-md)}.family-manager-heading h3{margin:0;font-size:24px;line-height:32px;font-weight:700}.family-manager-heading p{margin-top:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.family-add-form{padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.family-form-title{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);margin-bottom:var(--scoole-space-sm)}.family-form-title>button{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border:0;border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant)}.family-form-title>button:hover{background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.family-form-title svg{width:18px}.family-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--scoole-space-sm);margin-bottom:var(--scoole-space-sm)}.family-form-grid label{display:grid;gap:var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:14px;line-height:16px;font-weight:600}.family-form-grid input,.family-form-grid select,.family-inline-form input,.family-inline-form select{min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface)}.family-form-grid input:focus-visible,.family-form-grid select:focus-visible,.family-inline-form input:focus-visible,.family-inline-form select:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px;border-color:var(--scoole-primary);box-shadow:0 0 0 2px var(--scoole-primary-fixed)}.family-student-list{display:grid;gap:var(--scoole-space-sm)}.family-student-list article{padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.family-student-list article.is-inactive{background:var(--scoole-surface-high)}.family-student-main{width:100%;min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-sm);border:0;border-radius:var(--scoole-radius-default);background:transparent;color:var(--scoole-on-surface);text-align:left}.family-student-main:not(:disabled):hover{background:var(--scoole-surface-low)}.family-student-main>span:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column}.family-student-main small{overflow:hidden;color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;text-overflow:ellipsis;white-space:nowrap}.family-student-main i{padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-highest);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-style:normal;font-weight:600}.family-manager .mini-avatar{width:var(--scoole-touch-target);height:var(--scoole-touch-target);border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.family-card-actions{display:flex;flex-wrap:wrap;gap:var(--scoole-space-xs);padding:var(--scoole-space-xs) 0 0 calc(var(--scoole-touch-target) + var(--scoole-space-sm))}.family-card-actions button,.family-manager .icon-action{min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-xs);padding:0 var(--scoole-space-sm);border:1px solid transparent;border-radius:var(--scoole-radius-default);background:var(--scoole-surface-container);color:var(--scoole-on-surface-variant);font-size:14px;line-height:16px;font-weight:600}.family-card-actions button:hover,.family-manager .icon-action:hover{background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.family-card-actions button:active,.family-manager .icon-action:active{background:var(--scoole-surface-high);box-shadow:none}.family-card-actions svg,.family-manager .icon-action svg{width:18px}.family-inline-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;gap:var(--scoole-space-xs);margin:var(--scoole-space-sm) 0 0 calc(var(--scoole-touch-target) + var(--scoole-space-sm))}.family-inline-form .password-field{grid-column:span 2}.family-inline-form .scoole-primary-button{min-height:var(--scoole-touch-target)}.family-password-field{width:100%;min-width:0}.family-inline-form .family-password-field input{display:block;width:100%;padding-right:calc(var(--scoole-touch-target) + var(--scoole-space-xs))}.family-password-field .family-password-toggle{right:var(--scoole-space-base);width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;padding:0;border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant);cursor:pointer}.family-password-field .family-password-toggle:hover{background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.family-password-field .family-password-toggle:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.family-password-field .family-password-toggle svg{width:18px;height:18px}.family-manager .scoole-primary-button,.family-manager .scoole-secondary-button{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);padding:0 var(--scoole-space-sm);border-radius:var(--scoole-radius-default);font-size:14px;line-height:16px;font-weight:600}.family-manager .scoole-primary-button{border:0;background:var(--scoole-primary-container);color:var(--scoole-on-primary-container);box-shadow:var(--scoole-shadow-level-2)}.family-manager .scoole-secondary-button{border:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-low);color:var(--scoole-primary);box-shadow:none}.family-manager :is(.scoole-primary-button,.scoole-secondary-button):hover:not(:disabled){transform:translateY(calc(var(--scoole-space-base) * -1));box-shadow:var(--scoole-shadow-level-2)}.family-manager :is(.scoole-primary-button,.scoole-secondary-button):active:not(:disabled){transform:none;box-shadow:var(--scoole-shadow-level-1)}.family-manager :is(button,input,select):focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.family-manager button:disabled{cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.family-manager .form-alert,.family-manager .form-success{padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-md);font-size:14px;line-height:20px}.family-manager .form-alert{margin:0;border:1px solid var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.family-manager .form-success{border:1px solid var(--scoole-primary-fixed-dim);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.family-empty-state{max-width:900px;margin:var(--scoole-space-md) auto;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.family-empty-intro{display:flex;align-items:center;gap:var(--scoole-space-sm);padding-bottom:var(--scoole-space-md);margin-bottom:var(--scoole-space-md);border-bottom:1px solid var(--scoole-outline-variant)}.family-empty-intro h2{font-size:24px;line-height:32px;font-weight:700}.family-empty-intro p{margin-top:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.student-avatar{display:block;width:116px;height:116px;margin:auto;overflow:hidden;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-xl);background:var(--scoole-surface-low);box-shadow:var(--scoole-shadow-level-2)}.student-avatar-compact{width:50px;height:50px;flex:0 0 50px;margin:0;border-radius:var(--scoole-radius-lg);box-shadow:none}.student-avatar-generator{max-width:520px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--scoole-space-md);padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.student-avatar-generator-copy{display:grid;gap:var(--scoole-space-xs)}.student-avatar-generator-copy strong{font-size:16px;line-height:24px;font-weight:700}.student-avatar-generator-copy p{margin:0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.student-avatar-style-picker{min-width:0;margin:0;padding:0;border:0}.student-avatar-style-picker legend{margin-bottom:var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:14px;line-height:16px;font-weight:600}.student-avatar-style-picker>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--scoole-space-xs)}.student-avatar-style-picker label{position:relative;min-height:var(--scoole-touch-target);display:grid;grid-template-columns:minmax(0,1fr) var(--scoole-space-sm);place-items:center;gap:var(--scoole-space-base);padding:var(--scoole-space-xs);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant);font-size:14px;line-height:16px;font-weight:600;text-align:center;cursor:pointer}.student-avatar-style-picker label:not(.is-selected){grid-template-columns:1fr}.student-avatar-style-picker label:hover{background:var(--scoole-surface-container)}.student-avatar-style-picker label.is-selected{border-color:var(--scoole-primary);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.student-avatar-style-picker input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.student-avatar-style-picker label:has(input:focus-visible){outline:2px solid var(--scoole-primary);outline-offset:2px}.student-avatar-style-selected{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.student-avatar-style-picker:disabled label{cursor:not-allowed;opacity:.6}.student-avatar-style-picker:disabled input{cursor:not-allowed}.student-avatar-generator-copy .scoole-secondary-button{width:-moz-fit-content;width:fit-content;min-height:var(--scoole-touch-target);border-radius:var(--scoole-radius-default)}.student-avatar-generator-copy .scoole-secondary-button:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.student-avatar-generator-copy .scoole-secondary-button:disabled{cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.family-form-grid>.student-avatar-generator{grid-column:1/-1}.family-education-editor>.student-avatar-generator{margin-bottom:var(--scoole-space-sm)}.family-student-main>.student-avatar{width:var(--scoole-touch-target);height:var(--scoole-touch-target);flex:0 0 var(--scoole-touch-target);border-radius:var(--scoole-radius-md)}@media(max-width:767px){.student-avatar-generator{grid-template-columns:1fr;text-align:center}.student-avatar-generator-copy{width:100%;justify-items:center}.student-avatar-style-picker{width:100%;text-align:left}.student-avatar-generator-copy .scoole-secondary-button{width:100%}}@media(max-width:850px){.auth-atmosphere,.auth-shell,.auth-shell-compact,.auth-content-panel{width:100%;max-width:none}.auth-content-panel{min-width:0}.student-avatar-generator{width:100%}}.parent-shell{min-height:100vh;background:var(--scoole-surface);color:var(--scoole-on-surface)}.parent-sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:var(--scoole-sidebar-width);display:flex;flex-direction:column;padding:var(--scoole-space-md) var(--scoole-space-sm);border-right:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.parent-brand{display:flex;align-items:center;gap:var(--scoole-space-xs);min-height:var(--scoole-touch-target);padding:0 var(--scoole-space-xs)}.parent-brand>span{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container);box-shadow:var(--scoole-shadow-level-2);transform:rotate(-3deg)}.parent-brand>span svg{width:21px;fill:currentColor}.parent-brand>div{display:flex;min-width:0;flex-direction:column}.parent-brand strong{color:var(--scoole-primary);font-size:24px;line-height:32px;font-weight:700}.parent-brand small{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.parent-navigation{display:grid;grid-auto-rows:var(--scoole-touch-target);align-content:start;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-lg);flex:1}.parent-navigation a,.parent-navigation button{width:100%;min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-xs);border:0;border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-xs);background:transparent;color:var(--scoole-on-surface-variant);text-align:left;text-decoration:none;font-size:14px;line-height:16px;font-weight:600;transition:background .2s,color .2s,transform .2s}.parent-navigation a svg,.parent-navigation button svg{width:20px}.parent-navigation a:hover,.parent-navigation button:not(:disabled):hover{background:var(--scoole-surface-low);color:var(--scoole-primary);transform:translate(var(--scoole-space-base))}.parent-navigation a.is-active,.parent-navigation button.is-active{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);box-shadow:inset var(--scoole-space-base) 0 var(--scoole-primary-container)}.parent-navigation button:disabled{cursor:not-allowed;color:var(--scoole-outline)}.parent-navigation em{margin-left:auto;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-high);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-style:normal;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.parent-mobile-drawer .parent-navigation{grid-auto-rows:var(--scoole-touch-target);gap:var(--scoole-space-xs);margin-top:var(--scoole-space-lg)}.parent-mobile-drawer .parent-navigation a,.parent-mobile-drawer .parent-navigation button{min-height:var(--scoole-touch-target);border-radius:var(--scoole-radius-default)}.parent-utility-actions{display:grid;gap:var(--scoole-space-xs);padding-top:var(--scoole-space-sm);border-top:1px solid var(--scoole-outline-variant)}.parent-utility-actions button{min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-xs);border:0;border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-xs);background:transparent;color:var(--scoole-on-surface-variant);text-align:left;font-size:14px;line-height:16px;font-weight:600}.parent-utility-actions button:hover{background:var(--scoole-surface-low);color:var(--scoole-primary)}.parent-utility-actions svg{width:18px}.parent-utility-actions b{margin-left:auto;color:var(--scoole-primary);font-size:12px;line-height:14px}.parent-content{min-height:100vh;margin-left:var(--scoole-sidebar-width)}.parent-main{width:min(1440px,100%);margin:0 auto;padding:var(--scoole-space-xl) var(--scoole-margin-desktop)}.parent-heading-row{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-md);margin-bottom:var(--scoole-space-lg)}.parent-eyebrow{display:inline-flex;align-items:center;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.parent-heading-row h1{margin:var(--scoole-space-xs) 0 var(--scoole-space-base);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.parent-heading-row p{color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.parent-student-dropdown,.parent-period-dropdown{position:relative;z-index:12}.parent-student-dropdown.is-open,.parent-period-dropdown.is-open{z-index:70}.parent-student-trigger{width:232px;min-width:0;display:flex;align-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-xs);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);text-align:left;box-shadow:var(--scoole-shadow-level-1);transition:border-color .2s,box-shadow .2s,transform .2s}.parent-student-trigger:not(:disabled){cursor:pointer}.parent-student-trigger:not(:disabled):hover,.parent-student-trigger[aria-expanded=true]{border-color:var(--scoole-primary);box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.parent-student-trigger:disabled{opacity:1}.parent-student-trigger .student-avatar{width:var(--scoole-touch-target);height:var(--scoole-touch-target);flex:0 0 var(--scoole-touch-target);border-radius:var(--scoole-radius-md)}.parent-student-trigger>span:not(.student-avatar){display:flex;min-width:0;flex:1;flex-direction:column}.parent-student-trigger small{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.parent-student-trigger strong{display:-webkit-box;overflow:hidden;font-size:14px;line-height:20px;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.parent-student-trigger>svg{width:17px;flex:0 0 17px;color:var(--scoole-on-surface-variant);transition:transform .2s}.parent-student-trigger>svg.is-open,.parent-period-trigger>svg.is-open{transform:rotate(180deg)}.parent-dropdown-panel{position:absolute;z-index:60;top:calc(100% + var(--scoole-space-xs));right:0;overflow:hidden;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-2);animation:parent-dropdown-in .16s ease both}.parent-student-menu{width:260px;padding:var(--scoole-space-xs)}.parent-student-menu>button{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) 18px;align-items:center;gap:var(--scoole-space-xs);border:0;border-radius:var(--scoole-radius-default);padding:var(--scoole-space-xs);background:transparent;color:var(--scoole-on-surface);text-align:left;transition:background .15s,color .15s}.parent-student-menu>button:hover,.parent-student-menu>button:focus-visible{background:var(--scoole-surface-low);color:var(--scoole-primary)}.parent-student-menu>button.is-selected{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.parent-student-menu .student-avatar{width:40px;height:40px;margin:0;border-radius:var(--scoole-radius-md);align-self:center;justify-self:center}.parent-student-option-copy{grid-column:2;display:flex;min-width:0;flex-direction:column}.parent-student-menu strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:16px}.parent-student-menu small{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.parent-student-menu>button>svg{grid-column:3;width:17px;color:var(--scoole-primary);justify-self:center}.parent-summary{display:grid;gap:var(--scoole-space-sm)}.parent-section-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm)}.parent-section-heading h2{font-size:20px;line-height:28px;font-weight:700;letter-spacing:-.02em}.parent-section-heading p{margin-top:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.parent-period-trigger{min-width:176px;min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-xs);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-xs);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface-variant);box-shadow:var(--scoole-shadow-level-1);font-size:12px;line-height:14px;font-weight:600;transition:border-color .2s,box-shadow .2s,transform .2s}.parent-period-trigger:hover,.parent-period-trigger[aria-expanded=true]{border-color:var(--scoole-primary);box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.parent-period-trigger>svg{width:16px;color:var(--scoole-primary)}.parent-period-trigger>span{flex:1;text-align:left}.parent-period-trigger>svg:last-child{color:var(--scoole-on-surface-variant);transition:transform .2s}.parent-period-menu{width:290px;padding:var(--scoole-space-xs)}.parent-period-menu>button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--scoole-space-xs);border:0;border-radius:var(--scoole-radius-default);padding:var(--scoole-space-xs);background:transparent;color:var(--scoole-on-surface);text-align:left;transition:background .15s,color .15s}.parent-period-menu>button:hover,.parent-period-menu>button:focus-visible{background:var(--scoole-surface-low);color:var(--scoole-primary)}.parent-period-menu>button.is-selected{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.parent-period-option-icon{width:var(--scoole-space-lg);height:var(--scoole-space-lg);display:grid;place-items:center;border-radius:var(--scoole-radius-default);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.parent-period-option-icon svg{width:16px}.parent-period-menu>button>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.parent-period-menu strong{font-size:12px;line-height:14px}.parent-period-menu small{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.parent-period-menu>button>svg{width:17px;color:var(--scoole-primary)}.parent-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--scoole-space-sm)}.parent-stat-card{display:flex;align-items:flex-start;gap:var(--scoole-space-sm);padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1);transition:transform .2s,box-shadow .2s}.parent-stat-card:not(.parent-skeleton):hover{transform:translateY(calc(var(--scoole-space-base) * -1));box-shadow:var(--scoole-shadow-level-2)}.parent-stat-icon{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;flex:0 0 var(--scoole-touch-target);border-radius:var(--scoole-radius-md)}.parent-stat-icon svg{width:21px}.stat-time .parent-stat-icon,.stat-assessment .parent-stat-icon{background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.stat-days .parent-stat-icon,.stat-exercises .parent-stat-icon{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.stat-accuracy .parent-stat-icon{background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant)}.parent-stat-card>div:last-child{display:flex;min-width:0;flex-direction:column}.parent-stat-card span{color:var(--scoole-on-surface-variant);font-size:14px;line-height:16px;font-weight:600}.parent-stat-card strong{margin:var(--scoole-space-xs) 0 var(--scoole-space-base);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.parent-stat-card small{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.parent-skeleton{overflow:hidden;background:linear-gradient(100deg,var(--scoole-surface-lowest) 20%,var(--scoole-surface-high) 48%,var(--scoole-surface-lowest) 76%);background-size:220% 100%;animation:parent-shimmer 1.5s ease-in-out infinite}.parent-skeleton>span{width:var(--scoole-touch-target);height:var(--scoole-touch-target);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-highest)}.parent-skeleton>div{flex:1}.parent-skeleton i,.parent-skeleton b{display:block;height:var(--scoole-space-xs);margin:var(--scoole-space-base) 0 var(--scoole-space-sm);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-highest)}.parent-skeleton b{width:53%;height:var(--scoole-space-lg)}.parent-skeleton i:last-child{width:70%}.parent-error{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm);border:1px solid var(--scoole-error);border-radius:var(--scoole-radius-md);background:var(--scoole-error-container);color:var(--scoole-on-error-container);font-size:14px;line-height:20px}.parent-error button{min-height:var(--scoole-touch-target);border:0;border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-error);color:var(--scoole-surface-lowest);font-weight:700}.parent-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.8fr);gap:var(--scoole-space-md);margin-top:var(--scoole-space-lg)}.parent-recent-card{padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.parent-count-badge{min-width:var(--scoole-space-lg);height:var(--scoole-space-lg);display:grid;place-items:center;border-radius:var(--scoole-radius-default);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;font-weight:600}.parent-session-list{display:grid;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-sm)}.parent-session-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low);border:1px solid transparent}.parent-session-row:hover{border-color:var(--scoole-outline-variant);background:var(--scoole-surface-lowest)}.parent-subject-icon{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border-radius:var(--scoole-radius-md)}.parent-subject-icon svg{width:19px}.tone-violet,.tone-coral,.tone-mint,.tone-blue{background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.parent-session-copy{display:flex;min-width:0;flex-direction:column}.parent-session-copy>span{color:var(--scoole-primary);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.parent-session-copy strong{margin:var(--scoole-space-base) 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:20px}.parent-session-copy small{display:flex;align-items:center;gap:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.parent-session-copy small svg{width:12px}.parent-session-copy small i{width:3px;height:3px;margin:0 var(--scoole-space-base);border-radius:var(--scoole-radius-full);background:var(--scoole-outline-variant)}.parent-result{display:flex;align-items:center;gap:var(--scoole-space-base);padding:var(--scoole-space-xs);border-radius:var(--scoole-radius-full);font-size:12px;line-height:14px;font-weight:600;white-space:nowrap}.parent-result svg{width:14px}.parent-result.is-correct,.parent-result.is-completed{background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant)}.parent-result.is-review,.parent-result.is-active{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.parent-result.is-paused{background:var(--scoole-surface-highest);color:var(--scoole-on-surface-variant)}.parent-recent-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);padding-top:var(--scoole-space-sm);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.parent-recent-footer button{min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-surface-low);color:var(--scoole-primary);font-weight:700}.parent-recent-footer button:hover{background:var(--scoole-primary-fixed)}.parent-period-empty{display:grid;place-content:center;justify-items:center;padding:var(--scoole-space-xl);text-align:center}.parent-period-empty>span{width:var(--scoole-space-xl);height:var(--scoole-space-xl);display:grid;place-items:center;border-radius:var(--scoole-radius-lg);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.parent-period-empty svg{width:var(--scoole-space-md)}.parent-period-empty h3{margin-top:var(--scoole-space-sm);font-size:20px;line-height:28px}.parent-period-empty p{max-width:330px;margin-top:var(--scoole-space-xs);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.parent-planning-banner{position:relative;overflow:hidden;padding:var(--scoole-space-md);border-radius:var(--scoole-radius-lg);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container);box-shadow:var(--scoole-shadow-level-2)}.parent-planning-banner:after{content:"";position:absolute;width:180px;height:180px;right:-75px;bottom:-95px;border:1px solid var(--scoole-primary-fixed-dim);border-radius:var(--scoole-radius-full)}.parent-planning-banner .parent-eyebrow{position:relative;z-index:1;margin-top:155px;background:var(--scoole-primary);color:var(--scoole-on-primary-container)}.parent-planning-banner h2{position:relative;z-index:1;margin:var(--scoole-space-sm) 0 var(--scoole-space-xs);font-size:20px;line-height:28px;font-weight:700}.parent-planning-banner p{position:relative;z-index:1;color:var(--scoole-on-primary-container);font-size:14px;line-height:20px}.parent-planning-banner>button{position:relative;z-index:1;min-height:var(--scoole-touch-target);display:flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-sm);border:1px solid var(--scoole-primary-fixed-dim);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-primary);color:var(--scoole-on-primary-container);font-size:14px;font-weight:600;cursor:not-allowed}.parent-planning-banner>button svg{width:15px}.planning-art{position:absolute;left:0;top:0;width:100%;height:180px;display:grid;place-items:center}.planning-art>svg{position:relative;z-index:1;width:65px;height:65px;padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-primary);box-shadow:var(--scoole-shadow-level-2);transform:rotate(-6deg)}.planning-art>i{position:absolute;z-index:2;left:calc(50% + 38px);top:29px;width:var(--scoole-space-lg);height:var(--scoole-space-lg);display:grid;place-items:center;border-radius:var(--scoole-radius-default);background:var(--scoole-tertiary-fixed-dim);color:var(--scoole-on-tertiary-fixed-variant);transform:rotate(10deg)}.planning-art>i svg{width:15px;fill:currentColor}.planning-orbit{position:absolute;border:1px solid var(--scoole-primary-fixed-dim);border-radius:var(--scoole-radius-full);transform:rotate(-12deg)}.planning-orbit.orbit-one{width:245px;height:95px}.planning-orbit.orbit-two{width:188px;height:70px;transform:rotate(22deg)}.parent-family-empty,.parent-students-page{padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.parent-mobile-header{display:none}.parent-drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90}.parent-drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;border:0;background:color-mix(in srgb,var(--scoole-inverse-surface) 48%,transparent)}.parent-mobile-drawer{position:relative;z-index:1;width:min(310px,87vw);height:100%;display:flex;flex-direction:column;padding:var(--scoole-space-md) var(--scoole-space-sm);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-2);animation:parent-drawer-in .23s ease both}.parent-mobile-drawer .parent-brand>button{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;margin-left:auto;border:0;border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant)}.parent-mobile-drawer .parent-brand>button svg{width:18px}.parent-shell :is(a,button):focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.parent-shell :is(a,button):active:not(:disabled){transform:none;box-shadow:var(--scoole-shadow-level-1)}.parent-shell button:disabled{opacity:.6}@keyframes parent-shimmer{50%{background-position:100% 0}}@keyframes parent-drawer-in{0%{transform:translate(-100%)}}@keyframes parent-dropdown-in{0%{opacity:0;transform:translateY(-5px) scale(.98)}}@media(max-width:1050px){.parent-main{padding-left:var(--scoole-space-lg);padding-right:var(--scoole-space-lg)}.parent-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parent-dashboard-grid{grid-template-columns:1fr}.parent-planning-banner .parent-eyebrow{margin-top:130px}}@media(max-width:767px){.parent-sidebar{display:none}.parent-content{margin-left:0}.parent-mobile-header{position:sticky;top:0;z-index:35;height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--scoole-margin-mobile);border-bottom:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest)}.parent-icon-button{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}.parent-icon-button svg{width:20px}.parent-mobile-brand{display:flex;align-items:center;gap:var(--scoole-space-xs);color:var(--scoole-primary);font-size:20px;line-height:28px;font-weight:700}.parent-mobile-brand svg{width:17px;fill:currentColor}.parent-mobile-header .student-avatar{width:40px;height:40px;flex-basis:40px;border-radius:var(--scoole-radius-md)}.parent-mobile-placeholder{width:40px}.parent-main{padding:var(--scoole-space-lg) var(--scoole-margin-mobile) var(--scoole-space-xl)}.parent-heading-row{align-items:flex-start;flex-direction:column;margin-bottom:var(--scoole-space-lg)}.parent-students-heading>div{width:100%}.parent-heading-row h1{font-size:24px;line-height:32px}.parent-heading-row p{line-height:20px}.parent-student-dropdown,.parent-student-trigger{width:100%}.parent-student-menu{left:0;right:auto;width:min(300px,calc(100vw - var(--scoole-space-lg)))}.parent-section-heading{align-items:flex-start;flex-direction:column}.parent-period-dropdown,.parent-period-trigger{width:100%}.parent-period-menu{left:0;right:auto;width:min(320px,calc(100vw - var(--scoole-space-lg)))}.parent-stat-grid{grid-template-columns:1fr;gap:var(--scoole-space-sm)}.parent-stat-card{padding:var(--scoole-space-sm)}.parent-stat-card strong{font-size:24px;line-height:32px}.parent-dashboard-grid{margin-top:var(--scoole-space-md)}.parent-recent-card{padding:var(--scoole-space-sm)}.parent-recent-card>.parent-section-heading{flex-direction:row}.parent-session-row{grid-template-columns:auto minmax(0,1fr);padding:var(--scoole-space-sm)}.parent-result{grid-column:2;justify-self:start}.parent-recent-footer{align-items:flex-start;flex-direction:column}.parent-recent-footer button{width:100%}.parent-family-empty,.parent-students-page{padding:var(--scoole-space-sm)}.parent-family-empty .family-empty-intro{align-items:flex-start}}@media(max-width:400px){.parent-session-copy small{flex-wrap:wrap}.parent-session-copy small i{display:none}}@keyframes story-float{50%{transform:translateY(-12px) rotate(1deg)}}@keyframes cloud-drift{to{transform:translate(90px)}}@keyframes step-in{0%{opacity:0;transform:translateY(9px)}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:850px){.auth-atmosphere{padding:0;display:block;overflow:auto}.auth-shell,.auth-shell-compact{display:block;min-height:100vh;border-radius:0}.auth-story-panel{min-height:155px;padding:25px 24px;align-items:flex-start;text-align:left}.auth-story-panel:after{display:none}.auth-story-panel .scoole-logo{font-size:31px}.auth-story-panel>p{font-size:13px;margin:5px 0}.story-scene{position:absolute;right:23px;top:-23px;transform:scale(.48);transform-origin:top right;margin:0}.story-caption,.story-orbit{display:none}.auth-content-panel{padding:58px 22px 38px;align-items:flex-start}.auth-language{top:15px;right:18px}.registration-flow{padding-top:4px}.wizard-step{margin-top:28px}.wizard-step h1,.login-card h1,.migration-form h1{font-size:27px}.two-fields{grid-template-columns:1fr;gap:14px}.family-form-grid{grid-template-columns:1fr;gap:var(--scoole-space-sm)}.migration-form .two-fields{margin-top:14px}.family-manager-heading{flex-direction:column}.family-inline-form{grid-template-columns:1fr;margin-left:0}.family-inline-form .password-field{grid-column:auto}.family-card-actions{padding-left:0;flex-wrap:wrap}}@media(max-width:480px){.auth-story-panel{min-height:120px;padding:20px}.auth-story-panel>p{max-width:210px}.story-scene{right:6px;top:-36px;transform:scale(.4)}.auth-content-panel{padding-top:52px}.children-summary article{align-items:flex-start;flex-wrap:wrap}.children-summary article div{min-width:calc(100% - 70px)}.children-summary article>.child-edit-access{margin-left:58px}.wizard-actions{position:sticky;bottom:0;background:linear-gradient(transparent,#fff 22%);padding-top:26px;padding-bottom:8px}.scoole-primary-button{padding:0 17px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}}.student-avatar img{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.student-avatar-fallback{display:grid;place-items:center;background:#efe6ff}.student-avatar-fallback img{width:70%;height:70%;-o-object-fit:contain;object-fit:contain}.student-shell{min-height:100vh;background:radial-gradient(circle at 92% 2%,rgba(211,187,255,.22),transparent 27%),#faf7fc;color:#211a2b}.student-sidebar{position:fixed;inset:0 auto 0 0;width:252px;z-index:30;display:flex;flex-direction:column;padding:28px 19px 22px;background:#fffffff5;border-right:1px solid #e6ddec;box-shadow:8px 0 32px #371e4e06}.student-sidebar-heading{min-height:50px;padding:0 8px}.student-sidebar-heading>button{margin-left:auto}.student-profile{display:flex;align-items:center;gap:11px;margin:24px 0 27px;padding:10px;border-radius:16px;background:#f7f1fd;border:1px solid #eee4f7}.student-profile .student-avatar{width:46px;height:46px;flex-basis:46px;border-radius:14px}.student-profile>span:last-child{display:flex;min-width:0;flex-direction:column}.student-profile strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.student-profile small{color:#72697d;font-size:11px}.student-sidebar nav{display:grid;grid-auto-rows:46px;align-content:start;gap:10px;flex:1}.student-sidebar nav a,.student-sidebar nav button{min-height:46px;width:100%;display:flex;align-items:center;gap:12px;border:0;border-radius:13px;padding:0 13px;background:transparent;color:#696070;text-align:left;font-size:14px;font-weight:700;transition:background .2s,color .2s,transform .2s}.student-sidebar nav svg{width:20px}.student-sidebar nav a:hover{background:#f6f0fb;color:#6420cb;transform:translate(2px)}.student-sidebar nav .active{background:#eee3ff;color:#681fd0;box-shadow:inset 3px 0 #8b46ff}.student-sidebar nav button:disabled{cursor:not-allowed;color:#9b929f}.student-sidebar nav em{margin-left:auto;padding:4px 7px;border-radius:99px;background:#f1edf5;color:#756d7d;font-size:8px;font-style:normal;text-transform:uppercase;letter-spacing:.04em}.student-new-session{min-height:48px;display:flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:14px;background:#782ee7;color:#fff;font-weight:700;box-shadow:0 10px 24px #7121e533;transition:transform .2s,box-shadow .2s,background .2s}.student-sidebar>.student-new-session{margin-top:16px}.student-new-session:hover{background:#6820d2;transform:translateY(-2px);box-shadow:0 14px 28px #7121e540}.student-new-session svg{width:19px}.student-utility-actions{margin-top:14px}.student-content{min-height:100vh;margin-left:252px}.student-mobile-header{display:none}.student-main{max-width:1240px;margin:0 auto;padding:56px 52px 72px}.student-hero{text-align:center;max-width:720px;margin:0 auto 42px}.student-hero>span{display:inline-flex;padding:7px 12px;border-radius:99px;background:#eee3ff;color:#7023dc;font-size:12px;font-weight:700}.student-hero h1{margin:15px 0 10px;font-size:42px;line-height:1.12;font-weight:700;letter-spacing:-.04em}.student-hero p{color:#6b6275;font-size:17px;line-height:1.6}.student-goal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.student-goal-card{min-height:330px;display:flex;flex-direction:column;align-items:flex-start;padding:30px;border:1px solid #e7dfee;border-radius:24px;background:#fff;text-align:left;box-shadow:0 8px 28px #371f520f;transition:transform .25s,box-shadow .25s,border-color .25s}.student-goal-card:not(:disabled):hover{transform:translateY(-6px);border-color:#9e65ef;box-shadow:0 18px 38px #4a247921}.student-goal-card:disabled{cursor:not-allowed;background:#fbfafd}.student-goal-icon{width:67px;height:67px;display:grid;place-items:center;margin-bottom:25px;border-radius:19px;background:#eee3ff;color:#7121e5}.student-goal-icon svg{width:30px;height:30px}.goal-study .student-goal-icon{background:#fff0dc;color:#d17a05}.goal-lesson .student-goal-icon{background:#def6ee;color:#218560}.student-goal-card strong{font-size:21px}.student-goal-card p{margin:10px 0;color:#71697a;line-height:1.55}.student-goal-action{display:flex;align-items:center;gap:6px;margin-top:auto;color:#7022da;font-size:13px;font-weight:700}.student-goal-card:disabled .student-goal-action{padding:5px 9px;border-radius:99px;background:#f0edf3;color:#766e7d}.student-goal-action svg{width:16px}.student-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:38px}.student-page-heading h1{font-size:36px;line-height:1.15;font-weight:700;letter-spacing:-.035em}.student-page-heading p{margin-top:8px;color:#6d6576}.student-new-session.inline{padding:0 19px}.student-session-group{margin-top:34px}.student-session-group>h2{margin-bottom:15px;color:#554c60;font-size:18px;text-transform:capitalize}.student-session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.student-session-card{min-height:190px;padding:23px;border:1px solid #e8e0ef;border-radius:19px;background:#fff;text-align:left;box-shadow:0 5px 20px #331c4e0d;transition:.2s}.student-session-card:hover{border-color:#a979ed;box-shadow:0 12px 28px #4122671a;transform:translateY(-2px)}.student-session-card>div,.student-session-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.session-subject,.session-time,.student-session-card footer>span{display:flex;align-items:center;gap:7px}.session-subject{color:#6e24d6;font-size:13px;font-weight:700}.session-subject svg{width:18px}.session-time{padding:5px 8px;border-radius:99px;background:#f4eff9;color:#6e6477;font-size:11px}.session-time svg{width:14px}.student-session-card h3{min-height:53px;margin:22px 0 17px;font-size:18px;font-weight:700}.student-session-card footer{padding-top:14px;border-top:1px solid #eee8f3;color:#776f80;font-size:11px}.student-session-card footer svg{width:14px}.student-session-card footer>svg{margin-left:auto;color:#842fea}.session-status{padding:5px 8px;border-radius:99px;font-weight:700}.session-status.correct{background:#e3f6eb;color:#24764e}.session-status.incorrect{background:#fde8eb;color:#a63a4a}.session-status.active{background:#fff1d9;color:#92600e}.student-skeleton{animation:pulse 1.5s ease-in-out infinite;background:linear-gradient(100deg,#fff,#f2edf7,#fff);background-size:200% 100%}.student-empty{display:grid;justify-items:center;padding:70px 20px;border:1px dashed #d9cbe8;border-radius:24px;background:#fff;text-align:center}.student-empty>svg{width:44px;height:44px;color:#7a2de5}.student-empty h2{margin-top:15px;font-size:24px}.student-empty p{margin:6px 0 22px;color:#71697a}.student-error{max-width:700px;margin:24px auto 0;padding:13px 16px;border:1px solid #f1bfc7;border-radius:12px;background:#fff0f2;color:#9c3041}.student-icon-button{width:42px;height:42px;display:grid;place-items:center;border:1px solid #e1d8ea;border-radius:12px;background:#fff;color:#5e536a}.student-icon-button svg{width:21px}.student-drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80}.student-drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;border:0;background:#190f2573;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.student-sidebar.is-mobile{display:flex;z-index:81;box-shadow:20px 0 50px #20123129}.student-modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:20px;background:#190f257a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.student-session-modal{width:min(470px,100%);padding:25px;border-radius:23px;background:#fff;box-shadow:0 30px 70px #1a0d2a40}.student-session-modal>div{display:flex;align-items:center;justify-content:space-between}.student-session-modal h2{font-size:21px;font-weight:700}.student-session-modal>div button{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:10px;background:#f6f1fa;color:#665b70}.student-session-modal>div svg{width:19px}.student-session-modal form{display:grid;gap:17px;margin-top:22px}.student-session-modal label{display:grid;gap:7px;color:#494052;font-size:13px;font-weight:700}.student-session-modal select,.student-session-modal textarea{width:100%;border:1.5px solid #dcd2e7;border-radius:12px;padding:11px 13px;background:#fff}.student-session-modal textarea{resize:vertical}.student-session-modal form footer{display:flex;justify-content:flex-end;gap:10px;margin-top:5px}.student-session-modal form footer button:last-child{display:flex;gap:7px;background:#7529df}.student-session-modal form footer svg{width:16px}.student-new-session:disabled{cursor:not-allowed;border:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-high);color:var(--scoole-on-surface-variant);box-shadow:none;transform:none}@keyframes pulse{50%{background-position:100% 0}}.student-session-type-modal{width:min(680px,100%);padding:25px;border-radius:23px;background:#fff;box-shadow:0 30px 70px #1a0d2a40}.student-session-type-modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.student-session-type-modal h2{font-size:23px;font-weight:700;letter-spacing:-.02em}.student-session-type-modal header p{margin-top:6px;color:#71697a}.student-session-type-modal header>button{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border:0;border-radius:10px;background:#f6f1fa;color:#665b70}.student-session-type-modal header>button svg{width:19px}.session-type-options{display:grid;gap:12px;margin-top:24px}.session-type-option{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:17px;border:1px solid #e7dfee;border-radius:17px;background:#fff;text-align:left;transition:border-color .2s,box-shadow .2s,transform .2s}.session-type-option:not(:disabled):hover{border-color:#9e65ef;box-shadow:0 10px 25px #4a24791a;transform:translateY(-1px)}.session-type-option:disabled{cursor:not-allowed;background:#fbfafd;color:#817887}.session-type-option .student-goal-icon{width:50px;height:50px;margin:0;border-radius:14px}.session-type-option .student-goal-icon svg{width:23px;height:23px}.session-type-option>span:nth-child(2){display:grid;gap:4px}.session-type-option strong{font-size:16px}.session-type-option small{color:#71697a;line-height:1.4}.session-type-option:disabled small{color:#817887}.session-type-option>svg{width:18px;color:#7529df}.session-type-option:disabled>svg{display:none}@media(max-width:980px){.student-goal-grid{grid-template-columns:1fr}.student-goal-card{min-height:240px}.student-session-grid{grid-template-columns:1fr}}@media(max-width:767px){.student-sidebar:not(.is-mobile){display:none}.student-content{margin-left:0}.student-mobile-header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#fffffff0;border-bottom:1px solid #e9e1f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:25}.student-mobile-brand{display:flex;align-items:center;gap:8px;color:#6d22d4}.student-mobile-brand>i{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:#762be5;color:#fff;box-shadow:0 6px 15px #7121e52e;transform:rotate(-3deg)}.student-mobile-brand>i svg{width:15px;fill:currentColor}.student-mobile-brand strong{font-size:23px;line-height:1;letter-spacing:-.8px}.student-mobile-header .student-avatar{width:40px;height:40px;flex-basis:40px;border-radius:13px}.student-main{padding:38px 17px 58px}.student-hero{margin-bottom:29px;text-align:left}.student-hero h1{font-size:31px}.student-hero p{font-size:15px}.student-goal-grid{gap:15px}.student-goal-card{min-height:225px;padding:24px}.student-goal-icon{width:57px;height:57px;margin-bottom:19px}.student-page-heading{align-items:flex-start;flex-direction:column;margin-bottom:28px}.student-page-heading h1{font-size:30px}.student-new-session.inline{width:100%}.student-session-card{padding:19px}.student-sidebar.is-mobile{width:min(310px,87vw)}.student-sidebar.is-mobile .student-sidebar-heading{padding:0 8px}.student-sidebar.is-mobile nav{grid-auto-rows:49px;gap:7px}.student-sidebar.is-mobile nav a,.student-sidebar.is-mobile nav button{min-height:49px}.student-sidebar.is-mobile>.student-new-session{margin-top:14px}.student-session-type-modal{max-height:calc(100vh - 24px);overflow-y:auto;padding:20px}.student-session-type-modal h2{font-size:21px}.session-type-option{gap:12px;padding:14px}.session-type-option .student-goal-icon{width:44px;height:44px}.session-type-option small{font-size:12px}}.student-shell-home{background:var(--scoole-surface);color:var(--scoole-on-surface)}.student-shell-home .student-main{width:100%;max-width:1440px;padding:var(--scoole-space-xl) var(--scoole-margin-desktop)}.student-shell-home .student-hero{max-width:100%;margin:0 auto var(--scoole-space-xl);text-align:center}.student-shell-home .student-hero>span{padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em}.student-shell-home .student-hero h1{margin:var(--scoole-space-sm) 0 var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.student-shell-home .student-hero p{margin:0;color:var(--scoole-on-surface-variant);font-size:18px;line-height:26px;font-weight:500}.student-shell-home .student-goal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--scoole-space-md)}.student-shell-home .student-goal-card{min-width:0;min-height:0;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);box-shadow:var(--scoole-shadow-level-1);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.student-shell-home .student-goal-card:not(:disabled):hover{border-color:var(--scoole-primary);box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.student-shell-home .student-goal-card:not(:disabled):active{box-shadow:var(--scoole-shadow-level-1);transform:translateY(0)}.student-shell-home .student-goal-card:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.student-shell-home .student-goal-card:disabled{cursor:not-allowed;border-color:var(--scoole-outline-variant);border-style:dashed;background:var(--scoole-surface-lowest);color:var(--scoole-on-surface-variant);box-shadow:none}.student-goal-card-heading{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);margin-bottom:var(--scoole-space-md)}.student-shell-home .student-goal-icon{width:var(--scoole-space-xl);height:var(--scoole-space-xl);flex:0 0 var(--scoole-space-xl);margin:0;border-radius:var(--scoole-radius-md);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant)}.student-shell-home .student-goal-icon svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.student-shell-home .goal-study .student-goal-icon{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.student-shell-home .goal-lesson .student-goal-icon{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.student-goal-chip{display:inline-flex;align-items:center;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em}.student-goal-chip-study{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.student-goal-chip-lesson{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.student-shell-home .student-goal-card>strong{color:inherit;font-size:20px;line-height:28px;font-weight:700;overflow-wrap:anywhere}.student-shell-home .student-goal-description{display:block;margin:var(--scoole-space-xs) 0 var(--scoole-space-md);color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px;font-weight:500;overflow-wrap:anywhere}.student-shell-home .student-goal-action{min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-xs);margin-top:auto;color:var(--scoole-primary);font-size:14px;line-height:16px;font-weight:600}.student-shell-home .student-goal-card:disabled .student-goal-action{padding:0 var(--scoole-space-xs);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-high);color:var(--scoole-on-surface-variant)}.student-shell-home .student-goal-action svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.student-goals-heading{margin:0 0 var(--scoole-space-sm)}.student-goals-heading h2{margin:0;color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700}.student-goals-heading p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px;font-weight:500}@media(max-width:1100px){.student-shell-home .student-main{padding:var(--scoole-space-lg) var(--scoole-gutter) var(--scoole-space-xl)}.student-shell-home .student-goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:768px)and (max-width:900px){.student-shell-home .student-goal-grid{grid-template-columns:1fr}.student-shell-home .student-upcoming .agenda-item{grid-template-columns:auto minmax(0,1fr)}.student-shell-home .student-upcoming .agenda-item>button{grid-column:1/-1;width:100%}}@media(max-width:767px){.student-shell-home .student-main{padding:var(--scoole-space-lg) var(--scoole-margin-mobile) var(--scoole-space-xl)}.student-shell-home .student-hero{margin-bottom:var(--scoole-space-lg);text-align:left}.student-shell-home .student-hero h1{font-size:24px;line-height:32px;letter-spacing:0}.student-shell-home .student-hero p{font-size:16px;line-height:24px}.student-shell-home .student-goal-grid{grid-template-columns:1fr;gap:var(--scoole-space-sm)}.student-shell-home .student-goal-card{padding:var(--scoole-space-sm)}.student-goal-card-heading{margin-bottom:var(--scoole-space-sm)}}.student-shell-sessions{background:var(--scoole-surface);color:var(--scoole-on-surface)}.student-shell-sessions .student-main{width:100%;max-width:1440px;padding:var(--scoole-space-xl) var(--scoole-margin-desktop)}.student-sessions-page{width:100%;min-width:0}.student-sessions-page .student-page-heading{margin-bottom:var(--scoole-space-lg)}.student-sessions-page .student-page-heading h1{margin:0;color:var(--scoole-on-surface);font-size:32px;line-height:40px;letter-spacing:-.02em}.student-sessions-page .student-page-heading p{max-width:720px;margin:var(--scoole-space-xs) 0 0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.student-sessions-page .student-session-group{margin-top:var(--scoole-space-lg)}.student-sessions-page .student-session-group+.student-session-group{margin-top:var(--scoole-space-xl)}.student-sessions-page .student-session-group>h2{margin:0 0 var(--scoole-space-sm);color:var(--scoole-on-surface-variant);font-size:20px;line-height:28px;font-weight:700;text-transform:capitalize}.student-sessions-page .student-session-grid{gap:var(--scoole-space-md)}.student-sessions-page .student-session-card{min-width:0;min-height:224px;display:flex;flex-direction:column;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);text-align:left;box-shadow:var(--scoole-shadow-level-1);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.student-sessions-page .student-session-card:hover{border-color:var(--scoole-primary);box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.student-sessions-page .student-session-card>.student-session-card-heading{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--scoole-space-xs)}.student-sessions-page .session-subject{min-width:0;color:var(--scoole-primary);font-size:14px;line-height:20px;font-weight:600;overflow-wrap:anywhere}.student-sessions-page .session-subject svg{width:20px;height:20px;flex:0 0 auto}.student-sessions-page .session-type,.student-sessions-page .session-time,.student-sessions-page .session-status{min-height:28px;display:inline-flex;align-items:center;gap:var(--scoole-space-base);padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.student-sessions-page .session-type{background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant);text-transform:none}.student-sessions-page .session-type-study,.student-sessions-page .session-status.active{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.student-sessions-page .session-type-assessment,.student-sessions-page .session-status.correct{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.student-sessions-page .session-status.incorrect{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.student-sessions-page .session-time{background:var(--scoole-surface-container);color:var(--scoole-on-surface-variant)}.student-sessions-page .session-time svg,.student-sessions-page .session-status svg{width:16px;height:16px}.student-sessions-page .student-session-card h3{min-height:56px;margin:var(--scoole-space-md) 0;color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700;overflow-wrap:anywhere}.student-sessions-page .student-session-card footer{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);margin-top:auto;padding-top:var(--scoole-space-sm);border-top:1px solid var(--scoole-outline-variant);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.student-session-meta,.student-session-actions,.student-session-meta>span{display:flex;align-items:center}.student-session-meta{min-width:0;flex-wrap:wrap;gap:var(--scoole-space-xs)}.student-session-meta>span{gap:var(--scoole-space-base)}.student-session-meta>span:first-child svg{width:16px;height:16px}.student-session-actions{flex:0 0 auto;gap:var(--scoole-space-xs)}.student-open-session,.student-delete-session,.student-state-action{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);font-size:14px;line-height:16px;font-weight:600;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}.student-open-session{border:0;background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.student-open-session:hover:not(:disabled){box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.student-open-session:active:not(:disabled),.student-delete-session:active:not(:disabled),.student-state-action:active:not(:disabled){transform:translateY(0);box-shadow:none}.student-open-session:disabled,.student-delete-session:disabled,.student-state-action:disabled{cursor:not-allowed;opacity:.5;transform:none;box-shadow:none}.student-open-session svg,.student-delete-session svg,.student-state-action svg{width:18px;height:18px}.student-open-session:focus-visible,.student-delete-session:focus-visible,.student-state-action:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.student-session-state{min-height:280px;display:grid;place-content:center;justify-items:center;padding:var(--scoole-space-lg);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);text-align:center;box-shadow:var(--scoole-shadow-level-1)}.student-session-state>svg{width:48px;height:48px;color:var(--scoole-primary)}.student-session-state h2{margin:var(--scoole-space-sm) 0 0;color:var(--scoole-on-surface);font-size:20px;line-height:28px}.student-session-state p{max-width:520px;margin:var(--scoole-space-xs) 0 var(--scoole-space-md);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.student-state-action{border:0;background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.student-state-action:hover{box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.student-session-load-error>svg{color:var(--scoole-error)}.student-session-loading .student-skeleton{border-color:var(--scoole-outline-variant);background:linear-gradient(100deg,var(--scoole-surface-lowest),var(--scoole-surface-container),var(--scoole-surface-lowest));background-size:200% 100%}@media(max-width:1100px){.student-shell-sessions .student-main{padding:var(--scoole-space-lg) var(--scoole-gutter) var(--scoole-space-xl)}.student-sessions-page .student-session-grid{grid-template-columns:1fr}}@media(max-width:767px){.student-shell-sessions .student-main{padding:var(--scoole-space-lg) var(--scoole-margin-mobile) var(--scoole-space-xl)}.student-sessions-page .student-page-heading h1{font-size:24px;line-height:32px;letter-spacing:0}.student-sessions-page .student-page-heading{margin-bottom:var(--scoole-space-md)}.student-sessions-page .student-session-group{margin-top:var(--scoole-space-md)}.student-sessions-page .student-session-group+.student-session-group{margin-top:var(--scoole-space-lg)}.student-sessions-page .student-session-card{min-height:0;padding:var(--scoole-space-sm)}.student-sessions-page .student-session-card>.student-session-card-heading{grid-template-columns:minmax(0,1fr) auto}.student-sessions-page .session-time{grid-column:1/-1;justify-self:start}.student-sessions-page .student-session-card h3{min-height:0;margin:var(--scoole-space-sm) 0;font-size:20px;line-height:28px}.student-sessions-page .student-session-card footer{align-items:stretch;flex-direction:column}.student-session-actions{width:100%}.student-open-session{flex:1}.student-session-state{min-height:240px;padding:var(--scoole-space-md)}}@media(max-width:420px){.student-session-actions{align-items:stretch;flex-direction:column-reverse}.student-open-session,.student-delete-session{width:100%}}.parent-planning-banner>a{position:relative;z-index:1;min-height:var(--scoole-touch-target);display:flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-sm);border:1px solid var(--scoole-primary-fixed-dim);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-primary);color:var(--scoole-on-primary-container);font-size:14px;line-height:16px;font-weight:600;text-decoration:none}.parent-planning-banner>a:hover{box-shadow:var(--scoole-shadow-level-2)}.parent-planning-banner>a svg{width:16px;height:16px}.family-calendar{width:100%;min-width:0}.calendar-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--scoole-space-md)}.calendar-page-header h1{margin:var(--scoole-space-xs) 0;color:var(--scoole-on-surface);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.calendar-page-header p{margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.calendar-header-actions{display:flex;align-items:center;gap:var(--scoole-space-sm)}.calendar-view-switch{display:flex;padding:var(--scoole-space-base);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-container-highest,var(--scoole-surface-highest))}.calendar-view-switch button{min-height:var(--scoole-touch-target);border:0;border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:transparent;color:var(--scoole-on-surface-variant);font-size:14px;line-height:16px;font-weight:600}.calendar-view-switch button.is-active{background:var(--scoole-surface-lowest);color:var(--scoole-primary);box-shadow:var(--scoole-shadow-level-1)}.calendar-add-button,.calendar-form-panel footer button:not(.calendar-delete-button){min-height:var(--scoole-touch-target);gap:var(--scoole-space-xs);border:0!important;border-radius:var(--scoole-radius-default)!important;background:var(--scoole-primary-container)!important;color:var(--scoole-on-primary-container)!important;font-weight:600!important}.calendar-add-button svg{width:18px;height:18px}.calendar-student-filters{display:flex;align-items:center;flex-wrap:wrap;gap:var(--scoole-space-xs);margin:var(--scoole-space-md) 0}.calendar-student-filters>button{min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-xs);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-full);padding:var(--scoole-space-base) var(--scoole-space-sm) var(--scoole-space-base) var(--scoole-space-base);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface-variant);font-size:14px;line-height:16px;font-weight:600}.calendar-student-filters>button.is-selected{border-color:var(--scoole-primary);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.calendar-student-filters .student-avatar{width:36px;height:36px;flex:0 0 36px;border-radius:var(--scoole-radius-md);box-shadow:none}.calendar-notice,.calendar-error,.calendar-conflict,.calendar-form-error{margin-bottom:var(--scoole-space-sm);border-radius:var(--scoole-radius-default);padding:var(--scoole-space-sm);font-size:14px;line-height:20px;font-weight:600}.calendar-notice{background:var(--scoole-success-container);color:var(--scoole-on-success-container)}.calendar-error,.calendar-form-error{display:flex;align-items:center;gap:var(--scoole-space-xs);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.calendar-error button{margin-left:auto;border:0;background:transparent;color:inherit;font-weight:700;text-decoration:underline}.calendar-conflict{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.calendar-card{overflow:hidden;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.calendar-toolbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm) var(--scoole-space-md);border-bottom:1px solid var(--scoole-outline-variant)}.calendar-toolbar h2{margin:0;color:var(--scoole-on-surface);font-size:24px;line-height:32px;font-weight:700;text-transform:capitalize}.calendar-toolbar>div{display:flex;align-items:center;gap:var(--scoole-space-xs)}.calendar-toolbar button{min-width:var(--scoole-touch-target);min-height:var(--scoole-touch-target);display:grid;place-items:center;border:0;border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-xs);background:var(--scoole-surface-low);color:var(--scoole-primary);font-size:14px;line-height:16px;font-weight:600}.calendar-toolbar button svg{width:20px;height:20px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekday{padding:var(--scoole-space-xs);border-bottom:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant);text-align:center;font-size:14px;line-height:20px;font-weight:600;text-transform:capitalize}.calendar-day{min-width:0;min-height:136px;padding:var(--scoole-space-xs);border-right:1px solid var(--scoole-outline-variant);border-bottom:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest)}.calendar-grid-week .calendar-day{min-height:440px}.calendar-day:nth-child(7n){border-right:0}.calendar-day.is-outside{background:var(--scoole-surface-low)}.calendar-day.is-selected{box-shadow:inset 0 0 0 2px var(--scoole-primary)}.calendar-day-number{width:var(--scoole-space-lg);height:var(--scoole-space-lg);display:grid;place-items:center;border:0;border-radius:var(--scoole-radius-full);background:transparent;color:var(--scoole-on-surface);font-size:14px;line-height:20px;font-weight:600}.calendar-day.is-outside .calendar-day-number{color:var(--scoole-outline)}.calendar-day-events{display:grid;gap:var(--scoole-space-base);margin-top:var(--scoole-space-base)}.calendar-event-entry{min-width:0}.calendar-event{width:100%;min-width:0;min-height:var(--scoole-touch-target);display:grid;gap:var(--scoole-space-base);border:1px solid var(--scoole-outline-variant);border-inline-start:var(--scoole-space-base) solid var(--scoole-primary-fixed-dim);border-radius:var(--scoole-radius-default);padding:var(--scoole-space-base);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);text-align:left;transition:background .2s,border-color .2s,box-shadow .2s}.calendar-event:hover{border-color:var(--scoole-primary);background:var(--scoole-surface-low);box-shadow:var(--scoole-shadow-level-1)}.calendar-event:focus-visible{border-color:var(--scoole-primary);outline:2px solid var(--scoole-primary);outline-offset:2px}.calendar-event-study{border-inline-start-color:var(--scoole-tertiary-fixed-dim)}.calendar-event-assessment{border-inline-start-color:var(--scoole-primary)}.calendar-event-main{min-width:0;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:var(--scoole-space-base)}.calendar-event-type-icon{width:var(--scoole-space-md);height:var(--scoole-space-md);display:grid;place-items:center;border-radius:var(--scoole-radius-default);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant)}.calendar-event-type-icon>svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.calendar-event-study .calendar-event-type-icon{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.calendar-event-assessment .calendar-event-type-icon{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.calendar-event-main time{color:var(--scoole-primary);font-size:12px;line-height:14px;font-weight:700}.calendar-event-main strong{min-width:0;overflow:hidden;color:var(--scoole-on-surface);font-size:14px;line-height:20px;text-overflow:ellipsis;white-space:nowrap}.calendar-event-footer{min-width:0;display:flex;align-items:flex-start;flex-direction:column;gap:var(--scoole-space-base)}.calendar-event-student{width:100%;min-width:0;display:flex;align-items:center;gap:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.calendar-event-student>.student-avatar{width:var(--scoole-space-md);height:var(--scoole-space-md);flex:0 0 var(--scoole-space-md);border-radius:var(--scoole-radius-default);box-shadow:none}.calendar-event-student>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event-status{max-width:100%;flex:0 0 auto;overflow:hidden;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-highest);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-style:normal;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.calendar-event-status-started{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.calendar-event-status-completed{background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant)}.calendar-event-indicator{display:none}.calendar-more{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.calendar-skeleton{background:linear-gradient(100deg,var(--scoole-surface-lowest),var(--scoole-surface-container),var(--scoole-surface-lowest));background-size:200% 100%;animation:skeleton-wave 1.4s ease infinite}.calendar-mobile-day{display:none}.calendar-panel-layer{position:fixed;z-index:70;top:0;right:0;bottom:0;left:0;display:flex;justify-content:flex-end;background:color-mix(in srgb,var(--scoole-inverse-surface) 42%,transparent)}.calendar-form-panel{width:min(440px,100%);height:100%;overflow-y:auto;background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-2)}.calendar-form-panel>header{position:sticky;z-index:1;top:0;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm) var(--scoole-space-md);border-bottom:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest)}.calendar-form-panel>header>div{display:flex;align-items:center;gap:var(--scoole-space-xs)}.calendar-form-panel>header>div>svg{width:var(--scoole-space-lg);height:var(--scoole-space-lg);padding:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.calendar-form-panel h2{margin:0;color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700}.calendar-form-panel>header>button{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border:0;border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant)}.calendar-form-panel>form{display:grid;gap:var(--scoole-space-sm);padding:var(--scoole-space-md)}.calendar-form-panel label,.calendar-recurrence,.calendar-edit-scope{display:grid;gap:var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:14px;line-height:16px;font-weight:600}.calendar-form-panel input,.calendar-form-panel select,.calendar-form-panel textarea{width:100%;min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:var(--scoole-space-xs) var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font-size:16px;line-height:24px}.calendar-form-panel textarea{resize:vertical}.calendar-form-panel input:focus,.calendar-form-panel select:focus,.calendar-form-panel textarea:focus{border-color:var(--scoole-primary);outline:2px solid var(--scoole-primary-fixed);outline-offset:0}.calendar-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--scoole-space-sm)}.calendar-type-options,.calendar-recurrence>div{display:flex;flex-wrap:wrap;gap:var(--scoole-space-xs)}.calendar-type-options button,.calendar-recurrence button,.calendar-weekdays button{min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-full);padding:0 var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface-variant);font-size:14px;line-height:16px;font-weight:600}.calendar-type-options button.is-selected,.calendar-recurrence button.is-selected,.calendar-weekdays button.is-selected{border-color:var(--scoole-primary);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.calendar-weekdays{display:flex;gap:var(--scoole-space-xs);margin:0;border:0;padding:0}.calendar-weekdays legend{width:100%;margin-bottom:var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:14px;line-height:16px;font-weight:600}.calendar-weekdays button{width:var(--scoole-touch-target);padding:0;text-transform:uppercase}.calendar-edit-scope label{display:flex;align-items:center;grid-template-columns:auto 1fr;min-height:var(--scoole-touch-target)}.calendar-edit-scope input{width:20px;min-height:20px;margin:0}.calendar-form-panel footer{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:var(--scoole-space-xs);margin:var(--scoole-space-xs) calc(var(--scoole-space-md) * -1) calc(var(--scoole-space-md) * -1);padding:var(--scoole-space-sm) var(--scoole-space-md);border-top:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest)}.calendar-form-panel footer .calendar-delete-button{margin-right:auto;border:1px solid var(--scoole-error)!important;background:var(--scoole-surface-lowest)!important;color:var(--scoole-error)!important}.calendar-form-panel footer button:nth-last-child(2){border:1px solid var(--scoole-outline-variant)!important;background:var(--scoole-surface-lowest)!important;color:var(--scoole-primary)!important}.calendar-form-field{display:grid;gap:var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:14px;line-height:16px;font-weight:600}.scoole-listbox{position:relative;min-width:0}.scoole-listbox-trigger{width:100%;min-height:var(--scoole-touch-target);display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-xs);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:var(--scoole-space-xs) var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font-family:inherit;font-size:16px;line-height:24px;font-weight:500;text-align:left}.scoole-listbox-trigger>span,.scoole-listbox-options button>span{min-width:0;display:flex;align-items:center;gap:var(--scoole-space-xs)}.scoole-listbox-trigger .student-avatar,.scoole-listbox-options .student-avatar{width:var(--scoole-space-lg);height:var(--scoole-space-lg);flex:0 0 var(--scoole-space-lg);border-radius:var(--scoole-radius-default);box-shadow:none}.scoole-listbox-trigger>svg{width:20px;flex:0 0 20px;color:var(--scoole-on-surface-variant);transition:transform .2s}.scoole-listbox-trigger[aria-expanded=true]{border-color:var(--scoole-primary);outline:2px solid var(--scoole-primary-fixed)}.scoole-listbox-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.scoole-listbox-trigger:disabled{cursor:not-allowed;background:var(--scoole-surface-high);color:var(--scoole-on-surface-variant);opacity:.72}.scoole-listbox-options{position:absolute;z-index:4;top:calc(100% + var(--scoole-space-base));left:0;width:100%;max-height:calc(var(--scoole-touch-target) * 5 + var(--scoole-space-xs));overflow-y:auto;display:grid;gap:var(--scoole-space-base);padding:var(--scoole-space-xs);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-2)}.scoole-listbox-options button{width:100%;min-height:var(--scoole-touch-target);display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-xs);border:0;border-radius:var(--scoole-radius-default);padding:var(--scoole-space-xs);background:transparent;color:var(--scoole-on-surface);font-family:inherit;font-size:14px;line-height:20px;font-weight:600;text-align:left}.scoole-listbox-options button:hover,.scoole-listbox-options button:focus-visible{background:var(--scoole-surface-low);color:var(--scoole-primary)}.scoole-listbox-options button.is-selected{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.scoole-listbox-options button>svg{width:18px;flex:0 0 18px;color:var(--scoole-primary)}.calendar-form-panel :is(input,textarea,.scoole-listbox-trigger)[aria-invalid=true]{border-color:var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.calendar-form-panel :is(input,textarea,.scoole-listbox-trigger)[aria-invalid=true]:focus{outline:2px solid var(--scoole-error)}.calendar-field-error{width:100%;margin:0;color:var(--scoole-error);font-size:12px;line-height:14px;font-weight:600}.calendar-weekdays[aria-invalid=true]{padding:var(--scoole-space-xs);border:1px solid var(--scoole-error);border-radius:var(--scoole-radius-default);background:var(--scoole-error-container)}.student-shell-agenda{background:var(--scoole-surface);color:var(--scoole-on-surface)}.student-shell-agenda .student-main{width:100%;max-width:1440px;padding:var(--scoole-space-xl) var(--scoole-margin-desktop)}.student-agenda-page .student-page-heading h1{margin:var(--scoole-space-xs) 0;color:var(--scoole-on-surface);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.student-agenda-page .student-page-heading p{margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.student-upcoming{margin-bottom:var(--scoole-space-xl)}.student-upcoming>header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--scoole-space-sm);margin-bottom:var(--scoole-space-sm)}.student-upcoming>header h2{margin:0;color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700}.student-upcoming>header p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.student-upcoming>header a{min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-xs);color:var(--scoole-primary);font-size:14px;line-height:16px;font-weight:600;text-decoration:none}.student-upcoming>header a svg{width:16px;height:16px}.agenda-list{display:grid;gap:var(--scoole-space-sm)}.agenda-item{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.agenda-type-icon{width:var(--scoole-space-xl);height:var(--scoole-space-xl);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant)}.agenda-type-icon svg{width:24px;height:24px}.agenda-type-study{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.agenda-type-assessment{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.agenda-item-copy{min-width:0}.agenda-item-copy>div{display:flex;flex-wrap:wrap;gap:var(--scoole-space-xs)}.agenda-status,.agenda-session-type{display:inline-flex;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-highest);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.agenda-status-started,.agenda-status-available{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.agenda-status-overdue{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.agenda-status-completed{background:var(--scoole-success-container);color:var(--scoole-on-success-container)}.agenda-item h3{margin:var(--scoole-space-xs) 0 var(--scoole-space-base);color:var(--scoole-on-surface);font-size:16px;line-height:24px;font-weight:700;overflow-wrap:anywhere}.agenda-item p{display:flex;align-items:center;flex-wrap:wrap;gap:var(--scoole-space-xs) var(--scoole-space-sm);margin:0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.agenda-item p span{display:flex;align-items:center;gap:var(--scoole-space-base)}.agenda-item p svg{width:16px;height:16px}.agenda-item>button{min-height:var(--scoole-touch-target);border:0!important;border-radius:var(--scoole-radius-default)!important;background:var(--scoole-primary-container)!important;color:var(--scoole-on-primary-container)!important;font-size:14px;font-weight:600!important}.agenda-item>button:disabled{cursor:not-allowed;border:1px solid var(--scoole-outline-variant)!important;background:var(--scoole-surface-highest)!important;color:var(--scoole-on-surface)!important;opacity:1!important}.agenda-empty{min-height:144px;display:flex;align-items:center;justify-content:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-md);border:1px dashed var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);text-align:left}.agenda-empty>svg{width:48px;height:48px;color:var(--scoole-primary)}.agenda-empty h3{margin:0;font-size:20px;line-height:28px}.agenda-empty p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.agenda-skeleton{height:112px;margin-bottom:var(--scoole-space-sm);border-radius:var(--scoole-radius-lg);background:linear-gradient(100deg,var(--scoole-surface-lowest),var(--scoole-surface-container),var(--scoole-surface-lowest));background-size:200% 100%;animation:skeleton-wave 1.4s ease infinite}@media(max-width:1100px){.calendar-page-header{align-items:flex-start;flex-direction:column}.calendar-header-actions{width:100%;justify-content:space-between}.calendar-day{min-height:120px}.student-shell-agenda .student-main{padding:var(--scoole-space-lg) var(--scoole-gutter) var(--scoole-space-xl)}}@media(min-width:768px)and (max-width:900px){.calendar-weekday{font-size:12px;line-height:14px}.calendar-day,.calendar-grid-week .calendar-day{min-height:52px;padding:var(--scoole-space-base)}.calendar-day-number{width:var(--scoole-touch-target);height:var(--scoole-touch-target);margin:auto}.calendar-day-events{display:flex;justify-content:center;gap:var(--scoole-space-base);margin:0}.calendar-event{display:none}.calendar-event-indicator{width:6px;height:6px;display:block;border-radius:var(--scoole-radius-full);background:var(--scoole-secondary-fixed)}.calendar-event-indicator-study{background:var(--scoole-tertiary-fixed)}.calendar-event-indicator-assessment{background:var(--scoole-primary-fixed)}.calendar-more{display:none}.calendar-mobile-day{display:block;margin-top:var(--scoole-space-sm);padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.calendar-mobile-day>div{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-xs)}.calendar-mobile-day h2{margin:0;font-size:16px;line-height:24px;font-weight:700;text-transform:capitalize}.calendar-mobile-day>div>button{min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-base);border:0;background:transparent;color:var(--scoole-primary);font-size:14px;font-weight:600}.calendar-mobile-day>p{margin:var(--scoole-space-sm) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.calendar-mobile-day>button{width:100%;min-height:var(--scoole-touch-target);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-xs);border:0;border-radius:var(--scoole-radius-default);padding:var(--scoole-space-xs);background:var(--scoole-surface-low);color:var(--scoole-on-surface);text-align:left}.calendar-mobile-day>button>span{display:grid}.calendar-mobile-day>button small{color:var(--scoole-on-surface-variant)}.calendar-mobile-day>button svg{width:18px;height:18px;color:var(--scoole-primary)}}@media(max-width:767px){.calendar-page-header h1,.student-agenda-page .student-page-heading h1{font-size:24px;line-height:32px;letter-spacing:0}.calendar-header-actions{align-items:stretch;flex-direction:column}.calendar-add-button{width:100%}.calendar-view-switch{display:grid;grid-template-columns:1fr 1fr}.calendar-student-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:var(--scoole-space-xs)}.calendar-student-filters>button{flex:0 0 auto}.calendar-toolbar{min-height:0;align-items:flex-start;flex-direction:column;padding:var(--scoole-space-sm)}.calendar-toolbar h2{font-size:20px;line-height:28px}.calendar-toolbar>div{width:100%;justify-content:space-between}.calendar-weekday{font-size:12px;line-height:14px}.calendar-day,.calendar-grid-week .calendar-day{min-height:52px;padding:var(--scoole-space-base)}.calendar-day-number{width:var(--scoole-touch-target);height:var(--scoole-touch-target);margin:auto}.calendar-day-events{display:flex;justify-content:center;gap:var(--scoole-space-base);margin:0}.calendar-event{display:none}.calendar-event-indicator{width:6px;height:6px;display:block;border-radius:var(--scoole-radius-full);background:var(--scoole-secondary-fixed)}.calendar-event-indicator-study{background:var(--scoole-tertiary-fixed)}.calendar-event-indicator-assessment{background:var(--scoole-primary-fixed)}.calendar-more{display:none}.calendar-mobile-day{display:block;margin-top:var(--scoole-space-sm);padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.calendar-mobile-day>div{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-xs)}.calendar-mobile-day h2{margin:0;font-size:16px;line-height:24px;font-weight:700;text-transform:capitalize}.calendar-mobile-day>div>button{min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-base);border:0;background:transparent;color:var(--scoole-primary);font-size:14px;font-weight:600}.calendar-mobile-day>p{margin:var(--scoole-space-sm) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.calendar-mobile-day>button{width:100%;min-height:var(--scoole-touch-target);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-xs);border:0;border-radius:var(--scoole-radius-default);padding:var(--scoole-space-xs);background:var(--scoole-surface-low);color:var(--scoole-on-surface);text-align:left}.calendar-mobile-day>button>span{display:grid}.calendar-mobile-day>button small{color:var(--scoole-on-surface-variant)}.calendar-mobile-day>button svg{width:18px;height:18px;color:var(--scoole-primary)}.calendar-form-panel{width:100%;height:min(92vh,100%);margin-top:auto;border-radius:var(--scoole-radius-lg) var(--scoole-radius-lg) 0 0}.calendar-form-panel>form{padding:var(--scoole-space-sm)}.calendar-form-row{grid-template-columns:1fr}.calendar-form-panel footer{align-items:stretch;flex-direction:column;margin:var(--scoole-space-xs) calc(var(--scoole-space-sm) * -1) calc(var(--scoole-space-sm) * -1);padding:var(--scoole-space-sm)}.calendar-form-panel footer .calendar-delete-button{margin-right:0}.student-shell-agenda .student-main{padding:var(--scoole-space-lg) var(--scoole-margin-mobile) var(--scoole-space-xl)}.student-upcoming{margin-bottom:var(--scoole-space-lg)}.student-upcoming>header{align-items:flex-start}.agenda-item{grid-template-columns:auto minmax(0,1fr)}.agenda-item>button{grid-column:1/-1;width:100%}.agenda-type-icon{width:var(--scoole-touch-target);height:var(--scoole-touch-target)}.agenda-empty{align-items:flex-start;flex-direction:column}.student-shell-home .student-upcoming{margin-bottom:var(--scoole-space-lg)}}@media(max-width:900px){.calendar-mobile-event{border:1px solid var(--scoole-outline-variant)!important;border-inline-start:var(--scoole-space-base) solid var(--scoole-primary-fixed-dim)!important;background:var(--scoole-surface-lowest)!important}.calendar-mobile-event-study{border-inline-start-color:var(--scoole-tertiary-fixed-dim)!important}.calendar-mobile-event-assessment{border-inline-start-color:var(--scoole-primary)!important}.calendar-mobile-event:hover,.calendar-mobile-event:focus-visible{border-color:var(--scoole-primary)!important;background:var(--scoole-surface-low)!important}.calendar-mobile-event:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.calendar-mobile-event-icon{width:var(--scoole-space-lg);height:var(--scoole-space-lg);display:grid;place-items:center!important;border-radius:var(--scoole-radius-default);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant)}.calendar-mobile-event-study .calendar-mobile-event-icon{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.calendar-mobile-event-assessment .calendar-mobile-event-icon{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.calendar-mobile-event-icon>svg{width:var(--scoole-space-sm)!important;height:var(--scoole-space-sm)!important;color:inherit!important}.calendar-mobile-event-copy{min-width:0;gap:var(--scoole-space-base)}.calendar-mobile-event-copy>strong,.calendar-mobile-event-copy>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-mobile-event-copy>strong{font-size:14px;line-height:20px}.calendar-mobile-event-copy>small{font-size:12px;line-height:14px}.calendar-mobile-event-student{min-width:0;display:flex!important;align-items:center;gap:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.calendar-mobile-event-student>.student-avatar{width:var(--scoole-space-md);height:var(--scoole-space-md);flex:0 0 var(--scoole-space-md);border-radius:var(--scoole-radius-default);box-shadow:none}.calendar-mobile-event-student>.student-avatar>svg{width:100%!important;height:100%!important;color:inherit!important}.calendar-mobile-event-student>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-mobile-event-student>.calendar-event-status{margin-left:auto}.calendar-mobile-event>svg{flex:0 0 18px}}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-indigo-500:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.education-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--scoole-space-sm);margin-bottom:var(--scoole-space-sm)}.education-fields label,.family-education-editor>label{display:grid;gap:var(--scoole-space-xs);font-size:14px;line-height:16px;font-weight:600;color:var(--scoole-on-surface)}.education-select-shell{position:relative;min-width:0;display:block}.education-select{width:100%;min-height:var(--scoole-touch-target);display:block;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 calc(var(--scoole-space-lg) + var(--scoole-space-xs)) 0 var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font-family:Quicksand,sans-serif;font-size:16px;line-height:24px;font-weight:500;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}.education-select-shell>svg{position:absolute;top:50%;right:var(--scoole-space-sm);width:20px;height:20px;transform:translateY(-50%);pointer-events:none;color:var(--scoole-on-surface-variant);transition:color .2s,transform .2s}.education-select-shell:hover .education-select:not(:disabled):not([aria-invalid=true]){border-color:var(--scoole-primary)}.education-select-shell:hover>svg{color:var(--scoole-primary)}.education-select:focus-visible{border-color:var(--scoole-primary);outline:2px solid var(--scoole-primary);outline-offset:2px;box-shadow:0 0 0 2px var(--scoole-primary-fixed)}.education-select:focus-visible+svg{color:var(--scoole-primary)}.education-select:not(:disabled):not([aria-invalid=true]):active{background:var(--scoole-surface-low)}.education-select:disabled{cursor:not-allowed;background:var(--scoole-surface-high);color:var(--scoole-on-surface-variant);opacity:.72}.education-select:disabled+svg{color:var(--scoole-outline)}.family-education-editor>label input,.family-custom-add input,.family-isbn-field input{width:100%;min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font:inherit}.family-education-editor :is(input,select,button):focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.education-select[aria-invalid=true],.subject-select>select[aria-invalid=true],.subject-select-custom input[aria-invalid=true]{border-color:var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.education-select[aria-invalid=true]+svg{color:var(--scoole-error)}.education-select[aria-invalid=true]:focus-visible,.subject-select>select[aria-invalid=true]:focus-visible,.subject-select-custom input[aria-invalid=true]:focus-visible{border-color:var(--scoole-error);outline:2px solid var(--scoole-error);outline-offset:2px;box-shadow:0 0 0 2px var(--scoole-error-container)}.education-field-error{margin:0;color:var(--scoole-error);font-size:12px;line-height:14px;font-weight:600}.education-hint{grid-column:1/-1;margin:0;padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:14px;line-height:20px}.education-programmes{grid-column:1/-1;display:grid;gap:var(--scoole-space-sm);margin:0;padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest)}.education-programmes legend{padding:0 var(--scoole-space-xs);font-size:14px;line-height:16px;font-weight:600}.education-programmes>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--scoole-space-xs)}.education-programmes>div label{display:flex;min-height:var(--scoole-touch-target);align-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low)}.education-programmes input{width:20px;height:20px;accent-color:var(--scoole-primary)}.wizard-fields>.education-fields{margin-bottom:0}.family-education-editor{display:grid;gap:var(--scoole-space-sm);margin-top:var(--scoole-space-sm);padding:var(--scoole-space-md);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low)}.family-subject-editor{display:grid;gap:var(--scoole-space-sm);margin:0;padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest)}.family-subject-editor legend{padding:0 var(--scoole-space-xs);font-size:18px;line-height:26px;font-weight:700}.family-subject-editor>p{margin:0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.family-required-subjects,.family-custom-subjects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--scoole-space-xs)}.family-subject-row{display:grid;align-content:start;gap:var(--scoole-space-xs);padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low)}.family-subject-row>strong,.family-custom-subject-heading>strong{color:var(--scoole-on-surface);font-size:14px;line-height:20px;font-weight:600}.family-custom-subject-heading{display:flex;min-height:32px;align-items:center;justify-content:space-between;gap:var(--scoole-space-xs)}.family-custom-subjects button{display:grid;width:var(--scoole-touch-target);height:var(--scoole-touch-target);place-items:center;border:0;border-radius:var(--scoole-radius-full);background:var(--scoole-surface-high);color:var(--scoole-on-surface-variant)}.family-custom-subjects svg{width:14px}.family-elective-subjects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--scoole-space-xs)}.family-subject-choice{display:flex;min-height:var(--scoole-touch-target);align-items:center;gap:var(--scoole-space-xs);font-size:14px;line-height:20px;font-weight:600}.family-subject-choice input[type=checkbox]{width:20px;height:20px;accent-color:var(--scoole-primary)}.family-isbn-field{display:grid;width:100%;min-width:0;gap:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.family-isbn-field input{width:100%;min-width:0;min-height:var(--scoole-touch-target);font-family:Quicksand,sans-serif;font-size:16px;line-height:24px;font-weight:500}.family-isbn-field input:focus-visible{border-color:var(--scoole-primary);outline:2px solid var(--scoole-primary);outline-offset:2px;box-shadow:0 0 0 2px var(--scoole-primary-fixed)}.family-isbn-field input[aria-invalid=true]{border-color:var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.family-isbn-field input[aria-invalid=true]:focus-visible{border-color:var(--scoole-error);outline-color:var(--scoole-error);box-shadow:0 0 0 2px var(--scoole-error-container)}.family-isbn-field small{color:var(--scoole-error);font:inherit}.family-custom-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--scoole-space-xs)}.family-editor-actions{display:flex;justify-content:flex-end;gap:var(--scoole-space-xs)}.calendar-form-field>select{width:100%;min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font:inherit}.calendar-form-field>select:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.subject-select{display:grid;gap:var(--scoole-space-xs)}.subject-select>select{width:100%;min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font:inherit}.subject-select-custom{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--scoole-space-xs)}.subject-select-custom input{min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);font:inherit}.subject-select-custom button{min-height:var(--scoole-touch-target);border:0;border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container);font:inherit;font-weight:600}.subject-select-custom p{grid-column:1/-1;margin:0;color:var(--scoole-error);font-size:12px;line-height:14px}@media(max-width:767px){.education-fields,.family-required-subjects,.family-elective-subjects,.family-custom-subjects,.family-custom-add,.education-programmes>div,.subject-select-custom{grid-template-columns:1fr}.family-education-editor{padding:var(--scoole-space-sm)}.family-editor-actions{align-items:stretch;flex-direction:column}}.student-delete-session{border:1px solid var(--scoole-error);background:var(--scoole-surface-lowest);color:var(--scoole-error)}.student-delete-session:hover:not(:disabled){background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.student-delete-session:disabled{cursor:wait}.study-intake-layer{padding:var(--scoole-margin-mobile);background:color-mix(in srgb,var(--scoole-inverse-surface) 72%,transparent)}.study-intake{width:min(100%,680px);max-height:calc(100dvh - (var(--scoole-margin-mobile) * 2));overflow-y:auto;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);box-shadow:var(--scoole-shadow-level-2)}.study-intake>header,.study-intake>footer,.study-intake>header>span,.study-intake>footer>button,.study-material-preview>button{display:flex;align-items:center}.study-intake>header,.study-intake>footer{justify-content:space-between;gap:var(--scoole-space-sm)}.study-intake>header>span{gap:var(--scoole-space-xs);color:var(--scoole-primary);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em}.study-intake>header>span svg,.study-intake>footer svg,.study-material-preview>button svg{width:20px;height:20px}.study-intake>header>button,.study-voice-dialog>button{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;flex:0 0 var(--scoole-touch-target);border:0;border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant)}.study-intake-copy{margin:var(--scoole-space-sm) 0 var(--scoole-space-md)}.study-intake-copy h2{margin:0;color:var(--scoole-on-surface);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.study-intake-copy p{margin:var(--scoole-space-xs) 0 0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.study-upload-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--scoole-space-sm)}.study-upload-options>button{min-height:176px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-md);border:1px dashed var(--scoole-outline);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low);color:var(--scoole-on-surface);text-align:center}.study-upload-options>button svg{width:var(--scoole-space-lg);height:var(--scoole-space-lg);color:var(--scoole-primary)}.study-upload-options>button strong{font-size:16px;line-height:24px;font-weight:700}.study-upload-options>button small{max-width:24ch;color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.study-material-preview{position:relative;min-height:256px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low)}.study-material-preview>img{width:100%;max-height:360px;-o-object-fit:contain;object-fit:contain}.study-material-preview>button{position:absolute;right:var(--scoole-space-sm);bottom:var(--scoole-space-sm);min-height:var(--scoole-touch-target);gap:var(--scoole-space-xs);padding:0 var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-primary);box-shadow:var(--scoole-shadow-level-1);font-size:14px;line-height:16px;font-weight:600}.study-pdf-preview{display:flex;flex-direction:column;align-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-md);color:var(--scoole-on-surface);text-align:center}.study-pdf-preview svg{width:var(--scoole-space-xl);height:var(--scoole-space-xl);color:var(--scoole-primary)}.study-pdf-preview small,.study-intake>footer>small{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.study-intake>footer{margin-top:var(--scoole-space-md)}.study-intake>footer>button{min-height:var(--scoole-touch-target);gap:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.study-inline-error{margin:var(--scoole-space-sm) 0 0;padding:var(--scoole-space-sm);border:1px solid var(--scoole-error);border-radius:var(--scoole-radius-default);background:var(--scoole-error-container);color:var(--scoole-on-error-container);font-size:14px;line-height:20px;font-weight:600}.study-state{min-height:100dvh;display:grid;place-content:center;justify-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-margin-mobile);background:var(--scoole-surface);color:var(--scoole-on-surface);text-align:center}.study-state-icon{width:var(--scoole-space-xl);height:var(--scoole-space-xl);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.study-state-icon svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.study-loading .study-state-icon svg,.study-button-spinner{animation:study-spin .8s linear infinite}.study-state h1{max-width:28ch;margin:0;font-size:20px;line-height:28px;font-weight:700}.study-state p{max-width:520px;margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.study-state>div{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--scoole-space-xs)}.study-state button,.study-confirm button,.study-workshop button,.final-sheet-page button{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);padding:0 var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-primary);font-size:14px;line-height:16px;font-weight:600;transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.study-state button.primary,.study-confirm button.primary,.study-workshop button.primary,.study-finish button{border-color:var(--scoole-primary-container);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.study-load-error .study-state-icon{background:var(--scoole-error-container);color:var(--scoole-error)}.study-confirm{min-height:100dvh;padding:var(--scoole-space-md) var(--scoole-margin-desktop) var(--scoole-space-xl);background:var(--scoole-surface);color:var(--scoole-on-surface)}.study-back{border-color:transparent!important;background:transparent!important}.study-confirm>section{width:min(100%,760px);margin:var(--scoole-space-lg) auto 0;padding:var(--scoole-space-lg);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.study-kicker,.study-paper-heading>span,.final-sheet-eyebrow{display:inline-flex;align-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em}.study-kicker svg,.final-sheet-eyebrow svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.study-confirm h1{margin:var(--scoole-space-sm) 0 var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.study-confirm>section>p{margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.study-detected{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--scoole-space-md);margin-top:var(--scoole-space-md);padding:var(--scoole-space-md);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low)}.study-detected-field small{display:block;margin-bottom:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em}.study-detected-field strong,.study-detected-field h2{display:block;margin:0;color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700;overflow-wrap:anywhere}.study-detected>p{grid-column:1 / -1;margin:0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.study-concept-list{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:var(--scoole-space-xs)}.study-concept-list>span{padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant);font-size:12px;line-height:14px;font-weight:600}.study-confirm-actions,.study-correction>div{display:flex;justify-content:flex-end;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-md)}.study-correction{margin-top:var(--scoole-space-md)}.study-correction label,.study-answer>label{display:block;margin-bottom:var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:14px;line-height:16px;font-weight:600;letter-spacing:.01em}.study-correction textarea,.study-answer textarea{width:100%;min-height:136px;resize:vertical;padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font:inherit;font-size:16px;line-height:24px}.study-workshop{min-height:100dvh;background:var(--scoole-surface);color:var(--scoole-on-surface)}.study-topbar{position:sticky;z-index:15;top:0;min-height:80px;display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr) minmax(180px,1fr);align-items:center;gap:var(--scoole-space-md);padding:var(--scoole-space-sm) var(--scoole-margin-desktop);border-bottom:1px solid var(--scoole-outline-variant);background:color-mix(in srgb,var(--scoole-surface-lowest) 94%,transparent);-webkit-backdrop-filter:blur(var(--scoole-space-xs));backdrop-filter:blur(var(--scoole-space-xs))}.study-topbar>button{justify-self:start;border-color:transparent;background:transparent}.study-topbar>div:nth-child(2){min-width:0;display:flex;flex-direction:column;text-align:center}.study-topbar>div:nth-child(2) span{color:var(--scoole-primary);font-size:12px;line-height:14px;font-weight:600}.study-topbar>div:nth-child(2) strong{overflow:hidden;color:var(--scoole-on-surface);font-size:16px;line-height:24px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.study-progress-label{width:min(100%,200px);display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;justify-self:end;gap:var(--scoole-space-xs)}.study-progress-label>span{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.study-progress-label>div{height:var(--scoole-space-xs);overflow:hidden;border-radius:var(--scoole-radius-full);background:var(--scoole-surface-high)}.study-progress-label i{display:block;height:100%;border-radius:inherit;background:var(--scoole-primary-container);transition:width .24s ease}.study-layout{width:100%;max-width:1440px;display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr) minmax(240px,280px);gap:var(--scoole-gutter);margin:0 auto;padding:var(--scoole-space-lg) var(--scoole-margin-desktop) var(--scoole-space-xl)}.study-phase-nav,.study-reference{position:sticky;top:112px;align-self:start}.study-phase-nav>span{display:block;margin-bottom:var(--scoole-space-sm);color:var(--scoole-on-surface-variant);font-size:14px;line-height:16px;font-weight:600}.study-phase-nav ol{display:grid;gap:var(--scoole-space-xs);margin:0;padding:0;list-style:none}.study-phase-nav li{min-width:0;display:grid;grid-template-columns:var(--scoole-space-lg) minmax(0,1fr);align-items:start;gap:var(--scoole-space-xs);padding:var(--scoole-space-xs);border:1px solid transparent;border-radius:var(--scoole-radius-md);color:var(--scoole-on-surface-variant)}.study-phase-nav li.current{border-color:var(--scoole-primary-fixed-dim);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.study-phase-nav li.done{color:var(--scoole-on-surface)}.study-phase-nav i{width:var(--scoole-space-lg);height:var(--scoole-space-lg);display:grid;place-items:center;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-style:normal;font-weight:600}.study-phase-nav i svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.study-phase-nav .current i{border-color:var(--scoole-primary);background:var(--scoole-primary);color:var(--scoole-on-primary-container)}.study-phase-nav .done i{border-color:var(--scoole-primary-fixed-dim);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.study-phase-nav p{min-width:0;margin:0}.study-phase-nav strong,.study-phase-nav small{display:block;overflow-wrap:anywhere}.study-phase-nav strong{color:inherit;font-size:14px;line-height:20px;font-weight:700}.study-phase-nav small{margin-top:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:500}.study-paper{min-width:0;min-height:640px;padding:var(--scoole-space-lg);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.study-paper-heading h1{margin:var(--scoole-space-sm) 0 var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em;overflow-wrap:anywhere}.study-paper-heading p{margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px;overflow-wrap:anywhere}.study-activity{min-width:0;margin-top:var(--scoole-space-lg)}.study-activity-context{min-width:0;padding-bottom:var(--scoole-space-sm);border-bottom:1px solid var(--scoole-outline-variant)}.study-activity-context small,.study-question h3,.study-feedback-hint h3,.study-feedback-gaps h3{display:block;color:var(--scoole-primary);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em}.study-activity-context h2{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px;font-weight:700;overflow-wrap:anywhere}.study-question{min-width:0;margin-top:var(--scoole-space-md);padding:var(--scoole-space-md);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low)}.study-question h3{margin:0 0 var(--scoole-space-xs)}.study-question p{max-width:70ch;margin:0;color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.study-guidance{display:grid;grid-template-columns:var(--scoole-space-xl) minmax(0,1fr);align-items:center;gap:var(--scoole-space-sm);margin-top:var(--scoole-space-sm);padding:var(--scoole-space-sm);border:1px solid var(--scoole-primary-fixed-dim);border-radius:var(--scoole-radius-lg);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.study-guidance-icon{width:var(--scoole-space-xl);height:var(--scoole-space-xl);display:grid;grid-row:1 / 3;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}.study-guidance-icon svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.study-guidance h3,.study-guidance p{margin:0}.study-guidance h3{align-self:end;font-size:14px;line-height:16px;font-weight:700}.study-guidance p{align-self:start;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px;overflow-wrap:anywhere}.study-hide-notes{margin-top:var(--scoole-space-sm)}.study-answer{margin-top:var(--scoole-space-md)}.study-answer textarea:disabled{opacity:1}.study-answer[aria-busy=true] textarea{background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant);cursor:wait}.study-answer-actions{display:flex;align-items:stretch;justify-content:space-between;gap:var(--scoole-space-sm);margin-top:var(--scoole-space-sm)}.study-evaluate-button{min-width:240px}.study-evaluation-spinner{width:20px;height:20px;animation:study-spin .8s linear infinite}.study-evaluation-status{display:flex;align-items:flex-start;gap:var(--scoole-space-xs);margin:var(--scoole-space-xs) 0 0;padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:14px;line-height:20px;font-weight:600}.study-evaluation-status>span:first-child{width:var(--scoole-space-xs);height:var(--scoole-space-xs);flex:0 0 var(--scoole-space-xs);margin-top:var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-primary)}.study-reference{min-width:0;padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.study-reference h2{display:flex;align-items:center;gap:var(--scoole-space-xs);margin:0 0 var(--scoole-space-sm);color:var(--scoole-on-surface);font-size:14px;line-height:16px;font-weight:700}.study-reference h2 svg,.study-reference-content>a svg{width:20px;height:20px;color:var(--scoole-primary)}.study-reference-content>img{width:100%;max-height:320px;-o-object-fit:contain;object-fit:contain;border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low)}.study-reference-content>a{min-height:144px;display:grid;place-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-sm);border:1px dashed var(--scoole-outline);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-primary);text-align:center;font-size:14px;line-height:20px;font-weight:600}.study-reference-summary{margin-top:var(--scoole-space-sm)}.study-reference-summary strong,.study-reference-hidden strong{color:var(--scoole-on-surface);font-size:14px;line-height:20px;font-weight:700}.study-reference-summary p,.study-reference-hidden p,.study-reference-unavailable{margin:var(--scoole-space-xs) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px;overflow-wrap:anywhere}.study-reference-hidden{min-height:144px;display:grid;place-content:center;justify-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-sm);border:1px dashed var(--scoole-outline);border-radius:var(--scoole-radius-default);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);text-align:center}.study-reference-hidden>svg{width:var(--scoole-space-lg);height:var(--scoole-space-lg)}.study-reference-hidden p{max-width:24ch;color:var(--scoole-on-surface-variant)}.study-finish{min-height:560px;display:grid;place-content:center;justify-items:center;gap:var(--scoole-space-sm);text-align:center}.study-finish>span{width:var(--scoole-space-xl);height:var(--scoole-space-xl);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.study-finish h1{margin:0;color:var(--scoole-on-surface);font-size:32px;line-height:40px;font-weight:700}.study-finish p{max-width:520px;margin:0 0 var(--scoole-space-xs);color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.study-operation-status{margin:var(--scoole-space-sm) 0 0;padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:14px;line-height:20px;font-weight:600;text-align:center}.study-finish>.study-operation-status{margin:0}.study-overlay{position:fixed;z-index:90;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:var(--scoole-margin-mobile);overflow-y:auto;background:color-mix(in srgb,var(--scoole-inverse-surface) 72%,transparent)}.study-overlay>section{width:min(100%,560px);max-height:calc(100dvh - (var(--scoole-margin-mobile) * 2));overflow-y:auto;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);box-shadow:var(--scoole-shadow-level-2)}.study-voice-dialog>button{margin-left:auto}.study-voice-recorder{min-height:280px}.study-overlay>.study-feedback{width:min(100%,620px);display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;padding:0;text-align:left}.study-feedback-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--scoole-space-lg)}.study-feedback-header{display:grid;grid-template-columns:var(--scoole-space-xl) minmax(0,1fr);align-items:center;gap:var(--scoole-space-sm);padding-bottom:var(--scoole-space-md);border-bottom:1px solid var(--scoole-outline-variant)}.study-feedback-status{width:var(--scoole-space-xl);height:var(--scoole-space-xl);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.study-feedback.needs_review .study-feedback-status{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.study-feedback-status svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.study-feedback-header h2{margin:0;color:var(--scoole-on-surface);font-size:24px;line-height:32px;font-weight:700;overflow-wrap:anywhere}.study-feedback-body{padding-top:var(--scoole-space-md)}.study-feedback-message,.study-feedback-hint p{margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px;overflow-wrap:anywhere}.study-feedback-hint{margin-top:var(--scoole-space-md);padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-lg);background:var(--scoole-primary-fixed)}.study-feedback-hint h3,.study-feedback-gaps h3{margin:0;color:var(--scoole-on-primary-fixed-variant)}.study-feedback-hint p{margin-top:var(--scoole-space-xs);color:var(--scoole-on-surface)}.study-feedback-gaps{margin-top:var(--scoole-space-md)}.study-feedback-gaps ul{display:flex;flex-wrap:wrap;gap:var(--scoole-space-xs);margin:var(--scoole-space-xs) 0 0;padding:0;list-style:none}.study-feedback-gaps li{max-width:100%;padding:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant);font-size:14px;line-height:20px;font-weight:600;overflow-wrap:anywhere}.study-feedback footer{display:flex;justify-content:flex-end;gap:var(--scoole-space-xs);padding:var(--scoole-space-sm) var(--scoole-space-lg);border-top:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-low)}.study-toast{position:fixed;z-index:100;right:var(--scoole-space-md);bottom:var(--scoole-space-md);max-width:min(420px,calc(100vw - (var(--scoole-margin-mobile) * 2)));display:flex;align-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm);border:1px solid var(--scoole-error);border-radius:var(--scoole-radius-default);background:var(--scoole-error-container);color:var(--scoole-on-error-container);box-shadow:var(--scoole-shadow-level-2);font-size:14px;line-height:20px;font-weight:600}.study-toast button{width:var(--scoole-touch-target);flex:0 0 var(--scoole-touch-target);padding:0;border-color:transparent;background:transparent;color:inherit}.final-sheet-page{min-width:0;min-height:100dvh;padding:var(--scoole-space-lg) var(--scoole-margin-desktop) var(--scoole-space-xl);background:var(--scoole-surface);color:var(--scoole-on-surface)}.final-sheet-topbar{width:min(100%,1040px);min-height:var(--scoole-touch-target);display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);margin:0 auto var(--scoole-space-lg)}.final-sheet-topbar button{border-color:transparent;background:transparent}.final-sheet-status{display:inline-flex;align-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;line-height:14px;font-weight:600}.final-sheet-status svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.feynman-sheet,.cornell-sheet,.review-points{width:min(100%,1040px);margin-inline:auto;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.feynman-sheet{padding:var(--scoole-space-xl)}.feynman-sheet-heading,.cornell-heading{padding-bottom:var(--scoole-space-lg);border-bottom:1px solid var(--scoole-outline-variant)}.feynman-sheet-heading h1,.cornell-heading h1{max-width:26ch;margin:var(--scoole-space-sm) 0 0;color:var(--scoole-on-surface);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em;overflow-wrap:anywhere}.cornell-heading>small{display:block;margin-top:var(--scoole-space-sm);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.feynman-explanation{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:var(--scoole-space-lg);margin-top:var(--scoole-space-lg);padding:var(--scoole-space-md);border-radius:var(--scoole-radius-lg);background:var(--scoole-primary-fixed)}.final-section-heading,.review-points-heading{min-width:0;display:flex;align-items:center;gap:var(--scoole-space-sm)}.final-section-icon,.review-points-heading>span{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;flex:0 0 var(--scoole-touch-target);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}.final-section-icon svg,.review-points-heading svg{width:20px;height:20px}.final-section-heading small,.review-points-heading small{display:block;margin-bottom:var(--scoole-space-base);color:var(--scoole-on-primary-fixed-variant);font-size:12px;line-height:14px;font-weight:600}.final-section-heading h2,.review-points-heading h2{margin:0;color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700;overflow-wrap:anywhere}.feynman-explanation>p{align-self:center;max-width:62ch;margin:0;color:var(--scoole-on-surface);font-size:18px;line-height:26px;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.feynman-learning-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--scoole-space-md);margin-top:var(--scoole-space-md)}.final-list-section{min-width:0;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low)}.final-list-section ul,.final-list-section ol{margin:var(--scoole-space-sm) 0 0;padding:0;list-style:none}.feynman-concepts ul{display:flex;flex-wrap:wrap;gap:var(--scoole-space-xs)}.feynman-concepts li{max-width:100%;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant);font-size:14px;line-height:20px;font-weight:600;overflow-wrap:anywhere}.feynman-examples ol{counter-reset:final-examples;display:grid;gap:var(--scoole-space-sm)}.feynman-examples li{counter-increment:final-examples;min-width:0;display:grid;grid-template-columns:var(--scoole-space-lg) minmax(0,1fr);gap:var(--scoole-space-xs);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px;overflow-wrap:anywhere}.feynman-examples li:before{content:counter(final-examples);width:var(--scoole-space-lg);height:var(--scoole-space-lg);display:grid;place-items:center;border-radius:var(--scoole-radius-full);background:var(--scoole-primary);color:var(--scoole-on-primary-container);font-size:12px;line-height:14px;font-weight:600}.cornell-sheet{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);overflow:hidden}.cornell-heading{grid-column:1 / -1;padding:var(--scoole-space-lg)}.cornell-cues,.cornell-notes{min-width:0;padding:var(--scoole-space-lg)}.cornell-cues{border-right:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-low)}.cornell-sheet h2{margin:0 0 var(--scoole-space-sm);color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700}.cornell-sheet p{margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px;overflow-wrap:anywhere}.cornell-cues p+p,.cornell-notes p+p{margin-top:var(--scoole-space-sm)}.cornell-sheet>footer{grid-column:1 / -1;padding:var(--scoole-space-lg);border-top:1px solid var(--scoole-outline-variant);background:var(--scoole-primary-fixed)}.review-points{display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr);gap:var(--scoole-space-lg);margin-top:var(--scoole-space-md);padding:var(--scoole-space-lg);background:var(--scoole-surface-lowest)}.review-points ul{display:grid;gap:var(--scoole-space-xs);margin:0;padding:0;list-style:none}.review-points li{min-width:0;display:grid;grid-template-columns:var(--scoole-space-md) minmax(0,1fr);gap:var(--scoole-space-xs);padding:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);background:var(--scoole-primary-fixed);color:var(--scoole-on-surface);font-size:14px;line-height:20px;overflow-wrap:anywhere}.review-points li>span:first-child{width:var(--scoole-space-md);height:var(--scoole-space-md);display:grid;place-items:center;border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}.review-points li svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.final-empty-state{margin:var(--scoole-space-sm) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.study-intake button:not(:disabled):hover,.study-state button:not(:disabled):hover,.study-confirm button:not(:disabled):hover,.study-workshop button:not(:disabled):hover,.final-sheet-page button:not(:disabled):hover{border-color:var(--scoole-primary);box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.study-intake button:not(:disabled):active,.study-state button:not(:disabled):active,.study-confirm button:not(:disabled):active,.study-workshop button:not(:disabled):active,.final-sheet-page button:not(:disabled):active{box-shadow:none;transform:translateY(0)}.study-intake button:disabled,.study-state button:disabled,.study-confirm button:disabled,.study-workshop button:disabled{cursor:not-allowed;opacity:.5;transform:none;box-shadow:none}.study-intake button:focus-visible,.study-state button:focus-visible,.study-confirm button:focus-visible,.study-workshop button:focus-visible,.final-sheet-page button:focus-visible,.study-correction textarea:focus-visible,.study-answer textarea:focus-visible,.study-reference a:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.study-correction textarea:focus-visible,.study-answer textarea:focus-visible{border-color:var(--scoole-primary);box-shadow:0 0 0 2px var(--scoole-primary-fixed)}@keyframes study-spin{to{transform:rotate(360deg)}}@media(max-width:1180px){.study-topbar{padding-inline:var(--scoole-gutter)}.study-layout{grid-template-columns:minmax(190px,220px) minmax(0,1fr);padding-inline:var(--scoole-gutter)}.study-reference{position:static;grid-column:2}}@media(max-width:767px){.study-intake{padding:var(--scoole-space-sm)}.study-intake-copy h2,.study-confirm h1,.study-paper-heading h1,.study-finish h1,.feynman-sheet-heading h1,.cornell-heading h1{font-size:24px;line-height:32px;letter-spacing:0}.study-upload-options{grid-template-columns:1fr}.study-upload-options>button{min-height:136px}.study-intake>footer{align-items:stretch;flex-direction:column}.study-intake>footer>button{justify-content:center}.study-confirm{padding:var(--scoole-space-sm) var(--scoole-margin-mobile) var(--scoole-space-lg)}.study-confirm>section{margin-top:var(--scoole-space-sm);padding:var(--scoole-space-sm)}.study-detected{grid-template-columns:1fr;padding:var(--scoole-space-sm)}.study-detected>p,.study-concept-list{grid-column:auto}.study-confirm-actions,.study-correction>div{align-items:stretch;flex-direction:column-reverse}.study-confirm-actions button,.study-correction button{width:100%}.study-topbar{grid-template-columns:minmax(0,1fr) auto;gap:var(--scoole-space-xs);padding:var(--scoole-space-xs) var(--scoole-margin-mobile)}.study-topbar>button{min-width:var(--scoole-touch-target);padding-inline:var(--scoole-space-xs)}.study-topbar>div:nth-child(2){align-items:flex-end;text-align:right}.study-topbar>div:nth-child(2) span{display:none}.study-progress-label{width:100%;grid-column:1 / -1}.study-layout{display:block;padding:var(--scoole-space-sm) var(--scoole-margin-mobile) var(--scoole-space-lg)}.study-phase-nav{position:static;margin-bottom:var(--scoole-space-sm)}.study-phase-nav>span{margin-bottom:var(--scoole-space-xs)}.study-phase-nav ol{display:flex;gap:var(--scoole-space-xs);overflow-x:auto;padding-bottom:var(--scoole-space-base);scroll-snap-type:x proximity}.study-phase-nav li{min-width:var(--scoole-space-xl);grid-template-columns:var(--scoole-space-lg);justify-items:center;scroll-snap-align:start}.study-phase-nav li p{display:none}.study-paper{min-height:0;padding:var(--scoole-space-sm)}.study-activity{margin-top:var(--scoole-space-md)}.study-question{padding:var(--scoole-space-sm)}.study-question p{font-size:18px;line-height:26px}.study-guidance{grid-template-columns:var(--scoole-touch-target) minmax(0,1fr);gap:var(--scoole-space-xs)}.study-guidance-icon{width:var(--scoole-touch-target);height:var(--scoole-touch-target)}.study-answer-actions{flex-direction:column}.study-answer-actions button,.study-evaluate-button{width:100%;min-width:0}.study-reference{margin-top:var(--scoole-space-sm)}.study-feedback-scroll{padding:var(--scoole-space-md) var(--scoole-space-sm)}.study-feedback-header{grid-template-columns:var(--scoole-touch-target) minmax(0,1fr);gap:var(--scoole-space-xs)}.study-feedback-status{width:var(--scoole-touch-target);height:var(--scoole-touch-target)}.study-feedback-header h2{font-size:20px;line-height:28px}.study-feedback footer{display:grid;padding:var(--scoole-space-sm)}.study-feedback footer button{width:100%}.study-toast{right:var(--scoole-margin-mobile);bottom:var(--scoole-margin-mobile)}.final-sheet-page{padding:var(--scoole-space-sm) var(--scoole-margin-mobile) var(--scoole-space-lg)}.final-sheet-topbar{margin-bottom:var(--scoole-space-sm)}.feynman-sheet{padding:var(--scoole-space-sm)}.feynman-explanation,.feynman-learning-grid,.review-points{grid-template-columns:1fr}.feynman-explanation,.final-list-section,.review-points{padding:var(--scoole-space-sm)}.cornell-sheet{display:block}.cornell-heading,.cornell-cues,.cornell-notes,.cornell-sheet>footer{padding:var(--scoole-space-sm)}.cornell-cues{border-right:0;border-bottom:1px solid var(--scoole-outline-variant)}.review-points{gap:var(--scoole-space-sm)}}@media(max-width:390px){.study-topbar>button{font-size:0}.study-topbar>button svg{width:20px;height:20px}.final-sheet-status{gap:var(--scoole-space-base)}.feynman-concepts ul{display:grid}.feynman-concepts li{width:100%;border-radius:var(--scoole-radius-default)}}@media(prefers-reduced-motion:reduce){.study-loading .study-state-icon svg,.study-button-spinner,.study-evaluation-spinner{animation:none}.study-progress-label i,.study-intake button,.study-state button,.study-confirm button,.study-workshop button,.final-sheet-page button{transition:none}}.assessment-loading,.assessment-confirm,.assessment-workshop,.assessment-results{min-height:100svh;overflow-x:hidden;background:var(--scoole-surface);color:var(--scoole-on-surface);font-family:Quicksand,sans-serif}.assessment-loading *,.assessment-confirm *,.assessment-workshop *,.assessment-results *{box-sizing:border-box}.assessment-loading{position:relative;isolation:isolate;display:grid;place-items:center;padding:var(--scoole-space-xl) var(--scoole-margin-desktop)}.assessment-loading-atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;background:radial-gradient(circle at 16% 24%,var(--scoole-primary-fixed) 0,transparent 30%),radial-gradient(circle at 88% 78%,var(--scoole-tertiary-fixed) 0,transparent 28%)}.assessment-loading-atmosphere:after{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--scoole-outline-variant) 1px,transparent 1px),linear-gradient(90deg,var(--scoole-outline-variant) 1px,transparent 1px);background-size:var(--scoole-space-lg) var(--scoole-space-lg);content:"";opacity:.2}.assessment-loading-atmosphere i{position:absolute;width:calc(var(--scoole-space-xl) * 10);height:calc(var(--scoole-space-xl) * 10);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-full)}.assessment-loading-atmosphere i:first-child{top:calc(var(--scoole-space-xl) * -6);right:calc(var(--scoole-space-xl) * -3)}.assessment-loading-atmosphere i:last-child{bottom:calc(var(--scoole-space-xl) * -7);left:calc(var(--scoole-space-xl) * -4)}.assessment-loading-panel{display:grid;grid-template-columns:minmax(16rem,.82fr) minmax(18rem,1.18fr);align-items:center;width:min(53rem,100%);min-height:27rem;overflow:hidden;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.assessment-loading-station{position:relative;display:grid;place-items:center;align-self:stretch;min-height:22rem;background:var(--scoole-surface-container)}.assessment-loading-sheet{position:absolute;display:block;width:11rem;height:14rem;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.assessment-loading-sheet.sheet-back{transform:rotate(-8deg) translate(calc(var(--scoole-space-sm) * -1),var(--scoole-space-base));background:var(--scoole-surface-high)}.assessment-loading-sheet.sheet-middle{transform:rotate(7deg) translate(var(--scoole-space-sm),calc(var(--scoole-space-base) * -1));background:var(--scoole-primary-fixed)}.assessment-loading-sheet.sheet-front{display:flex;flex-direction:column;gap:var(--scoole-space-sm);padding:var(--scoole-space-xl) var(--scoole-space-md) var(--scoole-space-md);transform:rotate(-1deg);animation:assessment-loading-paper 2.4s ease-in-out infinite}.assessment-loading-sheet.sheet-front>i{display:block;width:100%;height:2px;border-radius:var(--scoole-radius-full);background:var(--scoole-outline-variant)}.assessment-loading-sheet.sheet-front>i:nth-child(2){width:75%}.assessment-loading-sheet.sheet-front>i:nth-child(3){width:87.5%}.assessment-loading-sheet.sheet-front>span{position:absolute;right:var(--scoole-space-sm);bottom:var(--scoole-space-sm);display:grid;place-items:center;width:var(--scoole-space-xl);height:var(--scoole-space-xl);border:2px solid var(--scoole-on-tertiary-fixed-variant);border-radius:var(--scoole-radius-full);background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant);animation:assessment-loading-target 1.8s ease-in-out infinite}.assessment-loading-sheet.sheet-front svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.assessment-loading-spark{position:absolute;top:calc(var(--scoole-space-xl) + var(--scoole-space-md));right:calc(50% - 7rem);width:var(--scoole-space-lg);height:var(--scoole-space-lg);color:var(--scoole-primary);animation:assessment-loading-spark 1.8s ease-in-out infinite}.assessment-loading-copy{padding:var(--scoole-space-xl)}.assessment-loading-kicker,.assessment-confirm-kicker{display:inline-flex;align-items:center;gap:var(--scoole-space-xs);color:var(--scoole-primary);font-size:14px;font-weight:600;line-height:16px;letter-spacing:.01em}.assessment-loading-kicker{margin-bottom:var(--scoole-space-sm)}.assessment-loading-kicker svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.assessment-loading-copy h1{max-width:17ch;margin:0;color:var(--scoole-on-surface);font-size:32px;font-weight:700;line-height:40px;letter-spacing:-.02em}.assessment-loading-copy>p{max-width:42ch;margin:var(--scoole-space-sm) 0 0;color:var(--scoole-on-surface-variant);font-size:16px;font-weight:500;line-height:24px}.assessment-loading-progress{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:var(--scoole-space-xs);width:min(16rem,100%);margin-top:var(--scoole-space-lg)}.assessment-loading-progress i{height:var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-high);animation:assessment-loading-segment 1.45s ease-in-out infinite}.assessment-loading-progress i:nth-child(2){animation-delay:.16s}.assessment-loading-progress i:nth-child(3){animation-delay:.32s}.assessment-loading-copy>button,.assessment-confirm-back,.assessment-confirm-action button,.assessment-results>header button,.assessment-workshop>header button,.assessment-question button,.assessment-score>button,.assessment-overlay>section>button{min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-primary);font:inherit;font-size:14px;font-weight:600;line-height:16px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}.assessment-loading-copy>button,.assessment-confirm-back,.assessment-confirm-action button,.assessment-results>header button,.assessment-workshop>header button,.assessment-question button,.assessment-score>button{display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-xs) var(--scoole-space-sm)}.assessment-confirm-action button svg{width:var(--scoole-space-md);height:var(--scoole-space-md);flex:0 0 auto}.assessment-loading-copy>button{margin-top:var(--scoole-space-md)}.assessment-loading-copy>button:hover,.assessment-confirm-back:hover,.assessment-results>header button:hover,.assessment-workshop>header button:hover,.assessment-question button:not(.primary):hover:not(:disabled),.assessment-score>button:hover:not(:disabled){border-color:var(--scoole-primary);background:var(--scoole-primary-fixed)}.assessment-loading-copy>button:active,.assessment-confirm-back:active,.assessment-results>header button:active,.assessment-workshop>header button:active,.assessment-question button:active:not(:disabled),.assessment-score>button:active:not(:disabled){transform:translateY(var(--scoole-space-base))}.assessment-loading.is-error .assessment-loading-station{background:var(--scoole-error-container)}.assessment-loading.is-error .assessment-loading-sheet.sheet-front>span{border-color:var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container);animation:none}.assessment-loading.is-error .assessment-loading-spark,.assessment-loading.is-error .assessment-loading-kicker,.assessment-loading.is-error .assessment-loading-copy>p{color:var(--scoole-error);animation:none}.assessment-confirm,.assessment-results{padding:var(--scoole-space-md) var(--scoole-margin-desktop) var(--scoole-space-xl)}.assessment-confirm-back{border-color:transparent;background:transparent}.assessment-confirm-sheet{width:min(57.5rem,100%);margin:var(--scoole-space-lg) auto 0;padding:var(--scoole-space-xl);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.assessment-confirm-intro{max-width:45rem}.assessment-confirm-kicker svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.assessment-confirm-intro h1{margin:var(--scoole-space-sm) 0 0;color:var(--scoole-on-surface);font-size:32px;font-weight:700;line-height:40px;letter-spacing:-.02em}.assessment-confirm-intro>p{max-width:42rem;margin:var(--scoole-space-xs) 0 0;color:var(--scoole-on-surface-variant);font-size:18px;font-weight:500;line-height:26px}.assessment-analysis{margin-top:var(--scoole-space-lg);overflow:hidden;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low)}.assessment-analysis-copy{padding:var(--scoole-space-md)}.assessment-analysis-subject{display:inline-flex;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;font-weight:600;line-height:14px;letter-spacing:.02em}.assessment-analysis h2{margin:var(--scoole-space-sm) 0 0;color:var(--scoole-on-surface);font-size:24px;font-weight:700;line-height:32px}.assessment-analysis-copy>p{max-width:68ch;margin:var(--scoole-space-xs) 0 0;color:var(--scoole-on-surface-variant);font-size:16px;font-weight:500;line-height:24px}.assessment-analysis-material{display:inline-flex;align-items:center;gap:var(--scoole-space-xs);min-height:var(--scoole-touch-target);margin-top:var(--scoole-space-xs);color:var(--scoole-primary);font-size:14px;font-weight:600;line-height:16px;text-decoration:none}.assessment-analysis-material:hover{text-decoration:underline}.assessment-analysis-material svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.assessment-concepts{padding:var(--scoole-space-sm) var(--scoole-space-md) var(--scoole-space-md);border-top:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest)}.assessment-concepts h3{margin:0 0 var(--scoole-space-xs);color:var(--scoole-on-surface-variant);font-size:12px;font-weight:600;line-height:14px;letter-spacing:.02em}.assessment-concept-list{display:flex;flex-wrap:wrap;gap:var(--scoole-space-xs)}.assessment-concept-list span{display:inline-flex;align-items:center;min-height:var(--scoole-space-lg);padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant);font-size:12px;font-weight:600;line-height:14px;letter-spacing:.02em}.assessment-confirm-form{margin-top:var(--scoole-space-lg);overflow:hidden;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest)}.assessment-correction{padding:var(--scoole-space-md)}.assessment-correction label{display:block;color:var(--scoole-on-surface);font-size:14px;font-weight:600;line-height:16px;letter-spacing:.01em}.assessment-correction>p,.assessment-confirm-action-copy>p{margin:var(--scoole-space-xs) 0 var(--scoole-space-sm);color:var(--scoole-on-surface-variant);font-size:14px;font-weight:500;line-height:20px}.assessment-correction textarea,.assessment-open-answer textarea{display:block;width:100%;min-height:calc(var(--scoole-space-xl) * 2);padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font:inherit;font-size:16px;font-weight:500;line-height:24px;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}.assessment-correction textarea::-moz-placeholder,.assessment-open-answer textarea::-moz-placeholder{color:var(--scoole-outline);opacity:1}.assessment-correction textarea::placeholder,.assessment-open-answer textarea::placeholder{color:var(--scoole-outline);opacity:1}.assessment-correction textarea:focus,.assessment-open-answer textarea:focus{border-color:var(--scoole-primary);box-shadow:0 0 0 2px var(--scoole-primary-fixed-dim);outline:none}.assessment-confirm-action{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-md);padding:var(--scoole-space-sm) var(--scoole-space-md);border-top:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-low)}.assessment-confirm-action-copy{display:grid;flex:1;gap:var(--scoole-space-xs);max-width:26rem}.assessment-confirm-action-copy>p{margin:0}.assessment-generation-status{display:grid;grid-template-columns:var(--scoole-margin-desktop) 1fr;align-items:center;gap:var(--scoole-space-xs);color:var(--scoole-primary);font-size:12px;font-weight:600;line-height:14px;letter-spacing:.02em}.assessment-generation-track{position:relative;height:var(--scoole-space-base);overflow:hidden;border-radius:var(--scoole-radius-full);background:var(--scoole-surface-high)}.assessment-generation-track i{position:absolute;inset:0 auto 0 0;width:50%;border-radius:inherit;background:var(--scoole-primary-container);animation:assessment-generation-slide 1.25s ease-in-out infinite}.assessment-confirm-action .primary,.assessment-question button.primary{min-height:var(--scoole-touch-target);border-color:var(--scoole-primary-container);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container);box-shadow:var(--scoole-shadow-level-2)}.assessment-confirm-action .primary:hover:not(:disabled),.assessment-question button.primary:hover:not(:disabled){border-color:var(--scoole-primary);background:var(--scoole-primary)}.assessment-confirm-action button:disabled,.assessment-question button:disabled,.assessment-score>button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none}.assessment-confirm-error,.assessment-error{border:1px solid var(--scoole-error);border-radius:var(--scoole-radius-default);background:var(--scoole-error-container);color:var(--scoole-on-error-container);font-size:14px;font-weight:600;line-height:20px}.assessment-confirm-error{margin:0;padding:var(--scoole-space-sm) var(--scoole-space-md);border-width:1px 0 0;border-radius:0}.assessment-workshop>header{display:grid;grid-template-columns:1fr minmax(0,2fr) 1fr;align-items:center;gap:var(--scoole-space-sm);min-height:calc(var(--scoole-space-xl) + var(--scoole-space-md));padding:var(--scoole-space-sm) var(--scoole-margin-desktop);border-bottom:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest)}.assessment-workshop>header button{justify-self:start;border-color:transparent;background:transparent}.assessment-workshop>header>div{display:grid;min-width:0;text-align:center}.assessment-workshop>header>div span{color:var(--scoole-on-surface-variant);font-size:12px;font-weight:600;line-height:14px;letter-spacing:.02em}.assessment-workshop>header>div strong{overflow:hidden;color:var(--scoole-on-surface);font-size:16px;font-weight:700;line-height:24px;text-overflow:ellipsis;white-space:nowrap}.assessment-workshop>header>p{margin:0;color:var(--scoole-on-surface-variant);font-size:14px;font-weight:600;line-height:16px;text-align:right}.assessment-progress{height:var(--scoole-space-xs);background:var(--scoole-surface-high)}.assessment-progress i{display:block;height:100%;border-radius:0 var(--scoole-radius-full) var(--scoole-radius-full) 0;background:var(--scoole-primary-container);transition:width .25s ease}.assessment-question{width:min(53rem,calc(100% - (var(--scoole-margin-desktop) * 2)));margin:var(--scoole-space-xl) auto;padding:var(--scoole-space-lg);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.assessment-question>span{display:inline-flex;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;font-weight:600;line-height:14px;letter-spacing:.02em}.assessment-question h1{margin:var(--scoole-space-sm) 0 var(--scoole-space-lg);color:var(--scoole-on-surface);font-size:24px;font-weight:700;line-height:32px}.assessment-question fieldset{display:grid;gap:var(--scoole-space-sm);min-width:0;margin:0;padding:0;border:0}.assessment-question fieldset label{display:flex;align-items:center;gap:var(--scoole-space-sm);min-height:calc(var(--scoole-space-xl) + var(--scoole-space-sm));padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.assessment-question fieldset label:hover{border-color:var(--scoole-primary);background:var(--scoole-surface-low)}.assessment-question fieldset label.selected{border-color:var(--scoole-primary);background:var(--scoole-primary-fixed);box-shadow:var(--scoole-shadow-level-2)}.assessment-question fieldset label:has(input:disabled){cursor:not-allowed;opacity:.6}.assessment-question fieldset input{position:absolute;opacity:0}.assessment-question fieldset i{display:grid;place-items:center;width:var(--scoole-touch-target);height:var(--scoole-touch-target);flex:0 0 var(--scoole-touch-target);border-radius:var(--scoole-radius-default);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant);font-style:normal;font-size:14px;font-weight:600;line-height:16px}.assessment-question fieldset .selected i{background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.assessment-question fieldset label>span{min-width:0;overflow-wrap:anywhere;font-size:16px;font-weight:500;line-height:24px}.assessment-open-answer{display:grid;gap:var(--scoole-space-xs)}.assessment-open-answer>label{color:var(--scoole-on-surface);font-size:14px;font-weight:600;line-height:16px;letter-spacing:.01em}.assessment-open-answer textarea:disabled{cursor:not-allowed;background:var(--scoole-surface-high);color:var(--scoole-on-surface-variant)}.assessment-open-answer>button{justify-self:start;margin-top:var(--scoole-space-xs)}.assessment-question footer{display:flex;justify-content:space-between;gap:var(--scoole-space-sm);margin-top:var(--scoole-space-lg)}.assessment-question footer button:last-child{margin-left:auto}.assessment-error{margin:var(--scoole-space-sm) 0 0;padding:var(--scoole-space-sm)}.assessment-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:var(--scoole-margin-mobile);background:color-mix(in srgb,var(--scoole-inverse-surface) 72%,transparent)}.assessment-overlay>section{position:relative;width:min(32rem,100%);max-height:calc(100svh - (var(--scoole-margin-mobile) * 2));overflow-y:auto;padding:var(--scoole-space-lg);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-2)}.assessment-overlay>section>button{position:absolute;top:var(--scoole-space-sm);right:var(--scoole-space-sm);z-index:1;display:grid;place-items:center;width:var(--scoole-touch-target);padding:0;border-color:transparent;background:transparent}.assessment-overlay .voice-recorder{width:100%;padding:var(--scoole-space-xl) 0 0;background:transparent;box-shadow:none}.assessment-overlay .voice-recorder-indicator{border-color:var(--scoole-outline-variant);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.assessment-overlay .voice-recorder-indicator.is-error{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.assessment-overlay .voice-recorder-status p,.assessment-overlay .voice-recorder-status strong,.assessment-overlay .voice-recorder-error{color:var(--scoole-on-surface)}.assessment-overlay .voice-recorder .voice-recorder-secondary,.assessment-overlay .voice-recorder .voice-recorder-stop{min-height:var(--scoole-touch-target);border-radius:var(--scoole-radius-default);font-family:inherit;font-size:14px;font-weight:600;line-height:16px}.assessment-overlay .voice-recorder .voice-recorder-secondary{border-color:var(--scoole-outline-variant);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}.assessment-overlay .voice-recorder .voice-recorder-stop{border-color:var(--scoole-primary-container);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.assessment-results>header{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);width:min(81rem,100%);margin:0 auto}.assessment-results>header button{border-color:transparent;background:transparent}.assessment-results>header>span{display:inline-flex;align-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;font-weight:600;line-height:14px;letter-spacing:.02em}.assessment-score{max-width:56rem;margin:var(--scoole-space-lg) auto;padding:var(--scoole-space-lg);border:1px solid var(--scoole-outline-variant);border-top:var(--scoole-space-xs) solid var(--scoole-tertiary-fixed);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1);text-align:center}.assessment-score.level-mastered{border-top-color:var(--scoole-primary-container)}.assessment-score.level-progressing{border-top-color:var(--scoole-primary-fixed-dim)}.assessment-score>span{display:grid;place-items:center;width:var(--scoole-margin-desktop);height:var(--scoole-margin-desktop);margin:auto;border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.assessment-score>small{display:block;margin-top:var(--scoole-space-sm);color:var(--scoole-on-surface-variant);font-size:12px;font-weight:600;line-height:14px;letter-spacing:.02em}.assessment-score h1{margin:var(--scoole-space-xs) 0 0;color:var(--scoole-on-surface);font-size:32px;font-weight:700;line-height:40px;letter-spacing:-.02em}.assessment-score>strong{display:block;margin-top:var(--scoole-space-xs);color:var(--scoole-primary);font-size:32px;font-weight:700;line-height:40px}.assessment-score>em,.assessment-score>p{display:block;max-width:42rem;margin:var(--scoole-space-sm) auto 0;color:var(--scoole-on-surface-variant);font-size:16px;font-weight:500;line-height:24px}.assessment-score>div{display:grid;grid-template-columns:1fr 1fr;gap:var(--scoole-space-md);margin:var(--scoole-space-lg) 0;text-align:left}.assessment-score article{display:grid;align-content:start;gap:var(--scoole-space-xs);padding:var(--scoole-space-md);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low)}.assessment-score article h2,.assessment-review>h2{margin:0;color:var(--scoole-on-surface);font-size:20px;font-weight:700;line-height:28px}.assessment-score article span{display:flex;align-items:flex-start;gap:var(--scoole-space-xs);color:var(--scoole-on-surface-variant);font-size:14px;font-weight:500;line-height:20px}.assessment-score article span svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm);flex:0 0 var(--scoole-space-sm);margin-top:var(--scoole-space-base);color:var(--scoole-primary)}.assessment-score>button{margin:0 auto}.assessment-review{max-width:56rem;margin:var(--scoole-space-xl) auto 0}.assessment-review>article{display:flex;gap:var(--scoole-space-sm);margin-top:var(--scoole-space-sm);padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-left:var(--scoole-space-base) solid var(--scoole-tertiary-fixed);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.assessment-review>article.correct{border-left-color:var(--scoole-primary-container)}.assessment-review>article.inconclusive{border-left-color:var(--scoole-outline)}.assessment-review>article>span{display:grid;place-items:center;width:var(--scoole-space-lg);height:var(--scoole-space-lg);flex:0 0 var(--scoole-space-lg);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:14px;font-weight:600;line-height:16px}.assessment-review>article>div{min-width:0}.assessment-review h3{margin:0;color:var(--scoole-on-surface);font-size:16px;font-weight:700;line-height:24px;overflow-wrap:anywhere}.assessment-review p,.assessment-review small,.assessment-review em,.assessment-review article aside{color:var(--scoole-on-surface-variant);font-size:14px;font-weight:500;line-height:20px;overflow-wrap:anywhere}.assessment-review p{margin:var(--scoole-space-xs) 0 0;white-space:pre-wrap}.assessment-review small,.assessment-review em{display:block;margin-top:var(--scoole-space-xs)}.assessment-review article aside{margin-top:var(--scoole-space-sm);padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-container);color:var(--scoole-on-surface)}.assessment-score.early-primary h1{font-size:32px;line-height:40px}.assessment-score.early-primary>strong{color:var(--scoole-on-surface-variant);font-size:24px;line-height:32px}.student-session-card.is-assessment{border-color:var(--scoole-primary-fixed-dim)}.student-session-card.is-assessment .session-type{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.assessment-loading button:focus-visible,.assessment-confirm button:focus-visible,.assessment-confirm textarea:focus-visible,.assessment-analysis-material:focus-visible,.assessment-workshop button:focus-visible,.assessment-workshop textarea:focus-visible,.assessment-question h1:focus-visible,.assessment-question label:has(input:focus-visible),.assessment-results button:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}@keyframes assessment-loading-paper{0%,to{transform:rotate(-1deg) translateY(0)}50%{transform:rotate(-1deg) translateY(calc(var(--scoole-space-xs) * -1))}}@keyframes assessment-loading-target{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes assessment-loading-spark{0%,to{opacity:.45;transform:scale(.88) rotate(-5deg)}50%{opacity:1;transform:scale(1.08) rotate(4deg)}}@keyframes assessment-loading-segment{0%,to{background:var(--scoole-surface-high);transform:scaleX(.9)}50%{background:var(--scoole-primary-container);transform:scaleX(1)}}@keyframes assessment-generation-slide{0%{transform:translate(-110%)}50%{transform:translate(120%)}to{transform:translate(245%)}}.assessment-question-exiting-forward{animation:assessment-question-exit-forward .26s ease-in both}.assessment-question-exiting-backward{animation:assessment-question-exit-backward .26s ease-in both}.assessment-question-entering-forward{animation:assessment-question-enter-forward .26s ease-out both}.assessment-question-entering-backward{animation:assessment-question-enter-backward .26s ease-out both}@keyframes assessment-question-exit-forward{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(calc(var(--scoole-space-xl) * -1))}}@keyframes assessment-question-exit-backward{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(var(--scoole-space-xl))}}@keyframes assessment-question-enter-forward{0%{opacity:0;transform:translate(var(--scoole-space-xl))}to{opacity:1;transform:translate(0)}}@keyframes assessment-question-enter-backward{0%{opacity:0;transform:translate(calc(var(--scoole-space-xl) * -1))}to{opacity:1;transform:translate(0)}}@media(max-width:767px){.assessment-loading{padding:var(--scoole-space-sm) var(--scoole-margin-mobile)}.assessment-loading-panel{grid-template-columns:1fr;width:min(31rem,100%);min-height:0}.assessment-loading-station{min-height:13rem}.assessment-loading-sheet{width:8rem;height:10rem}.assessment-loading-sheet.sheet-front{gap:var(--scoole-space-xs);padding:var(--scoole-space-lg) var(--scoole-space-sm) var(--scoole-space-sm)}.assessment-loading-sheet.sheet-front>span{right:var(--scoole-space-xs);bottom:var(--scoole-space-xs);width:var(--scoole-touch-target);height:var(--scoole-touch-target)}.assessment-loading-spark{top:var(--scoole-space-lg);right:calc(50% - 5rem);width:var(--scoole-space-md);height:var(--scoole-space-md)}.assessment-loading-copy{padding:var(--scoole-space-md)}.assessment-loading-copy h1,.assessment-confirm-intro h1,.assessment-score h1,.assessment-score.early-primary h1{font-size:24px;line-height:32px;letter-spacing:0}.assessment-confirm,.assessment-results{padding:var(--scoole-space-sm) var(--scoole-margin-mobile) var(--scoole-space-lg)}.assessment-confirm-sheet{margin-top:var(--scoole-space-sm);padding:var(--scoole-space-md)}.assessment-confirm-intro>p{font-size:16px;line-height:24px}.assessment-confirm-action{align-items:stretch;flex-direction:column}.assessment-confirm-action .primary{width:100%}.assessment-workshop>header{grid-template-columns:auto minmax(0,1fr);padding:var(--scoole-space-xs) var(--scoole-margin-mobile)}.assessment-workshop>header>div{text-align:left}.assessment-workshop>header>p{grid-column:1 / -1;padding-top:var(--scoole-space-xs);border-top:1px solid var(--scoole-outline-variant);text-align:center}.assessment-question{width:calc(100% - (var(--scoole-margin-mobile) * 2));margin:var(--scoole-space-lg) auto;padding:var(--scoole-space-md)}.assessment-score{padding:var(--scoole-space-md)}.assessment-score>div{grid-template-columns:1fr}.assessment-overlay>section{padding:var(--scoole-space-md)}}@media(max-width:420px){.assessment-loading{padding:var(--scoole-space-xs)}.assessment-loading-panel{max-height:calc(100svh - (var(--scoole-space-sm)));overflow-y:auto}.assessment-loading-station{min-height:10rem}.assessment-loading-copy{padding:var(--scoole-space-sm)}.assessment-confirm-sheet,.assessment-question,.assessment-score,.assessment-review>article{padding:var(--scoole-space-sm)}.assessment-analysis-copy,.assessment-correction,.assessment-concepts,.assessment-confirm-action{padding-right:var(--scoole-space-sm);padding-left:var(--scoole-space-sm)}.assessment-question fieldset label{align-items:flex-start;padding:var(--scoole-space-xs)}.assessment-question footer{flex-wrap:wrap}.assessment-question footer button{flex:1 1 calc(50% - var(--scoole-space-xs))}.assessment-results>header{align-items:flex-start}.assessment-review>article{gap:var(--scoole-space-xs)}.assessment-overlay .voice-recorder-actions{align-items:stretch;flex-direction:column}.assessment-overlay .voice-recorder .voice-recorder-secondary,.assessment-overlay .voice-recorder .voice-recorder-stop{width:100%}}@media(prefers-reduced-motion:reduce){.assessment-loading *,.assessment-confirm *,.assessment-workshop *,.assessment-results *{scroll-behavior:auto!important;transition:none!important}.assessment-loading-sheet.sheet-front,.assessment-loading-sheet.sheet-front>span,.assessment-loading-spark,.assessment-loading-progress i,.assessment-generation-track i,.assessment-question-exiting-forward,.assessment-question-exiting-backward,.assessment-question-entering-forward,.assessment-question-entering-backward{animation:none}.assessment-loading-progress i,.assessment-generation-track i{background:var(--scoole-primary-container);transform:none}.assessment-generation-track i{width:100%}}.homework-session{min-height:100vh;overflow-x:hidden;padding:var(--scoole-space-md) var(--scoole-margin-desktop) var(--scoole-space-xl);background:var(--scoole-surface);color:var(--scoole-on-surface)}.homework-session-container{width:100%;max-width:1440px;margin:0 auto}.homework-session-header{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);margin-bottom:var(--scoole-space-sm)}.homework-header-tools,.homework-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm)}.homework-header-tools button,.homework-dialog-header button{min-width:var(--scoole-touch-target);min-height:var(--scoole-touch-target);border-color:var(--scoole-outline-variant);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}.homework-session-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--scoole-space-md);margin-bottom:var(--scoole-space-sm)}.homework-session-kicker{display:block;margin-bottom:var(--scoole-space-base);color:var(--scoole-primary);font-size:14px;line-height:16px;font-weight:600}.homework-session-hero h1{margin:0;color:var(--scoole-on-surface);font-size:24px;line-height:32px;font-weight:700;letter-spacing:-.02em;overflow-wrap:anywhere}.homework-session-hero p{max-width:72ch;margin:var(--scoole-space-xs) 0 0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.homework-readonly-badge{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;gap:var(--scoole-space-xs);flex:0 0 auto;padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-full);background:var(--scoole-secondary-fixed);color:var(--scoole-on-secondary-fixed-variant);font-size:14px;line-height:16px;font-weight:600}.homework-readonly-badge svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.homework-progress{margin-bottom:var(--scoole-space-md);padding:var(--scoole-space-sm) var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.homework-progress ol{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--scoole-space-xs);margin:0;padding:0;list-style:none}.homework-progress li{position:relative;min-width:0;display:grid;justify-items:center;gap:var(--scoole-space-base);color:var(--scoole-outline);text-align:center}.homework-progress li:before{content:"";position:absolute;top:calc(var(--scoole-space-sm) - 1px);right:50%;left:calc(-50% - var(--scoole-space-xs));height:2px;background:var(--scoole-outline-variant)}.homework-progress li:first-child:before{display:none}.homework-progress li>span{z-index:1;width:var(--scoole-space-lg);height:var(--scoole-space-lg);display:grid;place-items:center;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-low);font-size:12px;line-height:14px;font-weight:600}.homework-progress li>span svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.homework-progress li.is-complete:before,.homework-progress li.is-active:before{background:var(--scoole-primary-container)}.homework-progress li.is-complete>span,.homework-progress li.is-active>span{border-color:var(--scoole-primary-container);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.homework-progress li.is-active small{color:var(--scoole-on-surface);font-weight:700}.homework-progress small{min-width:0;font-size:12px;line-height:14px;font-weight:600;overflow-wrap:anywhere}.homework-progress>p{margin:var(--scoole-space-sm) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px;text-align:center}.homework-operation-error{display:flex;align-items:center;gap:var(--scoole-space-sm);margin-bottom:var(--scoole-space-md);padding:var(--scoole-space-sm);border:1px solid var(--scoole-error);border-radius:var(--scoole-radius-default);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.homework-operation-error>svg{flex:0 0 var(--scoole-space-md)}.homework-operation-error>div{min-width:0;flex:1}.homework-operation-error strong,.homework-operation-error p{display:block;margin:0}.homework-operation-error p{font-size:14px;line-height:20px}.homework-input-note,.homework-privacy-note{display:flex;align-items:flex-start;gap:var(--scoole-space-xs);margin:var(--scoole-space-sm) 0 0!important;padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)!important}.homework-input-note svg,.homework-privacy-note svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm);flex:0 0 var(--scoole-space-sm);margin-top:var(--scoole-space-base)}.homework-input-note{display:grid;grid-template-columns:auto minmax(0,1fr)}.homework-input-note strong,.homework-input-note p{display:block;margin:0}.homework-input-note p{margin-top:var(--scoole-space-base);font-size:14px;line-height:20px}.homework-input-note .homework-button{grid-column:2;justify-self:start;margin-top:var(--scoole-space-xs)}.homework-help-actions,.homework-finish-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-sm);padding-top:var(--scoole-space-sm);border-top:1px solid var(--scoole-outline-variant)}.homework-exercise-actions{display:flex;justify-content:flex-end;margin-top:var(--scoole-space-sm)}.homework-finish-row{justify-content:space-between}.homework-finish-row p{min-width:0;flex:1;margin:0;font-size:14px;line-height:20px}.homework-attempt-pair{display:contents}.homework-structured-content,.homework-evaluation,.homework-guidance{display:grid;gap:var(--scoole-space-sm)}.homework-structured-content>section,.homework-evaluation>header,.homework-guidance>header,.homework-complete-card{display:flex;align-items:flex-start;gap:var(--scoole-space-sm)}.homework-structured-content>section>span,.homework-evaluation>header>span,.homework-guidance>header>span,.homework-complete-card>span{width:var(--scoole-space-lg);height:var(--scoole-space-lg);flex:0 0 var(--scoole-space-lg);display:grid;place-items:center;border-radius:var(--scoole-radius-default);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.homework-structured-content svg,.homework-evaluation header svg,.homework-guidance header svg,.homework-complete-card svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.homework-structured-content h3,.homework-evaluation h3,.homework-guidance h3,.homework-complete-card h2{margin:0 0 var(--scoole-space-base);font-size:18px;line-height:26px;font-weight:700}.homework-structured-content p,.homework-evaluation p,.homework-guidance p,.homework-complete-card p{margin:0}.homework-evaluation{outline:none}.homework-evaluation:focus-visible{border-radius:var(--scoole-radius-default);outline:2px solid var(--scoole-primary);outline-offset:var(--scoole-space-base)}.homework-evaluation.is-correct>header>span{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.homework-evaluation.is-incorrect>header>span,.homework-evaluation.is-partially_correct>header>span,.homework-evaluation.is-inconclusive>header>span{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.homework-evaluation header p,.homework-guidance header p{color:var(--scoole-primary);font-size:12px;line-height:14px;font-weight:600}.homework-evaluation h4,.homework-guidance h4{display:flex;align-items:center;gap:var(--scoole-space-xs);margin:0 0 var(--scoole-space-xs);font-size:14px;line-height:20px;font-weight:700}.homework-evaluation h4 svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.homework-evaluation ul,.homework-guidance ol{display:grid;gap:var(--scoole-space-xs);margin:0;padding-inline-start:var(--scoole-space-md)}.homework-evaluation li span{display:block;color:var(--scoole-on-surface-variant)}.homework-next-step{padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface)!important}.homework-guidance ol li{padding-inline-start:var(--scoole-space-xs)}.homework-guidance code{display:block;margin-top:var(--scoole-space-xs);padding:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface);font:inherit;overflow-wrap:anywhere}.homework-guidance>section{padding:var(--scoole-space-sm);border-inline-start:var(--scoole-space-base) solid var(--scoole-primary);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low)}.homework-complete-card{align-items:center}.homework-complete-card>span{width:var(--scoole-space-xl);height:var(--scoole-space-xl);flex-basis:var(--scoole-space-xl);border-radius:var(--scoole-radius-md)}.homework-dialog-header{align-items:flex-start;margin-bottom:var(--scoole-space-sm)}.homework-dialog-header h2,.homework-dialog-header p{margin:0}.homework-dialog-header p{margin-top:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.homework-conversation{display:grid;gap:var(--scoole-space-md)}.homework-message{width:100%;min-width:0;display:flex;align-items:flex-start;gap:var(--scoole-space-sm)}.homework-message-user{flex-direction:row-reverse}.homework-message-avatar{width:var(--scoole-space-xl);height:var(--scoole-space-xl);flex:0 0 var(--scoole-space-xl);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.homework-message-user .homework-message-avatar{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.homework-message-avatar svg,.homework-prompt-icon svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.homework-message-bubble{width:min(100%,72ch);min-width:0;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);box-shadow:var(--scoole-shadow-level-1);overflow-wrap:anywhere}.homework-message-assistant .homework-message-bubble{border-inline-start-color:var(--scoole-primary)}.homework-message-user .homework-message-bubble{border-inline-end-color:var(--scoole-on-tertiary-fixed-variant)}.homework-message-bubble p{color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px;font-weight:500}.homework-message-title,.homework-state-message h2{margin:0 0 var(--scoole-space-sm);color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700}.homework-message-copy,.homework-message-label{margin:0 0 var(--scoole-space-sm)}.homework-message-label{font-size:14px;line-height:20px;font-weight:600}.homework-prompt-heading{display:flex;align-items:center;gap:var(--scoole-space-sm)}.homework-prompt-heading>div{min-width:0}.homework-prompt-heading h2{margin:0;color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700;overflow-wrap:anywhere}.homework-prompt-heading p{margin:var(--scoole-space-base) 0 0;font-size:14px;line-height:20px}.homework-prompt-icon,.homework-state-icon{width:var(--scoole-space-xl);height:var(--scoole-space-xl);flex:0 0 var(--scoole-space-xl);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.homework-prompt-actions{margin-top:var(--scoole-space-md)}.homework-action-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--scoole-space-sm)}.homework-button{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);font-size:14px;line-height:16px;font-weight:600;transition:box-shadow .2s ease,transform .2s ease,background .2s ease}.homework-button svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.homework-button-primary{border:1px solid var(--scoole-primary-container);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container);box-shadow:var(--scoole-shadow-level-1)}.homework-button-secondary{border:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest);color:var(--scoole-primary);box-shadow:none}.homework-button-danger{border:1px solid var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container);box-shadow:none}.homework-button:not(:disabled):hover{box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.homework-button:not(:disabled):active{box-shadow:none;transform:translateY(0)}.homework-button:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.homework-dialog-header .homework-button:focus-visible{box-shadow:0 0 0 2px var(--scoole-primary-fixed-dim)}.homework-button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}.homework-uploaded-image{display:block;width:100%;max-height:70vh;-o-object-fit:contain;object-fit:contain;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-low)}.homework-transcribed-exercise{padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-low)}.homework-transcribed-exercise>div{display:flex;align-items:flex-start;gap:var(--scoole-space-xs)}.homework-transcribed-exercise svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm);flex:0 0 var(--scoole-space-sm);margin-top:var(--scoole-space-base);color:var(--scoole-primary)}.homework-transcribed-exercise p,.homework-rich-text{margin:0;white-space:pre-wrap;color:var(--scoole-on-surface);font-size:16px;line-height:24px;overflow-wrap:anywhere}.homework-feedback-actions{display:grid;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm);border-inline-start:var(--scoole-space-base) solid var(--scoole-error);border-radius:var(--scoole-radius-default);background:var(--scoole-error-container)}.homework-feedback-actions.is-correct{border-inline-start-color:var(--scoole-primary);background:var(--scoole-primary-fixed)}.homework-feedback-actions h3{margin:0;color:var(--scoole-on-surface);font-size:18px;line-height:26px;font-weight:700}.homework-step-list section{margin-top:var(--scoole-space-md);padding-inline-start:var(--scoole-space-sm);border-inline-start:var(--scoole-space-base) solid var(--scoole-primary)}.homework-step-list h3{margin:0 0 var(--scoole-space-xs);font-size:18px;line-height:26px;font-weight:700}.homework-state-message{display:grid;justify-items:center;text-align:center}.homework-state-message .homework-state-icon{margin-bottom:var(--scoole-space-sm)}.homework-state-message.is-error .homework-state-icon{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.homework-state-message>p{margin:0 0 var(--scoole-space-sm)}.homework-initial-loading,.homework-proctoring-loading{display:grid;place-content:center;justify-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-xl);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px;box-shadow:var(--scoole-shadow-level-1)}.homework-initial-loading>span,.homework-proctoring-loading>span{padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant);font-size:12px;line-height:14px;font-weight:600}.homework-initial-loading svg,.homework-proctoring-loading svg{width:var(--scoole-space-xl);height:var(--scoole-space-xl);color:var(--scoole-primary)}.homework-refresh-status{position:sticky;top:var(--scoole-space-xs);z-index:2;display:flex;align-items:center;justify-self:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-xs) var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px;font-weight:600;box-shadow:var(--scoole-shadow-level-1)}.homework-refresh-status svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm);flex:0 0 var(--scoole-space-sm);color:var(--scoole-primary)}.homework-thinking{display:flex;align-items:center;gap:var(--scoole-space-base)}.homework-thinking i{width:var(--scoole-space-xs);height:var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-primary);animation:homework-thinking 1s ease-in-out infinite alternate}.homework-thinking i:nth-child(2){animation-delay:.15s}.homework-thinking i:nth-child(3){animation-delay:.3s}.homework-confetti{position:fixed!important;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none}.homework-incident-alert{position:fixed;top:var(--scoole-space-sm);left:50%;z-index:80;width:min(calc(100% - (var(--scoole-margin-mobile) * 2)),560px);transform:translate(-50%);padding:var(--scoole-space-sm);border:1px solid var(--scoole-on-tertiary-fixed-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant);box-shadow:var(--scoole-shadow-level-2);overflow-wrap:anywhere}.homework-incident-alert p{margin:0}.homework-incident-details{margin-top:var(--scoole-space-base)!important;font-size:12px;line-height:14px}.homework-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:var(--scoole-space-sm);background:color-mix(in srgb,var(--scoole-inverse-surface) 72%,transparent);overflow-y:auto}.homework-proctoring-overlay{display:flex;flex-direction:column;justify-content:center;background:var(--scoole-surface)}.homework-proctoring-dialog{display:flex;width:100%;max-width:960px;flex-direction:column;align-items:center;justify-content:center}.homework-overlay-alert{position:absolute;top:var(--scoole-space-sm);left:0;right:0}.homework-proctoring-container,.homework-proctoring-monitor{width:100%;max-width:960px}.homework-proctoring-loading{min-height:40vh}.proctoring-monitor{position:relative;width:100%;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);box-shadow:var(--scoole-shadow-level-1)}.proctoring-monitor>h3{margin:0 0 var(--scoole-space-sm);font-size:20px;line-height:28px;font-weight:700;text-align:center}.proctoring-viewport{position:relative;aspect-ratio:16 / 9;overflow:hidden;margin-bottom:var(--scoole-space-sm);border-radius:var(--scoole-radius-md);background:var(--scoole-inverse-surface)}.proctoring-video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.proctoring-video.is-mirrored{transform:scaleX(-1)}.proctoring-status{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:grid;place-content:center;justify-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-md);background:var(--scoole-inverse-surface);color:var(--scoole-inverse-on-surface);text-align:center}.proctoring-status.is-error{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.proctoring-status svg{width:var(--scoole-space-lg);height:var(--scoole-space-lg)}.proctoring-status p{margin:0;font-size:14px;line-height:20px}.proctoring-mute{position:absolute;top:var(--scoole-space-xs);right:var(--scoole-space-xs);z-index:2;width:var(--scoole-touch-target);height:var(--scoole-touch-target);padding:0;border:1px solid var(--scoole-inverse-on-surface);border-radius:var(--scoole-radius-default);background:var(--scoole-inverse-surface);color:var(--scoole-inverse-on-surface)}.proctoring-mute svg,.proctoring-button svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.proctoring-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--scoole-space-sm)}.proctoring-button{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);font-size:14px;line-height:16px;font-weight:600}.proctoring-button.is-primary{border:1px solid var(--scoole-primary-container);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.proctoring-button.is-secondary{border:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}.proctoring-button:not(:disabled):hover,.proctoring-mute:not(:disabled):hover{box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.proctoring-button:not(:disabled):active,.proctoring-mute:not(:disabled):active{box-shadow:none;transform:translateY(0)}.proctoring-button:focus-visible,.proctoring-mute:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.homework-dialog,.homework-camera-dialog{width:min(100%,640px);max-height:calc(100dvh - var(--scoole-space-lg));overflow:auto;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);box-shadow:var(--scoole-shadow-level-1)}.homework-dialog h2,.homework-dialog h3{margin:0 0 var(--scoole-space-xs);color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700}.homework-dialog>p,.homework-dialog>label{display:block;margin:0 0 var(--scoole-space-md);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.homework-dialog>footer,.homework-camera-dialog>footer{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-md)}.homework-camera-dialog{position:relative;width:min(100%,960px,calc((100dvh - (var(--scoole-space-lg) * 2)) * 4 / 3));height:auto;aspect-ratio:4 / 3;padding:0;overflow:hidden;background:var(--scoole-inverse-surface)}.homework-camera-video{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background:var(--scoole-inverse-surface)}.homework-camera-video.is-mirrored{transform:scaleX(-1)}.homework-camera-status{position:absolute;top:50%;left:50%;width:calc(100% - (var(--scoole-space-lg) * 2));max-width:calc(var(--scoole-space-xl) * 8);display:grid;justify-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-highest);color:var(--scoole-on-surface);box-shadow:var(--scoole-shadow-level-2);text-align:center;transform:translate(-50%,-50%)}.homework-camera-status.is-error{border-color:var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.homework-camera-status p{margin:0}.homework-camera-status>svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.homework-camera-dialog>footer{position:absolute;left:var(--scoole-space-sm);right:var(--scoole-space-sm);bottom:var(--scoole-space-sm);justify-content:center}.homework-camera-dialog>.homework-camera-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--scoole-space-xs);margin-top:0}.homework-camera-control{min-width:var(--scoole-touch-target);min-height:var(--scoole-touch-target);border-radius:var(--scoole-radius-full)}.homework-camera-close{grid-column:1;justify-self:start;width:var(--scoole-touch-target);height:var(--scoole-touch-target);padding:0}.homework-camera-shutter{grid-column:2;width:calc(var(--scoole-touch-target) + var(--scoole-space-xs));height:calc(var(--scoole-touch-target) + var(--scoole-space-xs));padding:0;box-shadow:var(--scoole-shadow-level-2)}.homework-camera-shutter svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.homework-camera-switch{grid-column:3;justify-self:end}.homework-crop-dialog{width:min(100%,960px)}.homework-crop-canvas{position:relative;display:grid;place-items:center;min-height:calc(var(--scoole-space-xl) * 3);max-height:65dvh;overflow:auto;margin-bottom:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low)}.homework-crop-control{--rc-focus-color: var(--scoole-primary);display:block;width:-moz-fit-content;width:fit-content;max-width:100%;max-height:65dvh;margin:0 auto}.homework-crop-control .ReactCrop__drag-handle{width:var(--scoole-touch-target);height:var(--scoole-touch-target);border:0;background:transparent;z-index:1}.homework-crop-control .ReactCrop__drag-handle:after{position:absolute;top:50%;left:50%;width:calc(var(--scoole-space-xs) + var(--scoole-space-base));height:calc(var(--scoole-space-xs) + var(--scoole-space-base));border:1px solid var(--scoole-surface-lowest);background:var(--scoole-inverse-surface);content:"";pointer-events:none;transform:translate(-50%,-50%)}.homework-crop-control .ReactCrop__drag-handle:focus{background:transparent}.homework-crop-control .ReactCrop__drag-handle:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px;box-shadow:none}.homework-crop-control .ReactCrop__drag-handle:focus-visible:after{background:var(--scoole-primary)}@media(pointer:coarse){.homework-crop-control .ReactCrop__drag-handle:is(.ord-n,.ord-e,.ord-s,.ord-w){display:block}.homework-crop-control .ReactCrop__drag-handle:after{width:calc(var(--scoole-space-sm) + var(--scoole-space-xs));height:calc(var(--scoole-space-sm) + var(--scoole-space-xs))}}.homework-crop-image{display:block;width:auto;max-width:100%;max-height:65dvh;height:auto}.homework-crop-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:var(--scoole-space-xs);color:var(--scoole-on-surface-variant)}.homework-crop-loading svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.homework-crop-loading p{margin:0;font-size:14px;line-height:20px}.homework-crop-error{margin:0;padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-error-container);color:var(--scoole-on-error-container);font-size:14px;line-height:20px}.homework-voice-dialog{width:min(100%,520px)}.homework-voice-status{display:grid;gap:var(--scoole-space-base);margin:0;padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-secondary-container);color:var(--scoole-on-secondary-container);font-size:14px;line-height:20px;font-weight:600}.homework-voice-status small{font-size:12px;line-height:16px;font-weight:500}.homework-voice-status.is-empty,.homework-voice-status.is-partial{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.homework-voice-status.is-error{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.homework-transcription-dialog{width:min(100%,640px)}.homework-transcription-input{width:100%;min-height:128px;resize:vertical;padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font-size:16px;line-height:24px}.homework-transcription-input:focus{border-color:var(--scoole-primary);outline:2px solid var(--scoole-primary-fixed-dim);outline-offset:1px}.voice-recorder{display:flex;flex-direction:column;align-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-md);color:var(--scoole-on-surface);text-align:center}.voice-recorder-indicator{position:relative;width:calc(var(--scoole-space-xl) + var(--scoole-space-lg));height:calc(var(--scoole-space-xl) + var(--scoole-space-lg));display:grid;place-items:center;border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.voice-recorder-indicator.is-recording{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.voice-recorder-indicator.is-error{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.voice-recorder-indicator>svg{width:var(--scoole-space-lg);height:var(--scoole-space-lg)}.voice-recorder-indicator>i{position:absolute;inset:calc(var(--scoole-space-base) * -1);border:var(--scoole-space-base) solid var(--scoole-error);border-radius:var(--scoole-radius-full);animation:homework-recording 1.2s ease-out infinite}.voice-recorder-status p,.voice-recorder-status strong,.voice-recorder-error{display:block;margin:0}.voice-recorder-status p{font-size:18px;line-height:26px;font-weight:600}.voice-recorder-status strong{color:var(--scoole-on-tertiary-fixed-variant);font-size:24px;line-height:32px;font-weight:700;font-variant-numeric:tabular-nums}.voice-recorder-error{color:var(--scoole-on-error-container);font-size:14px;line-height:20px}.voice-recorder-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--scoole-space-xs)}.voice-recorder .voice-recorder-secondary,.voice-recorder .voice-recorder-stop{min-height:var(--scoole-touch-target);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);font-size:14px;line-height:16px;font-weight:600}.voice-recorder .voice-recorder-secondary{border:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}.voice-recorder .voice-recorder-stop{border:1px solid var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.voice-recorder .voice-recorder-secondary:not(:disabled):hover,.voice-recorder .voice-recorder-stop:not(:disabled):hover{box-shadow:var(--scoole-shadow-level-2);transform:translateY(calc(var(--scoole-space-base) * -1))}.voice-recorder .voice-recorder-secondary:not(:disabled):active,.voice-recorder .voice-recorder-stop:not(:disabled):active{box-shadow:none;transform:translateY(0)}.voice-recorder .voice-recorder-secondary:focus-visible,.voice-recorder .voice-recorder-stop:focus-visible,.homework-session-modal>div button:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.homework-modal-layer{padding:var(--scoole-space-sm);background:color-mix(in srgb,var(--scoole-inverse-surface) 72%,transparent)}.homework-session-modal{width:min(100%,520px);max-height:calc(100dvh - var(--scoole-space-lg));overflow-y:auto;padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);box-shadow:var(--scoole-shadow-level-1)}.homework-session-modal>div button{width:var(--scoole-touch-target);height:var(--scoole-touch-target);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant);transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.homework-session-modal>div button:not(:disabled):hover{background:var(--scoole-surface-high);color:var(--scoole-primary);box-shadow:var(--scoole-shadow-level-1);transform:translateY(calc(var(--scoole-space-base) * -1))}.homework-session-modal>div button:not(:disabled):active{box-shadow:none;transform:translateY(0)}.homework-session-modal h2{font-size:20px;line-height:28px}.homework-session-modal label{color:var(--scoole-on-surface);font-size:14px;line-height:16px;font-weight:600}.homework-session-modal label>small{display:block;margin-top:var(--scoole-space-base);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:500}.homework-session-modal select,.homework-session-modal textarea{width:100%;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font-size:16px;line-height:24px}.homework-session-modal select:focus,.homework-session-modal textarea:focus{border-color:var(--scoole-primary);outline:2px solid var(--scoole-primary-fixed-dim);outline-offset:1px}.homework-session-modal form footer .homework-button-primary{border:1px solid var(--scoole-primary-container);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.homework-session-modal form footer .homework-button-secondary{border:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}@keyframes homework-thinking{to{transform:translateY(calc(var(--scoole-space-base) * -1))}}@keyframes homework-recording{to{opacity:0;transform:scale(1.12)}}@media(max-width:1100px){.homework-session{padding:var(--scoole-space-md) var(--scoole-gutter) var(--scoole-space-xl)}}@media(max-width:767px){.homework-session{padding:var(--scoole-space-sm) var(--scoole-margin-mobile) var(--scoole-space-xl)}.homework-session-header{align-items:center;flex-direction:row}.homework-session-hero{flex-direction:column}.homework-session-hero h1{font-size:24px;line-height:32px}.homework-progress{padding:var(--scoole-space-sm);overflow-x:auto}.homework-progress ol{width:-moz-max-content;width:max-content;min-width:640px}.homework-progress li{width:96px}.homework-operation-error{align-items:flex-start;flex-wrap:wrap}.homework-operation-error .homework-button{width:100%}.homework-finish-row{align-items:stretch;flex-direction:column}.homework-session-header .homework-button{align-self:flex-start}.homework-message{gap:var(--scoole-space-xs)}.homework-message-avatar{width:var(--scoole-touch-target);height:var(--scoole-touch-target);flex-basis:var(--scoole-touch-target)}.homework-message-bubble{width:100%;padding:var(--scoole-space-sm)}.homework-action-row,.homework-dialog>footer,.proctoring-actions{align-items:stretch;flex-direction:column}.homework-help-actions{align-items:stretch;flex-direction:column}.homework-help-actions .homework-button,.homework-finish-row .homework-button{width:100%}.homework-action-row .homework-button,.homework-dialog>footer .homework-button,.proctoring-actions .proctoring-button{width:100%}.homework-overlay{padding:var(--scoole-margin-mobile)}.homework-dialog{padding:var(--scoole-space-sm)}.homework-camera-dialog{width:min(100%,calc((100dvh - (var(--scoole-margin-mobile) * 2)) * 4 / 3))}.homework-camera-switch{width:var(--scoole-touch-target);height:var(--scoole-touch-target);padding:0}.homework-camera-switch-label{display:none}.voice-recorder,.proctoring-monitor{padding:var(--scoole-space-sm)}}@media(prefers-reduced-motion:reduce){.homework-crop-control .ReactCrop__crop-selection{animation:none}.homework-thinking i,.voice-recorder-indicator>i,.homework-camera-controls .animate-spin{animation:none}.homework-camera-controls .homework-button{transition:none}.homework-camera-controls .homework-button:not(:disabled):hover{transform:none}}.pricing-page,.subscription-page,.learning-paywall,.historical-session-page,.historical-session-state{font-family:Quicksand,sans-serif;color:var(--scoole-on-surface)}.pricing-page{width:min(100%,1440px);margin:0 auto;padding:var(--scoole-space-md) var(--scoole-margin-desktop) var(--scoole-space-xl)}.pricing-header{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm)}.pricing-header>div{display:flex;align-items:center;gap:var(--scoole-space-xs)}.pricing-brand{display:inline-flex;align-items:center;gap:var(--scoole-space-xs);color:var(--scoole-primary);font-size:24px;line-height:32px;font-weight:700;text-decoration:none}.pricing-brand svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.pricing-language button{min-width:var(--scoole-touch-target);min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-primary);box-shadow:none}.pricing-page :is(.scoole-primary-button,.scoole-secondary-button),.subscription-page :is(.scoole-primary-button,.scoole-secondary-button),.learning-paywall .scoole-primary-button,.historical-session-error .scoole-primary-button{min-height:var(--scoole-touch-target);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);font-size:14px;line-height:16px;font-weight:600}.pricing-page .scoole-primary-button,.subscription-page .scoole-primary-button,.learning-paywall .scoole-primary-button,.historical-session-error .scoole-primary-button{border:0;background:var(--scoole-primary-container);color:var(--scoole-on-primary-container);box-shadow:var(--scoole-shadow-level-2)}.pricing-page .scoole-secondary-button,.subscription-page .scoole-secondary-button{border:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-low);color:var(--scoole-primary)}.pricing-page .scoole-primary-button:hover:not(:disabled),.subscription-page .scoole-primary-button:hover:not(:disabled),.learning-paywall .scoole-primary-button:hover,.historical-session-error .scoole-primary-button:hover:not(:disabled){background:var(--scoole-primary);transform:translateY(calc(var(--scoole-space-base) * -1));box-shadow:var(--scoole-shadow-level-2)}.pricing-page .scoole-primary-button:active:not(:disabled),.subscription-page .scoole-primary-button:active:not(:disabled),.learning-paywall .scoole-primary-button:active,.historical-session-error .scoole-primary-button:active:not(:disabled){transform:none;box-shadow:var(--scoole-shadow-level-1)}.pricing-page button.scoole-primary-button:disabled,.subscription-page button.scoole-primary-button:disabled,.historical-session-error button.scoole-primary-button:disabled{cursor:not-allowed;transform:none;box-shadow:none}.pricing-page .scoole-secondary-button:hover,.subscription-page .scoole-secondary-button:hover{background:var(--scoole-primary-fixed);transform:none}.pricing-header .scoole-secondary-button{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;padding:0 var(--scoole-space-sm);text-decoration:none}.pricing-hero{max-width:760px;margin:var(--scoole-space-xl) auto var(--scoole-space-lg);text-align:center}.billing-eyebrow{display:inline-flex;align-items:center;gap:var(--scoole-space-base);color:var(--scoole-primary);font-size:14px;line-height:16px;font-weight:600;letter-spacing:.01em}.billing-eyebrow svg{width:18px;height:18px}.pricing-hero h1{margin:var(--scoole-space-sm) 0 var(--scoole-space-xs);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.pricing-hero>p{max-width:640px;margin:0 auto;color:var(--scoole-on-surface-variant);font-size:18px;line-height:26px}.billing-interval-switch{width:-moz-max-content;width:max-content;display:flex;align-items:center;gap:var(--scoole-space-base);margin:var(--scoole-space-md) auto 0;padding:var(--scoole-space-base);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-lowest)}.billing-interval-switch button{min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-xs);border:0;border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:transparent;color:var(--scoole-on-surface-variant);font:inherit;font-size:14px;font-weight:600}.billing-interval-switch button span{padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant);font-size:12px;line-height:14px}.billing-interval-switch button:hover{background:var(--scoole-surface-low)}.billing-interval-switch button.is-selected{background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.billing-interval-switch button:focus-visible,.pricing-page :is(a,button):focus-visible,.subscription-page button:focus-visible,.learning-access-banner a:focus-visible,.learning-paywall a:focus-visible,.historical-session-error button:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.pricing-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:var(--scoole-space-lg);padding:var(--scoole-space-lg);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-xl);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.pricing-card-copy{padding:var(--scoole-space-sm)}.pricing-plan-icon{width:var(--scoole-space-xl);height:var(--scoole-space-xl);display:grid;place-items:center;margin-bottom:var(--scoole-space-sm);border-radius:var(--scoole-radius-lg);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.pricing-plan-icon svg{width:var(--scoole-space-md)}.pricing-card-copy h2{margin:var(--scoole-space-xs) 0;font-size:24px;line-height:32px;font-weight:700}.pricing-card-copy>p{margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.pricing-card-copy ul{display:grid;gap:var(--scoole-space-sm);margin:var(--scoole-space-md) 0 0;padding:0;list-style:none}.pricing-card-copy li{display:flex;align-items:flex-start;gap:var(--scoole-space-xs);font-size:14px;line-height:20px;font-weight:600}.pricing-card-copy li svg{width:18px;height:18px;flex:0 0 18px;color:var(--scoole-primary)}.pricing-calculator{display:grid;gap:var(--scoole-space-sm);padding:var(--scoole-space-md);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-low)}.pricing-calculator>label{font-size:14px;line-height:16px;font-weight:600}.pricing-stepper{display:grid;grid-template-columns:var(--scoole-touch-target) minmax(0,1fr) var(--scoole-touch-target);align-items:center;gap:var(--scoole-space-xs)}.pricing-stepper button{width:var(--scoole-touch-target);height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-primary);font-size:24px;font-weight:700}.pricing-stepper button:disabled{cursor:not-allowed;background:var(--scoole-surface-high);color:var(--scoole-outline)}.pricing-stepper output{min-height:var(--scoole-touch-target);display:grid;place-items:center;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);font-size:16px;font-weight:700}.pricing-total{display:grid;grid-template-columns:1fr auto;align-items:end;padding:var(--scoole-space-sm) 0;border-bottom:1px solid var(--scoole-outline-variant)}.pricing-total span{color:var(--scoole-on-surface-variant);font-size:14px;font-weight:600}.pricing-total strong{font-size:32px;line-height:40px;font-weight:700}.pricing-total small{grid-column:2;color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;text-align:right}.pricing-calculator dl{display:grid;gap:var(--scoole-space-xs);margin:0}.pricing-calculator dl div{display:flex;justify-content:space-between;gap:var(--scoole-space-sm);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.pricing-calculator dd{margin:0;font-weight:700}.pricing-cta{width:100%;min-height:var(--scoole-touch-target);display:flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);text-decoration:none}.pricing-cta svg{width:18px}.pricing-fine-print{margin:0;color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;text-align:center}.pricing-trust{display:flex;align-items:center;justify-content:center;gap:var(--scoole-space-sm);margin-top:var(--scoole-space-lg);padding:var(--scoole-space-sm)}.pricing-trust>span{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.pricing-trust strong{font-size:14px;line-height:16px}.pricing-trust p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.subscription-page{display:grid;gap:var(--scoole-space-md)}.billing-message{min-height:var(--scoole-touch-target);display:flex;align-items:center;gap:var(--scoole-space-xs);padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-success-container);color:var(--scoole-on-success-container);font-size:14px;line-height:20px;font-weight:600}.billing-message.is-error{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.billing-message svg{width:18px;flex:0 0 18px}.subscription-status-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:var(--scoole-space-sm)}.subscription-status-card,.subscription-family-card,.subscription-choose,.subscription-management,.subscription-activation{border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.subscription-status-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:var(--scoole-space-sm);padding:var(--scoole-space-md)}.subscription-status-icon,.subscription-family-card>span{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.subscription-status-icon svg,.subscription-family-card>span svg{width:var(--scoole-space-md)}.subscription-status-card h2{margin:var(--scoole-space-base) 0;font-size:20px;line-height:28px;font-weight:700}.subscription-status-card p{margin:0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.billing-status-chip{display:inline-flex;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-highest);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.status-trialing .billing-status-chip{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.status-active .billing-status-chip{background:var(--scoole-success-container);color:var(--scoole-on-success-container)}.status-past_due .billing-status-chip{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.subscription-family-card{display:flex;align-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-md)}.subscription-family-card small,.subscription-family-card p{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.subscription-family-card strong{display:block;margin:var(--scoole-space-base) 0;font-size:24px;line-height:32px}.subscription-family-card p{margin:0}.subscription-activation{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-md)}.subscription-activation.is-error{border-color:var(--scoole-error)}.subscription-activation-icon{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.subscription-activation.is-error .subscription-activation-icon{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.subscription-activation h2{margin:var(--scoole-space-xs) 0;font-size:20px;line-height:28px}.subscription-activation p{margin:0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.subscription-activation button{display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs)}.subscription-activation button svg{width:18px}.subscription-choose,.subscription-management{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:var(--scoole-space-md);padding:var(--scoole-space-md)}.subscription-choose h2,.subscription-management h2{margin:var(--scoole-space-xs) 0;font-size:20px;line-height:28px}.subscription-choose>div>p,.subscription-management>div>p{margin:0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.subscription-choose .billing-interval-switch{margin:0 0 0 auto;align-self:start}.subscription-quote{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-low)}.subscription-quote>div{display:grid;grid-template-columns:auto auto;align-items:end;gap:var(--scoole-space-base) var(--scoole-space-xs)}.subscription-quote span{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.subscription-quote strong{font-size:24px;line-height:32px}.subscription-quote small{grid-column:1/-1;color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.subscription-quote button,.subscription-portal-button{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs)}.subscription-quote button:disabled,.subscription-portal-button:disabled{cursor:not-allowed;opacity:.64}.subscription-quote svg,.subscription-portal-button svg{width:18px}.subscription-legal{grid-column:1/-1;display:flex;align-items:flex-start;gap:var(--scoole-space-xs);margin:0;color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.subscription-legal svg{width:16px;flex:0 0 16px;color:var(--scoole-primary)}.subscription-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-column:1/-1;gap:var(--scoole-space-xs);margin:0}.subscription-details div{padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low)}.subscription-details dt{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.subscription-details dd{margin:var(--scoole-space-xs) 0 0;font-size:14px;line-height:20px;font-weight:700}.subscription-renewal-switch{align-self:start;justify-self:end;margin:0}.subscription-renewal-quote{margin-top:0}.subscription-portal-button{width:-moz-max-content;width:max-content}.subscription-portal-hint{align-self:center;margin:0;color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.billing-spin{animation:billing-spin 1s linear infinite}@keyframes billing-spin{to{transform:rotate(360deg)}}.learning-access-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--scoole-space-sm);margin-bottom:var(--scoole-space-md);padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.learning-access-banner>span{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.learning-access-banner strong{font-size:14px;line-height:16px}.learning-access-banner p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.learning-access-banner a{min-height:var(--scoole-touch-target);display:flex;align-items:center;border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-primary-container);color:var(--scoole-on-primary-container);font-size:14px;font-weight:600;text-decoration:none}.learning-access-banner.is-activating>span{background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.learning-access-banner.is-error{border-color:var(--scoole-error)}.learning-access-banner.is-error>span{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.global-trial-banner-shell{position:relative;z-index:20;padding:var(--scoole-space-sm) var(--scoole-gutter) 0;background:var(--scoole-surface)}.global-trial-banner-shell.with-sidebar{width:calc(100% - var(--scoole-sidebar-width));margin-left:var(--scoole-sidebar-width)}.global-trial-banner{width:min(100%,1440px);margin:0 auto}.global-trial-banner.is-ending{border-color:var(--scoole-tertiary-fixed-dim);background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.global-trial-banner.is-ending>span{background:var(--scoole-tertiary-fixed-dim);color:var(--scoole-on-tertiary-fixed)}.global-trial-banner.is-ending :is(p,small){color:var(--scoole-on-tertiary-fixed-variant)}.global-trial-banner.is-expired{border-color:var(--scoole-primary-container);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed)}.global-trial-banner.is-expired>span{background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.global-trial-banner.is-expired :is(p,small){color:var(--scoole-on-primary-fixed-variant)}.global-trial-banner small{display:block;margin-top:var(--scoole-space-base);font-size:12px;line-height:14px;font-weight:600}.learning-paywall{width:min(calc(100% - (var(--scoole-margin-mobile) * 2)),640px);display:grid;justify-items:center;gap:var(--scoole-space-sm);margin:var(--scoole-space-xl) auto;padding:var(--scoole-space-lg);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-xl);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1);text-align:center}.learning-paywall>span{width:var(--scoole-space-xl);height:var(--scoole-space-xl);display:grid;place-items:center;border-radius:var(--scoole-radius-lg);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.learning-paywall h1{margin:0;font-size:24px;line-height:32px}.learning-paywall p{margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.learning-paywall a{min-height:var(--scoole-touch-target);display:flex;align-items:center;padding:0 var(--scoole-space-sm);text-decoration:none}.learning-paywall>div{display:flex;align-items:center;gap:var(--scoole-space-xs);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.learning-paywall>div svg{width:16px}.historical-session-page{width:min(calc(100% - (var(--scoole-margin-mobile) * 2)),960px);display:grid;gap:var(--scoole-space-md);margin:0 auto;padding:var(--scoole-space-lg) 0 var(--scoole-space-xl)}.historical-session-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm)}.historical-session-topbar .scoole-secondary-button{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;gap:var(--scoole-space-xs);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-surface-low);color:var(--scoole-primary);box-shadow:none;font-size:14px;line-height:16px;font-weight:600}.historical-session-topbar>span{display:inline-flex;align-items:center;gap:var(--scoole-space-xs);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.historical-session-topbar svg{width:18px}.historical-session-page button:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.historical-session-summary{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(240px,auto);align-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-xl);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.historical-session-icon{width:var(--scoole-space-xl);height:var(--scoole-space-xl);display:grid;place-items:center;border-radius:var(--scoole-radius-lg);background:var(--scoole-primary-fixed);color:var(--scoole-primary)}.historical-session-icon svg{width:var(--scoole-space-md)}.historical-session-summary h1{margin:var(--scoole-space-base) 0;font-size:24px;line-height:32px}.historical-session-summary p{margin:0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.historical-session-summary dl{display:grid;gap:var(--scoole-space-xs);margin:0}.historical-session-summary dl div{padding:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low)}.historical-session-summary dt{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px;font-weight:600}.historical-session-summary dd{margin:var(--scoole-space-base) 0 0;font-size:14px;line-height:20px;font-weight:700}.historical-session-notice{display:flex;align-items:flex-start;gap:var(--scoole-space-xs);padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-default);background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.historical-session-notice svg{width:18px;flex:0 0 18px}.historical-session-notice p{margin:0;font-size:14px;line-height:20px;font-weight:600}.historical-session-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--scoole-space-sm)}.historical-result-card,.historical-detail-card{padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.historical-result-card{display:flex;align-items:center;gap:var(--scoole-space-sm)}.historical-result-card>span{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-surface-highest);color:var(--scoole-on-surface-variant)}.historical-result-card.is-correct>span{background:var(--scoole-success-container);color:var(--scoole-on-success-container)}.historical-result-card.is-partial>span{background:var(--scoole-tertiary-fixed);color:var(--scoole-on-tertiary-fixed-variant)}.historical-result-card.is-incorrect>span{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.historical-result-card h2,.historical-detail-card h2,.historical-detail-card h3{margin:0;font-size:18px;line-height:24px}.historical-result-card p,.historical-detail-card p{margin:var(--scoole-space-xs) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:22px;white-space:pre-wrap}.historical-detail-card ul{display:grid;gap:var(--scoole-space-xs);margin:var(--scoole-space-sm) 0 0;padding-left:var(--scoole-space-md);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.historical-homework-source .homework-uploaded-image{margin-top:var(--scoole-space-sm)}.historical-assessment-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--scoole-space-sm)}.historical-assessment-card header>svg{width:var(--scoole-space-md);color:var(--scoole-primary)}.historical-assessment-card>div{margin-top:var(--scoole-space-sm)}.historical-assessment-card h3{font-size:14px;line-height:20px}.historical-empty{grid-column:1/-1;text-align:center}.historical-empty>svg{width:var(--scoole-space-md);color:var(--scoole-primary)}.historical-session-state{min-height:320px;display:grid;place-content:center;justify-items:center;gap:var(--scoole-space-xs);color:var(--scoole-on-surface-variant)}.historical-session-state svg{width:var(--scoole-space-md)}.historical-session-error-state{width:min(calc(100% - (var(--scoole-margin-mobile) * 2)),640px);margin:0 auto}.historical-session-error{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--scoole-space-sm);padding:var(--scoole-space-md);border:1px solid var(--scoole-error);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.historical-session-error>span{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border-radius:var(--scoole-radius-md);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.historical-session-error h1{margin:0;color:var(--scoole-on-surface);font-size:20px;line-height:28px;font-weight:700}.historical-session-error p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px;font-weight:500}.historical-session-error button{grid-column:2;width:-moz-max-content;width:max-content;display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs)}@media(max-width:900px){.pricing-page{padding:var(--scoole-space-md) var(--scoole-gutter) var(--scoole-space-xl)}.pricing-card,.subscription-status-grid,.subscription-choose,.subscription-management{grid-template-columns:1fr}.subscription-choose .billing-interval-switch{margin:0}.subscription-renewal-switch{justify-self:start}.historical-session-summary{grid-template-columns:auto minmax(0,1fr)}.historical-session-summary dl{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.pricing-page{padding:var(--scoole-space-sm) var(--scoole-margin-mobile) var(--scoole-space-lg)}.pricing-header .scoole-secondary-button{display:none}.pricing-hero{margin:var(--scoole-space-lg) auto var(--scoole-space-md)}.pricing-hero h1{font-size:24px;line-height:32px;letter-spacing:0}.pricing-hero>p{font-size:16px;line-height:24px}.pricing-card{gap:var(--scoole-space-sm);padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-lg)}.pricing-card-copy,.pricing-calculator{padding:var(--scoole-space-sm)}.billing-interval-switch{width:100%;display:grid;grid-template-columns:1fr 1fr}.billing-interval-switch button{justify-content:center;padding:0 var(--scoole-space-xs)}.pricing-total strong{font-size:24px;line-height:32px}.subscription-status-card{grid-template-columns:auto minmax(0,1fr)}.subscription-status-card .billing-status-chip{grid-column:2;width:-moz-max-content;width:max-content}.subscription-activation{grid-template-columns:auto minmax(0,1fr)}.subscription-activation button{grid-column:1/-1;width:100%}.subscription-quote{align-items:stretch;flex-direction:column}.subscription-quote button,.subscription-portal-button{width:100%}.subscription-details{grid-template-columns:1fr}.learning-access-banner{grid-template-columns:auto minmax(0,1fr)}.learning-access-banner a{grid-column:1/-1;justify-content:center}.global-trial-banner-shell,.global-trial-banner-shell.with-sidebar{width:100%;margin-left:0;padding-right:var(--scoole-margin-mobile);padding-left:var(--scoole-margin-mobile)}.learning-paywall{padding:var(--scoole-space-md)}.historical-session-page{padding:var(--scoole-space-md) 0 var(--scoole-space-lg)}.historical-session-topbar>span{display:none}.historical-session-summary{grid-template-columns:1fr}.historical-session-icon{width:var(--scoole-touch-target);height:var(--scoole-touch-target)}.historical-session-summary dl{grid-column:auto;grid-template-columns:1fr}.historical-session-content,.historical-session-error{grid-template-columns:1fr}.historical-session-error button{grid-column:auto;width:100%}}@media(prefers-reduced-motion:reduce){.billing-spin{animation:none}.pricing-page :is(.scoole-primary-button,.scoole-secondary-button),.subscription-page :is(.scoole-primary-button,.scoole-secondary-button),.learning-paywall .scoole-primary-button,.historical-session-error .scoole-primary-button{transition:none}.pricing-page .scoole-primary-button:hover,.subscription-page .scoole-primary-button:hover,.learning-paywall .scoole-primary-button:hover,.historical-session-error .scoole-primary-button:hover{transform:none}}.legal-page{width:min(100%,1440px);min-height:100vh;margin:0 auto;padding:var(--scoole-space-md) var(--scoole-margin-desktop) var(--scoole-space-xl);color:var(--scoole-on-surface);font-family:Quicksand,sans-serif}.legal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-sm)}.legal-header>nav,.legal-brand,.legal-secondary-link,.legal-eyebrow,.legal-meta,.legal-meta>div,.legal-operator-notice,.legal-external-link,.legal-related nav,.legal-related a{display:flex;align-items:center}.legal-header>nav{flex-wrap:wrap;justify-content:flex-end;gap:var(--scoole-space-xs)}.legal-brand{gap:var(--scoole-space-xs);color:var(--scoole-primary);font-size:24px;line-height:32px;font-weight:700;text-decoration:none}.legal-brand svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.legal-secondary-link{min-height:var(--scoole-touch-target);gap:var(--scoole-space-xs);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-surface-low);color:var(--scoole-primary);font-size:14px;line-height:16px;font-weight:600;text-decoration:none}.legal-secondary-link svg{width:18px;height:18px}.legal-secondary-link:hover,.legal-secondary-link:active{background:var(--scoole-primary-fixed)}.legal-page :is(a,button):focus-visible,.site-footer a:focus-visible,.registration-legal-links a:focus-visible{outline:2px solid var(--scoole-primary);outline-offset:2px}.legal-language button{min-width:var(--scoole-touch-target);min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);background:var(--scoole-surface-lowest);color:var(--scoole-primary);box-shadow:none}.legal-document{width:min(100%,960px);margin:var(--scoole-space-xl) auto 0}.legal-hero{text-align:center}.legal-eyebrow{width:-moz-fit-content;width:fit-content;gap:var(--scoole-space-xs);margin:0 auto;padding:var(--scoole-space-xs) var(--scoole-space-sm);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em}.legal-eyebrow svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.legal-hero h1{margin:var(--scoole-space-sm) 0 var(--scoole-space-xs);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.legal-hero>p{max-width:720px;margin:0 auto;color:var(--scoole-on-surface-variant);font-size:18px;line-height:26px}.legal-meta{flex-wrap:wrap;justify-content:center;gap:var(--scoole-space-xs);margin:var(--scoole-space-md) 0 0}.legal-meta>div{gap:var(--scoole-space-xs);padding:var(--scoole-space-xs) var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-full);background:var(--scoole-surface-lowest);font-size:12px;line-height:14px}.legal-meta dt{color:var(--scoole-on-surface-variant);font-weight:600}.legal-meta dd{margin:0;font-weight:700}.legal-operator-notice{align-items:flex-start;gap:var(--scoole-space-sm);margin-top:var(--scoole-space-lg);padding:var(--scoole-space-sm);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-container)}.legal-operator-notice>svg{width:var(--scoole-space-md);height:var(--scoole-space-md);flex:0 0 var(--scoole-space-md);color:var(--scoole-primary)}.legal-operator-notice strong{font-size:14px;line-height:16px}.legal-operator-notice p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.legal-contents{margin-top:var(--scoole-space-lg);padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.legal-contents>strong{font-size:20px;line-height:28px}.legal-contents ol{-moz-columns:2;columns:2;-moz-column-gap:var(--scoole-space-lg);column-gap:var(--scoole-space-lg);margin:var(--scoole-space-sm) 0 0;padding-left:var(--scoole-space-md)}.legal-contents li{-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:var(--scoole-space-xs);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.legal-contents a,.legal-external-link,.legal-related a,.site-footer a,.registration-legal-links a{color:var(--scoole-primary);font-weight:600}.legal-contents a:hover{color:var(--scoole-on-primary-fixed-variant)}.legal-sections{display:grid;gap:var(--scoole-space-sm);margin-top:var(--scoole-space-lg)}.legal-sections>section{scroll-margin-top:var(--scoole-space-md);padding:var(--scoole-space-md);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.legal-sections>section>span{color:var(--scoole-primary);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em}.legal-sections h2{margin:var(--scoole-space-base) 0 var(--scoole-space-xs);font-size:20px;line-height:28px;font-weight:700}.legal-sections p,.legal-sections li{color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.legal-sections p{margin:0}.legal-sections ul{display:grid;gap:var(--scoole-space-xs);margin:var(--scoole-space-sm) 0 0;padding-left:var(--scoole-space-md)}.legal-external-link{width:-moz-fit-content;width:fit-content;gap:var(--scoole-space-xs);margin-top:var(--scoole-space-sm)}.legal-external-link svg,.legal-related svg{width:var(--scoole-space-sm);height:var(--scoole-space-sm)}.legal-related{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-md);margin-top:var(--scoole-space-lg);padding:var(--scoole-space-md);border-radius:var(--scoole-radius-lg);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.legal-related strong{font-size:16px;line-height:24px}.legal-related p{margin:var(--scoole-space-base) 0 0;font-size:14px;line-height:20px}.legal-related nav{flex:0 0 auto;gap:var(--scoole-space-xs)}.legal-related a{min-height:var(--scoole-touch-target);gap:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);background:var(--scoole-surface-lowest);text-decoration:none}.legal-related a:hover{background:var(--scoole-surface-low);color:var(--scoole-on-primary-fixed-variant)}.site-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--scoole-space-sm);margin-top:var(--scoole-space-lg);padding:var(--scoole-space-md) var(--scoole-margin-desktop);border-top:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface-variant);font-family:Quicksand,sans-serif;font-size:12px;line-height:14px}.site-footer p{margin:0}.site-footer-authenticated{justify-content:flex-start}.site-footer-with-sidebar{width:calc(100% - var(--scoole-sidebar-width));margin-left:var(--scoole-sidebar-width)}.site-footer nav{display:flex;align-items:center;flex-wrap:wrap;gap:var(--scoole-space-sm)}.site-footer a{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-xs);text-decoration:none}.site-footer a:hover{background:var(--scoole-surface-low);color:var(--scoole-on-primary-fixed-variant)}.registration-legal-consent>span{gap:var(--scoole-space-xs)}.registration-legal-consent label{cursor:pointer}.registration-legal-links{display:flex;flex-wrap:wrap;gap:var(--scoole-space-base) var(--scoole-space-xs);color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}@media(max-width:767px){.legal-page{padding:var(--scoole-space-sm) var(--scoole-margin-mobile) var(--scoole-space-lg)}.legal-header{align-items:flex-start}.legal-header>nav{width:-moz-min-content;width:min-content}.legal-secondary-link:first-child{display:none}.legal-document{margin-top:var(--scoole-space-lg)}.legal-hero{text-align:left}.legal-eyebrow{margin:0}.legal-hero h1{font-size:24px;line-height:32px;letter-spacing:0}.legal-hero>p{font-size:16px;line-height:24px}.legal-meta{justify-content:flex-start}.legal-contents{padding:var(--scoole-space-sm)}.legal-contents ol{-moz-columns:1;columns:1}.legal-sections>section,.legal-related{padding:var(--scoole-space-sm)}.legal-related{align-items:stretch;flex-direction:column}.legal-related nav{align-items:stretch;flex-direction:column}.legal-related a{justify-content:space-between}.site-footer{align-items:flex-start;flex-direction:column;padding:var(--scoole-space-md) var(--scoole-margin-mobile)}.site-footer-with-sidebar{width:100%;margin-left:0}}@media(prefers-reduced-motion:reduce){.legal-page *,.site-footer *{scroll-behavior:auto;transition:none}}.settings-page{width:100%;display:grid;gap:var(--scoole-space-lg);color:var(--scoole-on-surface)}.settings-page-heading>span{display:inline-flex;padding:var(--scoole-space-base) var(--scoole-space-xs);border-radius:var(--scoole-radius-full);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant);font-size:12px;line-height:14px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.settings-page-heading h1{margin:var(--scoole-space-xs) 0;color:var(--scoole-on-surface);font-size:32px;line-height:40px;font-weight:700;letter-spacing:-.02em}.settings-page-heading p{max-width:100%;margin:0;color:var(--scoole-on-surface-variant);font-size:16px;line-height:24px}.settings-sections{display:grid;gap:var(--scoole-space-md)}.settings-section{overflow:visible;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-1)}.settings-section>header{display:flex;align-items:flex-start;gap:var(--scoole-space-sm);padding:var(--scoole-space-md);border-bottom:1px solid var(--scoole-outline-variant)}.settings-section-icon{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;flex:0 0 var(--scoole-touch-target);border-radius:var(--scoole-radius-md);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.settings-section-icon svg{width:var(--scoole-space-md);height:var(--scoole-space-md)}.settings-section h2{margin:0;font-size:20px;line-height:28px;font-weight:700}.settings-section header p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.settings-section-body{padding:var(--scoole-space-md)}.settings-profile-form,.settings-dialog-form{display:grid;gap:var(--scoole-space-sm)}.settings-field{min-width:0;display:grid;gap:var(--scoole-space-xs)}.settings-field>label,.settings-language-row strong{font-size:14px;line-height:16px;font-weight:600}.settings-field input,.settings-dialog-form input{width:100%;min-height:var(--scoole-touch-target);border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-default);padding:var(--scoole-space-xs) var(--scoole-space-sm);background:var(--scoole-surface-lowest);color:var(--scoole-on-surface);font-size:16px;line-height:24px}.settings-field input:focus,.settings-dialog-form input:focus{border-color:var(--scoole-primary);outline:2px solid var(--scoole-primary-fixed);outline-offset:0}.settings-field input[aria-invalid=true],.settings-dialog-form input[aria-invalid=true]{border-color:var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.settings-field input[aria-invalid=true]:focus,.settings-dialog-form input[aria-invalid=true]:focus{outline-color:var(--scoole-error)}.settings-field input:-moz-read-only{background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant)}.settings-field input:read-only{background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant)}.settings-field input:disabled{cursor:not-allowed;background:var(--scoole-surface-high);opacity:.72}.settings-field-hint,.settings-field-error{margin:0;font-size:12px;line-height:14px;font-weight:600}.settings-field-hint{color:var(--scoole-on-surface-variant)}.settings-field-error{color:var(--scoole-error)}.settings-form-actions{display:flex;justify-content:flex-end}.settings-primary-button,.settings-secondary-button,.settings-destructive-button,.settings-destructive-outline{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;justify-content:center;gap:var(--scoole-space-xs);border-radius:var(--scoole-radius-default);padding:0 var(--scoole-space-sm);font-size:14px;line-height:16px;font-weight:600}.settings-primary-button{border:0;background:var(--scoole-primary-container);color:var(--scoole-on-primary-container)}.settings-secondary-button{border:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest);color:var(--scoole-primary)}.settings-destructive-button{border:0;background:var(--scoole-error);color:var(--scoole-on-error)}.settings-destructive-outline{border:1px solid var(--scoole-error);background:var(--scoole-surface-lowest);color:var(--scoole-error)}.settings-primary-button:hover,.settings-primary-button:focus-visible{background:var(--scoole-primary);color:var(--scoole-on-primary)}.settings-secondary-button:hover,.settings-secondary-button:focus-visible{border-color:var(--scoole-primary);background:var(--scoole-surface-low)}.settings-destructive-outline:hover,.settings-destructive-outline:focus-visible{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.settings-primary-button:disabled,.settings-secondary-button:disabled,.settings-destructive-button:disabled{cursor:not-allowed;background:var(--scoole-surface-highest);color:var(--scoole-on-surface-variant);opacity:.72}.settings-primary-button svg,.settings-secondary-button svg,.settings-destructive-button svg,.settings-destructive-outline svg{width:20px;height:20px}.settings-email-row,.settings-action-row,.settings-language-row{display:flex;align-items:center;justify-content:space-between;gap:var(--scoole-space-md)}.settings-email-row>div,.settings-action-row>div,.settings-language-row>div{min-width:0;display:grid;gap:var(--scoole-space-base)}.settings-email-row span{font-size:14px;line-height:16px;font-weight:600}.settings-email-row strong{font-size:16px;line-height:24px;overflow-wrap:anywhere}.settings-email-row small{color:var(--scoole-on-surface-variant);font-size:12px;line-height:14px}.settings-action-row strong{font-size:16px;line-height:24px}.settings-action-row p,.settings-language-row p{margin:0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.settings-language-row .scoole-listbox{width:calc(var(--scoole-space-xl) * 4)}.settings-student-preview{display:flex;align-items:center;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-low)}.settings-student-preview .student-avatar{width:calc(var(--scoole-space-xl) * 2);height:calc(var(--scoole-space-xl) * 2);margin:0;border-radius:var(--scoole-radius-lg)}.settings-student-preview>div{display:grid;gap:var(--scoole-space-base)}.settings-student-preview strong{font-size:20px;line-height:28px}.settings-student-preview span{color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.settings-readonly-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--scoole-space-sm)}.settings-empty{display:flex;align-items:flex-start;gap:var(--scoole-space-sm);padding:var(--scoole-space-sm);border:1px dashed var(--scoole-outline-variant);border-radius:var(--scoole-radius-md);background:var(--scoole-surface-low)}.settings-empty>svg{width:var(--scoole-space-md);height:var(--scoole-space-md);flex:0 0 var(--scoole-space-md);color:var(--scoole-primary)}.settings-empty strong{font-size:16px;line-height:24px}.settings-empty p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.settings-legal-links{display:flex;flex-wrap:wrap;gap:var(--scoole-space-sm)}.settings-legal-links a{min-height:var(--scoole-touch-target);display:inline-flex;align-items:center;border-radius:var(--scoole-radius-default);color:var(--scoole-primary);font-size:14px;line-height:16px;font-weight:600}.settings-legal-links a:hover{text-decoration:underline}.settings-danger{border-color:var(--scoole-error)}.settings-danger .settings-section-icon{background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.settings-feedback{display:flex;align-items:flex-start;gap:var(--scoole-space-xs);padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-md);font-size:14px;line-height:20px;font-weight:600}.settings-feedback svg{width:20px;height:20px;flex:0 0 20px}.settings-feedback.is-success{border:1px solid var(--scoole-primary-fixed-dim);background:var(--scoole-primary-fixed);color:var(--scoole-on-primary-fixed-variant)}.settings-feedback.is-error{border:1px solid var(--scoole-error);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.settings-page-feedback{position:sticky;top:var(--scoole-space-sm);z-index:3}.settings-password-input{position:relative}.settings-password-input input{padding-right:var(--scoole-space-xl)}.settings-password-input button{position:absolute;right:0;top:0;width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;border:0;border-radius:var(--scoole-radius-default);background:transparent;color:var(--scoole-on-surface-variant)}.settings-password-input button svg{width:20px;height:20px}.settings-dialog-layer{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:var(--scoole-margin-mobile);background:color-mix(in srgb,var(--scoole-inverse-surface) 54%,transparent)}.settings-dialog{width:min(calc(var(--scoole-space-xl) * 12),100%);max-height:calc(100vh - var(--scoole-space-lg));overflow-y:auto;border:1px solid var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);box-shadow:var(--scoole-shadow-level-2)}.settings-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--scoole-space-sm);padding:var(--scoole-space-md);border-bottom:1px solid var(--scoole-outline-variant)}.settings-dialog h2{margin:0;font-size:20px;line-height:28px;font-weight:700}.settings-dialog header p{margin:var(--scoole-space-base) 0 0;color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}.settings-icon-button{width:var(--scoole-touch-target);height:var(--scoole-touch-target);display:grid;place-items:center;flex:0 0 var(--scoole-touch-target);border:0;border-radius:var(--scoole-radius-default);background:var(--scoole-surface-low);color:var(--scoole-on-surface-variant)}.settings-dialog-form{padding:var(--scoole-space-md)}.settings-dialog-form>footer{position:sticky;bottom:calc(var(--scoole-space-md) * -1);display:flex;justify-content:flex-end;gap:var(--scoole-space-xs);margin:var(--scoole-space-xs) calc(var(--scoole-space-md) * -1) calc(var(--scoole-space-md) * -1);padding:var(--scoole-space-sm) var(--scoole-space-md);border-top:1px solid var(--scoole-outline-variant);background:var(--scoole-surface-lowest)}.settings-delete-summary{padding:var(--scoole-space-sm);border-radius:var(--scoole-radius-md);background:var(--scoole-error-container);color:var(--scoole-on-error-container)}.settings-delete-summary strong{font-size:14px;line-height:16px}.settings-delete-summary ul{margin:var(--scoole-space-xs) 0 0;padding-left:var(--scoole-space-md);font-size:14px;line-height:20px}.settings-skeleton{display:grid;gap:var(--scoole-space-md)}.settings-skeleton span{height:calc(var(--scoole-space-xl) * 4);border-radius:var(--scoole-radius-lg);background:linear-gradient(100deg,var(--scoole-surface-lowest),var(--scoole-surface-container),var(--scoole-surface-lowest));background-size:200% 100%;animation:skeleton-wave 1.4s ease infinite}.settings-load-error{display:grid;justify-items:center;padding:var(--scoole-space-xl);border:1px dashed var(--scoole-outline-variant);border-radius:var(--scoole-radius-lg);background:var(--scoole-surface-lowest);text-align:center}.settings-load-error>svg{width:var(--scoole-space-xl);height:var(--scoole-space-xl);color:var(--scoole-primary)}.settings-load-error h2{margin:var(--scoole-space-sm) 0 var(--scoole-space-xs);font-size:20px;line-height:28px}.settings-load-error p{margin:0 0 var(--scoole-space-sm);color:var(--scoole-on-surface-variant);font-size:14px;line-height:20px}@media(max-width:767px){.settings-page{gap:var(--scoole-space-md)}.settings-page-heading h1{font-size:24px;line-height:32px;letter-spacing:0}.settings-section>header,.settings-section-body,.settings-dialog>header,.settings-dialog-form{padding:var(--scoole-space-sm)}.settings-email-row,.settings-action-row,.settings-language-row{align-items:stretch;flex-direction:column}.settings-email-row button,.settings-action-row button,.settings-language-row .scoole-listbox{width:100%}.settings-readonly-grid{grid-template-columns:1fr}.settings-form-actions .settings-primary-button{width:100%}.settings-dialog-layer{align-items:end;padding:0}.settings-dialog{width:100%;max-height:92vh;border-radius:var(--scoole-radius-lg) var(--scoole-radius-lg) 0 0}.settings-dialog-form>footer{align-items:stretch;flex-direction:column-reverse;bottom:calc(var(--scoole-space-sm) * -1);margin:var(--scoole-space-xs) calc(var(--scoole-space-sm) * -1) calc(var(--scoole-space-sm) * -1);padding:var(--scoole-space-sm)}.settings-dialog-form>footer button{width:100%}.settings-student-preview .student-avatar{width:calc(var(--scoole-space-xl) + var(--scoole-space-md));height:calc(var(--scoole-space-xl) + var(--scoole-space-md))}}
