@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{color-scheme:light;--background: 218 30% 95%;--foreground: 222 47% 13%;--card: 220 35% 97%;--card-foreground: 222 47% 13%;--popover: 220 35% 97%;--popover-foreground: 222 47% 13%;--primary: 209 84% 43%;--primary-foreground: 210 40% 98%;--secondary: 255 62% 60%;--secondary-foreground: 255 78% 98%;--muted: 216 26% 91%;--muted-foreground: 219 14% 39%;--accent: 211 78% 91%;--accent-foreground: 211 84% 27%;--destructive: 0 72% 48%;--destructive-foreground: 0 0% 98%;--border: 216 20% 82%;--input: 216 20% 84%;--ring: 209 84% 43%;--success: 153 58% 37%;--success-foreground: 152 68% 96%;--warning: 36 87% 45%;--warning-foreground: 40 95% 96%;--info: 209 84% 43%;--info-foreground: 210 40% 98%;--surface: 218 32% 94%;--surface-subtle: 218 28% 91%;--sidebar: 220 34% 96%;--sidebar-foreground: 222 47% 13%;--overlay: 222 47% 8%;--chart-axis: 219 14% 44%;--chart-grid: 216 20% 84%;--chart-primary: 209 84% 43%;--chart-secondary: 255 62% 60%;--chart-success: 153 58% 37%;--chart-warning: 36 87% 45%;--chart-danger: 0 72% 48%;--chart-track: 217 22% 86%;--radius: 8px;--shadow-card: 0 1px 2px hsl(222 47% 13% / .04), 0 10px 24px hsl(222 47% 13% / .055);--shadow-panel: 0 18px 42px hsl(222 47% 13% / .07)}[data-theme=dark]{color-scheme:dark;--background: 222 34% 11%;--foreground: 218 28% 94%;--card: 222 30% 14%;--card-foreground: 218 28% 94%;--popover: 222 30% 14%;--popover-foreground: 218 28% 94%;--primary: 207 82% 58%;--primary-foreground: 222 47% 11%;--secondary: 255 64% 68%;--secondary-foreground: 255 45% 12%;--muted: 220 25% 18%;--muted-foreground: 218 16% 73%;--accent: 216 32% 20%;--accent-foreground: 210 40% 96%;--destructive: 0 70% 62%;--destructive-foreground: 0 0% 98%;--border: 219 22% 24%;--input: 219 22% 24%;--ring: 207 82% 58%;--success: 153 58% 48%;--success-foreground: 154 38% 10%;--warning: 38 86% 58%;--warning-foreground: 38 40% 10%;--info: 207 82% 58%;--info-foreground: 222 47% 11%;--surface: 222 32% 12%;--surface-subtle: 222 27% 17%;--sidebar: 222 32% 13%;--sidebar-foreground: 218 28% 94%;--overlay: 222 47% 8%;--chart-axis: 218 16% 73%;--chart-grid: 219 22% 24%;--chart-primary: 207 82% 58%;--chart-secondary: 255 64% 68%;--chart-success: 153 58% 48%;--chart-warning: 38 86% 58%;--chart-danger: 0 70% 62%;--chart-track: 220 25% 22%;--shadow-card: 0 1px 2px hsl(222 47% 5% / .22), 0 16px 38px hsl(222 47% 5% / .22);--shadow-panel: 0 22px 56px hsl(222 47% 5% / .28)}*{box-sizing:border-box;border-color:hsl(var(--border))}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:hsl(var(--background));color:hsl(var(--foreground))}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at top left,hsl(var(--primary) / .1),transparent 32rem),linear-gradient(180deg,hsl(var(--background)),hsl(var(--surface)));color:hsl(var(--foreground));text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}:focus-visible{outline:3px solid hsl(var(--ring) / .34);outline-offset:2px}.app-shell{min-height:100vh;width:100%;display:flex;align-items:stretch}.main-panel{flex:1 1 auto;min-width:0;width:100%;min-height:100vh;display:flex;flex-direction:column}.sidebar{position:sticky;top:0;flex:0 0 272px;width:272px;height:100vh;overflow-y:auto;padding:20px 14px;background:hsl(var(--sidebar) / .92);border-right:1px solid hsl(var(--border));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;margin-bottom:22px;padding:8px 8px 14px;border-bottom:1px solid hsl(var(--border))}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:var(--radius);color:hsl(var(--primary-foreground));background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--secondary)));font-weight:800}.brand strong,.brand span{display:block}.brand strong{color:hsl(var(--sidebar-foreground));font-size:15px}.brand span,.eyebrow,.panel p,.list-card p,.topic-row span,.queue-row span,small{color:hsl(var(--muted-foreground))}.eyebrow{margin:0 0 5px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0}.nav-item{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid transparent;border-radius:var(--radius);color:hsl(var(--muted-foreground));background:transparent;transition:background .16s ease,color .16s ease,border-color .16s ease}.nav-section{display:grid;gap:4px;margin-top:14px}.nav-section:first-child{margin-top:0}.nav-section-title{padding:6px 10px 2px;color:hsl(var(--muted-foreground));font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nav-item:hover,.nav-item.active{color:hsl(var(--foreground));background:hsl(var(--accent));border-color:hsl(var(--border))}.topbar{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px clamp(20px,2vw,34px);border-bottom:1px solid hsl(var(--border));background:hsl(var(--background) / .82);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:sticky;top:0;z-index:4}.topbar h1{margin:0;color:hsl(var(--foreground));font-size:clamp(20px,1.45vw,26px);font-weight:750}.topbar-actions{display:flex;align-items:center;gap:10px}.class-switcher{min-width:280px;display:grid;gap:4px;color:hsl(var(--muted-foreground));font-size:12px}.\!search{min-width:min(360px,26vw)!important;display:flex!important;align-items:center!important;gap:10px!important;padding:10px 12px!important;border:1px solid hsl(var(--border))!important;border-radius:var(--radius)!important;color:hsl(var(--muted-foreground))!important;background:hsl(var(--card))!important;box-shadow:var(--shadow-card)!important}.search{min-width:min(360px,26vw);display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--muted-foreground));background:hsl(var(--card));box-shadow:var(--shadow-card)}.\!page{width:100%!important;max-width:none!important;flex:1 1 auto!important;padding:24px clamp(24px,2.4vw,44px) 48px!important;display:grid!important;gap:18px!important}.page{width:100%;max-width:none;flex:1 1 auto;padding:24px clamp(24px,2.4vw,44px) 48px;display:grid;gap:18px}.dashboard-grid,.class-detail-grid,.schedule-page,.journal-page,.calendar-page,.progression-page,.sequences-page,.evaluations-page,.evaluation-detail-page,.corrections-page,.insights-page,.lesson-sheets-page,.documents-page,.seo-page{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.new-evaluation-page{grid-template-columns:minmax(360px,.75fr) minmax(0,1.25fr);align-items:start}.simplified-evaluation-page{grid-template-columns:minmax(420px,.95fr) minmax(0,1.05fr)}.panel,.stat-card,.command-center{min-width:0;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--card-foreground));box-shadow:var(--shadow-card)}.panel{padding:16px}.panel h2,.panel h3,.command-center h2,.stat-card strong{margin:0}.panel-header,.row-between,.list-card,.topic-row,.queue-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-header{margin-bottom:14px}.stack{display:grid;gap:10px}.wide,.dashboard-grid>.wide,.dashboard-grid>.priorities-panel,.dashboard-grid>.stats-grid,.progression-page>.wide,.sequences-page>.wide,.evaluations-page>.wide,.evaluation-detail-page>.wide,.corrections-page>.wide,.insights-page>.wide,.lesson-sheets-page>.wide,.documents-page>.wide{grid-column:1 / -1}.dashboard-grid>.panel{grid-column:span 3}.stats-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.initial-setup-panel,.teacher-message-panel{display:grid;gap:12px}.setup-step-list{display:grid;gap:10px}.setup-step{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--background))}.setup-step p{margin:4px 0 0;color:hsl(var(--muted-foreground));font-size:13px}.setup-status{justify-self:start;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:750;background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.setup-status.done{background:hsl(var(--success) / .12);color:hsl(var(--success))}.setup-status.warning{background:hsl(var(--warning) / .14);color:hsl(var(--warning))}.setup-status.pending{background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.calendar-generate-scope{min-height:40px;padding:0 10px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));font-weight:650}.stat-card{min-height:118px;padding:15px;display:grid;gap:6px;align-content:start}.stat-card span{color:hsl(var(--muted-foreground));font-size:13px;font-weight:650}.stat-card strong{color:hsl(var(--foreground));font-size:clamp(24px,2vw,32px);line-height:1}.stat-icon{color:hsl(var(--primary))}.stat-card.green .stat-icon,.pill.green,.completed{color:hsl(var(--success))}.stat-card.orange .stat-icon,.stat-card.yellow .stat-icon{color:hsl(var(--warning))}.stat-card.red .stat-icon{color:hsl(var(--destructive))}.command-grid button,.small-button,.primary-button,.icon-button{min-height:40px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--foreground));font-weight:650;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.command-grid button:hover,.small-button:hover,.icon-button:hover{background:hsl(var(--accent));border-color:hsl(var(--ring) / .45)}.button-spinner{display:inline-block;width:14px;height:14px;margin-right:6px;border:2px solid hsl(var(--muted-foreground) / .34);border-top-color:hsl(var(--primary));border-radius:999px;vertical-align:-2px;animation:button-spin .7s linear infinite}@keyframes button-spin{to{transform:rotate(360deg)}}.today-recommendation-panel{display:grid;gap:16px;padding:20px;border-color:hsl(var(--primary) / .34);background:linear-gradient(135deg,hsl(var(--card)),hsl(var(--accent) / .72)),hsl(var(--card));box-shadow:var(--shadow-panel)}.today-recommendation-header,.today-recommendation-content,.recommendation-actions,.recommendation-meta,.competency-pills{display:flex;gap:10px}.today-recommendation-header{align-items:start;justify-content:space-between}.today-recommendation-header h2,.recommendation-main h3,.recommendation-section h4{margin:0}.today-recommendation-content{flex-direction:column}.recommendation-main{display:grid;gap:9px;max-width:980px}.recommendation-main h3{color:hsl(var(--foreground));font-size:clamp(22px,2vw,30px)}.recommendation-meta,.competency-pills{flex-wrap:wrap}.recommendation-meta span{border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);background:hsl(var(--card) / .72);color:hsl(var(--muted-foreground));padding:5px 8px;font-size:12px;font-weight:650}.recommendation-actions{flex-wrap:wrap;align-items:center}.recommendation-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.recommendation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.recommendation-section{min-width:0;display:grid;gap:8px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card) / .76);padding:12px}.recommendation-section p,.recommendation-section small{margin:0}.recommendation-state,.recommendation-message{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card) / .74);padding:12px}.recommendation-state.error{color:hsl(var(--destructive));border-color:hsl(var(--destructive) / .35)}.recommendation-state.\!error{color:hsl(var(--destructive))!important;border-color:hsl(var(--destructive) / .35)!important}.recommendation-message.validated{color:hsl(var(--success));border-color:hsl(var(--success) / .35)}.recommendation-message.postponed{color:hsl(var(--warning));border-color:hsl(var(--warning) / .35)}.primary-button{background:hsl(var(--primary));border-color:hsl(var(--primary));color:hsl(var(--primary-foreground));padding:0 14px;box-shadow:0 10px 20px hsl(var(--primary) / .18)}.small-button{padding:8px 10px}.small-button.danger{color:hsl(var(--destructive-foreground));background:hsl(var(--destructive));border-color:hsl(var(--destructive))}.icon-button{width:40px;height:40px;display:grid;place-items:center}.icon-button.active{color:hsl(var(--primary));background:hsl(var(--accent));border-color:hsl(var(--ring) / .45)}.theme-toggle{flex:0 0 auto;color:hsl(var(--foreground));background:hsl(var(--card))}.theme-toggle:hover{color:hsl(var(--primary))}.help-tip{position:relative;display:inline-grid;place-items:center;width:20px;height:20px;margin-left:4px;color:hsl(var(--primary));vertical-align:middle}[data-help=off] .help-tip{display:none}.help-tooltip{position:absolute;left:50%;bottom:calc(100% + 8px);z-index:30;width:min(300px,74vw);transform:translate(-50%) translateY(4px);opacity:0;pointer-events:none;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--popover));color:hsl(var(--popover-foreground));box-shadow:var(--shadow-panel);padding:10px 12px;font-size:12px;font-weight:550;line-height:1.4;text-transform:none;transition:opacity .14s ease,transform .14s ease}.help-tip:hover .help-tooltip,.help-tip:focus-within .help-tooltip{opacity:1;transform:translate(-50%) translateY(0)}.integrations-page{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr)}.integrations-hero,.connector-grid-panel,.connector-export-panel{grid-column:1 / -1}.connector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.connector-card{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));padding:14px;display:grid;gap:10px}.connector-title,.connector-export-button{display:inline-flex;align-items:center;gap:8px}.connector-tags{display:flex;flex-wrap:wrap;gap:6px}.connector-tags span,.connector-log small{border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 2px);color:hsl(var(--muted-foreground));padding:4px 7px}.connector-log{display:grid;gap:6px}.connector-preview{display:grid;gap:12px}.connector-preview-table{display:grid;gap:8px}.table-scroll{max-width:100%;overflow-x:auto;border:1px solid hsl(var(--border));border-radius:var(--radius)}.table-scroll table{width:100%;min-width:520px;border-collapse:collapse}.table-scroll th,.table-scroll td{border-bottom:1px solid hsl(var(--border));color:hsl(var(--foreground));padding:9px 10px;text-align:left;vertical-align:top}.table-scroll th{color:hsl(var(--muted-foreground));font-size:.78rem;text-transform:uppercase}.export-target-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.connector-export-button{justify-content:center;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--foreground));min-height:44px}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(360px,520px) minmax(0,1fr);gap:24px;align-items:stretch;background:hsl(var(--background));color:hsl(var(--foreground));padding:32px}.auth-panel,.auth-aside{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));box-shadow:var(--shadow-panel);padding:28px}.auth-panel{display:grid;align-content:center;gap:22px}.auth-brand{border-bottom:1px solid hsl(var(--border));padding-bottom:18px}.pending-approval-card{display:grid;gap:18px;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) + 4px);background:linear-gradient(135deg,hsl(var(--primary) / .12),transparent 55%),hsl(var(--surface));padding:22px}.pending-approval-card h2,.pending-approval-card p{margin:0}.pending-approval-card p{color:hsl(var(--muted-foreground));line-height:1.65}.pending-approval-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:20px;background:hsl(var(--primary) / .12);color:hsl(var(--primary))}.auth-panel h1,.auth-aside h2{margin:0;letter-spacing:0}.auth-aside{display:grid;align-content:end;min-height:560px;background:linear-gradient(135deg,hsl(var(--accent) / .78),hsl(var(--card)) 46%),hsl(var(--card))}.first-run-panel{min-height:560px}.classroom-import-panel{width:min(980px,100%);align-content:start}.classroom-import-stack{display:grid;gap:14px}.classroom-dropzone{display:grid;place-items:center;gap:12px;min-height:280px;width:100%;border:1.5px dashed hsl(var(--ring) / .38);border-radius:calc(var(--radius) + 6px);background:radial-gradient(circle at top,hsl(var(--primary) / .12),transparent 34%),hsl(var(--surface));color:hsl(var(--foreground));padding:28px;text-align:center;transition:background .16s ease,border-color .16s ease,transform .16s ease}.classroom-dropzone:hover,.classroom-dropzone.is-dragging{border-color:hsl(var(--primary));background:radial-gradient(circle at top,hsl(var(--primary) / .2),transparent 38%),hsl(var(--accent));transform:translateY(-1px)}.classroom-dropzone:disabled{cursor:wait;opacity:.9}.dropzone-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:24px;background:hsl(var(--primary) / .12);color:hsl(var(--primary))}.dropzone-title{max-width:620px;color:hsl(var(--foreground));font-size:clamp(1.05rem,1.8vw,1.35rem);font-weight:800;line-height:1.3}.dropzone-subtitle{color:hsl(var(--muted-foreground));font-size:.94rem;font-weight:650}.spin-icon{animation:acadpilot-spin .9s linear infinite}.import-format-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.import-format-badge{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--muted-foreground));font-weight:750}.classroom-preview-card,.manual-classroom-form{display:grid;gap:18px;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) + 4px);background:hsl(var(--surface));padding:18px}.classroom-preview-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.classroom-preview-fields label{display:grid;gap:6px;color:hsl(var(--muted-foreground));font-size:13px;font-weight:650}.classroom-students-header,.manual-classroom-header{display:flex;align-items:center;justify-content:space-between;gap:14px}.manual-classroom-header{justify-content:flex-start}.manual-classroom-header svg{color:hsl(var(--primary))}.manual-classroom-header h2,.manual-classroom-header p,.classroom-students-header h3{margin:0}.manual-classroom-header p{color:hsl(var(--muted-foreground))}.classroom-student-table{max-height:320px}.classroom-student-table input{min-height:38px;padding:8px 10px}.classroom-create-button{justify-content:center;width:100%}.text-link-button{justify-self:start;border:0;background:transparent;color:hsl(var(--primary));font-weight:800;text-decoration:underline;text-underline-offset:4px}@keyframes acadpilot-spin{to{transform:rotate(360deg)}}.landing-page,.seo-public-page{min-height:100vh;background:hsl(var(--background));color:hsl(var(--foreground))}.seo-brand-link{color:inherit;text-decoration:none}.seo-public-hero,.seo-public-cta,.seo-internal-links,.seo-home-feature-highlights,.seo-home-how,.seo-home-proof-numbers,.seo-home-faq,.seo-home-scenes,.seo-home-band,.seo-home-gallery{width:min(1440px,calc(100% - 48px));margin:0 auto}.seo-public-content{width:min(1120px,calc(100% - 48px));margin:0 auto}.seo-public-hero{display:grid;grid-template-columns:minmax(0,.88fr) minmax(460px,1.12fr);gap:clamp(28px,4vw,58px);align-items:center;padding:56px 0 64px}.seo-public-copy{display:grid;gap:18px}.seo-public-copy h1{margin:0;color:hsl(var(--foreground));font-size:clamp(2.4rem,4.6vw,4.8rem);line-height:1;letter-spacing:0}.seo-public-copy p,.seo-public-section p,.seo-public-cta p{margin:0;color:hsl(var(--muted-foreground));font-size:1.03rem;line-height:1.72}.seo-public-hero-image{width:100%;height:auto;aspect-ratio:3 / 2;-o-object-fit:cover;object-fit:cover;border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow-panel)}.seo-public-summary{min-height:360px;display:grid;align-content:center;gap:12px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:linear-gradient(135deg,hsl(var(--card)),hsl(var(--accent)));box-shadow:var(--shadow-panel);padding:28px}.seo-public-summary strong{color:hsl(var(--foreground));font-size:2rem}.seo-public-summary span{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--muted-foreground));padding:11px 13px;font-weight:700}.seo-public-content{display:grid;gap:18px;padding:18px 0 38px}.seo-public-section{display:grid;gap:12px;border-top:1px solid hsl(var(--border));padding-top:22px}.seo-public-section h2,.seo-public-cta h2,.seo-internal-links h2{margin:0;color:hsl(var(--foreground));font-size:clamp(1.35rem,2vw,2rem);letter-spacing:0}.seo-public-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));box-shadow:var(--shadow-card);padding:20px}.seo-public-cta>div{display:grid;gap:8px}.seo-contact-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,1fr);gap:1rem;padding:2rem 0;border-top:1px solid hsl(var(--border))}.seo-contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.seo-contact-form label{display:grid;gap:.35rem;color:hsl(var(--muted-foreground));font-size:.85rem;font-weight:700}.seo-contact-form .wide-field,.seo-contact-form button,.seo-contact-form p{grid-column:1 / -1}.seo-contact-form textarea{min-height:110px}.seo-home-feature-highlights,.seo-home-how,.seo-home-faq{display:grid;gap:16px;padding:12px 0 34px}.seo-home-section-title{display:grid;gap:6px;max-width:760px}.seo-home-section-title h2{margin:0;color:hsl(var(--foreground));font-size:clamp(1.35rem,2vw,2rem);line-height:1.15}.seo-home-feature-grid,.seo-home-step-grid,.seo-home-faq-grid{display:grid;gap:12px}.seo-home-feature-grid{grid-template-columns:repeat(4,minmax(240px,1fr))}.seo-home-step-grid,.seo-home-faq-grid{grid-template-columns:repeat(2,minmax(320px,1fr))}.seo-home-feature-grid article,.seo-home-step-grid article,.seo-home-faq-grid article{min-width:0;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));box-shadow:var(--shadow-card);padding:15px}.seo-home-feature-grid h3,.seo-home-step-grid h3,.seo-home-faq-grid h3{margin:0 0 7px;color:hsl(var(--foreground));font-size:1rem}.seo-home-feature-grid p,.seo-home-step-grid p,.seo-home-faq-grid p{margin:0;color:hsl(var(--muted-foreground));line-height:1.6}.seo-home-step-grid strong{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius);background:hsl(var(--primary));color:hsl(var(--primary-foreground));margin-bottom:10px}.seo-home-proof-numbers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 0 34px}.seo-home-proof-numbers div{min-height:110px;display:grid;align-content:center;gap:6px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));box-shadow:var(--shadow-card);padding:16px}.seo-home-proof-numbers strong{color:hsl(var(--foreground));font-size:clamp(2rem,4vw,3.1rem);line-height:1}.seo-home-proof-numbers span{color:hsl(var(--muted-foreground));font-weight:750}.seo-home-scenes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:12px 0 34px}.seo-home-scenes article{min-width:0;display:grid;grid-template-rows:auto 1fr;overflow:hidden;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));box-shadow:var(--shadow-card)}.seo-home-scenes img{width:100%;aspect-ratio:4 / 3;-o-object-fit:cover;object-fit:cover;display:block}.seo-home-scenes article>div{display:grid;gap:9px;align-content:start;padding:15px}.seo-home-scenes h2,.seo-home-band h2{margin:0;color:hsl(var(--foreground));font-size:clamp(1.15rem,1.6vw,1.55rem);line-height:1.15}.seo-home-scenes p,.seo-home-band p{margin:0;color:hsl(var(--muted-foreground));line-height:1.6}.seo-home-band{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:20px;align-items:center;border-top:1px solid hsl(var(--border));border-bottom:1px solid hsl(var(--border));padding:28px 0;margin-bottom:34px}.seo-home-band img{width:100%;height:auto;aspect-ratio:3 / 2;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius)}.seo-home-band>div{display:grid;gap:12px}.seo-home-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 0 34px}.seo-home-gallery figure{min-width:0;margin:0;overflow:hidden;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card))}.seo-home-gallery img{width:100%;aspect-ratio:5 / 4;-o-object-fit:cover;object-fit:cover;display:block}.seo-home-gallery figcaption{color:hsl(var(--foreground));padding:10px 11px;font-size:.92rem;font-weight:750}.seo-internal-links{display:grid;gap:14px;padding:36px 0 54px}.seo-internal-links div{display:flex;flex-wrap:wrap;gap:10px}.seo-internal-links a{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--foreground));padding:10px 12px;text-decoration:none;font-weight:700}.seo-internal-links a:hover{background:hsl(var(--accent));border-color:hsl(var(--ring) / .45)}.seo-public-footer{width:min(1440px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(260px,1.2fr) repeat(3,minmax(160px,.8fr));gap:24px;border-top:1px solid hsl(var(--border));padding:30px 0 22px}.seo-footer-brand{display:grid;gap:12px;align-content:start}.seo-footer-brand .brand{margin:0;padding:0;border-bottom:0}.seo-footer-brand p,.seo-footer-bottom,.seo-public-footer a{color:hsl(var(--muted-foreground))}.seo-footer-brand p{max-width:420px;margin:0;line-height:1.65}.seo-public-footer nav{display:grid;gap:9px;align-content:start}.seo-public-footer h2{margin:0 0 4px;color:hsl(var(--foreground));font-size:.95rem}.seo-public-footer a{text-decoration:none;font-weight:650}.seo-public-footer a:hover{color:hsl(var(--foreground))}.seo-footer-bottom{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid hsl(var(--border));padding-top:16px;font-size:.92rem}.not-found-hero{min-height:calc(100vh - 76px);grid-template-columns:minmax(0,720px)}.landing-nav{width:min(1440px,calc(100% - 48px));margin:0 auto;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative;z-index:4}.landing-links{display:flex;align-items:center;gap:34px;margin-left:auto;margin-right:12px}.landing-links a{color:hsl(var(--foreground));font-weight:700;text-decoration:none}.landing-hero,.landing-section,.landing-scenes,.landing-band{width:min(1440px,calc(100% - 48px));margin:0 auto}.landing-hero{min-height:min(720px,calc(100vh - 76px));display:grid;grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);align-items:center;gap:clamp(28px,4vw,64px);padding:18px 0 48px;position:relative}.landing-copy{display:grid;gap:18px;position:relative;z-index:3}.landing-copy h1{max-width:840px;margin:0;font-size:clamp(3.1rem,5.2vw,5.25rem);line-height:.98;letter-spacing:0}.landing-copy p,.landing-band p{max-width:720px;color:hsl(var(--muted-foreground));font-size:1.05rem;line-height:1.7}.landing-actions,.landing-proof{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.landing-proof span{display:inline-flex;align-items:center;gap:6px;color:hsl(var(--muted-foreground));font-weight:650}.brand-mark-image{overflow:hidden;padding:0;background:transparent;box-shadow:0 12px 24px hsl(var(--primary) / .18)}.brand-mark-image img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.landing-visual{min-height:560px;border-radius:var(--radius);background:hsl(var(--card));position:absolute;inset:-76px calc((min(1440px,100vw - 48px) - 100vw)/2) 0 43%;display:block;border:1px solid hsl(var(--border));overflow:hidden}.landing-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,hsl(var(--background)),hsl(var(--background) / .82) 14%,hsl(var(--background) / .14) 46%,hsl(var(--background) / .02)),linear-gradient(0deg,hsl(var(--background) / .86),hsl(var(--background) / 0) 38%)}.landing-visual:before{content:"";position:absolute;inset:auto 10% 6% 18%;height:120px;border-radius:999px;background:hsl(var(--primary) / .08);filter:blur(34px)}.landing-hero-photo{width:100%;height:100%;min-height:560px;-o-object-fit:cover;object-fit:cover;-o-object-position:52% 50%;object-position:52% 50%;display:block}.landing-product{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card) / .88);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:18px;display:grid;gap:14px;width:min(520px,42vw);position:absolute;z-index:3;left:72px;top:132px;right:auto;bottom:auto}.product-topline{display:flex;justify-content:space-between;gap:12px;color:hsl(var(--muted-foreground))}.product-topline strong{color:hsl(var(--foreground))}.product-grid,.landing-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.product-panel,.landing-feature{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card) / .78);padding:14px;display:grid;gap:7px}.product-panel{grid-template-columns:42px minmax(0,1fr);align-items:center}.product-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:var(--radius);background:hsl(var(--accent));color:hsl(var(--primary))}.product-panel span,.landing-feature p{color:hsl(var(--muted-foreground))}.landing-section{padding:42px 0 58px;display:grid;gap:24px;text-align:center}.landing-section h2,.landing-band h2{margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1;letter-spacing:0}.landing-feature-grid{grid-template-columns:repeat(4,minmax(240px,1fr));text-align:left}.feature-icon{width:38px;height:38px;display:grid;place-items:center;border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--primary));background:hsl(var(--card))}.landing-scenes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:6px 0 42px}.scene-card{min-height:340px;position:relative;overflow:hidden;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));box-shadow:var(--shadow-panel)}.scene-card img{width:100%;height:100%;min-height:340px;-o-object-fit:cover;object-fit:cover;filter:saturate(.92) contrast(.98)}.scene-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,hsl(var(--background) / .08),hsl(var(--background) / .76)),linear-gradient(90deg,hsl(var(--background) / .72),hsl(var(--background) / .06))}.scene-overlay{position:absolute;inset:auto 14px 14px;z-index:1;display:grid;gap:9px}.scene-overlay h3{max-width:360px;margin:0;font-size:1.25rem;line-height:1.12}.scene-product-note{display:grid;gap:4px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card) / .9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:12px}.scene-product-note span{color:hsl(var(--muted-foreground))}.landing-band{margin-bottom:40px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));padding:28px;display:grid;grid-template-columns:280px minmax(0,1fr) auto;align-items:center;gap:20px;box-shadow:var(--shadow-panel)}.landing-band-visual{min-height:160px;position:relative;overflow:hidden;color:hsl(var(--primary));border-radius:var(--radius);background:linear-gradient(135deg,hsl(var(--accent)),hsl(var(--muted) / .42))}.landing-band-visual img{width:100%;height:100%;min-height:160px;-o-object-fit:cover;object-fit:cover}.band-product-chip{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:8px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card) / .92);color:hsl(var(--foreground));padding:10px 12px;font-weight:750;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-panel{grid-column:span 5;min-height:248px;display:grid;grid-template-columns:minmax(0,1fr) 210px;align-items:center;gap:14px}.progression-intro,.schedule-hero,.journal-hero,.calendar-hero,.sequence-hero,.evaluation-hero,.evaluation-detail-hero,.correction-hero,.insights-hero,.lesson-hero,.curriculum-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);gap:18px;align-items:center}.progression-intro h2,.progression-intro p,.schedule-hero h2,.schedule-hero p,.journal-hero h2,.journal-hero p,.calendar-hero h2,.calendar-hero p,.sequence-hero h2,.sequence-hero p,.evaluation-hero h2,.evaluation-hero p,.correction-hero h2,.correction-hero p,.insights-hero h2,.insights-hero p,.lesson-hero h2,.lesson-hero p,.curriculum-hero h2,.curriculum-hero p{margin:0}.progression-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.progression-summary-card,.confidence-chip,.sequence-detail-block,.priority-card,.student-focus-grid>div,.student-summary-grid>div,.period-column,.progression-topic-card,.sequence-card,.evaluation-card,.correction-submission-card,.sheet-image-card,.sheet-image-preview figure,.submission-card{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface))}.progression-summary-card{min-height:82px;display:grid;align-content:center;gap:4px;padding:12px}.progression-summary-card strong{color:hsl(var(--foreground));font-size:23px}.progression-summary-card.orange strong{color:hsl(var(--warning))}.priority-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.priority-card{min-height:218px;display:grid;gap:10px;align-content:start;padding:13px}.dashboard-grid>.wide,.dashboard-grid>.priorities-panel,.dashboard-grid>.stats-grid{grid-column:1 / -1}.priorities-panel{overflow:hidden}.priority-card{min-width:0}.priority-card .row-between{align-items:flex-start}.priority-card .small-button{align-self:end;min-height:38px;white-space:normal}.priority-card h3,.priority-card p,.sequence-card h3,.sequence-card p,.evaluation-card h3,.evaluation-card p,.insight-row h3,.insight-row p,.progression-topic-card h3,.progression-topic-card p{margin:0}.topic-detail-grid,.student-profile-body,.sequence-detail-grid,.evaluation-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:16px;align-items:start}.proposal-period-board{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:14px;align-items:start;margin-top:12px}.proposal-period-column{display:grid;gap:12px;align-content:start;padding:14px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--muted) / .35)}.teaching-time-summary,.proposal-period-metrics{display:grid;gap:10px;margin-top:12px}.teaching-time-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.proposal-period-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.teaching-time-summary>div,.proposal-period-metrics>div{display:grid;gap:4px;padding:12px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface))}.teaching-time-summary span,.proposal-period-metrics span{color:hsl(var(--muted-foreground));font-size:12px;line-height:1.25}.teaching-time-summary strong,.proposal-period-metrics strong{color:hsl(var(--foreground))}.teaching-time-summary strong{font-size:18px}.teaching-time-summary small{color:hsl(var(--muted-foreground))}.proposal-period-metrics>div.overloaded{border-color:hsl(var(--warning));background:hsl(var(--warning) / .08)}.proposal-period-column>.row-between{align-items:center;padding-bottom:8px;border-bottom:1px solid hsl(var(--border))}.proposal-period-column h3,.proposal-topic-card h3,.proposal-topic-card p{margin:0}.proposal-topic-card{display:grid;gap:11px;padding:13px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));color:hsl(var(--foreground))}.proposal-topic-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.proposal-topic-header h3{font-size:15px;line-height:1.3}.proposal-topic-taxonomy{display:grid;gap:4px;color:hsl(var(--muted-foreground));font-size:13px;line-height:1.35}.proposal-topic-taxonomy span:first-child{color:hsl(var(--foreground));font-weight:650}.proposal-topic-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.proposal-topic-facts span{padding:8px 9px;border-radius:var(--radius);background:hsl(var(--muted) / .7);color:hsl(var(--muted-foreground));font-size:12px;line-height:1.2}.proposal-topic-facts strong{color:hsl(var(--foreground))}.proposal-justification{display:grid;gap:5px;padding:10px;border-left:3px solid hsl(var(--primary));border-radius:var(--radius);background:hsl(var(--primary) / .07)}.proposal-justification span{color:hsl(var(--muted-foreground));font-size:11px;font-weight:800;text-transform:uppercase}.proposal-justification p{color:hsl(var(--foreground));font-size:13px;line-height:1.45}.proposal-topic-card.progression-topic-card{padding:13px}.progression-plan-card{gap:10px;border-left:3px solid hsl(var(--primary) / .75)}.progression-plan-card-header{align-items:start}.progression-plan-card-header>div{display:grid;gap:4px;min-width:0}.progression-plan-card-header h3{font-size:15px;line-height:1.25}.progression-plan-order{color:hsl(var(--muted-foreground));font-size:11px;font-weight:800;letter-spacing:.02em}.progression-plan-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.progression-plan-facts span{min-width:0;text-align:center}.progression-plan-details{padding:9px 10px}.progression-plan-details summary{cursor:pointer;color:hsl(var(--foreground));font-size:12px;font-weight:700}.progression-plan-details span{display:none}.progression-card-progress{display:grid;gap:7px;padding:10px;border-radius:var(--radius);background:hsl(var(--muted) / .45)}.progression-card-progress span,.progression-topic-meta span{color:hsl(var(--muted-foreground));font-size:12px}.progression-card-progress strong{color:hsl(var(--foreground))}.progression-topic-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.progression-topic-meta span{padding:7px 8px;border-radius:var(--radius);background:hsl(var(--muted) / .55);line-height:1.2}.progression-recommended-actions{gap:6px}.progression-recommended-actions .skill-chip{padding:6px 8px;font-size:12px;line-height:1.15}.progression-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.progression-card-actions .small-button{justify-content:center;min-height:34px;padding:7px 8px;font-size:12px;white-space:normal}.progression-card-grid,.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.progression-topic-card,.sequence-card,.evaluation-card{display:grid;gap:10px;padding:12px}.topic-nav,.insight-row,.class-card,.list-card,.topic-row,.queue-row{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));color:hsl(var(--foreground));padding:13px}.topic-nav,.insight-row,.class-card-button,.sequence-open,.evaluation-open{width:100%;text-align:left}.topic-nav,.insight-row,.class-card-button{display:grid;gap:8px}.topic-nav:hover,.topic-nav.active,.insight-row.active,.class-card-button:hover,.class-card-button.active,.sequence-card.active,.evaluation-card.active{border-color:hsl(var(--ring) / .52);background:hsl(var(--accent))}.sequence-open,.evaluation-open{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;background:transparent;color:inherit;padding:0}.sequence-create,.sequence-list,.evaluation-library,.insights-list-panel{grid-column:span 5}.sequence-detail,.evaluation-detail-panel,.insight-detail-panel{grid-column:span 7;position:sticky;top:100px}.evaluation-content-panel,.lesson-editor-panel,.document-editor-panel{grid-column:span 8}.evaluation-use-panel,.lesson-builder-panel,.lesson-library-panel,.document-source-panel,.document-list-panel{grid-column:span 4}.evaluation-dynamic-panel{display:grid;gap:12px;padding:14px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--muted) / .28)}.evaluation-dynamic-panel h3{margin:0}.evaluation-picker-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.evaluation-picker-grid>div{display:grid;gap:8px;min-width:0}.evaluation-choice-list{display:grid;gap:8px;max-height:320px;overflow:auto;padding-right:4px}.evaluation-choice-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;padding:10px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));cursor:pointer}.evaluation-choice-card:hover{border-color:hsl(var(--ring) / .5);background:hsl(var(--accent))}.evaluation-choice-card input{margin-top:3px}.evaluation-choice-card span{display:grid;gap:3px;min-width:0}.evaluation-choice-card strong{color:hsl(var(--foreground));line-height:1.25}.evaluation-choice-card small{color:hsl(var(--muted-foreground));line-height:1.3}.rubric-builder{display:grid;gap:8px}.rubric-row{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:8px;align-items:center}.evaluation-mode-panel,.simplified-builder,.evaluation-selection-summary,.evaluation-rubric-compact,.evaluation-import-box{display:grid;gap:12px}.evaluation-mode-grid{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:10px}.evaluation-mode-card,.evaluation-topic-card,.evaluation-subtopic-card{display:grid;gap:5px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));color:hsl(var(--foreground));padding:12px;text-align:left;cursor:pointer}.evaluation-mode-card:hover,.evaluation-mode-card.active,.evaluation-topic-card:hover,.evaluation-topic-card.active,.evaluation-subtopic-card:hover,.evaluation-subtopic-card.active{border-color:hsl(var(--primary));background:hsl(var(--accent))}.evaluation-mode-card span,.evaluation-topic-card span,.evaluation-topic-card small,.evaluation-subtopic-card span,.evaluation-subtopic-card small,.evaluation-import-box p{color:hsl(var(--muted-foreground));line-height:1.45}.evaluation-filter-tabs{justify-self:start;max-width:100%;overflow:auto}.evaluation-topic-layout{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);gap:12px;min-height:360px}.evaluation-topic-list,.evaluation-subtopic-panel,.evaluation-subtopic-grid,.evaluation-competency-panel{display:grid;gap:8px}.evaluation-topic-list{max-height:420px;overflow:auto;padding-right:4px}.evaluation-subtopic-panel{align-content:start;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--muted) / .24);padding:12px}.evaluation-subtopic-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:360px;overflow:auto;padding-right:4px}.chip-row{display:flex;flex-wrap:wrap;gap:6px}.evaluation-competency-panel{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:10px;max-height:220px;overflow:auto}.evaluation-competency-panel div{display:grid;gap:2px;padding:8px 0;border-bottom:1px solid hsl(var(--border))}.evaluation-competency-panel div:last-child{border-bottom:0}.evaluation-competency-panel span,.muted{color:hsl(var(--muted-foreground))}.evaluation-quick-settings{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(120px,.65fr));gap:10px}.simplified-preview textarea{min-height:420px}.sheet-section-row{grid-template-columns:minmax(160px,.65fr) minmax(0,1fr) auto}.correction-import-panel,.correction-batches-panel{grid-column:span 6}.correction-queue-panel,.class-progress-card,.class-profile-card,.class-detail-grid>.hero-panel{grid-column:1 / -1}.class-period-card{grid-column:span 5}.class-student-card{grid-column:span 7}.sequence-form{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(160px,1fr) repeat(2,minmax(130px,.7fr)) auto;gap:10px}.progression-actions,.evaluation-filters,.insight-filters,.correction-filters,.student-admin-add,.student-admin-row{display:grid;gap:10px;align-items:center}.evaluation-filters,.insight-filters,.correction-filters{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.student-admin-add{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 96px auto}.student-admin-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 96px 160px auto;padding:12px}.student-admin-list{display:grid;gap:10px;margin-top:14px}.form-grid,.evaluation-editor,.lesson-editor,.settings-grid,.generated-content,.submission-card,.sequence-detail-body,.evaluation-cycle-detail,.evaluation-preview,.insight-detail-body,.correction-batches-panel{display:grid;gap:12px}.form-grid label,.evaluation-editor label,.lesson-editor label,.correction-score-row label{display:grid;gap:6px;color:hsl(var(--muted-foreground));font-size:13px;font-weight:650}input,select,textarea,.panel>select,.panel>input,.class-switcher select,.sequence-form input,.sequence-form select,.progression-actions select,.correction-score-row input,.correction-submission-card select,.sheet-image-card input,.sheet-image-card textarea,.classroom-preview-fields input,.classroom-student-table input{min-width:0;width:100%;border:1px solid hsl(var(--input));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--foreground));padding:10px 12px}textarea{resize:vertical}.form-grid textarea{min-height:110px}.evaluation-editor textarea{min-height:150px}.evaluation-editor label:nth-child(3) textarea{min-height:260px}.lesson-editor textarea{min-height:360px}.settings-grid label{display:flex;justify-content:space-between;gap:14px;padding:12px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface))}.pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700;color:hsl(var(--foreground));background:hsl(var(--muted));white-space:nowrap}.pill.blue,.planned,.ready,.draft,.in_progress{color:hsl(var(--info));background:hsl(var(--primary) / .12)}.\!draft{color:hsl(var(--info))!important;background:hsl(var(--primary) / .12)!important}.pill.green,.completed{color:hsl(var(--success));background:hsl(var(--success) / .12)}.pill.yellow,.pill.orange,.delayed,.postponed,.needs_review{color:hsl(var(--warning));background:hsl(var(--warning) / .14)}.pill.red,.error-text{color:hsl(var(--destructive));background:hsl(var(--destructive) / .12)}.meter,.mini-meter{height:9px;overflow:hidden;border-radius:999px;background:hsl(var(--chart-track))}.meter span,.mini-meter span{display:block;height:100%;border-radius:inherit;background:hsl(var(--primary))}.mini-meter{width:34%}.mini-meter.full{width:100%}.donut{position:relative;width:100%;height:190px}.donut strong{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:30px}.period-bars{display:grid;gap:14px}.period-bars>div{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:12px}.period-bars div div{position:relative;height:14px;overflow:hidden;border-radius:999px;background:hsl(var(--chart-track))}.period-bars b,.period-bars i{position:absolute;inset-block:0;left:0;border-radius:999px}.period-bars b{background:hsl(var(--muted))}.period-bars i{height:7px;top:3.5px;background:hsl(var(--primary))}.timeline{display:grid;gap:14px}.timeline article{display:grid;grid-template-columns:16px 1fr auto;gap:12px;align-items:center}.timeline article>span{width:10px;height:10px;border-radius:99px;background:hsl(var(--primary));box-shadow:0 0 0 5px hsl(var(--primary) / .14)}.topic-row{display:grid;grid-template-columns:minmax(0,1fr) 34% 52px}.sequence-card-grid,.evaluation-card-grid,.journal-form-grid,.evaluation-use-grid,.correction-batch-summary,.correction-pack-row,.confidence-grid,.student-summary-grid,.student-focus-grid,.insight-detail-grid{display:grid;gap:10px}.sequence-card-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.journal-list-panel{grid-column:span 4}.journal-editor-panel{grid-column:span 8}.journal-session-list,.journal-day-group,.journal-block,.homework-suggestion-panel,.homework-suggestion-list,.schedule-form,.adaptation-picker,.adaptation-profile,.calendar-items,.calendar-quick-form,.calendar-agenda{display:grid;gap:10px}.journal-session-row,.homework-suggestion-card,.calendar-item,.calendar-empty-slot,.agenda-row,.calendar-detail-card{width:100%;display:grid;gap:6px;text-align:left;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));color:hsl(var(--foreground));padding:12px}.journal-session-row:hover,.journal-session-row.active,.calendar-item:hover,.calendar-item.active,.calendar-empty-slot:hover{border-color:hsl(var(--ring) / .52);background:hsl(var(--accent))}.homework-suggestion-panel{grid-column:1 / -1;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:12px}.homework-suggestion-panel h3{margin:0;font-size:15px}.homework-suggestion-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.homework-suggestion-card strong{color:hsl(var(--foreground))}.homework-suggestion-card p{margin:4px 0;color:hsl(var(--muted-foreground))}.homework-suggestion-card span{color:hsl(var(--muted-foreground));font-size:12px}.homework-suggestion-actions{display:flex;align-items:center;gap:8px}.journal-session-row span:first-child,.calendar-item span:first-child,.agenda-row span{color:hsl(var(--muted-foreground));font-size:12px;font-weight:700}.journal-form-grid{grid-template-columns:minmax(240px,1.5fr) minmax(160px,.8fr) repeat(3,minmax(120px,.55fr)) repeat(2,minmax(180px,1fr));margin-bottom:16px}.journal-block{padding:14px 0;border-top:1px solid hsl(var(--border))}.journal-block h3,.calendar-detail-card h3,.calendar-agenda h3{margin:0}.journal-block-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.journal-block-grid label,.journal-form-grid label,.calendar-quick-form label,.calendar-card-editor label{display:grid;gap:6px;color:hsl(var(--muted-foreground));font-size:13px;font-weight:650}.journal-block-grid textarea,.calendar-card-editor textarea{min-height:112px}.calendar-card-editor{border-color:hsl(var(--ring) / .52);background:hsl(var(--accent))}.calendar-card-editor-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.schedule-import-preview-list{display:grid;gap:8px;margin:12px 0;max-height:280px;overflow:auto}.schedule-import-preview-row{display:grid;gap:3px;padding:10px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card))}.schedule-import-preview-row span,.schedule-import-preview-row small{color:hsl(var(--muted-foreground))}.checkbox-row{display:flex!important;align-items:center;justify-content:flex-start;gap:10px;min-height:42px;color:hsl(var(--foreground))!important}.checkbox-row input{width:auto}.adaptation-picker,.adaptation-profile{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:12px}.adaptation-picker strong,.adaptation-profile h3,.adaptation-profile p{margin:0}.adaptation-chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.adaptation-profile label{display:grid;gap:6px;color:hsl(var(--muted-foreground));font-size:13px;font-weight:650}.calendar-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center}.segmented-control{display:inline-flex;gap:4px;padding:4px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface))}.segmented-control button{min-height:34px;border:0;border-radius:calc(var(--radius) - 2px);background:transparent;color:hsl(var(--muted-foreground));padding:0 12px;font-weight:700}.segmented-control button.active{color:hsl(var(--foreground));background:hsl(var(--card));box-shadow:var(--shadow-card)}.calendar-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.28fr);gap:16px;align-items:start}.calendar-side-panel{position:sticky;top:100px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;overflow-x:auto}.calendar-grid.month{grid-template-columns:repeat(7,minmax(136px,1fr))}.calendar-day{min-height:420px;display:grid;align-content:start;gap:10px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:10px}.calendar-grid.month .calendar-day{min-height:180px}.calendar-day.today{border-color:hsl(var(--ring) / .55);box-shadow:inset 0 0 0 1px hsl(var(--ring) / .18)}.calendar-day-header{display:flex;justify-content:space-between;align-items:center;border:0;background:transparent;color:hsl(var(--foreground));padding:0 0 8px;border-bottom:1px solid hsl(var(--border));text-align:left}.calendar-day-header span{color:hsl(var(--muted-foreground));font-size:12px;font-weight:700}.calendar-item.session{border-left:3px solid hsl(var(--primary))}.calendar-item.homework{border-left:3px solid hsl(var(--warning))}.calendar-item.event{border-left:3px solid hsl(var(--secondary))}.calendar-item.\!event{border-left:3px solid hsl(var(--secondary))!important}.calendar-item.timetable{border-left:3px solid hsl(var(--info));background:hsl(var(--card))}.calendar-item.timetable.disabled{opacity:.62;border-left-color:hsl(var(--muted-foreground))}.calendar-item.timetable.\!disabled{opacity:.62!important;border-left-color:hsl(var(--muted-foreground))!important}.calendar-empty-slot{min-height:76px;place-items:center;border-style:dashed;color:hsl(var(--muted-foreground))}.calendar-detail-card,.calendar-agenda{margin-top:14px}.agenda-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.schedule-onboarding,.schedule-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.5fr) auto;gap:12px;align-items:end}.schedule-toolbar{grid-template-columns:minmax(0,1fr) auto}.schedule-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.28fr);gap:16px;align-items:start}.schedule-side-panel{position:sticky;top:100px}.schedule-week-grid{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:10px;overflow-x:auto}.schedule-day-column{min-height:560px;display:grid;align-content:start;gap:10px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:10px}.schedule-slot-card,.schedule-detail-card{width:100%;display:grid;gap:6px;text-align:left;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--foreground));padding:12px}.schedule-slot-card:hover,.schedule-slot-card.active{border-color:hsl(var(--ring) / .52);background:hsl(var(--accent))}.schedule-slot-card span:first-child{color:hsl(var(--muted-foreground));font-size:12px;font-weight:700}.schedule-form label{display:grid;gap:6px;color:hsl(var(--muted-foreground));font-size:13px;font-weight:650}.schedule-detail-card{margin-top:14px;background:hsl(var(--surface))}.schedule-detail-card h3,.schedule-detail-card p{margin:0}.compact-form{grid-template-columns:repeat(3,minmax(0,1fr))}.schedule-import-button{position:relative;display:inline-grid;place-items:center;overflow:hidden}.schedule-import-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.evaluation-card-grid,.correction-batch-summary,.student-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.evaluation-use-grid,.insight-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.confidence-grid,.student-focus-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.sequence-card-grid span,.evaluation-card-grid span,.sequence-detail-block span,.correction-batch-summary span{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--muted-foreground));padding:8px;font-size:13px}.confidence-chip{display:grid;gap:4px;padding:9px}.correction-pack-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.correction-pack-row span:not(.pill){color:hsl(var(--muted-foreground));font-size:13px}.teacher-only{border:1px dashed hsl(var(--border));border-radius:var(--radius);padding:4px 8px}.confidence-chip span{color:hsl(var(--muted-foreground));font-size:12px}.confidence-chip strong,.student-focus-grid strong,.student-summary-grid strong{color:hsl(var(--foreground));font-size:20px}.student-summary-grid strong{font-size:24px}.student-summary-grid>div,.student-focus-grid>div{min-height:92px;padding:13px;align-content:start}.student-picker-list{display:grid;gap:8px;max-height:360px;overflow:auto;padding-right:4px}.class-student-actions{justify-content:flex-start;margin-bottom:10px}.class-student-empty-state{align-items:flex-start;text-align:left}.student-import-modal{display:grid;gap:16px}.student-import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.student-import-option{display:grid;gap:6px;min-height:112px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));color:hsl(var(--foreground));padding:14px;text-align:left;cursor:pointer}.student-import-option:hover:not(:disabled){border-color:hsl(var(--primary));background:hsl(var(--accent))}.student-import-option span{color:hsl(var(--muted-foreground));line-height:1.5}.student-manual-form{display:grid;gap:12px;border-top:1px solid hsl(var(--border));padding-top:14px}.student-import-progress{display:grid;gap:8px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:12px}.student-import-progress span{color:hsl(var(--muted-foreground));font-size:13px}.student-import-progress-bar{height:10px;overflow:hidden;border-radius:999px;background:hsl(var(--muted))}.student-import-progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,hsl(var(--primary)),hsl(var(--success)));transition:width .24s ease}.student-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));color:hsl(var(--foreground));padding:10px 12px;text-align:left}.student-picker-row:hover,.student-picker-row.active{border-color:hsl(var(--ring) / .48);background:hsl(var(--accent))}.student-picker-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-picker-row span{color:hsl(var(--muted-foreground));font-size:12px;font-weight:700}.student-evolution-panel,.student-appreciation-box,.student-acquisition-column{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:14px}.student-evolution-panel,.student-appreciation-box{margin-top:14px}.student-acquisition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.student-acquisition-column{display:grid;gap:10px;align-content:start}.student-acquisition-column h3,.student-appreciation-box h3,.student-evolution-panel h3{margin:0;font-size:15px}.student-acquisition-list{display:flex;flex-wrap:wrap;gap:8px}.student-acquisition-list p,.student-appreciation-box p,.student-evolution-panel p{margin:0;color:hsl(var(--muted-foreground))}.student-alert-panel{border-color:hsl(var(--warning) / .44);background:linear-gradient(135deg,hsl(var(--warning) / .08),transparent 58%),hsl(var(--card))}.student-alert-list{display:grid;gap:12px}.student-alert-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;border:1px solid hsl(var(--border));border-left:4px solid hsl(var(--warning));border-radius:var(--radius);background:hsl(var(--surface));padding:14px}.student-alert-card.high{border-left-color:hsl(var(--destructive))}.student-alert-main{display:grid;gap:10px}.student-alert-title{display:flex;gap:10px;align-items:center}.student-alert-title svg{color:hsl(var(--warning))}.student-alert-title div{display:grid;gap:2px}.student-alert-title strong{color:hsl(var(--foreground));font-size:18px}.student-alert-title span,.student-alert-main p{color:hsl(var(--muted-foreground));margin:0}.student-alert-metrics{display:flex;flex-wrap:wrap;gap:8px}.student-alert-metrics span{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));color:hsl(var(--muted-foreground));padding:7px 9px;font-size:12px;font-weight:700}.student-alert-actions{display:flex;flex-wrap:wrap;justify-content:end;gap:8px;max-width:390px}.student-alert-actions .small-button{display:inline-flex;align-items:center;gap:6px}.documents-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);gap:18px;align-items:center}.documents-hero h2,.documents-hero p{margin:0}.document-source-grid,.document-list,.document-editor,.document-toolbar{display:grid;gap:10px}.document-source-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.document-source-grid .primary-button,.document-toolbar .small-button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.document-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));color:hsl(var(--foreground));padding:12px;text-align:left}.document-row:hover,.document-row.active{border-color:hsl(var(--ring) / .48);background:hsl(var(--accent))}.document-row div{display:grid;gap:3px;min-width:0}.document-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-row span:not(.pill){color:hsl(var(--muted-foreground));font-size:12px;font-weight:700}.document-toolbar{grid-template-columns:repeat(3,minmax(0,max-content));margin-bottom:4px}.document-paper{min-height:680px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--background));color:hsl(var(--foreground));padding:34px;line-height:1.55;white-space:pre-wrap;outline:none;box-shadow:inset 0 0 0 1px transparent}.document-paper:focus{border-color:hsl(var(--ring) / .55);box-shadow:0 0 0 4px hsl(var(--ring) / .12)}.insight-card{display:grid;gap:12px;border-left:3px solid hsl(var(--primary))}.insight-card.high{border-left-color:hsl(var(--destructive))}.insight-card.medium{border-left-color:hsl(var(--warning))}.insight-card.low{border-left-color:hsl(var(--success))}.insight-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}.insight-row-meta{display:grid;justify-items:end;gap:8px}.sheet-image-list{display:grid;gap:10px;margin-top:12px}.sheet-image-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;align-items:start;padding:10px}.sheet-image-card img{width:92px;aspect-ratio:1;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius)}.sheet-image-card textarea,.sheet-image-card button{grid-column:2}.sheet-image-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sheet-image-preview figure{margin:0;padding:10px}.sheet-image-preview img{width:100%;max-height:220px;-o-object-fit:contain;object-fit:contain}.sheet-image-preview figcaption{color:hsl(var(--muted-foreground));font-size:13px}.lesson-preview-meta,.sequence-actions,.evaluation-export-actions,.row-actions{display:flex;flex-wrap:wrap;gap:8px}.evaluation-cycle{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}.evaluation-cycle span,.empty-preview{display:grid;place-items:center;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));color:hsl(var(--muted-foreground))}.evaluation-cycle span{min-height:34px;font-size:12px;text-align:center}.evaluation-cycle span.active{border-color:hsl(var(--ring) / .52);color:hsl(var(--foreground));background:hsl(var(--accent))}.empty-preview{min-height:320px;place-content:center;gap:8px;text-align:center;border-style:dashed}pre{max-height:340px;overflow:auto;white-space:pre-wrap;border:1px solid hsl(var(--border));border-radius:var(--radius);padding:12px;background:hsl(var(--surface-subtle));color:hsl(var(--foreground))}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:28px;background:hsl(var(--overlay) / .72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-panel{width:min(980px,100%);max-height:min(860px,calc(100vh - 56px));overflow:auto;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--popover));box-shadow:var(--shadow-panel);padding:20px}.seo-hero{display:flex;align-items:center;justify-content:space-between;gap:16px}.seo-list-panel{grid-column:span 4}.seo-editor-panel{grid-column:span 8}.seo-page-list,.seo-editor-grid,.seo-switch-grid,.seo-action-grid,.seo-diagnostics,.seo-recommendations{display:grid;gap:10px}.seo-page-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));color:hsl(var(--foreground));padding:12px;text-align:left}.seo-page-row:hover,.seo-page-row.active{border-color:hsl(var(--ring) / .52);background:hsl(var(--accent))}.seo-page-row strong,.seo-page-row span{display:block}.seo-page-row div>span{margin-top:4px;color:hsl(var(--muted-foreground));font-size:12px}.seo-editor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.seo-editor-grid label,.seo-switch-grid label{display:grid;gap:6px;color:hsl(var(--muted-foreground));font-size:13px;font-weight:650}.seo-editor-grid .wide-field{grid-column:1 / -1}.seo-switch-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;margin-top:12px}.seo-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.seo-action-grid button,.link-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.seo-leads-list{display:grid;gap:.75rem}.seo-lead-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.75rem;align-items:start;padding:.8rem;border:1px solid hsl(var(--border));border-radius:8px}.seo-lead-row span,.seo-lead-row p{color:hsl(var(--muted-foreground));font-size:.85rem}.seo-lead-reply{grid-column:1 / -1;display:grid;gap:.55rem}.seo-lead-reply textarea{min-height:110px}.seo-diagnostics{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}.seo-diagnostics>div{min-height:88px;display:grid;gap:4px;align-content:start;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:12px}.seo-diagnostics svg{color:hsl(var(--primary))}.seo-diagnostics strong{font-size:24px}.seo-diagnostics span,.seo-recommendations span{color:hsl(var(--muted-foreground));font-size:13px}.seo-recommendations{margin-top:14px}.seo-recommendations span{border:1px solid hsl(var(--border));border-left:3px solid hsl(var(--warning));border-radius:var(--radius);background:hsl(var(--surface));padding:10px 12px}.beta-request-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.beta-request-card{display:grid;gap:12px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:14px}.beta-request-card strong,.beta-request-card span{display:block}.beta-request-card>p,.beta-request-card span{color:hsl(var(--muted-foreground))}.beta-request-card label,.beta-quota-grid{display:grid;gap:8px}.beta-quota-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-ai-quota-grid,.teacher-ai-feature-list{display:grid;gap:12px}.teacher-ai-quota-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-ai-quota-card,.teacher-ai-feature-row{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--surface));padding:13px}.teacher-ai-quota-card{display:grid;gap:9px}.teacher-ai-quota-card span,.teacher-ai-quota-card small,.teacher-ai-feature-row span{color:hsl(var(--muted-foreground))}.teacher-ai-quota-bar{height:10px;overflow:hidden;border-radius:999px;background:hsl(var(--muted))}.teacher-ai-quota-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,hsl(var(--primary)),hsl(var(--success)))}.teacher-ai-feature-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center}.muted-box{border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card));padding:10px 12px}.visible{visibility:visible}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-9{height:2.25rem}.w-10{width:2.5rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.rounded{border-radius:.25rem}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.border-border{border-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-semibold{font-weight:600}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.outline{outline-style:solid}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.running{animation-play-state:running}.paused{animation-play-state:paused}.compact{min-height:150px}@media (min-width: 1640px){.sidebar{flex-basis:288px;width:288px}.dashboard-grid>.panel{grid-column:span 3}.dashboard-grid>.wide,.dashboard-grid>.priorities-panel,.dashboard-grid>.stats-grid{grid-column:1 / -1}.hero-panel{grid-column:span 4}.priority-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (max-width: 1180px){.landing-hero{grid-template-columns:1fr;min-height:auto;padding-top:42px}.seo-public-hero,.seo-home-scenes,.seo-home-feature-grid,.seo-home-step-grid,.seo-home-proof-numbers,.seo-home-faq-grid,.seo-home-band,.seo-home-gallery,.seo-contact-section,.seo-public-footer,.seo-contact-form,.seo-lead-row{grid-template-columns:1fr}.landing-visual{position:relative;inset:auto;min-height:420px;padding:0}.landing-product{width:min(480px,100%);left:24px;top:54px;right:auto;bottom:auto}.landing-screen{width:min(620px,100%);transform:none}.landing-feature-grid,.landing-scenes,.landing-band{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-band-visual{grid-row:span 2}.app-shell{display:flex}.sidebar{flex-basis:84px;width:84px}.brand div:not(.brand-mark),.nav-item span{display:none}.command-center,.progression-intro,.schedule-hero,.schedule-onboarding,.schedule-toolbar,.schedule-shell,.journal-hero,.calendar-hero,.calendar-shell,.sequence-hero,.evaluation-hero,.evaluation-detail-hero,.correction-hero,.insights-hero,.lesson-hero,.curriculum-hero,.curriculum-grid,.topic-detail-grid,.student-profile-body,.period-board,.progression-card-grid,.sequence-form,.journal-form-grid,.journal-block-grid,.sequence-detail-grid,.evaluation-detail-grid,.evaluation-cycle,.evaluation-use-grid,.correction-batch-summary,.submission-grid,.confidence-grid,.insight-detail-grid,.sheet-image-preview,.documents-hero,.document-source-grid,.classroom-preview-fields{grid-template-columns:1fr}.stats-grid,.command-grid,.recommendation-grid,.two-columns,.priority-grid,.student-focus-grid,.student-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid>.panel,.hero-panel,.journal-list-panel,.journal-editor-panel,.class-period-card,.class-student-card,.sequence-create,.sequence-list,.sequence-detail,.evaluation-library,.evaluation-detail-panel,.evaluation-content-panel,.evaluation-use-panel,.correction-import-panel,.correction-batches-panel,.insights-list-panel,.insight-detail-panel,.lesson-builder-panel,.lesson-library-panel,.lesson-editor-panel,.document-source-panel,.document-list-panel,.document-editor-panel,.new-evaluation-page>.panel{grid-column:1 / -1}.seo-list-panel,.seo-editor-panel{grid-column:1 / -1}.seo-editor-grid,.seo-switch-grid,.seo-action-grid,.seo-diagnostics{grid-template-columns:1fr}.sequence-detail,.evaluation-detail-panel,.evaluation-use-panel,.schedule-side-panel,.calendar-side-panel,.insight-detail-panel,.lesson-editor-panel,.document-editor-panel{position:static}.curriculum-hero select{min-width:0;width:100%}}@media (max-width: 760px){.landing-nav{min-height:auto;padding:14px 0;align-items:flex-start}.landing-links{display:none}.landing-nav,.landing-band{flex-direction:column}.landing-hero,.landing-section,.landing-scenes,.landing-band,.seo-public-hero,.seo-public-content,.seo-public-cta,.seo-internal-links,.seo-home-feature-highlights,.seo-home-how,.seo-home-proof-numbers,.seo-home-faq,.seo-home-scenes,.seo-home-band,.seo-home-gallery,.seo-public-footer{width:min(100% - 28px,1180px)}.seo-footer-bottom{display:grid}.seo-public-cta{align-items:stretch;flex-direction:column}.seo-public-cta .primary-button{justify-content:center;width:100%}.landing-copy h1{font-size:clamp(2.7rem,14vw,4rem)}.landing-actions .primary-button,.landing-actions .small-button,.landing-band .primary-button{width:100%}.landing-proof{align-items:flex-start;flex-direction:column}.auth-page{grid-template-columns:1fr;padding:18px}.auth-panel,.auth-aside{padding:20px}.classroom-dropzone{min-height:220px;padding:22px 16px}.import-format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.classroom-students-header,.manual-classroom-header{align-items:flex-start;flex-direction:column}.landing-visual{min-height:360px;padding:0}.landing-hero-photo{min-height:360px}.landing-product{position:relative;left:auto;top:auto;right:auto;bottom:auto;width:100%;margin:-92px 12px 12px}.landing-screen{min-height:auto;grid-template-columns:48px minmax(0,1fr)}.screen-sidebar{padding:12px 6px}.screen-body{padding:12px}.product-grid,.landing-feature-grid,.landing-scenes,.landing-band{grid-template-columns:1fr}.landing-band-visual{width:100%}.app-shell{display:block}.sidebar{position:static;width:100%;height:auto}.sidebar nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.topbar,.topbar-actions{align-items:stretch;flex-direction:column}.topbar{position:static;padding:18px}.search,.class-switcher{min-width:0;width:100%}.page{padding:18px}.stats-grid,.command-grid,.recommendation-grid,.two-columns,.hero-panel,.progression-summary,.journal-hero,.calendar-hero,.calendar-toolbar,.calendar-shell,.calendar-grid,.calendar-grid.month,.schedule-hero,.schedule-onboarding,.schedule-toolbar,.schedule-shell,.schedule-week-grid,.compact-form,.insight-grid,.priority-grid,.student-focus-grid,.student-summary-grid,.class-detail-grid,.progression-actions,.sequence-card-grid,.evaluation-card-grid,.evaluation-filters,.evaluation-batch-card,.correction-filters,.correction-score-row,.insight-filters,.insight-row,.sheet-image-card,.new-evaluation-page,.evaluation-form-grid,.journal-form-grid,.journal-block-grid,.student-admin-add,.student-admin-row,.topic-row,.queue-row,.homework-suggestion-card,.document-row,.document-toolbar,.student-alert-card,.student-acquisition-grid{grid-template-columns:1fr}.today-recommendation-header,.recommendation-actions{align-items:stretch;flex-direction:column}.student-alert-actions{justify-content:stretch;max-width:none}.student-alert-actions .small-button{justify-content:center}.student-picker-row{grid-template-columns:1fr}.homework-suggestion-actions{justify-content:space-between}.document-paper{min-height:520px;padding:20px}.sheet-image-card textarea,.sheet-image-card button{grid-column:auto}.hero-panel{min-height:auto}}.curriculum-page{display:flex;flex-direction:column;gap:18px}.curriculum-header-panel{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:20px}.curriculum-header-main{display:flex;flex-direction:column;gap:6px}.curriculum-header-main h2{display:flex;align-items:center;gap:8px;margin:0}.curriculum-header-main p{margin:0;color:var(--muted-foreground, #64748b)}.curriculum-header-actions{display:flex;flex-direction:column;gap:10px;min-width:320px}.curriculum-header-actions select{width:100%}.curriculum-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px}.stat-card{padding:18px}.stat-card strong{display:block;margin-top:6px;font-size:2rem;line-height:1;color:var(--foreground, #0f172a)}.stat-card p{margin:8px 0 0;color:var(--muted-foreground, #64748b)}.curriculum-explorer{display:grid;grid-template-columns:minmax(320px,38%) minmax(0,1fr);gap:18px;align-items:start}.curriculum-tree-panel,.curriculum-detail-panel{padding:20px}.curriculum-tree-panel{max-height:calc(100vh - 260px);overflow:hidden;display:flex;flex-direction:column}.curriculum-topic-list{display:flex;flex-direction:column;gap:8px;margin-top:14px;overflow-y:auto;padding-right:4px}.curriculum-topic-item{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) 48px;align-items:center;gap:10px;padding:12px;border:1px solid var(--border, #d7deea);border-radius:12px;background:var(--card, #ffffff);color:var(--foreground, #0f172a);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.curriculum-topic-item:hover{border-color:var(--primary, #2563eb);background:#2563eb0f}.curriculum-topic-item.active{border-color:var(--primary, #2563eb);background:#2563eb1f}.topic-index{width:28px;height:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#2563eb1a;color:var(--primary, #2563eb);font-weight:700;font-size:.8rem}.topic-body{display:flex;flex-direction:column;gap:3px;min-width:0}.topic-body strong{display:block;font-size:.95rem;line-height:1.25;white-space:normal}.topic-body small{color:var(--muted-foreground, #64748b);line-height:1.25}.topic-progress{justify-self:end;padding:4px 7px;border-radius:999px;background:var(--muted, #eef2f7);color:var(--foreground, #0f172a);font-size:.75rem;font-weight:700}.curriculum-detail-content{display:flex;flex-direction:column;gap:16px}.detail-block{padding:16px;border:1px solid var(--border, #d7deea);border-radius:14px;background:#ffffff8c}.detail-block h3{margin:0 0 10px;display:flex;align-items:center;gap:6px;font-size:.95rem}.detail-block p{margin:0;color:var(--muted-foreground, #64748b);line-height:1.5}.progress-summary-card{display:grid;grid-template-columns:minmax(180px,1fr) minmax(140px,260px) 48px;gap:12px;align-items:center}.progress-summary-card div:first-child{display:flex;flex-direction:column;gap:3px}.progress-summary-card span{color:var(--muted-foreground, #64748b);font-size:.85rem}.mini-meter{height:8px;border-radius:999px;background:var(--muted, #e5e7eb);overflow:hidden}.mini-meter span{display:block;height:100%;border-radius:inherit;background:var(--primary, #2563eb)}.skills-chip-grid{display:flex;flex-wrap:wrap;gap:8px}.skill-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:8px 10px;border-radius:999px;border:1px solid var(--border, #d7deea);background:var(--muted, #eef2f7);color:var(--foreground, #0f172a);font-size:.85rem;line-height:1}.skill-chip b{color:var(--primary, #2563eb)}.search-input{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid var(--border, #d7deea);border-radius:12px;background:var(--card, #ffffff);color:var(--foreground, #0f172a)}.search-input:focus{outline:none;border-color:var(--primary, #2563eb);box-shadow:0 0 0 3px #2563eb1f}.program-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:16px;align-items:start}.program-domain-panel,.program-reference-panel,.program-detail-panel{padding:16px}.program-domain-panel{position:sticky;top:16px;display:flex;flex-direction:column;gap:12px}.program-domain-list{display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 340px);overflow-y:auto;padding-right:4px}.program-domain-button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px;border:1px solid var(--border, #d7deea);border-radius:8px;background:var(--card, #ffffff);color:var(--foreground, #0f172a);text-align:left;cursor:pointer}.program-domain-button strong,.program-reference-item strong{display:block;line-height:1.25}.program-domain-button small{display:block;margin-top:3px;color:var(--muted-foreground, #64748b);line-height:1.25}.program-domain-button:hover,.program-domain-button.active{border-color:var(--primary, #2563eb);background:#2563eb14}.program-main-panel{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.75fr);gap:16px;align-items:start}.program-reference-panel{display:flex;flex-direction:column;gap:14px}.program-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.program-toolbar-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}.segmented-control{display:inline-flex;padding:3px;border:1px solid var(--border, #d7deea);border-radius:8px;background:var(--muted, #eef2f7)}.segmented-control button{min-height:30px;padding:6px 10px;border:0;border-radius:6px;background:transparent;color:var(--muted-foreground, #64748b);font-weight:700;cursor:pointer}.segmented-control button.active{background:var(--card, #ffffff);color:var(--foreground, #0f172a);box-shadow:0 1px 3px #0f172a1a}.program-toolbar h2,.program-section-header h3{margin:0}.program-toolbar p{margin:5px 0 0}.program-reference-list{display:flex;flex-direction:column;gap:16px}.program-domain-section{display:flex;flex-direction:column;gap:12px;padding-top:2px}.program-section-header,.program-theme-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.program-section-header{padding-bottom:8px;border-bottom:1px solid var(--border, #d7deea)}.program-theme-block{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border, #d7deea);border-radius:8px;background:#f8fafcc7}.program-theme-header strong{font-size:.98rem}.program-theme-header small{color:var(--muted-foreground, #64748b)}.program-notion-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.program-notion-table-wrap{overflow-x:auto;border:1px solid var(--border, #d7deea);border-radius:8px;background:var(--card, #ffffff)}.program-notion-table{width:100%;min-width:680px;border-collapse:collapse}.program-notion-table th,.program-notion-table td{padding:11px 12px;border-bottom:1px solid var(--border, #d7deea);text-align:left;vertical-align:top}.program-notion-table th{color:var(--muted-foreground, #64748b);background:#f8fafce6;font-size:.76rem;font-weight:800;text-transform:uppercase}.program-notion-table tbody tr{cursor:pointer}.program-notion-table tbody tr:hover,.program-notion-table tbody tr.active{background:#2563eb14}.program-notion-table tbody tr:last-child td{border-bottom:0}.program-notion-table td:first-child{width:58%}.program-notion-table td:first-child strong,.program-notion-table td:first-child span{display:block}.program-notion-table td:first-child span{margin-top:4px;color:var(--muted-foreground, #64748b);font-size:.82rem;line-height:1.35}.program-table-progress{display:grid;grid-template-columns:minmax(90px,1fr) auto;gap:8px;align-items:center}.program-table-progress strong{color:var(--foreground, #0f172a);font-size:.84rem}.program-reference-item{min-height:120px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;padding:12px;border:1px solid var(--border, #d7deea);border-radius:8px;background:var(--card, #ffffff);color:var(--foreground, #0f172a);text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.program-reference-item:hover{border-color:#2563eba6;box-shadow:0 8px 20px #0f172a14}.program-reference-item.active{border-color:var(--primary, #2563eb);background:#2563eb14;box-shadow:inset 3px 0 0 var(--primary, #2563eb)}.program-item-title{display:block;font-weight:700;line-height:1.28}.program-item-meta{display:block;color:var(--muted-foreground, #64748b);font-size:.82rem;line-height:1.35}.program-item-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}.program-progress-bar{height:7px;border-radius:999px;overflow:hidden;background:var(--muted, #e5e7eb)}.program-progress-bar span{display:block;height:100%;border-radius:inherit;background:var(--primary, #2563eb)}.program-detail-panel{position:sticky;top:16px;max-height:calc(100vh - 130px);overflow:auto}.program-detail-panel h3{margin:18px 0 8px;font-size:.96rem}.program-detail-panel p{line-height:1.55}.wide-panel{width:100%}.list-card{display:flex;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--border, #d7deea);border-radius:14px;background:var(--card, #ffffff)}.list-card h3{margin:0 0 6px}.list-card p{margin:0 0 6px;color:var(--muted-foreground, #64748b);line-height:1.45}.stack{display:flex;flex-direction:column;gap:12px}.row-actions{display:flex;flex-wrap:wrap;gap:8px}.small-button.active{border-color:var(--primary, #2563eb);background:#2563eb1f;color:var(--primary, #2563eb)}.dark .detail-block,.dark .curriculum-topic-item,.dark .list-card,.dark .search-input,.dark .program-domain-button,.dark .program-reference-item{background:#0f172ab8;border-color:#94a3b840;color:#e5e7eb}.dark .program-theme-block{background:#0f172a7a;border-color:#94a3b838}.dark .segmented-control,.dark .program-notion-table-wrap{background:#0f172ab8;border-color:#94a3b840}.dark .segmented-control button.active{background:#2563eb3d;color:#e5e7eb}.dark .program-notion-table th{background:#0f172adb}.dark .program-notion-table th,.dark .program-notion-table td{border-color:#94a3b838}.dark .curriculum-topic-item:hover{background:#2563eb2e}.dark .curriculum-topic-item.active{background:#2563eb42}.dark .program-domain-button:hover,.dark .program-domain-button.active,.dark .program-reference-item.active{background:#2563eb38}.dark .skill-chip,.dark .topic-progress{background:#94a3b824;border-color:#94a3b83d;color:#e5e7eb}@media (max-width: 1200px){.curriculum-explorer{grid-template-columns:1fr}.curriculum-tree-panel{max-height:none}.program-layout,.program-main-panel{grid-template-columns:1fr}.program-domain-panel,.program-detail-panel{position:static;max-height:none}.program-domain-list{max-height:none}.proposal-period-board{grid-template-columns:repeat(2,minmax(260px,1fr))}.teaching-time-summary,.proposal-period-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.curriculum-header-panel{flex-direction:column}.curriculum-header-actions{width:100%;min-width:0}.curriculum-stats-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}.progress-summary-card{grid-template-columns:1fr}.program-toolbar,.program-section-header{align-items:flex-start;flex-direction:column}.program-toolbar-actions{width:100%;justify-content:space-between}.proposal-period-board,.evaluation-picker-grid,.rubric-row,.teaching-time-summary,.proposal-period-metrics{grid-template-columns:1fr}}@media (max-width: 600px){.curriculum-stats-grid{grid-template-columns:1fr}.curriculum-topic-item{grid-template-columns:30px minmax(0,1fr)}.topic-progress{grid-column:2;justify-self:start}.list-card{flex-direction:column}.program-notion-grid,.program-domain-button{grid-template-columns:1fr}.program-toolbar-actions,.segmented-control{width:100%}.segmented-control button{flex:1}.proposal-topic-header,.proposal-topic-facts{grid-template-columns:1fr}}.establishment-autocomplete{position:relative;display:grid;gap:.35rem}.autocomplete-menu{position:absolute;top:calc(100% + .25rem);left:0;right:0;z-index:20;display:grid;gap:.25rem;max-height:260px;overflow:auto;padding:.35rem;border:1px solid hsl(var(--border));border-radius:8px;background:hsl(var(--card));box-shadow:var(--shadow-card)}.autocomplete-menu button{display:grid;gap:.15rem;width:100%;padding:.55rem .65rem;border:0;border-radius:6px;background:transparent;color:inherit;text-align:left;cursor:pointer}.autocomplete-menu button:hover{background:hsl(var(--surface))}.autocomplete-menu span{color:var(--muted);font-size:.8rem}.autocomplete-state{display:grid;gap:.35rem;padding:.6rem .65rem;color:var(--muted);font-size:.88rem}.autocomplete-missing-button{color:hsl(var(--primary));font-weight:700}.school-selected-note{grid-column:1 / -1;margin:-.35rem 0 0;color:var(--muted);font-size:.85rem}.warning-inline{margin-top:.65rem;color:#92400e;font-weight:700}.establishments-filter-grid{display:grid;grid-template-columns:minmax(220px,2fr) repeat(5,minmax(120px,1fr)) auto;gap:.65rem;align-items:end}.establishments-table{display:grid;gap:.4rem;overflow-x:auto}.establishments-table-head,.establishments-row{display:grid;grid-template-columns:90px minmax(220px,1.8fr) minmax(120px,1fr) minmax(120px,1fr) minmax(120px,1fr) minmax(120px,1fr) minmax(180px,1.2fr);gap:.65rem;min-width:980px;align-items:center}.establishments-table-head{color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.establishments-row{padding:.65rem;border:1px solid hsl(var(--border));border-radius:8px;background:hsl(var(--surface))}@media (max-width: 900px){.establishments-filter-grid{grid-template-columns:1fr}}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/90:hover{background-color:hsl(var(--secondary) / .9)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-60:disabled{opacity:.6}.dark\:border-slate-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.dark\:bg-slate-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.dark\:text-slate-100:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}
