@font-face{font-family:Nunito;src:url(/fonts/Nunito-Variable.ttf)format("truetype");font-style:normal;font-weight:400 900;font-display:swap}:root{--page:#0d0a18;--surface:#151124;--surface-raised:#211b36;--surface-hover:#2c2546;--console-top:#2b2347;--console-bottom:#1a162d;--border:#383050;--border-strong:#5a4f76;--ink:#fff8eb;--ink-muted:#b4abc7;--ink-subtle:#756d8b;--brand:#ffd45a;--brand-dark:#a76d16;--brand-soft:#3a3151;--success:#67df94;--danger:#ff7283;--coral:#ff6173;--rose:#ff945c;--amber:#ffd34f;--lime:#5ed47b;--cyan:#48cbd0;--blue:#6588ff;--violet:#9e71f5;--magenta:#ef70ba;color:var(--ink);background:var(--page);font-family:Nunito,Avenir Next Rounded,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--page)}body{background:radial-gradient(circle at 50% -10%, #30204d 0, var(--page) 39rem);min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.app-shell{background:radial-gradient(circle at 50% 2%,#2d2048 0,#0000 25rem);min-height:100dvh;padding-bottom:82px}.app-surface{width:min(100%,520px);min-height:calc(100dvh - 82px);padding:max(14px, env(safe-area-inset-top)) 18px 28px;background:linear-gradient(180deg, #18132a 0, var(--surface) 28rem);flex-direction:column;margin:0 auto;animation:.35s ease-out both screen-in;display:flex;overflow:visible}.topbar{z-index:10;top:max(14px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#18132af2;border-bottom:1px solid #ffffff12;grid-template-columns:48px 1fr minmax(48px,auto);align-items:center;height:68px;display:grid;position:sticky}.top-title{text-align:center}.top-title b{color:var(--ink);letter-spacing:.12em;text-shadow:0 2px #0008;font-size:13px;font-weight:900}.brand-topbar{grid-template-columns:48px minmax(0,1fr) 48px}.brand-topbar .top-title{text-align:center}.brand-lockup{justify-content:center;align-items:center;width:100%;display:inline-flex}.brand-wordmark{color:var(--ink);letter-spacing:.01em;text-shadow:0 3px #080612,0 6px 14px #0006;align-items:center;gap:1px;font-size:27px;font-weight:1000;line-height:1;display:inline-flex}.brand-wordmark span:first-child{color:var(--coral)}.brand-wordmark span:nth-child(2){color:var(--rose)}.brand-wordmark span:nth-child(3){color:var(--amber)}.brand-wordmark span:nth-child(4){color:var(--lime)}.brand-wordmark span:nth-child(5){color:var(--cyan)}.brand-wordmark span:nth-child(6){color:var(--violet)}.top-actions{justify-content:flex-end;align-items:center;gap:3px;display:flex}.top-timer{color:var(--brand);font-variant-numeric:tabular-nums;font:800 13px ui-monospace,SFMono-Regular,monospace}.icon-button{width:46px;height:46px;color:var(--ink);background:0 0;border:0;border-radius:13px;place-items:center;padding:0;font-size:29px;transition:transform .14s,background-color .14s;display:grid}.icon-button:active{background:var(--surface-hover);transform:scale(.9)}.bottom-nav{z-index:5;height:82px;padding:6px max(14px, calc((100vw - 520px)/2 + 14px)) calc(7px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141020f2;border-top:1px solid #ffffff14;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #08061270}.bottom-nav button{min-height:48px;color:var(--ink-subtle);background:0 0;border:0;border-radius:14px;align-content:center;place-items:center;gap:3px;font-size:11px;font-weight:800;transition:color .18s,transform .18s,background-color .18s;display:grid}.bottom-nav button:active{transform:scale(.92)}.bottom-nav button.active{color:var(--brand);background:#ffd45a0d}.bottom-nav button.active svg{filter:drop-shadow(0 3px 8px #ffd45a55)}.kicker,.section-label,.home-eyebrow{color:var(--ink-muted);letter-spacing:.14em;margin:0;font-size:10px;font-weight:900}.primary-button,.check-button{background:var(--brand);color:#24182e;min-height:54px;box-shadow:0 6px 0 var(--brand-dark), 0 12px 24px #0005;text-transform:uppercase;letter-spacing:.035em;border:0;border-radius:15px;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-size:15px;font-weight:1000;transition:transform .12s,box-shadow .12s,filter .15s;display:flex;position:relative;overflow:hidden}.primary-button:after,.check-button:not(:disabled):after{content:"";background:#fff8;width:25%;animation:.75s ease-out .45s both cta-sweep;position:absolute;inset:-30% auto -30% -35%;transform:skew(-20deg)}.primary-button:active,.check-button:active{box-shadow:0 2px 0 var(--brand-dark), 0 5px 12px #0005;transform:translateY(4px)scale(.99)}.home-page{text-align:center;flex-direction:column;align-items:center;min-height:calc(100dvh - 218px);padding:clamp(26px,6vh,52px) 4px 24px;display:flex}.home-stage{background:radial-gradient(circle at 50% 22%,#4a376d 0,#2a2145 45%,#201a35 100%);border:1px solid #75659b70;border-radius:28px;width:min(100%,386px);padding:30px 18px 27px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff2a,inset 0 -8px #0d09204d,0 18px 34px #07051170}.home-stage:before,.home-stage:after{content:"";filter:blur(35px);opacity:.35;pointer-events:none;border-radius:50%;width:90px;height:90px;position:absolute}.home-stage:before{background:var(--coral);top:40px;left:-30px}.home-stage:after{background:var(--cyan);top:80px;right:-35px}.home-eyebrow{z-index:1;color:#d4c7ec;position:relative}.home-copy{z-index:1;position:relative}.home-copy h1{letter-spacing:-.045em;text-wrap:balance;text-shadow:0 4px #130d28,0 10px 24px #07051180;max-width:340px;margin:11px auto 0;font-size:clamp(29px,8.4vw,40px);font-weight:1000;line-height:.99}.mini-code{z-index:1;perspective:500px;justify-content:center;gap:10px;margin:31px 0 34px;display:flex;position:relative}.mini-code i{--tile-color:var(--coral);color:#fff;width:55px;height:55px;box-shadow:inset 0 4px 8px #fff4, inset 0 -7px #0003, 0 7px 0 color-mix(in srgb, var(--tile-color), #000 42%), 0 12px 18px #0005;text-shadow:0 2px #0006;animation:tile-pop .55s calc(var(--tile-index) * 70ms + .14s) cubic-bezier(.18,.89,.32,1.35) both;border:2px solid #ffffff4a;border-radius:15px;place-items:center;font-size:23px;font-style:normal;font-weight:1000;display:grid}.mini-code i.coral{--tile-color:var(--coral)}.mini-code i.amber{--tile-color:var(--amber)}.mini-code i.lime{--tile-color:var(--lime)}.mini-code i.cyan{--tile-color:var(--cyan)}.mini-code i{background:linear-gradient(145deg, color-mix(in srgb, var(--tile-color), #fff 12%), var(--tile-color))}.mini-code i span{transform:translateY(-1px)}.primary-play{z-index:1;gap:12px;width:100%;display:grid;position:relative}.primary-play .primary-button{width:100%}.primary-play small{color:#cbc0dd;font-size:13px;font-weight:700}.mode-cards{grid-template-columns:1fr 1fr;gap:10px;width:min(100%,370px);margin-top:18px;display:grid}.mode-cards button{min-height:68px;color:var(--ink);text-align:center;background:#241d3980;border:1px solid #ffffff16;border-radius:17px;padding:9px;transition:transform .14s,background-color .14s;box-shadow:inset 0 1px #ffffff12}.mode-cards button:active{background:var(--surface-hover);transform:scale(.96)}.mode-cards b,.mode-cards span{display:block}.mode-cards b{font-size:14px;font-weight:900}.mode-cards span{color:var(--ink-muted);margin-top:3px;font-size:11px}.route-page{padding:28px 2px}.route-intro{margin-bottom:28px}.route-intro h1,.daily-hero h1,.empty-state h1{letter-spacing:-.045em;text-shadow:0 4px #08061280;margin:8px 0 10px;font-size:clamp(30px,8vw,40px);font-weight:1000;line-height:1}.route-intro>p:last-child,.empty-state>p{max-width:430px;color:var(--ink-muted);margin:0;font-weight:600;line-height:1.45}.chapter-card{border-top:1px solid var(--border);grid-template-columns:1fr auto;gap:7px;padding:20px 0;display:grid}.chapter-card:last-child{border-bottom:1px solid var(--border)}.chapter-card p{color:var(--ink-muted);letter-spacing:.1em;margin:0;font-size:10px;font-weight:900}.chapter-card h2{margin:5px 0;font-size:21px;font-weight:1000}.chapter-card span{color:var(--ink-muted);font-size:13px}.chapter-card>b{color:var(--brand);font:800 13px ui-monospace,monospace}.chapter-continue{border:0;border-bottom:1px solid var(--border);min-height:44px;color:var(--ink);background:0 0;grid-column:1/-1;justify-content:space-between;align-items:center;padding:0;font-weight:900;display:flex}.chapter-continue:disabled{color:var(--ink-subtle);cursor:not-allowed}.level-grid{grid-column:1/-1;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:7px;display:grid}.level-grid button{aspect-ratio:1;border:1px solid var(--border);background:linear-gradient(180deg, var(--surface-raised), #181329);color:var(--ink);border-radius:12px;font:800 12px ui-monospace,monospace;box-shadow:inset 0 1px #fff1,0 3px #090713}.level-grid small{color:var(--ink-subtle);margin-top:3px;font-size:8px;display:block}.level-grid button.done{border-color:var(--success)}.level-grid button.current{border:2px solid var(--brand);color:var(--brand)}.level-grid button:disabled{opacity:.4}.daily-hero{padding:34px 0}.daily-hero .rule-line{border-block:1px solid var(--border);color:var(--ink-muted);margin:25px 0;padding:14px 0;font:700 12px ui-monospace,monospace}.difficulty-list{border-top:1px solid var(--border);margin-bottom:20px;display:grid}.difficulty-list button{border:0;border-bottom:1px solid var(--border);min-height:66px;color:var(--ink);text-align:left;background:0 0;grid-template-columns:90px 1fr;gap:8px;padding:12px 4px;display:grid}.difficulty-list button.selected{color:var(--brand)}.difficulty-list b{text-transform:capitalize;font-weight:1000}.difficulty-list span{color:var(--ink-muted);font-size:12px;line-height:1.4}.stats-grid{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;display:grid}.stats-grid article{border-bottom:1px solid var(--border);min-height:100px;padding:16px 4px}.stats-grid article:nth-child(odd){border-right:1px solid var(--border)}.stats-grid span{color:var(--ink-muted);font-size:12px;display:block}.stats-grid b{color:var(--brand);margin-top:12px;font-size:22px;font-weight:1000;display:block}.empty-state{padding:65px 0}.settings-page h1{font-size:34px;font-weight:1000}.settings-page label,.settings-help{border:0;border-bottom:1px solid var(--border);width:100%;min-height:64px;color:var(--ink);background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:8px 0;font-weight:800;display:grid}.setting-copy{text-align:left;align-items:center;gap:10px;min-width:0;line-height:1.25;display:flex}.setting-copy svg{flex:0 0 24px;width:24px;height:24px}.setting-text{min-width:0}.settings-page input{width:22px;height:22px;accent-color:var(--brand);margin:0}.settings-page select{border:1px solid var(--border-strong);background:var(--surface-raised);min-width:122px;min-height:44px;color:var(--ink);border-radius:12px;padding:0 34px 0 12px;font-size:16px;font-weight:800}.settings-page select:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.settings-help{text-align:left;grid-template-columns:minmax(0,1fr)}.settings-about{background:#211b3680;border:1px solid #ffffff18;border-radius:19px;margin-top:28px;padding:19px}.settings-about h2{color:var(--ink);letter-spacing:-.03em;margin:7px 0 5px;font-size:24px}.settings-about p:not(.kicker){color:var(--ink-muted);margin:0;font-size:13px;font-weight:600;line-height:1.45}.settings-about div{flex-wrap:wrap;gap:8px;margin-top:15px;display:flex}.settings-about a,.settings-about span{border:1px solid var(--border);min-height:34px;color:var(--ink);border-radius:10px;align-items:center;padding:0 10px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex}.settings-about a{color:var(--brand)}.settings-about .project-links{gap:8px;margin-top:12px;display:grid}.settings-about .project-links a{border:1px solid var(--border);min-height:58px;color:var(--ink);border-radius:12px;grid-template-rows:auto auto;grid-template-columns:38px 1fr;column-gap:10px;padding:9px;text-decoration:none;display:grid}.settings-about .project-links img{object-fit:contain;background:#0d0a18;border-radius:10px;grid-row:1/3;width:38px;height:38px}.settings-about .project-links b{color:var(--brand);font-size:13px}.settings-about .project-links span{color:var(--ink-muted);font-size:11px;font-weight:600}.site-footer{text-align:center;margin-top:auto;padding:22px 0 4px}.site-footer a{color:var(--ink-subtle);letter-spacing:.08em;font-size:12px;font-weight:900;text-decoration:none;transition:color .16s}.site-footer a:hover,.site-footer a:focus-visible{color:var(--brand)}.game-page{padding:14px 0 12px}.game-objective{padding:0 4px 13px}.game-objective h1{letter-spacing:-.025em;margin:0 0 4px;font-size:21px;font-weight:1000}.game-objective p{color:var(--ink-muted);margin:0;font-size:12px;font-weight:700}.game-objective .tutorial-hint{color:var(--brand);margin-top:10px;font-weight:900}.game-console{background-image:radial-gradient(circle at 50% 0, #3a3157 0, transparent 48%), linear-gradient(180deg, var(--console-top), var(--console-bottom));border:1px solid #73668f70;border-radius:23px;padding:12px 11px 14px;position:relative;box-shadow:inset 0 1px #ffffff26,inset 0 -8px #0b081a55,0 14px 30px #07051175}.game-console:before,.game-console:after{content:"";background:#0c0918;border-radius:50%;width:5px;height:5px;position:absolute;top:9px;box-shadow:inset 0 1px #ffffff1f}.game-console:before{left:10px}.game-console:after{right:10px}.history-section{margin:0}.history-empty-state{min-height:4px}.history-list{scrollbar-width:thin;gap:5px;max-height:136px;display:grid;overflow:auto}.history-row{min-height:43px;color:var(--ink);text-align:left;background:#120e2180;border:1px solid #0000;border-radius:12px;grid-template-columns:20px 1fr auto;align-items:center;gap:7px;padding:3px 7px;display:grid}.history-row.selected{background:#302843;border-color:#7d70a0;box-shadow:inset 0 1px #ffffff12}.history-row.just-submitted{animation:.3s cubic-bezier(.2,.9,.3,1.25) both row-reveal}.history-number,.history-summary{color:var(--ink-muted);font:700 9px ui-monospace,monospace}.history-slots{gap:5px;display:flex}.history-slots i{color:#16101f;border-radius:10px;place-items:center;width:35px;height:35px;font-size:12px;font-style:normal;font-weight:1000;display:grid;box-shadow:inset 0 3px #fff4,inset 0 -4px #0003,0 3px #090712}.coral{background:var(--coral)}.rose{background:var(--rose)}.amber{background:var(--amber)}.lime{background:var(--lime)}.cyan{background:var(--cyan)}.blue{background:var(--blue)}.violet{background:var(--violet)}.magenta{background:var(--magenta)}.feedback-dock{min-height:59px;color:var(--ink);background:#110e1f99;border:1px solid #ffffff15;border-radius:13px;margin:9px 0 10px;padding:9px 10px;animation:.26s ease-out both feedback-in;box-shadow:inset 0 1px #ffffff0d}.feedback-dock>span{color:var(--ink-muted);letter-spacing:.1em;margin-bottom:6px;font-size:9px;font-weight:900;display:block}.feedback-empty b{color:var(--ink-subtle);font-size:12px;font-weight:700}.feedback-line{white-space:nowrap;justify-content:space-between;align-items:center;gap:4px;display:flex}.feedback-line b{font:800 11px ui-monospace,monospace}.feedback-line b em{text-transform:uppercase;font-style:normal}.feedback-line>i{color:#5d5571;font-style:normal}.feedback-line .signal-exact{color:var(--success)}.feedback-line .signal-misplaced{color:var(--amber)}.feedback-line .signal-wrong{color:#d0c8dc}.feedback-dock:not(.feedback-empty) .feedback-line b{animation:.16s cubic-bezier(0,0,0,1) both clue-reveal}.feedback-dock:not(.feedback-empty) .feedback-line b:nth-of-type(2){animation-delay:50ms}.feedback-dock:not(.feedback-empty) .feedback-line b:nth-of-type(3){animation-delay:.1s}.feedback-expanded{padding:13px}.feedback-expanded .feedback-line{font-size:13px}.feedback-definitions{gap:8px;margin-top:14px;display:grid}.feedback-definitions p{justify-content:space-between;gap:18px;margin:0;font-size:12px;display:flex}.feedback-definitions span{color:var(--ink-muted);text-align:right}.current-guess{text-align:center;padding:5px 0 14px}.current-guess .section-label{color:#c6badb;margin-bottom:10px;display:block}.current-slots{perspective:500px;justify-content:center;gap:clamp(7px,2.3vw,10px);display:flex}.code-slot{color:#16101f;background:linear-gradient(145deg,#312943,#1b172a);border:2px solid #5f5577;border-radius:17px;place-items:center;width:clamp(66px,17.5vw,72px);height:clamp(66px,17.5vw,72px);padding:0;font-size:20px;font-weight:1000;transition:transform .14s,border-color .14s,box-shadow .14s;display:grid;box-shadow:inset 0 2px #ffffff17,inset 0 -7px #07051070,0 5px #0a0715,0 9px 15px #0005}.code-slot:active{transform:translateY(3px)}.code-slot.selected{border-color:var(--brand);box-shadow:inset 0 2px #ffffff17,inset 0 -7px #07051070,0 5px #0a0715,0 0 0 3px #ffd45a30,0 9px 18px #0006}.code-slot.just-filled{animation:.26s cubic-bezier(.16,.9,.35,1.25) slot-drop}.code-slot em{color:#827996;font-size:22px;font-style:normal}.slot-piece{border-radius:14px;place-items:center;width:calc(100% - 2px);height:calc(100% - 2px);font-size:21px;font-weight:1000;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 5px #ffffff42,inset 0 -8px #0002,0 4px #080612,0 7px 12px #0005}.slot-piece:before{content:"";background:#fff6;border-radius:50%;width:34%;height:13%;position:absolute;top:10%;left:14%;transform:rotate(-18deg)}.slots-5 .slot-piece{border-radius:11px}.slots-6 .slot-piece,.slots-7 .slot-piece{border-radius:9px;font-size:15px}.slots-5 .code-slot{border-radius:14px;width:clamp(48px,13.8vw,61px);height:clamp(48px,13.8vw,61px)}.slots-6 .code-slot,.slots-7 .code-slot{border-radius:12px;width:clamp(38px,11.2vw,50px);height:clamp(38px,11.2vw,50px)}.notice{color:var(--danger);background:#ff728317;border-radius:10px;margin:0 0 10px;padding:9px;font-size:12px;font-weight:800}.palette{grid-template-columns:repeat(4,1fr);justify-items:center;gap:9px;display:grid}.palette-5,.palette-6{grid-template-columns:repeat(3,1fr)}.palette-7,.palette-8{grid-template-columns:repeat(4,1fr)}.color-token{color:#171020;width:58px;min-height:56px;box-shadow:inset 0 5px #ffffff42, inset 0 -8px #0002, 0 6px 0 color-mix(in srgb, currentColor, #000 75%), 0 9px 14px #0006;border:2px solid #ffffff3b;border-radius:50%;padding:0;font-size:18px;font-weight:1000;transition:transform .11s,box-shadow .11s,filter .15s;position:relative;overflow:hidden}.color-token .token-shine{background:#fff6;border-radius:50%;width:18px;height:8px;position:absolute;top:7px;left:13px;transform:rotate(-18deg)}.color-token .token-symbol{z-index:1;position:relative}.color-token:active{transform:translateY(5px)scale(.94);box-shadow:inset 0 3px #ffffff30,inset 0 -4px #0002,0 1px #080612,0 3px 8px #0005}.color-token:disabled{opacity:.5;filter:saturate(.55);cursor:not-allowed}.game-actions{grid-template-columns:88px 1fr;gap:9px;margin-top:13px;display:grid}.secondary-action,.check-button{min-height:54px}.secondary-action{border:1px solid var(--border-strong);color:var(--ink-muted);background:#17122690;border-radius:15px;justify-content:center;align-items:center;gap:7px;font-weight:900;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 4px #090713}.secondary-action:active{transform:translateY(3px);box-shadow:0 1px #090713}.secondary-action:disabled{opacity:.4}.check-button:disabled{color:#9d94af;background:#2b2540;box-shadow:0 4px #100c1e}.check-button:disabled:after{display:none}.sheet-backdrop{z-index:10;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#080511d9;justify-content:center;align-items:end;animation:.2s ease-out both backdrop-in;display:flex;position:fixed;inset:0}.help-sheet,.completion-panel{width:min(100%,520px);padding:27px 20px calc(24px + env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 0, #42355e, var(--surface-raised) 46%);color:var(--ink);border:1px solid #ffffff1c;border-radius:25px 25px 0 0;animation:.34s cubic-bezier(.16,.9,.35,1.15) both sheet-in;position:relative;box-shadow:inset 0 1px #ffffff2a,0 -16px 45px #0009}.help-sheet h2,.completion-panel h2{letter-spacing:-.045em;margin:8px 0 15px;font-size:31px;font-weight:1000;line-height:1}.help-sheet>p:not(.kicker),.completion-panel>p{color:var(--ink-muted);font-weight:600;line-height:1.45}.sheet-close{background:var(--surface-hover);width:42px;height:42px;color:var(--ink);border:0;border-radius:50%;font-size:25px;position:absolute;top:12px;right:13px}.help-sheet .primary-button{width:100%;margin-top:18px}.text-button{width:100%;color:var(--ink-muted);background:0 0;border:0;margin-top:10px;padding:10px;font-weight:800}.completion-panel{text-align:center;animation-name:victory-panel;overflow:hidden}.completion-score{color:var(--brand);text-shadow:0 4px #7d4f13;margin:15px 0 0;font:1000 39px Nunito,sans-serif;display:block}.completion-score small{font-size:14px}.completion-panel details{border-block:1px solid var(--border);text-align:left;margin:18px 0;padding:11px 0}.completion-panel summary{cursor:pointer;font-size:13px;font-weight:900}.completion-panel details p{color:var(--ink-muted);margin-bottom:0;font-size:12px}.completion-panel .primary-button{width:100%}.outline-button{width:100%;min-height:48px;color:var(--ink);background:0 0;border:0;justify-content:center;align-items:center;gap:8px;margin-top:8px;font-weight:900;display:flex}.victory-burst{z-index:-1;width:1px;height:1px;position:absolute;top:80px;left:50%}.victory-burst i{background:var(--brand);opacity:0;width:10px;height:18px;animation:burst .75s calc(var(--delay,0) * 24ms) cubic-bezier(.2,.7,.2,1) both;transform:translate(var(--x), var(--y)) rotate(var(--r));border-radius:4px;position:absolute}.victory-burst i:first-child{--x:-145px;--y:-12px;--r:-30deg;--delay:1;background:var(--coral)}.victory-burst i:nth-child(2){--x:-118px;--y:-68px;--r:50deg;--delay:2;background:var(--amber)}.victory-burst i:nth-child(3){--x:-70px;--y:-96px;--r:18deg;--delay:3;background:var(--cyan)}.victory-burst i:nth-child(4){--x:-22px;--y:-112px;--r:-45deg;--delay:1;background:var(--lime)}.victory-burst i:nth-child(5){--x:35px;--y:-106px;--r:24deg;--delay:2;background:var(--magenta)}.victory-burst i:nth-child(6){--x:94px;--y:-80px;--r:62deg;--delay:3;background:var(--violet)}.victory-burst i:nth-child(7){--x:140px;--y:-28px;--r:-20deg;--delay:1;background:var(--cyan)}.victory-burst i:nth-child(8){--x:145px;--y:34px;--r:35deg;--delay:2;background:var(--coral)}.victory-burst i:nth-child(9){--x:96px;--y:76px;--r:-60deg;--delay:3;background:var(--amber)}.victory-burst i:nth-child(10){--x:-105px;--y:68px;--r:44deg;--delay:1;background:var(--lime)}.victory-burst i:nth-child(11){--x:-150px;--y:42px;--r:70deg;--delay:2;background:var(--magenta)}.victory-burst i:nth-child(12){--x:18px;--y:86px;--r:-20deg;--delay:3;background:var(--blue)}.pwa-update-toast{z-index:30;left:max(14px, env(safe-area-inset-left));right:max(14px, env(safe-area-inset-right));bottom:calc(92px + env(safe-area-inset-bottom));min-height:58px;color:var(--ink);background:#251d3df5;border:1px solid #75659b;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:8px 9px 8px 15px;font-size:13px;font-weight:900;animation:.22s ease-out both toast-in;display:flex;position:fixed;box-shadow:0 14px 32px #080612aa}.pwa-update-toast span{min-width:0}.pwa-update-toast button{background:var(--brand);color:#24182e;border:0;border-radius:12px;flex:none;min-height:42px;padding:0 13px;font:1000 12px Nunito,sans-serif}.pwa-update-toast button:disabled{opacity:.65}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}}@keyframes tile-pop{0%{opacity:0;transform:translateY(22px)rotateX(-25deg)scale(.7)}70%{transform:translateY(-4px)rotateX(4deg)scale(1.05)}}@keyframes cta-sweep{0%{opacity:0;transform:translate(0)skew(-20deg)}30%{opacity:.55}to{opacity:0;transform:translate(470px)skew(-20deg)}}@keyframes slot-drop{0%{opacity:.45;transform:translateY(-14px)scale(.82)rotate(-3deg)}70%{transform:translateY(3px)scale(1.035)rotate(1deg)}to{opacity:1;transform:none}}@keyframes clue-reveal{0%{opacity:0;transform:translateY(5px)scale(.92)}70%{transform:translateY(-1px)scale(1.025)}to{opacity:1;transform:none}}@keyframes row-reveal{0%{opacity:0;transform:translateY(-8px)scale(.98)}}@keyframes feedback-in{0%{opacity:.35;transform:scale(.97)}}@keyframes backdrop-in{0%{opacity:0}}@keyframes sheet-in{0%{opacity:.3;transform:translateY(55px)}}@keyframes victory-panel{0%{opacity:.4;transform:translateY(70px)scale(.9)}70%{transform:translateY(-5px)scale(1.015)}to{opacity:1;transform:none}}@keyframes burst{0%{opacity:0;transform:translateY(18px)rotate(0)scale(.3)}18%{opacity:1}to{opacity:0;transform:translate(var(--x), var(--y)) rotate(var(--r)) scale(1)}}@media (width>=700px){.app-shell{padding:22px 0}.app-surface{border:1px solid var(--border);border-radius:25px;min-height:calc(100dvh - 44px);padding-top:0;box-shadow:0 24px 55px #000a}.bottom-nav{border:1px solid var(--border);border-radius:20px;grid-template-columns:1fr;gap:5px;width:92px;height:auto;margin:0;padding:9px 7px;position:fixed;top:50%;bottom:auto;left:calc(50% + 282px);transform:translateY(-50%);box-shadow:0 12px 35px #0008}.bottom-nav button{min-height:58px}}@media (width>=900px){.app-shell{grid-template-columns:minmax(0,780px) 180px;align-items:start;gap:24px;width:min(100%,1040px);margin:0 auto;padding:24px;display:grid}.app-surface{width:100%;min-height:0;margin:0;padding-inline:32px}.bottom-nav{border-radius:24px;gap:8px;width:100%;padding:12px;position:sticky;top:24px;bottom:auto;left:auto;transform:none}.bottom-nav button{grid-template-columns:30px 1fr;align-content:center;justify-items:start;min-height:66px;padding:0 14px;font-size:13px}.bottom-nav button svg,.bottom-nav button span{grid-row:1}.home-page{grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);align-items:start;gap:22px;min-height:0;padding:54px 8px 36px;display:grid}.home-stage{width:100%;max-width:none}.mode-cards{grid-template-columns:1fr;gap:14px;width:100%;max-width:none;margin-top:0}.mode-cards button{min-height:92px;padding:16px}.mode-cards b{font-size:16px}.mode-cards span{margin-top:6px;font-size:12px}.route-page{padding:42px 14px}.game-page,.settings-page{width:min(100%,640px);margin-inline:auto}.site-footer{padding-top:28px}}@media (width<=360px){.app-surface,.home-stage{padding-inline:12px}.mini-code{gap:8px}.mini-code i{width:51px;height:51px}.game-console{border-radius:19px;padding-inline:8px}.code-slot{border-radius:15px;width:62px;height:62px}.history-slots i{width:32px;height:32px}.history-summary{font-size:8px}.feedback-line b{font-size:9px}.game-actions{grid-template-columns:82px 1fr}}@media (height<=650px){.game-page{padding-top:8px;padding-bottom:20px}.game-objective{padding-bottom:8px}.game-console{padding-top:8px;padding-bottom:10px}.feedback-dock{min-height:52px;margin:5px 0 7px;padding-block:7px}.current-guess{padding-bottom:9px}.current-guess .section-label{margin-bottom:7px}.color-token{width:52px;min-height:50px}.game-actions{margin-top:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
