:root{color-scheme:light;font-family:Inter,ui-rounded,Avenir Next,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #18251d;--ink-soft: #4d5c52;--forest: #1d5a3a;--forest-deep: #123c28;--forest-bright: #4e9c62;--gold: #d7a846;--gold-light: #f2d996;--parchment: #fff9e9;--parchment-deep: #eadbb7;--cream: #fffdf6;--glass: rgba(255, 252, 239, .86);--glass-dark: rgba(17, 39, 29, .82);--line: rgba(75, 72, 51, .18);--shadow: 0 24px 70px rgba(13, 31, 23, .22);--shadow-soft: 0 12px 32px rgba(13, 31, 23, .14);--radius-xl: 30px;--radius-lg: 22px;--radius-md: 15px}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#122a20}body{min-width:320px;min-height:100vh;margin:0;color:var(--ink);background:#122a20;overscroll-behavior:none}button,input,select{font:inherit}button,select{touch-action:manipulation}button{color:inherit}button:not(:disabled),select:not(:disabled),input:not(:disabled){cursor:pointer}button:disabled{cursor:not-allowed;opacity:.46}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #f2c55e;outline-offset:3px}img,svg{display:block}.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}.app-root{min-height:100dvh}.eyebrow{display:block;color:#6b7b70;font-size:.72rem;font-weight:800;letter-spacing:.16em;line-height:1.2;text-transform:uppercase}.eyebrow.light{color:#fff9e1b8}.quiet-button,.text-button,.answer-tools button,.report-actions button{display:inline-flex;align-items:center;justify-content:center;gap:.48rem;border:0;background:transparent;font-weight:750}.quiet-button{min-height:42px;padding:.62rem .9rem;color:var(--forest-deep);background:#265b3b14;border:1px solid rgba(31,90,57,.16);border-radius:12px}.quiet-button:hover{background:#265b3b24}.quiet-button svg,.text-button svg{width:18px;height:18px}.text-button{min-height:42px;color:var(--forest-deep)}.text-button.light{color:#fff6d8}.icon-button,.mini-icon-button{display:inline-grid;flex:0 0 auto;place-items:center;border:0;border-radius:50%}.icon-button{width:46px;height:46px;background:#ffffffb8;box-shadow:0 7px 18px #12261c1f}.icon-button svg{width:21px;height:21px}.icon-button:hover{transform:translateY(-1px);box-shadow:0 9px 22px #12261c2e}.icon-button.dark{color:#fff4d1;background:#ffffff14;box-shadow:none}.icon-button.glass{color:#20352a;background:#fffcefc7;border:1px solid rgba(255,255,255,.46);-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%)}.mini-icon-button{width:34px;height:34px;color:#fff4d1;background:#ffffff17}.mini-icon-button svg{width:17px}.home-screen{position:relative;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(480px,.96fr);min-height:100dvh;overflow:hidden;color:#fff9e6;background:radial-gradient(circle at 12% 18%,rgba(255,205,103,.23),transparent 30%),radial-gradient(circle at 76% 112%,rgba(66,160,106,.24),transparent 38%),linear-gradient(145deg,#0d261b,#183b29 46%,#0d2219)}.home-screen:before{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:44px 44px;content:"";-webkit-mask-image:linear-gradient(to bottom,black,transparent 90%);mask-image:linear-gradient(to bottom,black,transparent 90%);pointer-events:none}.home-aurora{position:absolute;top:-40%;left:-20%;width:100%;height:100%;border-radius:50%;background:conic-gradient(from 25deg,rgba(255,226,139,.14),rgba(75,169,123,.08),transparent,rgba(255,226,139,.12));filter:blur(70px);animation:aurora-drift 18s ease-in-out infinite alternate;pointer-events:none}.brand-stage{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,6vw,6rem)}.brand-art-shell{position:relative;width:min(100%,820px);margin:0 auto}.brand-art{position:relative;z-index:1;width:100%;height:auto;object-fit:contain;mix-blend-mode:screen;filter:drop-shadow(0 34px 45px rgba(0,0,0,.34)) saturate(1.06)}.brand-art-glow{position:absolute;inset:20% 12% 9%;border-radius:50%;background:#ffd06633;filter:blur(55px)}.brand-copy{width:min(680px,92%);margin:-4% auto 0;text-align:center}.brand-copy h1{margin:.7rem 0 .65rem;color:#fff8dc;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4vw,4.7rem);font-weight:600;letter-spacing:-.045em;line-height:.98;text-wrap:balance}.brand-copy p{max-width:590px;margin:0 auto;color:#fffbe8b3;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.65}.journey-launch{position:relative;z-index:2;display:flex;flex-direction:column;min-width:0;margin:clamp(1rem,2.4vw,2.2rem);padding:clamp(1.2rem,3vw,2.4rem);color:var(--ink);background:linear-gradient(145deg,#fffdf4f5,#f4ebd0eb);border:1px solid rgba(255,255,255,.44);border-radius:34px;box-shadow:0 40px 100px #00000057;-webkit-backdrop-filter:blur(28px) saturate(120%);backdrop-filter:blur(28px) saturate(120%);overflow-y:auto;scrollbar-color:rgba(49,99,65,.35) transparent}.home-menu-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;padding-bottom:.85rem;border-bottom:1px solid rgba(41,75,51,.12)}.home-menu-bar button{display:inline-flex;align-items:center;gap:.42rem;min-height:40px;padding:.55rem .78rem;color:#31513c;background:#ffffff6b;border:1px solid rgba(42,78,52,.13);border-radius:12px;font-size:.78rem;font-weight:800;transition:.16s ease}.home-menu-bar button:hover{transform:translateY(-1px);background:#ffffffc7;border-color:#306e4547}.home-menu-bar svg{width:17px;height:17px}.profile-strip,.table-title-row,.token-tray-heading,.representation-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.profile-strip h2,.table-title-row h3,.token-tray-heading h2,.representation-heading h3{margin:.2rem 0 0;font-family:Georgia,Times New Roman,serif;font-weight:600}.profile-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1.2rem 0}.profile-card{position:relative;display:flex;align-items:center;gap:.75rem;min-width:0;min-height:68px;padding:.7rem;text-align:left;background:#ffffff6b;border:1px solid rgba(48,79,59,.12);border-radius:16px;transition:.18s ease}.profile-card:hover{transform:translateY(-2px);background:#ffffffbf}.profile-card.is-selected{background:#fffdf4;border-color:#2d79498a;box-shadow:0 9px 24px #2353361f}.profile-avatar{display:grid;flex:0 0 auto;width:46px;height:46px;place-items:center;color:#f8e5a9;background:linear-gradient(145deg,#2d7450,#17472f);border:2px solid rgba(255,255,255,.42);border-radius:14px;box-shadow:inset 0 1px #ffffff4d}.profile-avatar svg{width:24px;height:24px}.profile-card>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.profile-card strong,.profile-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-card small{margin-top:.12rem;color:#718076}.profile-selected-icon{width:17px;height:17px;margin-left:auto;color:#b98723}.active-journey-card{position:relative;display:flex;flex:0 0 auto;min-height:0;flex-direction:column;justify-content:flex-start;padding:clamp(1.2rem,3vw,2.2rem);overflow:clip;color:#fff8df;background:radial-gradient(circle at 85% 0%,rgba(250,211,112,.2),transparent 32%),linear-gradient(145deg,#1b5036,#102f22);border:1px solid rgba(255,247,215,.18);border-radius:26px;box-shadow:0 22px 50px #1036233d}.active-journey-card:after{position:absolute;right:-50px;bottom:-74px;width:260px;height:260px;background:radial-gradient(circle,rgba(255,224,139,.14),transparent 62%);border:1px solid rgba(255,255,255,.06);border-radius:50%;content:""}.journey-summary{position:relative;z-index:1;display:flex;align-items:center;gap:1rem}.journey-avatar{display:grid;flex:0 0 auto;width:64px;height:64px;place-items:center;color:#3c6a38;background:radial-gradient(circle at 30% 20%,#fff8cc,#e6c977);border:2px solid rgba(255,255,255,.6);border-radius:20px;box-shadow:0 8px 24px #0000003d}.journey-avatar svg{width:34px;height:34px}.journey-summary h2{margin:.3rem 0 .15rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,2vw,2rem);font-weight:600}.journey-summary p{margin:0;color:#fffae2a6}.journey-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin:clamp(1.2rem,2.3vw,2rem) 0}.journey-metrics div{padding:.8rem;background:#ffffff12;border:1px solid rgba(255,255,255,.08);border-radius:15px}.journey-metrics strong,.journey-metrics span{display:block}.journey-metrics strong{color:#ffe49d;font-family:Georgia,Times New Roman,serif;font-size:1.45rem}.journey-metrics span{margin-top:.15rem;color:#fffae29e;font-size:.75rem}.entry-options{position:relative;z-index:1;display:grid;gap:.8rem;margin-bottom:1.15rem;padding:1rem;background:#fff1;border:1px solid rgba(255,255,255,.1);border-radius:18px;box-shadow:inset 0 1px #ffffff0f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.entry-options-heading,.entry-select>span,.practice-modifier-grid label>span,.quick-entry-settings legend{display:flex;align-items:center;gap:.45rem}.entry-options-heading{justify-content:space-between}.entry-options-heading h3{margin:.22rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.12rem;font-weight:600}.entry-options-heading>svg{width:21px;color:#f7d782}.entry-select{display:grid;grid-template-columns:minmax(120px,.45fr) minmax(0,1fr);align-items:center;gap:.7rem}.entry-select>span,.practice-modifier-grid label>span,.quick-entry-settings legend{color:#fffae5c2;font-size:.72rem;font-weight:800}.entry-select svg,.practice-modifier-grid label>span svg,.quick-entry-settings legend svg{width:16px;height:16px;color:#f5d57f}.entry-select select{width:100%;min-height:42px;padding:0 .75rem;color:#183425;background:#fffdf2f0;border:1px solid rgba(255,255,255,.65);border-radius:11px;font-weight:750}.practice-modifier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.practice-modifier-grid label{display:grid;align-content:start;gap:.4rem;min-width:0;padding:.72rem;background:#02140b2e;border:1px solid rgba(255,255,255,.09);border-radius:13px}.practice-modifier-grid select{width:100%;min-height:42px;padding:0 .65rem;color:#183425;background:#fffdf2f0;border:1px solid rgba(255,255,255,.65);border-radius:10px;font-size:.72rem;font-weight:750}.practice-modifier-grid select:disabled{cursor:not-allowed;opacity:.56}.practice-modifier-grid small{color:#fffae594;font-size:.62rem;line-height:1.35}.skill-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.48rem}.skill-choice-grid button{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.55rem;min-height:66px;padding:.68rem;color:#f8f1d9;text-align:left;background:#ffffff0e;border:1px solid rgba(255,255,255,.09);border-radius:13px;transition:.16s ease}.skill-choice-grid button:hover{background:#ffffff1a;border-color:#ffe29547}.skill-choice-grid button.is-selected{color:#193626;background:linear-gradient(145deg,#fff5ca,#e3c16c);border-color:#ffffffb8;box-shadow:0 8px 20px #04160c33}.skill-choice-grid button>svg{width:17px;height:17px;margin-top:.08rem;color:#e5bd57}.skill-choice-grid button.is-selected>svg{color:#2f6946}.skill-choice-grid button span,.skill-choice-grid button strong,.skill-choice-grid button small{display:block;min-width:0}.skill-choice-grid button strong{font-size:.78rem;line-height:1.2}.skill-choice-grid button small{margin-top:.24rem;overflow:hidden;color:#fffae594;font-size:.63rem;line-height:1.32}.skill-choice-grid button.is-selected small{color:#193626ad}.quick-entry-settings{display:grid;grid-template-columns:.75fr 1.2fr 1fr;gap:.55rem}.quick-entry-settings fieldset{min-width:0;margin:0;padding:.58rem;background:#03150c21;border:1px solid rgba(255,255,255,.08);border-radius:12px}.quick-entry-settings legend{padding:0 .2rem}.quick-entry-settings fieldset>div{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}.quick-entry-settings button{flex:1 1 auto;min-height:32px;padding:.35rem .44rem;color:#fffae5c7;background:#ffffff12;border:1px solid rgba(255,255,255,.09);border-radius:9px;font-size:.65rem;font-weight:800}.quick-entry-settings button.is-selected{color:#1d3d2a;background:#f5dc91;border-color:#ffffff94}.world-progress-preview{position:relative;z-index:1;margin-bottom:1.3rem}.world-progress-copy{display:flex;justify-content:space-between;margin-bottom:.48rem;color:#fffae2bf;font-size:.82rem;font-weight:700}.world-progress-track,.lesson-progress-track,.mini-mastery-track{display:block;overflow:hidden;background:#ffffff1c;border:1px solid rgba(255,255,255,.1);border-radius:999px}.world-progress-track{height:12px}.world-progress-track>span,.lesson-progress-track>span{display:block;height:100%;background:linear-gradient(90deg,#d7a846,#ffe59c 55%,#7dc781);border-radius:inherit;box-shadow:0 0 16px #ffda796b;transition:width .7s cubic-bezier(.22,1,.36,1)}.primary-journey-button,.primary-dialog-button,.check-answer-button{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:space-between;min-height:58px;padding:.9rem 1.2rem;color:#1b3527;background:linear-gradient(145deg,#ffeab0,#d9ad4e);border:1px solid rgba(255,255,255,.65);border-radius:16px;box-shadow:0 12px 28px #00000042,inset 0 1px #ffffffd9;font-weight:850;transition:.18s ease}.primary-journey-button:hover,.primary-dialog-button:hover,.check-answer-button:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 16px 34px #0000004d,inset 0 1px #ffffffe6}.primary-journey-button span{display:inline-flex;align-items:center;gap:.6rem}.primary-journey-button svg,.primary-dialog-button svg,.check-answer-button svg{width:20px;height:20px}.home-footer-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}.home-footer-actions>span{display:inline-flex;align-items:center;gap:.45rem;color:#6a786e;font-size:.75rem}.home-footer-actions>span svg{width:16px}.cinematic-world{position:fixed;z-index:0;inset:0;overflow:hidden;background:#376d96}.cinematic-world canvas{width:100%;height:100%}.world-haze{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,35,27,.18),transparent 42%,transparent 70%,rgba(10,25,20,.08)),linear-gradient(0deg,rgba(11,27,20,.2),transparent 40%);pointer-events:none}.world-grain{position:absolute;inset:-50%;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");transform:rotate(.001deg);pointer-events:none}.lesson-screen{position:relative;min-height:100dvh;overflow-x:hidden}.lesson-screen.is-finale .lesson-layout{opacity:0;pointer-events:none;transform:translateY(18px) scale(.98);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.lesson-screen.is-finale .lesson-header{background:#091f1c52;border-color:#ffe8a233;-webkit-backdrop-filter:blur(22px) saturate(145%);backdrop-filter:blur(22px) saturate(145%)}.lesson-header{position:relative;z-index:20;display:grid;grid-template-columns:minmax(250px,1fr) minmax(260px,.8fr) minmax(180px,1fr);align-items:center;gap:1rem;width:min(100% - 2rem,1500px);min-height:74px;margin:.8rem auto 0;padding:.65rem .8rem;background:#152f23a8;border:1px solid rgba(255,255,255,.16);border-radius:20px;box-shadow:0 18px 42px #0817102e;-webkit-backdrop-filter:blur(22px) saturate(125%);backdrop-filter:blur(22px) saturate(125%)}.lesson-header-left,.lesson-header-actions{display:flex;align-items:center;gap:.7rem}.lesson-header-actions{justify-content:flex-end}.lesson-title{display:flex;min-width:0;flex-direction:column}.lesson-title span{overflow:hidden;color:#fff9e29e;font-size:.72rem;font-weight:750;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.lesson-title strong{overflow:hidden;margin-top:.18rem;color:#fff8df;font-family:Georgia,Times New Roman,serif;font-size:1.05rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.lesson-progress-block{display:grid;grid-template-columns:auto minmax(120px,1fr);align-items:center;gap:.7rem}.lesson-progress-block>div:first-child{display:flex;flex-direction:column;color:#fff9e2a6;font-size:.69rem;text-transform:uppercase}.lesson-progress-block strong{color:#fff3c8;font-size:1rem}.lesson-progress-track{height:10px}.world-stage-label{position:relative;z-index:4;display:flex;align-items:center;gap:.5rem;width:max-content;margin:.7rem auto 0;padding:.42rem .76rem;color:#fff2c6;background:#0c2419a3;border:1px solid rgba(255,240,191,.15);border-radius:999px;box-shadow:0 9px 22px #07160f2e;font-size:.72rem;font-weight:700;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.world-stage-label svg{width:14px;height:14px;color:#ffe19a}.world-stage-label strong{color:#fff}.lesson-layout{position:relative;z-index:3;display:grid;grid-template-columns:minmax(560px,1.08fr) minmax(210px,.4fr) minmax(370px,.72fr);align-items:start;gap:1rem;width:min(100% - 2rem,1500px);margin:.7rem auto 1rem}.learning-console,.representation-panel,.token-tray,.vocabulary-card{border:1px solid rgba(255,255,255,.46);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px) saturate(120%);backdrop-filter:blur(24px) saturate(120%)}.learning-console{min-height:calc(100dvh - 132px);padding:clamp(1.1rem,2.2vw,2rem);background:radial-gradient(circle at 100% 0%,rgba(255,222,134,.22),transparent 28%),linear-gradient(145deg,#fffdf4f0,#f2e8cae0);border-radius:var(--radius-xl)}.console-topline{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.strategy-chip,.mastery-chip{display:inline-flex;align-items:center;gap:.4rem;min-height:34px;padding:.44rem .72rem;border-radius:999px;font-size:.72rem;font-weight:800}.strategy-chip{color:#684d16;background:#e8c16338;border:1px solid rgba(164,118,25,.19)}.strategy-chip svg{width:15px;height:15px}.mastery-chip{color:#246441;background:#3685541a;border:1px solid rgba(40,112,69,.15)}.problem-heading{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:clamp(1rem,2vw,1.6rem);margin:clamp(1rem,2vw,1.8rem) 0 1rem}.target-medallion{position:relative;display:grid;width:clamp(108px,10vw,148px);height:clamp(108px,10vw,148px);place-items:center;padding:.5rem;overflow:hidden;color:#fff5ce;background:radial-gradient(circle at 32% 24%,#4c8f5b,#17472f 64%,#0c2e20);border:3px solid #e2c36e;border-radius:50%;box-shadow:0 14px 30px #1a412a4d,inset 0 0 0 5px #ffffff14}.target-medallion:before{position:absolute;inset:9px;border:1px dashed rgba(255,236,169,.34);border-radius:50%;content:""}.target-medallion span,.target-medallion strong{position:relative;z-index:1;display:block;grid-column:1}.target-medallion span{align-self:end;margin-bottom:-.5rem;font-size:.65rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.target-medallion strong{align-self:start;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4.3vw,4.2rem);line-height:1}.problem-heading h1{max-width:800px;margin:.35rem 0 .45rem;color:#17271d;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.45rem,2.45vw,2.45rem);font-weight:600;letter-spacing:-.025em;line-height:1.08;text-wrap:balance}.problem-heading p{max-width:720px;margin:0;color:#59675e;font-size:clamp(.9rem,1.3vw,1.05rem);line-height:1.55}.equation-template{width:max-content;max-width:100%;margin:0 auto .8rem;padding:.45rem .8rem;color:#72581f;background:#ffffff73;border:1px solid rgba(109,92,54,.12);border-radius:999px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1rem,1.55vw,1.25rem);font-weight:700;text-align:center}.equation-builder{display:flex;align-items:center;justify-content:center;gap:clamp(.45rem,1vw,.8rem);min-height:142px;padding:clamp(.7rem,1.5vw,1.2rem);overflow-x:auto;background:linear-gradient(#ffffff85,#ffffff42),repeating-linear-gradient(0deg,transparent,transparent 29px,rgba(88,115,94,.06) 30px);border:1px solid rgba(71,97,78,.16);border-radius:22px;box-shadow:inset 0 1px #fffc}.equation-part{display:flex;align-items:center;gap:clamp(.45rem,1vw,.8rem)}.answer-slot,.given-number,.target-number-small{display:grid;flex:0 0 auto;width:clamp(76px,8vw,108px);height:clamp(76px,8vw,108px);place-items:center;border-radius:20px}.answer-slot{position:relative;color:#7d8a81;background:#ffffff80;border:2px dashed rgba(39,85,57,.34);box-shadow:inset 0 4px 14px #1433210f;font-family:Georgia,Times New Roman,serif;font-size:2.2rem;transition:.18s ease}.answer-slot:not(:disabled):hover{transform:translateY(-2px);background:#ffffffc7;border-color:#2755399e}.answer-slot.is-filled{background:#fffdf3e6;border-style:solid;border-color:#315c3d5c;box-shadow:0 8px 20px #2149301f,inset 0 1px #ffffffe6}.given-number,.target-number-small{color:#fff5d2;background:linear-gradient(145deg,#306c48,#173d2a);border:2px solid #d5b862;box-shadow:0 9px 22px #16412838;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,3vw,2.65rem);font-weight:700}.target-number-small{color:#3b2c0e;background:linear-gradient(145deg,#fff1b6,#d9af52);border-color:#ffffffb8}.operation-symbol{flex:0 0 auto;color:#314a38;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3vw,3rem);font-weight:700}.operation-symbol.equals{color:#876924}.math-token-visual{position:relative;display:grid;width:clamp(72px,6vw,92px);height:clamp(72px,6vw,92px);place-items:center;filter:drop-shadow(0 7px 9px rgba(18,41,27,.28))}.math-token-visual svg{position:absolute;inset:0;width:100%;height:100%}.math-token-visual strong{position:relative;z-index:1;max-width:76%;overflow:hidden;color:#fff;font-size:clamp(1.2rem,2.2vw,1.85rem);line-height:1;text-align:center;text-overflow:ellipsis;text-shadow:0 2px 5px rgba(0,0,0,.54);white-space:nowrap}.math-token-visual.is-compact{width:clamp(58px,5.8vw,82px);height:clamp(58px,5.8vw,82px)}.feedback-card,.hint-card{display:grid;align-items:start;gap:.85rem;margin-top:.8rem;padding:.85rem 1rem;border-radius:16px}.feedback-card{position:relative;grid-template-columns:auto 1fr auto}.feedback-card.is-correct{color:#17452e;background:#57b16f29;border:1px solid rgba(39,123,68,.26)}.feedback-card.is-retry{color:#604812;background:#ecbe4d2e;border:1px solid rgba(174,126,26,.25)}.feedback-icon{display:grid;width:38px;height:38px;place-items:center;color:#fff;background:#3f8957;border-radius:12px}.feedback-card.is-retry .feedback-icon{background:#bd872a}.feedback-icon svg{width:20px;height:20px}.feedback-card strong,.feedback-card p,.feedback-card span{display:block}.feedback-card p{margin:.25rem 0;font-family:Georgia,Times New Roman,serif;font-size:1.1rem;font-weight:700}.feedback-card span{font-size:.86rem;line-height:1.45}.feedback-close{display:grid;width:32px;height:32px;place-items:center;background:transparent;border:0;border-radius:50%}.feedback-close svg{width:18px}.hint-card{grid-template-columns:auto 1fr;color:#513f16;background:linear-gradient(145deg,#ffefbbcc,#f4d685a6);border:1px solid rgba(159,115,20,.24);box-shadow:0 8px 22px #7752121a}.hint-card>svg{width:24px;height:24px;color:#ac7920}.hint-card p{margin:.2rem 0 0;line-height:1.45}.console-actions{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-top:1rem}.answer-tools{display:flex;flex-wrap:wrap;gap:.4rem}.answer-tools button{min-height:42px;padding:.58rem .72rem;color:#425448;background:#ffffff6b;border:1px solid rgba(44,76,55,.13);border-radius:11px;font-size:.78rem}.answer-tools button:hover:not(:disabled){color:#204a31;background:#fffc}.answer-tools svg{width:16px;height:16px}.check-answer-button{flex:0 0 auto;gap:.55rem;min-width:195px;min-height:52px;justify-content:center}.check-answer-button.is-next{color:#fff4d5;background:linear-gradient(145deg,#317653,#17462f);border-color:#ffefba66}.instruction-sidebar{display:grid;gap:.8rem}.world-vista{position:relative;min-height:calc(100dvh - 132px);pointer-events:none}.world-vista-callout{position:absolute;top:1.5rem;right:-.35rem;left:-.35rem;padding:.85rem;color:#fff6d8;text-align:center;background:radial-gradient(circle at 50% 0%,rgba(255,225,143,.14),transparent 52%),#0d2b1da3;border:1px solid rgba(255,241,196,.2);border-radius:18px;box-shadow:0 16px 34px #071c1138;-webkit-backdrop-filter:blur(14px) saturate(125%);backdrop-filter:blur(14px) saturate(125%)}.world-vista-callout strong{display:block;margin-top:.28rem;font-family:Georgia,Times New Roman,serif;font-size:1.22rem;font-weight:600}.world-vista-callout p{margin:.38rem 0 0;color:#fff8dea3;font-size:.68rem;line-height:1.4}.world-stage-path{position:absolute;right:0;bottom:1.1rem;left:0;display:grid;gap:.45rem;width:max-content;margin:auto;padding:.7rem .8rem;color:#fff8dc8c;background:#0b271a8a;border:1px solid rgba(255,244,205,.13);border-radius:16px;box-shadow:0 12px 28px #081b122e;font-size:.65rem;font-weight:750;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.world-stage-path span{display:flex;align-items:center;gap:.45rem}.world-stage-path i{width:8px;height:8px;background:#ffffff2e;border:1px solid rgba(255,255,255,.24);border-radius:50%}.world-stage-path span.is-reached{color:#fff0bc}.world-stage-path span.is-reached i{background:#f1c75f;border-color:#fff0bc;box-shadow:0 0 10px #f1c75fb3}.representation-panel,.token-tray,.vocabulary-card{background:var(--glass);border-radius:var(--radius-lg)}.representation-panel{min-height:260px;padding:1rem}.representation-heading h3{text-transform:capitalize}.selection-counter{color:#6c786f;font-size:.72rem;font-weight:700}.counter-field{display:grid;grid-template-columns:repeat(5,34px);justify-content:center;gap:.55rem;margin-top:1.2rem}.representation-dot{display:block;width:30px;height:30px;background:radial-gradient(circle at 32% 25%,#ffefab,#db9a2c 52%,#7e4e13);border:2px solid rgba(255,255,255,.7);border-radius:50%;box-shadow:0 4px 8px #55340c3d}.ten-frame-group{display:grid;justify-content:center;gap:.65rem;margin-top:1.2rem}.ten-frame{display:grid;grid-template-columns:repeat(5,42px);gap:4px;padding:5px;background:#31583e;border:3px solid #213d2b;border-radius:10px;box-shadow:0 8px 18px #163b252e}.ten-frame>span{width:42px;height:42px;background:#fffdedd9;border:1px solid rgba(14,52,30,.32);border-radius:6px}.ten-frame>span.is-filled:after{display:block;width:27px;height:27px;margin:6px auto;background:radial-gradient(circle at 35% 25%,#ffdc79,#d97c25 68%,#873817);border:1px solid rgba(255,255,255,.7);border-radius:50%;box-shadow:0 3px 6px #40200a40;content:""}.number-bond{position:relative;width:min(300px,100%);height:190px;margin:.55rem auto 0}.number-bond svg{position:absolute;inset:48px 10% 20px;width:80%;height:100px}.number-bond path{fill:none;stroke:#355b3f8c;stroke-width:5;stroke-linecap:round}.bond-node{display:grid;width:70px;height:70px;place-items:center;color:#173e29;background:#fff9e5;border:3px solid #4f805f;border-radius:50%;box-shadow:0 7px 14px #214a2f26;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:700}.bond-whole{position:relative;z-index:1;margin:0 auto;color:#fff5cc;background:#2b6746;border-color:#d5b85b}.bond-parts{position:absolute;right:11%;bottom:0;left:11%;z-index:1;display:flex;justify-content:space-between}.number-line{padding:1rem .4rem 0}.number-line-track{position:relative;height:70px;margin:1rem 1rem 0;border-top:5px solid #315b41}.number-line-tick{position:absolute;top:-10px;display:grid;justify-items:center;transform:translate(-50%)}.number-line-tick i{width:3px;height:18px;background:#315b41;border-radius:3px}.number-line-tick b{margin-top:.3rem;color:#4d5f52;font-size:.68rem}.number-line-tick.is-marker i{width:12px;height:12px;margin-top:-1px;background:#d88b2d;border:2px solid #fff2bd;border-radius:50%;box-shadow:0 0 0 5px #d88b2d2e}.number-line-tick.is-marker b{color:#9b5e13;font-size:.84rem}.number-line p,.array-representation p,.fraction-model p{margin:.5rem 0 0;color:#66736a;font-size:.76rem;text-align:center}.place-value-chart{display:grid;grid-auto-columns:minmax(70px,1fr);grid-auto-flow:column;gap:.35rem;margin-top:.9rem;overflow-x:auto}.place-column{display:grid;grid-template-rows:auto 1fr auto;min-height:170px;padding:.5rem;text-align:center;background:#ffffff7a;border:1px solid rgba(42,78,53,.12);border-radius:12px}.place-column>strong{color:#66766c;font-size:.62rem;text-transform:uppercase}.place-column>b{color:#274a34;font-family:Georgia,Times New Roman,serif;font-size:1.25rem}.base-ten-blocks{display:flex;align-content:center;align-items:center;justify-content:center;flex-wrap:wrap;gap:3px;padding:.35rem 0}.base-ten-blocks span{display:grid;place-items:center;color:#5d4213;background:linear-gradient(135deg,rgba(255,255,255,.36),transparent 45%),#e1b34f;border:1px solid #9f7423;border-radius:3px;box-shadow:0 2px 4px #5a3a0c2e;font-size:.56rem;font-weight:800}.base-ten-blocks.value-1 span{width:13px;height:13px}.base-ten-blocks.value-10 span{width:12px;height:60px}.base-ten-blocks.value-100 span{width:42px;height:42px}.base-ten-blocks.value-1000 span{width:45px;height:45px;color:#fff;background-color:#b97c29}.array-representation{margin-top:.85rem}.array-grid{display:grid;justify-content:center;gap:4px;width:max-content;max-width:100%;margin:0 auto;padding:.65rem;overflow:hidden;background:#2b5d3b14;border:1px solid rgba(43,93,59,.14);border-radius:12px}.representation-dot.array-dot{width:clamp(10px,1.5vw,18px);height:clamp(10px,1.5vw,18px)}.fraction-model{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.8rem;margin-top:1.35rem}.fraction-bar{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;height:68px;overflow:hidden;background:#fffdf4;border:3px solid #2e6243;border-radius:12px;box-shadow:0 8px 18px #1d4d2f26}.fraction-bar span{border-right:2px solid #2e6243}.fraction-bar span:last-child{border:0}.fraction-bar span.is-filled{background:linear-gradient(135deg,rgba(255,255,255,.28),transparent),#e3aa42}.fraction-label{display:grid;width:42px;text-align:center;font-family:Georgia,Times New Roman,serif;font-size:1.1rem;font-weight:700}.fraction-label i{height:2px;background:#304e39}.fraction-model p{grid-column:1 / -1}.token-tray{padding:1rem}.token-tray-heading>span{color:#718078;font-size:.68rem;font-weight:700}.token-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-top:.75rem}.token-grid>button{position:relative;display:grid;min-width:0;min-height:108px;place-items:center;padding:.35rem;background:#ffffff73;border:1px solid rgba(43,85,56,.13);border-radius:16px;box-shadow:inset 0 1px #fffc;transition:.16s ease}.token-grid>button:hover:not(:disabled){z-index:2;transform:translateY(-5px) scale(1.025);background:#fffdf4;border-color:#2b693f57;box-shadow:0 12px 22px #1b422929,inset 0 1px #fff}.token-grid kbd{position:absolute;top:6px;left:7px;display:grid;width:20px;height:20px;place-items:center;color:#65756a;background:#fffc;border:1px solid rgba(37,76,50,.14);border-radius:6px;font-size:.62rem;font-weight:800}.token-tray-help{margin:.6rem 0 0;color:#718078;font-size:.7rem;text-align:center}.vocabulary-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.7rem;padding:.8rem 1rem}.vocabulary-card>svg{width:23px;height:23px;color:#9a7122}.vocabulary-card p{margin:.2rem 0 0;color:#3f5546;font-family:Georgia,Times New Roman,serif;font-size:.9rem}.pause-overlay,.completion-overlay{position:fixed;z-index:60;display:grid;place-items:center;inset:0;padding:1rem;color:#fff7dd;background:#071710c2;-webkit-backdrop-filter:blur(22px) saturate(120%);backdrop-filter:blur(22px) saturate(120%)}.pause-overlay>div{width:min(500px,100%);padding:2.2rem;text-align:center;background:#173c29db;border:1px solid rgba(255,248,220,.22);border-radius:28px;box-shadow:0 30px 80px #00000059}.pause-overlay h2,.completion-overlay h2{margin:.55rem 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,5vw,4.2rem);font-weight:600;letter-spacing:-.04em}.pause-overlay p{color:#fff9e3b3}.pause-overlay .primary-journey-button{width:100%;margin-top:1rem}.pause-overlay .text-button{margin-top:.65rem}.completion-overlay{overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(255,214,111,.23),transparent 38%),#091b1494}.completion-rays{position:absolute;width:min(110vw,1100px);height:min(110vw,1100px);background:repeating-conic-gradient(from 0deg,rgba(255,230,156,.12) 0deg 8deg,transparent 8deg 19deg);border-radius:50%;animation:completion-spin 44s linear infinite;-webkit-mask-image:radial-gradient(circle,black 0 15%,transparent 68%);mask-image:radial-gradient(circle,black 0 15%,transparent 68%)}.completion-overlay article{position:relative;z-index:1;width:min(650px,100%);padding:clamp(1.5rem,5vw,3rem);overflow:hidden;text-align:center;background:radial-gradient(circle at 50% 0%,rgba(255,219,124,.2),transparent 38%),#123926e8;border:2px solid rgba(255,226,149,.42);border-radius:34px;box-shadow:0 0 80px #ffd56629,0 35px 90px #0006;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px)}.completion-overlay article>p{max-width:510px;margin:.7rem auto 1.5rem;color:#fff9e1bd;font-size:1.02rem;line-height:1.6}.completion-stars{display:flex;justify-content:center;gap:.2rem;margin-bottom:.8rem;color:#ffe39a}.completion-stars svg{width:25px;animation:star-pulse 1.6s ease-in-out infinite alternate}.completion-stars svg:nth-child(2n){animation-delay:.4s}.completion-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1.4rem}.completion-metrics div{padding:.85rem .5rem;background:#ffffff12;border:1px solid rgba(255,255,255,.09);border-radius:14px}.completion-metrics strong,.completion-metrics span{display:block}.completion-metrics strong{color:#ffe49b;font-family:Georgia,Times New Roman,serif;font-size:1.5rem}.completion-metrics span{margin-top:.2rem;color:#fff9e19e;font-size:.72rem}.completion-overlay .primary-journey-button{width:100%}.modal-backdrop{position:fixed;z-index:100;display:grid;place-items:center;inset:0;padding:1rem;overflow-y:auto;background:#081610bd;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.settings-dialog,.profile-dialog,.data-controls-dialog{width:min(760px,100%);max-height:calc(100dvh - 2rem);padding:clamp(1rem,3vw,1.8rem);overflow-y:auto;background:linear-gradient(145deg,#fffdf4,#eee1bf);border:1px solid rgba(255,255,255,.7);border-radius:28px;box-shadow:0 35px 100px #0006}.settings-dialog>header,.profile-dialog>header,.data-controls-dialog>header,.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.settings-dialog h2,.profile-dialog h2,.data-controls-dialog h2{margin:.25rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:600}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1.2rem 0}.settings-section+.settings-section{margin-top:1.15rem;padding-top:1rem;border-top:1px solid rgba(40,75,52,.12)}.settings-section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.settings-section-heading h3{margin:.2rem 0 0;color:#213c2a;font-family:Georgia,Times New Roman,serif;font-size:1.15rem;font-weight:600}.settings-section-heading>svg{width:22px;color:#346f4b}.learning-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.setting-card{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;min-height:92px;padding:.8rem;background:#ffffff75;border:1px solid rgba(40,75,52,.12);border-radius:16px}.setting-card>span:nth-child(2){display:flex;flex-direction:column}.setting-card small{margin-top:.18rem;color:#6c786f;font-size:.72rem;line-height:1.35}.setting-icon{display:grid;width:42px;height:42px;place-items:center;color:#fff4d2;background:#2d6747;border-radius:13px}.setting-icon svg{width:21px;height:21px}.setting-card select,.setting-card input[type=range]{grid-column:1 / -1;width:100%}.setting-card select,.field-label input,.field-label select,.focus-assignment select,.dashboard-summary select{min-height:43px;padding:0 .7rem;color:#233c2c;background:#ffffffbd;border:1px solid rgba(39,78,51,.2);border-radius:10px}.setting-toggle{grid-template-columns:auto 1fr auto}.setting-toggle input[type=checkbox]{position:relative;width:48px;height:27px;appearance:none;background:#adb5ae;border-radius:999px;transition:.18s ease}.setting-toggle input[type=checkbox]:after{position:absolute;top:3px;left:3px;width:21px;height:21px;background:#fff;border-radius:50%;box-shadow:0 2px 5px #00000038;content:"";transition:.18s ease}.setting-toggle input[type=checkbox]:checked{background:#367c54}.setting-toggle input[type=checkbox]:checked:after{transform:translate(21px)}.primary-dialog-button{width:100%;justify-content:center}.settings-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-top:1rem;border-top:1px solid rgba(38,74,50,.12)}.settings-footer>div{display:flex;flex-wrap:wrap;gap:.5rem}.settings-footer .primary-dialog-button{width:auto;min-width:170px}.data-controls-dialog{width:min(620px,100%)}.data-controls-intro{margin:1rem 0;color:#647269;line-height:1.55}.data-control-list{display:grid;gap:.65rem}.data-control-list>button{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.8rem;width:100%;padding:.9rem;color:#24432f;text-align:left;background:#ffffff85;border:1px solid rgba(42,77,52,.13);border-radius:15px;transition:.16s ease}.data-control-list>button:hover{transform:translateY(-1px);background:#ffffffd6;border-color:#2d71444d}.data-control-list>button>svg{width:23px;height:23px;color:#34704c}.data-control-list span,.data-control-list strong,.data-control-list small{display:block}.data-control-list small{margin-top:.2rem;color:#6b786f;line-height:1.35}.data-control-list>button.is-danger{color:#71342d;background:#fff2e9a8;border-color:#953d2e2e}.data-control-list>button.is-danger>svg{color:#a44336}.reset-confirmation{display:grid;justify-items:center;padding:clamp(1.5rem,5vw,3rem) .5rem 1rem;text-align:center}.reset-warning-icon{display:grid;width:62px;height:62px;place-items:center;color:#8d3d30;background:#f4d2bd;border-radius:18px}.reset-warning-icon svg{width:30px;height:30px}.reset-confirmation h3{margin:1rem 0 .45rem;font-family:Georgia,Times New Roman,serif;font-size:1.5rem}.reset-confirmation p{max-width:470px;margin:0;color:#68736c;line-height:1.6}.reset-confirmation>div{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1.2rem}.danger-action-button{min-height:43px;padding:.65rem 1rem;color:#fff;background:#953f33;border:1px solid #762f27;border-radius:11px;font-weight:850}.danger-action-button:hover{background:#7f332a}.profile-dialog{width:min(540px,100%)}.field-label{display:grid;gap:.42rem;margin-top:1rem;color:#384d40;font-size:.8rem;font-weight:800}.avatar-picker{margin:1rem 0 0;padding:0;border:0}.avatar-picker legend{margin-bottom:.5rem;color:#384d40;font-size:.8rem;font-weight:800}.avatar-picker>div{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.avatar-picker button{display:grid;min-height:70px;place-items:center;color:#376249;background:#ffffff80;border:2px solid transparent;border-radius:15px}.avatar-picker button.is-selected{color:#fff6dc;background:#286044;border-color:#d7b85d;box-shadow:0 8px 18px #1b4e312e}.avatar-picker svg{width:28px;height:28px}.local-only-copy{margin:1rem 0;color:#6f7b72;font-size:.75rem;line-height:1.45}.dashboard-backdrop{align-items:center}.dashboard-panel{width:min(1240px,100%);height:min(850px,calc(100dvh - 2rem));overflow:hidden;color:#fff7dc;background:#132f22;border:1px solid rgba(255,245,210,.18);border-radius:28px;box-shadow:0 40px 110px #00000080}.dashboard-header{height:78px;padding:0 1.25rem;background:radial-gradient(circle at 25% 0%,rgba(236,193,87,.17),transparent 24%),#173b2a;border-bottom:1px solid rgba(255,255,255,.08)}.dashboard-header h2{display:flex;align-items:center;gap:.55rem;margin:.2rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:600}.dashboard-header h2 svg{width:24px;color:#e4c36e}.dashboard-body{display:grid;grid-template-columns:220px 1fr;height:calc(100% - 78px)}.learner-sidebar{padding:1rem;overflow-y:auto;background:#0718104d;border-right:1px solid rgba(255,255,255,.08)}.sidebar-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}.sidebar-title h3{margin:0;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}.dashboard-learner{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.6rem;width:100%;margin-bottom:.5rem;padding:.62rem;color:#fff9e2b8;text-align:left;background:transparent;border:1px solid transparent;border-radius:13px}.dashboard-learner:hover,.dashboard-learner.is-active{color:#fff8df;background:#ffffff14;border-color:#ffffff14}.dashboard-learner>span:first-child{display:grid;width:36px;height:36px;place-items:center;color:#244a35;background:#e5c773;border-radius:11px;font-weight:900}.dashboard-learner>span:last-child{display:flex;min-width:0;flex-direction:column}.dashboard-learner small{margin-top:.1rem;color:#fff9e27a}.privacy-note{display:grid;grid-template-columns:auto 1fr;gap:.5rem;margin-top:1rem;padding:.7rem;color:#fff9e280;background:#ffffff09;border-radius:12px;font-size:.68rem;line-height:1.45}.privacy-note svg{width:17px;color:#c9ad5e}.privacy-note p{margin:0}.dashboard-content{padding:1.2rem;overflow-y:auto;color:var(--ink);background:linear-gradient(145deg,#fffdf4,#eee3c6)}.dashboard-summary{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(480px,1.3fr);gap:1rem;padding:1rem;color:#fff8df;background:linear-gradient(145deg,#245c3e,#173d2c);border-radius:20px;box-shadow:0 12px 28px #1443292e}.dashboard-summary h3{margin:.25rem 0 .6rem;font-family:Georgia,Times New Roman,serif;font-size:1.6rem;font-weight:600}.dashboard-summary label{display:grid;gap:.25rem;color:#fffae59e;font-size:.7rem}.dashboard-summary select{color:#1b3b28}.summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem}.summary-cards article{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:.75rem;background:#ffffff12;border:1px solid rgba(255,255,255,.08);border-radius:15px}.summary-cards svg{width:20px;color:#e9c96f}.summary-cards strong{margin-top:.35rem;color:#ffe8a5;font-family:Georgia,Times New Roman,serif;font-size:1.6rem}.summary-cards span{overflow:hidden;color:#fffae594;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.focus-assignment,.mastery-table-section,.recent-sessions{margin-top:.9rem;padding:1rem;background:#ffffff85;border:1px solid rgba(44,78,55,.12);border-radius:18px}.focus-assignment{display:flex;align-items:center;justify-content:space-between;gap:1rem}.focus-assignment h3,.mastery-table-section h3,.recent-sessions h3{margin:.22rem 0 0;font-family:Georgia,Times New Roman,serif;font-weight:600}.focus-assignment select{width:min(350px,100%)}.report-actions{display:flex;gap:.4rem}.mastery-table{margin-top:.8rem;overflow:hidden;background:#ffffff8c;border:1px solid rgba(42,78,53,.1);border-radius:13px}.mastery-row{display:grid;grid-template-columns:minmax(240px,1.5fr) 90px minmax(160px,.8fr) minmax(120px,.6fr);align-items:center;gap:.7rem;padding:.75rem;border-bottom:1px solid rgba(42,78,53,.09);font-size:.78rem}.mastery-row:last-child{border-bottom:0}.mastery-head{color:#6a766d;background:#2a4e350f;font-size:.67rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.mastery-row>span:first-child{display:flex;min-width:0;flex-direction:column}.mastery-row small{margin-top:.18rem;color:#768178;line-height:1.3}.mini-mastery-track{width:100%;height:7px;margin-top:.3rem;background:#2453341a;border:0}.mini-mastery-track>i{display:block;height:100%;background:linear-gradient(90deg,#d4a33e,#4e9b62);border-radius:inherit}.session-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.7rem}.session-list article{display:grid;grid-template-columns:1fr 1fr;gap:.2rem;padding:.7rem;background:#2b56390f;border-radius:11px;font-size:.7rem}.session-list strong{grid-column:1 / -1;color:#2f5c3f}.session-list span{color:#6c786f}.empty-dashboard-state{margin:.75rem 0 0;color:#6d786f;font-size:.78rem}.danger-text-button{display:inline-flex;align-items:center;gap:.45rem;margin-top:.8rem;padding:0;color:#a04435;background:transparent;border:0;font-size:.75rem;font-weight:750}.danger-text-button svg{width:16px}.high-contrast{--ink: #07130c;--ink-soft: #243027}.high-contrast .learning-console,.high-contrast .representation-panel,.high-contrast .token-tray,.high-contrast .vocabulary-card{background:#fffdeef7;border-color:#173c28}.high-contrast .answer-slot,.high-contrast .token-grid>button,.high-contrast .setting-card{border-color:#22583a}@keyframes aurora-drift{to{transform:translate(16%,9%) rotate(18deg)}}@keyframes grain-shift{0%{transform:translate(0)}25%{transform:translate(2%,-1%)}50%{transform:translate(-1%,2%)}75%{transform:translate(1%,1%)}to{transform:translate(-2%,-1%)}}@keyframes completion-spin{to{transform:rotate(360deg)}}@keyframes star-pulse{to{transform:translateY(-4px) scale(1.14);filter:drop-shadow(0 0 10px rgba(255,222,131,.7))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media(max-width:1180px){.home-screen{grid-template-columns:.86fr 1.14fr}.brand-stage{padding:2rem}.journey-launch{margin-left:0}.lesson-layout{grid-template-columns:minmax(500px,1.08fr) minmax(340px,.92fr)}.world-vista{display:none}.token-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-header{grid-template-columns:1fr auto}.lesson-progress-block{grid-column:1 / -1;grid-row:2;padding:0 .25rem .15rem}.lesson-header-actions{grid-column:2;grid-row:1}}@media(max-width:900px){.home-screen{display:block;min-height:100dvh;padding:.5rem;overflow-y:auto}.brand-stage{min-height:auto;padding:1rem 1rem 0}.brand-art-shell{max-width:580px}.brand-copy{margin-top:-6%}.brand-copy h1{font-size:clamp(2rem,8vw,3.3rem)}.journey-launch{min-height:auto;margin:1rem 0 0}.lesson-screen{min-height:100dvh}.lesson-header,.lesson-layout{width:min(100% - 1rem,760px)}.lesson-layout{grid-template-columns:1fr}.learning-console{min-height:auto}.instruction-sidebar{grid-template-columns:1fr}.representation-panel{order:1}.token-tray{order:0}.vocabulary-card{order:2}.token-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-body{grid-template-columns:1fr}.learner-sidebar{display:flex;align-items:center;gap:.5rem;overflow-x:auto;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-title,.privacy-note{flex:0 0 auto}.sidebar-title h3{display:none}.dashboard-learner{width:max-content;min-width:150px;margin:0}.dashboard-body{grid-template-rows:auto 1fr}.dashboard-summary{grid-template-columns:1fr}.privacy-note{display:none}}@media(max-width:680px){.home-screen{padding:0}.brand-stage{padding-inline:.5rem}.brand-copy{width:100%}.brand-copy p{padding-inline:.75rem}.journey-launch{padding:1rem;border-radius:26px 26px 0 0}.home-menu-bar{gap:.35rem}.home-menu-bar button{flex:1 1 auto;justify-content:center;padding-inline:.5rem}.profile-strip{align-items:flex-start}.profile-list{grid-template-columns:1fr}.active-journey-card{padding:1rem}.journey-summary{align-items:flex-start}.journey-avatar{width:50px;height:50px;border-radius:15px}.journey-avatar svg{width:27px}.journey-metrics{gap:.35rem}.journey-metrics div{padding:.6rem .45rem}.journey-metrics strong{font-size:1.2rem}.entry-select,.practice-modifier-grid,.quick-entry-settings,.skill-choice-grid{grid-template-columns:1fr}.settings-footer{align-items:stretch;flex-direction:column-reverse}.settings-footer>div,.settings-footer .primary-dialog-button{width:100%}.settings-footer>div>button{flex:1 1 auto;justify-content:center}.home-footer-actions{align-items:flex-start;flex-direction:column}.lesson-header{grid-template-columns:1fr auto;gap:.45rem;margin-top:.35rem;padding:.45rem;border-radius:15px}.lesson-header .icon-button{width:40px;height:40px}.lesson-title span{font-size:.58rem}.lesson-title strong{font-size:.86rem}.lesson-header-actions{gap:.3rem}.lesson-header-actions .icon-button:first-child{display:none}.world-stage-label,.lesson-layout{margin-top:.4rem}.learning-console{padding:.8rem;border-radius:21px}.console-topline{align-items:flex-start}.strategy-chip,.mastery-chip{min-height:30px;padding:.34rem .5rem;font-size:.61rem}.problem-heading{grid-template-columns:auto 1fr;gap:.7rem;margin-top:.8rem}.target-medallion{width:84px;height:84px}.target-medallion strong{font-size:2rem}.problem-heading h1{font-size:clamp(1.2rem,6vw,1.6rem)}.problem-heading p{grid-column:1 / -1;font-size:.82rem}.equation-builder{justify-content:flex-start;min-height:105px;padding:.6rem}.answer-slot,.given-number,.target-number-small{width:70px;height:70px;border-radius:16px}.math-token-visual.is-compact{width:57px;height:57px}.operation-symbol{font-size:1.7rem}.console-actions{align-items:stretch;flex-direction:column}.answer-tools{display:grid;grid-template-columns:repeat(4,1fr)}.answer-tools button{min-width:0;flex-direction:column;gap:.15rem;padding:.45rem .2rem;font-size:.64rem}.check-answer-button{width:100%}.token-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.token-grid>button{min-height:100px}.math-token-visual{width:74px;height:74px}.settings-grid{grid-template-columns:1fr}.setting-card{min-height:82px}.dashboard-panel{height:calc(100dvh - .5rem);border-radius:20px}.dashboard-header{height:66px}.dashboard-header h2{font-size:1.2rem}.dashboard-body{height:calc(100% - 66px)}.dashboard-content{padding:.7rem}.summary-cards{grid-template-columns:1fr}.summary-cards article{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:.5rem}.summary-cards strong{margin:0}.focus-assignment,.table-title-row{align-items:stretch;flex-direction:column}.mastery-table{overflow-x:auto}.mastery-row{min-width:700px}.session-list{grid-template-columns:1fr}.completion-overlay article{padding:1.2rem;border-radius:24px}.completion-metrics{gap:.3rem}}@media(max-width:430px){.brand-art{width:114%;max-width:none;margin-left:-7%}.brand-copy{margin-top:-10%}.journey-launch{margin-top:.6rem}.profile-strip .quiet-button{padding-inline:.55rem;font-size:.72rem}.lesson-header,.lesson-layout{width:calc(100% - .5rem)}.lesson-header-actions .icon-button:nth-child(2){display:none}.strategy-chip{max-width:64%}.problem-heading{grid-template-columns:72px 1fr}.target-medallion{width:72px;height:72px}.target-medallion span{font-size:.55rem}.target-medallion strong{font-size:1.65rem}.answer-slot,.given-number,.target-number-small{width:62px;height:62px}.math-token-visual.is-compact{width:50px;height:50px}.token-grid{grid-template-columns:repeat(3,1fr)}}@media print{body{background:#fff}.dashboard-backdrop{position:static;display:block;padding:0;background:#fff}.dashboard-panel{width:100%;height:auto;color:#000;background:#fff;border:0;box-shadow:none}.dashboard-header,.learner-sidebar,.report-actions,.danger-text-button{display:none!important}.dashboard-body{display:block;height:auto}.dashboard-content{overflow:visible;background:#fff}}.lesson-screen{min-height:100dvh;overflow:hidden}.lesson-header{width:min(100% - 1.5rem,1460px);min-height:62px;margin-top:.55rem;padding:.48rem .62rem;background:#08231761;border-color:#fff9dc2e;box-shadow:0 14px 34px #05170e29;-webkit-backdrop-filter:blur(16px) saturate(135%);backdrop-filter:blur(16px) saturate(135%)}.lesson-progress-block>div:first-child span{color:#fff5cfb8;letter-spacing:.05em}.lesson-layout{z-index:5;grid-template-columns:minmax(410px,530px) minmax(180px,1fr) minmax(280px,350px);align-items:start;gap:clamp(.7rem,1.2vw,1.15rem);width:min(100% - 1.5rem,1460px);margin-top:.7rem;pointer-events:none}.learning-console{grid-column:1;min-height:0;height:max-content;padding:clamp(.9rem,1.45vw,1.35rem);pointer-events:auto;background:radial-gradient(circle at 100% 0%,rgba(255,224,142,.16),transparent 30%),linear-gradient(145deg,#fffef5ad,#f0ebd382);border:1px solid rgba(255,255,255,.58);border-radius:25px;box-shadow:0 22px 52px #071e122e,inset 0 1px #ffffffbd;-webkit-backdrop-filter:blur(18px) saturate(128%);backdrop-filter:blur(18px) saturate(128%)}.console-topline{min-height:30px}.strategy-chip{min-height:29px;padding:.32rem .58rem;background:#fff5d278;border-color:#7e591221}.growth-status{display:inline-flex;align-items:center;gap:.34rem;color:#25593d;font-size:.7rem;font-weight:850}.growth-status svg{width:15px;height:15px;color:#9a721f}.problem-heading{grid-template-columns:82px 1fr;gap:.85rem;margin:.75rem 0}.target-medallion{width:82px;height:82px;border-width:2px;box-shadow:0 10px 24px #143f2640,inset 0 0 0 4px #ffffff12}.target-medallion:before{inset:7px}.target-medallion span{margin-bottom:-.25rem;font-size:.54rem}.target-medallion strong{font-size:2rem}.problem-heading h1{margin:.18rem 0 .26rem;font-size:clamp(1.25rem,1.8vw,1.85rem);line-height:1.12}.problem-heading p{font-size:.88rem;line-height:1.42}.equation-builder{min-height:94px;gap:clamp(.3rem,.65vw,.55rem);padding:.55rem;background:#ffffff4f;border-color:#365a4124;border-radius:17px;box-shadow:inset 0 1px #ffffff9e}.equation-part{gap:clamp(.3rem,.65vw,.55rem)}.answer-slot,.given-number,.target-number-small{width:clamp(62px,5.7vw,78px);height:clamp(62px,5.7vw,78px);border-radius:16px}.math-token-visual.is-compact{width:clamp(50px,4.8vw,64px);height:clamp(50px,4.8vw,64px)}.operation-symbol{font-size:clamp(1.4rem,2vw,2rem)}.feedback-card,.hint-card{margin-top:.62rem;padding:.72rem .82rem;background-color:#ffffff5c;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.console-actions{margin-top:.7rem}.answer-tools button{min-height:38px;padding:.48rem .62rem;background:#ffffff5c}.check-answer-button{min-width:176px;min-height:45px}.instruction-sidebar{grid-column:3;display:block;pointer-events:auto}.token-tray{padding:.85rem;color:#fff7dc;background:radial-gradient(circle at 50% 0%,rgba(255,222,131,.13),transparent 45%),#08271975;border:1px solid rgba(255,249,222,.2);border-radius:22px;box-shadow:0 20px 48px #05190f33;-webkit-backdrop-filter:blur(16px) saturate(130%);backdrop-filter:blur(16px) saturate(130%)}.token-tray .eyebrow{color:#fff1c3b8}.token-tray h2{color:#fff9e8;font-size:1.15rem}.token-tray-heading>span,.token-tray-help{color:#fff8dd9e}.token-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.42rem;margin-top:.62rem}.token-grid>button{min-height:86px;background:#ffffff1c;border-color:#ffffff2b;box-shadow:inset 0 1px #ffffff26}.token-grid>button:hover:not(:disabled){transform:translateY(-3px) scale(1.02);background:#fff3;border-color:#ffe4966b;box-shadow:0 12px 24px #04190e33}.token-grid .math-token-visual{width:clamp(62px,5vw,78px);height:clamp(62px,5vw,78px)}.token-grid kbd{color:#fff9e1c2;background:#072417a3;border-color:#ffffff24}.quick-result,.lesson-complete-message{position:fixed;z-index:12;left:61%;display:flex;align-items:center;flex-direction:column;pointer-events:none;text-align:center;transform:translate(-50%);filter:drop-shadow(0 8px 22px rgba(7,23,14,.42))}.quick-result{top:39%;gap:.35rem;color:#fff9df;animation:result-reveal .7s cubic-bezier(.16,1,.3,1) both}.quick-result svg{width:70px;height:70px;padding:16px;color:#193f2a;background:radial-gradient(circle at 35% 30%,#fffbe2,#f3cf6d 72%,#ba7922);border:2px solid rgba(255,255,255,.86);border-radius:50%;box-shadow:0 0 0 9px #ffe58b21,0 0 50px #ffd667a6}.quick-result.is-incorrect svg{color:#fff4dd;background:radial-gradient(circle at 35% 30%,#c87d66,#7c4339 76%,#43251f);box-shadow:0 0 0 9px #f2c0991a,0 0 36px #522a1f6b}.quick-result strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.65rem,3vw,2.7rem);font-weight:600;letter-spacing:-.03em;text-shadow:0 3px 14px rgba(4,23,13,.72)}.lesson-complete-message{top:auto;bottom:clamp(1rem,4vh,3rem);left:clamp(1rem,4vw,4rem);align-items:flex-start;gap:.8rem;width:min(510px,calc(100vw - 2rem));padding:clamp(1rem,2.4vw,1.45rem);color:#fff8dc;pointer-events:auto;text-align:left;background:radial-gradient(circle at 18% 0%,rgba(255,231,142,.2),transparent 48%),linear-gradient(145deg,#09251d85,#0c392861);border:1px solid rgba(255,238,180,.28);border-radius:28px;box-shadow:0 24px 70px #00000052,inset 0 1px #ffffff29;-webkit-backdrop-filter:blur(20px) saturate(145%);backdrop-filter:blur(20px) saturate(145%);animation:completion-reveal .9s cubic-bezier(.16,1,.3,1) both;transform:none}.finale-kicker{display:inline-flex;align-items:center;gap:.46rem;color:#ffe69e}.finale-kicker svg{width:54px;height:54px;color:#ffe392;filter:drop-shadow(0 0 18px rgba(255,222,126,.9))}.finale-kicker span{font-size:.78rem;font-weight:850;letter-spacing:.18em;text-transform:uppercase}.lesson-complete-message h2{max-width:620px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.15rem,4vw,4.5rem);font-weight:500;letter-spacing:-.055em;line-height:.92;text-shadow:0 4px 25px rgba(5,24,14,.7),0 0 45px rgba(255,218,116,.3)}.lesson-complete-message p{max-width:46ch;margin:-.18rem 0 0;color:#fff9e1d1;font-size:.95rem;line-height:1.5}.finale-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;width:100%}.finale-stats span{display:grid;gap:.1rem;padding:.62rem .65rem;color:#fff8e0c2;background:#ffffff17;border:1px solid rgba(255,255,255,.12);border-radius:15px;font-size:.68rem;font-weight:800;text-transform:uppercase}.finale-stats strong{color:#ffe497;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;text-transform:none}.finale-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;width:100%}.finale-button{width:auto;min-width:min(100%,260px);margin:0}@keyframes result-reveal{0%{opacity:0;transform:translate(-50%,22px) scale(.72)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes completion-reveal{0%{opacity:0;transform:translateY(34px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}.high-contrast .learning-console{background:#fffff7d6;border-color:#fff}.high-contrast .token-tray{background:#051f12c7;border-color:#ffffff7a}@media(max-width:1180px){.lesson-layout{grid-template-columns:minmax(390px,1fr) minmax(275px,340px)}.learning-console{grid-column:1}.instruction-sidebar{grid-column:2}.quick-result{left:54%}}@media(max-width:900px){.lesson-screen{overflow-y:auto}.lesson-layout{grid-template-columns:1fr;width:min(100% - 1rem,720px)}.learning-console,.instruction-sidebar{grid-column:1}.token-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-result{top:45%;left:50%}.lesson-screen.is-finale .lesson-layout{display:none}.lesson-complete-message{right:1rem;bottom:1rem;left:1rem;width:auto}.finale-stats{grid-template-columns:1fr}.finale-actions,.finale-button{width:100%}}@media(max-width:680px){.lesson-header{width:calc(100% - .5rem);min-height:54px}.lesson-layout{width:calc(100% - .5rem);margin-top:.35rem}.learning-console{padding:.72rem;border-radius:19px}.problem-heading{grid-template-columns:66px 1fr;gap:.62rem;margin:.55rem 0}.target-medallion{width:66px;height:66px}.target-medallion strong{font-size:1.58rem}.problem-heading p{font-size:.78rem}.equation-builder{min-height:78px}.answer-slot,.given-number,.target-number-small{width:58px;height:58px}.math-token-visual.is-compact{width:47px;height:47px}.console-actions{align-items:stretch;flex-direction:column}.check-answer-button{width:100%}.token-tray{padding:.68rem}.token-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.token-grid>button{min-height:74px}.token-grid .math-token-visual{width:58px;height:58px}}@media(max-width:430px){.growth-status{font-size:.62rem}.token-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.lesson-layout{display:block;width:min(100% - 1.5rem,1460px);pointer-events:none}.lesson-stack{display:grid;gap:.62rem;width:min(530px,39vw);pointer-events:auto}.learning-console{grid-column:auto;background:radial-gradient(circle at 100% 0%,rgba(255,229,157,.19),transparent 34%),linear-gradient(145deg,#fffff785,#eaefdb47);border-color:#ffffff9e;box-shadow:0 22px 52px #071e1229,inset 0 1px #ffffffc7,inset 0 -1px #fff5cf29;-webkit-backdrop-filter:blur(22px) saturate(138%);backdrop-filter:blur(22px) saturate(138%)}.target-medallion{box-shadow:0 10px 24px #143f2640,0 0 30px #e6c46424,inset 0 0 0 4px #ffffff12;animation:medallion-breathe 4.8s ease-in-out infinite}.equation-builder{background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.28),transparent 62%),#edf9f033;border-color:#ffffff6b;box-shadow:inset 0 1px #ffffffb3,0 9px 26px #10372112;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.answer-slot{overflow:visible}.answer-slot:not(.is-filled):after{position:absolute;inset:8px;border:1px solid rgba(72,126,88,.2);border-radius:11px;content:"";animation:answer-ready 2.4s ease-in-out infinite}.answer-slot.is-filled{border-color:color-mix(in srgb,#d9b65f 56%,#315f43);box-shadow:0 10px 24px #21493024,0 0 24px #e7c46229,inset 0 1px #ffffffeb}.answer-slot.is-filled .math-token-visual{animation:token-settle .42s cubic-bezier(.16,1.2,.3,1) both}.instruction-sidebar{grid-column:auto}.token-tray{position:relative;padding:.76rem .82rem .7rem;overflow:hidden;background:linear-gradient(110deg,rgba(255,255,255,.08),transparent 32%),radial-gradient(circle at 70% 0%,rgba(255,222,131,.13),transparent 48%),#07261857;border-color:#fff9de3d;border-radius:20px;box-shadow:0 18px 42px #05190f2b,inset 0 1px #ffffff1f;-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%)}.token-tray:before{position:absolute;top:-70%;left:-18%;width:64%;height:190%;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,255,255,.08),transparent);content:"";transform:rotate(9deg)}.token-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.42rem;margin-top:.52rem}.token-grid>button{--token-accent: #f0c75f;min-height:82px;overflow:visible;background:radial-gradient(circle at 50% 16%,color-mix(in srgb,var(--token-accent) 16%,transparent),transparent 56%),#ffffff13;border-color:#ffffff30;box-shadow:inset 0 1px #ffffff29,0 7px 18px #02150c14;isolation:isolate}.token-grid>button:after{position:absolute;z-index:0;inset:16% 14%;pointer-events:none;background:color-mix(in srgb,var(--token-accent) 30%,transparent);border-radius:50%;content:"";filter:blur(18px);opacity:0;transform:scale(.7);transition:.18s ease}.token-grid .math-token-visual,.token-grid kbd{z-index:1}.token-grid>button:hover:not(:disabled){transform:translateY(-5px) scale(1.035);background:radial-gradient(circle at 50% 14%,color-mix(in srgb,var(--token-accent) 25%,transparent),transparent 62%),#ffffff2b;border-color:color-mix(in srgb,var(--token-accent) 48%,white);box-shadow:0 14px 28px #04190e38,0 0 24px color-mix(in srgb,var(--token-accent) 24%,transparent)}.token-grid>button:hover:not(:disabled):after,.token-grid>button:focus-visible:after{opacity:.88;transform:scale(1)}.token-grid>button:active:not(:disabled){transform:translateY(1px) scale(.95);transition-duration:70ms}.token-grid>button:focus-visible{outline:3px solid color-mix(in srgb,var(--token-accent) 62%,white);outline-offset:2px}.token-grid .math-token-visual{width:clamp(57px,4.3vw,70px);height:clamp(57px,4.3vw,70px);transition:transform .18s cubic-bezier(.16,1,.3,1),filter .18s ease}.token-grid>button:hover:not(:disabled) .math-token-visual{transform:rotate(-2deg) scale(1.06);filter:drop-shadow(0 10px 13px rgba(4,24,14,.34)) brightness(1.06) saturate(1.08)}.token-grid>button:nth-child(2n):hover:not(:disabled) .math-token-visual{transform:rotate(2deg) scale(1.06)}.token-tray-help{display:none}@keyframes medallion-breathe{50%{box-shadow:0 12px 28px #143f2647,0 0 38px #ebc8663d,inset 0 0 0 4px #ffffff17}}@keyframes answer-ready{50%{border-color:#d4ad4866;box-shadow:0 0 16px #ebca7026;transform:scale(.96)}}@keyframes token-settle{0%{opacity:.45;transform:translateY(-18px) scale(.76) rotate(-7deg)}65%{transform:translateY(3px) scale(1.06) rotate(2deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@media(max-width:1180px){.lesson-stack{width:min(490px,47vw)}}@media(max-width:900px){.lesson-stack{width:100%}.token-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:680px){.token-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:430px){.token-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.token-choice{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:element}.token-choice:active:not(:disabled){cursor:grabbing}.equation-builder.is-dragging{border-color:#f2cf7085;box-shadow:inset 0 1px #ffffffc7,0 0 0 4px #f2cf7014,0 14px 34px #1037211f}.equation-builder.is-dragging .answer-slot{background:radial-gradient(circle,#fff2b780,#ffffff40);border-color:#d4ab3e94;animation:drop-space-ready 1.15s ease-in-out infinite alternate}.answer-slot.is-drop-target{z-index:2;transform:translateY(-5px) scale(1.08);background:radial-gradient(circle at 50% 45%,#fffad5f2,#eece708c);border-color:#e0b94e;border-style:solid;box-shadow:0 0 0 6px #ffe18026,0 0 34px #ffd7648c,inset 0 1px #ffffffe6}.equation-builder.is-incorrect{animation:answer-shake .38s ease both;border-color:#89432f61;box-shadow:inset 0 1px #ffffffa6,0 0 0 4px #91412b0f}.equation-builder.is-incorrect .answer-slot.is-filled{background:#7e3b2b1f;border-color:#8037267a;box-shadow:0 0 0 4px #883e2b12,inset 0 1px #ffffff9e}.equation-builder.is-correct .answer-slot.is-filled{border-color:#dcb242b8;box-shadow:0 0 0 5px #ffdf7b1c,0 0 30px #ffd55d5c,inset 0 1px #ffffffeb}.token-drag-preview{position:fixed;z-index:90;width:86px;height:86px;pointer-events:none;transform:translate(-50%,-58%) rotate(3deg) scale(1.08);filter:drop-shadow(0 18px 20px rgba(5,25,14,.36)) drop-shadow(0 0 20px rgba(255,222,123,.38));animation:drag-preview-float .62s ease-in-out infinite alternate}.token-drag-preview .math-token-visual{width:100%;height:100%}@keyframes drop-space-ready{to{box-shadow:0 0 0 5px #ffe28721,0 0 24px #ffd8673d,inset 0 1px #ffffffc7}}@keyframes answer-shake{25%{transform:translate(-5px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}@keyframes drag-preview-float{to{transform:translate(-50%,-64%) rotate(-3deg) scale(1.12)}}@media(prefers-reduced-motion:reduce){.token-drag-preview,.equation-builder.is-dragging .answer-slot{animation:none}}
