/* Sultan's lilac learning world. Keep question text on calm, high-contrast surfaces. */
:root{color:#2b2340;background:#fcf9ff}
button:focus-visible,input:focus-visible,a:focus-visible{outline-color:#b14d9b}
.brand{color:#42236f}
.brand-mark{background:#7139ae;box-shadow:0 4px 13px #854cc044}
.top-label{color:#78658c}
.private-pill{background:#f0e5fb;color:#5c337d}
.hero{grid-template-columns:1fr .91fr;background:linear-gradient(120deg,#f3e9ff 0%,#f9eeff 48%,#f7d8ef 100%);box-shadow:0 12px 35px #7143a010}
.hero-copy{align-self:center}
.eyebrow{color:#7138a7}
.hero h1 em{color:#9045b7}
.hero p{color:#574d69}
.primary-btn{background:#6b32a2;box-shadow:0 9px 20px #6d2ca43b}
.primary-btn:hover{background:#522583}
.hero .hero-note{color:#685278}
.hero-art{min-height:475px;background:#d7b6f3;overflow:hidden}
.hero-art::before{content:'';position:absolute;z-index:1;top:0;bottom:0;left:0;width:24%;background:linear-gradient(90deg,#f6e8fa,transparent);pointer-events:none}
.hero-art img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:52% 50%}
.hero-art-star{position:absolute;z-index:1;right:5%;top:5%;font-size:36px;color:#fff5bd;text-shadow:0 3px 12px #7640a5}
.section-heading h2,.topics-header h3{color:#35234e}
.section-heading p{color:#766a85}
.mode-card{border-color:#e9ddf1;box-shadow:0 6px 16px #5b358709}
.mode-card:hover,.topic-btn:hover{box-shadow:0 10px 25px #6e3ca51f}
.mode-math{background:#eee5fb}.mode-german{background:#fff0e4}.mode-focus{background:#eaf7f3}.mode-book{background:#e9f0ff}.mode-material{background:#fff0f5}
.mode-math .mode-icon{background:#d8c3f3;color:#603499}
.mode-german .mode-icon{background:#ffdcbc;color:#915722}
.mode-focus .mode-icon{background:#d2eee5;color:#286b60}
.mode-book .mode-icon{background:#d1e1fc;color:#365a9a}
.mode-material .mode-icon{background:#fbd8e8;color:#a13e77}
.mode-text strong{color:#34264d}
.mode-text small{color:#685e72}
.mode-arrow{color:#8a59ac}
.topic-btn{border-color:#e9dbf2;color:#594172}
.topic-btn.math::before{color:#9558c8}
.topic-btn.german::before{color:#ef9c74}
.summary{border-color:#e8ddef}
.empty-progress{color:#695e73}
.empty-icon{background:#f0e5fc;color:#9255be}
.empty-progress strong{color:#3a2c4d}
.summary-number{color:#7138a7}
.summary-number small{color:#756783}
.skill-chip{border-color:#e6d8f0;background:#f9f4ff;color:#624484}
.skill-chip.weak{background:#fff0e3;border-color:#f3d8bb;color:#8d582f}
.small-action{color:#67369d}
.small-action.muted{color:#81778b}
.heroine-banner{position:relative;display:flex;align-items:center;gap:26px;margin-top:18px;padding:20px 34px 20px 20px;border-radius:20px;background:linear-gradient(105deg,#e6d2f9,#f8e4fa 72%,#ffe8db);overflow:hidden}
.heroine-banner img{width:154px;height:154px;object-fit:cover;border-radius:16px;box-shadow:0 7px 20px #6538912a;flex:none}
.heroine-banner h3{font-family:Fraunces,Georgia,serif;font-size:clamp(22px,2.3vw,29px);letter-spacing:-.035em;margin:9px 0 6px;color:#4a2a72}
.heroine-banner p{margin:0;color:#594a69;line-height:1.5;max-width:630px}
.banner-spark{margin-left:auto;color:#dd9d4e;font-size:46px;line-height:1}
footer{border-color:#e8ddef;color:#82768d}
footer span:first-child,footer a{color:#69428e}
.trainer{background:#fbf6ff}
.trainer-brand{color:#4b2e71}
.text-btn{color:#6a5c79}
.progress-meta{color:#654b80}
.progress-track{background:#eadcf4}
.progress-track div{background:linear-gradient(90deg,#9c5dc7,#ee9aba)}
.question-area{border-color:#e7d9ef;box-shadow:0 18px 45px #63379312}
.question-tag{background:#efe2fa;color:#6b36a3}
.question-tag.german{background:#ffebdb;color:#8e572c}
.detail{background:#f8f3fc;border-left-color:#b895d8;color:#4c405c}
.detail strong{color:#49316e}
.answer-input{border-color:#ddd0ea;color:#352447}
.choice{border-color:#e8dcf0;color:#3e3051}
.choice:hover:not(:disabled),.choice.selected{border-color:#a466cf;background:#f7effd}
.choice.correct{border-color:#65b899;background:#eafaef}
.choice.incorrect{border-color:#eaa57e;background:#fff0e5}
.feedback{background:#eaf8ef;border-color:#a5dcc0;color:#275b47}
.feedback.incorrect{background:#fff3e7;border-color:#f0d3b1;color:#704c31}
.end-heroine{display:block;width:clamp(150px,35vw,215px);height:clamp(150px,35vw,215px);object-fit:cover;border-radius:50%;border:5px solid #f4e6fc;margin:0 auto 18px;box-shadow:0 8px 27px #7039a529}
.end-icon{color:#d9a457}
.end-card p{color:#685975}
.end-actions .text-btn{border-color:#e1d5ea;color:#624381}
.end-stats span{background:#f5ebfc;color:#6a4591}
@media(max-width:850px){.hero-art{display:block;min-height:360px}.hero-art::before{width:100%;height:16%;bottom:auto;background:linear-gradient(#f5e8fb,transparent)}}
@media(max-width:600px){.hero-art{min-height:270px}.hero-art img{object-position:center 45%}.hero h1{font-size:clamp(35px,8vw,39px)}.heroine-banner{padding:14px;gap:14px}.heroine-banner img{width:94px;height:94px}.heroine-banner h3{font-size:20px}.heroine-banner p{font-size:12px}.banner-spark{display:none}}

.mode-extra{background:linear-gradient(110deg,#ead6fa,#ffe5f1)}
.mode-extra .mode-icon{background:#d8b5ed;color:#7137a9}
@media(min-width:851px){.mode-material{grid-column:auto}}

/* Compact offline practice */
.trainer-inner{max-width:720px;padding:16px 16px 30px}.trainer-head{margin-bottom:20px}.question-area{margin-top:16px;padding:22px}.question-area h2{font-size:clamp(23px,3vw,30px);margin:12px 0 16px}.detail{padding:12px 14px;margin-bottom:16px;line-height:1.5}.answer-input{height:48px}.choice{padding:11px 13px;min-height:48px}.trainer-actions{margin:12px 0}.feedback{padding:12px 16px;margin-top:12px}.feedback strong{font-size:17px}.figure-wrap{margin:12px 0}.figure-wrap img{max-height:240px;object-fit:contain}.wrong-answers{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.wrong-answers:empty{display:none}.wrong-answers s{color:#a44359;background:#fff0f3;border-radius:8px;padding:5px 10px;text-decoration-thickness:2px}.choice.incorrect{text-decoration:line-through;text-decoration-thickness:2px}@media(max-width:600px){.trainer-head{margin-bottom:16px}.question-area{padding:18px}.choice-list{gap:8px}}
