@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&family=Montserrat:wght@600;700;800&display=swap";
:root{--bg:#efeae4;--surface:#ffffffd1;--surface-strong:#fbf8f4;--line:#08100f1a;--text:#08100f;--muted:#49605c;--accent:#46ada3;--accent-dark:#0f6972;--accent-soft:#46ada31f;--pink:#d064a3;--blue:#109bd3;--shadow:0 20px 60px #0f697214}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at top left, #46ada329, transparent 32%), radial-gradient(circle at top right, #d064a31a, transparent 26%), linear-gradient(180deg, #f4efe9 0%, var(--bg) 100%);min-height:100vh;color:var(--text);margin:0;font-family:Inter,sans-serif}input,button,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.home-shell{width:min(1120px,100vw - 28px);margin:0 auto;padding:20px 0 104px}.app-frame{min-height:100vh}.hero{border:1px solid var(--line);background:linear-gradient(180deg, #ffffffeb, #f4f9f8db), var(--surface);box-shadow:var(--shadow);border-radius:30px;padding:26px 22px 28px}.hero-home{position:relative;overflow:hidden}.hero-showcase{grid-template-columns:minmax(0,1fr) minmax(320px,460px);align-items:stretch;gap:20px;margin-top:18px;display:grid}.hero-copy{align-content:start;display:grid}.brand-lockup{align-items:center;display:inline-flex}.brand-logo{width:auto;max-width:204px;height:auto}.hero h1,.statement-panel h2,.info-card h2,.portal-header h1,.unit-hero h1,.access-copy h1,.closing-panel h2,.exercise-header h2{margin:0;font-family:Montserrat,sans-serif;font-weight:700;line-height:1.02}.hero h1{max-width:9ch;margin-top:8px;font-size:clamp(2.7rem,8vw,5.8rem)}.lede{max-width:620px;color:var(--muted);margin:18px 0 0;font-size:clamp(1rem,2vw,1.18rem);line-height:1.65}.product-card-copy{color:var(--muted);margin:16px 0 0;line-height:1.6}.diagnostic-shell{width:min(820px,100vw - 28px);margin:0 auto;padding:28px 0 92px}.diagnostic-header{color:var(--muted);justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px;font-size:.9rem;display:flex}.diagnostic-header span,.back-link{align-items:center;gap:8px;display:inline-flex}.back-link{color:var(--text);font-weight:700}.diagnostic-card,.diagnostic-result{border:1px solid var(--line);background:var(--surface-strong);box-shadow:var(--shadow);border-radius:8px;padding:clamp(24px,5vw,54px)}.diagnostic-card h1,.diagnostic-result h1{margin:10px 0 0;font-family:Montserrat,sans-serif;font-size:clamp(1.8rem,5vw,3.2rem);line-height:1.1}.diagnostic-progress{background:#08100f14;height:6px;margin:-54px -54px 32px;overflow:hidden}.diagnostic-progress span{background:var(--accent);height:100%;transition:width .18s;display:block}.diagnostic-options{gap:10px;margin-top:28px;display:grid}.diagnostic-option{border:1px solid var(--line);min-height:56px;color:var(--text);text-align:left;cursor:pointer;background:#fff;border-radius:6px;padding:14px 16px}.diagnostic-option:hover,.diagnostic-option.is-selected{border-color:var(--accent-dark);background:var(--accent-soft)}.diagnostic-actions{justify-content:space-between;gap:12px;margin-top:30px;display:flex}.button-link:disabled{opacity:.45;cursor:not-allowed}.icon-action{border:1px solid var(--line);width:50px;height:50px;color:var(--text);cursor:pointer;background:#fff;border-radius:6px;place-items:center;display:inline-grid}.icon-action:disabled{opacity:.35;cursor:not-allowed}.diagnostic-score-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px;display:grid}.diagnostic-score{border:1px solid var(--line);background:#fff;border-radius:6px;padding:18px}.diagnostic-score span,.diagnostic-score small{color:var(--muted);font-size:.8rem;display:block}.diagnostic-score strong{margin:8px 0 3px;font-size:1.65rem;display:block}.diagnostic-next{background:var(--accent-soft);color:var(--accent-dark);border-radius:6px;gap:14px;margin-top:26px;padding:20px;display:flex}.diagnostic-next strong{color:var(--text)}.diagnostic-next p{color:var(--muted);margin:7px 0 0;line-height:1.55}.diagnostic-review-callout{background:#eef8f6;border:1px solid #0f69723d;border-radius:6px;justify-content:space-between;align-items:end;gap:24px;margin-top:30px;padding:26px;display:flex}.diagnostic-review-callout h2,.review-card h2{margin:8px 0 0;font-family:Montserrat,sans-serif;font-size:1.4rem;line-height:1.2}.diagnostic-review-callout p:not(.section-kicker){color:var(--muted);margin:10px 0 0;line-height:1.55}.review-shell{width:min(1120px,100vw - 28px);margin:0 auto;padding:28px 0 92px}.review-intro{max-width:720px;margin:56px 0 34px}.review-intro h1{margin:10px 0 0;font-family:Montserrat,sans-serif;font-size:clamp(2.2rem,5vw,4.4rem);line-height:1.02}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.review-card{border:1px solid var(--line);background:var(--surface-strong);box-shadow:var(--shadow);border-radius:8px;flex-direction:column;align-items:flex-start;padding:28px;display:flex}.review-card>p:not(.section-kicker){color:var(--muted);margin:14px 0 0;line-height:1.6}.review-icon{background:var(--accent-soft);width:48px;height:48px;color:var(--accent-dark);border-radius:6px;place-items:center;margin-bottom:20px;display:inline-grid}.review-card ul{color:var(--muted);gap:12px;margin:24px 0 28px;padding:0;line-height:1.45;list-style:none;display:grid}.review-card li{gap:9px;display:flex}.review-card li svg{color:var(--accent-dark);flex:none;margin-top:2px}.review-card .primary-link{margin-top:auto}.review-trust{border-top:1px solid var(--line);max-width:760px;color:var(--accent-dark);gap:14px;margin:38px auto 0;padding:20px;display:flex}.review-trust strong{color:var(--text)}.review-trust p{color:var(--muted);margin:6px 0 0;line-height:1.55}@media (max-width:600px){.diagnostic-header{flex-direction:column;align-items:flex-start;margin-bottom:20px}.diagnostic-progress{margin:-24px -24px 26px}.diagnostic-score-grid{grid-template-columns:1fr}.diagnostic-review-callout{flex-direction:column;align-items:flex-start}.review-intro{margin-top:34px}.review-grid{grid-template-columns:1fr}}.hero-image-card{background:#ffffffa8;border:1px solid #08100f14;border-radius:30px;min-height:420px;position:relative;overflow:hidden}.hero-image{object-fit:cover;width:100%;height:100%;display:block}.hero-image-overlay{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffd6;border:1px solid #08100f14;border-radius:24px;padding:18px 18px 20px;position:absolute;bottom:16px;left:16px;right:16px;box-shadow:0 18px 32px #08100f1a}.hero-image-overlay h2{margin:10px 0 0;font-family:Montserrat,sans-serif;font-size:clamp(1.5rem,4vw,2.2rem);line-height:1.05}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}.primary-link,.secondary-link{border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:0 20px;font-size:.95rem;transition:transform .16s,background-color .16s;display:inline-flex}.primary-link{background:var(--accent);color:#fff;box-shadow:0 12px 24px #46ada33d}.secondary-link{border:1px solid var(--line);background:#ffffff9e}.primary-link:hover,.secondary-link:hover{transform:translateY(-1px)}.info-card,.statement-panel{border:1px solid var(--line);background:var(--surface-strong);box-shadow:var(--shadow);border-radius:28px}.info-card{padding:24px}.card-label{color:var(--accent-dark);text-transform:uppercase;letter-spacing:.16em;margin-bottom:14px;font-size:.78rem;font-weight:700;display:inline-block}.info-card h2{font-size:1.6rem}.info-card p{color:var(--muted);margin:14px 0 0;line-height:1.7}.chip-row{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.chip{background:#109bd31a;border-radius:999px;padding:10px 14px;font-size:.9rem}.chip-soft{background:var(--accent-soft)}.statement-panel{background:linear-gradient(#fffffff5,#f5f9f8fa);margin-top:24px;padding:24px 22px}.statement-panel h2{max-width:12ch;font-size:clamp(1.9rem,5vw,3.2rem)}.statement-list{gap:12px;margin:20px 0 0;padding:0;list-style:none;display:grid}.statement-list li{border:1px solid var(--line);background:#ffffffc7;border-radius:18px;padding:12px 14px;line-height:1.6}.access-card,.portal-header,.unit-hero,.exercise-panel{border:1px solid var(--line);background:var(--surface-strong);box-shadow:var(--shadow);border-radius:28px}.access-card{gap:18px;padding:22px;display:grid}.access-copy p:last-child{color:var(--muted);line-height:1.7}.access-form{border:1px solid var(--line);background:#ffffffc7;border-radius:22px;align-content:start;gap:16px;padding:18px 16px;display:grid}.field{gap:8px;display:grid;position:relative}.field span{color:var(--muted);font-size:.9rem}.field input{border:1px solid var(--line);width:100%;min-height:50px;color:var(--text);background:#fff;border-radius:16px;padding:0 14px}.field select,.field textarea{border:1px solid var(--line);width:100%;color:var(--text);resize:vertical;background:#fff;border-radius:16px;padding:14px}.field-icon{width:34px;height:34px;color:var(--accent-dark);pointer-events:none;background:#46ada324;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:34px;right:14px}.field-icon--blue{color:var(--blue);background:#109bd324}.field-icon--pink{color:var(--pink);background:#d064a324}.button-link{cursor:pointer;border:0}.form-error{color:var(--accent-dark);margin:0}.hint-box{border:1px solid var(--line);background:#fffc;border-radius:18px;padding:14px}.hint-box p,.hint-box ul{margin:0}.hint-box ul{gap:6px;margin-top:10px;padding-left:18px;display:grid}.portal-header,.unit-hero,.exercise-panel{padding:24px 22px}.card-grid{grid-template-columns:1fr;gap:14px;margin-top:24px;display:grid}.navigation-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffffc7;border-radius:24px;padding:20px;display:block}.navigation-card--generated{background:linear-gradient(#e6f4f2e0,#ffffffeb)}.navigation-card h2{margin:0;font-family:Montserrat,sans-serif;font-size:1.4rem;font-weight:700}.navigation-card p{color:var(--muted);margin:14px 0 0;line-height:1.7}.unit-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.meta-item{border:1px solid var(--line);background:#fff9;border-radius:18px;padding:16px}.meta-item span,.small-note,.exercise-index{color:var(--muted);font-size:.9rem}.meta-icon-wrap{width:34px;height:34px;color:var(--accent-dark);background:#46ada324;border-radius:50%;justify-content:center;align-items:center;margin-bottom:8px;display:inline-flex}.meta-icon-wrap--blue{color:var(--blue);background:#109bd324}.meta-icon-wrap--pink{color:var(--pink);background:#d064a324}.meta-icon-wrap--dark{color:var(--accent-dark);background:#0f697229}.meta-item strong{margin-top:6px;font-size:1rem;display:block}.exercise-header{justify-content:space-between;align-items:end;gap:20px;display:flex}.exercise-list{gap:16px;margin-top:24px;display:grid}.exercise-card{border:1px solid var(--line);background:#ffffffd1;border-radius:22px;padding:20px}.exercise-card h3{margin:8px 0 0;font-family:Montserrat,sans-serif;font-size:1.14rem;line-height:1.5}.exercise-type{text-transform:uppercase;letter-spacing:.08em;margin-left:8px;font-size:.75rem}.option-list{gap:10px;margin-top:16px;display:grid}.option-list-inline{grid-template-columns:repeat(2,minmax(0,1fr))}.option-item{border:1px solid var(--line);background:#ffffffeb;border-radius:16px;align-items:center;gap:10px;padding:12px 14px;display:flex}.feedback,.result-panel{border:1px solid var(--line);background:#109bd314;border-radius:18px;margin-top:16px;padding:14px 16px}.feedback p,.feedback span,.result-panel p,.result-panel h3{margin:0}.feedback span,.result-panel p{color:var(--muted);margin-top:8px;line-height:1.6;display:block}.feedback.good{background:#46ada31f}.inline-icon-badge{width:28px;height:28px;color:var(--accent-dark);vertical-align:middle;background:#46ada324;border-radius:50%;justify-content:center;align-items:center;margin-right:8px;display:inline-flex}.inline-icon-badge--soft{width:24px;height:24px;color:var(--blue);background:#109bd31f;margin-right:6px}.inline-icon-badge--tiny{width:22px;height:22px;margin-right:6px}.result-actions{margin-top:20px}.result-panel h3{font-family:Montserrat,sans-serif;font-size:1.8rem}.result-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.result-summary__item{border:1px solid var(--line);background:#ffffffb8;border-radius:18px;align-items:center;gap:10px;padding:14px;display:flex}.result-summary__item small{color:var(--muted);font-size:.8rem;display:block}.result-summary__item strong{margin-top:4px;font-family:Montserrat,sans-serif;font-size:1rem;display:block}.brand-pill,.section-kicker{color:var(--accent-dark);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:10px;font-size:.76rem;font-weight:700;display:inline-flex}.brand-pill{background:#46ada31f;border-radius:999px;padding:9px 12px}.brand-mark{background:radial-gradient(circle at 30% 30%, #fff 10%, var(--accent) 68%);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 3px #46ada324}.stack-section{gap:16px;margin-top:20px;display:grid}.stack-section-compact{gap:14px}.feature-panel,.closing-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffc;border-radius:28px;padding:22px}.step-list{gap:14px;margin-top:18px;display:grid}.step-item{align-items:flex-start;gap:12px;display:flex}.step-number{background:var(--accent);color:#fff;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;font-weight:700;display:inline-flex}.step-number--blue{background:var(--blue)}.step-number--pink{background:var(--pink)}.step-number--dark{background:var(--accent-dark)}.step-item strong,.mini-card strong,.closing-panel h2{font-family:Montserrat,sans-serif}.step-item p,.mini-card p,.statement-copy,.micro-note{color:var(--muted);margin:6px 0 0;line-height:1.6}.home-support-points{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.support-chip{border:1px solid var(--line);color:var(--ink);background:#ffffffd1;border-radius:999px;padding:10px 14px;font-size:.92rem}.mini-card-grid{gap:12px;margin-top:18px;display:grid}.mini-card{border:1px solid var(--line);background:#ffffffe0;border-radius:20px;padding:16px}.mini-card__icon-wrap{width:38px;height:38px;color:var(--accent-dark);background:#46ada324;border-radius:50%;justify-content:center;align-items:center;margin-bottom:10px;display:inline-flex}.mini-card__icon-wrap--blue{color:var(--blue);background:#109bd324}.mini-card__icon-wrap--pink{color:var(--pink);background:#d064a324}.chip-row-compact{margin-top:14px}.statement-panel-brand{position:relative}.statement-copy{margin-top:14px}.micro-note{margin-top:18px;font-size:.92rem}.closing-panel{gap:16px;margin-top:24px;display:grid}.closing-actions{flex-wrap:wrap;gap:12px;display:flex}.closing-panel h2{margin:0;font-size:clamp(1.8rem,5vw,2.8rem);line-height:1.1}.portal-brand,.unit-hero-brand{background:linear-gradient(#fffffff0,#f3faf9e6)}.feature-panel-soft{background:linear-gradient(#ffffffd6,#f3f9f8eb)}.feature-panel-highlight{background:linear-gradient(#e6f4f2bd,#ffffffdb)}.split-matrix{gap:16px;margin-top:16px;display:grid}.split-matrix__block{border:1px solid var(--line);background:#ffffffbd;border-radius:20px;padding:14px}.split-matrix__block strong{font-family:Montserrat,sans-serif}.split-matrix__title{align-items:center;gap:10px;margin-bottom:8px;display:flex}.access-benefits{gap:12px;margin-top:20px;display:grid}.access-benefit{border:1px solid var(--line);background:#ffffff9e;border-radius:18px;padding:14px 16px}.access-benefit strong{font-family:Montserrat,sans-serif;display:block}.access-benefit span{color:var(--muted);margin-top:6px;line-height:1.55;display:block}.bottom-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;border:1px solid #08100f14;border-radius:22px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:min(420px,100vw - 24px);padding:10px 12px;display:grid;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #08100f1f}.bottom-nav__item{color:var(--muted);text-transform:lowercase;border-radius:14px;justify-content:center;padding:10px 0;font-size:.86rem;display:inline-flex}.bottom-nav__item--active{background:var(--accent-soft);color:var(--accent-dark)}.teacher-brief-layout{gap:18px;display:grid}.teacher-brief-main{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:18px;display:grid}.teacher-brief-form,.teacher-brief-preview .preview-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#ffffffd6;border-radius:28px;padding:24px 22px}.teacher-brief-preview{gap:18px;display:grid}.teacher-brief-section+.teacher-brief-section{margin-top:20px}.teacher-brief-section__header h2{margin:8px 0 0;font-family:Montserrat,sans-serif;font-size:1.25rem}.teacher-brief-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.field-wide{grid-column:1/-1}.teacher-brief-actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.teacher-brief-secondary{gap:14px;display:grid}.secondary-panel{border:1px solid var(--line);background:#ffffffb8;border-radius:24px;overflow:hidden}.secondary-panel summary{cursor:pointer;padding:18px 22px;font-family:Montserrat,sans-serif;font-size:1rem;list-style:none}.secondary-panel summary::-webkit-details-marker{display:none}.secondary-panel>.preview-card{border:0;border-top:1px solid var(--line);box-shadow:none;border-radius:0;margin:0}.preview-card h2{margin:10px 0 0;font-family:Montserrat,sans-serif;font-size:1.7rem}.preview-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.teacher-summary-block{border:1px solid var(--line);background:#ffffffbd;border-radius:20px;margin-top:18px;padding:16px}.teacher-summary-block strong,.access-code-panel h3{font-family:Montserrat,sans-serif}.teacher-summary-block p,.access-code-panel p{color:var(--muted);margin:8px 0 0;line-height:1.6}.access-code-panel{border:1px solid var(--line);background:linear-gradient(#e6f4f2cc,#ffffffe6);border-radius:22px;margin-top:18px;padding:18px}.access-code-panel h3{margin:10px 0 0;font-size:2rem;line-height:1}.saved-brief-list{gap:12px;margin-top:18px;display:grid}.saved-brief-card{border:1px solid var(--line);background:#ffffffc7;border-radius:20px;padding:16px}.saved-brief-card__top{justify-content:space-between;align-items:start;gap:12px;display:flex}.saved-brief-card__top strong{font-family:Montserrat,sans-serif}.saved-brief-card__top p,.saved-brief-card__summary,.saved-brief-card small{color:var(--muted)}.saved-brief-card__top p{margin:6px 0 0}.saved-brief-card__summary{margin:12px 0;line-height:1.55}.saved-brief-card__actions{margin-bottom:12px}.saved-brief-generate{gap:8px;min-height:42px;padding:0 16px}.published-code-badge{min-height:42px;padding:0 16px}.icon-button{width:36px;height:36px;color:var(--pink);cursor:pointer;background:#d064a31f;border:0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.draft-unit-list{gap:12px;margin-top:18px;display:grid}.draft-unit-actions,.draft-access-code-panel{margin-top:16px}.draft-unit-card{border:1px solid var(--line);background:#ffffffc7;border-radius:20px;padding:16px}.draft-unit-card__top{align-items:center;gap:12px;display:flex}.draft-unit-card__top strong{font-family:Montserrat,sans-serif;display:block}.draft-unit-card__top small,.draft-unit-card span,.draft-unit-card p{color:var(--muted)}.draft-unit-card__top small{margin-top:4px;display:block}.draft-unit-card p{margin:12px 0;line-height:1.6}.draft-option-list{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.draft-option-list li{color:var(--ink);background:#46ada317;border-radius:14px;padding:10px 12px;font-size:.94rem}.draft-unit-card span{font-size:.92rem;line-height:1.55;display:block}@media (max-width:900px){.hero-showcase,.teacher-brief-main,.teacher-brief-grid,.result-summary,.unit-meta,.access-card{grid-template-columns:1fr}.teacher-brief-layout{gap:14px}.hero{padding:24px 20px 28px}.home-shell{width:min(100vw - 18px,1120px);padding:14px 0 104px}.hero-image-card{min-height:360px}.secondary-panel summary{padding:16px 18px}}
