:root{--orange:#fd5200;--blaze:#fe621d;--rusty:#af3800;--brand:#fd5200;--brand-light:#fe621d;--brand-dark:#af3800;--brand-glow:#fd52001f;--teal:#00b8a9;--teal-light:#33c9bc;--teal-glow:#00b8a91f;--purple:#7c3aed;--purple-light:#9f68ff;--sky:#0891b2;--green:#16a34a;--amber:#d97706;--bg:#f6f4f1;--bg2:#efecea;--surface:#fff;--surface2:#faf9f7;--surface3:#f0eeeb;--border:#1a120814;--border2:#1a120824;--border-brand:#fd520038;--text:#14100c;--text2:#3a322c;--muted:#6b6158;--subtle:#9a8f84;--shadow-xs:0 1px 2px #14100c0a;--shadow-sm:0 2px 8px #14100c0f;--shadow:0 4px 16px #14100c14;--shadow-md:0 8px 28px #14100c1a;--shadow-lg:0 16px 40px #14100c1f;--shadow-brand:0 6px 20px #fd520038;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--text-2xs:10px;--text-xs:12px;--text-sm:13px;--text-base:15px;--text-md:16px;--text-lg:18px;--text-xl:22px;--display-sm:clamp(20px, 2.5vw, 22px);--display-md:clamp(22px, 3vw, 26px);--display-lg:clamp(26px, 3.5vw, 32px);--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--icon-xl:28px;--bp-sm:480px;--bp-md:768px;--bp-lg:960px;--bp-xl:1100px;--r-xs:6px;--r-sm:8px;--r:10px;--r-lg:14px;--r-xl:16px;--r-2xl:20px;--font:"Nunito", system-ui, sans-serif;--display:"Nunito", system-ui, sans-serif;--mono:"JetBrains Mono", monospace;--page-max:min(1360px, 100%);--page-pad-x:clamp(14px, 2.5vw, 28px);--nav-h:52px;--nav-mobile-dock:60px;--scrollbar:#fd5200;--nav-surface:#ffffffd1;--nav-surface-mobile:#ffffffe0}[data-theme=dark]{--bg:#121110;--bg2:#1a1816;--surface:#1f1d1b;--surface2:#262422;--surface3:#302e2c;--border:#ffffff14;--border2:#ffffff24;--border-brand:#fd520052;--text:#f5f3f0;--text2:#d4d0ca;--muted:#9a948c;--subtle:#6b6560;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 2px 8px #00000059;--shadow:0 4px 16px #0006;--shadow-md:0 8px 28px #00000073;--shadow-lg:0 16px 40px #00000080;--shadow-brand:0 6px 20px #fd52004d;--nav-surface:#f6f4f1f2;--nav-surface-mobile:#f6f4f1f2;--nav-fg:#14100c;--nav-fg-2:#3a322c;--nav-fg-muted:#6b6158;--nav-fg-subtle:#9a8f84;--nav-chip-surface:#fff;--nav-chip-surface-2:#faf9f7;--nav-border:#1a120814}@keyframes cqFadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes cqPopIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes cqBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes cqRocket{0%{transform:translateY(6px)rotate(-2deg)}35%{transform:translate(8px,-6px)rotate(2deg)}70%{transform:translate(-6px,-14px)rotate(-2deg)}to{transform:translateY(6px)rotate(-2deg)}}@keyframes cqPulse{0%,to{box-shadow:0 0 #fd520047}50%{box-shadow:0 0 0 8px #fd520000}}.animate-fade-up{animation:.32s cubic-bezier(.22,1,.36,1) both cqFadeUp}.animate-pop-in{animation:.28s cubic-bezier(.22,1,.36,1) both cqPopIn}.animate-bounce{animation:2.5s ease-in-out infinite cqBounce}.animate-rocket{animation:2.4s ease-in-out infinite cqRocket}html[data-focus="1"] #beta-banner,html[data-focus="1"] .landing-page nav,html[data-focus="1"] .landing-page footer,html[data-focus="1"] .upgrade-nav{display:none!important}html[data-focus="1"] .landing-page{scroll-padding-top:12px}.cq-focus-toolbar{z-index:13001;align-items:center;gap:6px;display:flex;position:fixed;top:12px;right:12px}.cq-focus-exit-btn,.cq-open-lab-btn,.tb-open-lab{color:var(--text,#1a1a1a);font-family:var(--font,"Nunito", sans-serif);cursor:pointer;backdrop-filter:blur(8px);background:#fffffff5;border:1.5px solid #0000001f;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:800;line-height:1;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex;box-shadow:0 4px 16px #0000001f}.cq-open-lab-btn{color:#007a70;border-color:#00b8a947}.cq-focus-exit-btn:hover,.cq-open-lab-btn:hover,.tb-open-lab:hover{background:#fff;transform:translateY(-1px);box-shadow:0 6px 20px #00000029}.cq-focus-exit-btn:active,.cq-open-lab-btn:active,.tb-open-lab:active{transform:translateY(0)}.cq-focus-exit-btn svg{opacity:.85;flex-shrink:0}.open-lab-icon{flex-shrink:0;font-size:14px;line-height:1}.tb-open-lab[hidden],.cq-open-lab-btn[hidden]{display:none!important}@media (width<=480px){.cq-focus-toolbar{gap:4px;top:10px;right:10px}.cq-focus-exit-btn,.cq-open-lab-btn,.tb-open-lab{padding:8px 10px;font-size:11px}.cq-focus-exit-btn .open-lab-label,.cq-open-lab-btn .open-lab-label,.tb-open-lab .open-lab-label,.cq-focus-exit-btn>span:not(.open-lab-icon){display:none}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-padding-top:calc(var(--nav-h) + 8px)}body{font-family:var(--font);background:var(--bg);color:var(--text);background-image:radial-gradient(90% 60% at 50% -30%,#fd52000d,#0000 55%),radial-gradient(50% 40% at 100% 0,#00b8a90a,#0000 50%);min-height:100vh;margin:0;padding:0;line-height:1.45}[data-theme=dark] body{background-image:none}@media (width<=700px){body{padding-bottom:calc(var(--nav-mobile-dock) + 12px)}}h1,h2,h3,.display{font-family:var(--display);letter-spacing:-.03em}.skip-link{z-index:10000;background:var(--brand);color:#fff;border-radius:var(--r);padding:10px 16px;font-size:13px;font-weight:700;text-decoration:none;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.page-shell{width:100%;max-width:var(--page-max);padding:var(--space-3) var(--page-pad-x) var(--space-5);margin:0 auto}@media (width<=700px){.page-shell{padding:var(--space-2) 12px var(--space-4)}}.page-shell--narrow{max-width:820px;margin:0 auto}.section-eyebrow{text-transform:uppercase;letter-spacing:.11em;color:var(--brand);background:#fd520012;border:1px solid #fd520024;border-radius:99px;align-items:center;gap:5px;padding:3px 10px;font-size:10px;font-weight:800;display:inline-flex}.section-title{font-family:var(--display);letter-spacing:-.02em;color:var(--text);font-size:16px;font-weight:800}.page-head{margin-bottom:var(--space-4);flex-direction:column;gap:4px;display:flex}.page-head h1,.page-head .display{font-size:var(--display-sm);letter-spacing:-.03em;margin:0;font-weight:900;line-height:1.15}.page-head--lg h1,.page-head--lg .display{font-size:var(--display-md)}.page-sub{font-size:var(--text-sm);color:var(--muted);margin:0;font-weight:600;line-height:1.45}.section-head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.stack{flex-direction:column;display:flex}.stack-1{gap:var(--space-1)}.stack-2{gap:var(--space-2)}.stack-3{gap:var(--space-3)}.stack-4{gap:var(--space-4)}.cluster{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.mt-field{margin-top:var(--space-4)}.mt-field-sm{margin-top:var(--space-3)}.mt-actions{margin-top:var(--space-4)}.mt-section{margin-top:var(--space-3)}.icon-tile{border-radius:var(--r);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.icon-tile .cq-icon{color:#fff}.icon-tile--sm{border-radius:var(--r-sm);width:36px;height:36px}.icon-tile--lg{border-radius:var(--r-lg);width:52px;height:52px}.icon-tile--coding{background:linear-gradient(135deg, #ff7043, var(--brand))}.icon-tile--math{background:linear-gradient(135deg, var(--purple-light), var(--purple))}.icon-tile--science{background:linear-gradient(135deg, var(--teal-light), var(--teal));box-shadow:0 6px 20px #00b8a938}.icon-tile--badges{background:linear-gradient(135deg, #fbbf24, var(--amber))}.icon-tile--reports{background:linear-gradient(135deg, var(--teal-light), var(--teal))}.icon-tile--leaderboard{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.icon-tile--family{background:linear-gradient(135deg, var(--teal-light), var(--teal))}.icon-tile--quest-pal{background:var(--surface);color:#007a70;box-shadow:var(--shadow-sm);border:2px solid #00b8a959}.icon-tile--quest-pal .cq-icon{color:#007a70}.icon-tile--school{background:linear-gradient(135deg, var(--sky), #0369a1)}.icon-tile--teachers{background:linear-gradient(135deg, #a78bfa, var(--purple))}.icon-tile--teachers .cq-icon{color:#fff}.icon-tile--help{background:linear-gradient(135deg, var(--blaze), var(--brand))}.icon-tile--unlock{background:linear-gradient(135deg, var(--purple-light), var(--purple))}.icon-tile--clock{background:linear-gradient(135deg, #fbbf24, var(--amber))}.icon-tile--graduation{background:linear-gradient(135deg, var(--teal-light), var(--teal))}.icon-tile--key{background:linear-gradient(135deg, var(--purple-light), var(--purple))}.card--accent-teal{background:linear-gradient(135deg, #00b8a90f, var(--surface));border-color:#00b8a938}.card--accent-brand{background:linear-gradient(135deg, #fd52000d, var(--surface));border-color:#fd520033}.card--accent-purple{background:linear-gradient(135deg, #6d28d90d, var(--surface));border-color:#6d28d924}.btn{font-family:var(--font);border-radius:var(--r);cursor:pointer;white-space:nowrap;user-select:none;border:none;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:700;text-decoration:none;transition:all .18s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;transform:none}.btn{min-height:40px}.btn-sm{min-height:36px}.btn-xs{min-height:32px}.btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.btn.is-loading{pointer-events:none;position:relative;color:#0000!important}.btn.is-loading:after{content:"";border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.65s linear infinite btnSpin;position:absolute}.btn-secondary.is-loading:after,.btn-ghost.is-loading:after{border-color:#14100c26;border-top-color:var(--brand)}@keyframes btnSpin{to{transform:rotate(360deg)}}.btn-primary{background:linear-gradient(145deg, var(--brand-light), var(--brand));color:#fff;box-shadow:var(--shadow-brand)}.btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-secondary{background:var(--surface);color:var(--text2);border:1px solid var(--border2);box-shadow:var(--shadow-xs)}.btn-secondary:hover{border-color:var(--brand);color:var(--brand)}.btn-ghost{color:var(--muted);border:1px solid var(--border);background:0 0}.btn-ghost:hover{background:var(--surface2);color:var(--text)}.btn-teal{background:linear-gradient(145deg, var(--teal-light), var(--teal));color:#fff}.btn-lg{border-radius:var(--r-lg);padding:11px 22px;font-size:14px}.btn-sm{padding:6px 12px;font-size:12px}.btn-xs{padding:4px 10px;font-size:11px}.btn-full{width:100%}.card{-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-xs);background:#ffffffe0}[data-theme=dark] .card{background:#1f1d1beb}.card-p{padding:var(--space-4)}.card-lift{transition:box-shadow .2s,transform .2s,border-color .2s}.card-lift:hover{box-shadow:var(--shadow-md);border-color:var(--border2);transform:translateY(-2px)}.input{border-radius:var(--r);border:1px solid var(--border2);background:var(--surface);width:100%;color:var(--text);font-family:var(--font);outline:none;padding:10px 12px;font-size:15px;font-weight:500;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--subtle)}.input:focus,.input:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-glow)}.input--error,.input[aria-invalid=true]{border-color:#b91c1c;box-shadow:0 0 0 3px #dc26261f}select.input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b6280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text2);font-size:13px;font-weight:700}.field-hint{font-size:var(--text-xs);color:var(--subtle);font-weight:600}.field-error{font-size:var(--text-xs);color:#b91c1c;margin-top:2px;font-weight:700}.field label .req{color:var(--brand);margin-left:2px}.form-actions{align-items:center;gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.form-actions .btn-full{flex:auto}.err-box,.alert-error{padding:var(--space-3) var(--space-3);border-radius:var(--r);color:#b91c1c;font-size:var(--text-sm);background:#dc26260f;border:1px solid #dc262629;font-weight:600;line-height:1.45}.alert-success{padding:var(--space-3);border-radius:var(--r);color:#15803d;font-size:var(--text-sm);background:#16a34a0f;border:1px solid #16a34a29;font-weight:600}.empty-state{text-align:center;padding:var(--space-7) var(--space-4);justify-content:center;align-items:center;gap:var(--space-3);flex-direction:column;max-width:28rem;margin:0 auto;display:flex}.empty-state-icon{border-radius:var(--r-xl);background:var(--surface2);border:1px solid var(--border);width:56px;height:56px;box-shadow:var(--shadow-xs);justify-content:center;align-items:center;font-size:26px;display:flex}.empty-state h2{font-size:var(--display-sm);letter-spacing:-.03em;margin:0;font-weight:900}.empty-state p{font-size:var(--text-sm);color:var(--muted);margin:0;font-weight:600;line-height:1.55}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}a:focus-visible,button:focus-visible,[role=button]:focus-visible,summary:focus-visible,.pf-learner:focus-visible,.pf-slot-add:focus-visible,.pf-resource-link:focus-visible,.pf-panel-foot-btn:focus-visible,.pick-card:focus-visible,.av-btn:focus-visible,.av-pick-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.badge{border-radius:99px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.badge-brand{color:var(--brand);background:#fd520014;border:1px solid #fd520029}.badge-teal{color:#007a70;background:#00b8a914;border:1px solid #00b8a92e}.badge-green{color:#15803d;background:#16a34a14;border:1px solid #16a34a2e}.badge-amber{color:#92400e;background:#d9770614;border:1px solid #d977062e}.badge-gray{background:var(--surface3);color:var(--muted);border:1px solid var(--border2)}.badge-red{color:#b91c1c;background:#dc262614;border:1px solid #dc262629}.badge-purple{color:#6d28d9;background:#6d28d914;border:1px solid #6d28d92e}.prog-track{background:var(--surface3);border-radius:99px;height:6px;overflow:hidden}.prog-fill{background:linear-gradient(90deg, var(--brand), var(--teal));border-radius:99px;height:100%;transition:width .8s cubic-bezier(.16,1,.3,1)}.skeleton{background:linear-gradient(90deg, var(--surface2) 25%, var(--surface3) 50%, var(--surface2) 75%);border-radius:var(--r-sm);background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-bg{z-index:9000;-webkit-backdrop-filter:blur(6px);background:#0f0d128c;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.modal-bg.is-open{display:flex!important}.modal-bg .modal-box{background:var(--surface);border-radius:var(--r-xl);border:1px solid var(--border2);flex-direction:column;flex-shrink:0;width:min(480px,100vw - 48px);max-height:min(85vh,680px);margin:auto;animation:.22s cubic-bezier(.16,1,.3,1) both mdIn;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 64px #0f0d1247,0 0 0 1px #ffffff0a}.modal-bg .modal-box--sm{width:min(480px,100vw - 48px);max-height:min(85vh,640px);overflow-y:auto}.modal-bg .modal-box--md{width:min(640px,100vw - 48px);max-height:min(90vh,820px);overflow-y:auto}.modal-bg .modal-box--lg{width:min(960px,100vw - 64px);height:min(720px,100vh - 64px);max-height:min(88vh,720px)}.modal-bg .modal-box--xl{width:min(1400px,100vw - 32px);height:calc(100vh - 32px);max-height:calc(100vh - 32px)}.modal-bg:has(.modal-box--xl){align-items:stretch;padding:16px}.modal-bg:has(.modal-box--xl) .modal-box--xl{align-self:center;margin:auto}.modal-bg .modal-box--lg .lm-shell,.modal-bg .modal-box--lg .mm-shell,.modal-bg .modal-box--xl .lm-shell,.modal-bg .modal-box--xl .mm-shell,.modal-bg .modal-box--xl .sm-shell{grid-template-columns:280px 1fr;height:100%;min-height:0;display:grid;overflow:hidden}.modal-bg .modal-box--xl .lm-shell,.modal-bg .modal-box--xl .mm-shell,.modal-bg .modal-box--xl .sm-shell{grid-template-columns:300px 1fr}.modal-body{padding:24px 28px 28px;overflow-y:auto}@media (width<=768px){.modal-bg{padding:16px}.modal-bg:has(.modal-box--xl){padding:8px}.modal-bg .modal-box--lg,.modal-bg .modal-box--xl{width:calc(100vw - 16px);height:calc(100vh - 16px);max-height:calc(100vh - 16px)}.modal-bg .modal-box--lg .lm-shell,.modal-bg .modal-box--lg .mm-shell,.modal-bg .modal-box--xl .lm-shell,.modal-bg .modal-box--xl .mm-shell,.modal-bg .modal-box--xl .sm-shell{grid-template-columns:1fr}.modal-bg .lm-sidebar,.modal-bg .mm-sidebar,.modal-bg .sm-sidebar{display:none}}@keyframes mdIn{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.toast-host{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;width:max-content;max-width:92vw;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{border-radius:var(--r);box-shadow:var(--shadow-lg);background:var(--text);color:var(--surface);align-items:center;gap:10px;padding:11px 18px;font-size:13px;font-weight:600;animation:.2s cubic-bezier(.16,1,.3,1) both toastIn;display:flex}.toast.ok{color:#dcfce7;background:#14532d}.toast.err{color:#fee2e2;background:#7f1d1d}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.divider{background:var(--border);height:1px}.notice-bar{justify-content:center;align-items:center;gap:8px;padding:7px 16px;font-size:12px;font-weight:600;display:flex}.notice-bar a{margin-left:4px;font-weight:800;text-decoration:underline}.notice-trial{color:var(--brand);background:#fd52000f;border-bottom:1px solid #fd52001f}.notice-expired{color:#b91c1c;background:#dc26260f;border-bottom:1px solid #dc26261f}.notice-offline{color:#1d4ed8;background:#3b82f614;border-bottom:1px solid #3b82f624}.notice-offline--ready{color:#007a70;background:#00b8a914;border-bottom:1px solid #00b8a924}[data-theme=dark] .notice-offline{color:#93c5fd}[data-theme=dark] .notice-offline--ready{color:#5eead4}.offline-loader-overlay{z-index:9500;backdrop-filter:blur(8px);background:#0f0d1285;justify-content:center;align-items:center;padding:24px;animation:.28s both offlineLoaderIn;display:flex;position:fixed;inset:0}.offline-loader-card{border-radius:var(--r-xl,20px);background:var(--surface);border:1px solid var(--border2);text-align:center;flex-direction:column;align-items:center;gap:14px;width:min(320px,100%);padding:32px 28px 28px;display:flex;box-shadow:0 24px 64px #00000038}.offline-loader-ring{border:4px solid #fd520024;border-top-color:var(--brand);border-right-color:var(--accent,#00b8a9);border-radius:50%;width:72px;height:72px;animation:.9s linear infinite offlineLoaderSpin}.offline-loader-ring.is-done{border-color:#00b8a9 #34d399 #00b8a940 #00b8a940;animation:none;position:relative}.offline-loader-ring.is-done:after{content:"✓";color:#007a70;justify-content:center;align-items:center;font-size:28px;font-weight:900;display:flex;position:absolute;inset:0}.offline-loader-ring.is-error{border-color:#ef4444 #f97316 #dc262633 #dc262633;animation:none}.offline-loader-title{color:var(--text);letter-spacing:-.02em;margin:0;font-size:17px;font-weight:900}.offline-loader-detail{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.offline-loader-pct{font-family:var(--mono,ui-monospace, monospace);color:var(--brand);margin:0;font-size:14px;font-weight:800}.offline-loader-overlay--done .offline-loader-pct{color:#007a70}.offline-loader-overlay--error .offline-loader-pct{display:none}body.offline-loader-active{overflow:hidden}@keyframes offlineLoaderSpin{to{transform:rotate(360deg)}}@keyframes offlineLoaderIn{0%{opacity:0}to{opacity:1}}.offline-progress{border-radius:var(--radius-lg,14px);box-shadow:var(--shadow-xs);background:linear-gradient(135deg,#fd52000f 0%,#00b8a90f 100%);border:1px solid #fd520024;margin-top:14px;padding:14px 16px}.offline-progress--float{z-index:9000;width:min(420px,100vw - 32px);box-shadow:var(--shadow-md);margin:0;animation:.45s cubic-bezier(.22,1,.36,1) both offlineProgressIn;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.offline-progress-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.offline-progress-title{color:var(--text);letter-spacing:-.01em;font-size:13px;font-weight:800}.offline-progress-pct{font-family:var(--mono,ui-monospace, monospace);color:var(--brand);text-align:right;min-width:3ch;font-size:12px;font-weight:800}.offline-progress-track{background:#0f172a14;border-radius:999px;height:10px;position:relative;overflow:hidden}[data-theme=dark] .offline-progress-track{background:#ffffff14}.offline-progress-fill{z-index:1;border-radius:inherit;background:linear-gradient(90deg, var(--brand) 0%, #ff8a4c 42%, var(--accent,#00b8a9) 100%);width:0%;height:100%;transition:width .42s cubic-bezier(.22,1,.36,1);position:relative;box-shadow:0 0 12px #fd520059}.offline-progress-shine{z-index:2;pointer-events:none;background:linear-gradient(110deg,#0000 0%,#ffffff26 45%,#ffffff8c 50%,#ffffff26 55%,#0000 100%);animation:1.8s ease-in-out infinite offlineProgressShine;position:absolute;inset:0;transform:translate(-120%)}.offline-progress-detail{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.45}.offline-progress--indeterminate .offline-progress-fill{animation:1.35s ease-in-out infinite offlineProgressPulse;width:38%!important}.offline-progress--done{background:linear-gradient(135deg,#00b8a914 0%,#00b8a90a 100%);border-color:#00b8a947}.offline-progress--done .offline-progress-fill{background:linear-gradient(90deg,#00b8a9 0%,#34d399 100%);box-shadow:0 0 14px #00b8a959}.offline-progress--done .offline-progress-pct{color:#007a70}.offline-progress--error{background:#dc26260d;border-color:#dc262638}.offline-progress--error .offline-progress-fill{background:linear-gradient(90deg,#ef4444 0%,#f97316 100%)}@keyframes offlineProgressIn{0%{opacity:0;transform:translate(-50%)translateY(12px)scale(.98)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes offlineProgressShine{0%{transform:translate(-120%)}to{transform:translate(220%)}}@keyframes offlineProgressPulse{0%,to{opacity:.85;transform:translate(0)}50%{opacity:1;transform:translate(145%)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.page-fade,.animate-fade-up,.animate-pop-in,.animate-bounce,.animate-rocket,.modal-bg .modal-box,.btn.is-loading:after{animation:none}.offline-progress-fill{transition:none}.offline-progress-shine,.offline-progress--indeterminate .offline-progress-fill,.offline-progress--float,.offline-loader-ring{animation:none}}.page-fade{animation:.2s both pageFade}@keyframes pageFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (width<=768px){.hide-mobile{display:none!important}}@media (width>=769px){.show-mobile-only{display:none!important}}@media print{.no-print{display:none!important}}*{scrollbar-width:thick;scrollbar-color:var(--brand) var(--surface3)}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:var(--surface3);border-radius:99px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--blaze), var(--orange));border:2px solid var(--surface3);border-radius:99px;min-height:48px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg, var(--brand), var(--brand-dark))}::-webkit-scrollbar-corner{background:var(--surface3)}.cq-avatar{object-fit:cover;background:var(--surface2);border:2px solid var(--border);border-radius:50%;flex-shrink:0;display:block;box-shadow:0 2px 10px #0f172a1a}.cq-avatar--sm{width:32px;height:32px}.cq-avatar--md{width:52px;height:52px}.cq-avatar--lg{width:72px;height:72px}.avatar-picker-grid{grid-template-columns:repeat(6,1fr);gap:10px;margin-top:6px;display:grid}@media (width<=480px){.avatar-picker-grid{grid-template-columns:repeat(4,1fr)}}.av-pick-btn,.av-btn{border:2px solid var(--border2);background:var(--surface2);border-radius:var(--r-lg,12px);cursor:pointer;aspect-ratio:1;justify-content:center;align-items:center;padding:6px;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .15s,background .15s;display:flex;position:relative}.av-pick-btn:hover,.av-btn:hover{border-color:var(--brand);transform:scale(1.04)}.av-pick-btn .cq-avatar,.av-btn .cq-avatar{width:100%;max-width:52px;height:100%;max-height:52px;box-shadow:none;border-color:#0000}.av-pick-btn.is-selected,.av-pick-btn.sel,.av-btn.is-selected,.av-btn.sel{border-color:var(--brand);background:#fd52001a;transform:scale(1.02);box-shadow:0 0 0 3px #fd520047}.av-pick-btn.is-selected:after,.av-pick-btn.sel:after,.av-btn.is-selected:after,.av-btn.sel:after{content:"✓";background:var(--brand);color:#fff;text-align:center;pointer-events:none;border-radius:50%;width:18px;height:18px;font-size:10px;font-weight:800;line-height:18px;position:absolute;top:-5px;right:-5px;box-shadow:0 2px 6px #fd520059}.teacher-view-banner{background:linear-gradient(135deg,#7c3aed14,#00b8a90f);border:1px solid #7c3aed40;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:12px 14px;display:flex}.teacher-view-banner-icon{flex-shrink:0;font-size:22px;line-height:1}.teacher-view-banner strong{margin-bottom:2px;font-size:13px;display:block}.teacher-view-banner span{color:var(--muted);font-size:12px;font-weight:600;line-height:1.45;display:block}.teacher-key{background:#7c3aed0d;border:1px dashed #7c3aed59;border-radius:10px;margin-top:12px;padding:12px 14px}.teacher-key-head{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.teacher-key-badge{text-transform:uppercase;letter-spacing:.05em;color:#fff;background:#7c3aed;border-radius:99px;padding:2px 8px;font-size:10px;font-weight:800}.teacher-key-explain{color:var(--text2);margin:8px 0 0;font-size:12px;font-weight:600;line-height:1.5}.cq-logo[data-astro-cid-f7espo7c]{border-radius:22%;flex-shrink:0;display:block}.splash-overlay[data-astro-cid-k3yioq5y]{z-index:20000;background:linear-gradient(135deg,#fd5200 0%,#fe621d 60%,#ff8c42 100%);flex-direction:column;justify-content:center;align-items:center;transition:opacity .6s;display:none;position:fixed;inset:0;overflow:hidden}.splash-overlay[data-astro-cid-k3yioq5y].is-active{display:flex}.splash-content[data-astro-cid-k3yioq5y]{text-align:center;color:#fff;z-index:1;width:100%;max-width:560px;padding:24px;position:relative}.splash-rocket[data-astro-cid-k3yioq5y]{margin-bottom:16px;font-size:90px;line-height:1;animation:2.4s ease-in-out infinite rocketFlight,.7s ease-in-out infinite rocketShake;display:block}.splash-title[data-astro-cid-k3yioq5y]{letter-spacing:-1px;color:#fff;margin:0 0 8px;font-size:clamp(36px,8vw,52px);font-weight:900}.splash-tagline[data-astro-cid-k3yioq5y]{opacity:.92;margin:0 0 20px;font-size:17px;font-weight:600}.splash-home-pill[data-astro-cid-k3yioq5y]{letter-spacing:.4px;background:#ffffff2e;border:1.5px solid #ffffff59;border-radius:99px;margin-bottom:6px;padding:5px 18px;font-size:12px;font-weight:800;display:inline-block}.splash-progress[data-astro-cid-k3yioq5y]{background:#ffffff4d;border-radius:99px;width:220px;height:8px;margin:16px auto;overflow:hidden}.splash-progress-bar[data-astro-cid-k3yioq5y]{background:#fff;border-radius:99px;width:0%;height:100%;transition:width 80ms linear}.splash-tip[data-astro-cid-k3yioq5y]{opacity:.8;min-height:20px;margin:10px 0 0;font-size:13px;line-height:1.5}.splash-begin-btn[data-astro-cid-k3yioq5y]{color:#fd5200;font-family:var(--font);cursor:pointer;background:#fff;border:none;border-radius:50px;margin-top:18px;padding:14px 44px;font-size:19px;font-weight:900;transition:transform .2s,box-shadow .2s;box-shadow:0 8px 24px #00000040}.splash-begin-btn[data-astro-cid-k3yioq5y]:hover{transform:scale(1.06);box-shadow:0 14px 32px #0000004d}body.splash-active .topbar[data-astro-cid-k3yioq5y],body.splash-active .mobile-nav[data-astro-cid-k3yioq5y],body.splash-active #beta-banner[data-astro-cid-k3yioq5y]{display:none!important}@keyframes rocketShake{0%,to{transform:translate(0)}25%{transform:translate(-2px,2px)}75%{transform:translate(2px,-2px)}}@keyframes rocketFlight{0%{transform:translateY(10px)rotate(-2deg)}35%{transform:translate(12px,-10px)rotate(2deg)}70%{transform:translate(-10px,-22px)rotate(-2deg)}to{transform:translateY(10px)rotate(-2deg)}}
