@font-face{font-family:Noto Sans;src:url(/fonts/NotoSans-Sakha.woff2) format("woff2-variations"),url(/fonts/NotoSans-Sakha.woff2) format("woff2");font-weight:100 900;font-stretch:62.5% 100%;font-style:normal;font-display:swap}@font-face{font-family:"Noto Serif";src:url(/fonts/NotoSerif-Sakha.woff2) format("woff2-variations"),url(/fonts/NotoSerif-Sakha.woff2) format("woff2");font-weight:100 900;font-stretch:62.5% 100%;font-style:normal;font-display:swap}@font-face{font-family:"Noto Serif";src:url(/fonts/NotoSerif-Sakha-Italic.woff2) format("woff2-variations"),url(/fonts/NotoSerif-Sakha-Italic.woff2) format("woff2");font-weight:100 900;font-stretch:62.5% 100%;font-style:italic;font-display:swap}:root{--ink: #1e1a14;--ink-soft: #2a2620;--muted: #5e574c;--paper: #f3eadc;--paper-2: #e8dcc8;--card: #fffaf2;--line: #d4c6b0;--forest: #2c4a3c;--forest-2: #3d5e4d;--forest-soft: #dce6df;--river: #2a4a5c;--amber: #c4923a;--amber-2: #e8c878;--amber-soft: #f5e6c4;--snow: #fbf7f0;--rose: #8b3d32;--glass: rgba(255, 252, 247, .55);--glass-2: rgba(255, 252, 247, .78);--hud: rgba(20, 24, 22, .55);--shadow: 0 1px 2px rgba(30, 26, 20, .06), 0 8px 24px rgba(30, 26, 20, .08);--radius: 16px;--font: "Noto Sans", "DejaVu Sans", sans-serif;--serif: "Noto Serif", "DejaVu Serif", serif;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;background:#1a1814;color:var(--ink);font-family:var(--font);font-weight:400;font-feature-settings:"kern" 1,"liga" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input{font-family:inherit}#app{max-width:430px;height:100dvh;max-height:100dvh;min-height:100dvh;margin:0 auto;background:#132018;position:relative;overflow:hidden;display:flex;flex-direction:column}@media(min-width:500px)and (min-height:640px){body{padding:0;background:#12100c}#app{width:min(430px,calc(100vw - 32px));max-width:430px;height:min(844px,calc(100dvh - 32px));min-height:0;max-height:calc(100dvh - 32px);margin:16px auto;border-radius:28px;box-shadow:0 18px 56px #00000073;border:1px solid #2a2824}}h1,h2,h3{font-family:var(--serif);font-weight:650;letter-spacing:-.015em}#stage{display:none;pointer-events:none}.bleed{position:absolute;inset:0;background-image:var(--bg1);background-size:cover;background-position:center 28%;background-repeat:no-repeat;transform:scale(1.02);pointer-events:none;z-index:0}.bleed.hi{background-image:image-set(var(--bg1) 1x,var(--bg2) 2x,var(--bg3) 3x)}.bleed:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0a0e106b,#0a0e1029 13%,#0a0e100a 30%,#0a0e100d 58%,#0a0e1038 80%,#0a0e107a)}.screen{flex:1;display:flex;flex-direction:column;min-height:0;position:relative;z-index:1;animation:rise .34s ease}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.topbar{display:flex;align-items:center;gap:8px;padding:calc(10px + var(--safe-t)) 12px 8px;z-index:4;flex-shrink:0}.topbar .spacer{flex:1}.hud-pill,.coin-pill,.progress-pill{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:18px;background:var(--hud);color:#f7f3ea;font-weight:650;font-size:.88rem;letter-spacing:.01em;box-shadow:0 2px 10px #0000002e;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12)}.progress-pill{font-variant-numeric:tabular-nums;max-width:52%;min-width:0;flex:0 1 auto}.progress-pill .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--serif);font-weight:650;font-size:1.05rem}.progress-pill .frac{opacity:.9;font-weight:600;font-family:var(--font)}.coin-pill svg,.icon-coin{width:20px;height:20px;display:block}.icon-btn{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:var(--hud);color:#f7f3ea;display:grid;place-items:center;cursor:pointer;appearance:none;padding:0;box-shadow:0 2px 10px #0000002e;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);flex-shrink:0}.icon-btn:active{transform:scale(.96)}.icon-btn svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.review-chip{position:absolute;top:calc(52px + var(--safe-t));right:10px;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:#f7f3ea;background:#2c4a3cb8;padding:3px 8px;border-radius:8px;z-index:5;pointer-events:none}.lang-screen{justify-content:flex-end}.lang-screen .brand{text-align:center;color:#f7f3ea;padding:0 24px 8px;position:relative;z-index:3}.lang-screen .brand h1,.lang-screen h2{font-family:var(--font)}.lang-screen .brand h1{font-size:2.4rem;margin:8px 0 10px;font-style:normal;font-weight:650;display:inline-block;background:#1012107a;padding:4px 18px 8px;border-radius:14px;text-shadow:0 1px 2px rgba(0,0,0,.55)}.lang-screen .brand p{margin:0 auto;font-size:.98rem;line-height:1.45;max-width:22em;background:#10121066;padding:6px 14px;border-radius:12px;text-shadow:0 1px 2px rgba(0,0,0,.5)}.lang-art{display:flex;justify-content:center;margin:14px 0 8px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.25))}.lang-art .art-choron{width:86px;height:106px}.lang-card{position:relative;z-index:3;margin:18px 14px calc(18px + var(--safe-b));background:var(--glass-2);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-radius:22px;padding:18px 16px 16px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.55)}.lang-card h2{margin:0 0 14px;font-size:1.18rem;text-align:center}.lang-grid{display:grid;gap:8px}.lang-opt{appearance:none;border:1.5px solid var(--line);background:#fff;border-radius:14px;padding:13px 14px;font-size:1.05rem;font-weight:650;color:var(--ink);cursor:pointer;text-align:center;transition:border-color .15s,background .15s,transform .12s}.lang-opt[aria-pressed=true],.lang-opt.selected{border-color:var(--forest);background:var(--forest-soft);box-shadow:inset 0 0 0 1px var(--forest)}.lang-opt:active{transform:scale(.99)}.btn-primary,.btn-secondary,.btn-ghost{appearance:none;display:flex;align-items:center;justify-content:center;width:100%;border-radius:14px;font-weight:700;font-size:1.02rem;padding:13px 16px;cursor:pointer;text-decoration:none;border:none;transition:transform .12s,background .15s}.btn-primary{background:var(--forest);color:#f7f3ea;margin-top:12px}.btn-primary:active{background:var(--forest-2);transform:scale(.99)}.btn-secondary{background:#fff;color:var(--forest);border:1.5px solid var(--forest);margin-top:8px}.btn-ghost{background:transparent;color:var(--muted);font-weight:600;font-size:.95rem;margin-top:4px}.map-path-wrap{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;position:relative;z-index:1}.map-canvas{position:relative;width:100%;height:1280px}.map-canvas.journey-map{height:auto;aspect-ratio:1536 / 2752;background-image:var(--bg1);background-size:100% 100%;background-repeat:no-repeat}.map-canvas.journey-map.hi{background-image:image-set(var(--bg1) 1x,var(--bg2) 2x,var(--bg3) 3x)}.map-canvas svg.trail{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;filter:drop-shadow(0 0 6px rgba(255,250,240,.85))}.map-node{position:absolute;transform:translate(-50%,-50%);z-index:2;appearance:none;border:none;background:none;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;width:92px}.map-node .dot{width:46px;height:46px;border-radius:50%;background:#f6f3eceb;border:3px solid #efe8da;color:var(--ink);font-weight:800;font-size:1.05rem;display:grid;place-items:center;box-shadow:0 4px 14px #00000038;transition:transform .15s}.map-node.done .dot{background:var(--forest);border-color:#e8c878;color:#f7f3ea}.map-node.current .dot{background:var(--amber);border-color:#fff6d8;color:#2a1c08;box-shadow:0 0 0 6px #c4923a59,0 0 22px #c4923ab3;animation:glow 1.8s ease-in-out infinite}.map-node.locked .dot{background:#5a5a5a8c;border-color:#fff3;color:#ddd}.map-node.locked{cursor:default}.map-node .label{margin-top:5px;font-family:var(--serif);font-weight:650;font-size:.78rem;color:#f7f3ea;text-shadow:0 1px 6px rgba(0,0,0,.55);text-align:center;line-height:1.15;max-width:100px}.map-node:not(.locked):active .dot{transform:scale(.95)}@keyframes glow{0%,to{box-shadow:0 0 0 5px #c4923a4d,0 0 18px #c4923a8c}50%{box-shadow:0 0 0 9px #c4923a2e,0 0 28px #c4923acc}}.map-deco{position:absolute;pointer-events:none;opacity:.95;z-index:1;filter:drop-shadow(0 6px 10px rgba(0,0,0,.25))}.map-deco.serge{left:10px;bottom:48px;width:54px}.map-deco.choron{right:10px;top:38%;width:62px}.map-deco.khomus{left:10px;top:16%;width:84px}.map-footer{flex-shrink:0;display:flex;gap:6px;padding:8px 12px calc(12px + var(--safe-b));background:linear-gradient(180deg,#10121000,#10121073 30%,#1012109e);z-index:4}.map-footer button,.map-footer a.footer-btn{flex:1;appearance:none;text-decoration:none;border:1px solid rgba(255,255,255,.16);background:var(--hud);color:#f7f3ea;border-radius:14px;padding:10px 6px;font-weight:650;font-size:.82rem;text-align:center;cursor:pointer;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.grid-wrap{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 8px 0;z-index:2}.grid-meta{font-size:.72rem;font-weight:650;letter-spacing:.08em;color:#f7f3ea;text-shadow:0 1px 6px rgba(0,0,0,.45);margin-bottom:8px;background:#14181659;padding:3px 10px;border-radius:10px}.grid{display:grid;gap:5px;justify-content:center}.cell{width:var(--cell, 42px);height:var(--cell, 42px);border-radius:10px;background:#ffffff6b;border:1.5px solid rgba(255,255,255,.72);box-shadow:0 2px 8px #00000014,inset 0 1px #ffffff8c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:grid;place-items:center;font-weight:750;font-size:calc(var(--cell, 42px) * .46);color:transparent;transition:background .25s,color .25s,transform .25s}.cell.empty{visibility:hidden;border:none;background:none;box-shadow:none;backdrop-filter:none}.cell.filled{background:linear-gradient(180deg,#f4efe4,#e8dcc4);color:var(--ink);border-color:#fff8e6f2;box-shadow:0 2px 8px #1e1a1429}.cell.hinted{background:#e8c8788c;color:var(--ink);border-color:var(--amber-2)}.cell.filled.pop{animation:pop .42s cubic-bezier(.2,1.4,.4,1)}.cell.digraph{font-size:calc(var(--cell, 42px) * .32);letter-spacing:-.04em}@keyframes pop{0%{transform:scale(.6)}60%{transform:scale(1.12)}to{transform:scale(1)}}.toast{position:absolute;left:50%;top:calc(64px + var(--safe-t));transform:translate(-50%) translateY(-8px);background:var(--hud);color:#f7f3ea;padding:8px 14px;border-radius:12px;font-weight:650;font-size:.88rem;opacity:0;pointer-events:none;z-index:8;transition:opacity .2s,transform .2s;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);white-space:nowrap;max-width:90%}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.current-word{height:36px;display:flex;align-items:center;justify-content:center;font-weight:750;font-size:1.28rem;letter-spacing:.06em;color:#f7f3ea;text-shadow:0 2px 10px rgba(0,0,0,.45);min-height:36px;z-index:3;font-family:var(--serif)}.current-word.bad{color:#f0c4bc;animation:shake .35s ease}.wheel-row{display:flex;align-items:flex-end;justify-content:space-between;padding:0 8px calc(10px + var(--safe-b));flex-shrink:0;gap:2px;z-index:3}.side-col{display:flex;flex-direction:column;gap:8px;width:58px;flex-shrink:0;align-items:center;padding-bottom:8px}.side-btn{width:58px;display:flex;flex-direction:column;align-items:center;gap:3px;appearance:none;border:none;background:none;cursor:pointer;color:#f7f3ea;padding:0;flex-shrink:0}.side-btn .orb{width:48px;height:48px;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);background:#fffcf7c7;display:grid;place-items:center;box-shadow:0 4px 14px #0000002e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--forest);position:relative}.side-btn .orb svg{width:22px;height:22px}.side-btn span{font-size:.62rem;font-weight:700;color:#f7f3ea;text-shadow:0 1px 4px rgba(0,0,0,.5);text-align:center;line-height:1.15}.side-btn .cost{display:inline-flex;align-items:center;gap:2px;font-size:.68rem}.side-btn .cost .icon-coin{width:11px;height:11px}.side-btn.locked .orb{opacity:.7}.side-btn .lock{position:absolute;right:-2px;bottom:-2px;width:16px;height:16px;border-radius:50%;background:#2a2620;color:#f7f3ea;display:grid;place-items:center;font-size:9px;border:1px solid rgba(255,255,255,.25)}.wheel-wrap{position:relative;width:250px;height:250px;flex-shrink:0;touch-action:none;user-select:none;-webkit-user-select:none;z-index:2}.wheel-disk{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 38%,#fffdf8b8,#ece4d27a 70%,#d2c8b266);border:1.5px solid rgba(255,255,255,.65);box-shadow:inset 0 1px #fffc,0 10px 28px #0000002e;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.wheel-disk.spin{animation:wspin .5s ease}@keyframes wspin{0%{transform:rotate(0)}to{transform:rotate(180deg)}}.wheel-line{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2;filter:drop-shadow(0 0 4px rgba(196,146,58,.85))}.wheel-letter{position:absolute;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;border:none;background:transparent;display:grid;place-items:center;font-weight:750;font-size:1.55rem;color:var(--ink);z-index:3;pointer-events:none;transition:transform .14s ease,background .14s ease,color .14s ease,box-shadow .14s}.wheel-letter.digraph{font-size:1.12rem}.wheel-letter.on{background:var(--forest);color:#f7f3ea;transform:scale(1.1);box-shadow:0 3px 12px #2c4a3c66}.wheel-letter.swap{animation:swapin .35s ease}@keyframes swapin{0%{opacity:0;transform:scale(.7) rotate(-12deg)}to{opacity:1;transform:none}}.overlay{position:absolute;inset:0;background:#10121075;display:flex;align-items:flex-end;justify-content:center;z-index:20;padding:16px 14px calc(16px + var(--safe-b));animation:fade .28s ease;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.overlay.center{align-items:center}.overlay.celebration{background-color:#161412;background-image:var(--bg1);background-size:cover;background-position:center;backdrop-filter:none;-webkit-backdrop-filter:none}.overlay.celebration.hi{background-image:image-set(var(--bg1) 1x,var(--bg2) 2x,var(--bg3) 3x)}.overlay.celebration:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 50% 48%,#10121038,#10121080 58%,#101210b8)}.overlay.celebration>*{position:relative;z-index:1}@keyframes fade{0%{opacity:0}to{opacity:1}}.card{position:relative;background:linear-gradient(180deg,#fffdf8,#f6efe2);border-radius:22px;padding:20px 18px 16px;width:100%;max-width:400px;box-shadow:0 16px 48px #00000047;border:1px solid rgba(255,255,255,.8);animation:cardin .38s cubic-bezier(.2,1,.3,1);max-height:min(92dvh,760px);overflow:auto}@keyframes cardin{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}.card header{text-align:center}.card header .kicker{font-family:var(--serif);font-style:italic;font-weight:650;font-size:2rem;margin:0;color:var(--forest);letter-spacing:-.02em;line-height:1.1}.card header h2{margin:4px 0 12px;font-size:1.02rem;font-family:var(--font);font-weight:600;color:var(--muted)}.complete-art{display:flex;justify-content:center;margin:4px 0 12px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.12))}.complete-art .art-choron{width:86px;height:104px}.xp-pill{display:inline-flex;align-items:baseline;gap:6px;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:8px 18px;font-weight:750;font-size:1.25rem;color:var(--ink);margin:0 auto 14px;box-shadow:var(--shadow)}.xp-pill small{font-size:.75rem;font-weight:600;color:var(--muted)}.region-bar{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;margin:8px 0 14px;font-size:.85rem;font-weight:650;color:var(--ink)}.region-bar .track-row{grid-column:1 / -1;display:flex;align-items:center;gap:8px}.region-bar .track{flex:1;height:14px;background:#2a2620;border-radius:8px;overflow:hidden;position:relative}.region-bar .fill{height:100%;background:linear-gradient(90deg,var(--forest),#5a8a68);border-radius:8px;width:0;transition:width .8s cubic-bezier(.2,1,.3,1)}.chest{width:42px;height:42px;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.15))}.chest.open{animation:pop .5s ease}.reward{display:inline-flex;align-items:center;gap:6px;font-weight:750;color:var(--forest);font-size:1.1rem;margin-bottom:8px}.def-word{font-family:var(--serif);font-weight:650;font-size:1.85rem;text-align:center;margin:4px 0 2px;color:var(--ink);letter-spacing:-.02em}.pronun{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:.92rem;margin-bottom:10px}.pronun button{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--line);background:var(--amber-soft);color:var(--forest);display:grid;place-items:center;cursor:pointer;appearance:none;padding:0}.pronun button svg{width:16px;height:16px}.gloss{text-align:center;margin:0 0 12px;line-height:1.45;color:var(--ink-soft)}.gloss .ru{margin-top:4px;color:var(--muted)}.pager{display:flex;align-items:center;justify-content:space-between;margin:10px 0 4px;font-weight:650;color:var(--muted)}.pager button{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;appearance:none}.pager button:disabled{opacity:.35;cursor:default}.quests-panel{flex:1;min-height:0;overflow-y:auto;padding:6px 14px calc(18px + var(--safe-b));z-index:2}.quests-panel h2{color:#f7f3ea;font-size:1.15rem;margin:8px 0 12px;text-shadow:0 1px 8px rgba(0,0,0,.4)}.quest-card{background:var(--glass-2);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:16px;padding:12px;margin-bottom:10px;display:grid;grid-template-columns:48px 1fr auto;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.5);box-shadow:var(--shadow)}.quest-ico{width:48px;height:48px;border-radius:12px;background:var(--forest-soft);display:grid;place-items:center;color:var(--forest)}.quest-ico svg{width:26px;height:26px}.quest-card .body{min-width:0}.quest-card .body p{margin:0 0 6px;font-weight:650;font-size:.92rem;color:var(--ink);line-height:1.3}.qtrack{height:8px;background:#ddd6c8;border-radius:6px;overflow:hidden}.qtrack .qfill{height:100%;background:var(--forest);border-radius:6px}.quest-card .claim{appearance:none;border:none;background:var(--forest);color:#f7f3ea;font-weight:750;border-radius:12px;padding:8px 10px;cursor:pointer;font-size:.82rem;white-space:nowrap}.quest-card .claim:disabled,.quest-card .claim.done{background:#c8c0b0;color:#5e574c;cursor:default}.quest-card .timer{font-size:.7rem;font-weight:700;color:var(--rose)}.menu-list{display:grid;gap:4px}.menu-list button,.menu-list a{appearance:none;text-decoration:none;background:none;border:none;border-bottom:1px solid var(--line);text-align:left;padding:13px 4px;font-size:1.02rem;font-weight:650;color:var(--ink);cursor:pointer}.found-list{list-style:none;margin:0;padding:0}.found-list li button,.found-list li a{display:block;width:100%;appearance:none;background:none;border:none;border-bottom:1px solid var(--line);text-align:left;padding:11px 4px;font-family:var(--serif);font-size:1.15rem;font-weight:650;color:var(--ink);cursor:pointer;text-decoration:none}.about-screen .about-inner{flex:1;margin:8px 14px calc(18px + var(--safe-b));background:var(--glass-2);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:20px;padding:22px 18px;color:var(--ink);z-index:2}.about-inner p{line-height:1.5}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.coin-pill.shake{animation:shake .4s ease}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.review-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:#fff3;color:#f7f3ea}.cell{background:#fcf9f2e0;border:1.5px solid rgba(255,255,255,.7);box-shadow:0 2px 6px #1410082e,inset 0 1px #ffffffa6;color:#2a2620;backdrop-filter:blur(8px)}.cell.filled{background:#fffaf0;border-color:#e8d9b0;color:#1c1916;box-shadow:0 2px 8px #14100838}.cell.hinted{background:#f3e6c0;border-color:#d4b25a;color:#2a2620}.side-btn{background:none;border:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:52px}.side-btn span:not(.orb):not(.badge):not(.lock){display:none}.side-btn .orb{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#fff8e8,#e8d5a8 55%,#c9b07a);box-shadow:0 4px 12px #14100859,inset 0 1px #ffffffb3;position:relative;border:1.5px solid rgba(255,255,255,.45)}.side-btn .orb.gold{background:radial-gradient(circle at 35% 30%,#fff3c8,#e8c056 55%,#c4923a)}.side-btn .orb svg{width:24px;height:24px}.side-btn .badge{position:absolute;right:-4px;bottom:-2px;background:#2c4a3c;color:#f7f3ea;font-size:.62rem;font-weight:700;line-height:1;padding:3px 5px;border-radius:999px;box-shadow:0 1px 4px #00000059;min-width:20px;text-align:center}.side-btn.locked .orb{filter:saturate(.7);opacity:.85}.side-col{width:58px;flex:0 0 58px;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:flex-end}.side-col.left{justify-content:center}.wheel-row{justify-content:center;gap:8px;align-items:flex-end;padding-bottom:8px}.wheel-letter{font-size:1.65rem;font-weight:750;width:52px;height:52px;margin-left:-26px;margin-top:-26px;text-shadow:0 1px 0 rgba(255,255,255,.6)}.wheel-letter.digraph{font-size:1.2rem}.wheel-disk{background:radial-gradient(circle at 50% 42%,#ffffffb8,#f5ecd68c 55%,#e6d8b46b);border:1.5px solid rgba(255,255,255,.55);box-shadow:0 10px 32px #14100847,inset 0 1px #ffffffb3;backdrop-filter:blur(16px) saturate(1.15)}.tutorial{position:absolute;inset:0;pointer-events:none;z-index:6;opacity:0;transition:opacity .3s ease}.tutorial.show{opacity:1}.tut-bubble{position:absolute;left:50%;bottom:300px;transform:translate(-50%);background:#faf6ecf2;color:#2a2620;padding:10px 16px;border-radius:16px;font-size:.92rem;font-weight:600;text-align:center;box-shadow:0 6px 20px #14100840;max-width:80%;line-height:1.3}.tut-hand{position:absolute;width:72px;height:72px;margin-left:4px;margin-top:2px;transform:translate(-20%,-10%) rotate(-18deg);filter:drop-shadow(0 4px 6px rgba(20,16,8,.35));transition:none}.tut-hand.press{transform:translate(-20%,-10%) rotate(-18deg) scale(.94)}.hand-svg{width:72px;height:72px;display:block}.coach{position:absolute;inset:0;z-index:20;background:#0c0e1073;display:flex;align-items:flex-end;justify-content:center;padding:24px 18px calc(28px + var(--safe-b, 0px));animation:fade .25s ease}.coach-card{background:#faf6ee;color:#2a2620;border-radius:22px;padding:22px 22px 18px;max-width:340px;width:100%;box-shadow:0 16px 40px #0a0c0e59;text-align:center}.coach-card p{margin:0 0 16px;font-size:1.05rem;line-height:1.4;font-weight:550}.found-banner{position:absolute;left:50%;top:38%;transform:translate(-50%,-20%);z-index:8;font-family:var(--serif);font-size:2rem;font-weight:700;color:#fffaf0;text-shadow:0 2px 12px rgba(10,12,14,.55);pointer-events:none;animation:bannerin 1s ease forwards;white-space:nowrap}.found-banner.bonus{color:#ffe08a;font-size:1.55rem}@keyframes bannerin{0%{opacity:0;transform:translate(-50%,10%) scale(.8)}22%{opacity:1;transform:translate(-50%,-20%) scale(1.06)}70%{opacity:1;transform:translate(-50%,-30%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.96)}}.sparks{position:absolute;inset:0;pointer-events:none;overflow:visible}.sparks span{position:absolute;left:50%;top:36%;width:8px;height:8px;margin:-4px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff6d0,#e0b04a);box-shadow:0 0 6px #e0b04acc;animation:spark .85s ease-out forwards;animation-delay:var(--delay, 0ms);--a: 0deg;--r: 48px}@keyframes spark{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scale(.4)}70%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateY(calc(-1 * var(--r))) scale(.2)}}.bonus-head{margin:14px 0 6px;font-size:.95rem;font-weight:650;color:#6a5428}.map-footer button.locked{opacity:.5}.quest-card .claim{background:#2f6b48;color:#f7f3ea;border:0;border-radius:14px;padding:8px 12px;font-weight:700}.quest-card .claim:disabled{background:#ddd6c8;color:#7a7266}.card header .kicker{font-family:var(--serif);font-style:italic;font-size:2rem;font-weight:650;color:#2c4a3c;line-height:1.15}@media(max-height:640px){.wheel-wrap{width:186px;height:186px}.wheel-row{padding-bottom:4px}.tut-bubble{bottom:220px}.grid-wrap{padding-top:0}}@media(orientation:landscape)and (max-height:500px){.wheel-wrap{width:128px;height:128px}.wheel-row{padding-bottom:0;padding-top:0}.side-btn .orb{width:40px;height:40px}.side-col,.side-col.left{width:44px;flex-basis:44px}.topbar{padding-top:2px;padding-bottom:2px}.grid-meta{margin-bottom:2px;padding:1px 8px}.current-word{margin:0;font-size:1.1rem}}.review-chip{display:none}.topbar{overflow:visible;gap:6px;min-width:0}.topbar .spacer{flex:0 0 0;width:0;min-width:0;margin:0}.progress-pill{flex:1 1 auto;flex-direction:column;max-width:none;min-width:0;overflow:visible;gap:0;height:auto;min-height:36px;padding:3px 11px;justify-content:center;align-items:center;border-radius:18px}.progress-pill .nm{overflow:visible;text-overflow:clip;white-space:nowrap;font-size:.92rem;line-height:1.15;min-width:min-content;flex:0 0 auto;max-width:100%;text-align:center}.progress-pill .frac{flex-shrink:0;font-size:.68rem;line-height:1.1;opacity:.88}.review-badge{margin-left:0;flex:0 0 auto;font-size:.52rem;padding:2px 5px;letter-spacing:.06em;line-height:1.2;align-self:center}.coin-pill{flex-shrink:0;padding:0 9px}#wheel-letters{position:absolute;inset:0;z-index:3;pointer-events:none}.wheel-disk{background:#efe6d0;background-image:radial-gradient(circle at 32% 28%,#fffcf4eb,#efe6d000 46%),radial-gradient(circle at 50% 100%,rgba(90,70,40,.1),transparent 58%);border:3px solid #d8c9a6;box-shadow:0 16px 36px #14100857,0 2px #ffffffb8 inset,0 -14px 22px #503e2424 inset,0 0 0 1px #5a462838;backdrop-filter:none;-webkit-backdrop-filter:none}.wheel-disk:before{content:"";position:absolute;inset:7px;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);box-shadow:inset 0 0 0 1px #6e5a3729;pointer-events:none}.wheel-disk:after{content:"";position:absolute;left:16%;top:10%;width:48%;height:34%;border-radius:50%;background:#ffffff47;filter:blur(8px);pointer-events:none}.wheel-line{filter:drop-shadow(0 0 3px rgba(232,200,120,.85));overflow:visible}.wheel-letter{overflow:visible;font-weight:650;font-variation-settings:"wght" 650,"wdth" 100;font-size:1.7rem;width:58px;height:58px;margin-left:-29px;margin-top:-29px;text-shadow:0 1px 0 rgba(255,255,255,.8),0 2px 5px rgba(30,20,10,.22);text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;color:#1c1814}.wheel-letter.digraph{font-size:1.18rem}.wheel-letter.on{background:#2c4a3c;background-image:radial-gradient(circle at 36% 30%,#4d6e5c,#2c4a3c 58%,#1c3228);color:#fff8e8;transform:scale(1.16);box-shadow:0 0 0 3px #e8c878,0 0 16px #c4923a8c,0 5px 12px #14100861;text-shadow:0 1px 2px rgba(0,0,0,.4);border:0}.cell{background:#f4efe4;background-image:linear-gradient(180deg,#fffcf5eb,#e8dec8c7);border:1px solid rgba(255,255,255,.88);border-bottom-color:#c9b894;box-shadow:0 3px #c4b494,0 5px 10px #14100833,inset 0 1px #fffffff2;backdrop-filter:blur(6px);color:transparent}.cell.filled{background:#f7f0e2;background-image:linear-gradient(180deg,#fffaf0,#efe3cc);color:#1c1916;border-color:#efe6d0;border-bottom-color:#c4ae82;box-shadow:0 3px #c4ae82,0 5px 12px #14100838,inset 0 1px #fff;text-shadow:0 1px 0 rgba(255,255,255,.55)}.cell.hinted{background:#f3e6c0;background-image:linear-gradient(180deg,#fbf0c8,#efd78a);border-color:#d4b25a;color:#2a2620}.fly-letter{position:absolute;z-index:9;pointer-events:none;display:grid;place-items:center;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:9px;background:#fffaf0;background-image:linear-gradient(180deg,#fffaf0,#efe3cc);color:#1c1916;font-weight:700;font-size:1.15rem;box-shadow:0 3px #c4ae82,0 6px 14px #14100847;animation:flygrid .52s cubic-bezier(.2,.75,.25,1) forwards;animation-delay:var(--delay, 0ms);text-shadow:0 1px 0 rgba(255,255,255,.55)}@keyframes flygrid{0%{opacity:1;transform:translate(0) scale(1.05)}78%{opacity:1;transform:translate(var(--dx),var(--dy)) scale(1.12)}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.86)}}.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}.confetti i{position:absolute;left:var(--x);top:-12px;width:var(--s);height:var(--s);background:var(--c);border-radius:1px;opacity:.95;animation:confetti-fall 1.35s ease-out forwards;animation-delay:var(--d);transform:rotate(var(--rot))}.confetti i.rect{width:var(--s);height:calc(var(--s) * .45);border-radius:1px}.confetti i.dot{border-radius:50%}.confetti i.square{border-radius:2px}@keyframes confetti-fall{0%{opacity:1;transform:translate(0) rotate(var(--rot))}to{opacity:0;transform:translate(var(--drift),78vh) rotate(calc(var(--rot) + 220deg))}}.reward #reward-num{font-variant-numeric:tabular-nums}.complete-sparkle .sparks span{background:radial-gradient(circle at 30% 30%,#fff6d0,#e0b04a)}@media(orientation:landscape)and (max-height:500px){body{padding:0}#app{max-width:none;width:100%;height:100dvh;min-height:100dvh;max-height:100dvh;border-radius:0;box-shadow:none;border:0}.wheel-wrap{width:118px;height:118px}.wheel-letter{font-size:1.05rem;width:36px;height:36px;margin-left:-18px;margin-top:-18px}.wheel-letter.digraph{font-size:.82rem}.wheel-row{padding:0 6px 2px;max-height:128px}.side-btn .orb{width:34px;height:34px}.side-btn .orb svg{width:16px;height:16px}.side-col,.side-col.left{width:40px;flex-basis:40px;gap:5px}.topbar{padding-top:2px;padding-bottom:2px;gap:4px}.hud-pill,.coin-pill{height:30px;padding:0 8px}.progress-pill{min-height:30px;padding:2px 8px}.grid-meta{margin-bottom:2px;padding:1px 8px}.current-word{margin:0;font-size:1rem;min-height:22px}.tut-bubble{bottom:140px}}@media(prefers-reduced-motion:reduce){.fly-letter,.confetti i{animation:none;opacity:0}}@media(min-width:860px)and (min-height:640px){html,body{height:100%;overflow:hidden}body{padding:0;background:#12100c}#stage{display:block;position:fixed;inset:0;z-index:0;background-image:var(--bg1);background-size:cover;background-position:center 28%;background-repeat:no-repeat;background-attachment:fixed}#stage.hi{background-image:var(--bg3)}#stage:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,#0a0c0e14,#0a0c0e52 62%,#0a0c0e85)}#app{position:relative;z-index:1;width:min(430px,calc(100vw - 48px));max-width:430px;height:min(860px,calc(100dvh - 40px));min-height:0;max-height:calc(100dvh - 40px);margin:20px auto;border-radius:28px;box-shadow:0 22px 64px #0000008c,0 0 0 1px #ffffff14;border:1px solid #2a2824}#app .bleed{transform:none;background-attachment:fixed;background-position:center 28%}#app .bleed.hi{background-image:var(--bg3)}}@media(min-width:860px)and (min-height:640px)and (max-height:820px){#app{height:calc(100dvh - 32px);max-height:calc(100dvh - 32px);margin:16px auto}}.post-level{display:flex;flex-direction:column;gap:0;margin-top:4px}.post-level .btn-secondary{margin-top:0}.post-level .btn-primary{margin-top:8px}.get-app{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);text-align:center}.get-app-title{margin:0 0 8px;font-size:.78rem;font-weight:650;letter-spacing:.04em;color:var(--muted)}.store-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.store-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border-radius:12px;border:1.5px solid var(--forest);background:#fff;color:var(--forest);font-weight:700;font-size:.88rem;text-decoration:none;cursor:pointer}.store-btn.soon,.store-btn:disabled{cursor:default;border-color:var(--line);background:#f3eee4;color:var(--muted);opacity:1}.store-btn:not(.soon):not(:disabled):active{transform:scale(.99)}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}@media(max-width:380px){.wheel-wrap{width:216px;height:216px}.wheel-row{gap:4px;padding-left:4px;padding-right:4px}.side-col,.side-col.left{width:50px;flex:0 0 50px;flex-basis:50px}.side-btn{width:50px;min-width:0}.side-btn .orb{width:46px;height:46px}.wheel-letter{width:48px;height:48px;margin-left:-24px;margin-top:-24px;font-size:1.45rem}}
