:root{--blue: #0059d2;--green: #00aa64;--gold: #ffb900;--ink: #052142;--white: #ffffff;--surface: var(--white);--text: var(--ink);--accent-text: var(--blue);color-scheme:light;--muted: color-mix(in srgb, var(--ink) 76%, var(--surface));--border: color-mix(in srgb, var(--blue) 22%, var(--surface));--paper: color-mix(in srgb, var(--blue) 3%, var(--surface));font-family:Trebuchet MS,Segoe UI,sans-serif;color:var(--text);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;min-height:48px;border:0;border-radius:16px;background:var(--blue);color:var(--white);padding:14px 22px;font-weight:700}button:hover{filter:brightness(.94)}button:disabled{opacity:.55;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px;box-shadow:0 0 0 7px var(--gold)}h1,h2{font-family:inherit;font-weight:700;line-height:1.15}h1{font-size:clamp(32px,4vw,52px);letter-spacing:-1.5px;margin:18px 0}h2{font-size:26px;letter-spacing:-.6px}p{line-height:1.7;color:var(--muted)}main{padding:40px;max-width:1440px;width:100%;margin:auto}.brand{display:flex;gap:14px;align-items:center;font-size:24px;font-weight:700}.brand b{color:var(--accent-text)}.brand small{display:block;font-size:10px;letter-spacing:1.3px;margin-top:7px;font-weight:700}.brand-icon{display:block;width:76px;height:76px;object-fit:contain;flex-shrink:0}.eyebrow{font-size:11px;letter-spacing:1.6px;color:var(--accent-text);font-weight:700;margin-top:30px}.auth{min-height:100vh;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:80px;max-width:1200px;position:relative}.auth:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 8% 12%,color-mix(in srgb,var(--blue) 10%,transparent),transparent 52%),radial-gradient(ellipse at 82% 94%,color-mix(in srgb,var(--green) 10%,transparent),transparent 45%)}.auth .brand-icon{width:138px;height:138px}.auth .brand{font-size:29px;gap:18px}.auth h1{font-size:clamp(44px,5vw,64px);line-height:1.06;margin-top:22px}.auth-card{background:var(--surface);padding:38px;border:1px solid var(--border);border-radius:30px;box-shadow:0 18px 65px color-mix(in srgb,var(--blue) 9%,transparent)}.auth-card h2{font-size:27px}label{display:flex;flex-direction:column;gap:9px;font-size:14px;font-weight:700;color:var(--text);margin:18px 0}input,select,textarea{width:100%;min-height:48px;padding:13px;border:1px solid var(--muted);border-radius:12px;background:var(--surface);color:var(--text)}textarea{min-height:100px}.secondary{background:var(--surface);color:var(--accent-text);border:1px solid var(--blue);margin-top:12px}.auth button{width:100%}blockquote{border-left:5px solid var(--gold);padding:12px 20px;margin:32px 0;font-weight:700;line-height:1.7;background:color-mix(in srgb,var(--gold) 10%,var(--surface));border-radius:0 18px 18px 0}.workspace{display:grid;grid-template-columns:280px 1fr;min-height:100vh}aside{padding:28px 18px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column}aside .brand{font-size:19px;gap:8px}aside .brand-icon{width:66px;height:66px}aside .brand small{font-size:8px;letter-spacing:.7px}nav{margin-top:36px;display:grid;gap:7px}nav button{text-align:left;background:none;color:var(--muted);font-size:14px;font-weight:600;padding:12px 16px}nav button span{display:inline-block;width:30px;font-size:22px;color:var(--accent-text)}nav button.active{color:var(--accent-text);background:color-mix(in srgb,var(--blue) 9%,var(--surface));font-weight:700}.aside-note{margin-top:auto;padding:60px 16px 0;font-size:14px}header{display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid var(--border);padding-bottom:24px;font-size:12px;color:var(--muted)}header .brand{font-size:22px}header .brand-icon{width:74px;height:74px}.lead{font-size:18px}.welcome{background:linear-gradient(110deg,color-mix(in srgb,var(--blue) 9%,var(--surface)),color-mix(in srgb,var(--green) 11%,var(--surface)));padding:32px 36px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-radius:28px;margin:30px 0 40px;border:1px solid var(--border)}.welcome p{max-width:480px}.tag{font-size:11px;letter-spacing:1px;font-weight:700;color:var(--accent-text)}.welcome-art{width:190px;height:190px;object-fit:contain;flex-shrink:0}.shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.shortcut{text-align:left;background:var(--surface);color:var(--text);border:1px solid var(--border);padding:22px;min-height:160px;display:flex;flex-direction:column;align-items:flex-start;gap:16px;border-radius:22px}.shortcut:hover{border-color:var(--accent-text);box-shadow:0 8px 22px color-mix(in srgb,var(--blue) 8%,transparent)}.shortcut span:last-child{font-weight:400;font-size:13px;color:var(--muted)}.number{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;font-size:12px;background:color-mix(in srgb,var(--blue) 10%,var(--surface));color:var(--accent-text)}.shortcut:nth-child(3n+2) .number{background:color-mix(in srgb,var(--green) 16%,var(--surface));color:var(--text)}.shortcut:nth-child(3n) .number{background:color-mix(in srgb,var(--gold) 24%,var(--surface));color:var(--text)}.recent{margin-top:36px}.recent p{font-size:14px}footer{border-top:1px solid var(--border);margin-top:50px;padding-top:22px;font-size:12px;color:var(--muted)}.student-form{background:var(--surface);border:1px solid var(--border);padding:28px;border-radius:24px;margin-top:30px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.check{flex-direction:row;align-items:center;line-height:1.5}.check input{width:24px;height:24px;min-height:24px;flex-shrink:0;accent-color:var(--accent-text)}details{padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:18px;margin:12px 0}summary{cursor:pointer;min-height:28px}dl{display:grid;grid-template-columns:1fr 2fr;gap:12px;font-size:14px}dd{margin:0}.stub{min-height:65vh;padding-top:50px}@media(max-width:1150px){.shortcuts{grid-template-columns:1fr 1fr}.workspace{grid-template-columns:245px 1fr}main{padding:26px}.welcome-art{width:135px;height:135px}aside .brand-icon{width:48px;height:48px}.auth{gap:40px}}@media(max-width:720px){.auth{grid-template-columns:1fr;gap:16px;padding:24px}.auth .brand{font-size:23px;gap:10px}.auth .brand-icon{width:94px;height:94px}.auth h1{font-size:44px}.auth-card{padding:24px;border-radius:24px}.workspace{display:block}aside{padding:20px}nav{display:flex;overflow:auto;margin-top:20px}nav button{white-space:nowrap;flex-shrink:0}.aside-note{display:none}aside>.secondary{align-self:flex-start}.fields{grid-template-columns:1fr}.welcome{padding:24px}.welcome-art{display:none}header{align-items:flex-start;flex-direction:column}.shortcuts{gap:10px}.shortcut{padding:16px}.student-form{padding:20px}}@media(prefers-reduced-motion:no-preference){.welcome{animation:arrive .5s ease-out}@keyframes arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-size:24px;font-weight:700;padding:0 0 12px}.curriculum-notice{border-left:4px solid var(--gold);background:color-mix(in srgb,var(--gold) 12%,var(--surface));padding:16px 20px;border-radius:0 14px 14px 0}.preserve-lines{white-space:pre-wrap}.analysis-result{margin-top:24px;padding:20px;border:1px solid var(--border);border-radius:16px;max-height:360px;overflow:auto}.material-review{margin-top:36px}.support-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.support-tabs button{margin:0}.material-preview{background:var(--surface);padding:32px;border:1px solid var(--border);border-radius:24px}.question-block{margin:28px 0;padding:20px 0;border-top:1px solid var(--border);break-inside:avoid}.question-block h3{font-size:19px;line-height:1.6}.question-scaffold{background:color-mix(in srgb,var(--green) 8%,var(--surface));padding:12px;border-radius:12px}.answer-options{list-style:none;padding-left:0}.answer-options li{padding:12px 0}.response-space{min-height:80px;border:1px solid var(--border);border-radius:12px}.teacher-answer{border-left:4px solid var(--blue);padding-left:12px}.approval,.export-panel{margin-top:24px;padding:24px;border:1px solid var(--border);border-radius:20px}.export-panel button{margin-right:12px}.activity-list{display:grid;gap:8px}.activity-list button{text-align:left}@media(max-width:720px){.material-preview{padding:20px}.support-tabs{display:grid}.export-panel button{width:100%}}.profile-choice{margin-bottom:24px}.profile-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px}.profile-modes label{border:2px solid var(--border);border-radius:18px;padding:20px;cursor:pointer}.profile-modes label.selected{border-color:var(--accent-text);background:color-mix(in srgb,var(--blue) 5%,var(--surface))}.profile-modes input{width:22px;height:22px}.profile-modes strong,.profile-modes span{display:block}.profile-modes span{font-size:14px;margin-top:8px}@media(max-width:720px){.profile-modes{grid-template-columns:1fr}}:root[data-theme=dark]{color-scheme:dark;--paper: var(--ink);--surface: color-mix(in srgb, var(--ink) 92%, var(--blue));--text: var(--white);--muted: color-mix(in srgb, var(--white) 78%, var(--ink));--border: color-mix(in srgb, var(--white) 40%, var(--surface));--accent-text: color-mix(in srgb, var(--blue) 50%, var(--white))}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:28px;min-width:0}.settings-card h2{font-size:24px;margin-top:14px}.settings-card fieldset{border:0;padding:0;margin:0}.settings-card details{margin-top:20px;line-height:1.6}.settings-card summary{cursor:pointer;color:var(--accent-text);padding:8px 0;font-weight:700}.settings-card .theme-options{display:flex;flex-wrap:wrap;gap:10px}.theme-options legend{margin-bottom:10px}.theme-options label{flex-direction:row;align-items:center;border:2px solid var(--border);border-radius:14px;padding:12px;margin:0;cursor:pointer}.theme-options label.selected{border-color:var(--accent-text);background:color-mix(in srgb,var(--blue) 9%,var(--surface))}.theme-options input{width:20px;min-height:20px;height:20px}.settings-care{grid-column:1 / -1;display:flex;align-items:center;gap:32px}.settings-care button{flex-shrink:0}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:900px){.settings-grid{grid-template-columns:1fr}.settings-care{display:block}}@media(max-width:480px){.settings-card{padding:20px}.settings-card button{width:100%}}.pei-tabs,.pei-actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.pei-student{display:block;max-width:560px;margin:24px 0}.pei-field-editor{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;padding:20px 0;border-bottom:1px solid var(--border)}.pei-list-item{display:block;width:100%;text-align:left;margin:12px 0}.pei-record{padding:20px 0;border-bottom:1px solid var(--border)}.pei-review>section{padding:12px 0 26px;border-bottom:1px solid var(--border)}.preset-picker{margin:20px 0}@media(max-width:700px){.pei-field-editor{grid-template-columns:1fr}.pei-actions button,.pei-tabs button{width:100%}}.visual-groups{display:grid;gap:1rem;margin:1rem 0}.visual-group{border:1px solid var(--border);border-radius:1rem;padding:1rem}.visual-symbols{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.visual-symbols img{object-fit:contain;background:#fff;border-radius:.35rem;flex-shrink:0}.visual-credit{font-size:.85rem;line-height:1.6}.lesson-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin:1.25rem 0}.lesson-column{border:1px solid var(--border);border-radius:1rem;padding:1.25rem;min-width:0;overflow-wrap:anywhere}.lesson-column h4{margin-bottom:.4rem}.lesson-column section+section{margin-top:1.5rem}@media(max-width:760px){.lesson-comparison{grid-template-columns:1fr}}
