:root{
  color-scheme:light;
  --ink:#17213b;
  --soft:#40506e;
  --muted:#66738a;
  --paper:#f3fbff;
  --cloud:#ffffff;
  --line:#cad8ea;
  --sky:#58b9e8;
  --leaf:#22a36f;
  --coral:#f26d5b;
  --sun:#ffd15c;
  --violet:#6f64d8;
  --mint:#dff8e9;
  --shadow:0 18px 44px rgba(30,46,82,.14);
  --pixel:0 4px 0 rgba(23,33,59,.18);
}
*{box-sizing:border-box}
html{min-width:320px;scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink);letter-spacing:0}
body:before{content:"";position:fixed;inset:0;z-index:-2;background:linear-gradient(180deg,#eef9ff 0,#f8fffb 44%,#fff8e6 100%)}
body:after{content:"";position:fixed;inset:0;z-index:-1;background-image:linear-gradient(rgba(23,33,59,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(23,33,59,.055) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(180deg,rgba(0,0,0,.6),transparent 70%)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.site-header{position:sticky;top:0;z-index:40;min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 46px;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(23,33,59,.12);backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:11px;font-weight:950}
.brand span{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;background:var(--ink);color:white;box-shadow:4px 4px 0 var(--sun)}
.site-header nav,.header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.site-header nav a,.header-actions a{min-height:38px;display:inline-flex;align-items:center;border-radius:8px;padding:0 12px;color:var(--soft);font-size:.86rem;font-weight:900}
.site-header nav a:hover,.header-actions a:hover{background:#edf7ff;color:var(--ink)}
.solid,.header-actions .solid{background:var(--ink);color:white}
.pill,.primary,.secondary,.ghost,button{border:0;border-radius:8px;padding:12px 16px;font-weight:950}
.primary,.secondary,.ghost,.quest-card a,.card a,.plan-grid a,.panel button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:2px solid var(--ink);box-shadow:var(--pixel);transition:transform .15s ease,box-shadow .15s ease}
.primary:hover,.secondary:hover,.ghost:hover,.quest-card a:hover,.card a:hover,.plan-grid a:hover,.panel button:hover{transform:translateY(-2px);box-shadow:0 6px 0 rgba(23,33,59,.18)}
.primary{background:var(--leaf);color:white}
.secondary{background:var(--ink);color:white}
.ghost{background:var(--sun);color:var(--ink)}
.lang-toggle{background:#fff;border:2px solid var(--ink);color:var(--ink);box-shadow:var(--pixel)}
.hero{position:relative;min-height:590px;display:flex;align-items:center;overflow:hidden;padding:66px 46px 42px}
.hero>div:first-child{position:relative;z-index:2;width:min(620px,50%)}
.eyebrow{display:inline-flex;align-items:center;min-height:30px;border:2px solid rgba(23,33,59,.18);border-radius:999px;padding:0 12px;background:rgba(255,255,255,.82);color:#236b63;text-transform:uppercase;font-size:.76rem;font-weight:950}
.hero h1{max-width:620px;margin:16px 0 18px;font-size:clamp(2.65rem,5.6vw,4.15rem);line-height:1.03;text-wrap:balance}
.hero p{max-width:610px;margin:0;color:#34435e;font-size:1.12rem;line-height:1.76}
.hero-actions,.inline-actions,.toolbar{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.hero-visual{position:absolute;inset:0;z-index:0;border:0;border-radius:0;overflow:hidden}
.hero-visual:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(243,251,255,.94) 0,rgba(243,251,255,.78) 48%,rgba(243,251,255,.08) 100%)}
.hero-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.18)}
.quest-map{position:absolute;right:42px;bottom:34px;z-index:2;width:min(520px,44%);display:grid;grid-template-columns:1fr 1fr;gap:12px}
.quest-map:before{content:"";position:absolute;left:9%;right:9%;top:50%;border-top:5px dotted rgba(23,33,59,.3);transform:rotate(-8deg)}
.quest-tile{position:relative;min-height:118px;border:2px solid var(--ink);border-radius:8px;padding:15px;background:rgba(255,255,255,.9);box-shadow:var(--pixel)}
.quest-tile strong{display:block;margin-bottom:6px;font-size:1.05rem}
.quest-tile strong:before{content:"LV ";color:var(--coral);font-size:.74rem}
.quest-tile span{display:block;color:var(--muted);font-size:.84rem;line-height:1.45}
.section{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:58px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:22px}
.section-head h2,.play-flow h2,.page-heading h1,.panel h1{margin:8px 0 0;font-size:clamp(1.85rem,3vw,2.45rem);line-height:1.12;text-wrap:balance}
.section-head p,.page-heading p,.panel p{max-width:760px;color:var(--muted);font-size:1.02rem;line-height:1.72}
.grid,.quest-cards,.product-strip,.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card,.quest-card,.product-strip article,.panel{background:rgba(255,255,255,.92);border:2px solid var(--ink);border-radius:8px;padding:22px;box-shadow:var(--pixel)}
.card h3,.quest-card h3{margin:10px 0;font-size:1.45rem}
.card p,.card li,.quest-card span,.quest-card small,.product-strip span{color:var(--muted);line-height:1.6}
.badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;border:2px solid rgba(23,33,59,.16);background:#fff;color:#236b63;padding:7px 11px;font-weight:950;font-size:.78rem}
.quest-card{position:relative;min-height:370px;display:flex;flex-direction:column;overflow:hidden}
.quest-card:before{content:"";position:absolute;inset:0 0 auto 0;height:10px;background:var(--track)}
.quest-card.coding{--track:var(--leaf)}
.quest-card.chinese{--track:var(--coral)}
.quest-card.ontario{--track:var(--sky)}
.quest-icon{display:grid;place-items:center;width:54px;height:54px;border:2px solid var(--ink);border-radius:8px;background:color-mix(in srgb,var(--track) 28%,white);color:var(--ink);font-weight:950;box-shadow:3px 3px 0 rgba(23,33,59,.18)}
.quest-card>p{margin:18px 0 2px;color:var(--track);text-transform:uppercase;font-size:.72rem;font-weight:950}
.quest-card small{font-weight:850}
.quest-card a{margin-top:auto;background:var(--track);color:white}
.play-flow{display:grid;grid-template-columns:320px minmax(0,1fr);gap:24px}
.steps,.play-flow ol{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.steps:before,.play-flow ol:before{content:"";position:absolute;left:7%;right:7%;top:31px;border-top:6px dotted rgba(23,33,59,.24)}
.step,.play-flow li{position:relative;z-index:1;min-height:176px;border:2px solid var(--ink);border-radius:8px;padding:18px;background:white;box-shadow:var(--pixel)}
.step span,.play-flow strong{display:grid;place-items:center;width:42px;height:42px;border:2px solid var(--ink);border-radius:8px;background:var(--sun);color:var(--ink);font-weight:950}
.step h3{margin:14px 0 6px}
.step p,.play-flow span{display:block;margin-top:10px;color:var(--muted);line-height:1.55}
.product-strip article{padding:20px}
.product-strip strong{font-size:1.1rem}
.proof-grid,.faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.proof-grid article,.faq-grid article,.contact-band{border:2px solid var(--ink);border-radius:8px;background:rgba(255,255,255,.94);box-shadow:var(--pixel);padding:20px}
.proof-grid article span{display:inline-flex;margin-bottom:10px;border:2px solid rgba(23,33,59,.14);border-radius:999px;padding:5px 9px;background:var(--mint);color:#164b3d;font-size:.75rem;font-weight:950;text-transform:uppercase}
.proof-grid article strong,.faq-grid article strong{display:block;font-size:1.16rem;line-height:1.25}
.proof-grid article p,.faq-grid article p,.contact-band p{color:var(--muted);line-height:1.62}
.faq-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.contact-band{display:flex;align-items:center;justify-content:space-between;gap:18px}
.contact-band h2{margin:10px 0 8px;font-size:clamp(1.8rem,3vw,2.35rem)}
.footer,.site-footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:28px 46px;border-top:1px solid rgba(23,33,59,.14);color:var(--muted)}
.footer a,.site-footer a{font-weight:900;color:var(--ink)}
.page-heading{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:54px 0 20px}
.price{font-size:2rem;font-weight:950;color:var(--ink)}
.plan-grid{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:18px 0 62px}
.pricing-readiness-v075{width:min(1180px,calc(100% - 48px));margin:0 auto 2px;padding:12px 14px;border:1px solid #d8a211;border-radius:6px;background:#fff7cf;color:#594400;font-weight:800}
.pricing-readiness-v075.ready{border-color:#2faf78;background:#eefbf4;color:#155f43}
.pricing-sale-label-v079{display:inline-flex;align-items:center;width:fit-content;margin:4px 0 8px;padding:4px 8px;border:1px solid #f0a51a;background:#fff3bf;color:#6a4300;font-size:.78rem;font-weight:800}
.price s,.account-price-v063 s{color:#6c7890;font-size:.75em;font-weight:600}
.pricing-action-disabled-v075{cursor:not-allowed;opacity:.58;box-shadow:none!important;transform:none!important}
.account-shell,.admin-shell{width:min(1120px,calc(100% - 48px));margin:0 auto;padding:54px 0;display:grid;grid-template-columns:minmax(300px,.85fr) minmax(320px,1.15fr);gap:22px}
.admin-shell{width:min(1320px,calc(100% - 48px));grid-template-columns:minmax(280px,.72fr) minmax(0,1.65fr);align-items:start}
.panel.quest-pass{background:linear-gradient(180deg,#ffffff 0,#eaf9ff 100%)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.tabs button{background:#fff;color:var(--soft);border:2px solid var(--ink);box-shadow:none}
.tabs button.active{background:var(--sun);color:var(--ink);box-shadow:var(--pixel)}
label{display:grid;gap:7px;margin:12px 0;font-weight:850}
input,select,textarea{width:100%;border:2px solid var(--line);border-radius:8px;padding:12px;background:#fff}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(88,185,232,.28);border-color:var(--sky)}
textarea{min-height:120px;resize:vertical}
.notice{background:#fff6ce;border:2px solid #e4bd44;border-radius:8px;padding:14px;color:#5a4300;font-weight:800;line-height:1.5}
.child-choice{display:block;width:100%;margin:8px 0;text-align:left;background:#fff;color:var(--ink)}
.child-choice.active{background:var(--sun);color:var(--ink)}
.inline-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto;gap:8px;margin:12px 0}
.table{width:100%;border-collapse:collapse;background:white}
.table th,.table td{padding:10px;border-bottom:1px solid var(--line);text-align:left}
.table th{position:sticky;top:0;background:#f8fbff;z-index:1;font-size:.82rem;color:var(--soft);text-transform:uppercase}
.table td{vertical-align:top}
.table button,.row-action{min-height:32px;border:2px solid var(--line);border-radius:8px;background:#fff;padding:0 9px;font-size:.78rem;font-weight:950;box-shadow:none}
.table button.primary-row{background:var(--leaf);border-color:var(--ink);color:#fff}
.table button.warn-row{background:#fff6ce;border-color:#e4bd44;color:#5a4300}
.table-wrap{max-width:100%;overflow:auto;border:2px solid var(--line);border-radius:8px;background:white}
.manager-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 18px}
.manager-tabs button{border:2px solid var(--ink);background:white;color:var(--soft);box-shadow:none}
.manager-tabs button.active{background:var(--sun);color:var(--ink);box-shadow:var(--pixel)}
.manager-panel{display:grid;gap:16px}
.manager-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.manager-grid.full{grid-template-columns:1fr}
.check-row{display:flex;align-items:center;gap:10px;min-height:48px}
.check-row input{width:auto}
.mini-card{border:2px solid var(--line);border-radius:8px;background:#fff;padding:16px}
.mini-card h3{margin:0 0 8px;font-size:1.05rem}
.mini-card p,.helper-copy{color:var(--muted);line-height:1.55}
.form-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px}
.form-head h3{margin:0}
.filters{display:grid;grid-template-columns:1.2fr repeat(2,minmax(120px,.55fr));gap:10px;align-items:end}
.quick-actions{display:flex;gap:8px;flex-wrap:wrap}
.muted{color:var(--muted);font-size:.92rem;line-height:1.55}
.preview-box{border:2px dashed var(--line);border-radius:8px;background:#f8fbff;padding:14px;min-height:100px;white-space:pre-wrap;color:var(--soft);line-height:1.55}
.status-pill{display:inline-flex;align-items:center;border:2px solid var(--line);border-radius:999px;padding:4px 8px;background:#fff;font-size:.78rem;font-weight:950}
.status-pill.published,.status-pill.active{border-color:#9bd8bd;background:#dff8e9;color:#164b3d}
.status-pill.draft,.status-pill.hidden,.status-pill.archived{border-color:#e4bd44;background:#fff6ce;color:#5a4300}
.admin-summary{display:grid;gap:10px;margin-top:16px}
.admin-summary div{border:2px solid var(--line);border-radius:8px;background:white;padding:12px}
.admin-summary strong{display:block;font-size:1.45rem;color:var(--ink)}
.mini-record{border:2px solid var(--line);border-radius:8px;background:#fff;padding:12px;margin:10px 0;display:grid;gap:6px}
.mini-record strong{color:var(--ink)}
.mini-record span{color:var(--muted);font-size:.88rem;font-weight:850}
.mini-record p{margin:0;color:var(--soft);line-height:1.55}
.mini-record-list{display:grid;gap:10px;margin-top:12px}
.submission-history-card{margin-top:12px}
.evidence-record{background:linear-gradient(180deg,#fff,#f8fbff)}
.feedback-inbox-card{margin-top:12px}
.feedback-record{background:linear-gradient(180deg,#fff,#f7fffb)}
.feedback-record.needs-revision{border-color:#f2b36f;background:#fff8ed}
.feedback-record b{color:var(--ink)}
.record-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.record-topline strong{line-height:1.35}
.record-topline .status-pill{display:inline-flex;align-items:center;min-height:28px;border:2px solid rgba(23,33,59,.12);border-radius:999px;background:#fff6ce;padding:4px 9px;color:#6b4b00;font-size:.78rem;white-space:nowrap}
.snapshot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:10px;margin-top:12px}
.snapshot-grid article{border:2px solid var(--line);border-radius:8px;background:#fffdf0;padding:10px;box-shadow:3px 3px 0 rgba(23,33,59,.12)}
.snapshot-grid span{display:block;color:var(--muted);font-size:.76rem;font-weight:950;text-transform:uppercase}
.snapshot-grid strong{display:block;margin-top:4px;color:var(--ink);font-size:1.28rem;line-height:1.1;word-break:break-word}
.report-header{display:flex;align-items:flex-start;gap:14px;margin-bottom:12px}
.report-header h3{margin:0 0 4px}
.report-header p{margin:0;color:var(--muted);font-weight:850}
.report-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.report-section-grid article,.report-evidence-list article{border:2px solid var(--line);border-radius:8px;background:#fff;padding:12px}
.report-section-grid span,.report-evidence-list span{display:block;color:var(--muted);font-size:.78rem;font-weight:950;text-transform:uppercase}
.report-section-grid p,.report-evidence-list p{margin:6px 0 0;color:var(--soft);line-height:1.58}
.report-evidence-list{display:grid;gap:9px;margin-top:12px}
.report-evidence-list>strong{display:block;color:var(--ink);font-size:1.04rem}
.report-evidence-list b{color:var(--ink)}
.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:20px 0}
.status-grid article{border:2px solid var(--line);border-radius:8px;background:#fff;padding:16px;box-shadow:var(--pixel)}
.status-grid article.ready{background:#f0fff5}
.status-grid article.watch{background:#fff8d7}
.status-grid article.blocked{background:#fff1ed}
.status-grid span{display:block;color:var(--muted);font-size:.78rem;font-weight:950;text-transform:uppercase}
.status-grid strong{display:block;margin:5px 0;color:var(--ink);font-size:1.35rem;word-break:break-word}
.status-grid p{margin:0;color:var(--soft);line-height:1.55}
.status-notes{margin-top:18px}
.status-notes li{margin:8px 0;color:var(--soft);font-weight:850;line-height:1.5}
.onboarding-list{display:grid;gap:9px}
.onboarding-list article{display:flex;gap:10px;align-items:flex-start;border:2px solid var(--line);border-radius:8px;background:#fff;padding:10px}
.onboarding-list b{width:24px;height:24px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:999px;background:#fff;color:var(--ink);font-weight:950;flex:0 0 auto}
.onboarding-list article.done{background:#f0fff5}
.onboarding-list article.done b{background:var(--leaf);color:#fff}
.onboarding-list strong,.onboarding-list span{display:block}
.onboarding-list span{color:var(--muted);font-size:.88rem;line-height:1.4}
.printable-report{margin-top:12px}
.role-gate{padding-top:34px}
.role-entry-grid,.student-action-grid,.teacher-work-grid,.report-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.role-entry-card,.student-action-card,.teacher-work-card,.report-focus-card,.parent-report-card,.parent-evidence-list article{position:relative;display:flex;flex-direction:column;gap:10px;min-height:210px;border:2px solid var(--ink);border-radius:8px;background:#fff;box-shadow:var(--pixel);padding:20px;overflow:hidden}
.role-entry-card:before,.student-action-card:before,.teacher-work-card:before{content:"";position:absolute;inset:0 0 auto 0;height:9px;background:var(--role)}
.role-entry-card span,.teacher-work-card span,.student-action-card span{display:inline-flex;align-items:center;width:max-content;border:2px solid rgba(23,33,59,.16);border-radius:999px;background:#fff;padding:5px 10px;color:var(--soft);font-size:.75rem;font-weight:950;text-transform:uppercase}
.role-entry-card strong,.student-action-card strong,.teacher-work-card strong{display:block;margin-top:4px;font-size:1.24rem;line-height:1.22}
.role-entry-card p,.student-action-card p,.teacher-work-card p,.report-focus-card p,.parent-report-card p,.parent-evidence-list p{margin:0;color:var(--muted);line-height:1.58}
.student-role,.student-action-card{--role:var(--leaf)}
.parent-role{--role:var(--sky)}
.teacher-role,.teacher-work-card{--role:var(--coral)}
.owner-role{--role:var(--violet)}
.student-hero .hero-visual,.teacher-hero .hero-visual,.parent-report-hero .hero-visual{display:none}
.student-hero,.teacher-hero,.parent-report-hero{min-height:420px}
.student-desk{padding-top:20px}
.student-action-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.teacher-work-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.report-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.report-focus-card{min-height:170px;background:linear-gradient(180deg,#fff,#f8fbff)}
.report-focus-card h2{margin:0;font-size:1.45rem;line-height:1.2}
.parent-report-card{min-height:220px;background:#fffdf0}
.report-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.report-note-grid article{border:2px solid var(--line);border-radius:8px;background:#fff;padding:12px}
.report-note-grid strong,.report-note-grid span{display:block}
.report-note-grid span{margin-top:5px;color:var(--muted);line-height:1.5}
.parent-evidence-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.parent-evidence-list article{min-height:150px}
.parent-evidence-list span{color:var(--coral);font-size:.76rem;font-weight:950;text-transform:uppercase}
@media print{
  body{background:#fff}
  .site-header,.quest-pass,.tabs,.toolbar,.notice,#recentProgress,.cards{display:none!important}
  .account-shell{display:block;width:100%;padding:0}
  .panel{border:0;box-shadow:none}
  [data-panel]{display:none!important}
  [data-panel="progress"]{display:block!important}
  .printable-report{display:block!important;border:0;box-shadow:none}
  .report-section-grid{grid-template-columns:1fr 1fr}
  .report-evidence-list article{break-inside:avoid}
}

.child-note{display:flex;align-items:center;gap:10px;background:var(--mint);border:2px solid #9bd8bd;border-radius:8px;padding:13px;color:#164b3d}
@media(max-width:1180px){
  .hero{min-height:0;display:block;padding:42px 32px}
  .hero>div:first-child{width:min(760px,100%)}
  .hero h1,.hero p{max-width:760px}
  .hero-visual{position:relative;inset:auto;margin-top:24px;overflow:visible}
  .hero-visual:before,.hero-visual img{display:none}
  .quest-map{position:relative;left:auto;right:auto;bottom:auto;width:100%;grid-template-columns:1fr 1fr}
  .quest-map:before{display:none}
}
@media(max-width:980px){
  .site-header{align-items:flex-start;flex-direction:column;padding:12px 22px}
  .hero{min-height:0;display:block;padding:34px 22px}
  .hero h1{font-size:3.35rem}
  .hero-visual{position:relative;inset:auto;margin-top:24px;overflow:visible}
  .hero-visual:before,.hero-visual img{display:none}
  .quest-map{position:relative;left:auto;right:auto;bottom:auto;width:100%;grid-template-columns:1fr 1fr}
  .quest-map:before{display:none}
  .section-head,.play-flow,.account-shell,.admin-shell,.manager-grid{grid-template-columns:1fr;align-items:flex-start}
  .grid,.quest-cards,.product-strip,.plan-grid,.steps,.play-flow ol,.proof-grid,.faq-grid,.role-entry-grid,.student-action-grid,.teacher-work-grid,.report-summary-grid,.parent-evidence-list,.report-note-grid{grid-template-columns:1fr}
  .contact-band{display:grid}
  .steps:before,.play-flow ol:before{display:none}
}
@media(max-width:620px){
  .site-header nav{display:none}
  .hero h1{font-size:2.45rem}
  .hero p{font-size:1rem}
  .quest-map{grid-template-columns:1fr}
  .section,.page-heading,.plan-grid,.account-shell,.admin-shell{width:min(100% - 24px,1180px)}
  .footer,.site-footer{padding:22px 18px;flex-direction:column}
}

/* v0.1.6 visual system: playful learning adventure, still parent-trustworthy. */
:root{
  --cream:#fff9e8;
  --paper-2:#f7fffb;
  --blue-ink:#12203d;
  --ring:0 0 0 4px rgba(255,209,92,.38);
  --soft-shadow:0 22px 54px rgba(18,32,61,.13);
}

body{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
}

body:before{
  background:
    radial-gradient(circle at 12% 12%,rgba(255,209,92,.22),transparent 22%),
    radial-gradient(circle at 82% 18%,rgba(88,185,232,.2),transparent 24%),
    linear-gradient(180deg,#effaff 0,#f8fffb 48%,#fff7df 100%);
}

.site-header,.topbar{
  box-shadow:0 10px 24px rgba(18,32,61,.06);
}

.brand span{
  position:relative;
  isolation:isolate;
}

.brand span:after{
  content:"";
  position:absolute;
  width:10px;
  height:10px;
  right:-5px;
  top:-5px;
  border:2px solid var(--ink);
  border-radius:8px;
  background:var(--coral);
}

.hero{
  isolation:isolate;
}

.hero h1{
  letter-spacing:0;
}

.hero p,.section-head p,.card p,.quest-card span,.quest-card small,.product-strip span,.faq-grid article p,.proof-grid article p{
  color:#42516b;
}

.hero-actions a,.hero-actions button,.primary,.secondary,.ghost,.quest-card a,.card a,.plan-grid a{
  position:relative;
  overflow:hidden;
}

.hero-actions a:after,.primary:after,.secondary:after,.ghost:after,.quest-card a:after,.card a:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg,transparent 0,rgba(255,255,255,.28) 46%,transparent 58%);
  transform:translateX(-120%);
  transition:transform .45s ease;
}

.hero-actions a:hover:after,.primary:hover:after,.secondary:hover:after,.ghost:hover:after,.quest-card a:hover:after,.card a:hover:after{
  transform:translateX(120%);
}

.badge{
  border-color:rgba(18,32,61,.18);
  box-shadow:0 3px 0 rgba(18,32,61,.08);
}

.badge:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:8px;
  background:var(--sun);
  border:2px solid currentColor;
}

.quest-card,.card,.product-strip article,.proof-grid article,.faq-grid article,.contact-band,.panel{
  box-shadow:var(--soft-shadow);
}

.quest-card,.card,.product-strip article,.proof-grid article,.faq-grid article{
  transition:transform .18s ease, box-shadow .18s ease;
}

.quest-card:hover,.card:hover,.product-strip article:hover,.proof-grid article:hover,.faq-grid article:hover{
  transform:translateY(-3px);
  box-shadow:0 26px 64px rgba(18,32,61,.16);
}

.quest-card:after,.card:after{
  content:"";
  position:absolute;
  inset:auto 16px 14px auto;
  width:42px;
  height:10px;
  border-radius:8px;
  background:repeating-linear-gradient(90deg,rgba(23,33,59,.18) 0 7px,transparent 7px 12px);
  opacity:.45;
}

.quest-card,.card{
  position:relative;
}

.quest-map .quest-tile:nth-child(1){background:linear-gradient(180deg,#fff,#effbf4)}
.quest-map .quest-tile:nth-child(2){background:linear-gradient(180deg,#fff,#fff3f0)}
.quest-map .quest-tile:nth-child(3){background:linear-gradient(180deg,#fff,#eef9ff)}
.quest-map .quest-tile:nth-child(4){background:linear-gradient(180deg,#fff,#f6f1ff)}

.steps .step:nth-child(1) span{background:var(--sky)}
.steps .step:nth-child(2) span{background:var(--sun)}
.steps .step:nth-child(3) span{background:var(--leaf);color:white}
.steps .step:nth-child(4) span{background:var(--coral);color:white}

button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:none;
  box-shadow:var(--ring),var(--pixel);
}

@media(max-width:620px){
  .badge{font-size:.72rem}
  .card,.quest-card,.product-strip article,.proof-grid article,.faq-grid article,.contact-band,.panel{padding:18px}
  .record-topline{flex-direction:column}
  .report-header{flex-direction:column}
  .report-section-grid{grid-template-columns:1fr}
}

/* v0.1.65 commercial UI pass: clear role gates, game-like student entry, Scratch Lab first. */
body.home-v065:before,
body.student-v065:before{
  background:
    linear-gradient(180deg,#eef9ff 0,#f8fffb 50%,#fff7df 100%);
}
.v065-header{
  border-bottom:2px solid rgba(23,33,59,.12);
}
.v065-hero{
  min-height:640px;
}
.v065-hero-copy{
  width:min(680px,52%);
}
.v065-home-visual:before{
  background:linear-gradient(90deg,rgba(243,251,255,.96) 0,rgba(243,251,255,.8) 46%,rgba(243,251,255,.08) 100%);
}
.v065-world-board{
  position:absolute;
  right:42px;
  bottom:32px;
  z-index:3;
  width:min(560px,46%);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.v065-world-board article{
  min-height:136px;
  border:2px solid var(--ink);
  border-radius:8px;
  background:rgba(255,255,255,.94);
  box-shadow:var(--pixel);
  padding:14px;
}
.v065-world-board span{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:30px;
  border:2px solid var(--ink);
  border-radius:8px;
  background:var(--sun);
  font-size:.78rem;
  font-weight:950;
}
.v065-world-board strong{
  display:block;
  margin:9px 0 5px;
  font-size:1.02rem;
}
.v065-world-board p{
  margin:0;
  color:var(--muted);
  line-height:1.45;
  font-size:.86rem;
}
.v065-role-section{
  padding-top:38px;
}
.v065-role-grid .role-entry-card{
  min-height:230px;
}
.v065-world-cards .quest-card{
  min-height:395px;
}
.v065-scratch-spotlight{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);
  gap:22px;
  align-items:center;
  border-top:2px dashed rgba(23,33,59,.14);
  border-bottom:2px dashed rgba(23,33,59,.14);
}
.v065-scratch-spotlight h2{
  margin:10px 0;
  max-width:720px;
  font-size:clamp(1.85rem,3vw,2.5rem);
  line-height:1.12;
}
.v065-scratch-spotlight p{
  max-width:780px;
  color:var(--soft);
  line-height:1.7;
}
.v065-mini-stage{
  border:2px solid var(--ink);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--shadow);
  padding:14px;
}
.v065-mini-toolbar{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-bottom:12px;
}
.v065-mini-toolbar span{
  min-height:42px;
  display:grid;
  place-items:center;
  border:2px solid rgba(23,33,59,.16);
  border-radius:8px;
  background:#f8fbff;
  color:var(--soft);
  font-size:.78rem;
  font-weight:950;
  text-align:center;
}
.v065-mini-canvas{
  position:relative;
  height:210px;
  border:2px solid var(--ink);
  border-radius:8px;
  background:linear-gradient(#b7edff 0 52%,#fff0ba 52% 100%);
  overflow:hidden;
}
.v065-mini-canvas:after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:62px;
  border-top:5px dotted rgba(23,33,59,.26);
}
.v065-mini-sprite{
  position:absolute;
  left:36px;
  bottom:72px;
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border:2px solid var(--ink);
  border-radius:8px;
  background:var(--coral);
  color:#fff;
  font-weight:950;
  transform:translateX(128px) rotate(8deg);
  box-shadow:5px 5px 0 rgba(23,33,59,.2);
}
.v065-speech{
  position:absolute;
  left:170px;
  bottom:132px;
  max-width:170px;
  border:2px solid var(--ink);
  border-radius:8px;
  background:#fff;
  padding:9px;
  font-weight:900;
  line-height:1.3;
}
.v065-mini-checks{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
.v065-mini-checks span{
  border:2px solid rgba(23,33,59,.14);
  border-radius:8px;
  background:#f0fff5;
  color:#164b3d;
  padding:9px;
  font-size:.78rem;
  font-weight:950;
  text-align:center;
}
.v065-student-hero{
  min-height:430px;
  background:
    linear-gradient(90deg,rgba(243,251,255,.98),rgba(247,255,251,.92));
}
.v065-student-actions .student-action-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.scratch-role{
  --role:var(--violet);
}
.v065-kid-rhythm{
  padding-top:20px;
}
.v065-steps .step{
  background:linear-gradient(180deg,#fff,#f8fbff);
}
.v065-contact{
  background:linear-gradient(180deg,#fff,#f7fffb);
}
@media(max-width:1180px){
  .v065-hero-copy{
    width:min(760px,100%);
  }
  .v065-world-board{
    position:relative;
    right:auto;
    bottom:auto;
    width:100%;
    margin-top:22px;
  }
  .v065-scratch-spotlight{
    grid-template-columns:1fr;
  }
  .v065-student-actions .student-action-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .v065-world-board,
  .v065-mini-toolbar,
  .v065-mini-checks,
  .v065-student-actions .student-action-grid{
    grid-template-columns:1fr;
  }
  .v065-scratch-spotlight{
    width:min(100% - 24px,1180px);
  }
  .v065-speech{
    left:100px;
    right:10px;
  }
}

/* v0.1.66 role separation: clear login entry, cleaner student and teacher portals. */
.v066-role-header .header-actions .solid{
  border:2px solid var(--ink);
  box-shadow:var(--pixel);
  color:#fff;
}
.student-v066 .v066-student-hero,
.student-v070 .v070-student-hero,
.teacher-v066 .v066-teacher-hero{
  min-height:380px;
}
.student-v066 .v066-student-actions,
.student-v070 .v070-student-actions{
  padding-top:20px;
}
.student-v066 .student-action-grid,
.student-v070 .student-action-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.student-v066 .student-action-card,
.student-v070 .student-action-card{
  min-height:190px;
}
.teacher-v066 .teacher-work-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
@media(max-width:980px){
  .student-v066 .student-action-grid,
  .student-v070 .student-action-grid,
  .teacher-v066 .teacher-work-grid{
    grid-template-columns:1fr;
  }
}

/* v0.2.0 UI redesign: quest-world product shell. */
.home-v020{
  --map-bg:#eaf8ff;
}
.home-v020 .v065-hero{
  min-height:660px;
}
.home-v020 .v065-hero-copy{
  width:min(700px,52%);
}
.home-v020 .hero h1{
  max-width:680px;
}
.home-v020 .v065-world-board{
  gap:14px;
}
.home-v020 .v065-world-board article{
  background:rgba(255,255,255,.96);
  transform:rotate(var(--tilt,0deg));
}
.home-v020 .v065-world-board article:nth-child(1){--tilt:-1.2deg}
.home-v020 .v065-world-board article:nth-child(2){--tilt:1deg}
.home-v020 .v065-world-board article:nth-child(3){--tilt:.8deg}
.home-v020 .v065-world-board article:nth-child(4){--tilt:-.8deg}
.v020-product-ribbon{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:-26px;
  padding-top:0;
  position:relative;
  z-index:5;
}
.v020-product-ribbon article{
  min-height:148px;
  border:2px solid var(--ink);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--soft-shadow);
  padding:18px;
}
.v020-product-ribbon article:nth-child(1){border-top:9px solid var(--leaf)}
.v020-product-ribbon article:nth-child(2){border-top:9px solid var(--coral)}
.v020-product-ribbon article:nth-child(3){border-top:9px solid var(--sky)}
.v020-product-ribbon article:nth-child(4){border-top:9px solid var(--violet)}
.v020-product-ribbon span{
  color:var(--muted);
  font-size:.75rem;
  font-weight:950;
  text-transform:uppercase;
}
.v020-product-ribbon strong{
  display:block;
  margin:8px 0 6px;
  font-size:1.16rem;
}
.v020-product-ribbon p{
  margin:0;
  color:var(--soft);
  line-height:1.52;
  font-size:.92rem;
}

.student-v020:before{
  background:
    linear-gradient(180deg,#eaf9ff 0,#f8fffb 52%,#fff8e2 100%);
}
.student-world-hero{
  width:min(1240px,calc(100% - 48px));
  margin:0 auto;
  padding:54px 0 26px;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.75fr);
  gap:20px;
  align-items:stretch;
}
.student-hero-copy,.current-quest-card{
  border:2px solid var(--ink);
  border-radius:8px;
  background:rgba(255,255,255,.94);
  box-shadow:var(--soft-shadow);
}
.student-hero-copy{
  min-height:390px;
  padding:34px;
  background:
    linear-gradient(120deg,rgba(255,255,255,.96),rgba(240,255,245,.92)),
    linear-gradient(90deg,transparent,rgba(255,209,92,.18));
}
.student-hero-copy h1{
  margin:14px 0 12px;
  max-width:620px;
  font-size:clamp(2.55rem,5vw,4.3rem);
  line-height:1.02;
  letter-spacing:0;
}
.student-hero-copy p{
  max-width:690px;
  margin:0;
  color:var(--soft);
  font-size:1.08rem;
  line-height:1.72;
}
.current-quest-card{
  position:relative;
  min-height:390px;
  padding:26px;
  overflow:hidden;
  background:
    linear-gradient(180deg,#ffffff 0,#fff9df 100%);
}
.current-quest-card:before{
  content:"";
  position:absolute;
  inset:auto 22px 24px auto;
  width:112px;
  height:112px;
  border:2px solid var(--ink);
  border-radius:8px;
  background:
    linear-gradient(#b7edff 0 52%,#fff0ba 52% 100%);
  box-shadow:var(--pixel);
}
.current-quest-card:after{
  content:"IL";
  position:absolute;
  right:58px;
  bottom:72px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:2px solid var(--ink);
  border-radius:8px;
  background:var(--coral);
  color:#fff;
  font-weight:950;
  transform:rotate(7deg);
}
.quest-state{
  display:inline-flex;
  border:2px solid rgba(23,33,59,.16);
  border-radius:999px;
  background:#fff;
  color:#236b63;
  padding:7px 11px;
  font-size:.78rem;
  font-weight:950;
  text-transform:uppercase;
}
.current-quest-card h2{
  max-width:310px;
  margin:18px 0 10px;
  font-size:2rem;
  line-height:1.12;
}
.current-quest-card p{
  max-width:340px;
  color:var(--soft);
  line-height:1.62;
}
.current-quest-card strong{
  position:absolute;
  left:26px;
  bottom:28px;
  max-width:210px;
  color:#164b3d;
}
.quest-progress-line{
  width:min(330px,100%);
  height:16px;
  border:2px solid var(--ink);
  border-radius:999px;
  background:#fff;
  padding:2px;
}
.quest-progress-line span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--leaf),var(--sun));
}
.student-world-map-section{
  padding-top:24px;
}
.student-world-map{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.student-world-map:before{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:92px;
  border-top:7px dotted rgba(23,33,59,.2);
}
.world-node{
  position:relative;
  z-index:1;
  min-height:315px;
  display:flex;
  flex-direction:column;
  border:2px solid var(--ink);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--soft-shadow);
  padding:22px;
  transition:transform .18s ease, box-shadow .18s ease;
}
.world-node:hover{
  transform:translateY(-4px);
  box-shadow:0 28px 68px rgba(18,32,61,.16);
}
.world-node span{
  width:50px;
  height:44px;
  display:grid;
  place-items:center;
  border:2px solid var(--ink);
  border-radius:8px;
  background:var(--node);
  color:#fff;
  font-weight:950;
  box-shadow:var(--pixel);
}
.world-node strong{
  display:block;
  margin:18px 0 10px;
  font-size:1.46rem;
  line-height:1.16;
}
.world-node p{
  margin:0;
  color:var(--soft);
  line-height:1.6;
}
.world-node small{
  margin-top:auto;
  width:max-content;
  max-width:100%;
  border:2px solid rgba(23,33,59,.15);
  border-radius:999px;
  background:#fffdf0;
  padding:8px 11px;
  color:var(--ink);
  font-weight:950;
}
.coding-world{--node:var(--leaf);background:linear-gradient(180deg,#fff,#f0fff5)}
.chinese-world{--node:var(--coral);background:linear-gradient(180deg,#fff,#fff4f1)}
.ontario-world{--node:var(--sky);background:linear-gradient(180deg,#fff,#eef9ff)}
.world-node.active{
  outline:4px solid rgba(255,209,92,.42);
}
.student-quick-dock{
  padding-top:18px;
}
.student-dock-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.teacher-command-hero{
  min-height:430px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(310px,420px);
  gap:20px;
  width:min(1240px,calc(100% - 48px));
  margin:0 auto;
  padding-left:0;
  padding-right:0;
}
.teacher-command-hero>div:first-child{
  width:auto;
}
.teacher-today-card{
  align-self:center;
  border:2px solid var(--ink);
  border-radius:8px;
  background:#fffdf0;
  box-shadow:var(--soft-shadow);
  padding:24px;
}
.teacher-today-card span{
  display:inline-flex;
  border:2px solid rgba(23,33,59,.16);
  border-radius:999px;
  background:#fff;
  color:#7a4d00;
  padding:7px 10px;
  font-size:.78rem;
  font-weight:950;
  text-transform:uppercase;
}
.teacher-today-card strong{
  display:block;
  margin:16px 0 8px;
  font-size:1.6rem;
  line-height:1.18;
}
.teacher-today-card p{
  margin:0;
  color:var(--soft);
  line-height:1.6;
}
.teacher-flow-board{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.teacher-flow-board article{
  min-height:205px;
  border:2px solid var(--ink);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--soft-shadow);
  padding:18px;
}
.teacher-flow-board span{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:2px solid var(--ink);
  border-radius:8px;
  background:var(--sun);
  font-weight:950;
  box-shadow:var(--pixel);
}
.teacher-flow-board strong{
  display:block;
  margin:14px 0 7px;
  font-size:1.18rem;
}
.teacher-flow-board p{
  margin:0;
  color:var(--soft);
  line-height:1.58;
}
@media(max-width:1180px){
  .home-v020 .v065-hero-copy{
    width:min(760px,100%);
  }
  .v020-product-ribbon,
  .student-world-hero,
  .student-world-map,
  .student-dock-grid,
  .teacher-command-hero,
  .teacher-flow-board{
    grid-template-columns:1fr 1fr;
  }
  .student-world-map:before{
    display:none;
  }
}
@media(max-width:760px){
  .v020-product-ribbon,
  .student-world-hero,
  .student-world-map,
  .student-dock-grid,
  .teacher-command-hero,
  .teacher-flow-board{
    grid-template-columns:1fr;
  }
  .student-world-hero,
  .teacher-command-hero{
    width:min(100% - 24px,1240px);
    padding-top:28px;
  }
  .student-hero-copy,
  .current-quest-card{
    min-height:0;
    padding:22px;
  }
  .student-hero-copy h1{
    font-size:2.55rem;
  }
  .current-quest-card:before,
  .current-quest-card:after{
    display:none;
  }
  .current-quest-card strong{
    position:static;
    display:block;
    margin-top:18px;
  }
}

/* v0.2.1 Scratch live starter course */
.home-v020 .v020-product-ribbon{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.home-v020 .v020-product-ribbon article:nth-child(5){
  border-top:9px solid var(--ink);
}
.scratch-live-ribbon-card{
  background:
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,248,225,.96)),
    radial-gradient(circle at 88% 12%,rgba(255,183,77,.28),transparent 34%);
}
.scratch-live-v020{
  background:linear-gradient(180deg,#fffdf8 0%,#f5fbff 46%,#fff 100%);
}
.scratch-live-hero{
  width:min(1180px,calc(100% - 40px));
  margin:34px auto 0;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:24px;
  align-items:stretch;
}
.scratch-live-hero>*,
.scratch-live-steps>*,
.scratch-live-lessons>*{
  min-width:0;
}
.scratch-live-hero>div,
.scratch-live-panel{
  border:2px solid var(--ink);
  border-radius:8px;
  box-shadow:var(--soft-shadow);
}
.scratch-live-hero>div{
  min-height:430px;
  padding:54px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:
    radial-gradient(circle at 12% 16%,rgba(98,203,146,.24),transparent 28%),
    radial-gradient(circle at 88% 12%,rgba(77,181,255,.22),transparent 24%),
    linear-gradient(135deg,#ffffff 0%,#fff7e5 58%,#edf8ff 100%);
}
.scratch-live-hero h1{
  max-width:760px;
  margin:14px 0 18px;
  font-size:clamp(2.7rem,6vw,5.2rem);
  line-height:.98;
  letter-spacing:0;
}
.scratch-live-hero p{
  max-width:720px;
  margin:0;
  color:var(--soft);
  font-size:1.08rem;
  line-height:1.75;
}
.scratch-live-panel{
  padding:32px;
  background:#102240;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.scratch-live-panel span{
  width:max-content;
  padding:8px 12px;
  border:2px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  font-size:.82rem;
  font-weight:950;
}
.scratch-live-panel strong{
  margin:18px 0 16px;
  font-size:2rem;
  line-height:1.05;
}
.scratch-live-panel ul{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:14px;
}
.scratch-live-panel li{
  padding:15px 16px;
  border-radius:8px;
  background:rgba(255,255,255,.1);
  color:rgba(255,255,255,.86);
  line-height:1.55;
}
.scratch-live-steps,
.scratch-live-lessons{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.scratch-live-steps article,
.scratch-live-lessons article{
  border:2px solid var(--ink);
  border-radius:8px;
  background:#fff;
  box-shadow:var(--soft-shadow);
  padding:22px;
}
.scratch-live-steps span{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:2px solid var(--ink);
  border-radius:8px;
  background:var(--sun);
  color:var(--ink);
  font-weight:1000;
  box-shadow:var(--pixel);
}
.scratch-live-steps strong,
.scratch-live-lessons strong{
  display:block;
  margin:16px 0 8px;
  font-size:1.2rem;
}
.scratch-live-steps p,
.scratch-live-lessons span{
  margin:0;
  color:var(--soft);
  line-height:1.65;
}
.scratch-live-lessons article{
  background:linear-gradient(180deg,#fff,#f7fbff);
}
.scratch-trial-section{scroll-margin-top:88px}
.scratch-trial-form{border:2px solid var(--ink);border-radius:8px;background:#fff;box-shadow:var(--soft-shadow);padding:28px}
.scratch-trial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.scratch-trial-form label{display:grid;gap:8px;color:var(--ink);font-weight:900}
.scratch-trial-form input,.scratch-trial-form select{width:100%;min-height:48px;border:2px solid #b9c6d9;border-radius:6px;background:#fff;padding:0 13px;color:var(--ink);font:inherit}
.scratch-trial-form input:focus,.scratch-trial-form select:focus{outline:3px solid rgba(47,170,233,.28);border-color:#2faae9}
.scratch-trial-consent{grid-template-columns:auto 1fr!important;align-items:start;margin:20px 0;font-weight:700!important;line-height:1.55}
.scratch-trial-consent input{width:20px!important;min-height:20px!important;margin-top:2px}
.scratch-trial-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.scratch-trial-actions p{margin:0;color:#9c2d2d;font-weight:800}
.scratch-trial-actions p.success{color:#176344}
.trial-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:1180px){
  .home-v020 .v020-product-ribbon{
    grid-template-columns:1fr 1fr;
  }
  .scratch-live-hero,
  .scratch-live-steps,
  .scratch-live-lessons{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:760px){
  .scratch-live-v020{
    max-width:100vw;
    overflow-x:hidden;
  }
  .scratch-live-v020 main{
    width:100vw;
    max-width:100vw;
    overflow-x:hidden;
    padding-inline:0;
  }
  .home-v020 .v020-product-ribbon,
  .scratch-live-hero,
  .scratch-live-steps,
  .scratch-live-lessons,
  .scratch-trial-grid{
    grid-template-columns:1fr;
  }
  .scratch-live-hero{
    display:block !important;
    width:min(330px,calc(100vw - 24px)) !important;
    max-width:min(330px,calc(100vw - 24px)) !important;
    gap:18px;
    overflow:hidden;
    margin:24px auto 0;
  }
  .scratch-live-hero>div,
  .scratch-live-panel,
  .scratch-live-steps article,
  .scratch-live-lessons article{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden;
  }
  .scratch-live-hero>div,
  .scratch-live-panel{
    margin:0 0 18px;
  }
  .scratch-live-hero>div{
    min-height:auto;
    padding:24px;
  }
  .scratch-live-hero *,
  .scratch-live-panel *{
    max-width:100%;
  }
  .scratch-live-hero h1{
    font-size:2.12rem;
    line-height:1.05;
    overflow-wrap:break-word;
    word-break:normal;
    text-wrap:initial;
  }
  .scratch-live-hero p,
  .scratch-live-panel strong,
  .scratch-live-panel li{
    display:block;
    width:100%;
    white-space:normal !important;
    overflow-wrap:break-word;
    word-break:normal;
  }
  .scratch-live-panel strong{
    font-size:1.75rem;
  }
  .scratch-live-v020 .hero-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .scratch-live-v020 .hero-actions a{
    width:100%;
  }
}

/* v0.2.2 game-style student quest UI */
.student-v022{
  --quest-ink:#172033;
  --quest-line:#1f2c44;
  --quest-sky:#dff4ff;
  --quest-grass:#d9f6dc;
  --quest-sun:#ffe08a;
  --quest-coral:#ff8b73;
  --quest-blue:#4db5ff;
  --quest-mint:#62cb92;
  --quest-paper:#fffdf6;
  --quest-soft:#607089;
  background:
    linear-gradient(180deg,#f3fbff 0%,#fffdf6 52%,#f7fff4 100%);
  color:var(--quest-ink);
  letter-spacing:0;
}
.student-v022 *,
.student-v022 *::before,
.student-v022 *::after{
  box-sizing:border-box;
}
.quest-header-v022{
  position:sticky;
  top:0;
  z-index:20;
  border-bottom:2px solid rgba(31,44,68,.12);
  background:rgba(255,253,246,.94);
  backdrop-filter:blur(12px);
}
.quest-header-v022 .brand span{
  background:var(--quest-sun);
  color:var(--quest-ink);
}
.quest-header-v022 nav a{
  color:var(--quest-ink);
  font-weight:900;
}
.student-v022 .primary,
.student-v022 .solid,
.student-v022 .ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  padding:11px 16px;
  color:var(--quest-ink);
  font-weight:1000;
  text-decoration:none;
  box-shadow:4px 4px 0 rgba(31,44,68,.16);
  cursor:pointer;
}
.student-v022 .primary,
.student-v022 .solid{
  background:var(--quest-sun);
}
.student-v022 .ghost{
  background:#fff;
}
.student-v022 .primary:hover,
.student-v022 .solid:hover,
.student-v022 .ghost:hover{
  transform:translateY(-1px);
}
.quest-lobby-hero-v022,
.quest-hud-v022,
.quest-map-shell-v022,
.quest-world-strips-v022,
.quest-title-bar-v022,
.quest-player-shell-v022{
  width:min(1180px,calc(100% - 40px));
  margin-inline:auto;
}
.quest-lobby-hero-v022{
  min-height:520px;
  padding:46px 0 24px;
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);
  gap:24px;
  align-items:stretch;
}
.quest-lobby-copy-v022,
.quest-player-card-v022,
.quest-hud-v022,
.quest-map-copy-v022,
.quest-path-v022,
.quest-world-strips-v022 article,
.quest-title-bar-v022,
.quest-steps-v022,
.quest-workbench-v022,
.quest-stage-v022{
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:rgba(255,255,255,.92);
  box-shadow:6px 6px 0 rgba(31,44,68,.12);
}
.quest-lobby-copy-v022{
  padding:56px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:
    linear-gradient(135deg,#ffffff 0%,#fff6d8 55%,#e6f7ff 100%);
}
.quest-chip-v022{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:32px;
  border:2px solid var(--quest-line);
  border-radius:999px;
  padding:6px 12px;
  background:#fff;
  color:var(--quest-ink);
  font-size:.82rem;
  font-weight:1000;
  text-transform:uppercase;
}
.quest-lobby-copy-v022 h1,
.quest-hud-player-v022 h1,
.quest-title-bar-v022 h1{
  margin:18px 0 16px;
  max-width:820px;
  font-size:clamp(2.5rem,5.6vw,5.4rem);
  line-height:1.02;
  letter-spacing:0;
}
.quest-lobby-copy-v022 p,
.quest-player-card-v022 p,
.quest-map-copy-v022 p,
.quest-title-bar-v022 p,
.lesson-card-v022 p,
.quest-world-strips-v022 p{
  margin:0;
  color:var(--quest-soft);
  font-size:1.04rem;
  line-height:1.7;
}
.quest-hero-actions-v022,
.quest-button-row-v022{
  margin-top:24px;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.quest-player-card-v022{
  padding:32px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:
    linear-gradient(180deg,#ffffff 0%,#eaf8ff 100%);
}
.quest-avatar-v022{
  width:74px;
  height:74px;
  display:grid;
  place-items:center;
  border:2px solid var(--quest-line);
  border-radius:18px;
  background:var(--quest-mint);
  color:var(--quest-ink);
  font-size:1.6rem;
  font-weight:1000;
  box-shadow:4px 4px 0 rgba(31,44,68,.16);
}
.quest-player-card-v022>span{
  margin-top:22px;
  color:var(--quest-soft);
  font-weight:950;
  text-transform:uppercase;
}
.quest-player-card-v022 h2{
  margin:10px 0 12px;
  font-size:2.2rem;
  line-height:1.05;
}
.quest-xp-track-v022{
  height:16px;
  margin:24px 0 18px;
  border:2px solid var(--quest-line);
  border-radius:999px;
  background:#fff;
  overflow:hidden;
}
.quest-xp-track-v022 span{
  display:block;
  height:100%;
  background:linear-gradient(90deg,var(--quest-coral),var(--quest-sun));
}
.quest-student-worlds-v022{
  margin-top:36px;
}
.quest-world-grid-v022{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.quest-world-tile-v022{
  min-height:278px;
  padding:24px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  color:var(--quest-ink);
  text-decoration:none;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow:6px 6px 0 rgba(31,44,68,.12);
}
.quest-world-tile-v022.coding{background:linear-gradient(180deg,#fff,#e7f8ff);}
.quest-world-tile-v022.chinese{background:linear-gradient(180deg,#fff,#fff0e8);}
.quest-world-tile-v022.ontario{background:linear-gradient(180deg,#fff,#edf9df);}
.quest-world-tile-v022>span,
.quest-node-v022>span{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:var(--quest-sun);
  font-weight:1000;
}
.quest-world-tile-v022 strong{
  margin-top:26px;
  font-size:1.55rem;
}
.quest-world-tile-v022 p{
  color:var(--quest-soft);
  line-height:1.62;
}
.quest-world-tile-v022 small{
  width:max-content;
  max-width:100%;
  padding:8px 10px;
  border-radius:8px;
  background:#fff;
  border:2px solid rgba(31,44,68,.15);
  color:var(--quest-ink);
  font-weight:950;
}
.quest-quick-dock-v022{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:44px;
}
.quest-quick-dock-v022 a{
  min-height:120px;
  padding:18px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:#fff;
  color:var(--quest-ink);
  text-decoration:none;
  box-shadow:4px 4px 0 rgba(31,44,68,.11);
}
.quest-quick-dock-v022 span{
  display:block;
  margin-bottom:18px;
  color:var(--quest-soft);
  font-weight:1000;
}
.quest-quick-dock-v022 strong{
  font-size:1.1rem;
}
.quest-world-main-v022,
.quest-player-main-v022{
  padding:32px 0 56px;
}
.quest-hud-v022{
  padding:24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  background:linear-gradient(135deg,#ffffff,#eef9ff);
}
.quest-hud-player-v022{
  display:flex;
  align-items:center;
  gap:18px;
  min-width:0;
}
.quest-hud-player-v022 span{
  color:var(--quest-soft);
  font-weight:1000;
}
.quest-hud-player-v022 h1{
  margin:4px 0 0;
  font-size:clamp(1.85rem,3.1vw,3.15rem);
  line-height:1.08;
}
.quest-hud-stats-v022{
  display:grid;
  grid-template-columns:repeat(3,90px);
  gap:10px;
}
.quest-hud-stats-v022 article{
  min-height:78px;
  padding:12px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:#fff;
  text-align:center;
}
.quest-hud-stats-v022 span{
  display:block;
  color:var(--quest-soft);
  font-size:.78rem;
  font-weight:1000;
}
.quest-hud-stats-v022 strong{
  font-size:1.6rem;
}
.quest-map-shell-v022{
  margin-top:22px;
  display:grid;
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);
  gap:18px;
}
.quest-map-copy-v022{
  padding:30px;
  background:linear-gradient(180deg,#fff,#fff8dd);
}
.quest-map-copy-v022 h2,
.quest-world-strips-v022 h2,
.lesson-card-v022 h2{
  margin:14px 0 12px;
  font-size:2rem;
  line-height:1.08;
}
.quest-map-copy-v022 .primary{
  margin-top:22px;
}
.quest-path-v022{
  min-height:420px;
  padding:28px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  background:
    linear-gradient(135deg,#e8f8ff 0%,#ffffff 54%,#eefadf 100%);
}
.quest-node-v022{
  position:relative;
  min-height:164px;
  padding:18px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:#fff;
  color:var(--quest-ink);
  text-decoration:none;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow:4px 4px 0 rgba(31,44,68,.12);
}
.quest-node-v022.active{
  background:#fff7cf;
}
.quest-node-v022.completed{
  background:#e7f8dc;
}
.quest-node-v022.completed::after{
  content:"Complete";
  position:absolute;
  top:14px;
  right:14px;
  padding:6px 9px;
  border:2px solid var(--quest-line);
  border-radius:999px;
  background:var(--quest-mint);
  font-size:.74rem;
  font-weight:1000;
}
.quest-node-v022.locked{
  opacity:.62;
  filter:saturate(.75);
}
.quest-node-v022 strong{
  margin-top:20px;
  font-size:1.28rem;
}
.quest-node-v022 small{
  color:var(--quest-soft);
  font-weight:900;
}
.quest-world-strips-v022{
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.quest-world-strips-v022 article{
  padding:28px;
}
.quest-world-strips-v022 ul{
  margin:18px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}
.quest-world-strips-v022 li{
  padding:13px 14px;
  border:2px solid rgba(31,44,68,.12);
  border-radius:8px;
  background:#fff;
  color:var(--quest-ink);
  line-height:1.45;
}
.quest-title-bar-v022{
  margin-top:32px;
  padding:28px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  background:linear-gradient(135deg,#ffffff,#fff4d0);
}
.quest-title-bar-v022 h1{
  font-size:clamp(2.2rem,5vw,4.6rem);
}
.quest-title-bar-v022 aside{
  min-width:160px;
  min-height:96px;
  display:grid;
  place-items:center;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:var(--quest-sun);
  box-shadow:4px 4px 0 rgba(31,44,68,.14);
}
.quest-title-bar-v022 aside span{
  color:var(--quest-soft);
  font-size:.82rem;
  font-weight:1000;
  text-transform:uppercase;
}
.quest-title-bar-v022 aside strong{
  font-size:1.55rem;
}
.quest-player-shell-v022{
  margin-top:18px;
  display:grid;
  grid-template-columns:240px minmax(0,1fr) 320px;
  gap:18px;
  align-items:start;
}
.quest-steps-v022,
.quest-workbench-v022,
.quest-stage-v022{
  padding:22px;
}
.quest-steps-v022 h2{
  margin:0 0 16px;
  font-size:1.4rem;
}
.quest-steps-v022 ol{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}
.quest-steps-v022 li{
  min-height:82px;
  padding:14px;
  border:2px solid rgba(31,44,68,.14);
  border-radius:8px;
  background:#fff;
}
.quest-steps-v022 li.done{
  background:#ebf8dd;
}
.quest-steps-v022 strong,
.quest-steps-v022 span{
  display:block;
}
.quest-steps-v022 span{
  margin-top:6px;
  color:var(--quest-soft);
  line-height:1.4;
  font-size:.92rem;
}
.quest-workbench-v022{
  display:grid;
  gap:16px;
  background:#fff;
}
.lesson-card-v022,
.code-card-v022{
  padding:22px;
  border:2px solid rgba(31,44,68,.14);
  border-radius:8px;
  background:#fffdf6;
}
.lesson-card-v022 code{
  display:block;
  margin-top:16px;
  padding:16px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:#172033;
  color:#fff6cf;
  font-size:1rem;
  line-height:1.5;
  overflow:auto;
}
.code-card-v022 label{
  display:block;
  margin-bottom:10px;
  font-weight:1000;
}
.code-card-v022 textarea{
  width:100%;
  min-height:168px;
  resize:vertical;
  padding:16px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:#172033;
  color:#fff;
  font:1rem/1.55 Consolas,Monaco,monospace;
}
.quest-hint-v022{
  margin:14px 0 0;
  padding:12px 14px;
  border:2px solid rgba(31,44,68,.14);
  border-radius:8px;
  background:#fff7cf;
  color:var(--quest-ink);
  line-height:1.45;
}
.quest-stage-v022{
  background:linear-gradient(180deg,#e9f8ff,#ffffff);
}
.robot-scene-v022{
  min-height:230px;
  display:grid;
  place-items:center;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:
    linear-gradient(180deg,#dff4ff 0%,#dff4ff 63%,#d9f6dc 64%,#d9f6dc 100%);
}
.robot-speech-v022{
  width:min(260px,100%);
  min-height:54px;
  display:grid;
  place-items:center;
  padding:10px 12px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:#fff;
  color:var(--quest-ink);
  text-align:center;
  font-weight:950;
  overflow-wrap:anywhere;
}
.robot-v022{
  width:92px;
  height:84px;
  margin-top:18px;
  border:2px solid var(--quest-line);
  border-radius:8px 8px 14px 14px;
  background:var(--quest-blue);
  position:relative;
  box-shadow:4px 4px 0 rgba(31,44,68,.14);
}
.robot-v022::before,
.robot-v022::after{
  content:"";
  position:absolute;
  top:23px;
  width:16px;
  height:16px;
  border:2px solid var(--quest-line);
  border-radius:50%;
  background:#fff;
}
.robot-v022::before{left:20px;}
.robot-v022::after{right:20px;}
.robot-v022 span{
  position:absolute;
  left:28px;
  right:28px;
  bottom:18px;
  height:8px;
  border:2px solid var(--quest-line);
  border-radius:999px;
  background:#fff;
}
.quest-output-v022{
  min-height:92px;
  margin:14px 0;
  padding:14px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:#172033;
  color:#fff6cf;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.quest-checklist-v022{
  margin:0 0 14px;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}
.quest-checklist-v022 li{
  padding:11px 12px 11px 38px;
  border:2px solid rgba(31,44,68,.14);
  border-radius:8px;
  background:#fff;
  color:var(--quest-soft);
  font-weight:900;
  position:relative;
}
.quest-checklist-v022 li::before{
  content:"";
  position:absolute;
  left:12px;
  top:50%;
  width:16px;
  height:16px;
  border:2px solid var(--quest-line);
  border-radius:4px;
  transform:translateY(-50%);
  background:#fff;
}
.quest-checklist-v022 li.done{
  background:#ebf8dd;
  color:var(--quest-ink);
}
.quest-checklist-v022 li.done::before{
  background:var(--quest-mint);
}
.quest-save-proof-v022{
  width:100%;
}
.quest-complete-v022 .quest-title-bar-v022{
  background:linear-gradient(135deg,#ebf8dd,#fff7cf);
}
@media(max-width:1080px){
  .quest-lobby-hero-v022,
  .quest-map-shell-v022,
  .quest-player-shell-v022{
    grid-template-columns:1fr;
  }
  .quest-hud-v022,
  .quest-title-bar-v022{
    align-items:flex-start;
    flex-direction:column;
  }
  .quest-hud-stats-v022{
    grid-template-columns:repeat(3,minmax(80px,1fr));
    width:100%;
  }
}
@media(max-width:780px){
  .quest-lobby-hero-v022,
  .quest-hud-v022,
  .quest-map-shell-v022,
  .quest-world-strips-v022,
  .quest-title-bar-v022,
  .quest-player-shell-v022{
    width:min(100% - 24px,520px);
  }
  .quest-lobby-copy-v022,
  .quest-player-card-v022,
  .quest-hud-v022,
  .quest-map-copy-v022,
  .quest-path-v022,
  .quest-world-strips-v022 article,
  .quest-title-bar-v022,
  .quest-steps-v022,
  .quest-workbench-v022,
  .quest-stage-v022{
    padding:20px;
  }
  .quest-lobby-copy-v022 h1,
  .quest-title-bar-v022 h1{
    font-size:2.35rem;
    line-height:1.08;
  }
  .quest-world-grid-v022,
  .quest-quick-dock-v022,
  .quest-path-v022,
  .quest-world-strips-v022{
    grid-template-columns:1fr;
  }
  .quest-world-tile-v022{
    min-height:230px;
  }
  .quest-hud-player-v022{
    align-items:flex-start;
  }
  .quest-hud-stats-v022{
    grid-template-columns:1fr 1fr 1fr;
  }
  .quest-button-row-v022{
    display:grid;
    grid-template-columns:1fr;
  }
  .student-v022 .primary,
  .student-v022 .solid,
  .student-v022 .ghost{
    width:100%;
  }
}

/* v0.2.2 Codedex-inspired refinement */
.student-v022{
  --quest-ink:#f7fbff;
  --quest-line:#31405f;
  --quest-panel:#101829;
  --quest-panel-2:#16243a;
  --quest-paper:#f7fbff;
  --quest-soft:#aebbd0;
  --quest-sun:#ffcf34;
  --quest-coral:#ff7d5c;
  --quest-blue:#28a9ff;
  --quest-mint:#62d394;
  background:
    linear-gradient(180deg,#070b18 0%,#0d1628 52%,#f3f7fb 52%,#f8fbff 100%);
  color:#f7fbff;
}
.quest-header-v022{
  background:rgba(7,11,24,.96);
  border-bottom:1px solid #253454;
}
.quest-header-v022 .brand,
.quest-header-v022 nav a{
  color:#f7fbff;
}
.quest-header-v022 .brand span{
  background:var(--quest-sun);
  color:#101829;
}
.student-v022 .primary,
.student-v022 .solid{
  background:var(--quest-sun);
  color:#101829;
  box-shadow:none;
}
.student-v022 .ghost{
  background:#101829;
  color:#f7fbff;
  border-color:#31405f;
  box-shadow:none;
}
.quest-lobby-copy-v022,
.quest-player-card-v022,
.quest-hud-v022,
.quest-map-copy-v022,
.quest-path-v022,
.quest-world-strips-v022 article,
.quest-title-bar-v022,
.quest-steps-v022,
.quest-workbench-v022,
.quest-stage-v022{
  border-color:#31405f;
  background:#101829;
  box-shadow:none;
}
.quest-lobby-copy-v022{
  background:
    linear-gradient(180deg,rgba(7,11,24,.08),rgba(7,11,24,.42)),
    linear-gradient(90deg,rgba(98,211,148,.82) 0 8%,transparent 8% 100%),
    linear-gradient(180deg,#62b7ff 0 28%,#8bd76e 28% 45%,#2b8a5f 45% 61%,#1b5d47 61% 100%);
  min-height:460px;
  color:#fff;
}
.quest-lobby-copy-v022 h1,
.quest-hud-player-v022 h1,
.quest-title-bar-v022 h1{
  font-family:"Courier New",Consolas,monospace;
  text-shadow:3px 3px 0 rgba(0,0,0,.34);
}
.quest-lobby-copy-v022 p,
.quest-player-card-v022 p,
.quest-map-copy-v022 p,
.quest-title-bar-v022 p,
.lesson-card-v022 p,
.quest-world-strips-v022 p{
  color:#d6e0ef;
}
.quest-chip-v022{
  background:#17233a;
  color:#f7fbff;
  border-color:#3b4f77;
  text-transform:none;
  font-family:"Courier New",Consolas,monospace;
}
.quest-player-card-v022,
.quest-hud-v022,
.quest-title-bar-v022{
  background:#101829;
}
.quest-player-card-v022>span,
.quest-hud-player-v022 span,
.quest-title-bar-v022 aside span{
  color:#aebbd0;
}
.quest-hud-stats-v022 article{
  background:#121d32;
  border-color:#41577f;
}
.quest-hud-stats-v022 span{
  color:#aebbd0;
}
.quest-hud-stats-v022 strong{
  color:#f7fbff;
}
.quest-player-card-v022 h2,
.quest-map-copy-v022 h2,
.quest-world-strips-v022 h2,
.lesson-card-v022 h2{
  color:#f7fbff;
  font-family:"Courier New",Consolas,monospace;
}
.quest-avatar-v022{
  background:#1b2a44;
  color:#ffcf34;
  border-color:#425981;
  box-shadow:none;
  border-radius:8px;
  font-family:"Courier New",Consolas,monospace;
}
.quest-xp-track-v022{
  background:#070b18;
  border-color:#3b4f77;
}
.quest-world-grid-v022{
  color:#101829;
}
.quest-world-tile-v022{
  background:#ffffff;
  color:#101829;
  box-shadow:none;
  border-color:#d5deea;
}
.quest-world-tile-v022.coding{
  background:
    linear-gradient(180deg,rgba(7,11,24,.12),rgba(7,11,24,.55)),
    linear-gradient(180deg,#66c4ff 0 38%,#7ccf76 38% 58%,#1e6b55 58% 100%);
  color:#fff;
  border-color:#31405f;
}
.quest-world-tile-v022.chinese{
  background:#fff8ee;
}
.quest-world-tile-v022.ontario{
  background:#eefaf0;
}
.quest-world-tile-v022.coding p{
  color:#e8f3ff;
}
.quest-world-tile-v022>span,
.quest-node-v022>span{
  background:#ffcf34;
  color:#101829;
  border-color:#101829;
  box-shadow:none;
  border-radius:6px;
  font-family:"Courier New",Consolas,monospace;
}
.quest-quick-dock-v022 a{
  background:#101829;
  color:#f7fbff;
  border-color:#31405f;
  box-shadow:none;
}
.quest-quick-dock-v022 span,
.quest-node-v022 small,
.quest-steps-v022 span{
  color:#aebbd0;
}
.quest-map-shell-v022,
.quest-world-strips-v022,
.quest-player-shell-v022{
  color:#f7fbff;
}
.quest-map-copy-v022{
  background:#101829;
}
.quest-path-v022{
  background:#0b1120;
}
.quest-node-v022{
  background:#121d32;
  color:#f7fbff;
  border-color:#31405f;
  box-shadow:none;
}
.quest-node-v022.active{
  background:#17243b;
  border-color:#ffcf34;
}
.quest-node-v022.completed{
  background:#143222;
}
.quest-node-v022.completed::after{
  background:#62d394;
  color:#081023;
  border-color:#62d394;
}
.quest-world-strips-v022 article{
  background:#101829;
}
.quest-world-strips-v022 li,
.quest-steps-v022 li,
.lesson-card-v022,
.code-card-v022,
.quest-checklist-v022 li{
  background:#121d32;
  color:#f7fbff;
  border-color:#31405f;
}
.quest-world-strips-v022 li,
.quest-steps-v022 span,
.quest-checklist-v022 li{
  color:#c6d2e2;
}
.quest-title-bar-v022{
  background:
    linear-gradient(90deg,rgba(255,207,52,.12),rgba(16,24,41,1)),
    #101829;
}
.quest-title-bar-v022 aside{
  background:#ffcf34;
  color:#101829;
  border-color:#ffcf34;
  box-shadow:none;
}
.quest-steps-v022 li.done,
.quest-checklist-v022 li.done{
  background:#143222;
  color:#f7fbff;
}
.quest-workbench-v022,
.quest-stage-v022{
  background:#101829;
}
.lesson-card-v022 code,
.code-card-v022 textarea,
.quest-output-v022{
  background:#070b18;
  border-color:#31405f;
  color:#fff6cf;
}
.robot-scene-v022{
  background:
    linear-gradient(180deg,rgba(12,18,33,.25),rgba(12,18,33,.52)),
    linear-gradient(180deg,#50baff 0 40%,#7bd76f 40% 62%,#23412f 62% 100%);
  border-color:#31405f;
}
.robot-speech-v022{
  background:#101829;
  color:#f7fbff;
  border-color:#ffcf34;
}
.robot-v022{
  background:#233554;
  border-color:#ffcf34;
  box-shadow:none;
  border-radius:8px;
}
.robot-v022::before{
  content:">_";
  left:23px;
  top:27px;
  width:auto;
  height:auto;
  border:0;
  border-radius:0;
  background:transparent;
  color:#ffcf34;
  font:1000 1.65rem/1 "Courier New",Consolas,monospace;
}
.robot-v022::after{
  display:none;
}
.robot-v022 span{
  display:none;
}
.quest-complete-v022 .quest-title-bar-v022{
  background:#123421;
}
@media(max-width:780px){
  .student-v022{
    max-width:100vw;
    overflow-x:hidden;
  }
  .student-v022 main,
  .quest-lobby-hero-v022,
  .quest-hud-v022,
  .quest-map-shell-v022,
  .quest-world-strips-v022,
  .quest-title-bar-v022,
  .quest-player-shell-v022,
  .quest-student-worlds-v022,
  .quest-quick-dock-v022{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px);
    min-width:0 !important;
    overflow:hidden;
  }
  .quest-lobby-hero-v022,
  .quest-map-shell-v022,
  .quest-world-strips-v022,
  .quest-player-shell-v022{
    display:grid;
    grid-template-columns:minmax(0,1fr) !important;
  }
  .quest-lobby-hero-v022>*,
  .quest-map-shell-v022>*,
  .quest-world-strips-v022>*,
  .quest-player-shell-v022>*,
  .quest-world-grid-v022>*,
  .quest-quick-dock-v022>*{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  .quest-lobby-copy-v022 *,
  .quest-player-card-v022 *,
  .quest-title-bar-v022 *,
  .quest-workbench-v022 *,
  .quest-stage-v022 *{
    max-width:100%;
  }
  .quest-lobby-copy-v022 h1,
  .quest-title-bar-v022 h1,
  .quest-hud-player-v022 h1{
    font-size:1.9rem;
    line-height:1.12;
    overflow-wrap:anywhere;
    word-break:normal;
    text-shadow:2px 2px 0 rgba(0,0,0,.32);
  }
  .quest-lobby-copy-v022 h1{
    width:calc(100vw - 72px) !important;
    max-width:11ch;
  }
  .quest-title-bar-v022 h1{
    max-width:10ch;
  }
  .quest-player-card-v022 h2,
  .quest-map-copy-v022 h2,
  .quest-world-strips-v022 h2,
  .lesson-card-v022 h2{
    font-size:1.55rem;
    line-height:1.16;
    overflow-wrap:anywhere;
  }
  .quest-lobby-copy-v022 p,
  .quest-player-card-v022 p,
  .quest-hero-actions-v022,
  .quest-hero-actions-v022 a,
  .quest-player-card-v022 h2,
  .quest-player-card-v022 .quest-xp-track-v022,
  .quest-player-card-v022 a{
    width:calc(100vw - 72px) !important;
    max-width:calc(100vw - 72px) !important;
  }
  .quest-lobby-copy-v022 p,
  .quest-player-card-v022 p,
  .quest-map-copy-v022 p,
  .quest-title-bar-v022 p,
  .lesson-card-v022 p,
  .quest-world-strips-v022 p,
  .quest-steps-v022 span{
    font-size:.98rem;
    line-height:1.58;
    overflow-wrap:anywhere;
  }
  .quest-lobby-copy-v022,
  .quest-player-card-v022,
  .quest-title-bar-v022,
  .quest-steps-v022,
  .quest-workbench-v022,
  .quest-stage-v022{
    width:100%;
  }
  .quest-title-bar-v022 aside{
    width:min(100%,180px);
  }
  .code-card-v022 textarea{
    min-height:132px;
  }
  .student-home-v022 .quest-lobby-hero-v022{
    width:min(330px,calc(100vw - 40px)) !important;
    max-width:min(330px,calc(100vw - 40px)) !important;
    margin-inline:auto !important;
  }
  .student-home-v022 .quest-lobby-copy-v022,
  .student-home-v022 .quest-player-card-v022{
    width:100% !important;
    max-width:100% !important;
    padding:20px !important;
  }
  .student-home-v022 .quest-lobby-copy-v022 h1,
  .student-home-v022 .quest-lobby-copy-v022 p,
  .student-home-v022 .quest-player-card-v022 h2,
  .student-home-v022 .quest-player-card-v022 p,
  .student-home-v022 .quest-hero-actions-v022,
  .student-home-v022 .quest-hero-actions-v022 a,
  .student-home-v022 .quest-player-card-v022 a,
  .student-home-v022 .quest-player-card-v022 .quest-xp-track-v022{
    width:100% !important;
    max-width:100% !important;
  }
}

/* v0.2.4 quest player base: keep teaching beside the code runner */
.quest-player-v023 .quest-title-bar-v023{
  margin-top:22px;
  padding:22px 24px;
}
.quest-player-v023 .quest-title-bar-v023 h1{
  margin-bottom:10px;
  font-size:clamp(2rem,3.8vw,3.65rem);
}
.quest-player-shell-v023{
  grid-template-columns:minmax(320px,.88fr) minmax(520px,1.12fr);
  align-items:stretch;
}
.quest-player-shell-v023 .quest-lesson-panel-v023,
.quest-player-shell-v023 .quest-code-panel-v023{
  min-height:640px;
}
.quest-lesson-panel-v023{
  align-content:start;
}
.quest-code-panel-v023{
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:16px;
}
.quest-focus-list-v023{
  margin:16px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}
.quest-focus-list-v023 li{
  padding:12px 14px;
  border:2px solid rgba(255,255,255,.12);
  border-radius:8px;
  background:#0b1120;
  color:#d6e0ef;
  line-height:1.45;
}
.quest-steps-drawer-v023{
  border:2px solid #31405f;
  border-radius:8px;
  background:#0b1120;
  color:#f7fbff;
  overflow:hidden;
}
.quest-steps-drawer-v023 summary{
  min-height:48px;
  padding:13px 16px;
  cursor:pointer;
  color:#ffcf34;
  font-weight:1000;
  list-style:none;
}
.quest-steps-drawer-v023 summary::-webkit-details-marker{
  display:none;
}
.quest-steps-drawer-v023 summary::after{
  content:"+";
  float:right;
  color:#f7fbff;
}
.quest-steps-drawer-v023[open] summary::after{
  content:"-";
}
.quest-steps-drawer-v023 ol{
  margin:0;
  padding:0 16px 16px;
  list-style:none;
  display:grid;
  gap:8px;
}
.quest-steps-drawer-v023 li{
  padding:11px 12px;
  border:1px solid #31405f;
  border-radius:8px;
  background:#121d32;
}
.quest-steps-drawer-v023 strong{
  display:block;
  color:#fff;
}
.quest-steps-drawer-v023 span{
  display:block;
  margin-top:4px;
  color:#aebbd0;
  font-size:.92rem;
  line-height:1.42;
}
.quest-runner-grid-v023{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(220px,.9fr) minmax(260px,1fr);
  gap:14px;
  align-items:stretch;
}
.quest-runner-grid-v023 .robot-scene-v022{
  min-height:100%;
}
.quest-console-card-v023{
  min-width:0;
  display:grid;
  grid-template-rows:auto 1fr;
  gap:12px;
}
.quest-code-panel-v023 .code-card-v022{
  padding:20px;
}
.quest-code-panel-v023 .code-card-v022 textarea{
  min-height:190px;
}
.quest-code-panel-v023 .quest-output-v022{
  min-height:126px;
  margin:0;
}
.quest-code-panel-v023 .quest-checklist-v022{
  margin:0;
}
.quest-player-v023 .footer{
  margin-top:0;
}
@media(max-width:1120px){
  .quest-player-shell-v023{
    grid-template-columns:1fr;
  }
  .quest-player-shell-v023 .quest-lesson-panel-v023,
  .quest-player-shell-v023 .quest-code-panel-v023{
    min-height:0;
  }
}
@media(max-width:780px){
  .quest-player-v023 .quest-title-bar-v023 h1{
    max-width:none;
  }
  .quest-runner-grid-v023{
    grid-template-columns:1fr;
  }
  .quest-code-panel-v023 .code-card-v022 textarea{
    min-height:150px;
  }
}

/* v0.2.4 pass 2: make code and output visible beside each other */
.quest-player-v023 .quest-title-bar-v023{
  padding:18px 24px;
}
.quest-player-v023 .quest-title-bar-v023 h1{
  font-size:clamp(1.85rem,3vw,3.1rem);
}
.quest-code-panel-v023{
  grid-template-columns:minmax(0,1.12fr) minmax(250px,.88fr);
  grid-template-rows:1fr auto;
  align-items:stretch;
}
.quest-code-panel-v023 .code-card-v022{
  min-width:0;
}
.quest-code-panel-v023 .code-card-v022 textarea{
  min-height:220px;
}
.quest-code-panel-v023 .quest-runner-grid-v023{
  min-width:0;
  grid-template-columns:1fr;
}
.quest-code-panel-v023 .robot-scene-v022{
  min-height:154px;
}
.quest-code-panel-v023 .quest-output-v022{
  min-height:94px;
}
.quest-code-panel-v023 .quest-save-proof-v022{
  grid-column:1 / -1;
}
@media(max-width:920px){
  .quest-code-panel-v023{
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
  }
}

/* v0.2.4 quest fix: no prefilled answer, visible run feedback, real step checks */
.quest-player-v024 .code-card-v022 textarea{
  background:#070b16;
  border-color:#34466a;
}
.quest-player-v024 .code-card-v022 textarea::placeholder{
  color:#7c8aa4;
}
.quest-player-v024 .quest-output-v022{
  background:#070b16;
  border-color:#34466a;
  color:#f7fbff;
  font-weight:800;
}
.quest-player-v024 .quest-output-v022.warning{
  border-color:#ffcf34;
  color:#ffe58a;
  box-shadow:0 0 0 2px rgba(255,207,52,.12) inset;
}
.quest-player-v024 .quest-output-v022.success{
  border-color:#62d394;
  color:#dffff0;
  box-shadow:0 0 0 2px rgba(98,211,148,.14) inset;
}
.quest-player-v024 .quest-checklist-v022 li{
  display:flex;
  align-items:center;
  min-height:58px;
  padding:12px 14px 12px 48px;
  border-color:#34466a;
  background:#101a2e;
  color:#c9d6e8;
}
.quest-player-v024 .quest-checklist-v022 li::before{
  display:grid;
  place-items:center;
  left:14px;
  width:20px;
  height:20px;
  border-color:#d7e3f6;
  border-radius:5px;
  background:#f7fbff;
  color:#06101f;
  font-size:.9rem;
  font-weight:1000;
  line-height:1;
}
.quest-player-v024 .quest-checklist-v022 li.done{
  border-color:#62d394;
  background:#102a20;
  color:#f0fff6;
  box-shadow:0 0 0 2px rgba(98,211,148,.12) inset;
}
.quest-player-v024 .quest-checklist-v022 li.done::before{
  content:"OK";
  background:#62d394;
  border-color:#62d394;
}

/* Immersive product-led home */
body.home-cinematic{
  --cinematic-ink:#f7f8fb;
  --cinematic-night:#090b10;
  margin:0;
  overflow-x:clip;
  background:var(--cinematic-night);
  color:var(--cinematic-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body.home-cinematic:before,
body.home-cinematic:after{display:none}
.home-cinematic *{box-sizing:border-box}
.home-cinematic a{color:inherit}
.home-cinematic main{display:block;background:#090b10}
.home-cinematic .cinematic-header{
  position:fixed;
  inset:0 0 auto;
  z-index:90;
  min-height:74px;
  padding:12px 34px;
  border-bottom:1px solid rgba(255,255,255,.12);
  background:rgba(9,11,16,.34);
  color:#fff;
  backdrop-filter:blur(18px) saturate(1.25);
  transition:background-color .45s ease,border-color .45s ease,color .45s ease;
}
.home-cinematic .cinematic-header.is-scrolled{
  background:rgba(9,11,16,.9);
  border-color:rgba(255,255,255,.18);
}
.home-cinematic .cinematic-header .brand{color:#fff}
.home-cinematic .cinematic-header .brand span{background:#ffd34d;color:#111624}
.home-cinematic .cinematic-header>nav>a,
.home-cinematic .cinematic-header .nav-menu-v065>.coding-nav-link-v064,
.home-cinematic .cinematic-header>.header-actions>a{
  color:rgba(255,255,255,.82);
}
.home-cinematic .cinematic-header>nav>a:hover,
.home-cinematic .cinematic-header .nav-menu-v065>.coding-nav-link-v064:hover,
.home-cinematic .cinematic-header>.header-actions>a:hover{
  background:rgba(255,255,255,.1);
  color:#fff;
}
.home-cinematic .cinematic-header .nav-toggle-v065{color:#fff;border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.06)}
.home-cinematic .cinematic-header .lang-toggle{border-color:rgba(255,255,255,.38);background:#f8f9fc;color:#101522}

.cinematic-hero{
  position:relative;
  isolation:isolate;
  min-height:100svh;
  overflow:hidden;
  background:#090b10;
}
.cinematic-hero:before{
  content:"";
  position:absolute;
  inset:74px 0 auto;
  height:1px;
  background:rgba(255,255,255,.16);
}
.cinematic-hero-grid{
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.27;
  background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(90deg,#000,transparent 42%,transparent 66%,#000);
}
.cinematic-hero-copy{
  position:absolute;
  z-index:5;
  top:50%;
  left:max(34px,calc((100vw - 1440px)/2 + 34px));
  width:min(480px,36vw);
  transform:translateY(-48%);
}
.cinematic-kicker,
.story-copy>p,
.cinematic-proof-copy>p{
  margin:0 0 18px;
  color:#ffd34d;
  font-size:12px;
  font-weight:900;
  line-height:1.4;
  letter-spacing:0;
  text-transform:uppercase;
}
.cinematic-hero h1{
  margin:0;
  max-width:560px;
  color:#fff;
  font-size:74px;
  font-weight:900;
  line-height:.96;
  letter-spacing:0;
  text-wrap:balance;
}
.cinematic-lede{
  max-width:440px;
  margin:24px 0 0;
  color:rgba(255,255,255,.68);
  font-size:18px;
  line-height:1.65;
}
.cinematic-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:28px}
.cinematic-button{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border:1px solid rgba(255,255,255,.38);
  border-radius:6px;
  background:rgba(9,11,16,.18);
  color:#fff;
  font-size:14px;
  font-weight:900;
  transition:transform .3s ease,background-color .3s ease,border-color .3s ease;
}
.cinematic-button:hover{transform:translateY(-2px);background:rgba(255,255,255,.1);border-color:#fff}
.cinematic-button.is-bright{border-color:#ffd34d;background:#ffd34d;color:#111624}
.cinematic-button.is-bright:hover{background:#ffe17d;border-color:#ffe17d}

.hero-product-stage{
  --pointer-x:0deg;
  --pointer-y:0deg;
  --hero-scroll-y:0px;
  --hero-scroll-scale:1;
  --hero-scroll-rotate:0deg;
  position:absolute;
  z-index:3;
  top:51%;
  left:67%;
  width:min(58vw,900px);
  aspect-ratio:16/11;
  perspective:1800px;
  transform:translate(-50%,-50%);
}
.learning-device{
  position:absolute;
  left:50%;
  top:50%;
  width:100%;
  aspect-ratio:16/10;
  padding:10px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:8px;
  background:#161a23;
  box-shadow:0 44px 90px rgba(0,0,0,.55),0 0 0 1px rgba(0,0,0,.7);
  transform-style:preserve-3d;
  backface-visibility:hidden;
}
.hero-learning-device{
  transform:translate3d(-50%,calc(-50% + var(--hero-scroll-y)),0) rotateX(calc(8deg + var(--pointer-y))) rotateY(calc(-10deg + var(--pointer-x))) rotateZ(var(--hero-scroll-rotate)) scale(var(--hero-scroll-scale));
  animation:cinematic-device-float 7s ease-in-out infinite;
  transition:filter .4s ease;
}
.learning-device:before{
  content:"";
  position:absolute;
  inset:4px 8% auto;
  height:1px;
  background:rgba(255,255,255,.48);
}
.device-camera{position:absolute;z-index:3;top:4px;left:50%;width:5px;height:5px;border-radius:50%;background:#050608;box-shadow:0 0 0 1px #3f4755}
.device-screen{position:relative;width:100%;height:100%;overflow:hidden;border-radius:4px;background:#0d1422;color:#eef5ff}
.device-edge{
  position:absolute;
  z-index:-1;
  left:2%;
  right:2%;
  bottom:-12px;
  height:16px;
  border-radius:0 0 8px 8px;
  background:#090b10;
  transform:translateZ(-10px) rotateX(-62deg);
  transform-origin:top;
}
.product-shadow{
  position:absolute;
  z-index:-1;
  left:12%;
  right:8%;
  bottom:2%;
  height:12%;
  border-radius:50%;
  background:rgba(0,0,0,.68);
  filter:blur(24px);
  transform:skewX(-12deg);
}
.product-light{position:absolute;pointer-events:none}
.product-light-back{inset:11% 7% 13%;border:1px solid rgba(93,214,255,.3);transform:rotate(-7deg);box-shadow:26px -20px 0 rgba(255,211,77,.08),-28px 24px 0 rgba(69,206,160,.07)}

.screen-bar{height:42px;display:flex;align-items:center;gap:12px;padding:0 16px;border-bottom:1px solid #31405b;background:#101a2d;color:#d9e7ff;font-size:12px;font-weight:800}
.screen-bar .screen-brand{width:24px;height:24px;display:grid;place-items:center;border-radius:4px;background:#ffd34d;color:#121722;font-weight:1000}
.screen-bar>b{margin-left:auto;color:#67e6b5}
.code-screen{display:grid;grid-template-columns:42% 58%;grid-template-rows:42px 1fr}
.code-screen>.screen-bar{grid-column:1/-1}
.code-lesson-pane{padding:34px 30px;background:#111827;border-right:1px solid #31405b}
.code-lesson-pane small,.compact-lesson small{color:#67e6b5;font-size:10px;font-weight:900}
.code-lesson-pane h2{margin:10px 0 12px;font-size:30px;line-height:1.05;color:#fff}
.code-lesson-pane p{margin:0 0 24px;color:#9eabc2;font-size:13px;line-height:1.55}
.lesson-objective{display:flex;align-items:center;gap:10px;margin:10px 0;color:#d9e7ff;font-size:12px}
.lesson-objective i{width:14px;height:14px;border:1px solid #64738c;border-radius:3px;background:#17233a}
.code-editor-pane{position:relative;padding:48px 24px 20px;background:#071d3a}
.editor-tab{position:absolute;top:0;left:0;right:0;height:36px;padding:11px 18px;background:#11284b;color:#d5e8ff;font:800 11px ui-monospace,SFMono-Regular,Consolas,monospace}
.code-editor-pane pre,.compact-code-screen pre{margin:0;color:#e9f4ff;font:700 14px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap}
.code-editor-pane pre span,.compact-code-screen pre span{color:#76d7ff}
.code-editor-pane pre em,.compact-code-screen pre em{color:#ffd277;font-style:normal}
.code-editor-pane pre b,.compact-code-screen pre b{color:#ff8ea0}
.editor-run{position:absolute;left:20px;right:20px;bottom:18px;padding:12px 14px;border:1px solid #2e5080;border-radius:4px;background:#091426;font:700 11px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}
.editor-run span{display:block;color:#768aa9}.editor-run strong{color:#6ce7b7}
@keyframes cinematic-device-float{
  0%,100%{margin-top:0}
  50%{margin-top:-14px}
}
.cinematic-scroll-cue{
  position:absolute;
  z-index:6;
  bottom:24px;
  left:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:7px;
  color:rgba(255,255,255,.62);
  font-size:11px;
  font-weight:800;
  transform:translateX(-50%);
}
.cinematic-scroll-cue b{width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;font-size:15px;animation:cinematic-cue 2s ease-in-out infinite}
@keyframes cinematic-cue{50%{transform:translateY(5px)}}

.cinematic-story{position:relative;height:460vh;background:#090b10}
.cinematic-story-sticky{
  --story-bg:#090b10;
  --story-fg:#f7f8fb;
  position:sticky;
  top:0;
  height:100svh;
  min-height:660px;
  overflow:hidden;
  isolation:isolate;
  background:var(--story-bg);
  color:var(--story-fg);
}
.story-atmosphere{position:absolute;inset:0;z-index:-1;overflow:hidden;opacity:.5;transition:opacity .5s ease}
.story-atmosphere span{position:absolute;display:block;height:1px;background:currentColor;opacity:.18;transform-origin:left}
.story-atmosphere span:nth-child(1){top:22%;left:-10%;width:58%;transform:rotate(-14deg)}
.story-atmosphere span:nth-child(2){top:66%;right:-8%;width:48%;transform:rotate(15deg)}
.story-atmosphere span:nth-child(3){top:82%;left:8%;width:28%;transform:rotate(90deg)}
.story-index{position:absolute;z-index:8;top:104px;right:34px;display:flex;align-items:center;gap:10px;color:currentColor;font:900 11px/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.story-index i{width:64px;height:1px;background:currentColor;opacity:.35}
.story-index b{opacity:.45}
.story-copy-deck{position:absolute;z-index:7;left:max(34px,calc((100vw - 1440px)/2 + 34px));top:50%;width:min(410px,31vw);transform:translateY(-50%)}
.story-copy{position:absolute;left:0;top:0;width:100%;opacity:0;pointer-events:none;transform:translateY(38px);transition:color .4s ease}
.story-copy.is-active{pointer-events:auto}
.story-copy>p{color:#ffd34d}
.story-copy h2{margin:0;color:currentColor;font-size:60px;line-height:.98;font-weight:950;letter-spacing:0;text-wrap:balance}
.story-copy>span{display:block;max-width:390px;margin-top:22px;color:color-mix(in srgb,var(--story-fg) 66%,transparent);font-size:17px;line-height:1.65}
.story-product-rig{position:absolute;inset:0;z-index:4;perspective:1800px;transform-style:preserve-3d}
.story-product{
  --product-x:0px;
  --product-y:0px;
  --product-scale:1;
  --product-rx:6deg;
  --product-ry:-9deg;
  --product-rz:0deg;
  --product-opacity:1;
  position:absolute;
  left:67%;
  top:52%;
  width:min(53vw,820px);
  aspect-ratio:16/10;
  opacity:var(--product-opacity);
  transform:translate3d(calc(-50% + var(--product-x)),calc(-50% + var(--product-y)),0) rotateX(var(--product-rx)) rotateY(var(--product-ry)) rotateZ(var(--product-rz)) scale(var(--product-scale));
  transform-style:preserve-3d;
  will-change:transform,opacity;
}
.story-device{transform:translate(-50%,-50%)}
.compact-code-screen{display:grid;grid-template-columns:38% 62%;grid-template-rows:42px 1fr 42px;background:#071d3a}
.compact-code-screen>.screen-bar{grid-column:1/-1}
.compact-code-screen>.compact-lesson{grid-row:2/4;padding:24px;background:#111827;border-right:1px solid #31405b}
.compact-lesson h3{margin:8px 0 10px;color:#fff;font-size:24px;line-height:1.08}
.compact-lesson p{color:#9eabc2;font-size:12px;line-height:1.5}
.compact-lesson>span{display:inline-flex;margin-top:15px;padding:7px 9px;border:1px solid #33415c;border-radius:4px;color:#67e6b5;font-size:10px;font-weight:900}
.compact-code-screen pre{padding:34px 24px;background:#071d3a;font-size:13px}
.compact-console{padding:12px 20px;background:#091426;color:#6ce7b7;font:700 11px ui-monospace,SFMono-Regular,Consolas,monospace}
.scratch-screen{display:grid;grid-template-columns:20% 38% 42%;grid-template-rows:1fr 40px;background:#172036}
.scratch-tools{display:flex;flex-direction:column;gap:10px;padding:22px 12px;background:#f3f5f8;color:#263249;font-size:10px;font-weight:900}
.scratch-tools span{padding:8px;border-left:5px solid #4e8df5;background:#fff}
.scratch-tools span:nth-child(2){border-color:#7559dc}.scratch-tools span:nth-child(3){border-color:#a764d0}.scratch-tools span:nth-child(4){border-color:#ffab19}
.scratch-blocks{display:flex;flex-direction:column;align-items:flex-start;padding:34px 20px;background:#eef1f5;color:#fff;font-size:11px;font-weight:800}
.scratch-blocks>*{display:block;padding:9px 12px;border-radius:4px;font-style:normal}
.scratch-blocks b{background:#ffbf00}.scratch-blocks strong{margin:3px 0 0 22px;background:#ffab19}.scratch-blocks em{margin-left:40px;background:#4c97ff}.scratch-blocks i{margin-left:40px;background:#9966ff}
.scratch-stage{position:relative;overflow:hidden;background-image:url('/assets/course-art/coding-worlds-v074.jpg');background-size:200% 200%;background-position:left bottom}
.scratch-stage:after{content:"";position:absolute;inset:0;background:rgba(4,9,24,.18)}
.scratch-sprite{position:absolute;z-index:2;left:52%;top:58%;width:58px;height:58px;display:grid;place-items:center;border:3px solid #111;border-radius:8px;background:#ffd34d;color:#111624;font-weight:1000;transform:translate(-50%,-50%) rotate(-7deg);box-shadow:8px 10px 0 rgba(0,0,0,.26)}
.scratch-stage>span{position:absolute;z-index:2;top:18%;left:12%;padding:8px 10px;border-radius:8px 8px 8px 0;background:#fff;color:#111624;font-size:11px;font-weight:900}
.scratch-checks{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:22px;background:#111827;color:#78e3b4;font-size:10px}
.chinese-screen{display:grid;grid-template-columns:46% 54%;grid-template-rows:44px 1fr 56px;background:#eef2f4;color:#182135}
.chinese-top{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #c5cdd4;background:#fff;font-size:12px;font-weight:900}
.chinese-top>b{color:#d44b35}
.character-focus{display:grid;place-items:center;align-content:center;border-right:1px solid #c5cdd4;background:#fff}
.character-focus small{color:#708098;font-size:10px}.character-focus strong{font-family:"Noto Serif SC","Songti SC",serif;font-size:112px;line-height:1;color:#d44b35}.character-focus p{margin:5px 0 0;font-size:12px;font-weight:800}
.reading-strip{display:flex;align-items:center;justify-content:center;gap:8px;padding:26px}
.reading-strip span,.reading-strip b{min-width:38px;height:48px;display:grid;place-items:center;border-bottom:2px solid #8390a1;font-family:"Noto Serif SC","Songti SC",serif;font-size:24px}
.reading-strip b{border-color:#d44b35;color:#d44b35}
.writing-line{display:flex;align-items:center;padding:0 20px;border-top:1px solid #c5cdd4;background:#fff;font-family:"Noto Serif SC","Songti SC",serif;font-size:18px}
.chinese-progress{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:0 20px;border-top:1px solid #c5cdd4;background:#fff;color:#5f6c7d;font-size:10px;font-weight:900}
.chinese-progress i{height:5px;background:#d44b35;box-shadow:74px 0 0 #ffd34d,148px 0 0 #4fc598}
.story-stage-labels{position:absolute;z-index:6;left:50%;bottom:54px;display:flex;gap:26px;transform:translateX(-50%);font:900 10px ui-monospace,SFMono-Regular,Consolas,monospace;color:currentColor;opacity:.62}
.story-progress{position:absolute;z-index:8;left:34px;right:34px;bottom:24px;height:2px;background:color-mix(in srgb,currentColor 18%,transparent)}
.story-progress i{display:block;width:0;height:100%;background:currentColor;will-change:width}

.cinematic-proof{position:relative;min-height:96svh;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;background:#0c1018}
.cinematic-proof-media{position:absolute;inset:0;z-index:-2}
.cinematic-proof-media img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.04);transition:transform 1.8s cubic-bezier(.2,.75,.2,1)}
.cinematic-proof.is-visible .cinematic-proof-media img{transform:scale(1)}
.cinematic-proof-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,11,16,.94) 0,rgba(8,11,16,.58) 45%,rgba(8,11,16,.05) 80%),linear-gradient(0deg,rgba(8,11,16,.7),transparent 60%)}
.cinematic-proof-copy{width:min(760px,calc(100% - 68px));margin:0 max(34px,calc((100vw - 1440px)/2 + 34px)) 10vh}
.cinematic-proof-copy h2{margin:0;color:#fff;font-size:68px;line-height:.98;letter-spacing:0;font-weight:950;text-wrap:balance}
.cinematic-footer{min-height:180px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:42px max(34px,calc((100vw - 1440px)/2 + 34px));background:#090b10;color:#fff;border-top:1px solid rgba(255,255,255,.14)}
.cinematic-footer .brand{color:#fff}.cinematic-footer .brand span{background:#ffd34d;color:#111624}
.cinematic-footer p{margin:0;color:rgba(255,255,255,.55);font-size:13px}
.cinematic-footer nav{display:flex;gap:18px}.cinematic-footer nav a{color:rgba(255,255,255,.72);font-size:13px;font-weight:800}

@media(max-width:1100px){
  .cinematic-hero-copy{width:38vw}
  .cinematic-hero h1{font-size:60px}
  .hero-product-stage{left:70%;width:62vw}
  .story-copy-deck{width:32vw}
  .story-copy h2{font-size:48px}
  .story-product{left:70%;width:58vw}
  .code-lesson-pane{padding:26px 20px}
  .code-lesson-pane h2{font-size:24px}
  .character-focus strong{font-size:90px}
}
@media(max-width:760px){
  .home-cinematic .cinematic-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding:10px 12px;min-height:64px}
  .home-cinematic .cinematic-header>.brand{grid-column:1;grid-row:1}
  .home-cinematic .cinematic-header>.header-actions{grid-column:2;grid-row:1;gap:5px;flex-wrap:nowrap}
  .home-cinematic .cinematic-header>nav.site-primary-nav-v065{grid-column:1/-1;grid-row:2;display:flex!important;width:100%;overflow-x:auto!important;overflow-y:visible;flex-wrap:nowrap!important}
  .home-cinematic .cinematic-header>.header-actions>a{padding:0 8px;font-size:11px}
  .home-cinematic .cinematic-header .lang-toggle{min-height:38px;padding:7px 9px;font-size:11px}
  .cinematic-hero{min-height:900px}
  .cinematic-hero-copy{top:142px;left:20px;width:calc(100% - 40px);transform:none}
  .cinematic-hero h1{max-width:520px;font-size:46px;line-height:1}
  .cinematic-lede{max-width:520px;margin-top:17px;font-size:15px;line-height:1.55}
  .cinematic-kicker{margin-bottom:12px;font-size:10px}
  .cinematic-actions{margin-top:20px}
  .cinematic-button{min-height:44px;padding:0 13px;font-size:12px}
  .hero-product-stage{top:66%;left:50%;width:92vw}
  .cinematic-scroll-cue{bottom:15px}
  .code-lesson-pane{padding:18px 14px}.code-lesson-pane h2{font-size:20px}.code-lesson-pane p{font-size:10px}.lesson-objective{font-size:9px}.code-editor-pane{padding:42px 14px 16px}.code-editor-pane pre{font-size:10px}.editor-run{font-size:9px}
  .cinematic-story{height:420vh}
  .cinematic-story-sticky{min-height:680px}
  .story-index{top:126px;right:18px}
  .story-copy-deck{top:154px;left:20px;width:calc(100% - 40px);transform:none}
  .story-copy h2{max-width:520px;font-size:42px;line-height:1}
  .story-copy>span{max-width:520px;margin-top:13px;font-size:14px;line-height:1.5}
  .story-copy>p{margin-bottom:10px;font-size:10px}
  .story-product{left:50%;top:66%;width:88vw}
  .story-stage-labels{bottom:44px;gap:14px;font-size:8px}
  .story-progress{left:18px;right:18px;bottom:18px}
  .compact-lesson{display:none!important}
  .compact-code-screen{grid-template-columns:1fr;grid-template-rows:38px 1fr 38px}
  .compact-code-screen>.screen-bar{height:38px}.compact-code-screen pre{padding:22px;font-size:11px}.compact-console{font-size:9px}
  .scratch-tools{padding:13px 7px}.scratch-tools span{padding:5px;font-size:8px}.scratch-blocks{padding:18px 10px;font-size:8px}.scratch-blocks>*{padding:6px}.scratch-sprite{width:42px;height:42px;font-size:12px}
  .character-focus strong{font-size:66px}.reading-strip{padding:12px;gap:4px}.reading-strip span,.reading-strip b{min-width:24px;height:38px;font-size:17px}.writing-line{font-size:12px}.chinese-progress{font-size:8px}
  .cinematic-proof{min-height:760px}
  .cinematic-proof-media img{object-position:58% center}
  .cinematic-proof-shade{background:linear-gradient(0deg,rgba(8,11,16,.95) 0,rgba(8,11,16,.58) 48%,rgba(8,11,16,.08) 82%)}
  .cinematic-proof-copy{width:calc(100% - 40px);margin:0 20px 56px}
  .cinematic-proof-copy h2{font-size:44px;line-height:1}
  .cinematic-footer{grid-template-columns:1fr;gap:18px;padding:36px 20px}.cinematic-footer nav{flex-wrap:wrap}
}

/* v0.8.2 separate parent and learner access. */
.family-student-access-v081{margin-top:18px;padding-top:18px;border-top:1px solid #cbd5e1;display:grid;grid-template-columns:minmax(210px,1fr) minmax(150px,.65fr) minmax(150px,.65fr) auto;gap:12px;align-items:end}
.family-student-access-v081>div{display:grid;gap:5px;align-self:center}.family-student-access-v081>div span{color:#607089;font-size:.9rem;line-height:1.45}.family-student-access-v081 label{display:grid;gap:6px;font-weight:800}.family-student-access-v081 select,.family-student-access-v081 input{width:100%;min-height:44px}.family-student-access-v081>a{grid-column:1/-1;font-weight:850;color:#126b57}
.student-login-page-v081{min-height:100vh;background:#07101b;color:#f8fbff}
.student-login-page-v081:before{background:radial-gradient(circle at 16% 22%,rgba(89,213,255,.12),transparent 28%),radial-gradient(circle at 82% 74%,rgba(103,211,164,.1),transparent 24%),linear-gradient(180deg,#07101b 0,#0b1423 100%)}
.student-login-page-v081:after{background-image:linear-gradient(rgba(160,190,225,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(160,190,225,.055) 1px,transparent 1px);mask-image:linear-gradient(180deg,rgba(0,0,0,.7),transparent 88%)}
.student-login-page-v081 .site-header{background:#080d19;border-color:#23314a;color:#fff}.student-login-page-v081 .brand,.student-login-page-v081 .site-header nav a,.student-login-page-v081 .site-header nav .site-home-link-v068{color:#f8fbff}.student-login-page-v081 .lang-toggle{border-color:#52617d;background:#10192b;color:#fff}
.student-login-shell-v081{width:min(1080px,calc(100% - 40px));min-height:calc(100vh - 74px);margin:auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);align-items:center;gap:clamp(34px,7vw,90px);padding:56px 0}
.student-login-story-v081{position:relative;min-height:560px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.student-login-story-v081 h1{max-width:680px;margin:20px 0 18px;font-size:clamp(3rem,7vw,6.6rem);line-height:.92;letter-spacing:0}.student-login-story-v081 p{max-width:580px;color:#a9b7cc;font-size:1.04rem;line-height:1.7}
.student-login-signal-v081{position:absolute;right:1%;bottom:5%;width:min(42vw,390px);aspect-ratio:1;border:1px solid #263b5c;transform:rotate(10deg)}.student-login-signal-v081:before,.student-login-signal-v081:after{content:"";position:absolute;inset:14%;border:1px solid #2f527b;transform:rotate(18deg)}.student-login-signal-v081:after{inset:29%;border-color:#ffd34d;transform:rotate(36deg)}.student-login-signal-v081 i{position:absolute;width:9px;height:9px;background:#59d5ff;box-shadow:0 0 18px #59d5ff}.student-login-signal-v081 i:nth-child(1){left:8%;top:14%}.student-login-signal-v081 i:nth-child(2){right:8%;top:24%;background:#ff7b72;box-shadow:0 0 18px #ff7b72}.student-login-signal-v081 i:nth-child(3){left:19%;bottom:9%;background:#67d3a4;box-shadow:0 0 18px #67d3a4}.student-login-signal-v081 i:nth-child(4){right:17%;bottom:16%;background:#ffd34d;box-shadow:0 0 18px #ffd34d}.student-login-signal-v081 span{position:absolute;inset:0;display:grid;place-items:center;color:#ffd34d;font:1000 62px/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.student-login-panel-v081{position:relative;z-index:2;border:1px solid #33445f;background:#101a2d;padding:30px;box-shadow:16px 16px 0 rgba(89,213,255,.09)}.student-login-panel-v081 h2{margin:14px 0 24px;font-size:2rem}.student-login-panel-v081 form{display:grid;gap:18px}.student-login-panel-v081 label{display:grid;gap:8px;color:#dbe6f6;font-weight:850}.student-login-panel-v081 input{min-height:48px;border:1px solid #526787;background:#070d19;color:#fff}.student-login-panel-v081 button{width:100%;min-height:50px}.student-login-panel-v081 .notice{margin:18px 0 12px;background:#0a1323;border-color:#324761;color:#aebbd0}.student-login-parent-v081{color:#85e2c2;font-weight:850}
.account-text-button-v081{border:0;background:transparent;box-shadow:none;color:#126b57;text-decoration:underline;text-underline-offset:3px}.account-reset-v081{max-width:650px}.account-reset-v081 form{display:grid;gap:16px}.account-reset-v081 h2{margin:0}.account-reset-v081 p{margin:0;color:#607089;line-height:1.55}
.public-status-v081{max-width:980px;min-height:calc(100vh - 130px);display:flex;flex-direction:column;justify-content:center}.public-status-v081 .status-grid{grid-template-columns:1fr}.public-status-v081 .status-grid article{min-height:190px;display:flex;flex-direction:column;justify-content:center}.public-status-v081 .status-grid strong{font-size:clamp(1.8rem,4vw,3.4rem)}.public-status-help-v081{color:#607089}
@media(max-width:820px){.family-student-access-v081{grid-template-columns:1fr 1fr}.family-student-access-v081>div{grid-column:1/-1}.student-login-shell-v081{grid-template-columns:1fr;padding:34px 0}.student-login-story-v081{min-height:330px}.student-login-story-v081 h1{font-size:clamp(2.8rem,12vw,5rem)}.student-login-signal-v081{width:250px;opacity:.52}.student-login-panel-v081{padding:24px}}
@media(max-width:560px){.family-student-access-v081{grid-template-columns:1fr}.student-login-panel-v081{box-shadow:8px 8px 0 rgba(89,213,255,.09)}}
@media(max-width:420px){
  .cinematic-hero{min-height:840px}
  .cinematic-hero h1{font-size:40px}
  .cinematic-hero-copy{top:132px}
  .hero-product-stage{top:68%;width:96vw}
  .story-copy h2{font-size:36px}
  .story-product{top:68%;width:94vw}
  .cinematic-proof-copy h2{font-size:38px}
}
@media(prefers-reduced-motion:reduce){
  .home-cinematic *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .hero-learning-device{animation:none}
}

/* v0.6.4 coding discovery navigation and catalog. */
.site-primary-nav-v064{display:flex;align-items:center;gap:6px;overflow:visible}
.coding-nav-menu-v064{position:relative;display:flex;align-items:center}
.coding-nav-link-v064{padding-right:4px!important}
.coding-nav-toggle-v064{width:38px;height:44px;display:grid;place-items:center;border:0;background:transparent;color:var(--soft);font-size:20px;font-weight:900;cursor:pointer}
.coding-nav-toggle-v064:hover,.coding-nav-toggle-v064:focus-visible{background:#edf7ff;color:var(--ink);outline:2px solid #17213b;outline-offset:1px}
.coding-mega-v064{position:absolute;z-index:80;top:calc(100% + 13px);left:50%;width:min(900px,calc(100vw - 32px));transform:translateX(-42%);display:none;grid-template-columns:1.35fr repeat(3,1fr);gap:0;border:1px solid #35415e;border-radius:6px;background:#080e1e;color:#f7fbff;box-shadow:0 24px 60px rgba(5,10,24,.32);padding:24px}
.coding-nav-menu-v064:hover .coding-mega-v064,.coding-nav-menu-v064:focus-within .coding-mega-v064,.coding-nav-menu-v064.is-open .coding-mega-v064{display:grid}
.coding-mega-v064 section{display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:0 20px;border-left:1px solid #26334d}
.coding-mega-v064 section:first-child{padding-left:0;border-left:0}
.coding-mega-v064 section:last-child{padding-right:0}
.coding-mega-label-v064{display:block;margin:0 0 12px;color:#91a6cf;font-size:11px;font-weight:900;text-transform:uppercase}
.coding-mega-v064 a{min-height:38px!important;padding:8px 6px!important;border-radius:4px!important;color:#f7fbff!important;font-size:14px!important;font-weight:800!important}
.coding-mega-v064 a:hover{background:#17233a!important;color:#fff!important}
.coding-mega-featured-v064>a:not(.coding-mega-all-v064){display:grid!important;grid-template-columns:44px 1fr;gap:10px;align-items:center;margin-bottom:6px}
.coding-mega-featured-v064 a span{min-width:0}.coding-mega-featured-v064 a strong,.coding-mega-featured-v064 a small{display:block}.coding-mega-featured-v064 a small{margin-top:3px;color:#aebbd3;font-size:11px;font-weight:600}
.coding-mega-mark-v064{width:44px;height:44px;display:grid;place-items:center;border:1px solid #7181a1;border-radius:4px;color:#071022;font-size:12px}.coding-mega-mark-v064.python{background:#67d3a4}.coding-mega-mark-v064.scratch{background:#ff7b72}
.coding-mega-mark-v064.practice{background:#ffd34d}.coding-mega-mark-v064.build{background:#58b9e8}
.coding-mega-all-v064{display:flex!important;justify-content:space-between!important;margin-top:8px;background:#2faae9!important;color:#071022!important}.coding-mega-all-v064 b{font-size:18px}
.nav-simple-mega-v065{width:min(560px,calc(100vw - 32px));grid-template-columns:1.2fr 1fr;transform:translateX(-34%)}

.coding-catalog-page-v064{background:#080e1e;color:#f7fbff;min-height:100vh}
.coding-catalog-page-v064:before{background:linear-gradient(180deg,#080e1e 0,#0b1325 56%,#080e1e 100%)}
.coding-catalog-page-v064:after{background-image:linear-gradient(rgba(142,160,196,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(142,160,196,.07) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(180deg,rgba(0,0,0,.72),transparent 74%)}
.coding-catalog-page-v064 .site-header{background:#fff;color:#17213b}
.coding-catalog-page-v064 .footer{border-color:#26334d;background:#080e1e;color:#aebbd3}
.coding-catalog-page-v064 .footer a{color:#f7fbff}
.coding-catalog-shell-v064{width:min(1240px,calc(100% - 32px));margin:0 auto;padding:46px 0 80px}
.coding-catalog-heading-v064{display:grid;grid-template-columns:minmax(0,760px) 300px;justify-content:space-between;align-items:end;gap:40px;padding:0 0 42px;border-bottom:1px solid #35415e}
.coding-catalog-heading-v064 h1{max-width:760px;margin:14px 0;font-size:48px;line-height:1.06;letter-spacing:0;color:#fff}.coding-catalog-heading-v064 p{max-width:720px;margin:0;color:#aebbd3;font-size:17px;line-height:1.65}.coding-catalog-heading-v064 .badge{border-color:#60708f;background:#111a2b;color:#8ee0b8}
.coding-catalog-stat-v064{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:6px 12px;border-left:2px solid #ffd34d;padding-left:24px}.coding-catalog-stat-v064 strong{font-size:28px;color:#ffd34d}.coding-catalog-stat-v064 span{color:#aebbd3;font-size:13px;font-weight:800}
.coding-catalog-layout-v064{display:grid;grid-template-columns:220px minmax(0,1fr) 250px;gap:28px;align-items:start;padding-top:32px}
.coding-language-rail-v064,.coding-path-summary-v064{position:sticky;top:92px}
.coding-rail-heading-v064 span,.coding-path-summary-v064>section>span{display:block;color:#8fa5d0;font-size:11px;font-weight:900;text-transform:uppercase}.coding-rail-heading-v064 strong{display:block;margin-top:5px;font-size:20px}
.coding-search-v064{display:block;margin:18px 0 12px}.coding-search-v064 input{width:100%;height:44px;border:1px solid #485673;border-radius:4px;background:#111a2b;color:#fff;padding:0 12px;font:inherit}.coding-search-v064 input:focus{outline:2px solid #58b9e8;outline-offset:1px}
.coding-track-list-v064{display:grid;gap:5px}.coding-track-list-v064 button{min-height:56px;width:100%;display:grid;grid-template-columns:38px 1fr 18px;align-items:center;gap:10px;border:1px solid transparent;border-radius:4px;background:transparent;color:#f7fbff;padding:7px;text-align:left;cursor:pointer}.coding-track-list-v064 button:hover{background:#111a2b;border-color:#35415e}.coding-track-list-v064 button.active{background:#17233a;border-color:var(--track-color);box-shadow:inset 4px 0 0 var(--track-color)}.coding-track-list-v064 button>span:first-child{width:38px;height:38px;display:grid;place-items:center;border:1px solid #60708f;border-radius:4px;background:var(--track-color);color:#071022;font-size:11px;font-weight:900}.coding-track-list-v064 button span:nth-child(2){min-width:0}.coding-track-list-v064 button strong,.coding-track-list-v064 button small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coding-track-list-v064 button strong{font-size:14px}.coding-track-list-v064 button small{margin-top:2px;color:#91a6cf;font-size:10px}.coding-track-list-v064 button>b{color:#91a6cf;font-size:18px}.coding-empty-v064{color:#aebbd3;font-size:13px}
.coding-course-v064{min-width:0}.coding-course-heading-v064{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:center;padding:4px 0 26px;border-bottom:1px solid #35415e;scroll-margin-top:100px}.coding-track-mark-v064{width:64px;height:64px;display:grid;place-items:center;border:2px solid #f7fbff;border-radius:6px;color:#071022;font-size:16px;font-weight:950;box-shadow:5px 5px 0 #26334d}.coding-course-category-v064{color:#91a6cf;font-size:11px;font-weight:900;text-transform:uppercase}.coding-course-heading-v064 h2{margin:3px 0 5px;color:#fff;font-size:34px}.coding-course-heading-v064 p{margin:0;color:#aebbd3;line-height:1.5}
.coding-stage-timeline-v064{position:relative;padding-left:34px}.coding-stage-timeline-v064:before{content:"";position:absolute;left:14px;top:34px;bottom:32px;width:2px;background:#35415e}.coding-stage-v064{position:relative;padding:32px 0;border-bottom:1px solid #35415e}.coding-stage-number-v064{position:absolute;z-index:1;left:-34px;top:32px;width:30px;height:30px;display:grid;place-items:center;border:2px solid var(--stage-color);border-radius:50%;background:#080e1e;color:#fff;font-weight:900}.coding-stage-body-v064>header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.coding-stage-body-v064>header span{color:#91a6cf;font-size:11px;font-weight:900;text-transform:uppercase}.coding-stage-body-v064 h3{margin:5px 0 0;color:#fff;font-size:24px}.coding-stage-meta-v064{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.coding-stage-meta-v064 span{min-height:28px;display:inline-flex;align-items:center;border:1px solid #485673;border-radius:4px;padding:0 8px;color:#c6d1e6!important;font-size:10px!important}.coding-stage-goal-v064{margin:14px 0 18px;color:#c6d1e6;line-height:1.6}
.coding-pack-list-v064{display:grid;gap:8px}.coding-pack-list-v064 article{min-height:78px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #35415e;border-radius:4px;background:#111a2b;padding:12px}.coding-pack-index-v064{width:30px;height:30px;display:grid;place-items:center;border:1px solid #60708f;border-radius:4px;color:#ffd34d;font-weight:900}.coding-pack-list-v064 small,.coding-pack-list-v064 strong,.coding-pack-list-v064 p{display:block}.coding-pack-list-v064 small{color:#91a6cf;font-size:10px}.coding-pack-list-v064 strong{margin-top:3px;color:#fff;font-size:14px}.coding-pack-list-v064 p{margin:3px 0 0;color:#aebbd3;font-size:12px;line-height:1.4}.coding-pack-status-v064{min-width:70px;border:1px solid #53617d;border-radius:4px;padding:7px 9px;color:#c6d1e6;text-align:center;font-size:11px;font-weight:900;text-decoration:none}.coding-pack-list-v064 article:first-child a.coding-pack-status-v064{border-color:var(--stage-color);background:var(--stage-color);color:#071022;cursor:pointer}.coding-pack-list-v064 article:first-child a.coding-pack-status-v064:hover{filter:brightness(1.08);transform:translateY(-1px)}.coding-pack-list-v064 article:first-child a.coding-pack-status-v064:focus-visible{outline:3px solid #fff;outline-offset:2px}
.coding-stage-actions-v064{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}.coding-stage-actions-v064 a{min-height:44px;display:inline-flex;align-items:center;border:1px solid #071022;border-radius:4px;background:var(--stage-color);color:#071022;padding:0 16px;font-weight:900}.coding-stage-actions-v064 a:hover{filter:brightness(1.08)}.coding-stage-actions-v064>span{color:#91a6cf;font-size:11px;text-align:right}
.coding-path-summary-v064{display:grid;gap:14px}.coding-path-summary-v064>section{border:1px solid #35415e;border-radius:4px;background:#0d1526;padding:18px}.coding-path-summary-v064 h2{margin:5px 0 10px;color:#fff;font-size:20px}.coding-path-summary-v064 p{color:#aebbd3;font-size:12px;line-height:1.55}.coding-path-summary-v064 ol{list-style:none;margin:18px 0 0;padding:0}.coding-path-summary-v064 li{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center;padding:9px 0;border-top:1px solid #26334d}.coding-path-summary-v064 li>span{width:26px;height:26px;display:grid;place-items:center;border:1px solid #60708f;border-radius:50%;font-size:10px}.coding-path-summary-v064 li strong,.coding-path-summary-v064 li small{display:block}.coding-path-summary-v064 li strong{font-size:12px}.coding-path-summary-v064 li small{margin-top:2px;color:#91a6cf;font-size:10px}.coding-path-help-v064{border-color:#6a5830!important}.coding-path-help-v064>strong{color:#ffd34d}.coding-path-help-v064 a{min-height:42px;display:flex;align-items:center;justify-content:center;margin-top:14px;border:1px solid #ffd34d;border-radius:4px;color:#ffd34d;font-size:12px;font-weight:900}.coding-path-help-v064 a:hover{background:#ffd34d;color:#071022}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media(max-width:1080px){
  .coding-catalog-layout-v064{grid-template-columns:210px minmax(0,1fr)}
  .coding-path-summary-v064{position:static;grid-column:1/-1;grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .site-header nav.site-primary-nav-v065{display:flex!important;flex-wrap:wrap;overflow:visible}
  .student-dashboard-v063 .site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding:10px 12px}
  .student-dashboard-v063 .site-header>.brand{grid-column:1;grid-row:1;min-width:0}
  .student-dashboard-v063 .site-header>.header-actions{grid-column:2;grid-row:1;gap:6px;flex-wrap:nowrap}
  .student-dashboard-v063 .site-header>nav{grid-column:1/-1;grid-row:2}
  .coding-catalog-shell-v064{width:min(100% - 20px,1240px);padding-top:28px}
  .coding-catalog-heading-v064{grid-template-columns:1fr;gap:24px}.coding-catalog-heading-v064 h1{font-size:36px}.coding-catalog-stat-v064{grid-template-columns:repeat(3,auto 1fr);border-left:0;border-top:2px solid #ffd34d;padding:16px 0 0}
  .coding-catalog-layout-v064{grid-template-columns:1fr;padding-top:22px}.coding-language-rail-v064{position:static}.coding-track-list-v064{grid-template-columns:1fr 1fr}.coding-course-heading-v064{scroll-margin-top:150px}.coding-path-summary-v064{grid-column:auto;grid-template-columns:1fr}
}
@media(max-width:620px){
  .coding-catalog-page-v064 .site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:10px 14px}
  .coding-catalog-page-v064 .site-header>.brand{grid-column:1;grid-row:1;min-width:0}
  .coding-catalog-page-v064 .site-header>.header-actions{grid-column:2;grid-row:1;gap:6px;flex-wrap:nowrap}
  .coding-catalog-page-v064 .site-header>.header-actions a{padding:0 7px;font-size:11px}
  .coding-catalog-page-v064 .site-header>.header-actions button{min-height:38px;padding:8px 10px;font-size:12px}
  .site-header nav.site-primary-nav-v064{display:flex!important;width:100%;align-items:center;gap:4px;overflow:visible}
  .coding-catalog-page-v064 .site-header nav.site-primary-nav-v064{grid-column:1/-1;grid-row:2;justify-content:flex-start;flex-wrap:nowrap;overflow:visible}
  .site-primary-nav-v064>a{min-height:38px!important;padding:0 9px!important;font-size:12px!important}
  .coding-nav-toggle-v064{height:38px;width:32px}
  .nav-menu-v065 .coding-mega-v064{position:fixed;top:var(--nav-panel-top,112px);left:12px;right:12px;transform:none;width:auto;max-height:calc(100vh - var(--nav-panel-top,112px) - 16px);grid-template-columns:1fr;overflow:auto;padding:16px}
  .coding-mega-v064 section{padding:14px 0;border-left:0;border-top:1px solid #26334d}.coding-mega-v064 section:first-child{padding-top:0;border-top:0}.coding-mega-v064 section:last-child{padding-bottom:0}
  .coding-catalog-stat-v064{grid-template-columns:auto 1fr}.coding-track-list-v064{grid-template-columns:1fr 1fr}.coding-track-list-v064 button{grid-template-columns:34px 1fr}.coding-track-list-v064 button>span:first-child{width:34px;height:34px}.coding-track-list-v064 button>b{display:none}
  .coding-course-heading-v064{grid-template-columns:52px 1fr}.coding-track-mark-v064{width:52px;height:52px}.coding-course-heading-v064 h2{font-size:28px}
  .coding-stage-timeline-v064{padding-left:28px}.coding-stage-timeline-v064:before{left:11px}.coding-stage-number-v064{left:-28px;width:24px;height:24px;font-size:11px}.coding-stage-body-v064>header{display:block}.coding-stage-meta-v064{justify-content:flex-start;margin-top:10px}.coding-pack-list-v064 article{grid-template-columns:30px 1fr}.coding-pack-status-v064{grid-column:2;justify-self:start}.coding-stage-actions-v064{align-items:stretch;flex-direction:column}.coding-stage-actions-v064>span{text-align:left}
}

@media(max-width:760px){
  .site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding:10px 12px}
  .site-header>.brand{grid-column:1;grid-row:1;min-width:0;max-width:100%;overflow:hidden}
  .site-header>.brand strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .site-header>.header-actions{grid-column:2;grid-row:1;gap:6px;flex-wrap:nowrap}
  .site-header>nav.site-primary-nav-v065{grid-column:1/-1;grid-row:2;width:100%;display:flex!important;align-items:center;justify-content:flex-start;gap:4px;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:visible;scrollbar-width:none}
  .site-header>nav.site-primary-nav-v065::-webkit-scrollbar{display:none}
  .site-header>nav.site-primary-nav-v065>a,.site-header>nav.site-primary-nav-v065>.nav-menu-v065{flex:0 0 auto}
}

/* 0.6.3 account and private student desk */
[hidden]{display:none!important}
.site-header>nav a,.site-header .header-actions>a,.site-header .header-actions>button{min-height:44px;display:inline-flex;align-items:center}
.account-shell-v063{width:min(1040px,calc(100% - 32px));margin:0 auto;padding:56px 0 80px;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:32px;align-items:start}
.account-signed-in-v080 .account-shell-v063{width:min(1180px,calc(100% - 32px));grid-template-columns:minmax(230px,.38fr) minmax(0,1.62fr)}
.account-signed-in-v080 .account-intro-v063 h1{font-size:42px;max-width:11ch}
.account-signed-in-v080 .account-intro-v063>p{font-size:15px}
.account-intro-v063{padding:22px 0}
.account-intro-v063 h1{font-size:clamp(36px,5vw,62px);line-height:1.02;letter-spacing:0;max-width:12ch;margin:18px 0}
.account-intro-v063>p{font-size:18px;line-height:1.65;color:#4d5b78}
.account-auth-v063{min-width:0;border:1px solid #17213b;border-radius:8px;background:#fff;padding:20px;box-shadow:8px 8px 0 #d7e9f2}
.account-tabs-v063{display:flex;max-width:100%;gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;margin-bottom:20px}
.account-tabs-v063 button{min-height:44px;white-space:nowrap}
.account-auth-v063 form{display:grid;gap:16px}
.account-auth-v063 label{display:grid;gap:7px;font-weight:700;color:#17213b}
.account-auth-v063 input{min-height:46px;border:1px solid #9aa9c4;border-radius:6px;padding:10px 12px;font:inherit;background:#fff}
.account-form-grid-v063{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.account-consent-v063{grid-template-columns:22px 1fr!important;align-items:start;font-weight:500!important;line-height:1.5}
.account-consent-v063 input{min-height:20px;width:20px;margin-top:2px}
.account-summary-v063{padding:8px 0 18px}
.account-summary-v063 h2{font-size:28px;margin:12px 0 6px}
.account-learner-list-v063{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.account-learner-pill-v063{border:1px solid #17213b;border-radius:999px;padding:7px 11px;background:#eef9f4;font-weight:800}
.account-plan-list-v063{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.account-plan-list-v063 .card{margin:0}
.account-price-v063{display:block;font-size:24px;margin:10px 0;color:#17213b}
.account-success-dialog-v063{width:min(520px,calc(100% - 32px));border:1px solid #17213b;border-radius:8px;padding:28px;box-shadow:10px 10px 0 #ffd34d}
.account-success-dialog-v063::backdrop{background:rgba(10,17,35,.65)}
.account-success-dialog-v063 h2{font-size:30px;margin:12px 0}
.account-success-mark-v063{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#2faf78;color:#fff;font-size:26px;font-weight:900}
.family-panel-heading-v080{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.family-panel-heading-v080 h2{margin:8px 0 0;font-size:28px;letter-spacing:0}
.family-next-step-v080{margin:0 0 14px;border-left:5px solid #ffd34d;background:#fff8dc;padding:12px 14px;color:#35415c;line-height:1.55;font-weight:750}
.family-section-v080{padding:22px 0;border-top:1px solid #cbd5e1}
.family-section-title-v080{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.family-section-title-v080 h3{margin:0;font-size:20px;letter-spacing:0}
.family-section-title-v080 span{color:#65728c;font-size:13px;text-align:right}
.family-record-grid-v080{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.family-record-grid-v080 .mini-record{margin:0}
.family-details-v080{border-top:1px solid #cbd5e1;padding:16px 0}
.family-details-v080 summary{cursor:pointer;font-weight:900;color:#17213b;min-height:44px;display:flex;align-items:center}
.family-checklist-v080{display:grid;gap:8px;padding-top:8px}
.family-checklist-v080 article{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;border:1px solid #cbd5e1;border-radius:6px;padding:10px;background:#fff}
.family-checklist-v080 article.done{background:#eef9f4;border-color:#7bbd9e}
.family-checklist-v080 b{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#e8edf5;color:#17213b}
.family-checklist-v080 article.done b{background:#2faf78;color:#fff}
.family-checklist-v080 strong,.family-checklist-v080 span{display:block}.family-checklist-v080 span{margin-top:2px;color:#65728c;font-size:13px}
.parent-printable-report-v080{border:2px solid #17213b;border-radius:8px;background:#fbfdff;padding:16px}
.report-header{display:flex;align-items:flex-start;gap:12px}.report-header h3{margin:0 0 4px;font-size:21px}.report-header p{margin:0;color:#65728c}
.family-homework-v080>p{color:#53627e;line-height:1.55}
.family-homework-list-v080{display:grid;gap:10px;margin:14px 0 22px}
.family-homework-list-v080 .mini-record{margin:0}
.homework-submit-v080{grid-template-columns:1fr 1fr!important;border-top:1px solid #cbd5e1;padding-top:20px}
.homework-submit-v080 textarea,.homework-submit-v080 select{width:100%;border:1px solid #9aa9c4;border-radius:6px;padding:10px 12px;font:inherit;background:#fff}
.homework-submit-v080 textarea{resize:vertical;line-height:1.5}
.homework-wide-v080{grid-column:1/-1}
.family-manager-v080{border-top:1px solid #cbd5e1;padding:20px 0}
.family-child-list-v080{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.family-child-list-v080 .child-choice.active{background:#ffd34d}
.family-add-child-v080{display:grid!important;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px!important}
.billing-account-actions-v080{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;border-top:1px solid #cbd5e1;padding-top:18px}
.billing-account-actions-v080 strong,.billing-account-actions-v080 span{display:block}.billing-account-actions-v080 span{margin-top:4px;color:#65728c;line-height:1.5}
.payment-result-v080.confirmed .account-success-mark-v063{background:#2faf78}

.student-desk-shell-v063{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:44px 0 76px}
.student-state-v063{max-width:680px;margin:10vh auto;padding:34px;border:1px solid #17213b;border-radius:8px;background:#fff;box-shadow:8px 8px 0 #ffd34d}
.student-state-v063 h1{font-size:40px;line-height:1.08;letter-spacing:0;margin:16px 0 10px}
.student-loading-dot-v063{display:block;width:18px;height:18px;border-radius:50%;background:#2faf78;animation:studentPulse 1s infinite alternate}
@keyframes studentPulse{to{transform:scale(.65);opacity:.45}}
.student-welcome-v063{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;padding:8px 0 26px;border-bottom:1px solid #cbd5e1}
.student-welcome-v063 h1{font-size:44px;line-height:1.05;letter-spacing:0;margin:14px 0 6px}
.student-welcome-v063 p{margin:0;color:#53627e}
.student-profile-actions-v063{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.student-profile-switcher-v063{display:flex;gap:6px;flex-wrap:wrap}
.student-profile-switcher-v063 button{min-height:44px;border:1px solid #17213b;border-radius:6px;background:#fff;padding:8px 12px;font-weight:800}
.student-profile-switcher-v063 button.active{background:#ffd34d}
.student-focus-v063{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:28px 0 16px;padding:24px;border:1px solid #17213b;border-radius:8px;background:#111a30;color:#fff}
.student-focus-v063 h2{font-size:28px;letter-spacing:0;margin:6px 0}
.student-focus-v063 p{margin:0;color:#d9e2f4}
.student-section-label-v063{text-transform:uppercase;font-size:12px;font-weight:900;color:#ffd34d}
.student-stats-v063{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #17213b;border-radius:8px;overflow:hidden;background:#fff}
.student-stats-v063>div{padding:18px;border-right:1px solid #cbd5e1}
.student-stats-v063>div:last-child{border-right:0}
.student-stats-v063 strong{display:block;font-size:30px;color:#17213b}
.student-stats-v063 span{font-size:13px;color:#65728c}
.student-worlds-v063{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}
.student-world-row-v063{display:grid;grid-template-columns:48px 1fr 24px;gap:16px;align-items:center;padding:20px;border:1px solid #17213b;border-radius:8px;background:#fff;color:#17213b;text-decoration:none}
.student-world-row-v063:hover{transform:translateY(-2px);box-shadow:5px 5px 0 #17213b}
.student-world-row-v063.coding{border-left:8px solid #2faf78}
.student-world-row-v063.practice{border-left:8px solid #ffd34d}
.student-world-row-v063.build{border-left:8px solid #58b9e8}
.student-world-row-v063.chinese{border-left:8px solid #ef6b66}
.student-world-row-v063 strong{font-size:21px}.student-world-row-v063 p{margin:5px 0 0;color:#53627e}
.student-world-number-v063{width:42px;height:42px;display:grid;place-items:center;border-radius:6px;background:#ffd34d;font-weight:900}
.student-records-v063{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}
.student-record-column-v063{min-width:0}
.student-record-head-v063{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #17213b;padding-bottom:10px}
.student-record-head-v063 h2{font-size:22px;margin:0;letter-spacing:0}
.student-record-list-v063 article{padding:14px 0;border-bottom:1px solid #d6deea}
.student-record-list-v063 article strong,.student-record-list-v063 article span{display:block}.student-record-list-v063 article span{font-size:12px;color:#65728c;margin-top:4px}.student-record-list-v063 article p{margin:7px 0 0;color:#53627e}
.student-empty-v063{padding:18px 0;color:#65728c}

@media(max-width:760px){
  .account-shell-v063,.account-signed-in-v080 .account-shell-v063{grid-template-columns:1fr;padding-top:24px}.account-auth-v063{order:-1}.account-intro-v063{order:1;padding-top:8px}.account-intro-v063 h1,.account-signed-in-v080 .account-intro-v063 h1{font-size:40px}.account-form-grid-v063,.account-plan-list-v063{grid-template-columns:1fr}
  .family-panel-heading-v080,.family-section-title-v080,.billing-account-actions-v080{align-items:stretch;flex-direction:column}.family-section-title-v080 span{text-align:left}.family-record-grid-v080,.homework-submit-v080,.family-add-child-v080{grid-template-columns:1fr!important}.homework-wide-v080{grid-column:1}.parent-printable-report-v080{padding:12px}
  .student-desk-shell-v063{width:min(100% - 20px,1120px);padding-top:22px}.student-welcome-v063,.student-focus-v063{align-items:stretch;flex-direction:column}.student-welcome-v063 h1{font-size:36px}.student-profile-actions-v063{justify-content:flex-start}.student-stats-v063{grid-template-columns:1fr 1fr}.student-stats-v063>div:nth-child(2){border-right:0}.student-stats-v063>div:nth-child(-n+2){border-bottom:1px solid #cbd5e1}.student-records-v063,.student-worlds-v063{grid-template-columns:1fr}.student-world-row-v063{grid-template-columns:42px 1fr 18px;padding:16px}.student-world-row-v063 p{font-size:14px}
}

@media print{
  body.account-v063 .site-header,body.account-v063 .account-intro-v063,body.account-v063 .account-tabs-v063,body.account-v063 .family-panel-heading-v080,body.account-v063 .family-next-step-v080,body.account-v063 .snapshot-grid,body.account-v063 .family-section-v080:not(:has(#parentPrintableReport)),body.account-v063 .family-details-v080,body.account-v063 .footer{display:none!important}
  body.account-v063 .account-shell-v063{display:block;width:100%;padding:0}body.account-v063 .account-auth-v063{border:0;box-shadow:none;padding:0}body.account-v063 [data-panel="progress"]{display:block!important}body.account-v063 .parent-printable-report-v080{border:0;padding:0}
}

.world-shell-v063{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:50px 0 80px}.world-heading-v063{max-width:780px}.world-heading-v063 h1{font-size:50px;line-height:1.03;letter-spacing:0;margin:16px 0}.world-heading-v063>p{font-size:18px;line-height:1.6;color:#53627e}.world-track-section-v063{margin-top:38px}.world-section-title-v063{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}.world-section-title-v063>span{width:40px;height:40px;display:grid;place-items:center;border-radius:6px;background:#ffd34d;font-weight:900}.world-section-title-v063 h2{margin:0;font-size:26px;letter-spacing:0}.world-section-title-v063 p{margin:4px 0;color:#65728c}.world-track-grid-v063{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.world-track-v063{border:1px solid #17213b;border-top:7px solid var(--track);border-radius:8px;background:#fff;padding:18px}.world-track-v063 header{display:flex;justify-content:space-between;gap:10px}.world-track-v063 header strong{font-size:22px}.world-track-v063 header span{font-size:12px;color:#65728c}.world-track-v063 p{min-height:48px;color:#53627e}.world-track-v063>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.world-track-v063 a{min-height:44px;border:1px solid #9ba9c1;border-radius:6px;padding:7px;display:flex;gap:7px;align-items:center;text-transform:capitalize;font-size:13px;font-weight:800}.world-track-v063 a:hover{background:#eef9f4;border-color:#17213b}.world-track-v063 a b{display:grid;place-items:center;width:22px;height:22px;border-radius:4px;background:#17213b;color:#fff}.world-more-v063{margin-top:32px;border-top:1px solid #9ba9c1}.world-more-v063 summary{min-height:64px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-weight:900}.world-more-v063 summary small{color:#65728c}@media(max-width:860px){.world-track-grid-v063{grid-template-columns:1fr 1fr}}@media(max-width:620px){.world-shell-v063{width:min(100% - 20px,1120px);padding-top:28px}.world-heading-v063 h1{font-size:38px}.world-track-grid-v063{grid-template-columns:1fr}.world-track-v063 p{min-height:0}}

/* v0.5.8 mobile mission header and workspace density. */
@media(max-width:620px){
  .quest-header-v022{min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:6px 8px!important;padding:7px 12px!important}
  .quest-header-v022 .brand{grid-column:1;grid-row:1;min-width:0}
  .quest-header-v022 .brand strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem}
  .quest-header-v022 .header-actions{grid-column:2;grid-row:1;gap:6px;flex-wrap:nowrap}
  .quest-header-v022 .header-actions .solid{display:none}
  .quest-header-v022 .lang-toggle{min-height:34px;padding:7px 9px}
  .quest-header-v022 nav{grid-column:1 / -1;grid-row:2;display:flex!important;width:100%;gap:5px;overflow-x:auto;flex-wrap:nowrap;padding:1px 0 3px}
  .quest-header-v022 nav a{min-height:30px;flex:0 0 auto;padding:0 8px;font-size:.72rem}
  .mission-track-strip-v038{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center!important}
  .mission-track-buttons-v038{min-width:0}
  .mission-lesson-controls-v038{width:auto!important}
  .mission-lesson-controls-v038 span{min-width:76px!important}
  .mission-fun-hud-v041{align-items:center!important;flex-direction:row!important}
  .mission-guide-v041 p,.mission-reward-v041 strong,.mission-reward-v041 em{display:none!important}
  .mission-reward-v041{display:block!important}
}

/* v0.3.6 compact student mission desk */
.quest-compact-v036{
  --quest-ink:#172033;
  --quest-line:#1f2c44;
  --quest-soft:#607089;
  --quest-sun:#ffcf34;
  --quest-mint:#62cb92;
  min-height:100vh;
  background:linear-gradient(180deg,#f3fbff 0%,#fffdf6 58%,#f7fff4 100%);
  color:#172033!important;
}
.quest-compact-main-v036{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  padding:22px 0 42px;
}
.quest-compact-bar-v036{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin-bottom:16px;
  padding:18px 22px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:rgba(255,255,255,.94);
  box-shadow:6px 6px 0 rgba(31,44,68,.12);
}
.quest-compact-bar-v036 h1{
  margin:8px 0 0;
  color:var(--quest-ink)!important;
  text-shadow:none!important;
  opacity:1!important;
  font-size:clamp(1.7rem,3vw,2.6rem);
  line-height:1.08;
}
.quest-compact-bar-v036 aside{
  min-width:150px;
  padding:14px 16px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:var(--quest-sun);
  color:var(--quest-ink);
  text-align:center;
  box-shadow:4px 4px 0 rgba(31,44,68,.16);
}
.quest-compact-bar-v036 aside span,
.quest-compact-bar-v036 aside strong{
  display:block;
}
.quest-compact-bar-v036 aside span{
  color:var(--quest-soft);
  font-size:.78rem;
  font-weight:1000;
  text-transform:uppercase;
}
.quest-compact-bar-v036 aside strong{
  margin-top:4px;
  font-size:1.3rem;
}
.mission-track-strip-v038{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 16px;
  padding:12px 14px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:rgba(255,255,255,.94);
  box-shadow:5px 5px 0 rgba(31,44,68,.1);
}
.mission-track-strip-v038 > div:first-child{
  flex:0 0 auto;
  min-width:150px;
}
.mission-track-strip-v038 span{
  display:block;
  color:var(--quest-soft);
  font-size:.74rem;
  font-weight:1000;
  text-transform:uppercase;
}
.mission-track-strip-v038 strong{
  display:block;
  margin-top:2px;
  color:var(--quest-ink);
  font-size:1rem;
}
.mission-track-buttons-v038{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:3px 2px 7px;
  scrollbar-width:thin;
}
.mission-lesson-controls-v038{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
.mission-lesson-controls-v038 span{
  min-width:86px;
  padding:8px 10px;
  border:2px solid #c9d6e8;
  border-radius:8px;
  background:#f7fbff;
  color:var(--quest-ink);
  font-size:.82rem;
  font-weight:1000;
  text-align:center;
  text-transform:none;
}
.mission-lesson-controls-v038 button{
  min-width:42px;
  min-height:40px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:#111827;
  color:#fff;
  font-weight:1000;
  cursor:pointer;
  box-shadow:3px 3px 0 rgba(31,44,68,.14);
}
.mission-lesson-controls-v038 button:disabled{
  border-color:#c9d6e8;
  background:#eef3f9;
  color:#94a3b8;
  cursor:not-allowed;
  box-shadow:none;
}
.mission-track-pill-v038{
  flex:0 0 auto;
  min-width:104px;
  padding:9px 12px;
  border:2px solid #c9d6e8;
  border-radius:8px;
  background:#fff;
  color:var(--quest-ink);
  text-align:left;
  box-shadow:3px 3px 0 rgba(31,44,68,.08);
  cursor:pointer;
}
.mission-track-pill-v038 strong,
.mission-track-pill-v038 span{
  display:block;
}
.mission-track-pill-v038 strong{
  margin:0;
  font-size:.92rem;
  line-height:1.1;
}
.mission-track-pill-v038 span{
  margin-top:3px;
  color:var(--quest-soft);
  font-size:.72rem;
  text-transform:none;
}
.mission-track-pill-v038.active{
  border-color:var(--quest-line);
  background:var(--quest-sun);
  box-shadow:3px 3px 0 rgba(31,44,68,.18);
}
.mission-fun-hud-v041{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 16px;
  padding:12px 14px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:linear-gradient(135deg,#111827 0%,#172642 100%);
  color:#f7fbff;
  box-shadow:5px 5px 0 rgba(31,44,68,.16);
}
.mission-guide-v041{
  display:flex;
  align-items:center;
  min-width:0;
  gap:12px;
}
.mission-guide-v041 > span{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:42px;
  height:42px;
  border:2px solid #ffcf34;
  border-radius:8px;
  background:#ff6b5f;
  color:#fff;
  font-weight:1000;
  box-shadow:3px 3px 0 rgba(0,0,0,.22);
}
.mission-guide-v041 strong,
.mission-guide-v041 p{
  display:block;
  margin:0;
}
.mission-guide-v041 strong{
  color:#fff;
  font-size:1rem;
}
.mission-guide-v041 p{
  margin-top:3px;
  color:#cbd5e1;
  font-size:.9rem;
  font-weight:800;
  line-height:1.35;
}
.mission-reward-v041{
  display:grid;
  grid-template-columns:auto auto;
  gap:7px;
  flex:0 0 auto;
  align-items:center;
}
.mission-reward-v041 span,
.mission-reward-v041 strong,
.mission-reward-v041 em{
  display:block;
  border:2px solid rgba(255,255,255,.18);
  border-radius:8px;
  padding:7px 10px;
  background:rgba(255,255,255,.08);
  color:#f7fbff;
  font-style:normal;
  font-weight:1000;
}
.mission-reward-v041 strong{
  background:#ffcf34;
  color:var(--quest-ink);
  border-color:#ffcf34;
}
.mission-reward-v041 em{
  grid-column:1 / -1;
  text-align:center;
  color:#cbd5e1;
}
.mission-fun-hud-v041.active{
  border-color:#62cb92;
  box-shadow:5px 5px 0 rgba(98,203,146,.28),0 0 0 4px rgba(98,203,146,.12) inset;
}
.mission-fun-hud-v041.active .mission-guide-v041 > span{
  background:#62cb92;
  color:#102018;
}
.quest-compact-shell-v036{
  display:grid;
  grid-template-columns:minmax(240px,.72fr) minmax(420px,1.22fr) minmax(250px,.78fr);
  gap:16px;
  align-items:stretch;
}
.quest-compact-brief-v036,
.quest-compact-run-v036,
.quest-compact-check-v036{
  min-width:0;
  padding:18px;
  border:2px solid var(--quest-line);
  border-radius:8px;
  background:rgba(255,255,255,.94);
  color:var(--quest-ink);
  box-shadow:6px 6px 0 rgba(31,44,68,.12);
}
.quest-compact-v036 .quest-compact-brief-v036,
.quest-compact-v036 .quest-compact-brief-v036 *,
.quest-compact-v036 .quest-compact-run-v036 label,
.quest-compact-v036 .quest-compact-check-v036,
.quest-compact-v036 .quest-compact-check-v036 *{
  text-shadow:none!important;
  opacity:1!important;
}
.quest-compact-v036 .quest-compact-brief-v036,
.quest-compact-v036 .quest-compact-brief-v036 h2,
.quest-compact-v036 .quest-compact-run-v036 label,
.quest-compact-v036 .quest-compact-check-v036{
  color:var(--quest-ink)!important;
}
.quest-compact-brief-v036 h2{
  margin:12px 0 10px;
  color:var(--quest-ink)!important;
  font-size:1.45rem;
  line-height:1.16;
}
.quest-compact-brief-v036 p{
  margin:0;
  color:var(--quest-soft)!important;
  font-weight:800;
  line-height:1.55;
}
.quest-compact-goal-v040,
.quest-compact-task-v040{
  margin-top:14px;
  padding:13px 14px;
  border:2px solid rgba(31,44,68,.16);
  border-radius:8px;
  background:#f7fbff;
}
.quest-compact-goal-v040{
  border-color:rgba(98,203,146,.38);
  background:#effdf5;
}
.quest-compact-task-v040{
  border-color:rgba(255,207,52,.48);
  background:#fff9dd;
}
.quest-compact-goal-v040 strong,
.quest-compact-goal-v040 span,
.quest-compact-task-v040 strong,
.quest-compact-task-v040 span{
  display:block;
}
.quest-compact-goal-v040 strong,
.quest-compact-task-v040 strong{
  color:var(--quest-ink);
  font-size:.86rem;
}
.quest-compact-goal-v040 span,
.quest-compact-task-v040 span{
  margin-top:5px;
  color:var(--quest-soft)!important;
  font-weight:800;
  line-height:1.45;
}
.quest-compact-rule-v036{
  margin-top:16px;
  padding:14px;
  border:2px solid rgba(31,44,68,.16);
  border-radius:8px;
  background:#fff7cf;
}
.quest-compact-rule-v036 strong,
.quest-compact-rule-v036 span{
  display:block;
}
.quest-compact-rule-v036 span{
  margin-top:5px;
  color:var(--quest-soft)!important;
  line-height:1.45;
}
.quest-compact-run-v036{
  display:grid;
  gap:14px;
}
.quest-compact-run-v036 .code-card-v022{
  padding:0;
  border:0;
  background:transparent;
}
.quest-compact-run-v036 textarea{
  min-height:220px;
}
.quest-compact-output-v036{
  display:grid;
  grid-template-columns:minmax(190px,.85fr) minmax(220px,1fr);
  gap:12px;
}
.quest-compact-output-v036 .robot-scene-v022{
  min-height:180px;
}
.quest-compact-output-v036 .quest-output-v022{
  min-height:180px;
  margin:0;
}
.quest-compact-check-v036{
  display:grid;
  align-content:start;
  gap:14px;
}
.quest-compact-check-v036 .quest-checklist-v022{
  margin:0;
}
.quest-compact-v036 .footer{
  display:none;
}
.quest-compact-v036 .quest-checklist-v022 li strong,
.quest-compact-v036 .quest-checklist-v022 li span{
  display:block;
}
.quest-compact-v036 .quest-checklist-v022 li span{
  margin-top:4px;
  color:#607089;
  font-size:.88rem;
  line-height:1.35;
}
@media(max-width:1100px){
  .quest-compact-shell-v036{
    grid-template-columns:1fr;
  }
  .quest-compact-output-v036{
    grid-template-columns:1fr;
  }
}
@media(max-width:720px){
  .quest-compact-main-v036{
    width:calc(100% - 28px);
    padding-top:16px;
  }
  .quest-compact-bar-v036{
    align-items:stretch;
    flex-direction:column;
  }
  .quest-compact-bar-v036 aside{
    width:100%;
  }
  .mission-track-strip-v038{
    align-items:stretch;
    flex-direction:column;
  }
  .mission-track-strip-v038 > div:first-child{
    min-width:0;
  }
  .mission-fun-hud-v041{
    align-items:stretch;
    flex-direction:column;
  }
  .mission-reward-v041{
    grid-template-columns:1fr 1fr;
  }
  .mission-lesson-controls-v038{
    width:100%;
  }
  .mission-lesson-controls-v038 span{
    flex:1;
  }
}

/* v0.6.8 unified home access and technology finale. */
.site-home-link-v068{color:var(--ink)!important;font-weight:950!important}
.coding-nav-toggle-v064{display:none!important}
.coding-nav-link-v064{padding-inline:12px!important}
.coding-mega-all-v064 b{display:none!important}
.home-cinematic .site-home-link-v068{color:#fff!important}
.home-cinematic .site-home-link-v068:hover{background:rgba(255,255,255,.1)!important}
.quest-player-page-v022 .site-home-link-v068{color:#fff!important}

.tech-proof-media{overflow:hidden;background:#070a11;perspective:1400px}
.tech-proof-media:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(90,207,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(90,207,255,.08) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,transparent 2%,#000 28%,#000 100%)}
.tech-proof-media:after{content:"";position:absolute;left:0;right:0;top:18%;height:1px;background:#ff5f57;box-shadow:0 180px 0 rgba(255,211,77,.45),0 360px 0 rgba(89,213,255,.35);opacity:.55}
.tech-backdrop-type{position:absolute;inset:8% 2% auto 2%;display:grid;gap:0;color:transparent;font-size:clamp(90px,15vw,230px);font-weight:1000;line-height:.72;letter-spacing:0;-webkit-text-stroke:1px rgba(255,255,255,.09)}
.tech-backdrop-type span:nth-child(2){padding-left:18vw;-webkit-text-stroke-color:rgba(255,211,77,.12)}
.tech-backdrop-type span:nth-child(3){padding-left:7vw;-webkit-text-stroke-color:rgba(89,213,255,.11)}
.tech-grid-floor{position:absolute;left:28%;right:-15%;bottom:-30%;height:70%;transform:rotateX(64deg);transform-origin:center top;background-image:linear-gradient(rgba(89,213,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(89,213,255,.18) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(#000,transparent 82%)}
.tech-rail{position:absolute;top:18%;bottom:16%;width:12px;display:flex;flex-direction:column;justify-content:space-between}
.tech-rail-left{left:4%}.tech-rail-right{right:4%}
.tech-rail i{display:block;width:12px;height:3px;background:#ffd34d;box-shadow:0 0 18px rgba(255,211,77,.7)}
.tech-rail i:nth-child(even){width:28px;background:#59d5ff;box-shadow:0 0 18px rgba(89,213,255,.6)}
.tech-rail-right i{margin-left:auto}
.tech-core-scene{position:absolute;right:4%;top:50%;width:min(54vw,720px);height:min(72vw,680px);transform:translateY(-50%);transform-style:preserve-3d;perspective:1300px}
.tech-core-frame{position:absolute;z-index:2;left:51%;top:48%;width:270px;height:350px;transform:translate(-50%,-50%) rotateX(-7deg) rotateY(-24deg) rotateZ(1deg);transform-style:preserve-3d;animation:tech-core-float 6s ease-in-out infinite}
.tech-core-face{position:absolute;border:1px solid rgba(130,224,255,.72);background:#0b1422;box-shadow:inset 0 0 48px rgba(52,164,216,.13),0 0 30px rgba(52,164,216,.16)}
.tech-core-front{inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#fff}
.tech-core-front:before,.tech-core-front:after{content:"";position:absolute;left:18px;right:18px;height:5px;background:repeating-linear-gradient(90deg,#59d5ff 0 20px,transparent 20px 30px)}
.tech-core-front:before{top:18px}.tech-core-front:after{bottom:18px;background:repeating-linear-gradient(90deg,#ffd34d 0 13px,transparent 13px 23px)}
.tech-core-front span{width:112px;height:112px;display:grid;place-items:center;border:1px solid #ffd34d;background:#111827;color:#ffd34d;font:1000 44px/1 ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:10px 10px 0 #ff5f57,-10px -10px 0 #59d5ff}
.tech-core-front small{font:900 11px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:2px}.tech-core-front b{color:#67d3a4;font:800 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace}
.tech-core-side{top:16px;right:-64px;width:64px;height:350px;transform:rotateY(90deg);transform-origin:left;background:#101c2d}
.tech-core-top{left:0;top:-64px;width:270px;height:64px;transform:rotateX(90deg);transform-origin:bottom;background:#14243a}
.tech-scan-ring{position:absolute;left:50%;top:50%;border:1px solid rgba(89,213,255,.44);border-radius:50%;transform:translate(-50%,-50%) rotateX(68deg);box-shadow:0 0 24px rgba(89,213,255,.12)}
.tech-scan-ring:before,.tech-scan-ring:after{content:"";position:absolute;width:8px;height:8px;background:#ffd34d;box-shadow:0 0 15px #ffd34d}
.tech-scan-ring:before{left:8%;top:18%}.tech-scan-ring:after{right:12%;bottom:14%;background:#ff5f57;box-shadow:0 0 15px #ff5f57}
.ring-one{width:78%;height:78%}.ring-two{width:98%;height:98%;border-style:dashed;transform:translate(-50%,-50%) rotateX(68deg) rotateZ(18deg)}
.tech-data{position:absolute;z-index:3;width:184px;display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;border-left:2px solid var(--tech-accent);padding:10px 12px;background:rgba(7,12,24,.82);color:#fff;font:800 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;backdrop-filter:blur(8px)}
.tech-data b{width:38px;height:38px;display:grid;place-items:center;background:var(--tech-accent);color:#07101b;font-size:13px}.tech-data span{letter-spacing:1px}.tech-data i{grid-column:2;height:2px;background:linear-gradient(90deg,var(--tech-accent) 62%,rgba(255,255,255,.14) 62%)}
.tech-data-python{--tech-accent:#67d3a4;right:6%;top:18%}.tech-data-scratch{--tech-accent:#ff7b72;right:2%;bottom:19%}.tech-data-ai{--tech-accent:#ffd34d;left:4%;top:28%}
.tech-proof-media + .cinematic-proof-shade{background:linear-gradient(90deg,rgba(7,10,17,.98) 0,rgba(7,10,17,.82) 35%,rgba(7,10,17,.12) 68%,rgba(7,10,17,.38) 100%),linear-gradient(0deg,rgba(7,10,17,.76),transparent 55%)}
@keyframes tech-core-float{0%,100%{transform:translate(-50%,-50%) rotateX(-7deg) rotateY(-24deg) rotateZ(1deg)}50%{transform:translate(-50%,calc(-50% - 18px)) rotateX(-4deg) rotateY(-15deg) rotateZ(-1deg)}}

@media(max-width:760px){
  .tech-backdrop-type{top:12%;font-size:82px;line-height:.78}
  .tech-core-scene{right:-18%;top:38%;width:118vw;height:118vw}
  .tech-core-frame{width:178px;height:230px}.tech-core-front span{width:76px;height:76px;font-size:30px;box-shadow:7px 7px 0 #ff5f57,-7px -7px 0 #59d5ff}.tech-core-side{right:-45px;width:45px;height:230px}.tech-core-top{top:-45px;width:178px;height:45px}
  .tech-data{width:144px;grid-template-columns:32px 1fr;padding:7px 8px}.tech-data b{width:30px;height:30px;font-size:10px}.tech-data-ai{left:10%;top:18%}.tech-data-python{right:12%;top:13%}.tech-data-scratch{right:4%;bottom:18%}
  .tech-proof-media + .cinematic-proof-shade{background:linear-gradient(0deg,rgba(7,10,17,.98) 0,rgba(7,10,17,.86) 38%,rgba(7,10,17,.06) 72%)}
}
@media(prefers-reduced-motion:reduce){.tech-core-frame{animation:none}}

/* v0.6.9 explicit home return for standalone and redirect pages. */
.home-return-v069{min-height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #52617d;border-radius:6px;padding:0 14px;background:#10192b;color:#fff!important;font-size:13px;font-weight:900;text-decoration:none}
.home-return-v069:hover,.home-return-v069:focus-visible{border-color:#ffd34d;background:#ffd34d;color:#111827!important;outline:none}

/* 0.7.2 compact mobile navigation */
.site-header .header-actions>.mobile-nav-button-v072{display:none;width:44px;height:44px;padding:0;border:1px solid currentColor;border-radius:6px;background:transparent;color:inherit;box-shadow:none;place-items:center}
.mobile-nav-button-v072 span,.mobile-nav-button-v072 span:before,.mobile-nav-button-v072 span:after{display:block;width:20px;height:2px;background:currentColor;content:"";transition:transform .18s ease,opacity .18s ease}
.mobile-nav-button-v072 span{position:relative}
.mobile-nav-button-v072 span:before{position:absolute;top:-6px;left:0}
.mobile-nav-button-v072 span:after{position:absolute;top:6px;left:0}
.mobile-nav-open-v072 .mobile-nav-button-v072 span{background:transparent}
.mobile-nav-open-v072 .mobile-nav-button-v072 span:before{top:0;transform:rotate(45deg)}
.mobile-nav-open-v072 .mobile-nav-button-v072 span:after{top:0;transform:rotate(-45deg)}
@media(max-width:760px){
  .site-header .header-actions>.mobile-nav-button-v072{display:grid;flex:0 0 44px}
  .site-header>.header-actions{max-width:min(62vw,260px)}
  .site-header>.header-actions>a{min-width:0;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .site-header>nav.site-primary-nav-v064.site-primary-nav-v065{display:none!important;grid-column:1/-1;grid-row:2;width:100%;grid-template-columns:1fr;align-items:stretch;gap:2px;overflow:visible!important;padding:8px 0 2px;border-top:1px solid rgba(120,140,175,.35)}
  .site-header.mobile-nav-open-v072>nav.site-primary-nav-v064.site-primary-nav-v065{display:grid!important}
  .site-header>nav.site-primary-nav-v065>a,.site-header>nav.site-primary-nav-v065>.nav-menu-v065{width:100%;display:block}
  .site-header>nav.site-primary-nav-v065 a,.site-header>nav.site-primary-nav-v065 .coding-nav-link-v064{width:100%;min-height:42px!important;justify-content:flex-start;padding:0 10px!important;font-size:14px!important}
  .site-header>nav.site-primary-nav-v065 .coding-mega-v064{display:none!important}
}

/* Teacher-supported offer stays separate from self-study plan rendering. */
#pricingPlans{grid-template-columns:repeat(4,minmax(0,1fr))}
.live-offer-v082{width:100%;margin:20px 0 0;padding:64px max(24px,calc((100% - 1180px)/2));display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:center;background:#101827;color:#f7f9fc;border-top:1px solid #31405c}
.live-offer-v082>div:first-child>span{display:block;margin-bottom:12px;color:#ffd34d;font-size:12px;font-weight:950}
.live-offer-v082 h2{margin:0;font-size:42px;line-height:1.1;letter-spacing:0}
.live-offer-v082 p{max-width:670px;color:#b7c2d4;line-height:1.65}
.live-offer-v082>div:last-child{display:grid;justify-items:start;gap:10px;border-left:1px solid #45536d;padding-left:42px}
.live-offer-v082 strong{font-size:56px;line-height:1;letter-spacing:0}
.live-offer-v082 small{color:#b7c2d4}
.live-offer-v082 a{min-height:48px;display:inline-flex;align-items:center;justify-content:center;margin-top:10px;border:1px solid #ffd34d;border-radius:6px;padding:0 18px;background:#ffd34d;color:#111624;font-weight:950;box-shadow:0 5px 0 #927617}
@media(max-width:1100px){#pricingPlans{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){#pricingPlans{grid-template-columns:1fr}.live-offer-v082{grid-template-columns:1fr;gap:32px;padding-top:48px;padding-bottom:48px}.live-offer-v082 h2{font-size:34px}.live-offer-v082>div:last-child{border-left:0;border-top:1px solid #45536d;padding:28px 0 0}.live-offer-v082 strong{font-size:48px}}
