@import"https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,500&family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap";:root{--paper: #faf7f1;--paper-raised: #ffffff;--ink: #1c2233;--ink-soft: #454b5c;--muted: #767c8c;--hairline: #e3ddd0;--hairline-strong: #d1c9b8;--indigo: #3b4a8c;--indigo-dark: #2a3768;--indigo-tint: #eceffa;--gold: #d99a3d;--gold-dark: #a9701f;--gold-tint: #faf0dd;--sage: #5f8f74;--sage-tint: #e6f0e9;--surface: #f2ede1;--accent-blue: #e6f1fb;--accent-teal: #e1f5ee;--accent-coral: #faece7;--accent-amber: #faeeda;--accent-purple: #eeedfe;--accent-pink: #fbeaf0;--success: #0f6e56;--success-bg: #eaf3de;--danger: #993c1d;--danger-bg: #faece7;--font-display: "Fraunces", Georgia, serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Space Mono", ui-monospace, monospace;--shadow-card: 0 1px 2px rgba(28, 34, 51, .04), 0 4px 16px rgba(28, 34, 51, .06);--text-xs: 11px;--text-sm: 12.5px;--text-base: 14px;--text-lg: 17px;--text-xl: 22px;--text-2xl: 30px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-pill: 999px;--measure: 1040px}*{box-sizing:border-box}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:500;margin:0;color:var(--ink)}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}.shell-main{flex:1;min-width:0;padding:2rem 1.5rem;max-width:var(--measure)}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes skeletonPulse{0%,to{opacity:.6}50%{opacity:1}}.skeleton-row{height:66px;border-radius:var(--radius-md);background:var(--hairline);animation:skeletonPulse 1.1s ease-in-out infinite}@keyframes resultPop{0%{opacity:0;transform:scale(.85)}60%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes confettiFall{0%{opacity:1;transform:translateY(-10px) rotate(0)}to{opacity:0;transform:translateY(140px) rotate(360deg)}}@keyframes resultShake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}@keyframes voiceBarPulse{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}.voice-guide-bar{animation:voiceBarPulse .9s ease-in-out infinite;animation-delay:calc(var(--i, 0) * .14s)}@keyframes correctBurst{0%{opacity:0;transform:translate(0) scale(.4)}35%{opacity:1;transform:translate(calc(var(--tx) * .6),calc(var(--ty) * .6)) scale(1)}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(.7)}}.correct-burst-piece{animation:correctBurst .65s ease-out both}@keyframes waitingGlow{0%,to{box-shadow:0 0 #d99a3d52}50%{box-shadow:0 0 0 7px #d99a3d00}}.reward-waiting{animation:waitingGlow 2.4s ease-in-out infinite}@keyframes transitionFade{0%{opacity:0}12%{opacity:1}85%{opacity:1}to{opacity:0}}@keyframes avatarExpressions{0%{transform:translateY(-36px) scale(.5) rotate(0);opacity:0}16%{transform:translateY(0) scale(1.18) rotate(0);opacity:1}24%{transform:translateY(-16px) scale(1) rotate(0)}32%{transform:translateY(0) scale(1.05) rotate(0)}46%{transform:translateY(0) scale(1) rotate(-9deg)}53%{transform:translateY(0) scale(1) rotate(9deg)}60%{transform:translateY(0) scale(1) rotate(-5deg)}67%{transform:translateY(0) scale(1) rotate(0)}80%{transform:translateY(-12px) scale(1.08) rotate(0)}90%{transform:translateY(0) scale(1) rotate(0);opacity:1}to{transform:translateY(0) scale(1) rotate(0);opacity:1}}.avatar-transition-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#faf7f140;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);animation:transitionFade 1s ease both}.avatar-transition-avatar{font-size:96px;line-height:1;animation:avatarExpressions 1s ease-in-out both}.result-pop{animation:resultPop .35s ease both}@keyframes avatarWiggle{0%,to{transform:rotate(0) scale(1)}20%{transform:rotate(-9deg) scale(1.06)}40%{transform:rotate(8deg) scale(1.06)}60%{transform:rotate(-5deg) scale(1.03)}80%{transform:rotate(3deg) scale(1.02)}}@media (hover: hover){.avatar-tile:hover>div{animation:avatarWiggle .5s ease}}.result-shake{animation:resultShake .35s ease both}.stagger-in{animation:fadeSlideUp .35s ease both;animation-delay:calc(min(var(--i, 0),8)*40ms)}.fade-in{animation:fadeIn .2s ease both}.tap-card{transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.tap-card:active{transform:scale(.98)}@media (hover: hover){.tap-card:hover{border-color:var(--hairline-strong);box-shadow:var(--shadow-card)}}.card{background:var(--paper-raised);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-card)}.label{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--muted);text-transform:uppercase}button{font-family:var(--font-body)}button.primary{background:var(--indigo);color:#fff;border:none;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease,transform .1s ease,opacity .1s ease}button.primary:hover{background:var(--indigo-dark)}button.primary:disabled{background:var(--hairline-strong);color:var(--muted);cursor:not-allowed}input,select,textarea{border-radius:10px;border:1px solid var(--hairline-strong);padding:10px 12px;font-size:14px;font-family:var(--font-body);width:100%;box-sizing:border-box;background:var(--paper-raised);color:var(--ink);transition:outline-color .12s ease,border-color .12s ease}input:focus,select:focus,textarea:focus{outline:2px solid var(--indigo);outline-offset:1px}button{transition:transform .1s ease,opacity .1s ease}button:active:not(:disabled){transform:scale(.97)}a{color:var(--indigo)}.shell-sidebar{width:260px;flex-shrink:0;background:var(--paper-raised);border-right:1px solid var(--hairline);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.shell-mobile-topbar,.shell-mobile-overlay{display:none}@media (max-width: 820px){.shell-sidebar:not(.shell-sidebar-mobile){display:none}.shell-mobile-topbar{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1.25rem;background:var(--paper-raised);border-bottom:1px solid var(--hairline);position:fixed;top:0;left:0;z-index:40}main{padding-top:4.5rem!important;width:100%}.shell-mobile-overlay{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;background:#1c223366;z-index:45}.shell-sidebar-mobile{position:static;height:100vh}}.student-bottom-nav{display:none}@media (max-width: 820px){.student-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--paper-raised);border-top:1px solid var(--hairline);padding:6px max(6px,env(safe-area-inset-left)) max(6px,env(safe-area-inset-bottom));justify-content:space-around}main.has-bottom-nav{padding-bottom:4.75rem!important}}.student-bottom-nav-item{all:unset;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 10px;border-radius:10px;cursor:pointer;color:var(--muted);font-size:11px;font-weight:600;flex:1;text-align:center;transition:color .12s ease,background .12s ease,transform .1s ease}.student-bottom-nav-item:active{transform:scale(.94)}.student-bottom-nav-item.active{color:var(--indigo)}@media (max-width: 820px){.hero-grid{grid-template-columns:1fr!important}.value-grid{grid-template-columns:1fr!important;gap:2rem!important}}@media (max-width: 480px){.home-nav{padding:1rem!important}.home-nav button.primary{padding:8px 14px!important;font-size:13px!important}.home-nav a{font-size:13px!important}}.practice-card{max-width:clamp(560px,19vw + 455px,820px);--pq-choice-columns: repeat(2, 1fr);--pq-prompt-size: clamp(17px, .44vw + 14.5px, 23px);--pq-choice-font: clamp(14px, .22vw + 12.8px, 17px);--pq-choice-gap: clamp(8px, .6vw + 4.7px, 16px);--pq-choice-pad-picture: clamp(8px, .44vw + 5.6px, 14px);--pq-choice-pad: clamp(10px, .37vw + 8px, 15px) clamp(16px, .66vw + 12.3px, 25px);--pq-choice-min: clamp(56px, 2.05vw + 44.7px, 84px);--pq-emoji-size: clamp(48px, 5vw + 24px, 92px);--pq-figure-size: clamp(32px, .88vw + 27px, 44px);--pq-hundred-max: clamp(380px, 10.2vw + 324px, 520px);--pq-hundred-font: clamp(11px, .22vw + 9.8px, 14px)}@media (max-width: 480px){.practice-card{margin-top:1rem!important;margin-bottom:1rem!important;max-width:none!important}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
