@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#f4f3ef;--ink:#222137;--muted:#777784;--purple:#7660e8;--lime:#d4f17b;--border:#e2e1e7}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:0}button:focus-visible,a:focus-visible{outline:3px solid #ae77ff;outline-offset:4px}button:disabled{opacity:.5;cursor:default}h1,h2,h3,.brand,.big{font-family:'Space Grotesk',system-ui,sans-serif}h1{font-size:clamp(36px,4.2vw,64px);line-height:1.04;letter-spacing:-3px;margin:20px 0}h2{font-size:28px;letter-spacing:-1px;margin:0}h3{font-size:21px;line-height:1.25;margin:15px 0 8px}p{line-height:1.6}.app{display:flex;min-height:100vh}aside{width:232px;background:#fff;border-right:1px solid var(--border);padding:35px 24px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{font-size:22px;font-weight:700;text-decoration:none;color:var(--ink)}.brand b{color:var(--purple);font-size:35px;vertical-align:middle}.brand span{display:block;font:9px 'DM Sans';letter-spacing:2px;margin:8px 0 0 35px}.label{font-size:10px;letter-spacing:2px;color:var(--muted);margin:55px 0 15px}nav button{display:block;text-align:left;width:100%;background:transparent;color:var(--muted);padding:14px;border-radius:10px;margin:4px 0}nav button.active{background:#eeebff;color:#6550cf;font-weight:700}.aside-bottom{margin-top:auto;padding-top:40px}.aside-bottom b{font-size:19px}.aside-bottom p{font-size:12px;color:var(--muted)}.planet{font-size:44px;color:var(--purple);padding:20px 0}main{margin-left:232px;padding:0 38px;width:calc(100% - 232px);max-width:1550px}header{height:85px;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1px}.online{display:inline-block;width:7px;height:7px;background:#79b88c;border-radius:50%;margin-right:8px}.edition{color:var(--muted);margin-left:20px;font-size:9px}.quiet{background:white;border:1px solid var(--border);padding:11px 16px;border-radius:8px;color:var(--ink)}.preview{font-size:11px;color:#746542;background:#eee9db;padding:10px 14px;border-radius:8px;margin-bottom:24px}.greeting{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.greeting p{margin:6px 0;color:var(--muted);font-size:13px}.profile-switch{display:flex;gap:7px}.profile-switch button{border:1px solid var(--border);background:#fff;border-radius:99px;padding:8px 13px}.profile-switch button.selected{background:var(--ink);color:white}.hero{display:grid;grid-template-columns:1.55fr 1fr;gap:20px}.hero-main{position:relative;overflow:hidden;border-radius:22px;background:#211e3e;color:white;padding:35px;min-height:360px}.hero-main:after{content:'✦';font-size:270px;position:absolute;right:-30px;top:10px;color:#9380e333;transform:rotate(15deg);pointer-events:none}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.hero-main .eyebrow{color:var(--lime)}.hero-main h1{max-width:510px;position:relative;z-index:1}.hero-main p{color:#c5bfdc;max-width:380px;font-size:14px}.primary{background:var(--lime);color:#262632;border-radius:9px;padding:13px 20px;font-weight:700}.hero-side{background:#e5dff5;border-radius:22px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.cosmos{font-size:78px;align-self:center;filter:drop-shadow(0 16px 14px #68559c33);animation:float 6s ease-in-out infinite}.hero-side h3{font-size:24px}.hero-side p{font-size:13px;color:#6d6281}.small{font-size:11px;color:var(--muted)}.row-head{display:flex;justify-content:space-between;align-items:center;margin:34px 0 18px}.row-head p{margin:6px 0;font-size:12px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:white;border:1px solid var(--border);padding:22px;border-radius:16px}.mission .symbol{width:60px;height:60px;display:grid;place-items:center;font-size:30px;background:#eeebff;border-radius:16px}.mission:nth-child(2) .symbol{background:#e9f2e6}.mission:nth-child(3) .symbol{background:#fff0db}.meta{display:flex;justify-content:space-between;align-items:center;margin-top:18px;font-size:10px;font-weight:700;color:#80798f;text-transform:uppercase;letter-spacing:1px}.mission p{font-size:13px;color:var(--muted);min-height:42px}.mission button{background:#f2f0f8;border-radius:8px;width:100%;padding:12px;font-size:12px;font-weight:700;color:#6550cf}.points{color:#6a54cc}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}.metric .big{font-size:34px;font-weight:600;margin:10px 0}.metric p{font-size:12px;color:var(--muted);margin:0}.bottom{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.bottom h3{margin-top:0}.bottom p{font-size:13px;color:var(--muted)}.inline{display:flex;justify-content:space-between;gap:15px;align-items:center}.reward{padding:18px 0;border-bottom:1px solid var(--border)}.reward:last-child{border:0}.reward strong{font-size:14px}.reward p{margin:5px 0}.reward button{background:#eeebff;color:#6550cf;padding:10px 15px;border-radius:8px}.empty{padding:30px;text-align:center;color:var(--muted);font-size:14px}.history{padding:15px 0;border-bottom:1px solid var(--border);font-size:13px}.history small{display:block;color:var(--muted);margin-top:5px}.status{font-size:10px;padding:5px 9px;border-radius:99px;background:#eeebff;color:#6550cf;white-space:nowrap}.actions{display:flex;gap:8px;margin-top:15px}.actions button{padding:10px 16px;border-radius:8px;background:#eeebff;color:#6550cf}.actions button:first-child{background:var(--ink);color:white}textarea{width:100%;min-height:100px;border:1px solid var(--border);border-radius:9px;padding:14px;resize:vertical;background:#faf9fc;color:var(--ink)}label{display:block;font-size:12px;font-weight:700;margin:20px 0 9px}dialog{width:min(560px,92vw);border:0;border-radius:22px;padding:35px;color:var(--ink);box-shadow:0 30px 100px #0003}dialog::backdrop{background:#17162b99;backdrop-filter:blur(5px)}dialog h2{padding-right:25px}.close{position:absolute;right:18px;top:14px;background:transparent;font-size:26px;color:var(--muted)}dialog li{line-height:1.6;margin:12px 0;font-size:14px}dialog p{font-size:13px;color:var(--muted)}dialog .primary{margin-top:15px;width:100%}#toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,100px);padding:15px 24px;background:#242039;color:white;border-radius:12px;z-index:10;transition:transform .25s;max-width:90vw;font-size:14px}#toast.show{transform:translate(-50%,0)}footer{font-size:11px;color:var(--muted);padding:35px 0}.spark{position:fixed;pointer-events:none;z-index:20;font-size:24px;animation:celebrate 1s ease-out forwards}@keyframes celebrate{to{transform:translate(var(--x),-220px) rotate(180deg);opacity:0}}@keyframes float{50%{transform:translateY(-12px) rotate(7deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}@media(min-width:1550px){main{margin-left:auto;margin-right:auto}}@media(max-width:1050px){aside{width:185px;padding:25px 16px}main{margin-left:185px;width:calc(100% - 185px);padding:0 22px}.hero{grid-template-columns:1fr}.hero-side{display:none}.cards{gap:10px}.card{padding:18px}}@media(max-width:700px){aside{position:static;width:100%;padding:12px 16px;border-right:0;border-bottom:1px solid var(--border)}.app{display:block}.brand{font-size:18px}.brand span,.label,.aside-bottom{display:none}nav{display:flex;overflow:auto;margin-top:8px}nav button{white-space:nowrap;width:auto;padding:10px;font-size:12px}main{margin:0;width:100%;padding:0 16px}header{height:65px}.edition{display:none}.cards,.bottom{grid-template-columns:1fr}.greeting{display:block}.profile-switch{margin-top:15px}.hero-main{padding:25px;min-height:330px}h1{letter-spacing:-2px}.metrics{gap:8px}.metric{padding:13px}.metric .big{font-size:27px}.metric .eyebrow{font-size:8px}.row-head{gap:10px}.row-head h2{font-size:24px}}

input,select{font:inherit;max-width:100%;border:1px solid var(--border);padding:12px;border-radius:8px;background:white;color:var(--ink)}form input{width:100%}#feedback{margin-top:15px;line-height:1.7}button:disabled{cursor:wait}
@media(max-width:700px){header{height:auto;min-height:100px;flex-wrap:wrap;gap:8px;padding:12px 0;letter-spacing:.3px}header>div{flex-basis:100%}header .quiet{white-space:nowrap;min-height:40px}#reminderCount{margin-left:auto}input,select,textarea{font-size:16px}dialog{padding:26px 20px}.actions{flex-wrap:wrap}}

.preparation{margin:22px 0;background:linear-gradient(130deg,#172c44,#3b2665);color:#fff;border:0;box-shadow:0 20px 55px #35205c26}.preparation>h2{font-size:clamp(25px,4vw,42px);line-height:1.2}.preparation p{color:#eee9ff}.preparation .eyebrow{color:#b9f6d8}.preparation .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.preparation details.card{color:#172c44;padding:18px;background:#ffffffed}.preparation details.card p{color:#334155}.preparation summary{cursor:pointer;font-weight:700;line-height:1.5}.preparation .history{border-color:#ffffff30}.preparation .history button{background:#c4f4dc;color:#152f28}.preparation+div{margin-top:20px}@media(max-width:600px){.preparation .cards{grid-template-columns:1fr}.preparation{padding:24px 18px}}

.quest-hero{margin:20px 0;background:linear-gradient(120deg,#183d3b,#29335d 65%,#5d3475);color:white;overflow:hidden}.quest-hero h2{font-size:clamp(30px,5vw,54px);line-height:1.1}.quest-hero p{color:#e9fff5}.quest-hero .eyebrow{color:#b9f6d8}.quest-hero .actions{gap:14px;flex-wrap:wrap}.quest-hero .actions span{padding:12px 16px;border-radius:30px;background:#ffffff18}.quest-steps{display:flex;list-style:none;padding:0;gap:6px;flex-wrap:wrap}.quest-steps li{font-size:13px;padding:8px 10px;border-radius:15px;background:#eee}.quest-steps [aria-current]{background:#203a38;color:white}.quest-text{font-size:21px;line-height:1.8}.badge.earned{background:#e0f1e5;border:2px solid #74a98d}.badge:not(.earned){background:#f0efed}.lab-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;margin:20px 0}.lab-cell{aspect-ratio:1;background:#e6e2ec;border-radius:3px}.lab-cell.filled{background:#6751a5}.place-block{grid-column:span 2;text-align:center;background:#d5f3e4;padding:12px 3px;border-radius:12px}.place-block strong{display:block;font-size:36px}.place-block small{display:block}#labOutput{display:block;font-size:28px;font-weight:700;margin:12px 0}#draftText{width:100%;line-height:1.65;min-height:350px}#dialog .actions{flex-wrap:wrap}#dialog button{min-height:44px}#dialog input,#dialog textarea,#dialog select{width:100%;font-size:16px} @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}

@media(min-width:701px){aside nav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.label{margin-top:24px}.brand{flex-shrink:0}.aside-bottom{flex-shrink:0}}@media(min-width:701px) and (max-height:950px){.aside-bottom{display:none}}

[hidden]{display:none!important}

/* Adventure interface — original block-world artwork, real learning evidence. */
:root{--ink:#1c2d50;--muted:#63718b;--bg:#edf3ff;--purple:#6552dc;--border:#dce4f3;--lime:#c4f56b}body{background:radial-gradient(circle at 90% 5%,#e2eaff,transparent 42%),var(--bg)}aside{width:210px;padding:25px 18px;background:#fff;border-right:2px solid #dce4f3}main{margin-left:210px;width:calc(100% - 210px);padding:0 34px;max-width:1600px}aside .brand{font-size:20px}.label{margin:28px 0 12px}nav button{font-weight:700;color:#65718c;min-height:46px;border-radius:12px}nav button.active{background:#e6e0ff;color:#4735a3;box-shadow:inset 4px 0 #7960e6}.nav-more{margin-top:20px;border-top:1px solid #e7ebf3;padding-top:15px}.nav-more summary{font-size:12px;color:#68728b;cursor:pointer;padding:12px}.nav-more button{font-size:12px;padding:10px;min-height:38px}.aside-bottom b{font-size:17px}.aside-bottom .planet{font-size:30px;padding:12px 0}.greeting{margin:5px 0 22px}.greeting h2{font-size:25px;letter-spacing:-.6px}.greeting p{font-size:12px}.profile-switch button{font-weight:700;min-height:42px;border:2px solid #d9e2f0}.profile-switch button.selected{background:#283d65;border-color:#283d65}header{height:72px;letter-spacing:.7px}body[data-page=home] .preview,body[data-page=quests] .preview{display:none}footer{font-weight:700;color:#6c7c97;text-align:center;letter-spacing:.4px}.tiny-tag{display:inline-block;font-size:11px;letter-spacing:1.4px;font-weight:800}.adventure-hero{display:grid;grid-template-columns:1.12fr 1fr;align-items:center;background:linear-gradient(125deg,#344aa8,#5277d2 60%,#7ba9e6);color:white;border:3px solid #263d86;border-radius:28px;min-height:370px;position:relative;overflow:hidden;box-shadow:0 9px 0 #d2def4}.adventure-hero:before{content:'';position:absolute;width:200px;height:200px;background:#ffffff12;border-radius:50%;top:-120px;left:25%}.adventure-copy{padding:35px;z-index:1}.adventure-copy .tiny-tag{color:#e1f0ff}.adventure-copy h1{font-size:clamp(36px,4.3vw,60px);line-height:1.16;letter-spacing:-1.6px;margin:18px 0}.adventure-copy p{font-size:16px;color:#edf5ff;margin:0 0 24px}.launch-button{display:inline-flex;gap:45px;align-items:center;font-size:19px;background:#cdfb76;color:#1e3b37;padding:17px 24px;border:2px solid #1a4c49;border-radius:14px;box-shadow:0 5px 0 #1b4b4b;font-weight:800;transition:transform .18s,box-shadow .18s}.launch-button:hover{transform:translateY(-2px);box-shadow:0 7px 0 #1b4b4b}.launch-button:active{transform:translateY(4px);box-shadow:0 1px 0 #1b4b4b}.launch-button span{font-size:24px}.hero-duration{display:block;color:#e1ebff;font-size:11px;margin-top:18px}.block-scene{padding:5px 15px 0 0}.block-scene svg{display:block;width:100%;max-height:360px;overflow:visible}.floating-island{animation:island-bob 5s ease-in-out infinite;transform-origin:center}.block-sparkles{animation:sparkle-glow 3s ease-in-out infinite}.adventure-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:25px 0 32px;gap:12px}.adventure-stats>div,.adventure-stats>button{display:grid;grid-template-columns:34px auto;align-items:center;column-gap:10px;background:#fff;border:2px solid #dce4f3;border-radius:17px;padding:15px 18px;text-align:left;color:var(--ink)}.adventure-stats span{font-size:26px;grid-row:span 2}.adventure-stats b{font-size:23px;line-height:1.1}.adventure-stats small{font-size:11px;color:#68738c;margin-top:5px}.adventure-section{margin-top:32px}.section-title{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:0 0 20px}.section-title .eyebrow{font-size:10px;color:#697693}.section-title h2{font-size:27px;margin-top:6px}.text-button{background:transparent;font-weight:700;color:#5140ae;padding:12px}.discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.discovery-card{background:white;border:2px solid #dce4f3;border-radius:20px;overflow:hidden;box-shadow:0 5px 0 #dce4f3;transition:transform .18s}.discovery-card:hover{transform:translateY(-4px)}.discovery-art{height:130px;background:var(--tile);position:relative;display:grid;place-items:center;overflow:hidden}.discovery-art>span{font-size:58px;z-index:1;filter:drop-shadow(0 8px 0 #00000014);transform:rotate(-7deg)}.discovery-art small{position:absolute;left:15px;top:12px;font-weight:800;font-size:12px;opacity:.5}.discovery-art i{position:absolute;width:110px;height:110px;border:20px solid #ffffff55;border-radius:26px;right:-25px;bottom:-35px;transform:rotate(25deg)}.discovery-body{padding:20px}.discovery-body .eyebrow{font-size:9px;color:#68748d}.discovery-body h3{font-size:22px;min-height:54px;margin:9px 0 14px;letter-spacing:-.4px}.discovery-body button{display:flex;align-items:center;justify-content:space-between;width:100%;background:#f0edff;color:#4939a0;padding:13px 15px;border-radius:12px;font-weight:800}.family-invite{display:flex;align-items:center;gap:18px;background:#fff2d9;border:2px solid #f3dfb7;border-radius:20px;padding:23px;margin-top:30px}.family-invite>span{font-size:39px}.family-invite h3{margin:0;font-size:20px}.family-invite p{margin:6px 0 0;font-size:13px}.family-invite button{margin-left:auto;white-space:nowrap}.practice-header{display:flex;align-items:center;justify-content:space-between;margin:20px 0 25px}.practice-header h1{font-size:42px;letter-spacing:-1px;margin:12px 0}.practice-header p{margin:0;color:var(--muted)}.practice-header .tiny-tag{color:#6b54bd}.practice-emblem{width:100px;height:100px;background:#dce5fc;border-radius:28px;font-size:55px;display:grid;place-items:center;transform:rotate(8deg);border:3px solid #c8d6f2;box-shadow:0 6px 0 #c8d6f2}.world-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:32px}.world-tile{background:var(--tile);border:2px solid #26395c20;border-radius:18px;min-height:150px;padding:18px 10px;color:#26395c;box-shadow:0 5px 0 #26395c18;transition:transform .16s}.world-tile:hover,.world-tile.chosen{transform:translateY(-4px);outline:3px solid #6f58c8;outline-offset:2px}.world-tile>span{display:block;font-size:37px;margin-bottom:9px}.world-tile b{display:block;font-size:16px}.world-tile small{display:block;font-size:10px;margin-top:7px;color:#3b4c66}.lesson-deck{scroll-margin-top:20px}.lesson-deck select{font-size:13px;max-width:190px;min-height:44px}.lesson-trail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.trail-card{background:#fff;border:2px solid #dce4f3;box-shadow:0 4px 0 #dce4f3;border-radius:17px;display:flex;align-items:center;gap:13px;padding:17px;min-height:110px}.trail-icon{display:grid;place-items:center;flex-shrink:0;background:var(--tile);width:55px;height:60px;border-radius:14px;font-size:29px}.trail-info{min-width:0;flex:1}.trail-info small{font-size:10px;color:#6a7893}.trail-info h3{font-size:18px;margin:8px 0;line-height:1.35;overflow-wrap:anywhere}.trail-go{flex-shrink:0;min-width:44px;height:44px;font-size:25px;font-weight:800;border:2px solid #1b5360;border-radius:12px;background:#c7f26e;color:#244144;box-shadow:0 3px 0 #1b5360}.trail-go:hover{background:#dafc9a}.deck-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.deck-bottom p{font-size:12px;color:var(--muted)}.grownup-notes{margin-top:30px;background:#e5ebf7;border:1px solid #d5dfef;border-radius:14px;padding:15px;font-size:12px;color:#5b6a84}.grownup-notes summary{cursor:pointer;font-weight:700}.grownup-notes h2{font-size:20px}.grownup-notes .card{padding:15px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.focus-quest{width:min(600px,94vw);padding:30px;border:3px solid #dce4f3;max-height:90dvh;overflow:auto;overscroll-behavior:contain}.focus-quest .quest-kicker{font-size:12px;font-weight:800;color:#6452b2;display:flex;justify-content:space-between;margin-right:25px;margin-bottom:15px}.focus-quest h2{font-size:29px;line-height:1.25;margin-bottom:15px}.focus-quest .quest-source{font-size:10px;color:#748099;margin:8px 0}.quest-source summary{cursor:pointer}.quest-source p{font-size:11px!important}.focus-quest .quest-steps{gap:5px;margin:16px 0 22px;counter-reset:step}.focus-quest .quest-steps li{height:7px;padding:0;flex:1;font-size:0;border-radius:20px;background:#e1e6f1;margin:0}.focus-quest .quest-steps li[aria-current=step]{background:#7259d0}.focus-quest .quest-text{font-size:22px;line-height:1.65;color:#243956;white-space:pre-line;margin:22px 0 28px}.focus-quest .lesson-more{font-size:14px;margin-top:16px;color:#5d6e89}.lesson-more summary{cursor:pointer;font-weight:700}.focus-quest .lesson-more p{font-size:17px;color:#425778}.focus-quest #questAnswer{width:100%;font-size:24px;padding:17px;border:2px solid #b8c7df;background:#f8faff;border-radius:14px}.focus-quest .primary{font-size:17px;min-height:53px;border:2px solid #284f50;box-shadow:0 4px 0 #284f50;border-radius:13px}.focus-quest .actions button{min-height:46px;font-size:14px}.focus-quest #questCoach{margin-top:18px;font-size:12px}.focus-quest .practical-fold{padding:14px;background:#edf5f2;border-radius:12px;font-size:12px}.practical-fold summary{cursor:pointer;font-weight:700}.focus-quest textarea{font-size:17px}.focus-quest label{font-size:13px}body[data-learner=joey] .adventure-hero{background:linear-gradient(125deg,#3e31a0,#6e55ca 65%,#a68be8);border-color:#36247f}body[data-learner=joey] .launch-button{background:#8df0d8}body[data-learner=jeslyn]{--bg:#f7f5f0;--ink:#262c3b}body[data-learner=jeslyn] .adventure-hero{background:linear-gradient(120deg,#223c45,#3e6d72);border-color:#244d54;box-shadow:0 8px 0 #dce5df}body[data-learner=jeslyn] .adventure-copy h1{font-size:clamp(34px,4vw,54px)}.orbit-scene{height:310px;position:relative;display:grid;place-items:center;overflow:hidden}.orbit-ring{width:240px;height:240px;border:1px solid #ffffff33;border-radius:50%;position:absolute;transform:rotate(-25deg) scaleY(.65)}.orbit-ring.r2{width:300px;height:300px;transform:rotate(25deg) scaleY(.65)}.planet-ball{background:radial-gradient(circle at 35% 25%,#ffe1a1,#ddb37a);width:145px;height:145px;border-radius:50%;display:grid;place-items:center;box-shadow:inset -15px -10px 0 #b98d6438,0 12px 35px #18383e66;animation:island-bob 5s ease-in-out infinite}.planet-ball span{font-size:80px;color:#fff8d5}.orbit-ticket{position:absolute;bottom:16px;background:#ffffff1f;border:1px solid #ffffff33;border-radius:12px;font-size:9px;padding:11px 17px;letter-spacing:1px;text-align:center}.orbit-ticket b{display:block;font-size:12px;margin-top:5px;letter-spacing:0}.orbit-star{position:absolute;color:#e6e9bd}.s1{top:40px;right:40px;font-size:30px}.s2{left:40px;top:70px;font-size:20px}.orbit-moon,.s3{display:none}@keyframes island-bob{50%{transform:translateY(-8px)}}@keyframes sparkle-glow{50%{opacity:.45}}
@media(max-width:1050px){aside{width:180px}main{margin-left:180px;width:calc(100% - 180px);padding:0 22px}.adventure-copy{padding:27px}.adventure-copy h1{font-size:38px}.discovery-grid{gap:12px}.discovery-body{padding:16px}.discovery-body h3{font-size:19px}.world-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){aside{width:100%;padding:12px 16px;position:static;border-right:0;border-bottom:2px solid #dce4f3}main{margin:0;width:100%;padding:0 16px}aside nav{display:flex;align-items:flex-start;gap:3px;overflow-x:auto}nav>button{padding:10px 12px;font-size:12px;flex-shrink:0;min-height:40px}nav button.active{box-shadow:inset 0 -3px #7960e6}.nav-more{margin:0;border:0;padding:0;flex-shrink:0}.nav-more summary{padding:12px;font-size:11px;white-space:nowrap}.nav-more[open]{min-width:150px;max-height:240px;overflow-y:auto}.nav-more button{white-space:normal}.greeting{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 18px}.greeting h2{font-size:22px}.greeting p{font-size:11px;margin-top:5px}.profile-switch{margin:0;gap:4px}.profile-switch button{padding:7px 9px;font-size:12px;min-height:38px}header{min-height:65px;padding:12px 0;gap:7px}header>div{flex-basis:auto;font-size:9px}header .quiet{font-size:10px;min-height:34px;padding:8px 10px}.adventure-hero{grid-template-columns:1fr;min-height:0;border-radius:22px;overflow:hidden}.adventure-copy{padding:27px 24px 15px}.adventure-copy h1{font-size:37px;letter-spacing:-1px;margin:14px 0}.adventure-copy p{font-size:14px;margin-bottom:19px}.tiny-tag{font-size:9px}.launch-button{width:100%;justify-content:space-between;font-size:19px;padding:14px 20px}.hero-duration{font-size:10px;margin-top:14px}.block-scene{height:205px;margin-top:-5px;padding:0 20px}.block-scene svg{height:235px;width:100%;transform:translateY(-9px)}.adventure-stats{gap:7px;margin-top:23px;margin-bottom:28px}.adventure-stats>div,.adventure-stats>button{grid-template-columns:1fr;text-align:center;gap:3px;padding:12px 5px;border-radius:14px}.adventure-stats span{font-size:22px;grid-row:auto}.adventure-stats b{font-size:23px}.adventure-stats small{font-size:9px;margin-top:0}.section-title{align-items:center;gap:10px}.section-title h2{font-size:24px}.section-title .eyebrow{font-size:8px}.text-button{font-size:11px;white-space:nowrap;padding:9px 0}.discovery-grid{grid-template-columns:1fr;gap:14px}.discovery-card{display:grid;grid-template-columns:100px 1fr;min-height:155px;border-radius:17px}.discovery-art{height:100%;min-height:155px}.discovery-art>span{font-size:44px}.discovery-art small{font-size:10px;left:10px;top:10px}.discovery-body{padding:15px}.discovery-body h3{min-height:0;font-size:21px;margin:7px 0 12px}.discovery-body button{font-size:13px;padding:10px 12px}.family-invite{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:19px}.family-invite>span{font-size:32px}.family-invite h3{font-size:18px}.family-invite p{font-size:12px}.family-invite button{grid-column:2;justify-self:start;margin:0}.practice-header{margin:16px 0 24px}.practice-header h1{font-size:36px}.practice-header p{font-size:13px}.practice-emblem{width:70px;height:70px;font-size:40px;border-radius:20px}.world-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.world-tile{min-height:135px;padding:14px 8px}.world-tile>span{font-size:34px}.world-tile b{font-size:15px}.world-tile small{font-size:10px}.lesson-trail{grid-template-columns:1fr}.lesson-deck .section-title{align-items:flex-start}.lesson-deck .section-title h2{font-size:21px}.lesson-deck select{max-width:155px;font-size:12px;padding:10px}.trail-card{padding:15px;gap:11px}.trail-info h3{font-size:18px}.trail-icon{width:47px;height:55px;font-size:26px}.focus-quest{padding:24px 20px;border-radius:23px;max-height:92dvh}.focus-quest h2{font-size:26px}.focus-quest .quest-text{font-size:21px;line-height:1.65}.focus-quest .quest-kicker{font-size:11px}.focus-quest .actions{gap:7px}.focus-quest .actions button{font-size:13px;flex:1;padding:10px 9px}.orbit-scene{height:220px;margin-top:-15px}.planet-ball{width:115px;height:115px}.planet-ball span{font-size:65px}.orbit-ticket{display:none}body[data-learner=jeslyn] .adventure-copy h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){.floating-island,.block-sparkles,.planet-ball{animation:none}.discovery-card,.world-tile,.launch-button{transition:none}}
/* Family worlds, accessible touch play and original personalised avatars. */
.personal-scene{position:relative;min-height:350px;display:grid;place-items:center;overflow:hidden}.avatar-island{position:relative;width:290px;height:280px;display:grid;place-items:center}.avatar-island>.family-avatar{width:185px;height:250px;z-index:2}.island-top{position:absolute;width:250px;height:130px;background:linear-gradient(145deg,#aff582,#61c882);transform:rotate(-12deg) skew(20deg);border-radius:28px;bottom:0;box-shadow:0 22px #35957c,0 38px #214c90}.island-crystal{position:absolute;right:12px;top:30px;color:#fff1a2;font-size:60px;animation:crystal 3s ease-in-out infinite}.scene-cloud{position:absolute;color:#ffffff55;font-size:80px}.cloud-one{left:0;top:0}.cloud-two{right:10px;top:80px}.avatar-edit{position:absolute;bottom:8px;right:25px;font-size:12px}.avatar-bounce .avatar-body{animation:avatarBob 3s ease-in-out infinite;transform-origin:60px 140px}.world-heading{margin:25px 0}.world-heading h1{font-size:42px;margin:10px 0}.world-heading p{color:var(--muted)}.avatar-workshop{display:grid;grid-template-columns:1fr 1fr;gap:30px;background:#fff;border-radius:25px;padding:30px;border:2px solid var(--border)}.avatar-preview{background:radial-gradient(circle,#b9e3f5,#e3ddff);border-radius:22px;display:grid;place-items:center;min-height:330px}.avatar-preview svg{height:300px}.avatar-workshop form{display:grid;gap:13px;align-content:center}.avatar-workshop select{width:100%}.glasses-label{display:flex;gap:15px;align-items:center}.glasses-label input{width:24px;height:24px}.family-lineup{display:flex;gap:15px;margin-top:20px}.family-lineup figure{margin:0;text-align:center;flex:1;background:#fff;border-radius:16px;padding:10px}.family-lineup svg{max-height:160px;width:100%}.family-lineup figcaption{font-weight:700;font-size:13px}.adventure-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;padding:20px 0;background:radial-gradient(ellipse at center,#c9e9ff,transparent 70%)}.map-island{border:3px solid #fff;background:var(--tile);box-shadow:0 8px #a3b7ce;border-radius:30px;padding:25px;position:relative}.map-island h2{font-size:25px;margin:10px 0}.map-island p{font-size:13px}.map-island-art{font-size:65px;position:relative;text-shadow:0 5px #ffffff80}.map-flag{font-size:16px;background:#fff;border-radius:9px;padding:6px;position:absolute;right:5px;top:0}.map-nodes{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}.map-node{width:44px;height:44px;min-width:44px;border-radius:50%;border:2px solid #fff;background:#ffffff80;color:#223657;padding:0;font-weight:800;box-shadow:0 4px #0001}.map-node.node-saved{background:#264c66;color:#fff}.map-node:hover{transform:translateY(-3px)}.room-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.room-toolbar span{font-size:13px}.family-room{background:linear-gradient(#8dd2fa,#d6f5ff);padding:30px 18px 60px;border-radius:25px;border:3px solid #fff;box-shadow:0 8px #b6cee7;min-height:360px;overflow:hidden}.room-welcome{text-align:center}.room-welcome svg{width:20%;max-height:200px}.room-welcome h2{font-size:23px}.island-grid{position:relative;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(8,1fr);aspect-ratio:12/8;isolation:isolate;border-radius:15px;box-shadow:0 14px #369b71,0 26px #336387;transform:perspective(1400px) rotateX(8deg);background:#7cce81}.ground-tile{border:1px solid #ffffff22;background:#95da85;display:grid;place-items:center;font-size:22px}.ground-tile:nth-child(3n){background:#87d17a}.ground-tile:nth-child(7n){background:#a4e28b}.room-player,.room-star{position:absolute;left:calc(var(--x)*100%/12);top:calc(var(--y)*100%/8);width:calc(100%/12);height:calc(100%/8);z-index:2;transition:left .15s linear,top .15s linear;pointer-events:none}.room-player svg{position:absolute;bottom:8%;left:-30%;width:160%;height:190%;overflow:visible;filter:drop-shadow(0 5px 2px #254e4260)}.room-player b{position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);font-size:10px;background:#fff;color:#1f3554;border-radius:7px;padding:3px 5px;white-space:nowrap;z-index:3}.room-player.is-me b{background:#223b72;color:white}.room-star{font-size:40px;display:grid;place-items:center;color:#fff2a4;text-shadow:0 0 20px #f0a600;animation:crystal 2s ease-in-out infinite;z-index:1}.room-controls{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:30px}.move-pad{display:grid;grid-template-columns:repeat(3,52px);grid-template-rows:repeat(2,48px);gap:6px}.move-pad button{padding:0;font-size:25px;background:white;border:2px solid #b1c4df;box-shadow:0 3px #a0b6d4}.move-pad button:first-child{grid-column:2}.move-pad button:nth-child(2){grid-column:1;grid-row:2}.move-pad button:nth-child(3){grid-column:2;grid-row:2}.move-pad button:nth-child(4){grid-column:3;grid-row:2}.room-controls>.launch-button{font-size:16px;gap:10px}.room-people{display:flex;gap:8px;margin:20px 0;flex-wrap:wrap}.presence-chip{font-size:12px;background:#fff;padding:8px 12px;border-radius:20px;color:#758099}.presence-chip i{display:inline-block;width:7px;height:7px;background:#afb7c5;border-radius:50%;margin-right:7px}.presence-chip.is-online i{background:#36ae79}.arcade-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.arcade-tabs button{background:#fff;color:#29406c;border:2px solid #c4d1ec;min-height:50px}.mini-game{background:#fff;border-radius:25px;padding:30px;border:2px solid #d3dff0;text-align:center}.mini-game h2{font-size:34px;margin:15px}.mini-game .actions{justify-content:center}.mini-game .actions button{min-width:60px;min-height:48px}.mini-game>strong{display:block;font-size:32px;margin:20px}.block-display{display:flex;gap:7px;flex-wrap:wrap;min-height:95px;align-items:center;justify-content:center}.hundred-block,.ten-block,.one-block{background:#9279ea;border:2px solid #6045b5;border-radius:8px;padding:15px;box-shadow:0 5px #573da5;color:white;font-weight:700}.ten-block{padding:10px;background:#48b6a8;border-color:#278b80;box-shadow:0 5px #278b80}.one-block{padding:5px;background:#edb43c;border-color:#bf891a;box-shadow:0 5px #bf891a}.pizza-grid{display:grid;grid-template-columns:repeat(2,110px);justify-content:center;gap:8px;margin:25px}.pizza-piece{background:#eee;font-size:65px;padding:12px;filter:grayscale(1);border:3px solid transparent}.pizza-piece[aria-pressed=true]{filter:none;border-color:#efbb41;background:#fff1ca}.machine-display{font-size:50px;margin:40px 0}.mini-game button:disabled{opacity:.5}#starAnswer{width:100%;font-size:25px;margin:15px 0;padding:14px}@keyframes avatarBob{50%{transform:translateY(-8px) rotate(2deg)}}@keyframes crystal{50%{transform:translateY(-8px) rotate(10deg)}}
@media(max-width:700px){.personal-scene{min-height:260px}.avatar-island{width:250px;height:230px}.avatar-island>.family-avatar{height:210px}.island-top{width:215px;height:100px}.world-heading h1{font-size:31px}.avatar-workshop{grid-template-columns:1fr;padding:18px}.avatar-preview{min-height:230px}.avatar-preview svg{height:220px}.family-lineup{gap:5px}.family-lineup figure{padding:3px}.family-lineup figcaption{font-size:10px}.adventure-map{grid-template-columns:1fr}.map-island{padding:20px}.family-room{min-height:260px;padding:30px 8px 50px}.room-player b{font-size:8px}.room-star{font-size:28px}.room-controls{flex-direction:column}.room-controls>.launch-button{width:100%}.room-toolbar .primary{font-size:14px}.mini-game{padding:20px 12px}.mini-game h2{font-size:27px}.arcade-tabs button{font-size:12px;padding:10px}.room-welcome h2{font-size:18px}.world-heading p{font-size:13px}.ground-tile{font-size:13px}}
@media(prefers-reduced-motion:reduce){.avatar-bounce .avatar-body,.island-crystal,.room-star{animation:none}.room-player{transition:none}}
body[data-page=map] .preview,body[data-page=play] .preview,body[data-page=games] .preview,body[data-page=avatar] .preview{display:none}.island-grid{max-width:700px;margin:auto}.family-room{min-height:0}.map-island:after{content:'';position:absolute;bottom:-29px;left:50%;height:26px;border-left:5px dotted #7c9cc2}.map-island:last-child:after,.map-island:nth-last-child(2):after{display:none}
.constellation-strip{display:flex;gap:12px;justify-content:center;align-items:center;margin:0 0 30px;color:#578ab5}.constellation-strip span{font-size:30px;opacity:.4}.constellation-strip span.lit{color:#ffe49a;text-shadow:0 0 8px #c1941e;opacity:1}.constellation-strip b{font-size:12px}.percent-game{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;max-width:600px;margin:25px auto}.percent-game button{padding:0;aspect-ratio:1;background:#e3eaf3;border:2px solid #a8b6ca;border-radius:5px;min-height:26px}.percent-game button[aria-pressed=true]{background:#8e72e0;border-color:#5942a6;box-shadow:0 3px #5942a6}.percent-game button:nth-child(n+11){border-top-width:5px}#inverseSlider{width:100%;min-height:48px}.map-island{transition:transform .2s}.map-island:hover{transform:translateY(-4px)}.family-avatar{pointer-events:none}@media(prefers-reduced-motion:reduce){.map-island{transition:none}}
@media(max-width:700px){.nav-more[open]{max-height:none;overflow:visible}.nav-more-list{position:fixed;top:120px;left:16px;right:16px;max-height:55vh;overflow:auto;display:grid;grid-template-columns:1fr 1fr;background:#fff;padding:14px;border:2px solid #c8d6ed;border-radius:16px;box-shadow:0 15px 40px #1e315c33;z-index:100}.nav-more-list button{min-height:44px;color:#273d63}.nav-more{position:static}}
/* Native WebGL Skybound world. */
.family-room-3d{padding:0;overflow:hidden;background:#a5d4f9;border:3px solid #fff;box-shadow:0 9px #b3c7df}.world3d-shell{height:min(68vh,690px);min-height:440px;position:relative;overflow:hidden;background:#a5d4f9}.world3d-shell canvas{display:block;width:100%;height:100%;touch-action:none;outline-offset:-4px;cursor:grab}.world3d-shell canvas:active{cursor:grabbing}.world3d-title{position:absolute;top:22px;left:24px;color:#163a62;pointer-events:none;text-shadow:0 2px #fff7}.world3d-title b{display:block;font-size:26px;letter-spacing:3px;font-weight:900}.world3d-title>span{font-size:9px;letter-spacing:2.5px}.world3d-hud{position:absolute;top:20px;right:20px;display:flex;flex-direction:column;align-items:flex-end;gap:7px;pointer-events:none}.world3d-hud span{background:#16395bdd;color:#fff;font-size:11px;padding:9px 13px;border-radius:20px;font-weight:800;letter-spacing:.5px}.world3d-hud span:first-child{background:#fff2ba;color:#4b3c15;font-size:14px}.world3d-help{position:absolute;bottom:18px;left:20px;background:#fffD;padding:8px 12px;border-radius:8px;font-size:11px;color:#243c60;pointer-events:none}.world3d-reset{position:absolute;bottom:18px;right:20px;background:#fffD;color:#294268;padding:8px 12px;font-size:12px}.world3d-shell #world3dLabels{position:absolute;inset:0;pointer-events:none}.world3d-shell #world3dLabels span{position:absolute;transform:translate(-50%,-100%);background:#163956dd;color:#fff;border:1px solid #ffffffaa;border-radius:10px;padding:4px 9px;font-size:11px;font-weight:800;white-space:nowrap;box-shadow:0 3px 10px #25496b25}.room-controls [data-move],#jump3D{touch-action:none;user-select:none}.room-controls #jump3D{min-width:90px;min-height:60px;font-size:22px;background:#9672ed;border-bottom:5px solid #6247a8}.family-room-3d+.room-controls{gap:10px}body[data-page=play] .world-heading{margin:12px 0 20px}body[data-page=play] .world-heading h1{font-size:36px}body[data-page=play] .room-toolbar{margin-bottom:15px}@media(max-width:700px){.world3d-shell{min-height:480px;height:62vh}.world3d-title{top:18px;left:14px}.world3d-title b{font-size:17px;letter-spacing:1px}.world3d-title>span{font-size:7px;letter-spacing:1px}.world3d-hud{top:16px;right:12px}.world3d-hud span{font-size:8px;padding:7px 9px}.world3d-hud span:first-child{font-size:11px}.world3d-help{bottom:12px;left:10px;max-width:200px;font-size:9px}.world3d-reset{bottom:12px;right:10px;font-size:10px}.room-controls{flex-direction:row;flex-wrap:wrap;justify-content:center}.room-controls>.launch-button{width:100%}body[data-page=play] .world-heading h1{font-size:28px}}
.world3d-playarea{position:relative}.world3d-full{position:absolute;bottom:57px;right:20px;background:#16395bd9;color:#fff;padding:8px 12px;font-size:11px}.world3d-playarea:fullscreen{background:#a5d4f9;width:100vw;height:100dvh;overflow:hidden}.world3d-playarea:fullscreen .world3d-shell{height:100dvh;min-height:100dvh}.world3d-playarea:fullscreen .family-room-3d{border:0;border-radius:0}.world3d-playarea:fullscreen>.room-controls{position:absolute;left:30px;right:30px;bottom:55px;display:flex;justify-content:space-between;pointer-events:none}.world3d-playarea:fullscreen>.room-controls>*{pointer-events:auto}.world3d-playarea:fullscreen>.room-controls #starChallenge{max-width:260px;width:auto}body[data-page=play] .greeting{display:none}@media(max-width:700px){.world3d-playarea>.room-controls,.world3d-playarea:fullscreen>.room-controls{position:absolute;left:12px;right:12px;bottom:44px;display:grid;grid-template-columns:1fr auto;margin:0;pointer-events:none;align-items:center}.world3d-playarea>.room-controls>*{pointer-events:auto}.world3d-playarea .move-pad{grid-template-columns:repeat(3,42px);grid-template-rows:repeat(2,40px);gap:4px}.world3d-playarea .move-pad button{font-size:22px;background:#ffffffd9}.world3d-playarea>.room-controls #jump3D{min-width:65px;min-height:65px;padding:12px;font-size:18px;border-radius:50%}.world3d-playarea>.room-controls #starChallenge,.world3d-playarea:fullscreen>.room-controls #starChallenge{grid-column:1/-1;width:100%;max-width:none;padding:9px 15px;min-height:40px;font-size:12px;margin-top:8px;box-shadow:0 3px #1b4b4b}.world3d-full{bottom:14px;right:10px;font-size:9px}.world3d-reset{bottom:50px;right:10px}.world3d-help{max-width:170px}body[data-page=play] header{min-height:50px;height:50px}body[data-page=play] .world-heading h1{font-size:25px;margin:8px 0}body[data-page=play] .world-heading p{font-size:12px;margin:6px 0}body[data-page=play] .world-heading{margin:8px 0 12px}.world3d-playarea:fullscreen .world3d-hud{top:18px}.world3d-playarea:fullscreen .world3d-shell{height:100dvh}}
.world3d-hud button{pointer-events:auto;border:1px solid #fff8;border-radius:14px;background:#fffD;color:#23456d;font-size:10px;padding:6px 10px}.world3d-hud button:hover{background:#fff}
.expedition-panel{margin:0 0 22px;background:linear-gradient(120deg,#253a69,#554688);color:white;border:2px solid #8fa6cf;border-radius:22px;padding:25px;box-shadow:0 6px #c9d3e5}.expedition-copy h2{font-size:28px;margin:9px 0}.expedition-copy p{font-size:13px;color:#e0e9fa;max-width:650px}.expedition-steps{list-style:none;display:flex;gap:8px;padding:0;margin:22px 0}.expedition-steps li{flex:1;display:flex;align-items:center;gap:8px;color:#becbe3;font-size:11px}.expedition-steps b{display:grid;place-items:center;border:2px solid #8a99b9;border-radius:50%;width:28px;height:28px;min-width:28px}.expedition-steps .done b{background:#8de0ac;color:#1e4b48;border-color:#8de0ac}.expedition-steps .current{color:#fff2aa}.expedition-steps .current b{border-color:#fff2aa;box-shadow:0 0 12px #ffdf7c66}.expedition-panel .quiet{background:#ffffff22;color:#fff}.expedition-panel .small{color:#dfe9fd}.expedition-team{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.expedition-team span{font-size:11px;background:#ffffff18;padding:6px 9px;border-radius:12px}.puzzle-machine{font-size:55px;background:#e8f1fa;border-radius:17px;text-align:center;padding:25px;margin:20px 0}.puzzle-options{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.puzzle-options button{min-width:75px;min-height:65px;font-size:26px;font-weight:800;background:#e8e2fd;color:#443279;border:3px solid transparent;border-bottom:6px solid #b7a8e3}.puzzle-options button[aria-pressed=true]{background:#cbf48b;border-color:#7fba52;color:#214332}.puzzle-options button:active{transform:translateY(3px)}@media(max-width:700px){.expedition-panel{padding:18px}.expedition-copy h2{font-size:23px}.expedition-steps{gap:4px}.expedition-steps li{flex-direction:column;text-align:center;gap:6px;font-size:9px}.expedition-steps b{width:25px;height:25px;min-width:25px}.expedition-panel .actions button{font-size:12px}.puzzle-machine{font-size:40px}}
.world3d-mission{position:absolute;top:104px;left:24px;background:#fff3b8;color:#463a20;border:2px solid #e8c56b;border-radius:12px;padding:10px 14px;font-size:12px;box-shadow:0 3px #b79b52}.world3d-playarea:fullscreen .world3d-mission{top:90px}@media(max-width:700px){.world3d-mission{top:96px;left:12px;font-size:10px;padding:8px}.world3d-playarea:fullscreen .world3d-mission{top:96px}}

.coverage-key{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.coverage-key span{background:#eeebff;padding:9px;border-radius:12px;font-size:12px}.coverage-subject{border:1px solid var(--border);padding:14px;border-radius:12px;margin:12px 0}.coverage-subject summary{cursor:pointer;font-weight:700}.coverage-code-list>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid var(--border);padding:10px 0}.coverage-code-list small{color:var(--muted)}.coverage-gap{color:#79533c;font-size:12px}.source-hash{overflow-wrap:anywhere;font-size:10px}.evidence-record{padding:15px;margin-top:12px;border:1px solid var(--border);border-radius:12px}.evidence-record label{display:block;margin:12px 0}.evidence-record input[type=checkbox]{width:auto;display:inline-block;margin-right:8px}.evidence-record textarea{display:block;width:100%}

.ai-launch-hero{background:linear-gradient(120deg,#282145,#5844a9);color:#fff;padding:28px;border-radius:20px;margin:18px 0 22px}.ai-launch-hero p{max-width:680px;color:#e6e0ff}.ai-boundary{display:inline-flex;background:#ffffff20;border:1px solid #ffffff38;border-radius:999px;padding:9px 13px;font-size:13px}.ai-launch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.ai-tool-card{display:flex;flex-direction:column;min-height:230px}.ai-tool-icon{font-size:16px;font-weight:700;letter-spacing:.4px;color:var(--purple);background:#eeebff;border-radius:12px;width:48px;height:48px;display:grid;place-items:center;margin-bottom:12px}.ai-tool-card h3{margin:10px 0 0}.ai-tool-card p{color:var(--muted);font-size:14px;flex:1}.ai-tool-link{display:inline-flex;align-self:flex-start;text-decoration:none;background:#eeebff;color:#5b48c9;font-weight:700;padding:11px 14px;border-radius:10px}.ai-launch-note{font-size:12px;color:var(--muted);max-width:950px;margin:18px 0 32px}@media(max-width:700px){.ai-launch-hero{padding:22px}.ai-launch-grid{grid-template-columns:1fr 1fr;gap:10px}.ai-tool-card{min-height:230px;padding:15px}.ai-tool-card h3{font-size:17px}.ai-tool-link{font-size:13px}}@media(max-width:420px){.ai-launch-grid{grid-template-columns:1fr}}

.mira-session-card{overflow:hidden;padding:0;background:linear-gradient(145deg,#fff 0%,#f7f5ff 52%,#f5fbff 100%);border:1px solid #e6e0f8}.mira-session-top{display:flex;align-items:center;gap:9px;padding:13px 20px;border-bottom:1px solid #ece9f7;color:#615a78;font-size:11px;letter-spacing:.08em;font-weight:800}.mira-live-dot{width:9px;height:9px;background:#52be91;border-radius:50%;box-shadow:0 0 0 4px #52be9120}.mira-clear{margin-left:auto;background:#fff;border:1px solid #e7e1f2;border-radius:999px;padding:8px 12px;font-size:12px}.mira-stage{display:grid;grid-template-columns:minmax(170px,250px) 1fr;align-items:center;gap:24px;padding:22px 24px 8px}.mira-avatar-wrap{height:205px;display:grid;place-items:center;position:relative;perspective:700px;isolation:isolate}.mira-avatar-wrap:before{content:'';position:absolute;width:175px;height:175px;border-radius:48% 52% 55% 45%;background:radial-gradient(circle at 34% 28%,#fff 0,#e4dcff 45%,#b7a4f6 100%);box-shadow:inset -13px -13px 23px #6351a62c,0 18px 32px #5c4a9224;transform:rotate(-9deg)}.mira-avatar{position:relative;width:114px;height:176px;transform-style:preserve-3d;animation:miraFloat 3.4s ease-in-out infinite}.mira-hair{position:absolute;left:17px;top:5px;width:80px;height:82px;border-radius:48% 48% 39% 42%;background:linear-gradient(135deg,#392e48 0%,#211d31 60%,#151728 100%);box-shadow:inset -7px -5px 0 #131425,7px 10px 14px #33284b3d;z-index:3}.mira-face{position:absolute;left:10px;top:20px;width:61px;height:56px;border-radius:43% 43% 48% 48%;background:linear-gradient(140deg,#ffe5cf,#f0bfa5);box-shadow:inset -5px -5px 8px #c98c7c50;transform:translateZ(8px)}.mira-eye{position:absolute;top:25px;width:5px;height:7px;background:#34243a;border-radius:50%}.mira-eye-a{left:15px}.mira-eye-b{right:15px}.mira-cheek{position:absolute;top:34px;width:10px;height:5px;border-radius:50%;background:#ed8e9c90}.mira-cheek-a{left:5px}.mira-cheek-b{right:5px}.mira-smile{position:absolute;left:27px;top:39px;width:9px;height:5px;border-bottom:2px solid #994e55;border-radius:0 0 10px 10px}.mira-neck{position:absolute;z-index:2;top:67px;left:49px;width:18px;height:18px;background:linear-gradient(90deg,#d99c86,#f2c2a8);border-radius:5px}.mira-body{position:absolute;z-index:2;top:78px;left:22px;width:70px;height:83px;background:linear-gradient(115deg,#fff 0%,#fcfbff 36%,#dad4f2 100%);border:1px solid #e0dbef;border-radius:23px 23px 18px 18px;box-shadow:inset -9px -6px 0 #bab1df70,4px 11px 15px #31234c2b;transform:translateZ(4px)}.mira-collar{position:absolute;left:24px;top:0;width:24px;height:22px;background:#7464c1;clip-path:polygon(0 0,100% 0,50% 100%)}.mira-badge{position:absolute;left:28px;top:32px;color:#775fd1;font-size:17px;text-shadow:0 2px #fff}.mira-arm{position:absolute;z-index:1;top:90px;width:24px;height:68px;border-radius:15px;background:linear-gradient(90deg,#e7b49c,#ffe0c9);box-shadow:inset -4px -3px #c98c7c55}.mira-arm-left{left:9px;transform:rotate(13deg);transform-origin:top center;animation:miraWave 3.2s ease-in-out infinite}.mira-arm-right{right:9px;transform:rotate(-10deg)}.mira-shadow{position:absolute;bottom:6px;width:90px;height:15px;border-radius:50%;background:#57468427;filter:blur(5px);animation:miraShadow 3.4s ease-in-out infinite}.mira-spark{position:absolute;color:#8a71e7;font-size:20px;animation:miraTwinkle 2s ease-in-out infinite}.mira-spark-a{top:20px;right:22px}.mira-spark-b{bottom:28px;left:20px;animation-delay:.6s}.mira-nameplate{display:inline-flex;gap:6px;align-items:center;color:#604dbb;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mira-stage-copy h2{font-size:clamp(22px,3vw,32px);margin:8px 0}.mira-stage-copy p{color:var(--muted);max-width:610px;line-height:1.6;margin:0 0 12px}.mira-progress{display:inline-flex;border-radius:999px;background:#eeebff;color:#6551bf;padding:8px 12px;font-size:12px;font-weight:700}.mira-speech{margin:10px 22px 14px;padding:17px 20px;background:#fff;border:1px solid #e8e2f4;border-radius:7px 18px 18px 18px;box-shadow:0 7px 20px #32214c0a;line-height:1.7;min-height:55px}.mira-conversation{display:flex;flex-direction:column;gap:9px;max-height:250px;overflow:auto;padding:0 22px 12px;scroll-behavior:smooth}.mira-empty{color:var(--muted);text-align:center;font-size:13px;padding:10px}.mira-message{max-width:min(88%,660px);padding:11px 14px;border-radius:15px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.mira-message small{display:block;font-weight:800;font-size:11px;color:#6c5ab5;margin-bottom:4px}.mira-message p{margin:0}.mira-message-teacher{align-self:flex-start;background:#fff;border:1px solid #e7e1f5;border-bottom-left-radius:4px}.mira-message-learner{align-self:flex-end;background:#e9f5ff;border:1px solid #d7ebfa;border-bottom-right-radius:4px}.mira-controls{padding:16px 22px 20px;background:#fff;border-top:1px solid #ece9f7}.mira-controls>label{font-size:12px;font-weight:800}.mira-controls>select{display:block;max-width:300px;margin:7px 0 12px}.mira-quick-prompts{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 12px}.mira-quick-prompts button{border:1px solid #e3dcf4;border-radius:999px;background:#f8f6ff;color:#5847a3;padding:9px 12px;font-size:12px;font-weight:700}.mira-quick-prompts button:hover{background:#eeeaff;transform:translateY(-1px)}#tutorForm textarea{display:block;width:100%;min-height:80px;border:1px solid #ddd7ed;border-radius:14px;padding:13px;resize:vertical;background:#fdfcff}.mira-action-row{display:flex;align-items:center;gap:9px;margin-top:9px}.mira-tool{width:44px;height:42px;border-radius:13px;border:1px solid #e4dfed;background:#fff;font-size:18px}.mira-send{margin-left:auto}.mira-privacy{margin:12px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.mira-avatar-wrap.mira-thinking .mira-avatar{animation:miraThink 1s ease-in-out infinite}.mira-avatar-wrap.mira-speaking .mira-avatar{animation:miraSpeak .65s ease-in-out infinite}.mira-thinking .mira-spark,.mira-speaking .mira-spark{color:#ed9d44}.mira-session-card button:disabled{opacity:.65;cursor:wait}@keyframes miraFloat{0%,100%{transform:translateY(0) rotateY(-7deg)}50%{transform:translateY(-8px) rotateY(7deg)}}@keyframes miraWave{0%,75%,100%{transform:rotate(13deg)}82%,90%{transform:rotate(-22deg)}}@keyframes miraShadow{0%,100%{transform:scaleX(1);opacity:.65}50%{transform:scaleX(.82);opacity:.4}}@keyframes miraTwinkle{0%,100%{transform:scale(.8) rotate(0);opacity:.65}50%{transform:scale(1.2) rotate(20deg);opacity:1}}@keyframes miraThink{0%,100%{transform:translateY(0) rotate(2deg)}50%{transform:translateY(-5px) rotate(-2deg)}}@keyframes miraSpeak{0%,100%{transform:translateY(-2px) scale(1)}50%{transform:translateY(-3px) scale(1.04)}}@media(prefers-reduced-motion:reduce){.mira-avatar,.mira-shadow,.mira-spark,.mira-arm-left{animation:none!important}}@media(max-width:600px){.mira-stage{grid-template-columns:112px 1fr;gap:12px;padding:18px 14px 6px}.mira-avatar-wrap{height:150px;transform:scale(.8)}.mira-stage-copy h2{font-size:20px}.mira-stage-copy p{font-size:13px}.mira-speech{margin:8px 14px 12px;padding:13px 15px}.mira-conversation{padding:0 14px 10px}.mira-controls{padding:14px}.mira-quick-prompts button{font-size:11px;padding:8px 10px}.mira-message{max-width:95%}}@media(max-width:390px){.mira-stage{grid-template-columns:1fr}.mira-avatar-wrap{height:130px}.mira-stage-copy{text-align:center}.mira-progress{margin:auto}.mira-quick-prompts{gap:6px}.mira-quick-prompts button{flex:1 1 42%}}
