*,:before,:after,::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:#3b82f680;--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:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Hanken Grotesk,system-ui,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:Geist Mono,JetBrains Mono,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family: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:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-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{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.\!block{display:block!important}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-6{width:1.5rem;height:1.5rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:10px}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-lg{border-radius:16px}.border{border-width:1px}.border-border{--tw-border-opacity:1;border-color:rgb(30 45 53/var(--tw-border-opacity,1))}.border-transparent{border-color:#0000}.bg-clip-padding{background-clip:padding-box}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.text-\[0\.8rem\]{font-size:.8rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.outline-none{outline-offset:2px;outline:2px solid #0000}.outline{outline-style:solid}.blur{--tw-blur:blur(8px);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)}.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,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--bg:#071619;--bg-raised:#0c2225;--surface:#103034;--surface2:#163b3f;--surface3:#1d484b;--paper:#f5f0e6;--paper-muted:#ded6c8;--ink:#123236;--border:#ded6c826;--border2:#ded6c845;--accent:#64d4c6;--accent2:#b8f0e5;--on-accent:#082224;--on-deep-accent:#fffdf7;--accent-deep:#0b706d;--brass:#d3a65b;--text:#f7f3ea;--text2:#d6d5cb;--text3:#9aa9a5;--success:#86d19a;--danger:#f08a7a;--warning:#edc36d;--radius:14px;--radius-lg:22px;--radius-xl:30px;--font-base:15px;--surface-2:var(--surface2);--surface-3:var(--surface3);--border-light:var(--border2);--text4:var(--text3);--green:var(--success);--yellow:var(--warning);--red:var(--danger);--blue:var(--accent);--black:var(--bg);--white:var(--text);--gray-1:var(--text);--gray-2:var(--text2);--gray-3:var(--text3);--gray-4:var(--text3)}[data-theme=light]{--bg:#f0ebe0;--bg-raised:#e6dece;--surface:#fffdf7;--surface2:#f7f0e4;--surface3:#eee3d3;--paper:#173a3c;--paper-muted:#375558;--ink:#173a3c;--border:#173a3c3d;--border2:#173a3c6b;--accent:#08736f;--accent2:#075a57;--on-accent:#fffdf7;--on-deep-accent:#fffdf7;--accent-deep:#075a57;--brass:#875e17;--text:#153437;--text2:#385558;--text3:#4f6769;--success:#176e3c;--danger:#a83d33;--warning:#79530b}html[data-fontsize=small]{--font-base:13px;zoom:.9}html[data-fontsize=medium]{--font-base:15px;zoom:1}html[data-fontsize=large]{--font-base:17px;zoom:1.13}html[data-fontsize=xl]{--font-base:19px;zoom:1.27}[data-theme=light] .admin-sidebar,[data-theme=light] .portal-sidebar{background:#fffdf7e6!important}input::placeholder,textarea::placeholder{color:var(--text3);opacity:1}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg)}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:Hanken Grotesk,system-ui,sans-serif;font-size:var(--font-base);-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}::selection{background:var(--accent);color:var(--on-accent)}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text3) 52%, transparent);border-radius:99px}.font-display{font-family:Fraunces,Georgia,serif}.font-mono{font-family:DM Mono,monospace}.brand-kicker,.field-label,.eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-family:DM Mono,monospace;font-size:10px;font-weight:500}.brand-name{color:var(--text);letter-spacing:-.05em;font:400 24px/.92 Fraunces,Georgia,serif}.brand-subtitle{color:var(--text3);letter-spacing:.13em;text-transform:uppercase;margin-top:6px;font:10px/1 DM Mono,monospace}.app-bg,.portal-shell{isolation:isolate;background:radial-gradient(circle at 83% 7%, #64d4c626, transparent 25rem), radial-gradient(circle at -5% 92%, #d3a65b1a, transparent 30rem), linear-gradient(135deg, var(--bg) 0%, #0a2225 48%, #071619 100%);position:relative}.app-bg:before,.portal-shell:before{z-index:-1;content:"";pointer-events:none;opacity:.44;background-image:linear-gradient(#f7f3ea07 1px,#0000 1px),linear-gradient(90deg,#f7f3ea07 1px,#0000 1px);background-size:44px 44px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 78%);mask-image:linear-gradient(#000,#0000 78%)}.btn-primary,.btn-secondary{letter-spacing:.01em;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 18px;font-size:13px;font-weight:700;transition:transform .16s,background .16s,color .16s,border-color .16s;display:inline-flex}.btn-primary{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);box-shadow:0 10px 24px #64d4c626}.btn-primary:hover{background:var(--accent2);border-color:var(--accent2);transform:translateY(-1px)}.btn-secondary{border:1px solid var(--border2);color:var(--text);background:#ffffff06}.btn-secondary:hover{border-color:var(--accent);background:#64d4c617}.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.45;transform:none}.lesson-admin-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.lesson-admin-action{border-radius:9px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:0 13px;font-size:12px;font-weight:750;line-height:1;text-decoration:none;transition:transform .15s,border-color .15s,background-color .15s,color .15s;display:inline-flex}.lesson-admin-action--primary{border:1px solid var(--accent-deep);background:var(--accent-deep);color:var(--on-deep-accent);box-shadow:0 8px 20px -15px #000000bf}.lesson-admin-action--secondary{border:1px solid var(--border2);background:var(--surface);color:var(--text)}.lesson-admin-action:hover{transform:translateY(-1px)}.lesson-admin-action--primary:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent-deep) 86%, var(--accent))}.lesson-admin-action--secondary:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--surface))}.lesson-status-badge{border:1px solid color-mix(in srgb, var(--warning) 42%, var(--border));background:color-mix(in srgb, var(--warning) 12%, var(--surface));min-height:28px;color:var(--warning);border-radius:999px;align-items:center;padding:0 10px;font-size:11px;font-weight:750;display:inline-flex}.lesson-status-badge[data-published=true]{border-color:color-mix(in srgb, var(--success) 42%, var(--border));background:color-mix(in srgb, var(--success) 12%, var(--surface));color:var(--success)}.lesson-notebook-submit{border-radius:9px;width:100%;margin-top:4px}.input-base{border:1px solid var(--border);width:100%;min-height:48px;color:var(--text);background:#ffffff0e;border-radius:12px;outline:none;padding:0 14px;transition:border-color .16s,box-shadow .16s,background .16s}.input-base::placeholder{color:var(--text3)}.input-base:hover{border-color:var(--border2)}.input-base:focus{border-color:var(--accent);background:#ffffff14;box-shadow:0 0 0 3px #64d4c629}.icon-button{min-width:44px;min-height:44px}.icon-button:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible,.input-base:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--accent2);outline-offset:3px}.card,.glass-card,.portal-stat-card,.portal-progress-summary,.portal-lesson-content,.portal-empty-state{border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 90%, transparent);box-shadow:0 18px 38px -28px #000c}.card,.glass-card{padding:20px}.card-interactive{transition:transform .18s,border-color .18s,background .18s,box-shadow .18s}.card-interactive:hover{border-color:color-mix(in srgb, var(--accent) 68%, var(--border));background:var(--surface2);transform:translateY(-3px);box-shadow:0 25px 42px -30px #000000f2}.badge-success,.badge-danger,.badge-warning,.badge-neutral{letter-spacing:.04em;border:1px solid;border-radius:999px;align-items:center;padding:4px 9px;font:10px/1 DM Mono,monospace;display:inline-flex}.badge-success{color:var(--success);background:color-mix(in srgb, var(--success) 10%, transparent)}.badge-danger{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}.badge-warning{color:var(--warning);background:color-mix(in srgb, var(--warning) 10%, transparent)}.badge-neutral{color:var(--text2);background:#ffffff0b}.workspace-shell{min-height:100vh;display:flex}.workspace-main{flex:1;min-width:0}.app-main{min-width:0;max-width:100%;padding:38px 48px 64px;overflow-x:clip}.admin-sidebar{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);overflow:hidden;border-right:1px solid var(--border)!important;background:#071619d1!important;width:248px!important;padding:18px 12px!important}.admin-sidebar[data-collapsed=true]{width:76px!important;padding:12px 10px!important}.admin-sidebar-brand{min-height:100px;border-bottom-color:var(--border)!important;padding:10px 10px 20px!important}.admin-sidebar[data-collapsed=true] .admin-sidebar-brand{min-height:64px;justify-content:center!important;align-items:center!important;padding:0 0 12px!important}.admin-sidebar[data-collapsed=true] .sidebar-collapse-toggle{width:44px;height:44px;border-radius:12px!important}.sidebar-monogram{border:1px solid var(--border);background:color-mix(in srgb, var(--accent) 12%, transparent);width:34px;height:34px;color:var(--accent2);letter-spacing:-.08em;border-radius:10px;place-items:center;font:700 11px/1 DM Mono,monospace;display:grid}.admin-sidebar-nav{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border) transparent;min-height:0;gap:5px!important;padding:22px 4px!important}.admin-sidebar[data-collapsed=true] .admin-sidebar-nav{padding-top:12px!important;padding-bottom:12px!important}.admin-nav-item{flex:none;display:block}.schedule-legend{flex:none}.schedule-legend-summary{border:1px solid var(--border);min-height:30px;color:var(--text3);cursor:pointer;border-radius:999px;align-items:center;padding:0 10px;font-size:11px;list-style:none;display:inline-flex}.schedule-legend-summary::-webkit-details-marker{display:none}.schedule-legend-summary:before{content:"●";color:var(--accent);margin-right:6px;font-size:9px}.schedule-legend-menu{z-index:30;border:1px solid var(--border);background:var(--surface);border-radius:10px;gap:7px;min-width:174px;padding:11px;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 14px 30px -18px #00000080}.schedule-legend-menu>div{align-items:center;gap:7px;display:flex}.admin-nav-link{min-height:44px;border:1px solid #0000!important;border-radius:12px!important}.admin-nav-link:hover{border-color:var(--border)!important}.admin-sidebar-footer{border-top-color:var(--border)!important;padding:16px 4px 4px!important}.admin-sidebar[data-collapsed=true] .admin-sidebar-footer{align-items:center;gap:8px!important;padding:12px 0 0!important}.admin-sidebar[data-collapsed=true] .sidebar-footer-tools{flex-direction:column;align-items:center;padding:0!important}.admin-sidebar[data-collapsed=true] .sidebar-footer-tools>div{place-items:center;width:44px;height:44px;display:grid}.admin-sidebar[data-collapsed=true] .sidebar-footer-tools>div>button{border-radius:12px!important;width:44px!important;height:44px!important}.admin-sidebar[data-collapsed=true] .admin-sidebar-footer>button{border-radius:12px;width:44px;height:44px;justify-content:center!important;padding:0!important}.nav-section-label{color:var(--text3);letter-spacing:.16em;text-transform:uppercase;margin:14px 10px 7px;font:9px/1 DM Mono,monospace}.workspace-topline{justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px;display:flex}.workspace-topline p{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;font:10px/1.3 DM Mono,monospace}.workspace-status{color:var(--text2);align-items:center;gap:7px;font-size:12px;display:inline-flex}.workspace-status:before{background:var(--accent);content:"";border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #64d4c61f}.page-header{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-bottom:32px;padding-bottom:22px;display:grid}.page-header h1{max-width:13ch;color:var(--text);letter-spacing:-.065em;margin-top:9px;font:300 clamp(38px,4.2vw,63px)/.92 Fraunces,Georgia,serif}.page-header p:not(.brand-kicker){max-width:54ch;color:var(--text2);margin-top:12px;font-size:14px;line-height:1.55}.page-header-action{align-self:end}.login-shell{grid-template-columns:minmax(0,1.15fr) minmax(400px,.85fr);min-height:100vh;display:grid}.login-intro{border-right:1px solid var(--border);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(34px,5vw,78px);display:flex;position:relative;overflow:hidden}.login-intro:after{aspect-ratio:1;content:"";border:1px solid #b8f0e557;border-radius:50%;width:min(48vw,540px);position:absolute;bottom:-12%;right:7%;box-shadow:0 0 0 42px #64d4c60b,0 0 0 84px #64d4c606}.login-intro>*{z-index:1;position:relative}.login-intro h1{max-width:9ch;color:var(--text);letter-spacing:-.09em;font:300 clamp(62px,8vw,118px)/.8 Fraunces,Georgia,serif}.login-intro h1 em{color:var(--accent)}.login-intro-copy{max-width:430px;color:var(--text2);font-size:17px;line-height:1.65}.login-panel{background:#04111459;place-items:center;padding:42px;display:grid}.login-form{width:min(100%,390px)}.login-form>h1{color:var(--text);letter-spacing:-.065em!important;font:300 48px/.9 Fraunces,Georgia,serif!important}.field-label{margin-bottom:9px;display:block}.login-footnote{color:var(--text3);letter-spacing:.11em;font:10px/1.4 DM Mono,monospace}.dashboard-hero{border-radius:var(--radius-xl);background:linear-gradient(120deg,#17494b,#0a292c 62%,#0b2023);border:1px solid #b8f0e540;margin-bottom:30px;padding:clamp(24px,4vw,44px);position:relative;overflow:hidden}.dashboard-hero:after{content:"";border:1px solid #b8f0e559;border-radius:50%;width:420px;height:420px;position:absolute;top:-140px;right:-80px;box-shadow:0 0 0 42px #b8f0e50a,0 0 0 84px #b8f0e506}.dashboard-hero>*{z-index:1;position:relative}.dashboard-hero-date{color:var(--accent2);letter-spacing:.13em;text-transform:uppercase;font:10px/1 DM Mono,monospace}.dashboard-hero h1{letter-spacing:-.07em;max-width:12ch;margin:13px 0 9px;font:300 clamp(42px,5vw,72px)/.88 Fraunces,Georgia,serif}.dashboard-hero p{color:var(--paper-muted);font-size:15px}.dashboard-hero-mark{color:var(--accent2);font:italic 300 clamp(34px,4vw,60px)/1 Fraunces,Georgia,serif;position:absolute;bottom:31px;right:clamp(24px,5vw,70px)}.dashboard-section-label{color:var(--text2);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:15px;margin:0 0 14px;font:11px/1 DM Mono,monospace;display:flex}.dashboard-section-label:after{background:var(--border);content:"";flex:1;height:1px}.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:34px;display:grid}.login-legal-links,.sidebar-legal-links,.legal-footer{align-items:center;gap:12px;display:flex}.login-legal-links{justify-content:center;margin-top:18px}.login-legal-links a,.sidebar-legal-links a,.legal-footer a{color:var(--text4);font-size:11px;text-decoration:none}.login-legal-links a:hover,.sidebar-legal-links a:hover,.legal-footer a:hover{color:var(--accent2)}.sidebar-legal-links{flex-wrap:wrap;padding:0 10px}.legal-shell{width:min(100% - 32px,900px);color:var(--text);margin:0 auto;padding:44px 0 64px}.legal-hero{border:1px solid var(--border);background:linear-gradient(135deg, color-mix(in srgb, var(--surface) 94%, #0d5f60), var(--surface));border-radius:22px;padding:clamp(26px,5vw,54px)}.legal-back{color:var(--text3);margin-bottom:34px;font-size:12px;text-decoration:none;display:inline-block}.legal-hero h1{letter-spacing:-.055em;max-width:680px;margin:12px 0 16px;font:400 clamp(38px,7vw,68px)/.95 Fraunces,Georgia,serif}.legal-hero>p:not(.brand-kicker){max-width:650px;color:var(--text2);font-size:15px;line-height:1.7}.legal-hero time{color:var(--text4);margin-top:24px;font-size:11px;display:block}.legal-document{border:1px solid var(--border);background:var(--surface);border-radius:22px;margin-top:22px;padding:clamp(24px,5vw,52px)}.legal-document section+section{border-top:1px solid var(--border);margin-top:34px;padding-top:34px}.legal-document h2{color:var(--text);letter-spacing:-.03em;margin:0 0 13px;font:400 25px/1.1 Fraunces,Georgia,serif}.legal-document p,.legal-document li{color:var(--text2);font-size:14px;line-height:1.75}.legal-document p+p{margin-top:12px}.legal-document ul{gap:9px;margin:0;padding-left:20px;display:grid}.legal-footer{justify-content:center;padding-top:24px}.metric-card{border-radius:18px;min-height:180px;padding:20px!important}.metric-card:before{display:none}.metric-label{color:var(--text3);letter-spacing:.1em;text-transform:uppercase;font:10px/1.2 DM Mono,monospace}.metric-value{letter-spacing:-.06em;font:300 clamp(30px,3vw,44px)/.95 Fraunces,Georgia,serif}.dashboard-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.quick-link{border-radius:18px;min-height:132px}.portal-main{min-width:0;transition:margin-left .18s;background:0 0!important;margin-left:248px!important;padding:38px 48px 64px!important}.portal-sidebar{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-right-color:var(--border)!important;background:#071619d1!important;width:248px!important;padding:18px 12px!important}.portal-sidebar-brand{justify-content:space-between;align-items:flex-start;gap:10px;display:flex;border-bottom-color:var(--border)!important;padding:10px 10px 20px!important}.portal-sidebar-collapse{color:#b9ccca;cursor:pointer;background:0 0;border:1px solid #b8f0e52e;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;display:grid}.portal-sidebar-collapse:hover{color:#f5fbf9;background:#b8f0e514}.portal-sidebar-collapse:focus-visible{outline-offset:2px;outline:2px solid #b8f0e5}.portal-sidebar-nav{gap:5px!important;padding:22px 4px!important}.portal-sidebar-link{color:#b9ccca;border-radius:12px;text-decoration:none;display:block}.portal-sidebar-link-content{border:1px solid #0000;border-radius:12px;align-items:center;gap:11px;min-height:46px;padding:10px 11px;font-size:13px;font-weight:500;transition:color .15s,border-color .15s,background .15s;display:flex}.portal-sidebar-link:hover .portal-sidebar-link-content{color:#f5fbf9;background:#b8f0e514;border-color:#b8f0e52e}.portal-sidebar-link.is-active .portal-sidebar-link-content{color:#dffff8;background:#64d4c626;border-color:#b8f0e557}.portal-sidebar-link:focus-visible{outline-offset:2px;outline:2px solid #b8f0e5}.portal-sidebar-link svg{flex:none}.portal-sidebar .nav-section-label{color:#91aaa7}.portal-sidebar-footer{border-top-color:var(--border)!important;padding:16px 4px 4px!important}.portal-sidebar-user{justify-content:space-between;align-items:center;padding:0 10px 12px;display:flex}.portal-sidebar-user p{color:#f5fbf9;font-size:13px;font-weight:600}.portal-sidebar-user span{color:#a9bfbc;margin-top:3px;font-size:11px;display:block}.portal-sidebar-utilities{align-items:center;gap:5px;display:flex}.portal-sidebar-utilities>:is(a,button){color:#b9ccca;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.portal-sidebar-utilities>:is(a,button):hover{color:#f5fbf9;background:#b8f0e514;border-color:#b8f0e52e}.portal-sidebar-utilities>:is(a,button):focus-visible{outline-offset:2px;outline:2px solid #b8f0e5}.portal-sidebar-logout{color:#b9ccca;text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:9px;width:100%;min-height:44px;padding:8px 10px;transition:color .15s,border-color .15s,background .15s;display:flex}.portal-sidebar-logout:hover{color:#f5fbf9;background:#b8f0e514;border-color:#b8f0e52e}.portal-sidebar-logout:focus-visible{outline-offset:2px;outline:2px solid #b8f0e5}[data-portal-sidebar=collapsed] .portal-sidebar{width:78px!important;padding-inline:8px!important}[data-portal-sidebar=collapsed] .portal-main{margin-left:78px!important}[data-portal-sidebar=collapsed] .portal-sidebar-brand{justify-content:center;padding-inline:0!important}[data-portal-sidebar=collapsed] .portal-sidebar-brand-copy,[data-portal-sidebar=collapsed] .portal-sidebar .nav-section-label,[data-portal-sidebar=collapsed] .portal-sidebar-label,[data-portal-sidebar=collapsed] .portal-sidebar-user-copy,[data-portal-sidebar=collapsed] .portal-sidebar .sidebar-legal-links,[data-portal-sidebar=collapsed] .portal-sidebar-logout span{display:none}[data-portal-sidebar=collapsed] .portal-sidebar-link-content,[data-portal-sidebar=collapsed] .portal-sidebar-logout,[data-portal-sidebar=collapsed] .portal-sidebar-user{justify-content:center;padding-inline:0}[data-portal-sidebar=collapsed] .portal-sidebar-utilities{flex-direction:column}[data-portal-sidebar=collapsed] .portal-sidebar-footer{align-items:center}[data-theme=light] .portal-sidebar{background:#fffdf7f0!important;border-right-color:#173a3c2e!important}[data-theme=light] .portal-sidebar :is(.brand-name,.portal-sidebar-user p){color:#173a3c}[data-theme=light] .portal-sidebar :is(.brand-subtitle,.nav-section-label,.portal-sidebar-user span){color:#526d6f}[data-theme=light] .portal-sidebar :is(.portal-sidebar-link,.portal-sidebar-collapse,.portal-sidebar-logout,.portal-sidebar-utilities>a,.portal-sidebar-utilities>button){color:#385558}[data-theme=light] .portal-sidebar-link:hover .portal-sidebar-link-content,[data-theme=light] .portal-sidebar-collapse:hover,[data-theme=light] .portal-sidebar-logout:hover,[data-theme=light] .portal-sidebar-utilities>:is(a,button):hover{color:#075a57;background:#08736f17;border-color:#08736f42}[data-theme=light] .portal-sidebar :is(.portal-sidebar-link,.portal-sidebar-collapse,.portal-sidebar-logout,.portal-sidebar-utilities>a,.portal-sidebar-utilities>button):focus-visible{outline-color:#08736f}.student-preferences{width:min(860px,100%);margin:0 auto}.student-preferences>header{margin-bottom:24px}.student-preferences-preview{border:1px solid color-mix(in srgb, var(--warning) 45%, var(--border));background:color-mix(in srgb, var(--warning) 10%, var(--surface));color:var(--text2);border-radius:12px;margin-bottom:18px;padding:12px 14px;font-size:13px;line-height:1.5}.student-preferences>section{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);border-radius:18px;gap:18px;margin-top:14px;padding:clamp(18px,3vw,25px);display:grid;box-shadow:0 20px 40px -34px #000000b3}.student-preferences-heading{align-items:flex-start;gap:12px;display:flex}.student-preferences-heading>svg{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--border));background:color-mix(in srgb, var(--accent) 9%, var(--surface2));width:40px;height:40px;color:var(--accent);border-radius:12px;flex:none;padding:10px}.student-preferences-heading h2{color:var(--text);font:400 23px/1.05 Fraunces,Georgia,serif}.student-preferences-heading p{color:var(--text3);margin-top:5px;font-size:12px;line-height:1.5}.student-preferences-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.student-preferences-options button{border:1px solid var(--border);background:var(--surface2);min-height:56px;color:var(--text2);font:inherit;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.student-preferences-options button:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));color:var(--text)}.student-preferences-options button[aria-pressed=true]{border-color:color-mix(in srgb, var(--accent) 60%, var(--border));background:color-mix(in srgb, var(--accent) 13%, var(--surface2));color:var(--accent2);font-weight:700}[data-theme=light] .student-preferences-options button[aria-pressed=true]{color:#075a57}.student-preferences-fonts{grid-template-columns:repeat(4,minmax(0,1fr))}.student-preferences-fonts button{flex-direction:column}.student-preferences-sample{background:var(--surface2);color:var(--text2);border-radius:11px;padding:14px;line-height:1.6}.student-preferences-password,.student-preferences-save{min-height:44px;font:inherit;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:800;display:inline-flex}.student-preferences-password{border:1px solid var(--border2);width:fit-content;color:var(--text);background:0 0}.student-preferences-password:hover{border-color:var(--accent);color:var(--accent2)}[data-theme=light] .student-preferences-password:hover{color:#075a57}.student-preferences-save{border:1px solid var(--accent);background:var(--accent);width:100%;color:var(--on-accent);margin-top:18px}.student-preferences-save:disabled{cursor:wait;opacity:.65}.student-preferences-feedback{min-height:24px;color:var(--success);padding-top:7px;font-size:12px}.student-preferences-feedback .is-error{color:var(--danger)}.student-preferences-options button:focus-visible,.student-preferences-password:focus-visible,.student-preferences-save:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.student-preview-password-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.student-preview-password-head h2{color:var(--text);margin-top:6px;font:400 26px/1 Fraunces,Georgia,serif}.student-preview-password-head button{border:1px solid var(--border);width:40px;height:40px;color:var(--text2);background:0 0;border-radius:10px;place-items:center;display:grid}.student-preview-password-form{gap:8px;display:grid}.student-preview-password-form label{color:var(--text2);margin-top:7px;font-size:12px;font-weight:700}.student-preview-password-form input{border:1px solid var(--border2);background:var(--surface2);min-height:46px;color:var(--text);border-radius:10px;padding:0 13px}.student-preview-password-form p{color:var(--text2);margin:7px 0;font-size:12px}.student-preview-password-form button{border:1px solid var(--accent);background:var(--accent);min-height:44px;color:var(--on-accent);border-radius:10px;margin-top:8px;font-weight:800}.student-preview-password-head button:focus-visible,.student-preview-password-form :is(input,button):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.portal-page-title{color:var(--text);letter-spacing:-.065em;margin:0;font:300 clamp(42px,4.2vw,63px)/.92 Fraunces,Georgia,serif}.portal-library-page-heading{margin:0 0 28px}.portal-library-page-heading .portal-page-title{margin-top:7px}.portal-library-page-heading .portal-page-subtitle{margin-top:10px}.portal-page-subtitle{max-width:58ch;color:var(--text2);margin:12px 0 30px;font-size:14px;line-height:1.6}.portal-academy{width:min(920px,100%);margin:0 auto}.portal-academy-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.portal-academy-heading>svg{color:var(--accent);flex:none;margin-top:8px}.portal-academy-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:24px;display:grid}.portal-academy-tabs button{border:1px solid var(--border2);background:var(--surface);min-height:76px;color:var(--text2);font:inherit;cursor:pointer;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:700;transition:transform .15s,border-color .15s,background .15s,color .15s;display:flex}.portal-academy-tabs button:hover{border-color:color-mix(in srgb, var(--accent) 32%, var(--border));color:var(--text);transform:translateY(-1px)}.portal-academy-tabs button[aria-selected=true]{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--surface));color:var(--accent)}.portal-academy-tabs button:focus-visible,.portal-academy-levels button:focus-visible,.portal-academy-back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.portal-academy-panel{gap:16px;display:grid}.portal-academy-overall{border:1px solid;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;gap:14px 20px;padding:22px;display:grid}.portal-academy-overall>div:first-child>span{letter-spacing:.04em;text-transform:uppercase;border:1px solid;border-radius:999px;margin-bottom:7px;padding:4px 9px;font-size:10px;font-weight:800;display:inline-flex}.portal-academy-overall h2{color:var(--text);font:400 25px/1.05 Fraunces,Georgia,serif}.portal-academy-overall>strong{color:var(--text);text-align:right;font:400 30px/1 Fraunces,Georgia,serif}.portal-academy-overall>strong small{color:var(--text3);margin-top:5px;font:500 10px/1 DM Mono,monospace;display:block}.portal-academy-progress{background:color-mix(in srgb, var(--border2) 90%, transparent);border-radius:999px;height:6px;overflow:hidden}.portal-academy-progress>span,.portal-academy-progress>i{border-radius:inherit;height:100%;transition:width .5s;display:block}.portal-academy-overall>.portal-academy-progress{grid-column:1/-1}.portal-academy-next{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:var(--surface);border-radius:16px;padding:20px}.portal-academy-next>p{color:var(--accent);text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:800}.portal-academy-next h2{color:var(--text);margin-bottom:5px;font-size:18px}.portal-academy-next>span{color:var(--text3);font-size:12px}.portal-academy-next a{background:var(--accent);width:100%;min-height:39px;color:var(--on-accent);border-radius:9px;justify-content:center;align-items:center;gap:5px;margin-top:15px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.portal-academy-levels{gap:8px;display:grid}.portal-academy-levels button{border:1px solid var(--border);background:var(--surface);min-height:72px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:13px 15px;display:grid}.portal-academy-levels button:disabled{cursor:not-allowed;opacity:.42}.portal-academy-levels button>span{border:1px solid;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:900}.portal-academy-levels button>strong{font-size:13px}.portal-academy-levels button>small{color:var(--text3);font-size:11px}.portal-academy-levels button>.portal-academy-progress{grid-column:1/-1;width:100%}.portal-academy-checklist{gap:12px;display:grid}.portal-academy-checklist>section{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:15px 17px}.portal-academy-checklist header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;display:flex}.portal-academy-checklist header strong,.portal-academy-checklist header span{font-size:12px}.portal-academy-checklist header span{color:var(--text3)}.portal-academy-checklist a{border-top:1px solid var(--border);min-height:38px;color:var(--text2);align-items:center;gap:9px;font-size:12px;text-decoration:none;display:flex}.portal-academy-checklist a:hover{color:var(--text)}.portal-academy-certificates{gap:14px;display:grid}.portal-academy-certificates>p{color:var(--text2);font-size:13px;line-height:1.5}.portal-academy-certificates article{border:1px solid var(--border);background:var(--surface);border-radius:16px;gap:13px;padding:20px;display:grid;position:relative}.portal-academy-certificates article>div{border:1px solid var(--border);background:color-mix(in srgb, var(--surface2) 86%, transparent);min-height:128px;color:var(--text3);text-align:center;border-radius:12px;place-content:center;justify-items:center;gap:5px;display:grid}.portal-academy-certificates article.is-earned>div{border-color:color-mix(in srgb, var(--success) 40%, var(--border));color:var(--success)}.portal-academy-certificates article>div span{color:var(--text3);letter-spacing:.12em;text-transform:uppercase;font-size:9px}.portal-academy-certificates article>div strong{color:var(--text);font:400 22px/1 Fraunces,Georgia,serif}.portal-academy-certificates article>div small{font-size:11px}.portal-academy-certificates article>svg{color:var(--text3);position:absolute;top:32px;right:32px}.portal-academy-certificates footer{gap:7px;display:grid}.portal-academy-certificates footer>span{color:var(--text3);text-align:right;font-size:10px}.portal-academy-back{min-height:38px;color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;margin-bottom:18px;font-size:12px;font-weight:800;display:inline-flex}.portal-academy-level>header{border:1px solid;border-radius:18px;margin-bottom:18px;padding:22px}.portal-academy-level>header>div{align-items:center;gap:10px;display:flex}.portal-academy-level>header>div>span{color:#fff;border-radius:9px;place-items:center;min-width:42px;height:32px;font-size:12px;font-weight:900;display:grid}.portal-academy-level>header h1{color:var(--text);font:400 28px/1 Fraunces,Georgia,serif}.portal-academy-level>header p{color:var(--text2);margin:10px 0;font-size:12px}.portal-academy-lesson-list{gap:8px;display:grid}.portal-academy-lesson-list a{border:1px solid var(--border);background:var(--surface);min-height:72px;color:var(--text);border-radius:13px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:13px;padding:12px 15px;text-decoration:none;transition:transform .15s,border-color .15s;display:grid}.portal-academy-lesson-list a:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));transform:translateY(-1px)}.portal-academy-lesson-dot{color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-size:12px;font-weight:900;display:grid}.portal-academy-lesson-dot.is-completed{background:var(--success)}.portal-academy-lesson-dot.is-in_progress{background:var(--warning)}.portal-academy-lesson-list strong,.portal-academy-lesson-list small{display:block}.portal-academy-lesson-list strong{font-size:13px}.portal-academy-lesson-list small{color:var(--text3);margin-top:4px;font-size:11px}.portal-stat-grid,.portal-lesson-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.portal-stat-card{border-radius:18px;min-height:145px;padding:20px}.portal-stat-card p{color:var(--text3);letter-spacing:.1em;text-transform:uppercase;font:10px/1.2 DM Mono,monospace}.portal-stat-card strong{letter-spacing:-.045em;margin-top:18px;font:300 clamp(20px,2.2vw,30px)/1 Fraunces,Georgia,serif}.portal-quick-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.portal-quick-link{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 90%, transparent);border-radius:18px;min-height:164px;padding:23px;transition:transform .18s,border-color .18s;position:relative;overflow:hidden}.portal-quick-link:hover{border-color:var(--accent);transform:translateY(-3px)}.portal-quick-link-icon{width:38px;height:38px;color:var(--accent);border:1px solid #64d4c64d;border-radius:50%;place-items:center;display:grid}.portal-quick-link h2{letter-spacing:-.04em;margin-top:28px;font:400 23px/1 Fraunces,Georgia,serif}.portal-quick-link p{color:var(--text3);margin-top:7px;font-size:13px;line-height:1.45}.portal-next-action{border:1px solid color-mix(in srgb, var(--warning) 38%, var(--border));background:linear-gradient(115deg, color-mix(in srgb, var(--warning) 10%, var(--surface)), var(--surface));border-radius:18px;grid-template-columns:minmax(130px,.26fr) minmax(0,1fr);margin:0 0 34px;display:grid;overflow:hidden}.portal-next-action-meta{border-right:1px solid color-mix(in srgb, var(--warning) 27%, var(--border));padding:22px}.portal-next-action-meta p,.portal-next-action-eyebrow{color:var(--warning);letter-spacing:.11em;text-transform:uppercase;font:10px/1.2 DM Mono,monospace}.portal-next-action-meta span{color:var(--text2);margin-top:12px;font-size:12px;line-height:1.45;display:block}.portal-next-action-link,.portal-next-action-button{color:inherit;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:22px;padding:22px 24px;text-decoration:none;transition:background .18s;display:flex}.portal-next-action-button{cursor:pointer;width:100%}.portal-next-action-link:hover,.portal-next-action-button:hover{background:color-mix(in srgb, var(--warning) 8%, transparent)}.portal-next-action-link:focus-visible,.portal-next-action-button:focus-visible{outline:2px solid var(--warning);outline-offset:-3px}.portal-next-action-link h2,.portal-next-action-button h2{letter-spacing:-.035em;margin-top:7px;font:400 clamp(20px,2.2vw,28px)/1.05 Fraunces,Georgia,serif}.portal-next-action-copy{max-width:64ch;color:var(--text2);white-space:pre-wrap;margin-top:10px;font-size:14px;line-height:1.55}.portal-next-action-cta{color:var(--warning);white-space:nowrap;flex:none;font-size:13px;font-weight:700}.portal-lesson-card{border-color:var(--border);background:color-mix(in srgb, var(--surface) 90%, transparent);border-radius:18px;min-height:245px}.portal-lesson-card:hover{border-color:var(--accent)}.portal-content-section{margin-bottom:30px}.portal-content-section-heading{grid-template-columns:1fr auto;align-items:end;gap:3px 16px;margin-bottom:14px;display:grid}.portal-content-section-heading p{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;grid-column:1/-1;margin:0;font:10px/1.2 DM Mono,monospace}.portal-content-section-heading h2{color:var(--text);margin:0;font:400 26px/1.1 Fraunces,Georgia,serif}.portal-content-section-heading span{color:var(--text3);font-size:12px}.portal-level-badge{color:var(--accent2);border-color:#64d4c66b;font:10px/1 DM Mono,monospace}.portal-lesson-card h2,.portal-progress-summary h2,.portal-lesson-content h2,.portal-empty-state h2{font-family:Fraunces,Georgia,serif;font-weight:400}.portal-lesson-topic{color:var(--brass)}.portal-progress-track{background:var(--surface3)}.portal-progress-bar{background:var(--accent)}.portal-data-error{border-color:color-mix(in srgb, var(--danger) 35%, transparent);background:color-mix(in srgb, var(--danger) 9%, transparent);color:var(--danger);border-radius:14px}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.feature-card{border:1px solid var(--border);border-radius:var(--radius-xl);background:color-mix(in srgb, var(--surface) 92%, transparent);flex-direction:column;min-height:270px;padding:26px;transition:transform .18s,border-color .18s,background .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 38px -31px #000c}.feature-card:after{content:"";border:1px solid #b8f0e529;border-radius:50%;width:180px;height:180px;position:absolute;bottom:-72px;right:-58px}.feature-card:hover{border-color:var(--accent);background:var(--surface2);transform:translateY(-4px)}.feature-card--primary{background:linear-gradient(135deg,#15504f,#0c2d30 72%);border-color:#b8f0e552}.feature-card--primary:after{border-color:#b8f0e557;box-shadow:0 0 0 32px #b8f0e50a}.feature-card-top{justify-content:space-between;align-items:flex-start;display:flex}.feature-card-icon{width:46px;height:46px;color:var(--accent);background:#64d4c61c;border:1px solid #64d4c657;border-radius:50%;place-items:center;display:grid}.feature-card--primary .feature-card-icon{color:var(--accent2);background:#b8f0e51f;border-color:#b8f0e559}.feature-card h2{max-width:12ch;color:var(--text);letter-spacing:-.055em;margin-top:auto;font:400 clamp(26px,2.5vw,36px)/.95 Fraunces,Georgia,serif}.feature-card p{max-width:38ch;color:var(--text2);margin-top:10px;font-size:13px;line-height:1.55}.feature-card-arrow{color:var(--text3);transition:transform .18s}.feature-card:hover .feature-card-arrow{color:var(--accent2);transform:translate(3px,-3px)}.library-level{margin-bottom:38px}.library-level-head{align-items:center;gap:12px;margin-bottom:15px;display:flex}.library-level-badge{letter-spacing:.07em;border:1px solid;border-radius:999px;justify-content:center;align-items:center;min-width:44px;min-height:28px;font:11px/1 DM Mono,monospace;display:inline-flex}.library-level-count{color:var(--text3);font-size:12px}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.library-card{min-height:270px;position:relative;border-radius:18px!important;padding:18px!important}.library-card h3{color:var(--text);letter-spacing:-.04em;margin:24px 0 6px;font:400 21px/1.02 Fraunces,Georgia,serif}.library-card-topic{color:var(--brass);letter-spacing:.09em;text-transform:uppercase;font:10px/1 DM Mono,monospace}.library-card-description{color:var(--text3);margin-top:12px;font-size:12px;line-height:1.5}.library-card-meta{gap:8px;margin-top:16px;display:grid}.library-card-meta p,.library-card-objective{color:var(--text2);margin:0;font-size:12px;line-height:1.4}.library-card-meta span,.library-card-objective>span{color:var(--text3);letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px;font:9px/1 DM Mono,monospace;display:block}.library-card-objective{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}.library-card-objective .library-card-description{color:var(--text2);margin:0}.empty-state{border:1px dashed var(--border2);border-radius:var(--radius-lg);text-align:center;background:#ffffff06;place-content:center;justify-items:center;min-height:240px;padding:34px;display:grid}.empty-state h2{color:var(--text);letter-spacing:-.04em;margin-top:16px;font:400 26px/1 Fraunces,Georgia,serif}.empty-state p{max-width:43ch;color:var(--text3);margin-top:9px;font-size:13px;line-height:1.55}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.kpi-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);border-radius:18px;min-height:132px;padding:18px}.kpi-card-alert{border-color:color-mix(in srgb, var(--danger) 45%, var(--border))}.kpi-label{color:var(--text3);letter-spacing:.09em;text-transform:uppercase;font:10px/1.2 DM Mono,monospace}.kpi-value{color:var(--text);letter-spacing:-.055em;margin-top:18px;font:300 clamp(24px,2.7vw,35px)/1 Fraunces,Georgia,serif}.filter-toolbar{gap:12px;margin-bottom:14px;display:grid}.filter-chip{border:1px solid var(--border);min-height:32px;color:var(--text3);background:0 0;border-radius:999px;padding:5px 11px;font-size:12px}.filter-chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:700}.data-shell{border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 92%, transparent);overflow:hidden}.data-row{transition:background .15s}.data-row:hover{background:#64d4c60f}.report-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:28px;display:grid}.report-kpi{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);border-radius:18px;min-height:138px;padding:19px;position:relative;overflow:hidden}.report-kpi:after{content:"";border:1px solid #64d4c626;border-radius:50%;width:108px;height:108px;position:absolute;bottom:-48px;right:-26px}.report-kpi p{z-index:1;color:var(--text3);letter-spacing:.08em;text-transform:uppercase;font:10px/1.35 DM Mono,monospace;position:relative}.report-kpi strong{z-index:1;color:var(--text);letter-spacing:-.06em;margin-top:18px;font:300 clamp(25px,2.8vw,38px)/.94 Fraunces,Georgia,serif;display:block;position:relative}.report-note{color:var(--text3);align-items:flex-start;gap:9px;margin:-8px 0 22px;font-size:12px;line-height:1.5;display:flex}.report-note svg{color:var(--accent);flex:none;margin-top:1px}.report-toolbar{justify-content:space-between;align-items:center;gap:16px;margin:0 0 15px;display:flex}.report-toolbar h2{color:var(--text);letter-spacing:-.05em;font:400 clamp(25px,2.4vw,33px)/1 Fraunces,Georgia,serif}.report-range{border:1px solid var(--border);background:#ffffff08;border-radius:999px;gap:5px;padding:4px;display:flex}.report-range button{min-height:30px;color:var(--text3);background:0 0;border:0;border-radius:999px;padding:5px 10px;font-size:11px}.report-range button[aria-pressed=true]{background:var(--accent);color:var(--on-accent);font-weight:700}.report-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.report-chart-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--surface) 92%, transparent);padding:22px;box-shadow:0 18px 38px -30px #000000b3}.report-chart-card--wide{grid-column:1/-1}.report-chart-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.report-chart-head h3{color:var(--text);letter-spacing:-.05em;margin-top:7px;font:400 25px/.95 Fraunces,Georgia,serif}.report-chart-current{color:var(--text);white-space:nowrap;font:400 20px/1 Fraunces,Georgia,serif}.report-chart-delta{color:var(--text3);text-align:right;margin-top:6px;font-size:11px}.report-legend{color:var(--text3);flex-wrap:wrap;gap:12px;margin:20px 0 15px;font-size:11px;display:flex}.report-legend span{align-items:center;gap:6px;display:inline-flex}.report-legend i{border-radius:50%;width:8px;height:8px;display:block}.report-plot{border-bottom:1px solid var(--border);align-items:end;gap:clamp(4px,.8vw,10px);min-height:205px;padding:16px 3px 0;display:flex}.report-column{flex:1;grid-template-rows:165px auto;gap:9px;min-width:0;display:grid}.report-bars{justify-content:center;align-items:end;gap:3px;height:165px;display:flex}.report-bar{background:var(--accent);border-radius:8px 8px 2px 2px;width:min(18px,42%);min-height:3px;transition:filter .16s,transform .16s}.report-bar--secondary{background:var(--danger);opacity:.85}.report-column:hover .report-bar{filter:brightness(1.16);transform:translateY(-2px)}.report-column label{color:var(--text3);letter-spacing:-.03em;text-align:center;text-overflow:ellipsis;white-space:nowrap;font:9px/1.2 DM Mono,monospace;overflow:hidden}.report-empty-chart{min-height:205px;color:var(--text3);text-align:center;place-content:center;font-size:13px;display:grid}.report-data-details{border-top:1px solid var(--border);margin-top:16px;padding-top:13px}.report-data-details summary{color:var(--text2);cursor:pointer;font-size:12px}.report-data-details>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.report-data-point{background:#ffffff09;border-radius:10px;padding:9px}.report-data-point strong,.report-data-point span{display:block}.report-data-point span{color:var(--text3);font-size:10px}.report-data-point strong{color:var(--text);margin-top:3px;font-size:12px}.report-month-detail{border:1px solid var(--border);background:var(--surface);border-radius:16px;grid-template-columns:minmax(150px,1fr) auto minmax(300px,2fr);align-items:center;gap:18px;margin-top:16px;padding:18px 20px;display:grid}.report-month-detail h3{color:var(--text);margin-top:6px;font:400 24px/1 Fraunces,Georgia,serif}.report-month-detail select{border:1px solid var(--border);background:var(--surface2);min-height:38px;color:var(--text);font:inherit;border-radius:8px;outline:0;padding:0 10px;font-size:12px}.report-month-detail dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.report-month-detail dl div{border-left:1px solid var(--border);padding-left:10px}.report-month-detail dt{color:var(--text3);font-size:10px}.report-month-detail dd{color:var(--text);margin:5px 0 0;font:400 17px/1 Fraunces,Georgia,serif}.finance-toolbar{justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;display:flex}.finance-toolbar h2{color:var(--text);letter-spacing:-.05em;margin-top:7px;font:400 30px/.95 Fraunces,Georgia,serif}.finance-history-link{border:1px solid var(--border);min-height:42px;color:var(--text2);border-radius:10px;align-items:center;gap:8px;padding:0 13px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.finance-history-link:hover{border-color:var(--accent);color:var(--accent2);background:#64d4c614}.finance-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px;display:grid}.finance-search{max-width:430px;color:var(--text3);letter-spacing:.06em;text-transform:uppercase;gap:6px;margin-bottom:12px;font-size:11px;font-weight:700;display:grid}.finance-search input{box-sizing:border-box;border:1px solid var(--border);background:var(--surface2);width:100%;min-height:42px;color:var(--text);font:inherit;text-transform:none;border-radius:10px;outline:0;padding:0 13px;font-size:13px}.finance-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #64d4c624}.finance-filters{justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px;display:flex}.finance-due-day-filter{min-width:min(100%,180px);color:var(--text3);letter-spacing:.07em;text-transform:uppercase;gap:5px;font-size:10px;font-weight:800;display:grid}.finance-due-day-filter select{border:1px solid var(--border);background:var(--surface2);min-height:34px;color:var(--text);font:inherit;text-transform:none;border-radius:8px;outline:0;padding:0 9px;font-size:12px}.finance-due-day-filter select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #64d4c624}.finance-table{border:1px solid var(--border);background:var(--surface);border-radius:14px;overflow:hidden}.finance-table-head,.finance-table-row{grid-template-columns:minmax(180px,1fr) 100px 118px 145px minmax(180px,auto);align-items:center;gap:12px;padding:13px 18px;display:grid}.finance-table-head{border-bottom:1px solid var(--border);color:var(--text3);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:700}.finance-table-row{border-bottom:1px solid var(--border)}.finance-table-row:last-child{border-bottom:0}.finance-action-complete{color:var(--green);align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.finance-next-action{justify-items:start;gap:7px;min-width:210px;display:grid}.finance-button{border:1px solid var(--border);min-height:36px;color:var(--text2);font:inherit;cursor:pointer;background:0 0;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:7px 11px;font-size:11px;font-weight:750;line-height:1.2;transition:border-color .15s,background-color .15s,color .15s,transform .15s;display:inline-flex}.finance-button:hover:not(:disabled){border-color:var(--accent);color:var(--text);transform:translateY(-1px)}.finance-button:focus-visible,.finance-settings-action:focus-visible,.finance-paid-shortcut:focus-visible,.finance-secondary-actions button:focus-visible,.finance-feedback button:focus-visible,.finance-dialog-header button:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.finance-button:disabled{cursor:wait;opacity:.58}.finance-button--primary{border-color:color-mix(in srgb, var(--accent) 62%, transparent);background:var(--accent);color:var(--on-accent)}.finance-button--primary:hover:not(:disabled){border-color:var(--accent2);background:var(--accent2);color:var(--on-accent)}.finance-button--secondary{border-color:color-mix(in srgb, var(--accent) 38%, var(--border));background:color-mix(in srgb, var(--accent) 8%, var(--surface));color:var(--accent2)}.finance-button--whatsapp{color:color-mix(in srgb, #25d366 78%, var(--text));background:#25d3661c;border-color:#25d36675}.finance-button--whatsapp:hover:not(:disabled){color:color-mix(in srgb, #25d366 62%, var(--text));background:#25d3662b;border-color:#25d366}.finance-button--ghost{min-height:32px;padding:5px 8px}.finance-settings-action,.finance-paid-shortcut,.finance-secondary-actions button{color:var(--text3);font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;align-items:center;gap:5px;font-size:10px;text-decoration:underline;display:inline-flex}.finance-settings-action:hover,.finance-paid-shortcut:hover,.finance-secondary-actions button:hover{color:var(--text)}.finance-secondary-actions{flex-wrap:wrap;gap:10px;display:flex}.finance-whatsapp-confirmation{box-sizing:border-box;background:#25d36613;border:1px solid #25d36661;border-radius:11px;width:min(100%,290px);padding:11px}.finance-whatsapp-confirmation>div:first-child{gap:3px;display:grid}.finance-whatsapp-confirmation span{color:color-mix(in srgb, #25d366 72%, var(--text));letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.finance-whatsapp-confirmation strong{color:var(--text);font-size:12px}.finance-whatsapp-confirmation small{color:var(--text3);font-size:10px;line-height:1.45}.finance-whatsapp-confirmation-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.finance-feedback{border:1px solid var(--border);color:var(--text);border-radius:11px;justify-content:space-between;align-items:center;gap:14px;margin:0 0 16px;padding:11px 13px;font-size:12px;display:flex}.finance-feedback--success{background:#30d15814;border-color:#30d15861}.finance-feedback--warning{background:#ff9f0a17;border-color:#ff9f0a6b}.finance-feedback button,.finance-dialog-header button{width:32px;height:32px;color:var(--text2);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:inline-grid}.finance-dialog-backdrop{z-index:1100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000a8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.finance-dialog{box-sizing:border-box;border:1px solid var(--border);background:var(--surface);border-radius:16px;width:min(100%,540px);padding:22px;box-shadow:0 28px 85px #00000061}.finance-dialog-header{justify-content:space-between;align-items:start;gap:18px;display:flex}.finance-dialog-header h2{color:var(--text);letter-spacing:-.04em;margin:6px 0 0;font:400 28px/1 Fraunces,Georgia,serif}.finance-dialog-intro{color:var(--text2);margin:18px 0;font-size:12px;line-height:1.55}.finance-dialog-intro strong{color:var(--text)}.finance-dialog-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.finance-dialog-fields label{color:var(--text3);letter-spacing:.05em;text-transform:uppercase;gap:6px;font-size:10px;font-weight:750;display:grid}.finance-dialog-fields input{box-sizing:border-box;border:1px solid var(--border);background:var(--surface2);width:100%;min-height:42px;color:var(--text);font:inherit;text-transform:none;border-radius:9px;outline:0;padding:0 11px;font-size:13px}.finance-dialog-fields input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #64d4c624}.finance-dialog-error{color:color-mix(in srgb, var(--red) 65%, var(--text));background:#ff453a14;border:1px solid #ff453a5c;border-radius:9px;margin:12px 0 0;padding:9px 10px;font-size:11px}.finance-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.practice-stage{border-radius:var(--radius-xl);background:linear-gradient(150deg,#164d4c,#0d3033 45%,#071b20);border:1px solid #b8f0e53b;grid-template-rows:auto minmax(0,1fr) auto;min-height:calc(100vh - 100px);display:grid;overflow:hidden;box-shadow:0 28px 65px -42px #000}.practice-stage-head{border-bottom:1px solid #f7f3ea26;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;display:flex}.practice-stage-title{align-items:center;gap:12px;display:flex}.practice-orb{border:1px solid var(--accent2);background:radial-gradient(circle at 32% 28%, var(--accent2), var(--accent-deep) 54%, #0a2f31);border-radius:50%;width:38px;height:38px;position:relative;box-shadow:0 0 0 7px #64d4c61f}.practice-orb:after{content:"";border:1px solid #f7f3ea8c;border-radius:50%;position:absolute;inset:7px}.practice-stage-title h1{letter-spacing:-.04em;font:400 24px/1 Fraunces,Georgia,serif}.practice-stage-title p,.practice-stage-head>p{color:var(--text2);margin-top:4px;font-size:12px}.practice-stage-body{flex-direction:column;gap:18px;min-height:0;padding:24px;display:flex;overflow-y:auto}.practice-guide-intro{gap:14px;max-width:760px;margin:18px 0 10px;display:grid}.practice-welcome{border-left:2px solid var(--brass);max-width:620px;color:var(--paper-muted);padding-left:20px;font:300 26px/1.2 Fraunces,Georgia,serif}.practice-guide-copy{color:#b9cfca;max-width:650px;font-size:13px;line-height:1.6}.practice-quick-actions{flex-wrap:wrap;gap:9px;display:flex}.practice-quick-actions button{color:#e7f5f1;background:#ffffff0e;border:1px solid #b8f0e538;border-radius:999px;align-items:center;gap:8px;min-height:38px;padding:8px 13px;font-size:12px;font-weight:600;transition:border-color .15s,background-color .15s,transform .15s;display:inline-flex}.practice-quick-actions button:hover{background:#b8f0e51a;border-color:#b8f0e594;transform:translateY(-1px)}.practice-quick-actions button:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.practice-quick-actions button:disabled{cursor:wait;opacity:.55}.practice-simulations{gap:8px;margin-top:4px;display:grid}.practice-simulations>span{color:#9cb9b4;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700}.practice-simulations>div{flex-wrap:wrap;gap:7px;display:flex}.practice-simulations button{color:#f0ce83;background:#d9a44114;border:1px solid #d9a4415c;border-radius:999px;min-height:34px;padding:0 11px;font-size:11px}.practice-simulations button:disabled{cursor:wait;opacity:.55}.practice-message-row{display:flex}.practice-message-row.user{justify-content:flex-end}.practice-message{max-width:min(72%,660px);color:var(--text);white-space:pre-wrap;background:#ffffff13;border:1px solid #f7f3ea2b;border-radius:16px 16px 16px 4px;padding:14px 16px;font-size:14px;line-height:1.65}.practice-message-row.user .practice-message{background:var(--paper);color:var(--ink);border-color:#0000;border-radius:16px 16px 4px}.practice-feedback{color:#91aaa6;align-items:center;gap:4px;margin:6px 0 0 8px;font-size:10px;display:flex}.practice-feedback button{color:#91aaa6;background:0 0;border:1px solid #0000;border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.practice-feedback button[aria-pressed=true]{color:var(--accent2);background:#64d4c61f;border-color:#64d4c666}.practice-composer{background:#04121547;border-top:1px solid #f7f3ea26;gap:9px;padding:14px;display:flex}.practice-composer input{min-width:0;color:var(--text);background:#ffffff12;border:1px solid #f7f3ea2b;border-radius:999px;outline:none;flex:1;padding:0 16px}.practice-composer input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #64d4c621}.practice-composer button{width:44px;height:44px;color:var(--text2);background:0 0;border:1px solid #0000;border-radius:50%;flex:none;place-items:center;display:grid}.practice-composer button:last-child{background:var(--accent);color:var(--on-accent)}.practice-composer button:disabled{opacity:.35}[data-theme=light] html,[data-theme=light] body{color:var(--text);background:#ece7dc}[data-theme=light] .app-bg,[data-theme=light] .portal-shell{background:radial-gradient(circle at 92% 5%,#087f7b1a,#0000 24rem),radial-gradient(circle at 3% 94%,#a970211a,#0000 27rem),#ece7dc}[data-theme=light] .app-bg:before,[data-theme=light] .portal-shell:before{opacity:.55;background-image:linear-gradient(#173a3c0b 1px,#0000 1px),linear-gradient(90deg,#173a3c0b 1px,#0000 1px)}[data-theme=light] .admin-sidebar,[data-theme=light] .portal-sidebar{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:14px 0 35px -30px #1430325c;background:#fffdf7fa!important;border-color:#173a3c29!important}[data-theme=light] .admin-sidebar-brand,[data-theme=light] .admin-sidebar-footer,[data-theme=light] .portal-sidebar-brand,[data-theme=light] .portal-sidebar-footer,[data-theme=light] .page-header{border-color:#173a3c29!important}[data-theme=light] .admin-nav-link:hover,[data-theme=light] .portal-sidebar-link:hover .portal-sidebar-link-content{background:#087f7b12!important;border-color:#087f7b38!important}[data-theme=light] .portal-sidebar-link{color:#3f5e61}[data-theme=light] .portal-sidebar-link:hover .portal-sidebar-link-content{color:#173a3c}[data-theme=light] .portal-sidebar-link.is-active .portal-sidebar-link-content{color:#075a57;background:#08736f1c;border-color:#08736f52}[data-theme=light] .portal-sidebar-link:focus-visible,[data-theme=light] .portal-sidebar-logout:focus-visible{outline-color:#08736f}[data-theme=light] .portal-sidebar .nav-section-label{color:#587174}[data-theme=light] .portal-sidebar-user p{color:#173a3c}[data-theme=light] .portal-sidebar-user span{color:#536d70}[data-theme=light] .portal-sidebar-logout{color:#405f62}[data-theme=light] .portal-sidebar-logout:hover{color:#173a3c;background:#087f7b12;border-color:#087f7b38}[data-theme=light] .portal-sidebar-utilities>a{color:#405f62}[data-theme=light] .portal-sidebar-utilities>a:hover{color:#173a3c;background:#087f7b12;border-color:#087f7b38}[data-theme=light] .admin-nav-link{color:#486568!important}[data-theme=light] .admin-sidebar .icon-button{color:#284b4e!important;border-color:#173a3c3d!important}[data-theme=light] .admin-sidebar-footer{border-top-color:#173a3c38!important}[data-theme=light] .card,[data-theme=light] .glass-card,[data-theme=light] .portal-stat-card,[data-theme=light] .portal-progress-summary,[data-theme=light] .portal-lesson-content,[data-theme=light] .portal-empty-state,[data-theme=light] .portal-lesson-card,[data-theme=light] .portal-quick-link{background:#fffdf7;border-color:#173a3c29;box-shadow:0 18px 35px -28px #173a3c6b}[data-theme=light] .portal-next-action{background:linear-gradient(115deg,#fff3d5,#fffdf7);border-color:#96631459;box-shadow:0 18px 35px -28px #173a3c6b}[data-theme=light] .portal-next-action-meta{border-right-color:#9663143d}[data-theme=light] .portal-next-action-link:hover,[data-theme=light] .portal-next-action-button:hover{background:#ffbe461f}[data-theme=light] .card-interactive:hover,[data-theme=light] .portal-lesson-card:hover,[data-theme=light] .portal-quick-link:hover{border-color:var(--accent);background:#fffdf7;box-shadow:0 25px 42px -30px #173a3c6b}[data-theme=light] .input-base{color:var(--text);background:#fffdf7;border-color:#173a3c40}[data-theme=light] .input-base:focus{background:#fffdf7;box-shadow:0 0 0 3px #087f7b26}[data-theme=light] .btn-secondary{color:var(--text);background:#fffdf7;border-color:#173a3c47}[data-theme=light] .btn-secondary:hover{background:#e8f4f0}[data-theme=light] .lesson-admin-action--primary{color:#fffdf7;background:#075a57;border-color:#075a57}[data-theme=light] .lesson-admin-action--secondary{color:#173a3c;background:#fffdf7;border-color:#173a3c57}[data-theme=light] .lesson-status-badge{color:#684707;background:#fff4d7;border-color:#79530b61}[data-theme=light] .lesson-status-badge[data-published=true]{color:#125d33;background:#e9f6ec;border-color:#176e3c5c}[data-theme=light] .dashboard-hero{background:radial-gradient(circle at 88% 12%,#b8f0e533,#0000 16rem),linear-gradient(118deg,#0d4a49,#12383b 58%,#173a3c);border-color:#0d5553;box-shadow:0 24px 42px -33px #173a3cb3}[data-theme=light] .dashboard-hero p{color:#dcece7}[data-theme=light] .dashboard-hero-date{color:#b8f0e5}[data-theme=light] .dashboard-hero-mark{color:#d5f3eb}[data-theme=light] .dashboard-section-label{color:#4d6565}[data-theme=light] .dashboard-section-label:after{background:#173a3c29}[data-theme=light] .login-shell{background:#ece7dc}[data-theme=light] .login-intro{color:#fffdf7;background:radial-gradient(circle at 84% 86%,#64d4c633,#0000 22rem),linear-gradient(145deg,#0a4142,#143639);border-color:#173a3c29}[data-theme=light] .login-intro h1,[data-theme=light] .login-intro .brand-name{color:#fffdf7}[data-theme=light] .login-intro-copy{color:#dcece7}[data-theme=light] .login-panel{background:#f8f4eb}[data-theme=light] .login-form>h1{color:var(--text)}[data-theme=light] .practice-stage{background:radial-gradient(circle at 85% 5%,#087f7b1f,#0000 18rem),#f7f4ec;border-color:#173a3c33;box-shadow:0 28px 55px -38px #173a3c80}[data-theme=light] .practice-stage-head{color:#fffdf7;background:#123c3e;border-bottom-color:#173a3c2b}[data-theme=light] .practice-stage-title h1{color:#fffdf7}[data-theme=light] .practice-stage-title p,[data-theme=light] .practice-stage-head>p{color:#c7e4dc}[data-theme=light] .practice-stage-body{background:0 0}[data-theme=light] .practice-welcome{color:var(--ink)}[data-theme=light] .practice-guide-copy{color:#506b6c}[data-theme=light] .practice-quick-actions button{color:#174f4e;background:#fffdf7;border-color:#0b76723d}[data-theme=light] .practice-quick-actions button:hover{background:#eaf5f1;border-color:#0b7672}[data-theme=light] .practice-message{color:var(--text);background:#fffdf7;border-color:#173a3c29;box-shadow:0 12px 26px -24px #173a3c66}[data-theme=light] .practice-message-row.user .practice-message{color:#fffdf7;background:#0b7672}[data-theme=light] .practice-composer{background:#fffdf7;border-top-color:#173a3c2b}[data-theme=light] .practice-composer input{color:var(--text);background:#f4eee2;border-color:#173a3c38}[data-theme=light] .practice-composer button:last-child{color:#fffdf7;background:#0b7672}[data-theme=light] .portal-progress-track{background:#d9e2dc}[data-theme=light] .portal-data-error{background:#fff4f2}[data-theme=light] .feature-card,[data-theme=light] .kpi-card,[data-theme=light] .data-shell{background:#fffdf7;border-color:#173a3c29;box-shadow:0 18px 35px -28px #173a3c6b}[data-theme=light] .feature-card--primary{background:linear-gradient(135deg,#0d4a49,#173a3c);border-color:#0d5553}[data-theme=light] .feature-card:hover{background:#fffdf7}[data-theme=light] .feature-card--primary:hover{background:linear-gradient(135deg,#0d4a49,#173a3c)}[data-theme=light] .empty-state{background:#fffdf7;border-color:#173a3c47}[data-theme=light] .data-row:hover{background:#087f7b0e}[data-theme=light] .report-kpi,[data-theme=light] .report-chart-card{background:#fffdf7;border-color:#173a3c29;box-shadow:0 18px 35px -28px #173a3c6b}[data-theme=light] .report-range{background:#fffdf7;border-color:#173a3c2e}[data-theme=light] .report-data-point{background:#f4eee2}[data-theme=light] .students-directory-metric--alert{color:#8f2f26!important;border-color:#a83d3375!important}[data-theme=light] .students-directory-error,[data-theme=light] .platform-error,[data-theme=light] .teacher-translator-error{color:#852d25;background:#fff0ed;border-color:#a83d3357}[data-theme=light] .students-directory-error button{color:#5d211c}[data-theme=light] .student-preview-banner{color:#684707;background:#fff4d7;border-color:#79530b59}[data-theme=light] .platform-overview,[data-theme=light] .feature-card--primary,[data-theme=light] .student-360-hero,[data-theme=light] .teacher-tools-hero{background:radial-gradient(circle at 88% 12%,#b8f0e52e,#0000 16rem),linear-gradient(125deg,#0d4a49,#12383b 60%,#173a3c);border-color:#0d5553;box-shadow:0 24px 42px -33px #173a3cb3}[data-theme=light] .platform-overview .brand-kicker,[data-theme=light] .feature-card--primary .brand-kicker,[data-theme=light] .student-360-hero .brand-kicker,[data-theme=light] .teacher-tools-hero .brand-kicker{color:#8fe2d8}[data-theme=light] .platform-overview h2,[data-theme=light] .platform-overview dd,[data-theme=light] .feature-card--primary h2,[data-theme=light] .student-360-hero h1,[data-theme=light] .student-360-next strong,[data-theme=light] .teacher-tools-hero h1{color:#fffdf7}[data-theme=light] .platform-overview p,[data-theme=light] .platform-overview dt,[data-theme=light] .platform-overview span,[data-theme=light] .feature-card--primary p,[data-theme=light] .student-360-hero>div>p:not(.brand-kicker),[data-theme=light] .student-360-next span,[data-theme=light] .student-360-next small,[data-theme=light] .teacher-tools-hero>p:last-child{color:#dcece7}[data-theme=light] .platform-secondary-action,[data-theme=light] .platform-text-action,[data-theme=light] .student-360-meta span,[data-theme=light] .student-360-tools,[data-theme=light] .student-360-next a{color:#b8f0e5}[data-theme=light] .platform-kpis,[data-theme=light] .student-360-next{background:#04131547}[data-theme=light] .platform-workflows,[data-theme=light] .calendar-connections{background:#fffdf7;border-color:#173a3c2e;box-shadow:0 18px 35px -28px #173a3c59}[data-theme=light] .platform-workflow-card,[data-theme=light] .calendar-connection-card,[data-theme=light] .teacher-workday-card{background:#f7f0e4;border-color:#173a3c29}[data-theme=light] .platform-workflow-card>span,[data-theme=light] .calendar-connections-icon,[data-theme=light] .teacher-workday-icon--prepare,[data-theme=light] .platform-workflow-card .platform-text-action,[data-theme=light] .calendar-connection-action{color:#075a57}[data-theme=light] .dashboard-hero,[data-theme=light] .feature-card--primary,[data-theme=light] .students-directory-hero,[data-theme=light] .platform-overview,[data-theme=light] .student-360-hero,[data-theme=light] .teacher-tools-hero,[data-theme=light] .login-intro,[data-theme=light] .practice-stage-head{--stage-text:#fffdf7}[data-theme=light] .dashboard-hero :is(h1,h2,h3,p,span,strong,small,a),[data-theme=light] .feature-card--primary :is(h1,h2,h3,p,span,strong,small,a),[data-theme=light] .students-directory-hero :is(h1,h2,h3,p,span,strong,small,a),[data-theme=light] .platform-overview :is(h1,h2,h3,p,span,strong,small,dt,dd,a),[data-theme=light] .student-360-hero :is(h1,h2,h3,p,span,strong,small,a),[data-theme=light] .teacher-tools-hero :is(h1,h2,h3,p,span,strong,small,a),[data-theme=light] .login-intro :is(h1,h2,h3,p,span,strong,small,a),[data-theme=light] .practice-stage-head :is(h1,h2,h3,p,span,strong,small,a){color:var(--stage-text)}@keyframes enterFadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.enter-fade-up{animation:.3s both enterFadeUp}.skeleton{background:linear-gradient(90deg, var(--surface) 25%, var(--surface2) 50%, var(--surface) 75%);background-size:200% 100%;border-radius:12px;animation:1.5s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.attendance-toolbar{justify-content:space-between;gap:12px;margin-bottom:18px;display:flex}.attendance-toolbar input,.attendance-month-input,.attendance-lesson-row input,.attendance-lesson-row select{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:9px}.attendance-toolbar input{flex:1;min-width:0;height:40px;padding:0 13px}.attendance-view-filter{border:1px solid var(--border);background:var(--surface);border-radius:11px;align-items:center;gap:4px;padding:3px;display:inline-flex}.attendance-view-filter button{min-height:32px;color:var(--text3);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:750;display:inline-flex}.attendance-view-filter button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.attendance-view-filter span{background:color-mix(in srgb, currentColor 14%, transparent);border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:10px;display:inline-grid}.attendance-month-input{height:38px;padding:0 10px}.attendance-schedule-link{min-height:40px;color:var(--text);border:1px solid var(--border);white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:13px;text-decoration:none;display:inline-flex}.attendance-list{gap:10px;display:grid}.attendance-student-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;overflow:hidden}.attendance-student-summary{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:22px;padding:16px 18px;display:grid}.attendance-student-summary:hover{background:var(--surface2)}.attendance-student-summary strong,.attendance-student-summary small{display:block}.attendance-student-summary strong{font-size:14px;font-weight:600}.attendance-student-summary small{color:var(--text3);margin-top:4px;font-size:11px}.attendance-summary-metrics{text-align:right;gap:20px;display:flex}.attendance-summary-metrics b{color:var(--text);margin-top:3px;font-size:14px;display:block}.attendance-details{border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface2) 45%, transparent);gap:8px;padding:12px;display:grid}.attendance-history-toggle{border:1px solid var(--border);background:var(--surface);width:max-content;min-height:36px;color:var(--text2);font:inherit;cursor:pointer;border-radius:9px;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.attendance-history-editor{border:1px solid color-mix(in srgb, var(--accent) 32%, var(--border));background:color-mix(in srgb, var(--accent) 6%, var(--surface));border-radius:12px;gap:11px;padding:14px;display:grid}.attendance-history-editor__head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.attendance-history-editor__head div{gap:3px;display:grid}.attendance-history-editor__head strong{color:var(--text);font-size:13px}.attendance-history-editor__head small{color:var(--text3);font-size:11px}.attendance-history-editor__head button{min-height:32px;color:var(--text3);cursor:pointer;background:0 0;border:0;font-size:11px}.attendance-history-editor__fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.attendance-history-editor__fields label{color:var(--text3);gap:5px;font-size:11px;display:grid}.attendance-history-editor__fields input{border:1px solid var(--border);background:var(--surface);width:100%;min-height:40px;color:var(--text);font:inherit;box-sizing:border-box;border-radius:9px;padding:0 11px}.attendance-history-save{background:var(--accent);width:max-content;min-height:38px;color:var(--on-accent);cursor:pointer;border:0;border-radius:9px;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:800;display:inline-flex}.attendance-history-save:disabled{opacity:.5;cursor:not-allowed}.makeup-balance-editor{border:1px solid color-mix(in srgb, var(--warning) 38%, var(--border));background:color-mix(in srgb, var(--warning) 7%, var(--surface));border-radius:14px;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.2fr);gap:18px;padding:16px;display:grid}.makeup-balance-editor__summary{border-right:1px solid var(--border);align-content:center;gap:4px;padding-right:18px;display:grid}.makeup-balance-editor__summary span{color:var(--text2);letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:800}.makeup-balance-editor__summary strong{color:var(--text);font-family:var(--font-display);font-size:clamp(38px,5vw,54px);font-weight:500;line-height:1}.makeup-balance-editor__summary small{max-width:34ch;color:var(--text3);font-size:11px;line-height:1.45}.makeup-balance-editor__control{align-content:center;gap:7px;display:grid}.makeup-balance-editor__control>label{color:var(--text2);font-size:12px;font-weight:800}.makeup-balance-editor__control>div{grid-template-columns:42px minmax(92px,1fr) 42px;gap:7px;display:grid}.makeup-balance-editor__control input{border:1px solid var(--border);background:var(--surface);width:100%;min-height:44px;color:var(--text);font:800 16px/1 var(--font-interface);text-align:center;box-sizing:border-box;border-radius:9px}.makeup-balance-editor__control>div button{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;border-radius:9px;place-items:center;display:grid}.makeup-balance-editor__control>div button:disabled{opacity:.45;cursor:not-allowed}.makeup-balance-editor__control>small{color:var(--text3);font-size:11px}.makeup-balance-editor__save{background:var(--accent);width:100%;min-height:42px;color:var(--on-accent);font:800 12px/1 var(--font-interface);cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;margin-top:3px;display:inline-flex}.makeup-balance-editor__save:disabled{opacity:.45;cursor:not-allowed}.makeup-balance-editor__error,.makeup-balance-editor__success{margin:0;font-size:11px;line-height:1.4}.makeup-balance-editor__error{color:var(--danger)}.makeup-balance-editor__success{color:var(--success)}.attendance-lesson-row{border:1px solid var(--border);background:var(--surface);border-radius:10px;grid-template-columns:minmax(160px,1fr) 130px minmax(170px,1fr) auto;align-items:center;gap:9px;padding:11px;display:grid}.attendance-lesson-date strong,.attendance-lesson-date span{display:block}.attendance-lesson-date strong{color:var(--text);text-transform:capitalize;font-size:12px}.attendance-lesson-date span{color:var(--text3);margin-top:3px;font-size:11px}.attendance-lesson-row input,.attendance-lesson-row select{min-width:0;height:36px;padding:0 10px;font-size:12px}.attendance-lesson-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.attendance-lesson-row button{background:var(--accent);height:36px;color:var(--on-accent);cursor:pointer;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.attendance-lesson-row button:disabled{cursor:not-allowed;opacity:.45}.attendance-makeup-link{min-height:36px;color:var(--accent2);white-space:nowrap;align-items:center;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.attendance-makeup-link:hover{color:var(--text);text-decoration:underline}.attendance-empty{border:1px dashed var(--border2);color:var(--text3);text-align:center;border-radius:14px;padding:40px 24px}.attendance-empty p{margin:0 0 8px}.attendance-empty a{color:var(--accent)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.students-directory-invite{background:var(--accent);min-height:40px;color:var(--on-accent);border-radius:10px;align-items:center;padding:0 16px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.students-directory-hero{background:linear-gradient(125deg,#123e40,#0b2529 65%,#102023);border:1px solid #b8f0e540;border-radius:20px;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:20px;padding:clamp(20px,3vw,30px);display:flex}.students-directory-hero .brand-kicker{color:#8fe2d8}.students-directory-hero h2{color:#fffaf0;letter-spacing:-.06em;max-width:17ch;margin-top:8px;font:400 clamp(28px,3vw,42px)/.95 Fraunces,Georgia,serif}.students-directory-hero>div>p:last-child{color:#d7e8e4;max-width:58ch;margin-top:12px;font-size:13px;line-height:1.55}.students-directory-metrics{gap:8px;min-width:172px;display:grid}.students-directory-metrics span{color:#d7e8e4;white-space:nowrap;background:#ffffff0b;border:1px solid #b8f0e529;border-radius:10px;align-items:center;gap:7px;padding:10px 12px;font-size:12px;display:flex}.students-directory-metrics b{color:#fffaf0;font:400 20px/1 Fraunces,Georgia,serif}.students-directory-metric--alert{color:#ffc7c7!important;border-color:#e05a5a80!important}.students-directory-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.students-directory-search{border:1px solid var(--border);background:var(--surface);min-width:min(100%,335px);color:var(--text3);border-radius:10px;align-items:center;gap:9px;padding:0 12px;display:flex}.students-directory-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #64d4c624}.students-directory-search input{width:100%;height:42px;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:13px}.students-directory-filters{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.students-directory-filters button{border:1px solid var(--border);min-height:34px;color:var(--text3);cursor:pointer;background:0 0;border-radius:999px;padding:5px 10px;font-size:11px}.students-directory-filters button[aria-pressed=true]{border-color:var(--accent);color:var(--accent2);background:#64d4c624}.students-directory-sort{color:var(--text3);align-items:center;gap:8px;margin:-4px 0 18px;font-size:12px;display:inline-flex}.students-directory-sort select{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--text);font:inherit;border-radius:9px;padding:0 9px}.students-directory-error{color:#ffc7c7;background:#e05a5a14;border:1px solid #e05a5a73;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;padding:12px 14px;font-size:13px;display:flex}.students-directory-error button{color:var(--text);cursor:pointer;background:0 0;border:0;text-decoration:underline}.students-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.student-directory-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);border-radius:18px;flex-direction:column;min-height:0;padding:18px;transition:transform .18s,border-color .18s,background .18s;display:flex}.student-directory-card:hover{background:var(--surface2);border-color:#b8f0e580;transform:translateY(-3px)}.student-directory-card-top{align-items:center;gap:11px;display:flex}.student-directory-avatar{width:40px;height:40px;color:var(--accent2);background:#64d4c61f;border:1px solid #b8f0e54d;border-radius:50%;flex:none;place-items:center;font:600 11px/1 DM Mono,monospace;display:grid}.student-directory-card h3{color:var(--text);letter-spacing:-.04em;margin:0;font:400 20px/1 Fraunces,Georgia,serif}.student-directory-card-top p{max-width:23ch;color:var(--text3);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;overflow:hidden}.student-directory-details{grid-template-columns:1fr 1fr;gap:8px;margin:20px 0 14px;display:grid}.student-directory-details div{background:#ffffff09;border-radius:10px;padding:9px}.student-directory-details dt,.student-directory-owner>span{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;font:9px/1.2 DM Mono,monospace}.student-directory-details dd{color:var(--text2);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:12px;overflow:hidden}.student-directory-card-actions{gap:9px;margin-top:16px;display:grid}.student-directory-controls{border:1px solid color-mix(in srgb, var(--border) 88%, transparent);background:color-mix(in srgb, var(--surface2) 75%, transparent);border-radius:12px;gap:11px;padding:12px;display:grid}.student-directory-owner{gap:6px;display:grid}.student-directory-owner select{border:1px solid var(--border);background:var(--surface2);width:100%;min-height:36px;color:var(--text);border-radius:8px;padding:0 9px;font-size:12px}.student-directory-owner select:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.student-directory-status{border:1px solid var(--border);width:fit-content;color:var(--text2);background:var(--surface2);border-radius:999px;align-items:center;gap:6px;margin-top:12px;padding:5px 9px;font-size:11px;font-weight:700;display:inline-flex}.student-directory-status--paused{color:var(--yellow);background:#ff9f0a17;border-color:#ff9f0a57}.student-directory-status--inactive{color:var(--danger);background:#ff453a17;border-color:#ff453a57}.student-directory-open{min-height:38px;color:var(--accent2);border:1px solid #64d4c657;border-radius:9px;justify-content:center;align-items:center;gap:6px;margin-top:10px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.student-directory-open:hover{background:#64d4c61a}.student-directory-preview{min-height:34px;color:var(--text3);justify-content:center;align-items:center;gap:6px;margin-top:10px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.student-directory-preview:hover{color:var(--accent2)}.student-directory-makeup-alert{color:var(--yellow);background:#ff9f0a1a;border:1px solid #ff9f0a73;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;column-gap:7px;margin-top:10px;padding:9px 10px;font-size:11px;font-weight:800;display:grid}.student-directory-makeup-alert small{color:var(--text2);grid-column:2;margin-top:3px;font-weight:500}.student-directory-makeup-alert--critical{color:var(--red);background:#ff453a1a;border-color:#ff453a7a}.portal-announcements{margin:0 0 34px}.portal-announcements-heading{justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px;display:flex}.portal-announcements-heading h2{color:var(--text);letter-spacing:-.04em;margin:5px 0 0;font:400 25px/1 Fraunces,Georgia,serif}.portal-announcements-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.portal-announcements-list article,.portal-announcements-empty{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:16px}.portal-announcements-list time{color:var(--text3);font-size:11px}.portal-announcements-list h3{color:var(--text);margin:7px 0;font-size:15px}.portal-announcements-list p,.portal-announcements-empty{color:var(--text2);font-size:13px;line-height:1.5}.portal-announcements-list a{color:var(--accent2);gap:5px;margin-top:10px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.portal-announcements-list article:first-child{border-color:color-mix(in srgb, var(--accent) 54%, var(--border));background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, var(--surface)), var(--surface));box-shadow:0 14px 32px #0000001f}.portal-announcements-list article:first-child:before{content:"Em destaque";background:var(--accent);color:var(--on-accent);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin-bottom:9px;padding:3px 8px;font:700 9px/1.4 DM Mono,monospace;display:inline-flex}.notification-bell-trigger{width:36px;height:36px;color:var(--text2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;transition:all .15s;display:grid;position:relative}.notification-bell-trigger:hover,.notification-bell-trigger:focus-visible{border-color:var(--border);background:var(--surface2);color:var(--text)}.notification-bell-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notification-bell-dot{border:2px solid var(--surface);background:var(--danger);border-radius:50%;width:8px;height:8px;position:absolute;top:5px;right:5px}.notification-panel{z-index:1000;border:1px solid var(--border);background:var(--surface);border-radius:16px;width:min(370px,100vw - 24px);max-height:min(720px,100dvh - 84px);position:fixed;bottom:60px;overflow:hidden;box-shadow:0 24px 70px #00000057}.notification-panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:0 16px;display:flex}.notification-panel-header>div{align-items:center;gap:7px;display:flex}.notification-panel-header strong{color:var(--text);font-size:13px}.notification-panel-header>div:first-child span{background:color-mix(in srgb, var(--danger) 15%, transparent);color:var(--danger);border-radius:999px;padding:2px 7px;font-size:10px;font-weight:800}.notification-panel-header button{width:34px;height:34px;color:var(--text3);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;display:grid}.notification-panel-header button:hover,.notification-panel-header button:focus-visible{background:var(--surface2);color:var(--text)}.notification-feedback{border:1px solid;border-radius:10px;margin:12px 12px 0;padding:12px;font-size:12px;line-height:1.5}.notification-feedback.is-success{border-color:color-mix(in srgb, var(--success) 38%, var(--border));background:color-mix(in srgb, var(--success) 9%, var(--surface));color:var(--text)}.notification-feedback.is-error{border-color:color-mix(in srgb, var(--danger) 38%, var(--border));background:color-mix(in srgb, var(--danger) 9%, var(--surface));color:var(--danger)}.notification-feedback p{margin:0}.notification-feedback button{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:6px;margin-top:9px;padding:0 10px;font-weight:700;display:inline-flex}.notification-broadcast-form{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--accent) 7%, var(--surface));gap:7px;padding:14px 16px;display:grid}.notification-broadcast-form p{color:var(--accent2);margin:0 0 2px;font-size:12px;font-weight:800}.notification-broadcast-form label{color:var(--text3);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:700}.notification-broadcast-form input,.notification-broadcast-form select,.notification-broadcast-form textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--surface2);width:100%;color:var(--text);font:inherit;border-radius:8px}.notification-broadcast-form input,.notification-broadcast-form select{height:36px;padding:0 10px}.notification-broadcast-form textarea{resize:vertical;min-height:72px;padding:9px 10px}.notification-broadcast-form button{background:var(--accent);min-height:38px;color:var(--on-accent);cursor:pointer;border:0;border-radius:8px;font-weight:800}.notification-broadcast-form button:disabled{opacity:.55;cursor:not-allowed}.notification-list{max-height:390px;overflow-y:auto}.notification-list-empty{color:var(--text3);text-align:center;margin:0;padding:26px 18px;font-size:13px}.notification-list article{border-bottom:1px solid var(--border);grid-template-columns:34px minmax(0,1fr) 6px;gap:10px;padding:13px 16px;display:grid}.notification-list article.is-unread{background:color-mix(in srgb, var(--accent) 4%, var(--surface))}.notification-list article>span{border-radius:9px;place-items:center;width:34px;height:34px;font-size:14px;display:grid}.notification-list article>i{border-radius:50%;width:6px;height:6px;margin-top:6px}.notification-item-heading{justify-content:space-between;align-items:start;gap:8px;display:flex}.notification-item-heading h3{color:var(--text);margin:0;font-size:12px;line-height:1.4}.notification-list article.is-read h3{color:var(--text2);font-weight:500}.notification-item-heading time{color:var(--text4);flex:none;font-size:10px}.notification-list article p{color:var(--text3);margin:4px 0 0;font-size:11px;line-height:1.45}.notification-list article a{color:var(--accent2);margin-top:7px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.notification-approval-actions{grid-template-columns:1fr 1.25fr;gap:6px;margin-top:10px;display:grid}.notification-approval-actions button{border:1px solid var(--border);min-height:34px;color:var(--text2);cursor:pointer;background:0 0;border-radius:8px;font-size:11px;font-weight:700}.notification-approval-actions button:last-child{border-color:color-mix(in srgb, var(--success) 45%, var(--border));background:color-mix(in srgb, var(--success) 10%, transparent);color:var(--success)}.notification-approval-actions button:disabled{opacity:.5;cursor:wait}@media (max-width:720px){.notification-panel{bottom:70px;right:12px;left:auto!important}}.users-access-table{border:1px solid var(--border);background:var(--surface);border-radius:14px;overflow:hidden}.users-access-table-head,.users-access-table article{grid-template-columns:minmax(210px,1fr) minmax(190px,.8fr) 170px 210px;align-items:center;gap:16px;display:grid}.users-access-table-head{border-bottom:1px solid var(--border);color:var(--text3);letter-spacing:.07em;text-transform:uppercase;padding:11px 18px;font:700 10px/1.4 DM Mono,monospace}.users-access-table article{border-bottom:1px solid var(--border);min-height:70px;padding:10px 18px}.users-access-table article:last-child{border-bottom:0}.users-access-table article>span:not(.users-access-role){min-width:0;color:var(--text3);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.users-access-identity p{color:var(--text);flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:13px;font-weight:700;display:flex}.users-access-identity small{background:var(--surface2);color:var(--text3);text-transform:uppercase;border-radius:999px;align-items:center;gap:4px;padding:2px 6px;font-size:9px;font-weight:800;display:inline-flex}.users-access-identity small.is-owner{background:color-mix(in srgb, var(--warning) 12%, var(--surface));color:var(--warning)}.users-access-identity small.is-pending{background:color-mix(in srgb, var(--warning) 10%, var(--surface));color:var(--warning)}.users-access-identity time{color:var(--text4);margin-top:4px;font-size:10px;display:block}.users-access-role{border-radius:999px;align-items:center;width:fit-content;padding:4px 8px;font-size:10px;font-weight:800;display:inline-flex}.users-access-actions{justify-content:flex-end;gap:6px;display:flex}.users-access-actions button{border:1px solid var(--border);min-width:34px;min-height:34px;color:var(--text3);cursor:pointer;background:0 0;border-radius:8px;place-items:center;display:inline-grid}.users-access-actions button:hover:not(:disabled),.users-access-actions button:focus-visible{border-color:var(--accent);color:var(--text)}.users-access-actions button:disabled{opacity:.34;cursor:not-allowed}.users-access-actions button.is-danger{color:var(--danger);padding:0 10px;display:inline-flex}.users-access-send-wrap{display:inline-flex;position:relative}.users-access-actions .users-access-send-button{color:var(--text2);white-space:nowrap;gap:6px;padding:0 10px;display:inline-flex}.users-access-send-feedback{z-index:20;border:1px solid color-mix(in srgb, var(--success) 35%, var(--border));background:var(--surface);width:min(270px,100vw - 48px);color:var(--success);white-space:normal;border-radius:9px;padding:9px 11px;font-size:11px;line-height:1.45;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 12px 34px #0003}.users-access-send-feedback.is-error{border-color:color-mix(in srgb, var(--danger) 42%, var(--border));color:var(--danger)}.users-access-protected{align-items:center;gap:5px;color:var(--text3)!important;font-size:10px!important;display:inline-flex!important}.users-access-empty{color:var(--text3);text-align:center;margin:0;padding:28px;font-size:13px}.users-edit-backdrop{z-index:1100;background:#000000b3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.users-edit-dialog{border:1px solid var(--border);background:var(--surface);border-radius:16px;width:min(450px,100%);overflow:hidden;box-shadow:0 28px 90px #0006}.users-edit-dialog>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;display:flex}.users-edit-dialog>header h2{color:var(--text);margin:5px 0 0;font:400 22px/1 Fraunces,Georgia,serif}.users-edit-dialog>header button{border:1px solid var(--border);width:36px;height:36px;color:var(--text2);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.users-edit-dialog>.form-error{margin:14px 22px 0}.users-edit-fields{gap:13px;padding:20px 22px;display:grid}.users-edit-fields input:focus-visible,.users-edit-fields select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.users-edit-finance{grid-template-columns:1fr 1fr;gap:10px;display:grid}.users-edit-dialog>footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:16px 22px;display:flex}.users-edit-dialog>footer button{border:1px solid var(--border);min-height:40px;color:var(--text2);cursor:pointer;background:0 0;border-radius:8px;padding:0 15px;font-weight:700}.users-edit-dialog>footer button:last-child{background:var(--accent);color:var(--on-accent);border-color:#0000}@media (max-width:900px){.users-access-table-head{display:none}.users-access-table article{grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:15px}.users-access-table article>span:not(.users-access-role),.users-access-role{grid-column:1}.users-access-actions{grid-area:1/2/span 3;align-self:center}}@media (max-width:520px){.users-edit-finance{grid-template-columns:1fr}.users-edit-dialog>footer{grid-template-columns:1fr 1.3fr;display:grid}}.guided-onboarding{background:radial-gradient(circle at 80% 12%, color-mix(in srgb, var(--accent) 13%, transparent), transparent 34%), var(--bg);place-items:center;min-height:100dvh;padding:24px;display:grid}.guided-onboarding-card{border:1px solid var(--border);background:var(--surface);border-radius:24px;width:min(720px,100%);overflow:hidden;box-shadow:0 30px 100px #00000047}.guided-onboarding-card>header{justify-content:space-between;align-items:center;gap:16px;padding:22px 26px 18px;display:flex}.guided-onboarding-card>header strong{color:var(--text);margin-top:6px;font:400 20px/1 Fraunces,Georgia,serif;display:block}.guided-onboarding-card>header>span{color:var(--text3);text-transform:uppercase;font:700 10px/1 DM Mono,monospace}.guided-onboarding-progress{grid-template-columns:repeat(4,1fr);gap:5px;padding:0 26px;display:grid}.guided-onboarding-progress i{background:var(--border);border-radius:999px;height:3px;transition:background .2s}.guided-onboarding-progress i.is-active{background:var(--accent)}.guided-onboarding-content{min-height:390px;padding:48px 64px 38px}.guided-onboarding-icon{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--surface));width:62px;height:62px;color:var(--accent2);border-radius:18px;place-items:center;margin-bottom:26px;display:grid;position:relative}.guided-onboarding-icon svg+svg{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:7px;position:absolute;bottom:-7px;right:-9px}.guided-onboarding-content>p:first-of-type{color:var(--accent2);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font:700 10px/1 DM Mono,monospace}.guided-onboarding-content h1{max-width:540px;color:var(--text);letter-spacing:-.045em;margin:0;font:400 clamp(32px,5vw,50px)/.98 Fraunces,Georgia,serif}.guided-onboarding-content h1+p{max-width:570px;color:var(--text2);margin:20px 0 0;font-size:15px;line-height:1.65}.guided-onboarding-content ul{gap:10px;margin:27px 0 0;padding:0;list-style:none;display:grid}.guided-onboarding-content li{color:var(--text2);align-items:center;gap:10px;font-size:13px;display:flex}.guided-onboarding-content li:before{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 12%, transparent);border-radius:50%}.guided-onboarding-card>.form-error{margin:0 26px 16px}.guided-onboarding-card>footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:18px 26px 22px;display:flex}.guided-onboarding-card>footer button{border:1px solid var(--border);min-height:44px;color:var(--text2);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 18px;font-weight:800;display:inline-flex}.guided-onboarding-card>footer button:last-child{background:var(--accent);color:var(--on-accent);border-color:#0000}.guided-onboarding-card>footer button:disabled{opacity:.4;cursor:not-allowed}.guided-onboarding-card>footer button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:600px){.guided-onboarding{padding:12px}.guided-onboarding-card{border-radius:18px}.guided-onboarding-card>header{padding:18px}.guided-onboarding-progress{padding:0 18px}.guided-onboarding-content{min-height:430px;padding:34px 24px 28px}.guided-onboarding-card>footer{padding:15px 18px 18px}.guided-onboarding-card>footer button{padding:0 13px}}.student-notebook-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);border-radius:16px;margin-bottom:12px;overflow:hidden}.student-notebook-card-head{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:17px 20px;display:flex}.student-notebook-card-head:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.student-notebook-card-content{border-top:1px solid var(--border);padding:0 20px 22px}.student-notebook-present{text-decoration:none}.notebook-rich-text{color:var(--text2);font-size:var(--font-base);overflow-wrap:anywhere;line-height:1.7}.notebook-rich-text>:first-child{margin-top:0}.notebook-rich-text>:last-child{margin-bottom:0}.notebook-rich-text p,.notebook-rich-text div{margin:0 0 10px}.legacy-lesson-badge{border:1px solid color-mix(in srgb, var(--accent) 34%, transparent);background:color-mix(in srgb, var(--accent) 11%, transparent);color:var(--accent2);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;line-height:1;display:inline-flex}.legacy-lesson-protected{border:1px solid var(--border);min-height:28px;color:var(--text3);border-radius:7px;align-items:center;padding:0 9px;font-size:11px;display:inline-flex}.legacy-lesson-original{border:1px solid var(--border);background:color-mix(in srgb, var(--surface2) 72%, transparent);border-radius:12px;margin-top:18px;overflow:hidden}.legacy-lesson-original summary{color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;list-style:none;display:flex}.legacy-lesson-original summary::-webkit-details-marker{display:none}.legacy-lesson-original summary>span{align-items:center;gap:7px;font-size:12px;font-weight:700;display:inline-flex}.legacy-lesson-original summary small{color:var(--text3);font-size:10px;font-weight:500}.legacy-lesson-original[open] summary{border-bottom:1px solid var(--border)}.legacy-lesson-original .legacy-lesson-document{padding:18px}.legacy-lesson-context{border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--surface));color:var(--text2);border-radius:8px;margin-bottom:18px;padding:12px 14px;font-size:13px;line-height:1.55}.legacy-lesson-document{color:var(--text2);font-size:var(--font-base);overflow-wrap:anywhere;line-height:1.7}.legacy-lesson-document h2,.legacy-lesson-document h3,.legacy-lesson-document h4{color:var(--text);font-family:Fraunces,Georgia,serif;font-weight:400;line-height:1.1}.legacy-lesson-document h2{margin:30px 0 14px;font-size:clamp(27px,3vw,38px)}.legacy-lesson-document h3{margin:24px 0 12px;font-size:clamp(22px,2.4vw,30px)}.legacy-lesson-document h4{margin:20px 0 10px;font-size:19px}.legacy-lesson-document p{margin:0 0 13px}.legacy-lesson-document hr{border:0;border-top:1px solid var(--border);margin:26px 0}.legacy-lesson-list-item{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:4px;display:grid}.legacy-lesson-list-item>span{color:var(--accent2);font-weight:800}.legacy-lesson-list-item--numbered>span{color:var(--text3)}.legacy-lesson-document blockquote{border-left:3px solid var(--accent);color:var(--text);margin:18px 0;padding:4px 0 4px 18px;font:400 clamp(19px,2vw,25px)/1.45 Fraunces,Georgia,serif}.legacy-lesson-callout{border:1px solid var(--border);background:var(--surface2);border-radius:12px;grid-template-columns:26px minmax(0,1fr);gap:10px;margin:18px 0;padding:16px;display:grid}.legacy-lesson-callout>span{color:var(--accent2)}.legacy-lesson-document figure{margin:22px 0}.legacy-lesson-document img,.legacy-lesson-document video{object-fit:contain;border:1px solid var(--border);background:var(--surface2);border-radius:12px;width:100%;max-height:620px;display:block}.legacy-lesson-document figcaption{color:var(--text3);text-align:center;margin-top:8px;font-size:11px}.legacy-lesson-media-link,.legacy-lesson-link{width:fit-content;color:var(--accent2);align-items:center;gap:9px;margin:14px 0;font-weight:700;text-decoration:none;display:flex}.legacy-lesson-table-wrap{border:1px solid var(--border);border-radius:10px;width:100%;margin:18px 0;overflow-x:auto}.legacy-lesson-table-wrap table{border-collapse:collapse;width:100%;min-width:480px}.legacy-lesson-table-wrap th,.legacy-lesson-table-wrap td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--text2);text-align:left;vertical-align:top;padding:11px 13px;font-size:12px}.legacy-lesson-table-wrap th{background:var(--surface2);color:var(--text);font-weight:800}.legacy-lesson-warning{border:1px solid color-mix(in srgb, var(--warning) 38%, transparent);background:color-mix(in srgb, var(--warning) 8%, transparent);color:var(--text2);border-radius:10px;margin:14px 0;padding:13px 15px;font-size:13px;line-height:1.55}.legacy-lesson-warning strong{color:var(--warning)}.legacy-lesson-empty{color:var(--text3);font-size:13px}.legacy-archive{width:min(1040px,100%);margin:0 auto}.legacy-archive-hero{background:linear-gradient(125deg,#124c4c,#0d3134 62%,#15292c);border:1px solid #b8f0e53d;border-radius:22px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:18px;padding:clamp(24px,4vw,38px);display:grid;position:relative;overflow:hidden;box-shadow:0 22px 60px #0000002e}.legacy-archive-hero:after{content:"";pointer-events:none;border:1px solid #b8f0e529;border-radius:50%;width:280px;height:280px;position:absolute;top:-170px;right:-120px;box-shadow:0 0 0 38px #b8f0e506,0 0 0 76px #b8f0e504}.legacy-archive-icon{color:#b8f0e5;background:#b8f0e51a;border:1px solid #b8f0e547;border-radius:15px;place-items:center;width:52px;height:52px;display:grid}.legacy-archive-hero h1{color:#f8fbfa;letter-spacing:-.06em;margin:7px 0 9px;font:400 clamp(36px,5vw,58px)/.92 Fraunces,Georgia,serif}.legacy-archive-hero>div:nth-child(2)>p:last-child{color:#b9cdca;max-width:62ch;font-size:13px;line-height:1.55}.legacy-archive-hero>strong{z-index:1;color:#f8fbfa;text-align:right;min-width:116px;font:400 36px/1 Fraunces,Georgia,serif;position:relative}.legacy-archive-hero>strong span{color:#a8c0bd;letter-spacing:.08em;text-transform:uppercase;margin-top:6px;font:700 9px/1.2 DM Mono,monospace;display:block}.legacy-archive-year{margin-top:30px}.legacy-archive-year-heading{justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:12px;padding:0 3px;display:flex}.legacy-archive-year-heading h2{color:var(--text);letter-spacing:-.045em;font:400 28px/1 Fraunces,Georgia,serif}.legacy-archive-year-heading span{color:var(--text3);font-size:11px}.legacy-archive-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.legacy-archive-card{border:1px solid var(--border);background:var(--surface);min-height:142px;color:inherit;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-content:start;gap:12px;padding:18px;text-decoration:none;transition:transform .15s,border-color .15s,background .15s;display:grid}.legacy-archive-card:hover{border-color:color-mix(in srgb, var(--accent) 50%, var(--border));background:color-mix(in srgb, var(--surface) 94%, var(--accent) 6%);transform:translateY(-2px)}.legacy-archive-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.legacy-archive-date{color:var(--text3);grid-column:1/-1;align-items:center;gap:6px;font-size:11px;display:inline-flex}.legacy-archive-card h3{color:var(--text);letter-spacing:-.035em;align-self:end;margin:15px 0 0;font:400 clamp(21px,2.2vw,28px)/1.04 Fraunces,Georgia,serif}.legacy-archive-action{color:var(--accent2);white-space:nowrap;align-self:end;align-items:center;gap:5px;font-size:11px;font-weight:800;display:inline-flex}.legacy-archive-empty,.legacy-archive-state{border:1px solid var(--border);background:var(--surface);color:var(--text3);text-align:center;border-radius:16px;margin-top:24px;padding:30px}.legacy-archive-empty svg{color:var(--accent)}.legacy-archive-empty h2{color:var(--text);margin:12px 0 6px;font:400 25px/1 Fraunces,Georgia,serif}.legacy-archive-empty p,.legacy-archive-state{font-size:12px;line-height:1.55}.legacy-archive-state--error{border-color:color-mix(in srgb, var(--danger) 38%, var(--border));color:var(--danger)}.notebook-lesson-page{width:min(1080px,100%);margin:0 auto}.notebook-lesson-state{min-height:56vh;color:var(--text3);text-align:center;place-items:center;font-size:14px;display:grid}.notebook-lesson-back{align-items:center;min-height:36px;margin-bottom:8px;display:flex}.notebook-lesson-header{background:linear-gradient(125deg,#123e40b8,#0b2529ad);border:1px solid #b8f0e533;border-radius:18px;margin-bottom:28px;padding:clamp(20px,4vw,32px)}.notebook-lesson-layout{grid-template-columns:218px minmax(0,1fr);align-items:start;gap:18px;display:grid}.notebook-lesson-index{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);border-radius:14px;gap:2px;padding:8px;display:grid;position:sticky;top:24px}.notebook-lesson-index button:focus-visible,.notebook-lesson-navigation button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notebook-lesson-content{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);border-radius:18px;min-width:0;min-height:440px;padding:clamp(22px,4vw,34px)}.notebook-lesson-navigation{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:40px;padding-top:20px;display:flex}.notebook-lesson-index-item{width:100%;min-height:42px;color:var(--text3);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;font-size:13px;transition:color .15s,border-color .15s,background .15s;display:grid}.notebook-lesson-index-item:hover{border-color:var(--border);color:var(--text)}.notebook-lesson-index-item[aria-current=step]{border-color:color-mix(in srgb, var(--accent) 42%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--surface2));color:var(--text);font-weight:700}.notebook-lesson-index-group{border:1px solid var(--border);background:var(--surface2);border-radius:11px;gap:3px;margin:6px 0;padding:6px;display:grid}.notebook-lesson-index-group>div{min-height:32px;color:var(--text);grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 6px;font-size:12px;display:grid}.notebook-lesson-index-group>div small{background:color-mix(in srgb, var(--accent) 12%, transparent);min-width:21px;height:21px;color:var(--accent);border-radius:999px;place-items:center;font-size:9px;display:grid}.notebook-lesson-index-item.is-nested{background:color-mix(in srgb, var(--surface) 86%, transparent);min-height:38px;padding-block:6px;font-size:12px}.student-content-entry{background:linear-gradient(135deg,#123e40b8,#0b2529ad);border:1px solid #b8f0e538;border-radius:16px;justify-content:space-between;align-items:end;gap:20px;margin-top:20px;padding:22px;display:flex}.student-content-entry h2,.student-content-page-head h1{color:var(--text);letter-spacing:-.05em;margin-top:7px;font:400 28px/.98 Fraunces,Georgia,serif}.student-content-entry p:last-child,.student-content-page-head>p{max-width:62ch;color:var(--text2);margin-top:10px;font-size:13px;line-height:1.55}.student-content-entry a{white-space:nowrap;background:var(--accent);min-height:42px;color:var(--on-accent);border-radius:10px;align-items:center;padding:0 13px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.student-content-page-head{margin:0 0 24px}.student-content-page-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.student-content-page-actions a{border:1px solid var(--border);min-height:36px;color:var(--text2);border-radius:9px;align-items:center;padding:0 11px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.student-content-page-actions a:hover{border-color:var(--accent);color:var(--accent2);background:#64d4c614}[data-theme=light] .student-content-entry{background:linear-gradient(135deg,#155457,#0b3034);border-color:#b8f0e557}[data-theme=light] .student-content-entry :is(h2,p:last-child){color:#fffdf7}[data-theme=light] .student-content-entry a{color:#082224;background:#b8f0e5}.student-preview{background:var(--bg);min-height:100vh;display:flex}.student-preview-sidebar{color:#f5fbf9;background:#0a2023;border-right:1px solid #b8f0e52e;flex-direction:column;width:248px;padding:28px 16px;display:flex;position:fixed;inset:0 auto 0 0}.student-preview-sidebar .brand-kicker{color:#74ddd0}.student-preview-sidebar .brand-name{color:#f7f3ea}.student-preview-sidebar .brand-subtitle{color:#a9bfbc}.student-preview-sidebar nav{gap:5px;margin-top:48px;display:grid}.student-preview-sidebar nav button{color:#b9ccca;text-align:left;min-height:46px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:11px;padding:0 11px;font-size:13px;font-weight:500;transition:color .15s,border-color .15s,background .15s;display:flex}.student-preview-sidebar nav button:hover{color:#f5fbf9;background:#b8f0e514;border-color:#b8f0e52e}.student-preview-sidebar nav button[aria-pressed=true]{color:#dffff8;background:#64d4c626;border-color:#b8f0e557}.student-preview-sidebar nav button:focus-visible{outline-offset:2px;outline:2px solid #b8f0e5}.student-preview-sidebar-footer{color:#f5fbf9;border-top:1px solid #b8f0e524;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding:14px 9px 0;font-size:13px;font-weight:700;display:flex}.student-preview-sidebar-footer small{color:#a9bfbc;font-weight:400}.student-preview-sidebar-footer button{color:#b9ccca;background:0 0;border:1px solid #b8f0e533;border-radius:11px;flex:none;place-items:center;width:40px;height:40px;display:grid}.student-preview-sidebar-footer button:hover{color:#f5fbf9;background:#b8f0e514}.student-preview-main{width:min(1200px,100%);margin-left:248px;padding:28px 48px 64px;transition:margin-left .18s}.student-preview-sidebar{transition:width .18s,padding .18s}.student-preview.is-sidebar-collapsed .student-preview-sidebar{width:78px;padding-inline:8px}.student-preview.is-sidebar-collapsed .student-preview-sidebar>div:first-child,.student-preview.is-sidebar-collapsed .student-preview-sidebar nav button>span,.student-preview.is-sidebar-collapsed .student-preview-sidebar-footer p{display:none}.student-preview.is-sidebar-collapsed .student-preview-sidebar nav button,.student-preview.is-sidebar-collapsed .student-preview-sidebar-footer{justify-content:center;padding-inline:0}.student-preview.is-sidebar-collapsed .student-preview-main{margin-left:78px}.student-preview-banner{color:#ffd59a;background:#ff9f0a17;border:1px solid #ff9f0a59;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:10px 12px;font-size:12px;display:flex}.student-preview-banner span{flex:1}.student-preview-banner a{color:inherit;align-items:center;gap:5px;font-weight:700;text-decoration:none;display:inline-flex}.student-preview-lesson-shell{background:var(--bg);min-height:100vh;padding:clamp(22px,5vw,56px)}.student-preview-lesson-shell .portal-lesson-detail{width:min(980px,100%);margin:0 auto}.student-preview-readonly-action{border:1px solid color-mix(in srgb, var(--warning) 38%, var(--border));background:color-mix(in srgb, var(--warning) 8%, var(--surface));color:var(--text2);border-radius:12px;margin-top:24px;padding:14px 16px;font-size:13px;line-height:1.5}.student-preview-empty{border:1px dashed var(--border2);min-height:210px;color:var(--text3);text-align:center;border-radius:16px;place-content:center;justify-items:center;gap:10px;display:grid}.student-preview-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.student-preview-platform-grid article{border:1px solid var(--border);background:var(--surface);border-radius:16px;align-items:center;gap:14px;min-height:100px;padding:18px;display:flex}.student-preview-platform-grid article>span{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent) 9%, var(--surface));width:40px;height:40px;color:var(--accent);border-radius:12px;flex:none;place-items:center;display:grid}.student-preview-platform-grid h2{color:var(--text);letter-spacing:-.03em;font:400 20px/1.05 Fraunces,Georgia,serif}.student-preview-platform-grid p{color:var(--text3);margin-top:7px;font-size:12px}.student-preview-notes{gap:12px;display:grid}.student-preview-notes article{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:18px}.student-preview-notes article>p{color:var(--text3);font-size:11px}.student-preview-notes h2{color:var(--text);margin:6px 0 12px;font:400 24px/1 Fraunces,Georgia,serif}.student-preview-notes article div{flex-wrap:wrap;gap:6px;display:flex}.student-preview-notes article div span{color:var(--accent2);background:#64d4c61f;border-radius:999px;padding:4px 8px;font-size:11px}.student-preview-notes aside{border-left:3px solid var(--yellow);color:var(--text2);background:#ff9f0a12;border-radius:8px;margin-top:14px;padding:12px;font-size:13px;line-height:1.5}.student-preview-notes aside strong{color:var(--yellow);text-transform:uppercase;font-size:11px}.presentation-shell{--presentation-chrome:#07191c;--presentation-chrome-surface:#0d292d;--presentation-chrome-hover:#14383c;--presentation-chrome-border:#b8f0e52e;--presentation-chrome-text:#f7f3ea;--presentation-chrome-muted:#adc0bd;--presentation-chrome-accent:#b8f0e5;background:radial-gradient(circle at 76% 8%, #64d4c61f, transparent 29rem), linear-gradient(145deg, #0b2529, var(--presentation-chrome) 58%)!important}.presentation-header{border-bottom:1px solid var(--presentation-chrome-border);min-height:96px;color:var(--presentation-chrome-text);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);flex:none;justify-content:space-between;align-items:center;gap:24px;padding:16px 24px;display:flex;background:#07191ce8!important}.presentation-header-copy{min-width:0}.presentation-header .brand-kicker{color:#74ddd0;margin-bottom:7px}.presentation-header-title{color:var(--presentation-chrome-text);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;font:400 19px/1.1 Fraunces,Georgia,serif;overflow:hidden}.presentation-header-student{color:var(--presentation-chrome-muted);margin-top:5px;font-size:12px}.presentation-header-actions{flex:none;align-items:center;gap:8px;display:flex}.presentation-position{border:1px solid var(--presentation-chrome-border);min-height:38px;color:var(--presentation-chrome-muted);border-radius:999px;align-items:center;gap:5px;margin-right:2px;padding:0 12px;font:12px/1 DM Mono,monospace;display:inline-flex}.presentation-position strong{color:var(--presentation-chrome-text);font-size:14px}.presentation-position span:first-child{opacity:.68;letter-spacing:.08em;text-transform:uppercase;margin-right:2px;font-size:9px}.presentation-position span:not(:first-child){opacity:.38}.presentation-header-help{color:var(--presentation-chrome-muted);white-space:nowrap;margin-right:4px;font-size:11px}.presentation-header-action{border:1px solid var(--presentation-chrome-border);min-height:42px;color:var(--presentation-chrome-text);background:#ffffff06;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-size:12px;font-weight:700;transition:transform .15s,border-color .15s,background .15s,color .15s;display:inline-flex}.presentation-header-action:hover{background:#b8f0e514;border-color:#b8f0e566;transform:translateY(-1px)}.presentation-header-action--accent{color:var(--presentation-chrome-accent);background:#64d4c621;border-color:#b8f0e57a}.presentation-header-action--spotlight{color:#ffe29a;background:#ffd25c1f;border-color:#ffd25c80}.presentation-header-action--exit{color:var(--presentation-chrome-muted)}.presentation-share-feedback{color:#ffe1aa;text-align:center;background:#3c2b0f;border-bottom:1px solid #ff9f0a4d;margin:0;padding:9px 18px;font-size:12px;line-height:1.4;display:none}.presentation-share-feedback.is-visible{display:block}.presentation-body{flex:1;gap:14px;min-height:0;padding:14px;display:flex;position:relative;overflow:hidden}.presentation-index{border:1px solid var(--presentation-chrome-border);width:244px;color:var(--presentation-chrome-text);border-radius:20px;flex:none;padding:18px 10px;overflow-y:auto;box-shadow:0 18px 44px -32px #000000d9;background:#0d292ddb!important}.presentation-index-label{color:#74ddd0;letter-spacing:.14em;text-transform:uppercase;margin:0 12px 12px;font:500 9px/1 DM Mono,monospace}.presentation-index-item{width:100%;min-height:50px;color:var(--presentation-chrome-muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:14px;grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:9px;margin-bottom:4px;padding:8px 10px;transition:transform .15s,border-color .15s,background .15s,color .15s;display:grid}.presentation-index-item:hover{border-color:var(--presentation-chrome-border);color:var(--presentation-chrome-text);background:#b8f0e50f;transform:translate(2px)}.presentation-index-item[aria-current=step]{color:var(--presentation-chrome-text);background:linear-gradient(135deg,#64d4c633,#b8f0e514);border-color:#b8f0e56b;box-shadow:inset 3px 0 #74ddd0}.presentation-index-step{border:1px solid var(--presentation-chrome-border);width:28px;height:28px;color:var(--presentation-chrome-muted);border-radius:50%;place-items:center;font:500 9px/1 DM Mono,monospace;display:grid}.presentation-index-item[aria-current=step] .presentation-index-step{color:var(--presentation-chrome-accent);background:#b8f0e51f;border-color:#b8f0e580}.presentation-index-item-label{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.presentation-index-item>svg{opacity:.45}.presentation-index-group{background:#04161947;border:1px solid #b8f0e524;border-radius:16px;margin:8px 0;padding:7px}.presentation-index-group-label{min-height:34px;color:var(--presentation-chrome-text);grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 7px 5px;font-size:12px;font-weight:800;display:grid}.presentation-index-group-label small{min-width:22px;height:22px;color:var(--presentation-chrome-accent);background:#b8f0e51a;border-radius:999px;place-items:center;font:600 9px/1 DM Mono,monospace;display:grid}.presentation-index-group-items{gap:3px;display:grid}.presentation-index-item.is-nested{border-radius:11px;min-height:43px;margin:0;padding-block:6px}.presentation-index-item.is-nested .presentation-index-step{width:24px;height:24px}.live-whiteboard-layout{grid-template-columns:minmax(0,1fr) 260px;min-height:420px;display:grid}.live-whiteboard-editor{background-image:repeating-linear-gradient(0deg,#0000,#0000 34px,#79d2dc29 35px);padding:20px}.live-whiteboard-aside{border-left:1px solid var(--border);background:var(--surface2);padding:20px}.live-whiteboard-aside>p:not(.brand-kicker,.live-whiteboard-status){color:var(--text2);font-size:13px;line-height:1.6}.live-whiteboard-status{margin:18px 0 10px;font-size:12px;font-weight:700}.live-whiteboard-status.is-saving,.live-whiteboard-status.is-idle{color:var(--warning)}.live-whiteboard-status.is-saved{color:var(--success)}.live-whiteboard-status.is-error{color:var(--danger)}.live-whiteboard-save{border:1px solid color-mix(in srgb, var(--accent) 55%, var(--border));background:color-mix(in srgb, var(--accent) 14%, var(--surface));width:100%;min-height:40px;color:var(--text);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:800;display:inline-flex}.live-whiteboard-save:disabled{cursor:wait;opacity:.6}.live-whiteboard-save:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.live-whiteboard-aside small{color:var(--text3);margin-top:11px;font-size:11px;line-height:1.5;display:block}.lesson-vocabulary-backdrop{z-index:10020;pointer-events:auto;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#030f116b;position:fixed;inset:0}.lesson-vocabulary-panel{resize:both;pointer-events:auto;border:1px solid var(--border);background:var(--surface);width:min(640px,100vw - 32px);min-width:min(360px,100vw - 16px);max-width:calc(100vw - 16px);height:min(72vh,720px);min-height:360px;max-height:calc(100dvh - 16px);color:var(--text);border-radius:16px;position:fixed;overflow:auto;box-shadow:0 24px 70px #00000061}.lesson-vocabulary-header{border-bottom:1px solid var(--border);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px;display:flex}.lesson-vocabulary-header:active{cursor:grabbing}.lesson-vocabulary-header h2{margin:4px 0 6px;font-family:Fraunces,serif;font-size:30px;font-weight:350}.lesson-vocabulary-header p:not(.brand-kicker){color:var(--text2);margin:0;font-size:13px;line-height:1.55}.lesson-vocabulary-header small{color:var(--text3);margin-top:8px;font-size:11px;font-weight:650;display:block}.lesson-vocabulary-header>button,.lesson-vocabulary-list article>button{border:1px solid var(--border);width:38px;height:38px;color:var(--text2);cursor:pointer;background:0 0;border-radius:9px;flex:none;place-items:center;display:grid}.lesson-vocabulary-form{grid-template-columns:1fr 1fr;gap:14px;padding:22px 22px 12px;display:grid}.lesson-vocabulary-form label{color:var(--text2);gap:7px;font-size:12px;font-weight:700;display:grid}.lesson-vocabulary-form label span{font-weight:400}.lesson-vocabulary-form input,.lesson-vocabulary-form textarea{border:1px solid var(--border);background:var(--surface2);width:100%;color:var(--text);font:inherit;border-radius:9px;padding:11px 12px;font-size:14px}.lesson-vocabulary-form input:focus,.lesson-vocabulary-form textarea:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb, var(--accent) 35%, transparent);outline-offset:1px}.lesson-vocabulary-form-wide{grid-column:1/-1}.lesson-vocabulary-form>button{border:1px solid color-mix(in srgb, var(--accent) 65%, var(--border));background:var(--accent);min-height:44px;color:var(--on-accent);cursor:pointer;border-radius:9px;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;font-weight:800;display:inline-flex}.lesson-vocabulary-form>button:disabled{cursor:wait;opacity:.65}.lesson-vocabulary-feedback{min-height:20px;color:var(--success);margin:0;padding:0 22px;font-size:12px}.lesson-vocabulary-feedback.is-error{color:var(--danger)}.lesson-vocabulary-list{gap:10px;padding:16px 22px 24px;display:grid}.lesson-vocabulary-list article{border:1px solid var(--border);background:var(--surface2);border-radius:11px;justify-content:space-between;align-items:flex-start;gap:14px;padding:14px;display:flex}.lesson-vocabulary-list article strong,.lesson-vocabulary-list article span{display:block}.lesson-vocabulary-list article strong{font-family:Fraunces,serif;font-size:20px;font-weight:500}.lesson-vocabulary-list article span{color:var(--text2);margin-top:3px;font-size:13px}.lesson-vocabulary-list article p{color:var(--text3);margin:9px 0 0;font-size:12px;font-style:italic;line-height:1.5}.lesson-vocabulary-empty{border:1px dashed var(--border-strong);min-height:150px;color:var(--text3);text-align:center;border-radius:12px;align-content:center;place-items:center;gap:10px;display:grid}.lesson-vocabulary-empty p{max-width:260px;margin:0;font-size:13px;line-height:1.55}.lesson-vocabulary-header button:focus-visible,.lesson-vocabulary-list button:focus-visible,.lesson-vocabulary-form button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.presentation-stage{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 96%, transparent);border-radius:24px;flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden;box-shadow:0 24px 70px -44px #000000e6}.presentation-stage-content{box-sizing:border-box;flex:1;width:min(100%,1080px);margin:0 auto;padding:clamp(32px,4vw,54px) clamp(28px,5vw,68px);overflow-y:auto}.presentation-stage-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:32px;display:flex}.presentation-stage-heading-copy{align-items:center;gap:14px;min-width:0;display:flex}.presentation-stage-heading h2{color:var(--text);letter-spacing:-.04em;margin:0;font:400 clamp(29px,3vw,38px)/1 Fraunces,Georgia,serif}.presentation-stage-icon{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--border));background:color-mix(in srgb, var(--accent) 9%, var(--surface));border-radius:16px;flex:none;place-items:center;width:48px;height:48px;font-size:23px;display:grid}.presentation-question-visibility{border:1px solid color-mix(in srgb, var(--accent) 48%, var(--border));background:color-mix(in srgb, var(--accent) 8%, transparent);min-height:40px;color:var(--accent2);border-radius:999px;flex:none;padding:0 14px;font-size:12px;font-weight:700}.presentation-question-visibility[data-published=true]{border-color:color-mix(in srgb, var(--success) 48%, var(--border));background:color-mix(in srgb, var(--success) 12%, transparent);color:var(--success)}[data-theme=light] .presentation-question-visibility{color:var(--accent-deep)}.presentation-controls{border-top:1px solid var(--border);background:color-mix(in srgb, var(--surface2) 46%, var(--surface));flex:none;justify-content:space-between;align-items:center;gap:16px;padding:14px clamp(22px,4vw,48px);display:flex}.presentation-control-button{border:1px solid var(--border2);background:color-mix(in srgb, var(--surface) 70%, transparent);min-height:44px;color:var(--text);border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 18px;font-size:13px;font-weight:700;transition:transform .15s,border-color .15s,background .15s;display:inline-flex}.presentation-control-button:not(:disabled):hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 9%, var(--surface));transform:translateY(-1px)}.presentation-control-button--next:not(:disabled){border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.presentation-control-button:disabled{cursor:not-allowed;opacity:.36}.presentation-controls-position{border:1px solid var(--border);color:var(--text3);border-radius:999px;align-items:center;gap:5px;padding:7px 11px;font:11px/1 DM Mono,monospace;display:inline-flex}.presentation-live-notes{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#071619eb!important}.presentation-selection-toolbar{z-index:10002;color:#f7f3ea;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#07191cf5;border:1px solid #b8f0e54d;border-radius:16px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;width:min(720px,100vw - 32px);padding:12px;display:grid;position:fixed;bottom:76px;right:50%;transform:translate(50%);box-shadow:0 22px 70px #0000006b}.presentation-selection-toolbar>div{min-width:0}.presentation-selection-toolbar>div span,.presentation-selection-toolbar>div strong{display:block}.presentation-selection-toolbar>div span{color:#74ddd0;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px;font:9px/1 DM Mono,monospace}.presentation-selection-toolbar>div strong{color:#f7f3ea;text-overflow:ellipsis;white-space:nowrap;font:400 18px/1.25 Fraunces,Georgia,serif;overflow:hidden}.presentation-selection-toolbar>button{color:#082328;min-height:44px;font:inherit;cursor:pointer;background:#b8f0e5;border:1px solid #b8f0e566;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:12px;font-weight:800;display:inline-flex}.presentation-selection-toolbar>.presentation-selection-dismiss{color:#d7e5e2;background:0 0;border-color:#b8f0e538;width:44px;padding:0}.presentation-selection-toolbar>button:hover{transform:translateY(-1px)}.presentation-selection-toolbar>button:focus-visible,.presentation-header-action--spotlight:focus-visible{outline-offset:3px;outline:2px solid #b8f0e5}.student-share-active .teacher-lexicon-launcher,.student-share-active .teacher-lexicon-dock{display:none!important}.student-share-shell{z-index:10000;color:#f7f3ea;background:radial-gradient(circle at 82% 0,#64d4c624,#0000 34rem),linear-gradient(145deg,#0b2529,#07191c 62%);flex-direction:column;min-width:0;display:flex;position:fixed;inset:0;overflow:hidden}.student-share-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#07191ce0;border-bottom:1px solid #b8f0e52e;flex:none;justify-content:space-between;align-items:center;gap:24px;min-height:92px;padding:15px clamp(20px,3vw,42px);display:flex}.student-share-header>div{min-width:0}.student-share-header .brand-kicker{color:#74ddd0;margin:0 0 6px}.student-share-header h1{color:#f7f3ea;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap;margin:0;font:400 clamp(20px,2vw,27px)/1.05 Fraunces,Georgia,serif;overflow:hidden}.student-share-header>div>p:last-child{color:#adc0bd;margin:5px 0 0;font-size:12px}.student-share-status{color:#dffff8;background:#b8f0e512;border:1px solid #b8f0e540;border-radius:999px;flex:none;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-size:11px;font-weight:700;display:inline-flex}.student-share-status.is-recovering,.student-share-status.is-connecting{color:#ffdaa1;border-color:#ff9f0a61}.student-share-status.is-live svg{color:#67dda0}.student-share-stage{flex:1;min-height:0;padding:clamp(12px,2vw,24px)}.student-share-content,.student-share-waiting{background:var(--surface);width:min(1180px,100%);height:100%;color:var(--text);border:1px solid #b8f0e52e;border-radius:26px;margin:0 auto;overflow-y:auto;box-shadow:0 28px 80px -46px #000000f2}.student-share-content{padding:clamp(34px,5vw,72px)}.student-share-content>header{align-items:center;gap:16px;margin-bottom:clamp(30px,4vw,48px);display:flex}.student-share-content>header>span{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--surface));border-radius:18px;flex:none;place-items:center;width:54px;height:54px;font-size:25px;display:grid}.student-share-content>header p{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 7px;font:500 9px/1 DM Mono,monospace}.student-share-content>header h2{color:var(--text);letter-spacing:-.05em;margin:0;font:400 clamp(34px,4vw,50px)/.98 Fraunces,Georgia,serif}.student-share-content-body{max-width:92ch}.student-share-content-body .lesson-block-content{max-width:86ch}.student-share-content-body .lesson-block-content p{font-size:clamp(19px,1.75vw,24px);line-height:1.7}.student-share-waiting{text-align:center;place-content:center;justify-items:center;gap:10px;padding:32px;display:grid}.student-share-waiting svg{color:var(--accent)}.student-share-waiting h2{color:var(--text);letter-spacing:-.05em;margin:6px 0 0;font:400 clamp(30px,4vw,46px)/1 Fraunces,Georgia,serif}.student-share-waiting p{max-width:48ch;color:var(--text3);margin:0;font-size:14px;line-height:1.55}.student-share-whiteboard{z-index:10002;background:var(--surface);color:var(--text);flex-direction:column;padding:clamp(24px,4vw,52px);display:flex;position:fixed;inset:0}.student-share-whiteboard>header{border-bottom:1px solid var(--border);flex:none;padding-bottom:20px}.student-share-whiteboard .brand-kicker{margin:0 0 7px}.student-share-whiteboard h2{color:var(--text);letter-spacing:-.055em;margin:0;font:400 clamp(36px,5vw,58px)/1 Fraunces,Georgia,serif}.student-share-whiteboard-content{background-image:repeating-linear-gradient(0deg, transparent, transparent 42px, color-mix(in srgb, var(--accent) 16%, transparent) 43px);color:var(--text);flex:1;padding:clamp(28px,4vw,52px) clamp(8px,2vw,24px);font:400 clamp(24px,3vw,38px)/1.55 Fraunces,Georgia,serif;overflow-y:auto}.student-share-spotlight{z-index:10004;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#041316d1;place-items:center;padding:clamp(22px,5vw,72px);animation:.16s ease-out both student-share-spotlight-in;display:grid;position:fixed;inset:92px 0 0}.student-share-spotlight-card{color:#15373a;background:radial-gradient(circle at 88% 0,#64d4c624,#0000 24rem),#fbf8f0;border:1px solid #b8f0e56b;border-radius:clamp(22px,3vw,38px);width:min(1050px,100%);padding:clamp(32px,6vw,76px);box-shadow:0 40px 110px #00000080}.student-share-spotlight-card .brand-kicker{color:#087f79;margin:0 0 clamp(18px,3vw,32px)}.student-share-spotlight-card blockquote{color:#15373a;letter-spacing:-.045em;text-wrap:balance;max-width:24ch;margin:0;font:500 clamp(36px,5.5vw,76px)/1.08 Fraunces,Georgia,serif}@keyframes student-share-spotlight-in{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.students-directory-empty,.students-directory-skeleton{border:1px dashed var(--border2);min-height:230px;color:var(--text3);text-align:center;border-radius:18px;place-content:center;justify-items:center;gap:9px;padding:24px;display:grid}.students-directory-empty h3{color:var(--text);font:400 24px/1 Fraunces,Georgia,serif}.students-directory-empty p{max-width:42ch;font-size:13px;line-height:1.5}.student-360-back{color:var(--text3);margin-bottom:18px;font-size:13px;text-decoration:none;display:inline-flex}.student-360-back:hover{color:var(--accent2)}.student-360-hero{background:linear-gradient(125deg,#14464a,#0b292d 62%,#132528);border:1px solid #b8f0e540;border-radius:22px;justify-content:space-between;align-items:flex-end;gap:22px;padding:clamp(24px,4vw,38px);display:flex}.student-360-hero h1{color:var(--text);letter-spacing:-.07em;margin-top:10px;font:400 clamp(38px,5vw,62px)/.9 Fraunces,Georgia,serif}.student-360-hero>div>p:not(.brand-kicker){color:var(--paper-muted);margin-top:11px;font-size:13px}.student-360-meta{flex-wrap:wrap;gap:8px;margin-top:17px;display:flex}.student-360-meta span{color:var(--accent2);background:#ffffff0d;border:1px solid #b8f0e52e;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:11px;display:inline-flex}.student-360-tools{min-height:38px;color:var(--accent2);background:#0512142e;border:1px solid #b8f0e53d;border-radius:9px;align-items:center;gap:7px;margin-top:16px;padding:0 11px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.student-360-tools:hover{border-color:var(--accent);background:#64d4c61a}.student-360-next{background:#0512144d;border:1px solid #b8f0e540;border-radius:14px;min-width:min(100%,270px);padding:17px}.student-360-next span,.student-360-next small{color:var(--paper-muted);font-size:11px;display:block}.student-360-next strong{color:var(--text);margin:8px 0 6px;font:400 21px/1 Fraunces,Georgia,serif;display:block}.student-360-next a{color:var(--accent2);margin-top:14px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.student-360-next a:hover{color:var(--text)}.student-360-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.student-360-kpis article{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);border-radius:17px;min-height:156px;padding:17px}.student-360-kpis svg{color:var(--accent)}.student-360-kpis span,.student-360-kpis small{color:var(--text3);font-size:11px;display:block}.student-360-kpis span{letter-spacing:.08em;text-transform:uppercase;margin-top:18px;font:10px/1.2 DM Mono,monospace}.student-360-kpis strong{color:var(--text);letter-spacing:-.06em;margin:8px 0;font:400 clamp(23px,2.5vw,33px)/.95 Fraunces,Georgia,serif;display:block}.student-360-kpis small{line-height:1.4}.student-360-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.student-360-card{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);border-radius:18px;padding:20px}.student-360-card--wide{grid-column:1/-1}.student-360-card header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.student-360-card h2{color:var(--text);letter-spacing:-.05em;margin-top:6px;font:400 25px/.96 Fraunces,Georgia,serif}.student-360-card header>span{color:var(--text3);text-align:right;font-size:11px}.student-listening-trend{border-bottom:1px solid var(--border);grid-template-columns:repeat(6,minmax(48px,1fr));align-items:end;gap:12px;min-height:190px;margin-top:20px;padding:12px 4px 0;display:grid;overflow-x:auto}.student-listening-trend>div{text-align:center;grid-template-rows:auto 112px auto auto;align-items:end;gap:6px;min-width:0;display:grid}.student-listening-trend strong{color:var(--text);font:600 13px/1 DM Mono,monospace}.student-listening-trend i{background:linear-gradient(180deg, var(--accent), color-mix(in srgb, var(--accent) 55%, var(--surface)));border-radius:8px 8px 2px 2px;justify-self:center;width:min(28px,70%);min-height:2px;display:block}.student-listening-trend span,.student-listening-trend small{color:var(--text3);text-overflow:ellipsis;white-space:nowrap;font:10px/1.2 DM Mono,monospace;overflow:hidden}.student-listening-trend small{color:var(--accent2)}.student-360-empty{min-height:160px;color:var(--text3);text-align:center;place-content:center;font-size:13px;line-height:1.55;display:grid}.student-360-chart{border-bottom:1px solid var(--border);align-items:end;gap:10px;min-height:185px;margin-top:20px;padding:10px 3px 0;display:flex}.student-360-chart-column{text-align:center;flex:1;grid-template-rows:142px auto;gap:8px;min-width:0;display:grid}.student-360-bars{justify-content:center;align-items:end;gap:4px;height:142px;display:flex}.student-360-bars i,.student-360-bars b{border-radius:7px 7px 2px 2px;width:min(24px,36%);display:block}.student-360-bars i{background:var(--success)}.student-360-bars b{background:var(--danger);opacity:.88}.student-360-chart-column>span{color:var(--text3);text-overflow:ellipsis;white-space:nowrap;font:10px/1.2 DM Mono,monospace;overflow:hidden}.student-360-card footer{color:var(--text3);flex-wrap:wrap;gap:13px;margin-top:13px;font-size:11px;display:flex}.student-attendance-adjustment-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.student-attendance-adjustment-fields label,.student-attendance-adjustment-reason{color:var(--text3);gap:6px;font-size:12px;display:grid}.student-attendance-adjustment-fields input,.student-attendance-adjustment-reason textarea{border:1px solid var(--border);background:var(--surface2);width:100%;color:var(--text);font:inherit;box-sizing:border-box;border-radius:9px;padding:10px 12px}.student-attendance-adjustment-reason{margin-top:10px}.student-attendance-adjustment-reason textarea{resize:vertical;min-height:76px}.student-attendance-adjustment-save{background:var(--text);min-height:40px;color:var(--bg);cursor:pointer;border:0;border-radius:9px;align-items:center;gap:7px;margin-top:12px;padding:0 14px;font-weight:700;display:inline-flex}.student-attendance-adjustment-save:disabled{opacity:.65;cursor:wait}.student-attendance-adjustment-history{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.student-attendance-adjustment-history li{border-top:1px solid var(--border);color:var(--text3);gap:3px;padding-top:10px;font-size:12px;display:grid}.student-attendance-adjustment-history strong{color:var(--text);font-size:12px}.student-attendance-adjustment-history small{line-height:1.4}.student-360-dot{border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.student-360-dot--attended{background:var(--success)}.student-360-dot--missed{background:var(--danger)}.student-360-context{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.student-360-context div{background:#ffffff09;border-radius:10px;padding:11px}.student-360-context dt{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;font:9px/1.2 DM Mono,monospace}.student-360-context dd{color:var(--text2);margin-top:6px;font-size:12px;line-height:1.45}.student-360-timeline{gap:12px;margin-top:20px;display:grid}.student-360-timeline li{grid-template-columns:9px minmax(0,1fr);gap:10px;display:grid}.student-360-status{background:var(--text3);border-radius:50%;width:8px;height:8px;margin-top:4px}.student-360-status--completed,.student-360-status--makeup{background:var(--success)}.student-360-status--missed,.student-360-status--makeup_missed{background:var(--danger)}.student-360-status--rescheduled{background:var(--warning)}.student-360-timeline strong,.student-360-timeline small,.student-360-timeline em{display:block}.student-360-timeline strong{color:var(--text2);font-size:13px}.student-360-timeline small{color:var(--text3);margin-top:3px;font-size:11px}.student-360-timeline em{color:var(--text3);margin-top:5px;font-size:11px;font-style:normal;line-height:1.4}.student-360-notebook{border-top:1px solid var(--border);margin-top:34px;padding-top:24px}.student-profile-form{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);border-radius:18px;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:20px;margin-top:16px;padding:21px;display:grid}.student-profile-form h2{color:var(--text);letter-spacing:-.05em;margin-top:6px;font:400 25px/.96 Fraunces,Georgia,serif}.student-profile-form>div>p:last-child{color:var(--text3);margin-top:10px;font-size:12px;line-height:1.5}.student-profile-form-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.student-profile-form-fields label{color:var(--text3);gap:6px;font-size:11px;display:grid}.student-profile-form-fields input,.student-profile-form-fields select,.student-profile-form-fields textarea{border:1px solid var(--border);background:var(--surface2);width:100%;min-height:38px;color:var(--text);font:inherit;border-radius:8px;outline:0;padding:0 10px;font-size:13px}.student-profile-form-fields textarea{resize:vertical;min-height:76px;padding:10px}.student-profile-form-fields input:focus,.student-profile-form-fields select:focus,.student-profile-form-fields textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #64d4c624}.student-profile-form-goal{grid-column:1/-1}.student-profile-form-actions{grid-column:2;align-items:center;gap:10px;display:flex}.student-profile-form-actions button{background:var(--accent);min-height:40px;color:var(--on-accent);cursor:pointer;border:0;border-radius:9px;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:700;display:inline-flex}.student-profile-form-actions button:disabled{cursor:not-allowed;opacity:.6}.student-profile-form-actions p{color:var(--success);font-size:12px}.platform-hub{gap:22px;display:grid}.platform-primary-action,.platform-secondary-action,.platform-text-action{border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 13px;font-size:12px;font-weight:750;text-decoration:none;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.platform-primary-action{background:var(--accent);color:var(--on-accent)}.platform-primary-action:hover{background:var(--accent2);transform:translateY(-1px)}.platform-secondary-action{color:var(--accent2);background:#ffffff0d;border:1px solid #b8f0e54d}.platform-secondary-action:hover{border-color:var(--accent);background:#64d4c61f}[data-theme=light] .platform-secondary-action{color:#075a57;background:#fffdf8;border-color:#08736f5c}[data-theme=light] .platform-secondary-action:hover{color:#064b49;background:#e8f4f0;border-color:#08736f}[data-theme=light] .platform-overview .platform-secondary-action{color:#b8f0e5;background:#ffffff0d;border-color:#b8f0e54d}[data-theme=light] .platform-overview .platform-secondary-action:hover{color:#d9fff7;background:#64d4c61f;border-color:#64d4c6}.platform-text-action{min-height:34px;color:var(--text3);padding:0}.platform-text-action:hover{color:var(--accent2)}.platform-error{color:#ffc7c7;background:#e05a5a17;border:1px solid #e05a5a73;border-radius:11px;margin:0;padding:12px 14px;font-size:13px}.platform-overview{background:linear-gradient(125deg,#143f43,#0d282c 63%,#15262a);border:1px solid #b8f0e538;border-radius:22px;grid-template-columns:minmax(0,1.32fr) minmax(340px,.68fr);display:grid;overflow:hidden}.platform-intro{padding:clamp(25px,4vw,45px)}.platform-intro h2{max-width:10ch;color:var(--text);letter-spacing:-.065em;margin:8px 0 12px;font:400 clamp(35px,4vw,55px)/.91 Fraunces,Georgia,serif}.platform-intro>p:last-of-type{max-width:55ch;color:var(--paper-muted);font-size:13px;line-height:1.6}.platform-intro-actions{flex-wrap:wrap;gap:9px;margin-top:23px;display:flex}.platform-kpis{background:#04131540;border-left:1px solid #b8f0e52e;align-content:center;gap:10px;padding:26px;display:grid}.platform-kpis div{background:#ffffff09;border:1px solid #b8f0e524;border-radius:12px;grid-template-columns:1fr auto;gap:2px 14px;padding:13px 14px;display:grid}.platform-kpis dt,.platform-kpis span{color:var(--paper-muted);font-size:11px}.platform-kpis dd{color:var(--text);letter-spacing:-.06em;grid-row:span 2;margin:0;font:400 31px/.9 Fraunces,Georgia,serif}.platform-kpis span{align-self:end}.platform-section{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 93%, transparent);border-radius:19px;padding:22px}.platform-section-heading{justify-content:space-between;align-items:end;gap:15px;margin-bottom:18px;display:flex}.platform-section-heading h2{color:var(--text);letter-spacing:-.05em;margin-top:6px;font:400 26px/.96 Fraunces,Georgia,serif}.platform-material-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.platform-material-card{border:1px solid var(--border);background:var(--surface);min-height:390px;color:inherit;border-radius:16px;flex-direction:column;transition:transform .17s,border-color .17s,box-shadow .17s;display:flex;overflow:hidden}.platform-material-card:hover{border-color:color-mix(in srgb, var(--accent) 48%, var(--border));transform:translateY(-2px);box-shadow:0 14px 28px #0214161a}.platform-material-card-cover{color:inherit;text-decoration:none;display:block}.platform-material-card-cover .content-category-art{border-radius:0;width:100%;min-height:132px}.platform-material-card-top{color:var(--text3);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;margin:14px 15px 0;font:10px/1.2 DM Mono,monospace;display:flex}.platform-material-card-top>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.platform-published,.platform-draft{letter-spacing:0;text-transform:none;border-radius:999px;flex:none;align-items:center;gap:4px;padding:4px 6px;font:700 9px/1 Hanken Grotesk,sans-serif;display:inline-flex}.platform-published{background:color-mix(in srgb, var(--success) 13%, transparent);color:var(--success)}.platform-draft{background:color-mix(in srgb, var(--warning) 13%, transparent);color:var(--warning)}.platform-material-card h3{color:var(--text);letter-spacing:-.04em;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:16px 15px 8px;font:400 22px/1 Fraunces,Georgia,serif;display:-webkit-box;overflow:hidden}.platform-material-card h3 a{color:inherit;text-decoration:none}.platform-material-card h3 a:hover{color:var(--accent)}.platform-material-card>p{color:var(--text3);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 15px;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.platform-material-card footer{color:var(--text3);justify-content:space-between;gap:8px;margin:auto 15px 0;padding:15px 0;font-size:10px;display:flex}.platform-material-card footer span:last-child{text-align:right}.platform-material-actions{border-top:1px solid var(--border);grid-template-columns:repeat(4,1fr);display:grid}.platform-material-actions a,.platform-material-actions button{border:0;border-right:1px solid var(--border);min-width:0;min-height:44px;color:var(--text2);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:5px;font:700 10px/1 Hanken Grotesk,sans-serif;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.platform-material-actions>:last-child{border-right:0}.platform-material-actions a:hover,.platform-material-actions button:hover{background:var(--surface2);color:var(--accent)}.platform-material-actions .is-danger:hover{color:var(--danger)}.platform-material-actions button:disabled{cursor:wait;opacity:.55}.platform-library-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.platform-library-toolbar .content-category-back{margin-bottom:0}.platform-library-create-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.platform-library-filters{grid-template-columns:minmax(220px,1fr) 180px 210px;gap:9px;margin:0 0 15px;display:grid}.platform-library-filters.is-portal{grid-template-columns:minmax(220px,1fr) 180px}.platform-library-search{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text3);border-radius:11px;align-items:center;gap:9px;padding:0 12px;display:flex}.platform-library-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent)}.platform-library-search input{width:100%;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:13px}.platform-library-search input::placeholder{color:var(--text3)}.platform-library-filters select{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text2);font:inherit;border-radius:11px;outline:0;padding:0 11px;font-size:12px}.platform-library-filters select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent)}.platform-library-feedback{border:1px solid var(--border);border-radius:10px;margin:0 0 14px;padding:11px 13px;font-size:12px}.platform-library-feedback.is-success{border-color:color-mix(in srgb, var(--success) 36%, var(--border));background:color-mix(in srgb, var(--success) 8%, var(--surface));color:var(--success)}.platform-library-feedback.is-error{border-color:color-mix(in srgb, var(--danger) 42%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--surface));color:var(--danger)}.platform-topic-groups{flex-direction:column;gap:30px;display:flex}.platform-topic-group{scroll-margin-top:24px}.platform-topic-heading{grid-template-columns:1fr auto;align-items:end;gap:4px 16px;margin-bottom:12px;display:grid}.platform-topic-heading .brand-kicker{margin:0 0 5px}.platform-topic-heading h3{color:var(--text);margin:0;font:400 27px/1.1 Fraunces,Georgia,serif}.platform-topic-heading>span{color:var(--text3);font-size:12px}.platform-empty-state{border:1px dashed var(--border2);color:var(--text3);border-radius:14px;align-items:center;gap:14px;padding:22px;display:flex}.platform-empty-state svg{color:var(--accent);flex:none}.platform-empty-state h3{color:var(--text);margin-bottom:5px;font:400 21px/1 Fraunces,Georgia,serif}.platform-empty-state p{max-width:55ch;font-size:12px;line-height:1.5}.platform-empty-state a{white-space:nowrap;margin-left:auto}.platform-note{color:var(--text3);background:#d9a4410e;border:1px solid #d9a4413d;border-radius:13px;align-items:flex-start;gap:10px;padding:14px 16px;font-size:12px;line-height:1.55;display:flex}.platform-note svg{color:var(--warning);flex:none;margin-top:1px}.platform-note strong{color:var(--text2)}.platform-workflows{background:linear-gradient(125deg, color-mix(in srgb, var(--surface) 95%, #184348), color-mix(in srgb, var(--surface) 93%, transparent));border:1px solid #b8f0e533;border-radius:19px;padding:22px}.platform-workflow-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.platform-workflow-card{background:#05121429;border:1px solid #b8f0e529;border-radius:14px;flex-direction:column;min-height:236px;padding:17px;display:flex}.platform-workflow-card>span{width:37px;height:37px;color:var(--accent2);background:#64d4c61a;border:1px solid #b8f0e538;border-radius:11px;place-items:center;display:grid}.platform-workflow-card .brand-kicker{margin-top:20px}.platform-workflow-card h3{color:var(--text);letter-spacing:-.045em;margin-top:8px;font:400 23px/1 Fraunces,Georgia,serif}.platform-workflow-card>p:not(.brand-kicker){color:var(--text3);margin-top:10px;font-size:12px;line-height:1.55}.platform-workflow-card .platform-text-action{width:fit-content;color:var(--accent2);margin-top:auto;padding-top:18px}.platform-workflows-footnote{color:var(--text3);align-items:center;gap:7px;margin-top:14px;font-size:12px;line-height:1.45;display:flex}.platform-workflows-footnote svg{color:var(--warning);flex:none}[data-theme=light] .platform-overview .platform-intro>p:last-of-type,[data-theme=light] .platform-overview .platform-kpis :is(dt,dd,span),[data-theme=light] .dashboard-hero p,[data-theme=light] .students-directory-hero>div>p:last-child,[data-theme=light] .teacher-tools-hero>p:last-child,[data-theme=light] .student-360-hero>div>p:not(.brand-kicker),[data-theme=light] .feature-card--primary p{color:#fffdf7!important}.teacher-workday{background:color-mix(in srgb, var(--surface) 94%, transparent);border:1px solid #b8f0e538;border-radius:19px;margin:24px 0;padding:22px}.teacher-workday-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:18px;display:flex}.teacher-workday-heading h2{color:var(--text);letter-spacing:-.055em;margin-top:6px;font:400 29px/.95 Fraunces,Georgia,serif}.teacher-workday-heading>div>p:last-child{max-width:62ch;color:var(--text3);margin-top:10px;font-size:12px;line-height:1.55}.teacher-workday-count{min-height:36px;color:var(--success);white-space:nowrap;background:#4caf7d17;border:1px solid #4caf7d52;border-radius:999px;flex:none;align-items:center;gap:7px;padding:0 11px;font-size:12px;font-weight:800;display:inline-flex}.teacher-workday-count--pending{color:var(--warning);background:#d9a4411a;border-color:#d9a44157}.teacher-workday-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.teacher-workday-card{border:1px solid var(--border);background:#ffffff06;border-radius:14px;padding:17px}.teacher-workday-card>header{align-items:center;gap:10px;display:flex}.teacher-workday-icon{border-radius:10px;flex:none;place-items:center;width:36px;height:36px;display:grid}.teacher-workday-icon--prepare{color:var(--accent2);background:#64d4c61f}.teacher-workday-icon--document{color:var(--warning);background:#d9a4411f}.teacher-workday-card header h3{color:var(--text);letter-spacing:-.04em;margin-top:4px;font:400 21px/.98 Fraunces,Georgia,serif}.teacher-workday-card header b{min-width:26px;color:var(--text);text-align:right;margin-left:auto;font:400 25px/1 Fraunces,Georgia,serif}.teacher-workday-empty{min-height:98px;color:var(--text3);place-items:center start;font-size:12px;line-height:1.55;display:grid}.teacher-workday-list{gap:8px;margin-top:16px;display:grid}.teacher-workday-list li{background:#ffffff09;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.teacher-workday-list strong,.teacher-workday-list span,.teacher-workday-list small{display:block}.teacher-workday-list strong{color:var(--text2);font-size:12px}.teacher-workday-list span{color:var(--text3);margin-top:3px;font-size:11px}.teacher-workday-list small{color:var(--accent2);align-items:center;gap:4px;margin-top:5px;font-size:10px;display:inline-flex}.teacher-workday-list a{color:var(--accent2);flex:none;font-size:11px;font-weight:800;text-decoration:none}.teacher-workday-list a:hover{color:var(--text)}.finance-whatsapp-action{color:var(--success);background:#4caf7d14;border:1px solid #4caf7d52;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.finance-whatsapp-action:hover{border-color:var(--success);background:#4caf7d26}.calendar-connections{background:linear-gradient(125deg, color-mix(in srgb, var(--surface) 95%, #184348), color-mix(in srgb, var(--surface) 93%, transparent));border:1px solid #b8f0e533;border-radius:19px;margin:0 0 24px;padding:22px}.calendar-connections-header,.calendar-connections-heading,.calendar-connection-card-top{align-items:center;display:flex}.calendar-connections-header{justify-content:space-between;gap:18px;margin-bottom:18px}.calendar-connections-heading{gap:11px}.calendar-connections-icon{width:39px;height:39px;color:var(--accent2);background:#64d4c61c;border:1px solid #b8f0e542;border-radius:11px;flex:none;place-items:center;display:grid}.calendar-connections h2{color:var(--text);letter-spacing:-.05em;margin-top:4px;font:400 25px/.98 Fraunces,Georgia,serif}.calendar-connections-heading p:last-child{max-width:62ch;color:var(--text3);margin-top:8px;font-size:12px;line-height:1.5}.calendar-connections-count{min-height:36px;color:var(--success);white-space:nowrap;background:#4caf7d17;border:1px solid #4caf7d52;border-radius:999px;flex:none;align-items:center;padding:0 11px;font-size:12px;font-weight:800;display:inline-flex}.calendar-connections-count--pending{color:var(--warning);background:#d9a4411a;border-color:#d9a44157}.calendar-connections-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.calendar-connection-card{border:1px solid var(--border);background:#05121429;border-radius:14px;flex-direction:column;min-height:166px;padding:16px;display:flex}.calendar-connection-card-top{justify-content:space-between;gap:12px}.calendar-connection-card-top strong,.calendar-connection-card-top span{display:block}.calendar-connection-card-top strong{color:var(--text);font-size:13px}.calendar-connection-card-top span{color:var(--text3);margin-top:4px;font-size:11px}.calendar-connection-card-top svg{color:var(--warning);flex:none}.calendar-connection-card--connected .calendar-connection-card-top svg{color:var(--success)}.calendar-connection-status{color:var(--warning);margin-top:17px;font-size:12px;font-weight:800}.calendar-connection-status--connected{color:var(--success)}.calendar-connection-help{color:var(--text3);margin-top:auto;padding-top:15px;font-size:11px;line-height:1.45}.calendar-connection-action{width:fit-content;color:var(--accent2);align-items:center;gap:6px;margin-top:auto;padding-top:15px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.calendar-connection-action:hover{color:var(--text)}.teacher-tools-page{width:min(820px,100%);margin:0 auto}.teacher-tools-hero{background:linear-gradient(125deg,#14464a,#0b292d 62%,#132528);border:1px solid #b8f0e53d;border-radius:20px;margin:0 0 20px;padding:clamp(24px,4vw,38px)}.teacher-tools-hero h1{color:var(--text);letter-spacing:-.065em;margin:8px 0 10px;font:400 clamp(38px,5vw,58px)/.92 Fraunces,Georgia,serif}.teacher-tools-hero>p:last-child{max-width:61ch;color:var(--paper-muted);font-size:13px;line-height:1.6}.teacher-translator{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);border-radius:19px;padding:clamp(20px,4vw,30px)}.teacher-translator header{align-items:center;gap:11px;display:flex}.teacher-translator-icon{width:39px;height:39px;color:var(--accent2);background:#64d4c61c;border:1px solid #b8f0e542;border-radius:11px;place-items:center;display:grid}.teacher-translator h2{color:var(--text);letter-spacing:-.05em;margin-top:4px;font:400 25px/.98 Fraunces,Georgia,serif}.teacher-translator-description{color:var(--text3);margin:18px 0 22px;font-size:13px;line-height:1.55}.teacher-translator-label{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;margin:0 0 7px;font:10px/1.2 DM Mono,monospace;display:block}.teacher-translator select,.teacher-translator textarea{border:1px solid var(--border);background:var(--surface2);width:100%;color:var(--text);font:inherit;box-sizing:border-box;border-radius:9px;outline:0;font-size:13px}.teacher-translator select{min-height:40px;margin-bottom:18px;padding:0 10px}.teacher-translator textarea{resize:vertical;min-height:170px;padding:12px;line-height:1.55}.teacher-translator select:focus,.teacher-translator textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #64d4c624}.teacher-translator-meta{min-height:28px;color:var(--text3);justify-content:space-between;align-items:center;font-size:11px;display:flex}.teacher-translator-meta button{color:var(--text3);font:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.teacher-translator-meta button:disabled{cursor:default;opacity:.45;text-decoration:none}.teacher-translator-submit{background:var(--accent);min-height:42px;color:var(--on-accent);cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-size:12px;font-weight:800;display:inline-flex}.teacher-translator-submit:disabled{cursor:not-allowed;opacity:.55}.teacher-translator-error{color:#ffc7c7;background:#e05a5a17;border:1px solid #e05a5a73;border-radius:9px;margin-top:14px;padding:10px 12px;font-size:12px;line-height:1.45}.teacher-translator-result{background:#64d4c60f;border:1px solid #b8f0e533;border-radius:12px;margin-top:18px;padding:15px}.teacher-translator-result>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.teacher-translator-result span{color:var(--accent2);letter-spacing:.08em;text-transform:uppercase;font:10px/1.2 DM Mono,monospace}.teacher-translator-result button{color:var(--text3);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;font-size:11px;display:inline-flex}.teacher-translator-result button:hover{color:var(--accent2)}.teacher-translator-result p{color:var(--text);white-space:pre-wrap;margin-top:12px;font-size:14px;line-height:1.65}.teacher-translator-spinner{animation:.9s linear infinite teacher-translator-spin}@keyframes teacher-translator-spin{to{transform:rotate(360deg)}}.teacher-lexicon-launcher{z-index:12000;color:#f7fbfa;cursor:pointer;background:#12383c;border:1px solid #b8f0e561;border-radius:999px;align-items:center;gap:8px;min-height:46px;padding:0 15px;font-size:12px;font-weight:800;display:inline-flex;position:fixed;bottom:22px;right:22px;box-shadow:0 18px 46px #00000052}.presentation-active .teacher-lexicon-launcher{bottom:92px;right:28px}.teacher-lexicon-launcher:hover{background:#18484c;border-color:#b8f0e5b8}.teacher-lexicon-launcher:focus-visible,.teacher-lexicon-dock button:focus-visible,.teacher-lexicon-dock input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.teacher-lexicon-dock{z-index:12000;background:color-mix(in srgb, var(--surface) 97%, #102f33);width:min(370px,100vw - 24px);max-height:min(720px,100vh - 24px);color:var(--text);border:1px solid #b8f0e54d;border-radius:18px;position:fixed;overflow:hidden;box-shadow:0 28px 80px #0000006b}.teacher-lexicon-head{border-bottom:1px solid var(--border);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(120deg,#64d4c61f,#64d4c608);grid-template-columns:auto minmax(0,1fr) 36px;align-items:center;gap:9px;padding:11px 12px;display:grid}.teacher-lexicon-dragging,.teacher-lexicon-dragging *{-webkit-user-select:none!important;user-select:none!important}.teacher-lexicon-dock.is-dragging .teacher-lexicon-head{cursor:grabbing}.teacher-lexicon-head>div span,.teacher-lexicon-head>div strong{display:block}.teacher-lexicon-head>div span{color:var(--accent2);letter-spacing:.08em;font:700 9px/1.2 DM Mono,monospace}.teacher-lexicon-head>div strong{color:var(--text);margin-top:3px;font-size:13px}.teacher-lexicon-drag,.teacher-lexicon-close{min-height:36px;color:var(--text3);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;display:grid}.teacher-lexicon-drag{touch-action:none;cursor:grab;letter-spacing:.05em;text-transform:uppercase;grid-template-columns:17px auto;gap:5px;padding:0 8px;font:700 9px/1 DM Mono,monospace}.teacher-lexicon-drag:active{cursor:grabbing}.teacher-lexicon-drag span{white-space:nowrap}.teacher-lexicon-close{width:36px}.teacher-lexicon-drag:hover,.teacher-lexicon-close:hover{background:var(--surface2);color:var(--text)}.teacher-lexicon-hint{color:var(--text3);padding:12px 14px 0;font-size:11px;line-height:1.45}.teacher-lexicon-dock>label{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;margin:13px 14px 6px;font:700 9px/1.2 DM Mono,monospace;display:block}.teacher-lexicon-search{border:1px solid var(--border);background:var(--surface2);color:var(--text3);border-radius:10px;grid-template-columns:18px minmax(0,1fr) 18px;align-items:center;gap:7px;margin:0 14px;padding:0 11px;display:grid}.teacher-lexicon-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #64d4c61f}.teacher-lexicon-search input{min-width:0;min-height:42px;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:13px}.teacher-lexicon-search input::placeholder{color:var(--text3)}.teacher-lexicon-spinner{animation:.9s linear infinite teacher-translator-spin}.teacher-lexicon-content{scrollbar-width:thin;max-height:min(535px,100vh - 210px);padding:14px;overflow-y:auto}.teacher-lexicon-empty,.teacher-lexicon-error{border-radius:11px;padding:16px;font-size:12px;line-height:1.5}.teacher-lexicon-empty{border:1px dashed var(--border);color:var(--text3);text-align:center}.teacher-lexicon-error{color:var(--danger);background:#e05a5a17;border:1px solid #e05a5a61}.teacher-lexicon-term{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.teacher-lexicon-term>div strong,.teacher-lexicon-term>div span{display:block}.teacher-lexicon-term>div strong{color:var(--text);letter-spacing:-.04em;font:400 29px/1 Fraunces,Georgia,serif}.teacher-lexicon-term>div span{color:var(--text3);margin-top:5px;font-size:10px}.teacher-lexicon-term>button{min-height:36px;color:var(--accent2);cursor:pointer;background:#64d4c614;border:1px solid #b8f0e547;border-radius:9px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.teacher-lexicon-pronunciation{color:var(--text3);margin:11px 0 17px;font-size:11px}.teacher-lexicon-pronunciation span{color:var(--accent2);letter-spacing:.08em;margin-right:4px;font:700 9px/1 DM Mono,monospace}.teacher-lexicon-content section{border-top:1px solid var(--border);padding-top:14px}.teacher-lexicon-content section+section{margin-top:15px}.teacher-lexicon-content h3{color:var(--text);letter-spacing:.02em;margin:0 0 9px;font-size:11px}.teacher-lexicon-meanings,.teacher-lexicon-examples{gap:8px;list-style:none;display:grid}.teacher-lexicon-meanings li,.teacher-lexicon-examples li{border:1px solid var(--border);background:color-mix(in srgb, var(--surface2) 92%, transparent);border-radius:10px;padding:10px 11px}.teacher-lexicon-meanings strong,.teacher-lexicon-meanings span{display:block}.teacher-lexicon-meanings strong{color:var(--text);font-size:12px;line-height:1.4}.teacher-lexicon-meanings span,.teacher-lexicon-examples span{color:var(--text3);margin-top:5px;font-size:10px;line-height:1.45;display:block}.teacher-lexicon-examples p{color:var(--text);font-size:12px;line-height:1.45}[data-theme=light] .teacher-lexicon-launcher{color:#fff;background:#0d6965;border-color:#0d6965;box-shadow:0 15px 38px #16363633}[data-theme=light] .teacher-lexicon-dock{background:#fffdf8;border-color:#aac3be;box-shadow:0 25px 70px #23363333}[data-theme=light] .teacher-lexicon-head{background:#edf6f2}[data-theme=light] .teacher-lexicon-search{background:#f7f3ea}.weekly-study-plan{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface);margin-bottom:34px;padding:26px}.weekly-study-plan-head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px;display:flex}.weekly-study-plan-head h2{color:var(--text);letter-spacing:-.035em;margin-top:5px;font:400 28px/1.1 Fraunces,Georgia,serif}.weekly-study-plan-head>span{color:var(--text3);font-size:12px}.weekly-study-plan ol{gap:0;list-style:none;display:grid}.weekly-study-plan li{border-top:1px solid var(--border);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:84px;padding:15px 0;display:grid}.weekly-study-plan li>span{color:var(--accent);letter-spacing:.12em;font:500 12px/1 Geist,sans-serif}.weekly-study-plan h3{color:var(--text);margin:0 0 5px;font-size:15px}.weekly-study-plan li p{max-width:680px;color:var(--text3);font-size:12px;line-height:1.5}.weekly-study-plan li>div:last-child{justify-items:end;gap:8px;display:grid}.weekly-study-plan small{color:var(--text3);font-size:11px}.weekly-study-plan a{color:var(--accent2);font-size:12px;font-weight:700;text-decoration:none}.vocabulary-review{align-content:start;place-items:start center;gap:24px;min-height:calc(100vh - 110px);display:grid}.vocabulary-review>header{text-align:center;width:min(680px,100%)}.vocabulary-review>header h1{color:var(--text);letter-spacing:-.045em;margin:8px 0;font:400 42px/1 Fraunces,Georgia,serif}.vocabulary-review>header>p:last-child{color:var(--text3);font-size:13px}.review-card,.review-empty{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface);width:min(680px,100%);box-shadow:var(--shadow-card);padding:32px}.review-empty{color:var(--text3);text-align:center}.review-empty strong{color:var(--text);margin-bottom:7px;font:400 24px/1.2 Fraunces,Georgia,serif;display:block}.review-progress{color:var(--text3);justify-content:space-between;align-items:center;gap:16px;font-size:11px;display:flex}.review-progress progress{width:150px;height:5px;accent-color:var(--accent)}.review-category{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:44px 0 9px;font-size:10px;font-weight:700}.review-card h2{color:var(--text);letter-spacing:-.04em;margin:0 0 34px;font:400 48px/1 Fraunces,Georgia,serif}.review-reveal{border:1px solid var(--accent);min-height:44px;color:var(--accent2);background:0 0;border-radius:10px;align-items:center;gap:9px;padding:10px 17px;font-weight:700;display:inline-flex}.review-answer>p:first-child{color:var(--text);font-size:20px;line-height:1.45}.review-answer blockquote{border-left:2px solid var(--brass);color:var(--text3);margin:18px 0;padding:14px 16px;font-style:italic}.review-question{color:var(--text3);margin:28px 0 12px;font-size:12px}.review-ratings{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.review-ratings button{border:1px solid var(--border);background:var(--surface2);min-height:44px;color:var(--text);border-radius:10px;justify-content:center;align-items:center;gap:6px;display:inline-flex}.review-ratings button:last-child{color:var(--success);border-color:#30d15873}.review-ratings button:disabled{cursor:wait;opacity:.55}.post-class-manager{background:color-mix(in srgb, var(--surface) 95%, #154448);border:1px solid #b8f0e538;border-radius:18px;margin:22px 0 28px;padding:24px}.post-class-manager>header{justify-content:space-between;align-items:start;gap:18px;display:flex}.post-class-manager h2{color:var(--text);margin-top:5px;font:400 27px/1.1 Fraunces,Georgia,serif}.post-class-manager>header>span{border:1px solid var(--border);color:var(--warning);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800}.post-class-manager>header>span[data-status=published]{color:var(--success);border-color:#30d1585c}.post-class-manager>p{max-width:70ch;color:var(--text3);margin:12px 0 20px;font-size:12px;line-height:1.55}.post-class-manager>label{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:700;display:block}.post-class-manager>select{border:1px solid var(--border);background:var(--surface2);width:min(500px,100%);min-height:42px;color:var(--text);border-radius:9px;padding:0 11px}.post-class-preview{gap:10px;margin-top:20px;list-style:none;display:grid}.post-class-preview>li{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:16px}.post-class-preview li>div{align-items:center;gap:10px;display:flex}.post-class-preview h3{color:var(--text);font-size:14px}.post-class-preview li>div span{color:var(--accent2);background:#64d4c61a;border-radius:999px;padding:3px 7px;font-size:10px}.post-class-preview li>p,.post-class-preview details p{color:var(--text3);margin-top:9px;font-size:12px;line-height:1.55}.post-class-preview details{color:var(--warning);margin-top:12px;font-size:11px}.post-class-empty{border:1px dashed var(--border);color:var(--text3);text-align:center;border-radius:12px;margin-top:20px;padding:22px;font-size:12px}.post-class-message{color:var(--accent2)!important;margin:13px 0 0!important}.post-class-actions{flex-wrap:wrap;gap:9px;margin-top:18px;display:flex}.post-class-actions button{border:1px solid var(--border);background:var(--surface2);min-height:42px;color:var(--text);border-radius:9px;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.post-class-actions button:last-child{color:var(--success);border-color:#30d15861}.post-class-actions button:disabled{cursor:wait;opacity:.55}.student-micro-practice>p{color:var(--text3);margin-bottom:20px;font-size:13px;line-height:1.55}.student-micro-practice ol{gap:15px;list-style:none;display:grid}.student-micro-practice li{border:1px solid var(--border);background:var(--surface2);border-radius:12px;padding:18px}.student-micro-practice li>div{align-items:center;gap:10px;display:flex}.student-micro-practice h3{color:var(--text);font-size:15px}.student-micro-practice li>div span{color:var(--accent2);background:#64d4c61a;border-radius:999px;padding:3px 7px;font-size:10px}.student-micro-practice li>p{color:var(--text2);margin:13px 0;font-size:14px;line-height:1.6}.student-micro-practice label{color:var(--text3);margin-bottom:6px;font-size:11px;display:block}.student-micro-practice textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);font:inherit;resize:vertical;border-radius:9px;outline:0;padding:11px}.student-micro-practice textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #64d4c61f}.student-micro-save{border:1px solid var(--accent);background:var(--accent);min-height:43px;color:var(--on-accent);border-radius:9px;margin-top:16px;padding:0 16px;font-weight:800}.student-micro-save:disabled{cursor:not-allowed;opacity:.5}.ai-operations{border:1px solid var(--border);background:var(--surface);border-radius:19px;margin-top:30px;padding:24px}.ai-operations>header{justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px;display:flex}.ai-operations h2{color:var(--text);margin-top:5px;font:400 29px/1.05 Fraunces,Georgia,serif}.ai-operations>header>span{color:var(--text3);font-size:11px}.ai-operations-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.ai-operations-kpis article{border:1px solid var(--border);background:var(--surface2);border-radius:13px;min-height:122px;padding:16px}.ai-operations-kpis span,.ai-operations-kpis small{color:var(--text3);font-size:10px;display:block}.ai-operations-kpis strong{color:var(--text);margin:14px 0 7px;font:400 29px/1 Fraunces,Georgia,serif;display:block}.ai-task-usage{margin-top:20px}.ai-task-usage h3{color:var(--text);margin-bottom:10px;font-size:13px}.ai-task-usage ul{gap:0;list-style:none;display:grid}.ai-task-usage li{border-top:1px solid var(--border);min-height:42px;color:var(--text3);justify-content:space-between;align-items:center;font-size:12px;display:flex}.ai-task-usage li strong{color:var(--text)}.ai-task-usage>p{color:var(--text3);font-size:12px}.ai-studio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.free-preparation-page{max-width:1080px}.free-preparation-heading{align-items:flex-start;gap:12px;display:flex}.free-preparation-heading>a{border:1px solid var(--border);width:42px;height:42px;color:var(--text2);border-radius:50%;flex:none;place-items:center;margin-top:5px;display:grid}.free-preparation-heading>a:hover{border-color:var(--accent);color:var(--accent)}.free-preparation-stage{border:1px solid var(--border);background:var(--surface);border-radius:22px;grid-template-rows:auto minmax(360px,1fr) auto auto;min-height:min(720px,100vh - 190px);display:grid;overflow:hidden;box-shadow:0 30px 70px -52px #000000e0}.free-preparation-stage-head{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface2) 76%, transparent);justify-content:space-between;align-items:flex-end;gap:20px;padding:22px 24px;display:flex}.free-preparation-stage-head h2{color:var(--text);margin-top:5px;font:400 27px/1.05 Fraunces,Georgia,serif}.free-preparation-stage-head>span{color:var(--text3);align-items:center;gap:6px;font-size:11px;display:inline-flex}.free-preparation-body{flex-direction:column;gap:14px;min-height:0;padding:24px;display:flex;overflow-y:auto}.free-preparation-suggestions{gap:8px;max-width:780px;margin:4px 0 12px;display:grid}.free-preparation-suggestions>p{color:var(--text3);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700}.free-preparation-suggestions button{border:1px solid var(--border);background:var(--surface2);min-height:54px;color:var(--text2);text-align:left;border-radius:13px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 15px;font-size:12px;line-height:1.5;display:grid}.free-preparation-suggestions button:hover{border-color:var(--accent);color:var(--text)}.free-preparation-suggestions button:disabled{cursor:wait;opacity:.5}.free-preparation-message-row{display:flex}.free-preparation-message-row.user{justify-content:flex-end}.free-preparation-message{border:1px solid var(--border);background:var(--surface2);max-width:min(78%,720px);color:var(--text2);white-space:pre-wrap;border-radius:15px 15px 15px 5px;padding:13px 15px;font-size:13px;line-height:1.65}.free-preparation-message-row.user .free-preparation-message{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 13%, var(--surface));color:var(--text);border-radius:15px 15px 5px}.free-preparation-thinking{color:var(--accent);align-items:center;gap:8px;display:inline-flex}.free-preparation-draft{border:1px solid color-mix(in srgb, var(--accent) 46%, var(--border));background:color-mix(in srgb, var(--accent) 6%, var(--surface2));border-radius:17px;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:18px 24px;margin-top:8px;padding:20px;display:grid}.free-preparation-draft h3{color:var(--text);margin-top:5px;font:400 27px/1.05 Fraunces,Georgia,serif}.free-preparation-draft>div>p:last-child{max-width:60ch;color:var(--text3);margin-top:8px;font-size:12px;line-height:1.55}.free-preparation-draft dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.free-preparation-draft dl div{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:10px 11px}.free-preparation-draft dt{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.free-preparation-draft dd{color:var(--text);margin-top:4px;font-size:12px;font-weight:700}.free-preparation-draft>button{border:1px solid var(--accent);background:var(--accent);min-height:44px;color:var(--on-accent);border-radius:10px;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:800;display:inline-flex}.free-preparation-error{border-top:1px solid color-mix(in srgb, var(--danger) 35%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--surface));color:var(--danger);justify-content:space-between;align-items:center;gap:14px;padding:11px 18px;font-size:12px;display:flex}.free-preparation-error button{color:var(--danger);font-size:11px;font-weight:800;text-decoration:underline}.free-preparation-composer{border-top:1px solid var(--border);background:var(--surface2);padding:14px 16px 12px}.free-preparation-composer>label{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:10px;font-weight:700;display:block}.free-preparation-composer>div{grid-template-columns:minmax(0,1fr) 44px;align-items:end;gap:9px;display:grid}.free-preparation-composer textarea{border:1px solid var(--border);background:var(--surface);width:100%;min-height:78px;max-height:180px;color:var(--text);font:inherit;resize:vertical;border-radius:13px;outline:0;padding:12px 14px;font-size:13px;line-height:1.5}.free-preparation-composer textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent)}.free-preparation-composer>div>button{border:1px solid var(--accent);background:var(--accent);width:44px;height:44px;color:var(--on-accent);border-radius:50%;place-items:center;display:grid}.free-preparation-composer>div>button:disabled{cursor:not-allowed;border-color:var(--border);background:var(--surface3);color:var(--text3)}.free-preparation-composer footer{color:var(--text3);justify-content:space-between;align-items:center;gap:12px;margin-top:8px;font-size:10px;display:flex}.free-preparation-composer footer button{min-height:32px;color:var(--text2);align-items:center;gap:5px;font-size:10px;font-weight:700;display:inline-flex}@media (max-width:1080px){.ai-studio-grid,.ai-operations-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.presentation-header-help{display:none}.presentation-index{width:220px}.app-main,.portal-main{padding:30px 28px 56px!important}.dashboard-metrics,.dashboard-links,.library-grid,.report-kpi-grid,.students-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-workflow-grid,.teacher-workday-grid{grid-template-columns:1fr}.calendar-connections-grid,.platform-material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-overview{grid-template-columns:1fr}.platform-kpis{border-top:1px solid #b8f0e52e;border-left:0;grid-template-columns:repeat(3,minmax(0,1fr))}.platform-kpis div{grid-template-columns:1fr}.platform-kpis dd{grid-row:auto;margin-top:7px}.platform-kpis span{margin-top:4px}.students-directory-toolbar{flex-direction:column;align-items:flex-start}.students-directory-filters{justify-content:flex-start}.student-360-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.student-profile-form{grid-template-columns:1fr}.student-profile-form-actions{grid-column:auto}.finance-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-month-detail{grid-template-columns:1fr auto}.report-month-detail dl{grid-column:1/-1}.finance-table-head{display:none}.finance-table-row{grid-template-columns:minmax(0,1fr) 1fr;gap:10px 16px;padding:16px}.finance-table-row>div:last-child{grid-column:1/-1}}@media (max-width:720px){.free-preparation-heading{align-items:center}.free-preparation-heading>a{margin-top:0}.free-preparation-stage{border-radius:17px;min-height:calc(100vh - 205px)}.free-preparation-stage-head{flex-direction:column;align-items:flex-start;padding:18px}.free-preparation-body{padding:16px}.free-preparation-message{max-width:92%}.free-preparation-draft{grid-template-columns:1fr;padding:16px}.free-preparation-draft dl{grid-template-columns:repeat(2,minmax(0,1fr))}.free-preparation-error{flex-direction:column;align-items:flex-start}.free-preparation-composer footer>span{display:none}.free-preparation-composer footer{justify-content:flex-end}.ai-operations{padding:18px}.ai-operations>header{flex-direction:column;align-items:start}.ai-operations-kpis{grid-template-columns:1fr}.weekly-study-plan{padding:20px}.weekly-study-plan-head{flex-direction:column;align-items:start}.portal-academy-heading>svg{display:none}.portal-academy-tabs{gap:6px}.portal-academy-tabs button{min-height:66px;font-size:11px}.portal-academy-overall{grid-template-columns:1fr auto;padding:17px}.portal-academy-overall h2{font-size:21px}.portal-academy-levels button{padding:11px 12px}.live-whiteboard-layout{grid-template-columns:1fr}.live-whiteboard-aside{border-top:1px solid var(--border);border-left:0}.lesson-vocabulary-backdrop{align-items:flex-end;padding:8px}.lesson-vocabulary-panel{border-radius:16px 16px 10px 10px;height:min(88dvh,760px)}.lesson-vocabulary-form{grid-template-columns:1fr}.lesson-vocabulary-form-wide,.lesson-vocabulary-form>button{grid-column:auto}.weekly-study-plan li{grid-template-columns:30px minmax(0,1fr)}.weekly-study-plan li>div:last-child{grid-area:2/2;justify-items:start}.vocabulary-review>header h1{font-size:34px}.review-card,.review-empty{padding:22px}.review-card h2{font-size:38px}.review-ratings,.login-shell{grid-template-columns:1fr}.login-intro{border-right:0;border-bottom:1px solid var(--border);min-height:47vh;padding:28px 22px}.login-intro h1{font-size:clamp(58px,17vw,82px)}.login-intro-copy{display:none}.login-panel{padding:32px 22px 48px}.login-intro:after{width:300px;bottom:-130px;right:-90px}.app-main,.portal-main{margin-left:0!important;padding:24px 16px 104px!important}.admin-sidebar,.portal-sidebar{border-top:1px solid var(--border);bottom:0;border-right:0!important;width:100%!important;height:76px!important;padding:8px 4px!important;top:auto!important}.admin-sidebar-brand,.admin-sidebar-footer,.portal-sidebar-brand,.portal-sidebar-footer{display:none!important}.admin-sidebar-nav,.portal-sidebar-nav{align-items:stretch;flex-direction:row!important;gap:2px!important;padding:0!important;overflow:auto hidden!important}.admin-sidebar-nav>.admin-nav-item,.portal-sidebar-nav>a{flex:1;min-width:64px}.admin-sidebar-nav>.admin-nav-item>a>.admin-nav-link,.portal-sidebar-nav>a>.portal-sidebar-link-content{height:58px;border-radius:12px!important;justify-content:center!important;padding:8px!important}.admin-nav-label,.portal-sidebar-label{display:none}.page-header{grid-template-columns:1fr;gap:18px}.page-header h1{font-size:44px}.dashboard-hero{min-height:260px;padding:26px}.dashboard-hero-mark{bottom:25px;right:22px}.dashboard-metrics,.dashboard-links,.portal-quick-links,.portal-next-action{grid-template-columns:1fr}.portal-next-action-meta{border-right:0;border-bottom:1px solid color-mix(in srgb, var(--warning) 27%, var(--border))}.feature-grid,.library-grid,.kpi-grid,.report-kpi-grid,.report-chart-grid{grid-template-columns:1fr}.finance-toolbar{flex-direction:column;align-items:flex-start}.finance-filters{flex-direction:column;align-items:stretch}.finance-due-day-filter{width:100%}.finance-kpi-grid,.finance-table-row{grid-template-columns:1fr}.finance-table-row>div:last-child{grid-column:auto}.finance-next-action,.finance-whatsapp-confirmation{width:100%;min-width:0}.finance-next-action>.finance-button,.finance-whatsapp-confirmation-actions .finance-button{width:100%;min-height:44px}.finance-whatsapp-confirmation-actions{grid-template-columns:1fr;display:grid}.finance-dialog-backdrop{align-items:end;padding:12px}.finance-dialog{border-radius:18px;max-height:92dvh;padding:19px;overflow-y:auto}.finance-dialog-fields{grid-template-columns:1fr}.finance-dialog-actions{grid-template-columns:1fr;display:grid}.finance-dialog-actions .finance-button{width:100%;min-height:44px}.report-month-detail{grid-template-columns:1fr}.report-month-detail dl{grid-template-columns:repeat(2,minmax(0,1fr))}.report-chart-card--wide{grid-column:auto}.report-toolbar{flex-direction:column;align-items:flex-start}.report-data-details>div{grid-template-columns:repeat(2,minmax(0,1fr))}.students-directory-hero{flex-direction:column;align-items:flex-start}.students-directory-grid{grid-template-columns:1fr}.platform-overview{border-radius:18px}.platform-intro h2{max-width:12ch}.platform-kpis{grid-template-columns:1fr;padding:16px}.platform-kpis div{grid-template-columns:1fr auto}.platform-kpis dd{grid-row:span 2;margin-top:0}.platform-kpis span{margin-top:0}.platform-material-grid,.platform-workflow-grid{grid-template-columns:1fr}.platform-section,.platform-workflows{padding:17px}.platform-empty-state{flex-wrap:wrap;align-items:flex-start}.platform-empty-state a{width:100%;margin-left:0}.platform-section-heading{flex-direction:column;align-items:flex-start}.platform-note{padding:13px}.platform-library-filters,.platform-library-filters.is-portal{grid-template-columns:1fr}.platform-library-toolbar{flex-direction:column;align-items:stretch}.platform-library-create-actions{grid-template-columns:1fr 1fr;display:grid}.students-directory-search{width:100%}.students-directory-metrics{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.student-360-hero{flex-direction:column;align-items:flex-start}.student-preview-sidebar,.student-preview.is-sidebar-collapsed .student-preview-sidebar{z-index:4;border-top:1px solid var(--border);border-right:0;width:100%;height:70px;padding:6px;position:fixed;top:auto}.student-preview-sidebar>div,.student-preview-sidebar>p,.student-preview-sidebar-footer{display:none}.student-preview-sidebar nav{width:100%;margin:0;display:flex;overflow-x:auto}.student-preview-sidebar nav button,.student-preview.is-sidebar-collapsed .student-preview-sidebar nav button{justify-content:center;min-width:86px;padding-inline:11px;font-size:11px}.student-preview-main,.student-preview.is-sidebar-collapsed .student-preview-main{margin-left:0;padding:18px 16px 100px}.student-preview-banner{flex-wrap:wrap;align-items:flex-start}.student-preview-banner a{margin-left:auto}.student-preview-platform-grid{grid-template-columns:1fr}.student-preferences-options,.student-preferences-fonts{grid-template-columns:1fr 1fr}.student-preview-lesson-shell{padding:18px 14px 72px}.student-content-entry{flex-direction:column;align-items:flex-start}.student-content-entry a{justify-content:center;width:100%}.presentation-header{gap:10px;min-height:80px;padding:10px 12px}.presentation-header-copy{max-width:calc(100% - 150px)}.presentation-header .brand-kicker,.presentation-header-student,.presentation-header-help,.presentation-position{display:none}.presentation-header-title{font-size:16px}.presentation-header-actions{gap:5px}.presentation-header-action{width:44px;min-height:44px;padding:0}.presentation-header-action span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.presentation-body{gap:8px;padding:8px}.presentation-index{z-index:2;border-radius:15px;gap:5px;width:auto;height:64px;padding:7px;display:flex;position:absolute;top:8px;left:8px;right:8px;overflow:auto hidden}.presentation-index-label{display:none}.presentation-index-item{border-radius:11px;gap:7px;width:auto;min-width:max-content;min-height:48px;margin:0;padding:7px 10px;display:inline-flex}.presentation-index-item>svg{display:none}.presentation-index-item-label{max-width:150px}.presentation-index-step{width:26px;height:26px}.presentation-stage{border-radius:18px}.presentation-stage-content{padding:92px 20px 28px}.presentation-stage-heading{align-items:flex-start;margin-bottom:24px}.presentation-stage-icon{border-radius:14px;width:42px;height:42px;font-size:20px}.presentation-stage-heading h2{font-size:28px}.presentation-question-visibility{max-width:118px;padding:0 10px;font-size:10px}.presentation-selection-toolbar{grid-template-columns:1fr auto;gap:9px;padding:10px;bottom:72px}.presentation-selection-toolbar>div{grid-column:1/-1}.presentation-selection-toolbar>div strong{font-size:16px}.presentation-selection-toolbar>button:not(.presentation-selection-dismiss){width:100%}.student-share-spotlight{padding:16px;inset:78px 0 0}.student-share-spotlight-card{border-radius:20px;padding:28px 22px}.student-share-spotlight-card blockquote{font-size:clamp(32px,10vw,48px)}.presentation-controls{padding:10px 12px}.presentation-control-button{width:44px;min-height:44px;padding:0}.presentation-control-button span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.presentation-controls-position{font-size:10px}.presentation-live-notes{padding:10px 16px!important}.presentation-live-notes textarea{min-height:44px}.student-share-header{gap:10px;min-height:78px;padding:12px 16px}.student-share-header .brand-kicker,.student-share-header>div>p:last-child{display:none}.student-share-header h1{font-size:18px}.student-share-status{text-align:center;max-width:140px;min-height:34px;padding:0 10px;font-size:9px}.student-share-stage{padding:8px}.student-share-content,.student-share-waiting{border-radius:18px}.student-share-content{padding:24px 18px}.student-share-content>header{align-items:flex-start;gap:11px;margin-bottom:26px}.student-share-content>header>span{border-radius:14px;width:44px;height:44px;font-size:20px}.student-share-content>header h2{font-size:30px}.student-share-whiteboard{padding:22px 16px}.legacy-lesson-original summary{flex-direction:column;align-items:flex-start}.legacy-lesson-original .legacy-lesson-document{padding:14px}.legacy-lesson-document h2{font-size:27px}.legacy-lesson-document h3{font-size:23px}.legacy-lesson-table-wrap{margin-right:-2px}.student-360-next{width:100%}.notebook-lesson-header{margin-bottom:18px}.notebook-lesson-layout{grid-template-columns:1fr;gap:12px}.notebook-lesson-index{padding:6px;display:flex;position:static;overflow-x:auto}.notebook-lesson-index button{min-width:max-content}.notebook-lesson-content{min-height:0;padding:20px 16px}.notebook-lesson-navigation{margin-top:28px}.notebook-lesson-navigation button{padding-inline:12px!important}.teacher-tools-hero{border-radius:17px}.teacher-translator{border-radius:16px}.teacher-translator-submit{width:100%}.teacher-lexicon-dock{width:min(370px,100vw - 24px);max-height:min(76vh,650px);bottom:auto;right:auto}.teacher-lexicon-content{max-height:calc(76vh - 165px)}.student-360-kpis,.student-360-grid,.student-attendance-adjustment-fields{grid-template-columns:1fr}.student-360-card--wide{grid-column:auto}.teacher-workday{padding:17px}.teacher-workday-heading{flex-direction:column;align-items:flex-start}.teacher-workday-count{align-self:flex-start}.teacher-workday-grid{grid-template-columns:1fr}.calendar-connections{border-radius:17px;padding:17px}.calendar-connections-header{flex-direction:column;align-items:flex-start}.calendar-connections-count{align-self:flex-start}.calendar-connections-grid{grid-template-columns:1fr}.attendance-toolbar{flex-direction:column;align-items:stretch}.attendance-schedule-link{width:100%}.attendance-student-summary{grid-template-columns:1fr 20px;gap:12px}.attendance-summary-metrics{text-align:left;grid-column:1/-1;justify-content:space-between;gap:10px}.attendance-lesson-row{grid-template-columns:1fr 1fr}.attendance-lesson-date,.attendance-lesson-row input{grid-column:1/-1}.attendance-lesson-actions{grid-column:1/-1;justify-content:space-between}.attendance-lesson-row button{justify-content:center}.attendance-history-editor__head{flex-direction:column;align-items:stretch}.attendance-history-editor__fields{grid-template-columns:1fr}.attendance-history-save{justify-content:center;width:100%}.makeup-balance-editor{grid-template-columns:1fr}.makeup-balance-editor__summary{border-right:0;border-bottom:1px solid var(--border);padding-bottom:13px;padding-right:0}.portal-page-title{font-size:44px}.practice-stage{border-radius:20px;min-height:calc(100vh - 122px)}.practice-stage-head{padding:17px}.practice-stage-head>p{display:none}.practice-stage-body{padding:16px}.practice-message{max-width:88%}.practice-welcome{font-size:21px}.practice-guide-intro{margin-top:4px}.practice-quick-actions{grid-template-columns:1fr;display:grid}.practice-quick-actions button{border-radius:12px;justify-content:flex-start;width:100%}}.lesson-blocks{grid-template-columns:minmax(190px,.32fr) minmax(0,1fr);gap:14px;margin-bottom:26px;display:grid}.lesson-block-tabs{border:1px solid var(--border);background:var(--surface);border-radius:15px;flex-direction:column;gap:5px;max-height:640px;padding:7px;display:flex;overflow-y:auto}.lesson-block-tabs button{min-height:44px;color:var(--text3);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:7px;padding:8px;font-size:11px;display:grid}.lesson-block-tabs button span{color:var(--accent);font:9px/1 DM Mono,monospace}.lesson-block-tabs button:hover,.lesson-block-tabs button.is-active{border-color:color-mix(in srgb, var(--accent) 36%, var(--border));background:color-mix(in srgb, var(--accent) 9%, var(--surface));color:var(--text)}.lesson-active-block{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 95%, transparent);border-radius:18px;flex-direction:column;min-height:470px;padding:clamp(20px,3vw,32px);display:flex}.lesson-active-block>header{border-bottom:1px solid var(--border);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding-bottom:20px;display:grid}.lesson-active-block-icon{background:color-mix(in srgb, var(--accent) 13%, var(--surface2));width:42px;height:42px;color:var(--accent);border-radius:13px;place-items:center;display:grid}.lesson-active-block header p{color:var(--accent);letter-spacing:.11em;margin:0 0 4px;font:9px/1 DM Mono,monospace}.lesson-active-block header h2{color:var(--text);letter-spacing:-.045em;margin:0;font:400 clamp(25px,3vw,34px)/1 Fraunces,Georgia,serif}.lesson-block-duration{color:var(--text3);align-items:center;gap:5px;font-size:11px;display:inline-flex}.lesson-block-instructions{color:var(--text2);margin:22px 0 0;font-size:15px;line-height:1.65}.lesson-block-content{max-width:78ch;margin-top:20px}.lesson-block-content p{color:var(--text);white-space:pre-wrap;margin:0;font-size:clamp(15px,1.2vw,18px);line-height:1.72}.lesson-block-content p+p{margin-top:.8em}.lesson-block-content .lesson-block-content-lead{color:var(--text2);margin-bottom:1.15em;font-weight:600}.presentation-stage .lesson-block-content{max-width:82ch}.presentation-stage .lesson-block-content p{font-size:clamp(18px,1.65vw,22px);line-height:1.68}.lesson-block-private{border:1px solid color-mix(in srgb, var(--warning) 30%, var(--border));background:color-mix(in srgb, var(--warning) 7%, var(--surface));color:var(--warning);border-radius:11px;gap:10px;margin-top:18px;padding:13px;display:flex}.lesson-block-private p{color:var(--text2);white-space:pre-wrap;margin:4px 0 0;font-size:12px;line-height:1.5}.lesson-active-block>footer{justify-content:space-between;gap:8px;margin-top:auto;padding-top:24px;display:flex}.lesson-active-block>footer button,.lesson-block-add{border:1px solid var(--border);background:var(--surface2);min-height:42px;color:var(--text2);font:inherit;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-size:12px;display:inline-flex}.lesson-active-block>footer button:disabled{cursor:default;opacity:.35}.lesson-block-editor{gap:13px;display:grid}.lesson-block-editor-heading{border:1px solid var(--border);background:var(--surface);border-radius:14px;justify-content:space-between;align-items:end;gap:20px;padding:18px;display:flex}.lesson-block-editor-heading h2{color:var(--text);margin:5px 0;font:400 25px/1 Fraunces,Georgia,serif}.lesson-block-editor-heading p:last-child{color:var(--text3);margin:0;font-size:12px}.lesson-block-editor-heading>span{color:var(--accent);white-space:nowrap;font:12px/1 DM Mono,monospace}.lesson-block-editor-list{gap:10px;display:grid}.lesson-block-editor-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;overflow:hidden}.lesson-block-editor-card>header{border-bottom:1px solid var(--border);background:var(--surface2);grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 12px;display:grid}.lesson-block-editor-card>header>span{color:var(--accent);font:10px/1 DM Mono,monospace}.lesson-block-editor-card select,.lesson-block-editor-fields :is(input,textarea){border:1px solid var(--border);background:var(--surface2);width:100%;color:var(--text);font:inherit;border-radius:8px;outline:0;font-size:12px}.lesson-block-editor-card select{min-height:36px;padding:0 9px}.lesson-block-editor-card header>div{gap:3px;display:flex}.lesson-block-editor-card header button{width:36px;height:36px;color:var(--text3);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.lesson-block-editor-card header button:hover{background:var(--surface3);color:var(--text)}.lesson-block-editor-card header button:disabled{opacity:.3;cursor:default}.lesson-block-editor-fields{grid-template-columns:minmax(0,1fr) 100px;gap:11px;padding:14px;display:grid}.lesson-block-editor-fields label{color:var(--text3);gap:6px;font-size:11px;display:grid}.lesson-block-editor-fields input{min-height:39px;padding:0 10px}.lesson-block-editor-fields textarea{resize:vertical;min-height:82px;padding:10px;line-height:1.5}.lesson-block-editor-wide{grid-column:1/-1}.lesson-structured-field{border:1px solid var(--border);background:var(--surface2);border-radius:10px;gap:10px;padding:13px;display:grid}.lesson-structured-field>strong,.lesson-media-uploader strong{color:var(--text);font-size:13px}.lesson-structured-field>p,.lesson-media-uploader p{color:var(--text3);margin:-4px 0 2px;font-size:11px;line-height:1.45}.lesson-media-uploader{border:1px dashed var(--border2);color:var(--accent);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px;display:grid}.lesson-upload-button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-height:36px;padding:0 11px;color:var(--text)!important;flex-direction:row!important;gap:6px!important;display:inline-flex!important}.lesson-upload-button input{opacity:0;pointer-events:none;position:absolute;width:1px!important;height:1px!important;padding:0!important}.lesson-media-uploader>button{color:var(--danger);cursor:pointer;background:0 0;border:0;font-size:11px}.lesson-block-media{margin:18px 0}.lesson-block-media img{object-fit:contain;border:1px solid var(--border);background:var(--surface2);border-radius:12px;width:100%;max-height:480px;display:block}.lesson-block-media figcaption{color:var(--text3);text-align:center;margin-top:7px;font-size:11px}.lesson-block-audio audio{width:100%}.lesson-ai-audio-disclosure{color:var(--text3);flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0 0;font-size:10px;line-height:1.4;display:flex}.lesson-ai-audio-disclosure>span{color:var(--warning);align-items:center;gap:4px;display:inline-flex}.lesson-reference-table-wrap{border:1px solid var(--border);border-radius:12px;margin-top:18px;overflow-x:auto}.lesson-reference-table{border-collapse:collapse;width:100%;color:var(--text2);font-size:13px}.lesson-reference-table th{background:var(--surface2);color:var(--text);text-align:left;padding:11px 13px}.lesson-reference-table td{border-top:1px solid var(--border);vertical-align:top;padding:10px 13px}.lesson-substitution-drill{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));background:color-mix(in srgb, var(--accent) 6%, var(--surface));border-radius:12px;margin-top:18px;padding:16px}.lesson-substitution-drill blockquote{color:var(--text);margin:8px 0 16px;font:400 24px/1.25 Fraunces,Georgia,serif}.lesson-substitution-drill ol{gap:8px;margin:0;padding-left:23px;display:grid}.lesson-substitution-drill li{color:var(--text2);padding-left:4px}.lesson-substitution-drill details{color:var(--text3);margin-top:5px;font-size:11px}.lesson-substitution-drill details p{color:var(--success);margin:4px 0 0;font-size:12px}.student-pedagogy-workspace{border:1px solid var(--border);background:var(--surface);border-radius:18px;gap:16px;margin:20px 0 28px;padding:20px;display:grid}.student-pedagogy-workspace>header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.student-pedagogy-workspace>header h2{color:var(--text);margin:5px 0 6px;font:400 28px/1.05 Fraunces,Georgia,serif}.student-pedagogy-workspace>header p:last-child{color:var(--text3);margin:0;font-size:12px}.student-pedagogy-workspace>header>span{border:1px solid var(--border);color:var(--text2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:11px;display:inline-flex}.student-pedagogy-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:14px;display:grid}.student-grammar-checklist,.student-personal-lesson,.student-private-observations,.student-pedagogy-empty{border:1px solid var(--border);background:var(--surface2);border-radius:14px}.student-grammar-summary{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;display:grid}.student-grammar-summary div{gap:2px;padding:14px;display:grid}.student-grammar-summary div+div{border-left:1px solid var(--border)}.student-grammar-summary strong{color:var(--text);font:400 23px/1 Fraunces,Georgia,serif}.student-grammar-summary span{color:var(--text3);font-size:10px}.student-grammar-checklist article{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 132px;align-items:center;gap:12px;padding:11px 14px;display:grid}.student-grammar-checklist article:last-child{border-bottom:0}.student-grammar-checklist article strong{color:var(--text);font-size:12px}.student-grammar-checklist article p{color:var(--text3);margin:3px 0 0;font-size:10px;line-height:1.4}.student-grammar-checklist select,.student-personal-lesson :is(select,textarea,input){box-sizing:border-box;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);font:inherit;border-radius:8px;font-size:11px}.student-grammar-checklist select,.student-personal-lesson :is(select,input){min-height:36px;padding:0 9px}.student-personal-lesson{align-content:start;gap:11px;padding:16px;display:grid}.student-personal-lesson h3,.student-private-observations h3{color:var(--text);align-items:center;gap:7px;margin:0;font:400 20px/1.1 Fraunces,Georgia,serif;display:flex}.student-personal-lesson>p:not(.brand-kicker),.student-private-observations>div>p:last-child{color:var(--text3);margin:0;font-size:11px;line-height:1.5}.student-personal-lesson label{color:var(--text3);gap:5px;font-size:10px;display:grid}.student-personal-lesson textarea{resize:vertical;min-height:95px;padding:10px;line-height:1.45}.student-personal-lesson button,.student-private-observations>button{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:var(--accent-deep);min-height:39px;color:var(--on-deep-accent);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:7px;font-weight:700;display:inline-flex}.student-personal-lesson button:disabled,.student-private-observations>button:disabled{opacity:.55;cursor:not-allowed}.student-private-observations{gap:12px;padding:16px;display:grid}.student-private-observations>button{justify-self:end;padding:0 14px}.student-pedagogy-empty{color:var(--warning);padding:18px;font-size:12px}.form-success{color:var(--success);align-items:center;gap:7px;margin:0;font-size:12px;display:flex}.lesson-block-private-field{border:1px dashed color-mix(in srgb, var(--warning) 38%, var(--border));background:color-mix(in srgb, var(--warning) 5%, transparent);border-radius:10px;padding:10px}.lesson-block-add{border-color:color-mix(in srgb, var(--accent) 42%, var(--border));width:fit-content;color:var(--accent)}.lesson-block-add-actions{flex-wrap:wrap;gap:8px;display:flex}.lesson-block-add-listening{border-color:color-mix(in srgb, var(--accent) 42%, var(--border));color:var(--accent)}.lesson-ai-listening{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--border));background:color-mix(in srgb, var(--accent) 5%, var(--surface));border-radius:12px;gap:12px;padding:14px;display:grid}.lesson-ai-listening-heading{color:var(--accent);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.lesson-ai-listening-heading strong{color:var(--text);font-size:13px}.lesson-ai-listening-heading p{color:var(--text3);margin:3px 0 0;font-size:11px;line-height:1.5}.lesson-ai-listening-heading>span{border:1px solid var(--border);background:var(--surface2);min-height:30px;color:var(--text2);border-radius:999px;align-items:center;gap:5px;padding:0 9px;font:10px/1 DM Mono,monospace;display:inline-flex}.lesson-ai-listening-heading>span[data-visible=true]{border-color:color-mix(in srgb, var(--success) 35%, var(--border));background:color-mix(in srgb, var(--success) 9%, var(--surface));color:var(--success)}.lesson-ai-listening-actions{flex-wrap:wrap;gap:8px;display:flex}.lesson-ai-listening-actions button{border:1px solid var(--border);background:var(--surface2);min-height:40px;color:var(--text);font:inherit;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:12px;display:inline-flex}.lesson-ai-listening-actions button.is-publish{border-color:color-mix(in srgb, var(--success) 35%, var(--border));color:var(--success)}.lesson-ai-listening-actions button.is-hide{border-color:color-mix(in srgb, var(--warning) 35%, var(--border));color:var(--warning)}.lesson-ai-listening-actions button:disabled{opacity:.45;cursor:not-allowed}.lesson-ai-listening audio{width:100%}.lesson-ai-listening>small{color:var(--text3);font-size:10px;line-height:1.5}@keyframes listening-spin{to{transform:rotate(360deg)}}.portal-library-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:17px;display:flex}.portal-library-heading h2{color:var(--text);letter-spacing:-.05em;margin-top:6px;font:400 clamp(27px,3vw,37px)/1 Fraunces,Georgia,serif}.portal-library-heading>p{max-width:38ch;color:var(--text3);font-size:12px;line-height:1.5}.content-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.content-category-card{border:1px solid var(--border);background:var(--surface);min-height:342px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:18px;flex-direction:column;padding:0;transition:transform .17s,border-color .17s,box-shadow .17s;display:flex;overflow:hidden}.content-category-card:hover{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));transform:translateY(-3px);box-shadow:0 16px 34px #0214161f}.content-category-card:focus-visible,.content-category-back:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.content-category-art{background:#12383a;flex:none;min-height:160px;position:relative;overflow:hidden}.content-category-art-image{object-fit:cover;transition:transform .42s}.content-category-art-shade{pointer-events:none;background:linear-gradient(#0000 48%,#03181a47);position:absolute;inset:0}.content-category-card:hover .content-category-art-image,.platform-material-card:hover .content-category-art-image{transform:scale(1.025)}.content-category-art.is-compact{border-radius:13px;width:76px;min-height:76px}.content-category-card-copy{flex-direction:column;flex:1;padding:17px 17px 11px;display:flex}.content-category-count{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font:9px/1 DM Mono,monospace}.content-category-card-copy strong{color:var(--text);letter-spacing:-.04em;margin-top:13px;font:400 24px/1 Fraunces,Georgia,serif}.content-category-card-copy>span:last-child{color:var(--text3);margin-top:8px;font-size:12px;line-height:1.48}.content-category-card-footer{color:var(--text2);justify-content:space-between;align-items:center;gap:10px;padding:12px 17px 15px;font-size:11px;display:flex}.content-category-back{min-height:40px;color:var(--text2);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-bottom:13px;font-size:12px;display:inline-flex}.content-category-selected{border:1px solid var(--border);background:var(--surface);border-radius:16px;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:15px;margin-bottom:17px;padding:14px;display:grid}.content-category-selected h2,.content-category-selected h3{color:var(--text);letter-spacing:-.045em;margin:4px 0;font:400 28px/1 Fraunces,Georgia,serif}.content-category-selected p:last-child{color:var(--text3);font-size:12px}.content-category-selected>span{color:var(--text3);font-size:11px}.content-item-card{overflow:hidden;padding:0!important}.content-item-card>.content-category-art{border-radius:0;width:100%;min-height:132px}.content-item-card>:not(.content-category-art){margin-inline:17px}.content-item-card .portal-lesson-card-top,.content-item-card h2{margin-top:15px}.content-item-card-action{border-top:1px solid var(--border);color:var(--accent);justify-content:space-between;align-items:center;padding:14px 0 16px;font-size:11px;display:flex;margin-top:auto!important}@media (max-width:1050px){.content-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.legacy-archive-hero{grid-template-columns:44px minmax(0,1fr);padding:22px 18px}.legacy-archive-icon{border-radius:13px;width:44px;height:44px}.legacy-archive-hero>strong{text-align:left;grid-column:2;min-width:0}.legacy-archive-list{grid-template-columns:1fr}.legacy-archive-card{min-height:128px}.lesson-blocks{grid-template-columns:1fr}.lesson-block-tabs{flex-direction:row;max-height:none;overflow:auto hidden}.lesson-block-tabs button{min-width:max-content}.lesson-active-block{min-height:420px}.lesson-active-block>header{grid-template-columns:42px minmax(0,1fr)}.lesson-block-duration{grid-column:2}.lesson-block-editor-heading,.portal-library-heading{flex-direction:column;align-items:flex-start}.lesson-block-editor-fields{grid-template-columns:1fr}.lesson-block-editor-wide{grid-column:auto}.lesson-media-uploader{grid-template-columns:auto minmax(0,1fr)}.lesson-media-uploader :is(.lesson-upload-button,button){grid-column:1/-1}.lesson-ai-listening-heading{grid-template-columns:auto minmax(0,1fr)}.lesson-ai-listening-heading>span{grid-column:1/-1;width:fit-content}.lesson-ai-listening-actions button{width:100%}.student-pedagogy-workspace>header{flex-direction:column}.student-pedagogy-grid,.content-category-grid{grid-template-columns:1fr}.content-category-card{min-height:290px}.content-category-selected{grid-template-columns:56px minmax(0,1fr)}.content-category-selected>.content-category-art{width:56px;min-height:56px}.content-category-selected>span{grid-column:2}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.privacy-toggle{border:1px solid var(--border);min-height:40px;color:var(--text2);cursor:pointer;font:inherit;text-align:left;background:0 0;border-radius:9px;align-items:center;gap:9px;margin:0 6px;padding:0 10px;font-size:12px;display:flex}.presentation-controls-position span:first-child{letter-spacing:.08em;text-transform:uppercase;margin-right:2px;font-size:9px}.presentation-controls-position strong{color:var(--text);font-size:12px}.privacy-toggle:hover{border-color:var(--border-strong,var(--border2));color:var(--text)}.privacy-toggle[aria-pressed=true]{border-color:color-mix(in srgb, var(--accent) 42%, var(--border));background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent2)}.privacy-toggle--compact{border-radius:50%;place-items:center;width:42px;min-width:42px;height:42px;margin:0 auto;padding:0;display:grid}.privacy-mask{vertical-align:baseline;max-width:100%;display:inline-grid}.privacy-mask__content,.privacy-mask__placeholder{grid-area:1/1}.privacy-mask__placeholder{letter-spacing:.12em;display:none}html[data-privacy-mode=hidden] .privacy-mask__content{visibility:hidden}html[data-privacy-mode=hidden] .privacy-mask__placeholder{display:inline}html[data-privacy-mode=hidden] .privacy-collection-overflow{display:none!important}html[data-privacy-mode=hidden] .privacy-redact{text-shadow:0 0 9px;filter:blur(7px);-webkit-user-select:none;user-select:none;color:#0000!important}html[data-privacy-mode=hidden] .privacy-chart{position:relative;overflow:hidden}html[data-privacy-mode=hidden] .privacy-chart>*{visibility:hidden}html[data-privacy-mode=hidden] .privacy-chart:after{content:"Dados protegidos no modo demonstração";color:var(--text2);background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--accent) 7%, var(--surface)) 0 12px, var(--surface) 12px 24px);letter-spacing:.02em;text-align:center;place-items:center;padding:24px;font-size:12px;display:grid;position:absolute;inset:0}.schedule-month{width:100%;max-width:100%}.app-main.workspace-main-full{padding:0!important}.academy-usage-section{margin-top:1.25rem}.academy-usage-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:0 0 1rem;display:grid}.academy-usage-kpis>div{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:1rem}.academy-usage-kpis dt,.academy-usage-kpis span{color:var(--text2);font-size:.75rem;display:block}.academy-usage-kpis dd{color:var(--text);font-family:var(--font-display);margin:.35rem 0;font-size:2rem}.academy-usage-table-wrap{border:1px solid var(--border);background:var(--surface);border-radius:14px;overflow-x:auto}.academy-usage-table{border-collapse:collapse;width:100%;min-width:720px;color:var(--text)}.academy-usage-table th,.academy-usage-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:.9rem 1rem}.academy-usage-table th{color:var(--text2);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.academy-usage-table td>span,.academy-usage-table td>small{color:var(--text2);margin-top:.25rem;font-size:.75rem;display:block}.academy-usage-progress{background:color-mix(in srgb, var(--text2) 18%, transparent);border-radius:999px;width:100%;height:7px;overflow:hidden}.academy-usage-progress>span{border-radius:inherit;background:var(--accent);height:100%;display:block}.portal-academy-context{color:var(--text2);grid-column:1/-1;margin:.25rem 0 0;font-size:.8rem}.lesson-listening-sequence{gap:.65rem;display:grid}.lesson-listening-sequence>div:first-child{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.lesson-listening-sequence span,.lesson-ai-listening-progress{color:var(--text2);font-size:.78rem}.lesson-listening-sequence audio{width:100%}.lesson-listening-activate{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--surface));min-height:44px;color:var(--text);border-radius:999px;padding:.6rem 1rem;font-weight:700}.lesson-listening-activate:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 42%, transparent);outline-offset:2px}.lesson-listening-waiting{border:1px dashed var(--border);color:var(--text2);background:color-mix(in srgb, var(--surface) 88%, transparent);border-radius:12px;padding:1rem 1.1rem}.lesson-listening-sequence-actions{gap:.5rem;display:flex}.lesson-listening-sequence-actions button{border:1px solid var(--border);background:var(--surface);min-height:36px;color:var(--text);border-radius:8px;padding:.4rem .75rem}@media (max-width:820px){.academy-usage-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.academy-usage-kpis{grid-template-columns:1fr}}.listening-presentation{color:var(--text);gap:18px;display:grid}.listening-presentation-toolbar,.listening-presentation-navigation,.listening-presentation-audio-heading,.listening-presentation-private-label{align-items:center;display:flex}.listening-presentation-toolbar{justify-content:space-between;gap:16px}.listening-presentation-toolbar .brand-kicker{margin:0 0 6px}.listening-presentation-toolbar strong{font:500 14px/1.2 Geist,sans-serif}.listening-presentation-toolbar-actions{gap:8px;display:flex}.listening-tool-button,.listening-generate-button,.listening-release-button,.listening-transcript-button,.listening-presentation-navigation>button{border:1px solid var(--border2);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;font:700 12px/1 Geist,sans-serif;transition:transform .15s,border-color .15s,background .15s;display:inline-flex}.listening-tool-button,.listening-presentation-navigation>button{padding:0 16px}.listening-tool-button:not(:disabled):hover,.listening-generate-button:not(:disabled):hover,.listening-release-button:not(:disabled):hover,.listening-transcript-button:not(:disabled):hover,.listening-presentation-navigation>button:not(:disabled):hover{border-color:var(--accent);transform:translateY(-1px)}.listening-tool-button:focus-visible,.listening-generate-button:focus-visible,.listening-release-button:focus-visible,.listening-transcript-button:focus-visible,.listening-presentation-navigation>button:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 42%, transparent);outline-offset:2px}.listening-tool-button:disabled,.listening-generate-button:disabled,.listening-release-button:disabled,.listening-transcript-button:disabled,.listening-presentation-navigation>button:disabled{cursor:not-allowed;opacity:.45}.listening-presentation-progress{background:color-mix(in srgb, var(--text2) 14%, transparent);border-radius:999px;height:4px;overflow:hidden}.listening-presentation-progress>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .25s;display:block}.listening-presentation-card{border:1px solid var(--border);background:var(--surface2);border-radius:20px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);display:grid;overflow:hidden;box-shadow:0 18px 55px -42px #000000e6}.listening-presentation-audio,.listening-presentation-transcript{flex-direction:column;justify-content:center;min-width:0;padding:clamp(24px,3.5vw,40px);display:flex}.listening-presentation-audio{background:radial-gradient(circle at 12% 0, color-mix(in srgb, var(--accent) 16%, transparent), transparent 62%), var(--surface2);gap:22px}.listening-presentation-audio-heading{gap:13px}.listening-presentation-icon{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--surface));width:48px;height:48px;color:var(--accent2);border-radius:15px;flex:none;place-items:center;display:grid}[data-theme=light] .listening-presentation-icon{color:var(--accent-deep)}.listening-presentation-audio-heading p,.listening-presentation-audio-heading strong{margin:0}.listening-presentation-audio-heading p{color:var(--text3);margin-bottom:5px;font-size:11px}.listening-presentation-audio-heading strong{font-size:14px}.listening-presentation-audio audio{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;width:100%}@media (prefers-color-scheme:dark){.listening-presentation-audio audio{--lightningcss-light: ;--lightningcss-dark:initial}}.listening-generate-button{border-color:var(--accent);background:var(--accent);width:100%;color:var(--on-accent);padding:0 18px}.listening-release-button,.listening-transcript-button{align-self:flex-start;padding:0 16px}.listening-release-button[data-released=true],.listening-transcript-button[data-released=true]{border-color:color-mix(in srgb, var(--success) 58%, var(--border));background:color-mix(in srgb, var(--success) 13%, var(--surface));color:var(--success)}.listening-presentation-transcript{border-left:1px solid var(--border);background:var(--surface);gap:18px}.listening-presentation-private-label{color:var(--warning);letter-spacing:.08em;text-transform:uppercase;gap:7px;font:700 10px/1 DM Mono,monospace}.listening-presentation-transcript>p,.listening-dialogue-turn>p{color:var(--text);margin:0;font:400 clamp(21px,2vw,28px)/1.55 Fraunces,Georgia,serif}.listening-dialogue-turn{border:1px solid var(--border);border-left:4px solid var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--surface2));border-radius:0 16px 16px 0;gap:10px;padding:18px 20px;display:grid}.listening-dialogue-turn[data-gender=male]{border-left-color:color-mix(in srgb, #4f8cff 82%, var(--accent));background:color-mix(in srgb, #4f8cff 7%, var(--surface2))}.listening-dialogue-turn>strong,.lesson-listening-transcript>strong{color:var(--accent2);letter-spacing:.08em;text-transform:uppercase;font:750 11px/1 DM Mono,monospace}[data-theme=light] .listening-dialogue-turn>strong,[data-theme=light] .lesson-listening-transcript>strong{color:var(--accent-deep)}.listening-presentation-translation{border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--surface2));border-radius:0 12px 12px 0;padding:14px 16px}.listening-presentation-translation>span{color:var(--accent2);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font:700 10px/1 DM Mono,monospace;display:block}[data-theme=light] .listening-presentation-translation>span{color:var(--accent-deep)}.listening-presentation-translation>p{color:var(--text2);margin:0;font-size:14px;line-height:1.6}.listening-presentation-transcript>small{color:var(--text3);font-size:11px;line-height:1.5}.listening-presentation-navigation{justify-content:space-between;gap:14px}.listening-presentation-navigation>div{flex-wrap:wrap;justify-content:center;gap:7px;display:flex}.listening-presentation-navigation>div span{border:1px solid var(--border);color:var(--text3);border-radius:999px;padding:7px 10px;font:600 10px/1 DM Mono,monospace}.listening-presentation-navigation>div span[data-complete=true]{border-color:color-mix(in srgb, var(--success) 44%, var(--border));color:var(--success)}.listening-evidence{border:1px solid var(--border);background:var(--surface);border-radius:16px;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);align-items:center;gap:18px;padding:18px 20px;display:grid}.listening-evidence h3{color:var(--text);margin:4px 0 5px;font:450 19px/1.2 Fraunces,Georgia,serif}.listening-evidence p{color:var(--text3);margin:0;font-size:12px;line-height:1.5}.listening-evidence p strong{color:var(--text);font-size:17px}.listening-rating{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.listening-rating button{border:1px solid var(--border2);background:var(--surface2);min-height:42px;color:var(--text2);cursor:pointer;border-radius:10px;padding:8px 10px;font-size:11px;font-weight:750}.listening-rating button:hover,.listening-rating button:focus-visible{border-color:var(--accent);color:var(--text)}.listening-rating button:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 35%, transparent);outline-offset:2px}.listening-rating button[data-selected=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 15%, var(--surface));color:var(--text)}.listening-rating button:disabled{cursor:wait;opacity:.62}@media (max-width:760px){.listening-evidence{grid-template-columns:1fr}.listening-rating{grid-template-columns:repeat(2,minmax(0,1fr))}}.listening-presentation-empty{text-align:center;place-content:center;justify-items:center;gap:9px;min-height:260px;display:grid}.listening-presentation-empty svg{color:var(--accent)}.listening-presentation-empty h3{color:var(--text);margin:4px 0 0}.listening-presentation-empty p{color:var(--text3);margin:0}.lesson-listening-transcript{border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--surface));border-radius:0 12px 12px 0;padding:18px 20px}.lesson-listening-transcript span{color:var(--accent2);letter-spacing:.08em;text-transform:uppercase;font:700 10px/1 DM Mono,monospace}[data-theme=light] .lesson-listening-transcript span{color:var(--accent-deep)}.lesson-listening-transcript p{color:var(--text);margin:10px 0 0;font-size:clamp(18px,1.8vw,24px);line-height:1.55}.lesson-listening-transcript[data-gender=male]{background:color-mix(in srgb, #4f8cff 8%, var(--surface));border-left-color:#4f8cff}.lesson-listening-transcript>strong{margin-top:12px;display:block}.is-spinning{animation:.8s linear infinite listening-spin}@media (max-width:820px){.listening-presentation-card{grid-template-columns:1fr}.listening-presentation-transcript{border-top:1px solid var(--border);border-left:0}}@media (max-width:560px){.listening-presentation-toolbar,.listening-presentation-navigation{flex-direction:column;align-items:stretch}.listening-tool-button,.listening-presentation-navigation>button{width:100%}.listening-presentation-audio,.listening-presentation-transcript{padding:22px 18px}}.portal-today-action{color:#f7fbfa;background:linear-gradient(125deg,#123f40,#0b2b2e 70%,#132a2c);border:1px solid #b8f0e547;border-radius:20px;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:20px;margin-bottom:22px;padding:24px;display:grid;box-shadow:0 24px 55px -38px #000c}.portal-today-icon{color:#b8f0e5;background:#b8f0e514;border:1px solid #b8f0e552;border-radius:16px;place-items:center;width:52px;height:52px;display:grid}.portal-today-action h2{color:#fffdf8;letter-spacing:-.045em;margin:5px 0 7px;font:400 clamp(25px,3vw,36px)/1 Fraunces,Georgia,serif}.portal-today-action p:not(.dashboard-section-label){color:#f7fbfab8;max-width:70ch;font-size:13px;line-height:1.55}.portal-today-action>div:last-child{justify-items:end;gap:10px;display:grid}.portal-today-action>div:last-child>span{color:#f7fbfa94;font-size:11px}.portal-today-action a{color:#082628;background:#b8f0e5;border-radius:10px;align-items:center;gap:8px;min-height:42px;padding:0 15px;font-size:12px;font-weight:850;text-decoration:none;display:inline-flex}.portal-today-action a:hover{background:#d5fbf3}.portal-today-action a:focus-visible{outline-offset:3px;outline:3px solid #fff}.portal-stat-grid--compact .portal-stat-card{min-height:112px}.portal-stat-grid--compact .portal-stat-card strong{margin-top:14px;font-size:clamp(18px,2vw,26px)}.portal-learning-cycle{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:28px;display:grid}.portal-cycle-card{border:1px solid var(--border);background:var(--surface);border-radius:20px;min-height:360px;padding:25px}.portal-cycle-card>header{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;padding-bottom:18px;display:flex}.portal-cycle-card>header>svg{border:1px solid var(--border2);width:38px;height:38px;color:var(--accent);border-radius:12px;padding:9px}.portal-cycle-card h2{color:var(--text);letter-spacing:-.04em;margin-top:5px;font:400 25px/1.05 Fraunces,Georgia,serif}.portal-cycle-card>strong{color:var(--text);margin:20px 0 8px;font-size:14px;display:block}.portal-cycle-card>p{color:var(--text2);margin-top:18px;font-size:13px;line-height:1.6}.portal-cycle-card>ul{gap:7px;margin:18px 0 0;list-style:none;display:grid}.portal-cycle-card>ul li{border:1px solid var(--border);color:var(--text);border-radius:10px;justify-content:space-between;gap:12px;padding:10px 12px;font-size:12px;display:flex}.portal-cycle-card>ul span{color:var(--text3)}.portal-cycle-card>a{color:var(--accent2);margin-top:18px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}[data-theme=light] .portal-cycle-card>a{color:#075a57}.portal-cycle-actions{flex-wrap:wrap;gap:9px;margin-top:19px;display:flex}.portal-cycle-actions a{border:1px solid var(--border2);min-height:39px;color:var(--text);border-radius:9px;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.portal-cycle-actions a:first-child{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.lesson-reflection{border-top:1px solid var(--border);margin-top:22px;padding-top:20px}.lesson-reflection h3{color:var(--text);margin:5px 0 13px;font-size:14px}.lesson-reflection-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.lesson-reflection-options button{border:1px solid var(--border);background:var(--surface2);min-height:70px;color:var(--text2);text-align:left;cursor:pointer;border-radius:11px;align-items:flex-start;gap:8px;padding:11px;display:flex}.lesson-reflection-options button:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--text)}.lesson-reflection-options button[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--surface));color:var(--text)}.lesson-reflection-options button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lesson-reflection-options button:disabled{cursor:wait;opacity:.68}.lesson-reflection-options span,.lesson-reflection-options strong,.lesson-reflection-options small{display:block}.lesson-reflection-options strong{font-size:11px}.lesson-reflection-options small{color:var(--text3);margin-top:4px;font-size:9px;line-height:1.35}.lesson-reflection-message{min-height:18px;color:var(--accent2)!important;margin-top:8px!important;font-size:10px!important}.portal-progress-story{border:1px solid var(--border);background:linear-gradient(125deg, color-mix(in srgb, var(--accent) 7%, var(--surface)), var(--surface));border-radius:20px;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:24px;margin-bottom:28px;padding:26px;display:grid}.portal-progress-story h2,.portal-progress-narrative h2,.portal-activity-trend h2,.portal-milestones h2,.portal-progress-context h2{color:var(--text);letter-spacing:-.04em;margin:5px 0 11px;font:400 28px/1.05 Fraunces,Georgia,serif}.portal-progress-story>div:first-child>p:last-of-type,.portal-progress-narrative p,.portal-progress-context p{color:var(--text2);font-size:13px;line-height:1.65}.portal-progress-story>div:first-child>a{color:var(--accent2);margin-top:15px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}[data-theme=light] .portal-progress-story>div:first-child>a{color:#075a57}.portal-milestone-strip{gap:8px;display:grid}.portal-milestone-strip article{border:1px solid var(--border);background:var(--surface2);border-radius:11px;align-items:center;gap:10px;padding:11px 12px;display:flex}.portal-milestone-strip article>svg{color:var(--text3)}.portal-milestone-strip article[data-achieved=true]{border-color:color-mix(in srgb, var(--success) 40%, var(--border))}.portal-milestone-strip article[data-achieved=true]>svg{color:var(--success)}.portal-milestone-strip strong,.portal-milestone-strip span{display:block}.portal-milestone-strip strong{color:var(--text);font-size:11px}.portal-milestone-strip span{color:var(--text3);margin-top:3px;font-size:9px}.student-learning-preferences{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.student-learning-preferences label{color:var(--text2);gap:7px;font-size:11px;display:grid}.student-learning-preferences label>span{align-items:center;gap:6px;display:flex}.student-learning-preferences select,.student-learning-preferences input[type=time]{border:1px solid var(--border);background:var(--surface2);min-height:42px;color:var(--text);font:inherit;border-radius:9px;outline:0;padding:0 10px}.student-learning-preferences select:focus,.student-learning-preferences input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.student-learning-toggle{border:1px solid var(--border);background:var(--surface2);border-radius:9px;justify-content:space-between;align-items:center;min-height:42px;padding:0 11px;display:flex!important}.student-learning-toggle input{width:18px;height:18px;accent-color:var(--accent)}.portal-progress-heading{margin-bottom:24px}.portal-progress-narrative{background:linear-gradient(125deg,#123f40,#0b2b2e 72%);border:1px solid #b8f0e53d;border-radius:20px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;padding:27px;display:flex}.portal-progress-narrative h2{color:#fffdf8}.portal-progress-narrative p{color:#f7fbfab8;max-width:76ch}.portal-progress-narrative>span{color:#ffffffc2;border:1px solid #ffffff38;border-radius:999px;flex:none;padding:9px 12px;font-size:11px}.portal-progress-narrative>span[data-complete=true]{color:#8ff0a8;border-color:#30d1588c}.portal-progress-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:20px;display:grid}.portal-progress-kpis article{border:1px solid var(--border);background:var(--surface);border-radius:16px;min-height:150px;padding:18px}.portal-progress-kpis svg{color:var(--accent)}.portal-progress-kpis span,.portal-progress-kpis strong,.portal-progress-kpis small{display:block}.portal-progress-kpis span{color:var(--text3);letter-spacing:.09em;text-transform:uppercase;margin-top:20px;font:9px/1.2 DM Mono,monospace}.portal-progress-kpis strong{color:var(--text);margin-top:8px;font:400 26px/1 Fraunces,Georgia,serif}.portal-progress-kpis small{color:var(--text3);margin-top:7px;font-size:10px;line-height:1.4}.portal-activity-trend,.portal-milestones,.portal-progress-context{border:1px solid var(--border);background:var(--surface);border-radius:18px;margin-bottom:20px;padding:24px}.portal-activity-trend>header{justify-content:space-between;align-items:end;gap:20px;display:flex}.portal-activity-trend>header>span{color:var(--text3);font-size:11px}.portal-activity-trend>div{border-bottom:1px solid var(--border);background:repeating-linear-gradient(to bottom, transparent 0 40px, color-mix(in srgb, var(--border) 50%, transparent) 41px);grid-template-columns:repeat(6,1fr);align-items:end;gap:12px;height:185px;margin:22px 0 13px;padding-top:22px;display:grid}.portal-activity-trend>div>div{grid-template-rows:18px 1fr 22px;place-items:end center;height:100%;display:grid}.portal-activity-trend strong{color:var(--text3);font-size:10px}.portal-activity-trend i{background:linear-gradient(#64d4c6,#197b74);border-radius:7px 7px 0 0;width:min(40px,64%);min-height:0}.portal-activity-trend span{color:var(--text3);text-transform:capitalize;padding-top:7px;font-size:10px}.portal-activity-trend>p{color:var(--text3);font-size:10px;line-height:1.5}.portal-milestones>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:17px;display:grid}.portal-milestones article{border:1px solid var(--border);background:var(--surface2);border-radius:13px;gap:10px;min-height:132px;padding:15px;display:flex}.portal-milestones article>svg{color:var(--text3);flex:none}.portal-milestones article[data-achieved=true]{border-color:color-mix(in srgb, var(--success) 38%, var(--border))}.portal-milestones article[data-achieved=true]>svg{color:var(--success)}.portal-milestones strong{color:var(--text);font-size:12px}.portal-milestones article p{color:var(--text3);margin:7px 0;font-size:10px;line-height:1.4}.portal-milestones article span{color:var(--accent2);font-size:9px;font-weight:800}[data-theme=light] .portal-milestones article span{color:#075a57}.student-engagement-signal{border:1px solid var(--border);background:#ffffff0a;border-radius:10px;gap:3px;width:fit-content;margin-top:14px;padding:9px 11px;display:grid}.student-engagement-signal span{color:var(--text);font-size:11px;font-weight:850}.student-engagement-signal small{color:var(--text3);font-size:9px}.student-engagement-signal[data-signal=consistent]{border-color:color-mix(in srgb, var(--success) 48%, var(--border))}.student-engagement-signal[data-signal=attention]{border-color:color-mix(in srgb, var(--warning) 55%, var(--border))}.student-engagement-signal[data-signal=inactive]{border-color:color-mix(in srgb, var(--danger) 55%, var(--border))}.student-encouragement{border:1px solid var(--border);background:var(--surface);border-radius:18px;margin-top:20px;padding:24px}.student-encouragement>header{align-items:flex-start;gap:12px;display:flex}.student-encouragement>header>svg{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));width:40px;height:40px;color:var(--accent);border-radius:12px;padding:9px}.student-encouragement h2{color:var(--text);margin:4px 0 5px;font:400 24px/1.05 Fraunces,Georgia,serif}.student-encouragement header p:last-child{color:var(--text3);font-size:11px}.student-encouragement-suggestions{flex-wrap:wrap;gap:7px;margin:18px 0;display:flex}.student-encouragement-suggestions button{border:1px solid var(--border);background:var(--surface2);min-height:36px;color:var(--text2);text-align:left;cursor:pointer;border-radius:999px;padding:7px 10px;font-size:10px}.student-encouragement-suggestions button:hover{border-color:var(--accent);color:var(--text)}.student-encouragement>label{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font:9px/1.2 DM Mono,monospace;display:block}.student-encouragement textarea{border:1px solid var(--border);background:var(--surface2);width:100%;color:var(--text);font:inherit;resize:vertical;border-radius:10px;outline:0;padding:12px;line-height:1.55}.student-encouragement textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent)}.student-encouragement>div:last-of-type{justify-content:space-between;align-items:center;gap:12px;margin-top:9px;display:flex}.student-encouragement>div:last-of-type>span{color:var(--text3);font-size:9px}.student-encouragement>div:last-of-type>button{border:1px solid var(--accent);background:var(--accent);min-height:40px;color:var(--on-accent);cursor:pointer;border-radius:9px;align-items:center;gap:7px;padding:0 13px;font-size:11px;font-weight:850;display:inline-flex}.student-encouragement>div:last-of-type>button:disabled{cursor:not-allowed;opacity:.55}.student-encouragement>p:last-child{min-height:18px;color:var(--accent2);margin-top:7px;font-size:10px}@media (max-width:1000px){.portal-progress-kpis,.portal-milestones>div{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.portal-today-action{grid-template-columns:46px minmax(0,1fr);padding:20px}.portal-today-action>div:last-child{grid-column:1/-1;justify-items:stretch}.portal-today-action>div:last-child>span{display:none}.portal-today-action a{justify-content:center}.portal-learning-cycle,.portal-progress-story{grid-template-columns:1fr}.portal-cycle-card{min-height:auto}.lesson-reflection-options{grid-template-columns:1fr}.lesson-reflection-options button{min-height:58px}.portal-progress-narrative{flex-direction:column;align-items:flex-start}.portal-progress-kpis,.portal-milestones>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.student-learning-preferences,.portal-progress-kpis,.portal-milestones>div{grid-template-columns:1fr}.portal-stat-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.portal-stat-grid--compact .portal-stat-card{min-height:104px;padding:15px}.portal-cycle-card,.portal-progress-story,.portal-progress-narrative,.portal-activity-trend,.portal-milestones,.portal-progress-context{padding:19px}.portal-activity-trend>div{gap:5px}.portal-activity-trend i{width:52%}}.hover\:underline:hover{text-decoration-line:underline}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:.75rem;height:.75rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:.875rem;height:.875rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}
