*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:#10233f;background:#f7faff}header{height:76px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 6%;position:sticky;top:0;z-index:10;border-bottom:1px solid #e4ebf5}.brand{display:flex;gap:12px;align-items:center}.brand small{display:block;color:#687b94}.mark{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#0759d8,#39b7ff);color:#fff;display:grid;place-items:center;font-weight:900}nav{display:flex;align-items:center;gap:18px}nav a{text-decoration:none;color:#18324f}button{border:1px solid #cbd8e9;background:#fff;border-radius:12px;padding:11px 16px;font-weight:700;color:#153454;cursor:pointer}.primary{background:#0759d8;color:white;border-color:#0759d8}.hero{min-height:520px;padding:80px 8%;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:55px;background:radial-gradient(circle at 80% 20%,#d9f4ff,transparent 35%),linear-gradient(135deg,#f7fbff,#edf5ff)}h1{font-size:56px;line-height:1.03;margin:16px 0;max-width:800px}h2{font-size:34px;margin:8px 0 20px}.hero p,.lead{font-size:18px;line-height:1.7;color:#526b87}.pill,.sectionhead span{font-size:12px;letter-spacing:1.5px;font-weight:900;color:#0759d8}.actions{display:flex;gap:12px;margin-top:25px}.tutor{background:#fff;border-radius:28px;padding:35px;text-align:center;box-shadow:0 20px 60px #163f6c1a}.face{font-size:80px}.levels,#subjects,#practice,.features{padding:65px 8%}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card,.level,.subject{background:#fff;border:1px solid #e1e9f4;border-radius:20px;padding:22px;box-shadow:0 8px 24px #15385f0a}.level,.subject{cursor:pointer}.level.active{outline:3px solid #8fcfff}.level b,.subject b,.card b{font-size:18px}.level p,.subject p,.card p{color:#657b94;line-height:1.5}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:20px}.sectionhead input,.practice input,.composer input{padding:14px;border:1px solid #cfdceb;border-radius:12px;min-width:280px;font-size:15px}.subjects{grid-template-columns:repeat(3,1fr)}.study{padding:65px 8%;display:grid;grid-template-columns:300px 1fr;gap:25px;background:#edf5ff}.study aside,.study article,.practice{background:#fff;border-radius:22px;padding:28px;border:1px solid #dce7f4}.study article{min-height:420px}.lessonBlock{padding:16px 0;border-bottom:1px solid #e8eef6}.lessonBlock h4{margin:0 0 7px}.lessonBlock p{line-height:1.65;color:#4c6580}.lessonActions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.response{margin-top:18px;padding:15px;border-radius:12px;background:#eef7ff;display:none;line-height:1.6}.practice{max-width:760px}.practice input{display:block;width:100%;margin:18px 0}.practice div{display:flex;gap:10px}.features{background:#fff}footer{padding:35px 8%;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;background:#0c2441;color:#fff}.modal{position:fixed;inset:0;background:#06182ca8;display:grid;place-items:center;z-index:30;padding:20px}.hidden{display:none}.modalbox{width:min(680px,100%);background:#fff;border-radius:22px;padding:28px;position:relative}.close{position:absolute;right:18px;top:15px;font-size:22px}.messages{height:300px;overflow:auto;background:#f5f8fc;border-radius:14px;padding:16px;margin:20px 0}.bot,.user{padding:11px 13px;border-radius:12px;margin:8px 0;max-width:85%}.bot{background:#e8f3ff}.user{background:#0759d8;color:#fff;margin-left:auto}.composer{display:flex;gap:8px}.composer input{flex:1}.note{display:block;color:#71839a;margin-top:12px}@media(max-width:900px){nav a{display:none}.hero{grid-template-columns:1fr;padding-top:55px}h1{font-size:42px}.grid,.subjects{grid-template-columns:repeat(2,1fr)}.study{grid-template-columns:1fr}.sectionhead{align-items:start;flex-direction:column}}@media(max-width:560px){header{padding:0 4%}.brand small{display:none}.hero,.levels,#subjects,#practice,.features,.study{padding:45px 5%}h1{font-size:36px}.grid,.subjects{grid-template-columns:1fr}.sectionhead input{width:100%;min-width:0}.actions,.composer{flex-direction:column}.practice div{flex-wrap:wrap}footer{flex-direction:column}}
.revision{padding:65px 8%;background:#f7faff}.revisionOutput{max-width:900px}.subject button{margin-top:8px}.subject:hover,.level:hover{transform:translateY(-2px);transition:.18s}.card button{margin-top:8px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #8fcfff;outline-offset:2px}

.quizOptions{display:grid;gap:10px;margin:16px 0}.quizOption{text-align:left;padding:14px;border:1px solid #d9e2f1;border-radius:12px;background:#fff;cursor:pointer}.quizOption.correct{border-color:#17803d;background:#eaf8ef}.quizOption.wrong{border-color:#b42318;background:#fff0ee}.dashboard{padding-top:20px}#assessment,#parentSummary{scroll-margin-top:90px}.quizOption:disabled{cursor:default;opacity:1}
.curriculum{padding:65px 8%;background:#fff}.curriculum select{padding:13px 14px;border:1px solid #cfdceb;border-radius:12px;background:#fff;color:#153454;font-weight:700;min-width:260px}.knowledgeGrid{display:grid;grid-template-columns:320px 1fr;gap:20px;margin-top:20px}.topicList{display:grid;gap:9px;margin-top:14px}.topicBtn{text-align:left;width:100%;background:#f7faff}.topicBtn.active{background:#e8f3ff;border-color:#8fcfff}.knowledgeCard{min-height:330px}.knowledgeCard h4{margin:18px 0 6px}.knowledgeCard p{color:#4c6580;line-height:1.65}.tagrow{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.tag{font-size:12px;background:#edf5ff;border-radius:999px;padding:6px 9px;color:#0759d8;font-weight:800}@media(max-width:900px){.knowledgeGrid{grid-template-columns:1fr}}@media(max-width:560px){.curriculum{padding:45px 5%}.curriculum select{width:100%;min-width:0}}

/* Ethan Tutor AI official logo */
.official-logo{width:82px;height:64px;object-fit:contain;border-radius:10px;background:#fff;display:block}
@media(max-width:700px){.official-logo{width:68px;height:54px}.brand b{font-size:.9rem}.brand small{font-size:.68rem}}
.smartStudy{padding:65px 8%;background:#eef6ff}.smartOutput{max-width:1000px}.smartGrid{grid-template-columns:repeat(4,1fr)}.flashcard{padding:28px;border-radius:18px;background:#fff;border:1px solid #d8e5f3;font-size:18px;line-height:1.6;margin-top:12px}.masteryBar{height:10px;background:#dce8f5;border-radius:999px;overflow:hidden;margin-top:10px}.masteryBar i{display:block;height:100%;background:#0759d8}.focusActive{font-weight:800;color:#0759d8}@media(max-width:900px){.smartGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.smartStudy{padding:45px 5%}.smartGrid{grid-template-columns:1fr}}

.examPrep{padding:65px 8%;background:#fff}.examGrid{grid-template-columns:repeat(4,1fr)}.examPanel{margin-top:22px;max-width:1000px}.examTimer{font-weight:900}.mistakeItem{padding:12px 0;border-bottom:1px solid #e3ebf5}.tutorStep{padding:15px;border-left:4px solid #8fcfff;background:#f7fbff;border-radius:10px;margin:10px 0}@media(max-width:900px){.examGrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.examPrep{padding:45px 5%}.examGrid{grid-template-columns:1fr}}
/* v1.6 production strengthening */
#mastery input[type="date"]{width:100%;box-sizing:border-box;margin:.75rem 0;padding:.8rem;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a}
.masteryRow{padding:.7rem 0;border-bottom:1px solid #e5e7eb}.masteryRow:last-child{border-bottom:0}.statusChip{display:inline-block;padding:.18rem .55rem;border-radius:999px;background:#e0f2fe;font-size:.78rem;font-weight:700}.noteBox{width:100%;min-height:90px;box-sizing:border-box;padding:.75rem;border:1px solid #cbd5e1;border-radius:10px;margin-top:.7rem}
/* v2.0 ecosystem + secure AI */
.integrationbar{margin:18px 8% 0;padding:14px 18px;border:1px solid #cfe3fb;border-radius:16px;background:#f0f7ff;display:flex;align-items:center;justify-content:space-between;gap:16px}.integrationbar div{display:grid;gap:3px}.integrationbar b{color:#0759d8;font-size:12px;letter-spacing:1px}.integrationbar span{font-size:13px;color:#526b87}.chatThinking{opacity:.72;font-style:italic}.sourceBadge{font-size:11px;font-weight:800;color:#0759d8;background:#e8f3ff;border-radius:999px;padding:4px 8px;display:inline-block;margin-bottom:8px}@media(max-width:560px){.integrationbar{margin:12px 5% 0;align-items:flex-start;flex-direction:column}.integrationbar button{width:100%}}

/* v2.1 performance and motion safety */
main>section{content-visibility:auto;contain-intrinsic-size:1px 700px}.hero,.integrationbar{content-visibility:visible}button{touch-action:manipulation}.official-logo{object-fit:contain}.modalbox{max-height:90vh;overflow:auto}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.subject:hover,.level:hover{transform:none!important}}

/* v2.2 Ask Ethan Tutor */
.tutorChatBox{width:min(780px,100%);display:flex;flex-direction:column}.chatHead{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-right:35px}.chatHead h2{margin:5px 0}.chatContext{margin:0;color:#60758d;font-size:13px}.smallBtn{padding:8px 11px}.quickPrompts{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0 4px}.quickPrompts button{padding:8px 10px;font-size:12px}.messages{height:min(46vh,390px);min-height:260px;scroll-behavior:smooth}.bot,.user{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55}.composer textarea{flex:1;resize:vertical;min-height:52px;max-height:150px;padding:13px;border:1px solid #cfdceb;border-radius:12px;font:inherit}.composer button{align-self:flex-end}.chatFooter{display:flex;justify-content:space-between;gap:10px;align-items:center}.chatFooter .note{margin-top:8px}.chatError{background:#fff1f1;color:#7d1e1e}.chatThinking::after{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;margin-left:7px;animation:tutorPulse 1s infinite alternate}@keyframes tutorPulse{to{opacity:.25}}@media(max-width:560px){.chatHead{flex-direction:column}.chatHead .smallBtn{width:auto}.messages{height:43vh}.composer textarea{width:100%}.composer button{width:100%}.chatFooter{align-items:flex-start;flex-direction:column}}
