/* e-libro / adult editorial learning space — isolated from e-librito. */
body.student-app.adult-app{--adult-ink:#172039;--adult-paper:#fffaf0;--adult-blue:#3c46dc;--adult-yellow:#ffe14b;--adult-line:#172039;--ww-outline:var(--adult-ink);--ww-shadow:var(--adult-ink);--ww-background:var(--adult-paper);--ww-panel:#fffef8;--ww-cream:var(--adult-paper);--ww-text:var(--adult-ink);--ww-sun:var(--adult-yellow);--ww-sky-light:#dce6fa;--ww-ocean-dark:#343dc2;--ink:var(--adult-ink);--paper:var(--adult-paper);background:var(--adult-paper);color:var(--adult-ink);font-family:'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
.adult-app.student-app :is(h1,h2,h3,.brand){font-family:'Segoe UI',Arial,sans-serif;font-weight:750;letter-spacing:-.045em}
.adult-app.student-app .topbar{position:relative;display:flex;align-items:center;flex-wrap:nowrap;gap:38px;min-height:92px;padding:22px max(36px,calc((100vw - 1180px)/2));background:var(--adult-paper);border-bottom:1px solid #17203935;box-shadow:none;backdrop-filter:none}
.adult-app .brand{font-size:31px;letter-spacing:-1.5px;gap:10px}.adult-app .brand-mark{width:28px;height:28px;color:var(--adult-ink)}
.adult-topnav{display:flex;gap:30px;align-items:center;flex:1}.adult-topnav a{font-size:14px;font-weight:650;text-decoration:none;white-space:nowrap}.adult-topnav a:hover{text-decoration:underline;text-underline-offset:6px}
.adult-app.student-app .header-actions{display:flex;align-items:center;gap:16px;flex-wrap:nowrap;min-width:0}.adult-app .passport{display:none}
.adult-language-switch{display:flex;align-items:center;gap:3px;font-size:12px}.adult-app.student-app .adult-language-switch button{padding:4px;min-height:32px;min-width:27px;background:none;border:0;box-shadow:none;border-radius:0;font-size:12px;color:var(--adult-ink);opacity:.55}.adult-app.student-app .adult-language-switch button[aria-pressed=true]{opacity:1;text-decoration:underline;text-underline-offset:4px}
.adult-app.student-app .student-account-button{min-height:40px;max-width:155px;padding:8px 16px;border:1.5px solid var(--adult-ink);border-radius:0;box-shadow:none;background:var(--adult-paper);--button-color:var(--adult-paper);font-size:13px;color:var(--adult-ink)}
.adult-app.student-app #menu-toggle{display:flex;justify-content:center;align-items:center;min-width:38px;min-height:38px;padding:8px;border:0;border-radius:0;box-shadow:none;background:none;--button-color:transparent}.adult-app #menu-toggle>span:first-child{display:none}.adult-app .hamburger{width:21px}
.adult-app.student-app main{max-width:none;width:100%;margin:0;padding:0 0 80px}.adult-app main:focus{outline:none}
.adult-hero{width:calc(100% - 80px);max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:76px;align-items:center;padding:76px 0 52px}
.adult-kicker{display:flex;align-items:center;gap:10px;font-family:Consolas,'Courier New',monospace;font-size:11px;font-weight:700;letter-spacing:.11em;line-height:1.5}.adult-kicker>span{display:block;width:8px;height:8px;background:var(--adult-blue);border-radius:50%}
.adult-app .adult-hero h1{font-size:clamp(48px,5.3vw,74px);line-height:1.08;margin:24px 0 22px;font-weight:750;letter-spacing:-.065em}.adult-hero h1 em{display:block;color:var(--adult-blue);font-family:Georgia,'Times New Roman',serif;font-size:1.13em;font-weight:500;letter-spacing:-.06em;line-height:1.1}
.adult-lead{max-width:460px;font-size:17px;line-height:1.75;color:#495064;margin:0 0 28px}.adult-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:21px}
.adult-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px;min-height:54px;border:2px solid var(--adult-ink);box-shadow:4px 4px 0 var(--adult-ink);font-size:14px;font-weight:750;text-decoration:none;color:var(--adult-ink);transition:transform .15s,box-shadow .15s}.adult-btn-yellow{background:var(--adult-yellow)}.adult-btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--adult-ink)}.adult-text-link{font-size:13px;font-weight:650;text-underline-offset:5px;text-decoration-thickness:1px}.adult-hero-note{display:flex;gap:9px;align-items:center;font-size:12px;color:#586071;margin-top:31px}.adult-note-mark{display:grid;place-items:center;border:1px solid var(--adult-ink);width:17px;height:17px;flex:0 0 17px;font-size:10px;color:var(--adult-ink)}
.adult-reel-wrap{position:relative;min-width:0;padding:12px 0 20px}.adult-reel-card{border:2px solid var(--adult-ink);background:var(--adult-paper);box-shadow:8px 8px 0 var(--adult-ink);transform:rotate(-2deg);overflow:hidden}.adult-reel-bar{display:flex;align-items:center;gap:8px;background:var(--adult-ink);color:var(--adult-paper);padding:12px 14px;font-family:Consolas,monospace;font-size:9px;letter-spacing:.06em}.adult-live-dot{width:6px;height:6px;border-radius:50%;background:var(--adult-yellow)}.adult-reel-count{margin-left:auto;opacity:.7;font-size:8px}.adult-reel-stage{position:relative;min-height:380px;background:#d7e2fa;display:flex;flex-direction:column;justify-content:end}.adult-reel-art{position:absolute;inset:0;overflow:hidden;background:#d7e2fa}.adult-art-grid{position:absolute;inset:0;background-image:linear-gradient(#17203913 1px,transparent 1px),linear-gradient(90deg,#17203913 1px,transparent 1px);background-size:30px 30px}.adult-art-caption{position:absolute;left:26px;top:26px;font-family:Consolas,monospace;font-size:9px;letter-spacing:.14em}.adult-art-word{position:absolute;left:17px;top:65px;font-family:Georgia,serif;font-size:clamp(100px,11vw,157px);font-weight:700;line-height:1;letter-spacing:-.08em;color:var(--adult-blue)}.adult-art-word>span{color:var(--adult-ink)}.adult-art-bubble{position:absolute;right:23px;top:225px;padding:12px 20px;font-family:Georgia,serif;font-style:italic;font-size:24px;border:2px solid var(--adult-ink);background:var(--adult-paper);box-shadow:4px 4px 0 var(--adult-ink);transform:rotate(7deg)}.adult-art-bubble:after{content:'';position:absolute;bottom:-10px;left:25px;width:14px;height:14px;background:var(--adult-paper);border-right:2px solid var(--adult-ink);border-bottom:2px solid var(--adult-ink);transform:skewY(30deg)}.adult-art-bottom{position:absolute;left:24px;bottom:104px;font-family:Consolas,monospace;font-size:8px;color:#48526b}.adult-app.student-app .adult-reel-play{position:relative;z-index:1;display:flex;justify-content:flex-start;align-items:center;gap:13px;background:var(--adult-paper);--button-color:var(--adult-paper);color:var(--adult-ink);border:0;border-top:2px solid var(--adult-ink);border-radius:0;box-shadow:none;padding:16px;text-align:left;min-height:78px;white-space:normal;line-height:1.35;font-size:13px;transform:none}.adult-reel-play small{display:block;font-size:10px;font-weight:500;margin-top:5px;color:#5a6274}.adult-play-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border:1.5px solid var(--adult-ink);border-radius:50%;font-size:12px;background:var(--adult-yellow)}.adult-reel-footer{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:12px 14px;border-top:1px solid #17203940;font-size:9px;line-height:1.4}.adult-reel-footer a{font-weight:750;white-space:nowrap;text-underline-offset:3px}.adult-reel-sticker{position:absolute;right:-22px;top:-5px;z-index:2;transform:rotate(9deg);background:var(--adult-yellow);border:2px solid var(--adult-ink);padding:14px;font-family:Consolas,monospace;line-height:1.5;font-size:10px;font-weight:800;box-shadow:3px 3px 0 var(--adult-ink)}.adult-reel-under{display:flex;align-items:center;justify-content:end;gap:15px;font-family:Consolas,monospace;font-size:9px;letter-spacing:.1em;padding:20px 7px 0}.adult-hand-arrow{font-family:Georgia,serif;font-size:42px;line-height:1;transform:rotate(15deg)}.adult-reel-stage.is-loaded{height:510px;min-height:0;background:white}.adult-instagram-frame{display:block;position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}
.adult-principles{display:flex;justify-content:space-between;gap:24px;max-width:1180px;width:calc(100% - 80px);margin:6px auto 0;padding:24px 0;border-top:1px solid var(--adult-ink);border-bottom:1px solid var(--adult-ink);font-size:13px;font-weight:600}.adult-principles b{font-family:Consolas,monospace;font-size:10px;font-weight:500;color:var(--adult-blue);margin-right:12px}
.adult-catalog,.adult-method{max-width:1180px;width:calc(100% - 80px);margin:0 auto;padding:72px 0 0}.adult-section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:32px}.adult-app .adult-section-heading h2,.adult-app .adult-method h2{font-size:clamp(30px,3.2vw,43px);line-height:1.13;margin:15px 0 0;letter-spacing:-.05em}.adult-section-heading>p{max-width:340px;margin:0 0 3px;font-size:14px;line-height:1.8;color:#515a6c}.adult-empty-library{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:center;min-height:280px;padding:38px 50px;background:#f0eee6;border:1.5px solid var(--adult-ink)}.adult-empty-symbol{display:flex;justify-content:center;gap:10px;font-family:Consolas,monospace;font-size:90px;color:var(--adult-blue);line-height:1}.adult-empty-symbol i{font-family:Georgia,serif;font-size:110px;font-style:italic;color:var(--adult-ink);margin-top:-13px}.adult-small-label{font-family:Consolas,monospace;font-size:9px;letter-spacing:.12em;color:#586174}.adult-app .adult-empty-library h3{font-size:29px;line-height:1.2;margin:14px 0}.adult-empty-library p{font-size:13px;line-height:1.8;max-width:480px;color:#4b5366}.adult-empty-library .adult-text-link{display:inline-block;margin-top:7px}
.adult-method{padding-top:70px}.adult-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:30px}.adult-method-grid article{position:relative;border:1.5px solid var(--adult-ink);padding:25px 25px 22px;background:#e2e9fb;box-shadow:4px 4px 0 var(--adult-ink)}.adult-method-grid article:nth-child(2){background:#f3e4d9}.adult-method-grid article:nth-child(3){background:#e6eadb}.adult-method-number{font-family:Consolas,monospace;font-size:11px}.adult-app .adult-method-grid h3{font-size:23px;line-height:1.2;margin:36px 0 12px}.adult-method-grid p{font-size:13px;line-height:1.8;margin:0;color:#3d475c}
.adult-bottom-banner{display:flex;align-items:center;justify-content:space-between;gap:35px;max-width:1180px;width:calc(100% - 80px);margin:80px auto 0;padding:46px 50px;background:var(--adult-ink);color:var(--adult-paper);border:1.5px solid var(--adult-ink)}.adult-bottom-banner .adult-kicker{font-size:10px;color:#bcc5df}.adult-app .adult-bottom-banner h2{font-size:clamp(30px,3.2vw,43px);line-height:1.15;margin:18px 0 26px;letter-spacing:-.04em}.adult-bottom-banner .adult-btn{box-shadow:4px 4px 0 #b2bade}.adult-banner-art{display:flex;flex-direction:column;align-items:center;padding-right:65px;transform:rotate(-9deg)}.adult-banner-art>span{font-family:Georgia,serif;font-size:135px;font-style:italic;line-height:1;color:var(--adult-yellow);letter-spacing:-.06em}.adult-banner-art small{font-family:Consolas,monospace;font-size:9px;letter-spacing:.15em;margin-top:10px}
.adult-course-grid:has(.adult-course-card){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.adult-course-card{display:flex;flex-direction:column;min-height:235px;padding:22px;border:1.5px solid var(--adult-ink);box-shadow:4px 4px 0 var(--adult-ink);text-decoration:none;background:#e2e9fb;transition:transform .15s}.adult-course-card:nth-child(3n+2){background:#f3e4d9}.adult-course-card:nth-child(3n+3){background:#e6eadb}.adult-course-card:hover{transform:translateY(-3px)}.adult-course-meta,.adult-course-bottom{display:flex;justify-content:space-between;gap:12px;font-family:Consolas,monospace;font-size:10px}.adult-app .adult-course-card h3{font-size:25px;line-height:1.15;margin:25px 0 10px}.adult-course-card p{font-size:13px;line-height:1.6;margin:0 0 25px}.adult-course-bottom{margin-top:auto;border-top:1px solid #17203940;padding-top:14px;font-size:9px}.adult-catalog-tools{margin-bottom:26px}.adult-catalog-tools label{display:block;font-size:12px;font-weight:700;margin-bottom:8px}.adult-catalog-tools>div{display:flex;align-items:center;gap:12px;border:1.5px solid var(--adult-ink);padding:10px 15px;max-width:500px;background:#fffef8}.adult-catalog-tools input{flex:1;min-width:0;border:0;background:transparent;font-size:14px;outline:none}.adult-catalog-tools p{font-size:12px;color:#50596b}
.adult-app .app-legal-links{display:flex;align-items:center;justify-content:flex-end;flex-direction:row;max-width:1180px;width:calc(100% - 80px);padding:25px 0;margin:0 auto;border-top:1px solid #17203940;gap:22px}.adult-app .app-legal-links a{display:block;min-height:0;width:auto;padding:0;background:none;border:0;border-radius:0;box-shadow:none;font-size:10px;text-decoration:underline;text-underline-offset:4px;font-weight:500}.adult-footer-signature{margin-right:auto;font-size:24px;font-weight:800;letter-spacing:-.05em}.adult-footer-signature span{display:block;font-size:11px;font-weight:400;color:#545d70;letter-spacing:0;margin-top:5px}
.adult-app.student-app .site-menu{border:1.5px solid var(--adult-ink);border-radius:0;box-shadow:6px 6px 0 var(--adult-ink);background:var(--adult-paper)}.adult-app.student-app .site-menu nav a{border-radius:0;box-shadow:2px 2px 0 var(--adult-ink);font-size:14px}.adult-app .site-menu .menu-heading{background:var(--adult-paper)}.adult-app .site-menu .local-emoji{display:none}.adult-app .native-language-cards{border-radius:0}.adult-app.student-app .student-login-dialog{border-radius:0;border:1.5px solid var(--adult-ink);background:var(--adult-paper);box-shadow:6px 6px 0 var(--adult-ink);max-width:480px}.adult-app.student-app .student-login-dialog button{border-radius:0;--button-color:var(--adult-yellow)}.adult-app .maintenance-coders{display:none}
.adult-app :is(a,button,input):focus-visible{outline:3px solid var(--adult-blue);outline-offset:5px}
@media(min-width:1500px){.adult-hero{padding-top:95px;padding-bottom:65px}}
@media(max-width:1050px){.adult-app.student-app .topbar{gap:24px;padding:20px 30px}.adult-topnav{gap:20px}.adult-hero{gap:45px}.adult-hero h1{font-size:58px}.adult-reel-sticker{right:-8px}.adult-banner-art{padding-right:20px}.adult-empty-library{gap:35px;padding:35px}}
@media(max-width:800px){.adult-topnav{display:none}.adult-app.student-app .topbar{justify-content:space-between;min-height:76px;padding:16px 24px;gap:14px}.adult-app.student-app .header-actions{gap:12px}.adult-hero{grid-template-columns:1fr;gap:40px;max-width:600px;width:calc(100% - 48px);padding:48px 0 30px}.adult-app .adult-hero h1{font-size:clamp(47px,9vw,68px);max-width:560px}.adult-lead{max-width:480px}.adult-reel-wrap{width:100%;max-width:380px;justify-self:center;margin-top:10px}.adult-art-word{font-size:145px}.adult-reel-sticker{right:-13px}.adult-principles{width:calc(100% - 48px);gap:14px;font-size:11px;flex-wrap:wrap}.adult-principles b{margin-right:5px}.adult-catalog,.adult-method{width:calc(100% - 48px);padding-top:46px}.adult-section-heading{align-items:start;flex-direction:column;gap:20px}.adult-section-heading>p{max-width:460px}.adult-method-grid{grid-template-columns:1fr;gap:18px}.adult-method-grid article{padding:22px}.adult-method-grid h3{margin-top:22px}.adult-empty-library{padding:25px;gap:25px;grid-template-columns:1fr}.adult-empty-symbol{display:none}.adult-bottom-banner{width:calc(100% - 48px);margin-top:52px;padding:32px;gap:15px}.adult-banner-art{padding:0}.adult-banner-art>span{font-size:100px}.adult-banner-art small{font-size:7px}.adult-app .app-legal-links{width:calc(100% - 48px);gap:16px;flex-wrap:wrap}.adult-footer-signature{width:100%;margin-bottom:8px}.adult-course-grid:has(.adult-course-card){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:440px){.adult-app.student-app .topbar{padding:14px 18px;gap:12px}.adult-app .brand{font-size:25px}.adult-app .brand-mark{display:none}.adult-app.student-app .header-actions{gap:8px}.adult-app.student-app .student-account-button{font-size:12px;max-width:85px;padding:8px 10px;width:auto;max-height:none}.adult-app.student-app #menu-toggle{padding:7px;min-width:32px;width:32px;min-height:36px}.adult-language-switch{gap:0}.adult-app.student-app .adult-language-switch button{min-width:24px;padding:2px;font-size:10px}.adult-hero{width:calc(100% - 40px);padding-top:35px;gap:34px}.adult-kicker{font-size:9px;letter-spacing:.08em}.adult-app .adult-hero h1{font-size:46px;letter-spacing:-.06em;margin:22px 0}.adult-lead{font-size:15px;line-height:1.8}.adult-hero-actions{gap:20px}.adult-btn{font-size:13px;padding:14px 17px;max-width:100%}.adult-hero-note{font-size:10px;margin-top:25px;gap:7px}.adult-reel-wrap{max-width:310px;width:calc(100% - 12px);padding-top:20px}.adult-reel-card{box-shadow:5px 5px 0 var(--adult-ink)}.adult-reel-stage{min-height:330px}.adult-art-word{font-size:127px;top:68px;left:16px}.adult-art-bubble{top:190px;right:18px;font-size:20px;padding:9px 15px}.adult-art-caption{left:20px;top:25px;font-size:8px}.adult-art-bottom{bottom:94px;left:19px;font-size:7px}.adult-reel-sticker{right:-3px;top:0;padding:10px;font-size:8px}.adult-reel-footer{font-size:8px;padding:11px}.adult-app.student-app .adult-reel-play{padding:13px;font-size:11px;gap:10px;min-height:73px}.adult-reel-play small{font-size:9px}.adult-reel-under{padding-top:19px;font-size:8px}.adult-principles{width:calc(100% - 40px);padding:19px 0;gap:14px;font-size:10px}.adult-principles span:last-child{display:none}.adult-catalog,.adult-method{width:calc(100% - 40px);padding-top:42px}.adult-app .adult-section-heading h2,.adult-app .adult-method h2{font-size:31px}.adult-section-heading>p{font-size:13px}.adult-empty-library{padding:24px 20px}.adult-app .adult-empty-library h3{font-size:27px}.adult-empty-library p{font-size:12px}.adult-small-label{font-size:8px}.adult-bottom-banner{width:calc(100% - 40px);padding:28px 22px;margin-top:45px}.adult-banner-art{display:none}.adult-app .adult-bottom-banner h2{font-size:31px}.adult-bottom-banner .adult-kicker{font-size:8px}.adult-app .app-legal-links{width:calc(100% - 40px)}.adult-app.student-app main{padding-bottom:45px}.adult-course-grid:has(.adult-course-card){grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.adult-app *{scroll-behavior:auto!important;transition:none!important}.adult-reel-card,.adult-reel-sticker,.adult-banner-art{transform:none}}
/* Unified language control and responsive adult navigation. */
.adult-app.student-app .topbar{gap:24px}
.adult-topnav{gap:22px;min-width:0}
.adult-app.student-app .adult-language-switch{display:flex;align-items:center;gap:6px;border:1px solid #17203940;padding:0 8px;min-height:42px;background:#fffef8}
.adult-language-switch label{margin:0;font-size:16px}
.adult-app.student-app .adult-language-switch select{width:auto;max-width:120px;min-width:0;min-height:40px;margin:0;padding:5px 20px 5px 2px;border:0;border-radius:0;box-shadow:none;background-color:transparent;color:var(--adult-ink);font:600 13px 'Segoe UI',sans-serif;cursor:pointer}
.adult-language-switch:focus-within{outline:2px solid var(--adult-blue);outline-offset:3px}
.adult-app.student-app .student-account-button{background:var(--adult-ink);color:white;--button-color:var(--adult-ink);min-height:42px}
.adult-app.student-app .adult-hero-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px}
.adult-app.student-app .adult-hero-actions .adult-btn{margin:0;min-height:48px;border:2px solid var(--adult-ink);border-radius:0;box-shadow:3px 3px 0 var(--adult-ink);font:650 14px 'Segoe UI',sans-serif;text-decoration:none;padding:13px 17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--adult-yellow);color:var(--adult-ink)}
.adult-app.student-app .adult-hero-actions .adult-btn-outline{background:var(--adult-paper)}
.adult-explore-links{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin-top:22px}
.adult-app.student-app .adult-explore-links :is(a,button){font:600 13px 'Segoe UI',sans-serif;color:var(--adult-ink);background:none;border:0;border-radius:0;box-shadow:none;padding:6px 0;min-height:34px;min-width:0;text-decoration:underline;text-underline-offset:5px;cursor:pointer}
.adult-app.student-app .adult-explore-links :is(a,button):hover{color:var(--adult-blue)}
@media(max-width:1100px){.adult-app.student-app .adult-topnav{display:none}.adult-app.student-app .topbar{justify-content:space-between}.adult-app.student-app .header-actions{margin-left:auto;gap:12px}}
@media(max-width:540px){.adult-app.student-app .topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px 18px}.adult-app.student-app .header-actions{display:flex;gap:8px;width:auto;margin:0}.adult-app.student-app .adult-language-switch{padding:0 5px;min-height:40px;gap:0}.adult-language-switch label{display:none}.adult-app.student-app .adult-language-switch select{max-width:102px;font-size:12px;min-height:38px;padding-right:15px}.adult-app.student-app .student-account-button{max-width:85px;padding:8px 10px;font-size:12px;min-height:40px}.adult-app.student-app .brand{font-size:25px;min-width:0}.adult-app .brand-mark{display:none}.adult-app.student-app #menu-toggle{min-height:40px;min-width:32px}.adult-app.student-app .adult-hero-actions .adult-btn{font-size:13px;padding:12px 14px}.adult-explore-links{gap:8px 16px}}
@media(max-width:370px){.adult-app.student-app .topbar{padding:12px;gap:7px}.adult-app.student-app .header-actions{gap:5px}.adult-app.student-app .adult-language-switch select{max-width:88px;font-size:11px}.adult-app.student-app .student-account-button{padding:8px;font-size:11px}.adult-app.student-app .brand{font-size:23px}}

/* Header controls share the editorial palette; override inherited child button states. */
body.student-app.adult-app .topbar .header-actions button.student-account-button,
body.student-app.adult-app .topbar .header-actions button.student-account-button:is(:hover,:focus,:active){background:#3c46dc;color:#fff;--button-color:#3c46dc;border:2px solid #172039;box-shadow:2px 2px 0 #172039;border-radius:4px;font-weight:700;-webkit-text-fill-color:#fff}
body.student-app.adult-app .topbar .adult-language-switch{position:relative;border:2px solid #172039;border-radius:4px;box-shadow:2px 2px 0 #172039;background:#fffaf0;padding:0;gap:0;overflow:visible}
body.student-app.adult-app .topbar .adult-language-switch label{display:none}
body.student-app.adult-app .topbar .adult-language-switch::after{content:'';position:absolute;right:12px;top:15px;width:6px;height:6px;border-right:2px solid #172039;border-bottom:2px solid #172039;transform:rotate(45deg);pointer-events:none}
body.student-app.adult-app .topbar .adult-language-switch select{appearance:none;-webkit-appearance:none;display:block;max-width:none;width:122px;padding:8px 30px 8px 13px;min-height:38px;border:0;background:transparent;color:#172039;font-weight:650;font-size:13px;border-radius:2px;cursor:pointer}
body.student-app.adult-app .topbar .adult-language-switch select:focus{outline:none}
body.student-app.adult-app .topbar .adult-language-switch select option{background:#fffaf0;color:#172039}
@media(max-width:540px){body.student-app.adult-app .topbar .adult-language-switch select{width:104px;font-size:12px;padding-left:9px;padding-right:25px}body.student-app.adult-app .topbar .adult-language-switch::after{right:10px}}
@media(max-width:370px){body.student-app.adult-app .topbar .adult-language-switch select{width:92px;font-size:11px;padding-left:7px;padding-right:20px}body.student-app.adult-app .topbar .adult-language-switch::after{right:8px}}

/* Learning overview: retain progress behavior without child-themed decoration. */
.adult-app.student-app .roadmap{max-width:1060px;margin:auto;padding:42px 0}.adult-app.student-app .roadmap h1{font-size:clamp(36px,6vw,58px)}
.adult-app.student-app .roadmap :is(.button,button),.adult-app.student-app .learning-summary button{border:1.5px solid #172039;border-radius:3px;box-shadow:2px 2px 0 #172039;background:#fffaf0;color:#172039;--button-color:#fffaf0;padding:11px 17px;font-weight:650}
.adult-app.student-app .roadmap .roadmap-home{box-shadow:none;border:0;padding:8px 0;text-decoration:underline;text-underline-offset:5px;background:transparent}
.adult-app.student-app .learning-summary{background:#fffef8;border:1px solid #17203940;border-radius:0;box-shadow:none;padding:28px;margin-top:28px}.adult-app.student-app .learning-summary h2{font-size:25px}
.adult-app .roadmap .local-emoji,.adult-app .student-profile-identity>img,.adult-app .student-profile-stats img{display:none}
@media(max-width:540px){.adult-app.student-app .roadmap{padding:26px 0}.adult-app.student-app .learning-summary{padding:22px}.adult-app.student-app .roadmap .hero-actions{display:flex;flex-wrap:wrap;gap:12px}}

/* Adult content administration. */
body.adult-admin{margin:0;background:#fffaf0;color:#172039;font-family:'Segoe UI',Arial,sans-serif;--ink:#172039;--paper:#fffaf0;--ww-outline:#172039;--ww-background:#fffaf0;--ww-text:#172039;--ww-panel:#fffef8;--ww-cream:#fffaf0;--ww-sun:#ffe14b;--ww-sky-light:#e7e9ff;--ww-grass-light:#f1f2ff;--ww-orange:#ffe14b}
.adult-admin .topbar{display:flex;flex-wrap:wrap;gap:18px;padding:20px 28px;background:#fffaf0;border-bottom:1px solid #17203940;box-shadow:none}
.adult-admin .topbar .brand{font-size:27px;font-weight:750}.adult-admin .topbar strong{font-size:14px;font-weight:500}
.adult-admin :is(button,.button){border:1.5px solid #172039;border-radius:3px;box-shadow:2px 2px 0 #172039;background:#fffaf0;color:#172039;--button-color:#fffaf0;min-height:42px;font-weight:650}
.adult-admin :is(button,.button):hover{background:#e7e9ff;transform:none}
.adult-admin .admin-sections button[aria-pressed=true]{background:#3c46dc;color:white;--button-color:#3c46dc}
.adult-admin :is(.gemini-import,.import-panel,.learning-order-panel,.ca-folder-card,.admin-layout>aside,#editor){border:1px solid #17203940;border-radius:3px;box-shadow:none;background:#fffef8}
.adult-admin :is(input,select,textarea){border:1px solid #17203970;border-radius:3px;background:white;color:#172039;font-family:inherit}
.adult-admin textarea{font-family:Consolas,monospace}.adult-admin .admin-schema-note{padding:14px 18px;border-left:3px solid #3c46dc;background:#f1f2ff;line-height:1.7}
.adult-admin :is(h1,h2,h3){font-family:inherit;letter-spacing:-.025em}.adult-admin .ca-folder-number{font-size:13px;font-weight:600;color:#3c46dc}
.adult-admin [hidden]{display:none!important}
@media(max-width:600px){.adult-admin .topbar{padding:16px;gap:12px}.adult-admin .topbar strong{width:100%}.adult-admin main{padding:18px 16px}.adult-admin .admin-sections{display:flex;gap:12px;flex-wrap:wrap}.adult-admin .admin-sections button{flex:1}.adult-admin .gemini-import{overflow-wrap:anywhere}}

/* Adult profile editor */
.adult-app .student-profile-dialog{border:2px solid var(--adult-ink);border-radius:4px;background:var(--adult-paper);color:var(--adult-ink);box-shadow:6px 6px 0 var(--adult-ink)}
.adult-app .student-profile-heading{background:var(--adult-paper);color:var(--adult-ink);border-bottom:1px solid var(--adult-ink)}
.adult-app .student-profile-identity>div{min-width:0;flex:1}.adult-app #student-profile-name{overflow-wrap:anywhere}
.adult-app .adult-profile-edit{margin-top:8px;padding:7px 12px;border:1.5px solid var(--adult-ink);border-radius:3px;background:var(--adult-yellow);color:var(--adult-ink);font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.adult-app .adult-profile-editor[hidden]{display:none}
.adult-app .adult-profile-editor{display:grid;gap:12px;padding:20px;margin:20px 0;border:1.5px solid var(--adult-ink);border-radius:3px;background:#fff}
.adult-app .adult-profile-editor label{font-weight:700}
.adult-app .adult-profile-editor input{box-sizing:border-box;min-width:0;width:100%;padding:12px;border:1.5px solid var(--adult-ink);border-radius:3px;font:inherit;color:var(--adult-ink);background:white}
.adult-app .adult-profile-editor input[readonly]{background:#eef0f5}
.adult-app .adult-profile-editor p{margin:0;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.adult-app .adult-profile-editor>div{display:flex;flex-wrap:wrap;gap:10px}
.adult-app .adult-profile-editor button{padding:11px 14px;border:1.5px solid var(--adult-ink);border-radius:3px;background:#3c46dc;color:white;font:inherit;font-size:14px;cursor:pointer}
.adult-app .adult-profile-editor .adult-name-cancel{background:var(--adult-paper);color:var(--adult-ink)}
.adult-app .adult-profile-editor button:disabled{opacity:.55;cursor:default}
.adult-app .adult-profile-edit:focus-visible,.adult-app .adult-profile-editor :focus-visible{outline:3px solid #3c46dc;outline-offset:3px}
@media(max-width:380px){.adult-app .adult-profile-editor{padding:14px}}

/* Bound the home module catalogue without extending the whole page. */
.adult-module-scroll:not([data-empty]){max-height:clamp(390px,83.2svh,806px);overflow-y:auto;overflow-x:hidden;padding:16px 18px 18px 16px;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#17203955 transparent;border:2px solid var(--adult-ink);box-shadow:5px 5px 0 var(--adult-ink);background:#fffef8;scroll-padding-block:16px}
.adult-module-scroll::-webkit-scrollbar{width:5px}.adult-module-scroll::-webkit-scrollbar-thumb{background:#17203955;border-radius:8px}.adult-module-scroll::-webkit-scrollbar-track{background:transparent}
.adult-module-scroll:focus-visible{outline:2px solid #3c46dc;outline-offset:5px}
.adult-module-scroll .adult-course-grid{align-items:stretch}
.adult-course-card[hidden]{display:none!important}
.adult-module-scroll-hint{margin:12px 0 0;font-size:12px;color:#50596b;text-align:right}
.adult-module-scroll-hint[hidden]{display:none}
@media(max-width:540px){.adult-module-scroll:not([data-empty]){max-height:clamp(364px,80.6svh,676px);padding-right:8px}.adult-module-scroll-hint{text-align:left}}

/* Indeterminate loading: no invented percentage or extra server requests. */
.adult-app .adult-loading{width:min(640px,calc(100% - 48px));margin:clamp(40px,12vh,120px) auto;padding:clamp(22px,5vw,40px);box-sizing:border-box;border:2px solid var(--adult-ink,#172039);box-shadow:7px 7px 0 var(--adult-ink,#172039);background:#fffef8;color:#172039}
.adult-loading-label{font-size:11px;letter-spacing:.1em;font-weight:700;overflow-wrap:anywhere}
.adult-app .adult-loading h1{font-size:clamp(25px,5vw,38px);line-height:1.15;margin:20px 0;letter-spacing:-.035em}
.adult-loading p{font-size:14px;line-height:1.6;margin-bottom:0}
.adult-loading-track{height:24px;border:2px solid #172039;background:repeating-linear-gradient(90deg,#fff 0 17px,#e8e6df 17px 20px);overflow:hidden;position:relative}
.adult-loading-track span{display:block;width:35%;height:100%;background:#ffda54;border-right:2px solid #172039;animation:adult-loading-slide 1.4s ease-in-out infinite alternate}
@keyframes adult-loading-slide{from{transform:translateX(-100%)}to{transform:translateX(286%)}}
@media(prefers-reduced-motion:reduce){.adult-loading-track span{animation:none;transform:translateX(90%)}}

.adult-app .lesson-status-filters{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}.adult-app .lesson-status-filters button{padding:8px 11px;border:2px solid #172039;border-radius:3px;background:#fff;color:#172039;font-weight:800;cursor:pointer}.adult-app .lesson-status-filters button[aria-pressed="true"]{background:#ffda54;box-shadow:2px 2px 0 #172039}.adult-app .lesson-status-filters button:focus-visible{outline:3px solid #536bff;outline-offset:2px}
