/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.block{display:block}.contents{display:contents}.table{display:table}.lowercase{text-transform:lowercase}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-VariableFont_wght.ttf)format("truetype");font-weight:100 900;font-style:normal;font-display:swap}:root{color-scheme:dark;--app-bg:#0c0e11;--surface:#171a1f;--surface-soft:#20242a;--line:#2a2f36;--line-dark:#3a4049;--ink:#f2f3f5;--muted:#9298a2;--green:#52d273;--green-soft:#152b1d;--red:#f06d78;--red-soft:#31191d}*{box-sizing:border-box}body,html{overscroll-behavior:none;min-height:100%}body{color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;background:#07090b;margin:0;font-family:Vazirmatn,sans-serif}button{color:inherit;font:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible{outline-offset:2px;outline:3px solid #48b9624d}.loading-screen{background:var(--app-bg);place-items:center;width:100%;min-height:100svh;display:grid}.loading-screen span{background:var(--ink);color:#fff;border-radius:22px;place-items:center;width:68px;height:68px;font-size:19px;font-weight:900;animation:breathe .9s ease-in-out infinite alternate;display:grid}.game-shell{background:var(--app-bg);width:min(100%,540px);min-height:100svh;margin:0 auto;position:relative;overflow:hidden}.game-shell:after,.game-shell:before{content:"";z-index:15;pointer-events:none;opacity:0;position:absolute;inset:0}.game-shell.correct:before{background:radial-gradient(circle at 50% 46%,#52d27338,#0000 58%);animation:successWash .6s ease-out both}.game-shell.hurry:after{animation:hurryPulse 1.35s ease-in-out infinite;box-shadow:inset 0 0 0 3px #ffa63d73}.game-shell.urgent:after{background:#f06d7809;animation-duration:.68s;box-shadow:inset 0 0 0 4px #f06d789e}.game-header{min-height:76px;padding:max(14px,env(safe-area-inset-top)) 17px 10px;grid-template-columns:44px 1fr 44px;align-items:center;gap:13px;display:grid}.category-bar{overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:7px;height:48px;padding:4px 17px 7px;display:flex;overflow-x:auto}.category-bar::-webkit-scrollbar{display:none}.category-bar button{border:1px solid var(--line);height:35px;color:var(--muted);cursor:pointer;white-space:nowrap;background:#15181d;border-radius:12px;flex:none;padding:0 13px;font-size:9px;font-weight:720}.category-bar button.active{color:var(--ink);background:#292e35;border-color:#69717c;box-shadow:inset 0 0 0 1px #ffffff09}.category-bar button:disabled{cursor:default;opacity:.38}.category-bar button span{color:#5d646e;margin-left:5px;font-size:7px}.header-button{background:var(--surface);cursor:pointer;border:solid var(--line);border-width:1px 1px 3px;border-radius:14px;place-items:center;width:44px;height:44px;padding:0;display:grid;position:relative}.header-button:active{border-bottom-width:1px;translate:0 2px}.header-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.speed-button.active{color:#17110a;background:#f0a23f;border-color:#f0a23f}.speed-button span{background:var(--green);border:2px solid var(--app-bg);color:#fff;border-radius:10px;place-items:center;min-width:24px;height:20px;padding:0 5px;font-size:10px;font-weight:900;display:grid;position:absolute;top:-7px;left:-7px}.level-progress{min-width:0}.level-meta{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;font-size:10px;display:flex}.level-meta strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.level-meta span{color:var(--muted);direction:ltr}.level-meta .streak-counter{color:#ffbd66;background:#211810;border:1px solid #503720;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:3px;min-width:34px;height:22px;padding:0 7px;font-size:10px;font-weight:800;animation:streakLand .4s cubic-bezier(.2,1.7,.4,1) both;display:inline-flex;position:relative;overflow:visible}.streak-counter b{font-size:10px}.streak-counter .streak-flame{transform-origin:50% 90%;font-size:12px;font-style:normal;line-height:1;animation:flameDance .7s ease-in-out infinite alternate}.streak-counter.hot{border-color:#915c22;box-shadow:0 0 15px #ff91274d}.streak-sparks{pointer-events:none;position:absolute;inset:0}.streak-sparks i{--spark-x:-5px;opacity:0;background:#ffb24c;border-radius:50%;width:3px;height:3px;animation:streakSpark .7s ease-out both;position:absolute;top:7px;left:9px}.streak-sparks i:nth-child(2){--spark-x:4px;animation-delay:80ms;left:17px}.streak-sparks i:nth-child(3){--spark-x:0px;animation-delay:.16s;left:12px}.level-track{background:#24282e;border-radius:10px;width:100%;height:8px;overflow:hidden}.level-track span{border-radius:inherit;background:linear-gradient(90deg,#6f747d,#b0b5bd);height:100%;transition:width .3s;display:block}.question-screen{min-height:calc(100svh - 124px);padding:4px 22px max(14px,env(safe-area-inset-bottom));flex-direction:column;display:flex}.question-meta{height:28px;color:var(--muted);align-items:center;gap:7px;font-size:10px;font-weight:700;display:flex}.question-meta>span:first-child{color:var(--ink)}.review-tag,.speed-tag{background:#23272d;border-radius:999px;padding:3px 8px;font-size:8px}.speed-tag{color:#69dc82;background:var(--green-soft);margin-right:auto}.prompt-block{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:142px;display:flex}.prompt-block p{color:var(--muted);margin:0 0 9px;font-size:12px}.prompt-block h1{letter-spacing:-.035em;margin:0;font-size:clamp(48px,14vw,68px);font-weight:800;line-height:1.15}.prompt-block h2{max-width:320px;color:var(--ink);letter-spacing:-.02em;margin:0;font-size:clamp(25px,8vw,34px);font-weight:820;line-height:1.45}.math-prompt b{color:#959ba4;margin:0 7px;font-weight:500}.math-prompt sup{vertical-align:top;margin-left:2px;font-size:.44em}.factor-workspace,.number-workspace{width:100%;max-width:390px;margin:0 auto}.factor-equation,.number-display{border:2px solid var(--line-dark);background:var(--surface);width:100%;height:66px;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;border-radius:15px;justify-content:center;align-items:center;margin-bottom:13px;padding:0 18px;font-size:29px;font-weight:750;transition:all .15s;display:flex;overflow:hidden}.number-display{cursor:pointer}.number-display>span{color:#727983;font-size:14px;font-weight:500}.factor-equation.correct,.number-display.correct{border-color:var(--green);background:var(--green-soft);color:#70df89;transform:scale(1.015)}.factor-equation.wrong,.number-display.wrong{border-color:var(--red);background:var(--red-soft);animation:shake .28s}.keypad{grid-template-columns:repeat(3,1fr);gap:9px;width:min(100%,246px);margin-inline:auto;display:grid}.keypad button,.prime-pad button{aspect-ratio:1;width:100%;min-height:0;color:var(--ink);cursor:pointer;background:linear-gradient(145deg,#252a31,#171a1f 58%);border:1px solid #343a43;border-bottom:3px solid #090b0d;border-radius:20px;font-size:22px;font-weight:760;transition:translate 80ms,border-color .15s,background .15s;box-shadow:0 5px 12px #00000038,inset 0 1px #ffffff0f}.keypad button:hover:not(:disabled),.prime-pad button:hover:not(:disabled){background:linear-gradient(145deg,#2c323a,#1c2025 58%);border-color:#4a515b}.keypad button:active:not(:disabled),.prime-pad button:active:not(:disabled){background:#101216;border-bottom-width:1px;translate:0 3px}.keypad button:disabled,.prime-pad button:disabled{cursor:default}.keypad .zero-key{grid-column:2}.factor-equation-wrap{margin-bottom:14px;position:relative}.factor-equation{height:78px;margin-bottom:0;padding-inline:58px;font-size:clamp(20px,6vw,28px);position:relative}.factor-value{text-overflow:ellipsis;white-space:nowrap;text-align:center;color:#727983;width:100%;font-size:14px;font-weight:500;overflow:hidden}.factor-value.filled{color:var(--ink);font-size:clamp(20px,6vw,28px);font-weight:750}.factor-backspace{border:1px solid var(--line);background:var(--surface-soft);width:39px;height:39px;color:var(--muted);cursor:pointer;border-radius:12px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:10px;translate:0 -50%}.factor-backspace svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.prime-pad{grid-template-columns:repeat(4,1fr);gap:8px;width:min(100%,324px);margin-inline:auto;display:grid}.prime-pad button{border-radius:18px;font-size:19px}.factor-controls{justify-content:center;height:49px;margin-top:10px;display:flex}.confirm-factor{color:#111317;cursor:pointer;background:#eceef1;border:1px solid #e8eaed;border-bottom:3px solid #747982;border-radius:14px;width:min(100%,210px);height:46px;font-size:11px;font-weight:800}.confirm-factor:active:not(:disabled){border-bottom-width:1px;translate:0 2px}.confirm-factor:disabled{color:#656b74;background:#20242a;border-color:#292e35}.selection-workspace{width:100%;max-width:390px;margin:0 auto}.number-board{grid-template-columns:repeat(4,1fr);gap:8px;width:min(100%,310px);margin-inline:auto;display:grid}.number-board button{aspect-ratio:1;color:#d9dce1;cursor:pointer;background:linear-gradient(145deg,#252a31,#171a1f 60%);border:1px solid #333941;border-bottom:3px solid #080a0c;border-radius:17px;width:100%;min-width:0;padding:0;font-size:clamp(15px,4.4vw,19px);font-weight:760;transition:transform .12s,background .14s,border-color .14s;box-shadow:0 4px 10px #00000038,inset 0 1px #ffffff0d}.number-board button:active:not(:disabled){border-bottom-width:1px;transform:translateY(2px)scale(.97)}.number-board button.selected{color:#8df0a4;background:linear-gradient(145deg,#244b31,#173321 65%);border-color:#52d273 #52d273 #24723a;transform:translateY(-1px);box-shadow:0 0 0 1px #52d27326,0 5px 16px #1a79352b}.number-board.wrong{animation:shake .28s}.number-board.correct button.selected{animation:selectedCelebrate .5s cubic-bezier(.2,1.5,.4,1) both}.confirm-selection{color:#111317;cursor:pointer;background:#eceef1;border:1px solid #e8eaed;border-bottom:3px solid #747982;border-radius:14px;width:min(100%,210px);height:46px;margin:10px auto 0;font-size:11px;font-weight:820;display:block}.confirm-selection:active:not(:disabled){border-bottom-width:1px;translate:0 2px}.confirm-selection:disabled{color:#656b74;background:#20242a;border-color:#292e35}.response-line{min-height:38px;color:var(--muted);justify-content:center;align-items:center;gap:7px;font-size:12px;display:flex}.response-line.correct{color:#70df89}.response-line.wrong{color:#f08a93}.success-bloom{place-items:center;width:34px;height:34px;display:grid;position:relative}.success-bloom b{background:var(--green);color:#fff;border-radius:10px;place-items:center;width:28px;height:28px;font:700 14px sans-serif;animation:starBounce .5s cubic-bezier(.2,1.8,.35,1) both;display:grid}.success-bloom i{opacity:0;background:#6ed482;border-radius:50%;width:5px;height:5px;animation:bloomDot .5s ease-out both;position:absolute}.success-bloom i:first-of-type{--dot-x:-18px;--dot-y:-13px}.success-bloom i:nth-of-type(2){--dot-x:19px;--dot-y:-9px;animation-delay:40ms}.success-bloom i:nth-of-type(3){--dot-x:3px;--dot-y:20px;animation-delay:80ms}.hint-box{border:1px solid var(--line);background:#1d2127;border-radius:13px;align-items:center;gap:9px;width:100%;max-width:390px;min-height:55px;margin:0 auto 8px;padding:10px 12px;animation:rise .18s both;display:flex}.hint-box svg{fill:none;width:19px;height:19px;stroke:var(--muted);stroke-width:1.8px;flex:none}.hint-box p{color:#b3b8c0;margin:0;font-size:10px;line-height:1.7}.question-actions{justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:390px;margin:auto auto 0;padding-top:6px;display:flex}.question-actions button{height:45px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;font-size:10px;font-weight:650;display:flex}.question-actions .hint-action{border:1px solid var(--line);border-bottom:3px solid var(--line-dark);background:var(--surface);color:#b2b7bf;border-radius:50%;flex:0 0 44px;width:44px;font-size:18px;font-weight:850}.question-actions .hint-action.active{color:var(--ink);background:#292e35;border-color:#555c66}.question-actions .skip-action{border:1px solid var(--line);background:#1d2127;border-radius:14px;min-width:108px;padding:0 17px}.question-actions button:active{background:#292e35}.question-actions svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.modal-layer,.report-layer{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#000000b8;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.speed-result{background:var(--surface);border-radius:24px;animation:successPop .35s cubic-bezier(.2,1.4,.4,1) both;box-shadow:0 20px 70px #20232840}.level-unlocked,.speed-result{text-align:center;width:min(100%,350px);padding:32px 24px 23px}.level-unlocked{background:#15181d;border:1px solid #31363e;border-radius:25px;animation:successPop .42s cubic-bezier(.2,1.5,.4,1) both;box-shadow:0 22px 80px #00000080}.unlock-orbit{background:radial-gradient(circle,#353b44 0 47%,#0000 49%);border-radius:50%;place-items:center;width:82px;height:82px;margin:0 auto 18px;display:grid;position:relative}.unlock-orbit span{color:#111317;z-index:1;background:#eceef1;border-radius:16px;place-items:center;width:49px;height:49px;font-size:22px;font-weight:900;display:grid;position:relative}.unlock-orbit i{background:#52d273;border-radius:50%;width:7px;height:7px;animation:unlockOrbit 1.6s linear infinite;position:absolute;top:50%;left:50%}.unlock-orbit i:nth-of-type(2){animation-delay:-.53s}.unlock-orbit i:nth-of-type(3){animation-delay:-1.06s}.level-unlocked p,.level-unlocked small{color:var(--muted);font-size:10px}.level-unlocked h2{margin:5px 0;font-size:25px}.level-unlocked p{margin:0}.level-unlocked>button{color:#111317;cursor:pointer;background:#eceef1;border:1px solid #e8eaed;border-bottom:4px solid #747982;border-radius:14px;width:100%;height:50px;margin-top:23px;font-size:11px;font-weight:850}.result-bolt{color:#17110a;background:#f0a23f;border-radius:19px;place-items:center;width:60px;height:60px;margin:0 auto 16px;display:grid}.result-bolt svg{fill:none;stroke:currentColor;stroke-width:2px;width:28px;height:28px}.speed-result p,.speed-result small{color:var(--muted);margin:0;font-size:11px}.speed-result h2{margin:3px 0;font-size:64px}.speed-result>button:not(.text-button){background:var(--green);color:#fff;cursor:pointer;border:0;border-bottom:4px solid #18913a;border-radius:14px;width:100%;height:50px;margin-top:23px;font-weight:800}.text-button{height:38px;color:var(--muted);cursor:pointer;background:0 0;border:0;margin-top:6px;font-size:10px}.report-layer{justify-content:flex-end;align-items:stretch;padding:0}.report-sheet{width:min(100%,510px);height:100%;padding:max(20px,env(safe-area-inset-top)) 20px max(20px,env(safe-area-inset-bottom));background:#101216;animation:sheetIn .25s both;overflow-y:auto;box-shadow:-15px 0 60px #1b1e222e}.report-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.report-header small{color:var(--muted);font-size:9px}.report-header h2{margin:2px 0 0;font-size:24px}.report-header button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.export-button svg,.report-header svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px;height:18px}.report-stats{grid-template-columns:1fr 1fr;gap:8px;display:grid}.report-stats div{border:1px solid var(--line);background:var(--surface);border-radius:15px;flex-direction:column;justify-content:center;min-height:82px;padding:14px;display:flex}.report-stats strong{text-align:right;direction:ltr;font-size:23px}.report-stats span{color:var(--muted);font-size:9px}.log-section,.weak-section{margin-top:23px}.section-title h3,.weak-section h3{margin:0 0 10px;font-size:13px}.log-list,.weak-list{border:1px solid var(--line);background:var(--surface);border-radius:15px;overflow:hidden}.weak-list>div{border-bottom:1px solid #252a31;flex-direction:column;justify-content:center;gap:2px;min-height:55px;padding:10px 13px;display:flex}.log-list>div:last-child,.weak-list>div:last-child{border-bottom:0}.weak-list span{font-size:12px;font-weight:700}.log-list small,.weak-list small{color:var(--muted);font-size:8px}.empty-state{border:1px dashed var(--line-dark);color:var(--muted);text-align:center;border-radius:14px;margin:0;padding:20px;font-size:10px}.section-title{justify-content:space-between;align-items:center;display:flex}.section-title span{color:var(--muted);font-size:8px}.log-list>div{border-bottom:1px solid #252a31;grid-template-columns:28px 1fr auto;align-items:center;gap:9px;min-height:52px;padding:8px 11px;display:grid}.log-list i{color:#fff;border-radius:50%;place-items:center;width:25px;height:25px;font:800 12px sans-serif;display:grid}.log-list i.ok{background:var(--green)}.log-list i.miss{background:var(--red)}.log-list>div>span{flex-direction:column;gap:1px;display:flex}.log-list strong{font-size:10px}.log-list time{color:#6f7680;font-size:8px}.export-button{background:var(--surface);cursor:pointer;border:solid var(--line-dark);border-width:1px 1px 3px;border-radius:13px;justify-content:center;align-items:center;gap:8px;width:100%;height:49px;margin-top:20px;font-size:10px;font-weight:750;display:flex}.clear-button{color:#6f7680;cursor:pointer;background:0 0;border:0;width:100%;height:42px;margin-top:7px;font-size:9px}.clear-button.confirm{color:var(--red);font-weight:750}@keyframes successPop{0%{opacity:0;transform:scale(.45)rotate(-12deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes shake{25%{transform:translate(-7px)}50%{transform:translate(7px)}75%{transform:translate(-4px)}}@keyframes rise{0%{opacity:0;transform:translateY(5px)}}@keyframes starBounce{0%{opacity:0;transform:scale(.2)rotate(-35deg)}65%{transform:scale(1.2)rotate(8deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes successWash{0%{opacity:0;transform:scale(.82)}35%{opacity:1}to{opacity:0;transform:scale(1.12)}}@keyframes hurryPulse{0%,to{opacity:0}45%{opacity:1}}@keyframes streakLand{0%{opacity:0;transform:translateY(4px)scale(.6)rotate(-7deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes flameDance{0%{transform:translateY(1px)rotate(-5deg)scale(.96)}to{transform:translateY(-1px)rotate(5deg)scale(1.08)}}@keyframes streakSpark{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(var(--spark-x),-13px) scale(.2)}}@keyframes selectedCelebrate{0%{transform:translateY(-1px)scale(1)}50%{transform:translateY(-5px)scale(1.07)}to{transform:translateY(-1px)scale(1)}}@keyframes unlockOrbit{0%{transform:rotate(0)translate(37px)rotate(0)}to{transform:rotate(1turn)translate(37px)rotate(-1turn)}}@keyframes bloomDot{0%{opacity:0;transform:translate(0)scale(.3)}35%{opacity:1}to{opacity:0;transform:translate(var(--dot-x),var(--dot-y)) scale(1)}}@keyframes sheetIn{0%{transform:translate(-100%)}}@keyframes breathe{to{transform:scale(1.06)}}@media (min-width:700px){.game-shell{box-shadow:0 0 0 1px #1e21260f}}@media (max-height:700px){.game-header{min-height:64px;padding-top:9px}.question-screen{min-height:calc(100svh - 110px)}.prompt-block{min-height:105px}.prompt-block h1{font-size:46px}.keypad{width:min(100%,210px)}.factor-equation{height:64px}.number-board,.prime-pad{width:min(100%,260px)}.number-board{gap:6px}.response-line{min-height:30px}.question-actions button{height:38px}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}