@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(./inter-latin-700-normal-BLAVimhd.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(./jetbrains-mono-latin-500-normal-CJOVTJB7.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-latin-700-normal-BYuf6tUa.woff2) format("woff2"),url(./jetbrains-mono-latin-700-normal-D3wTyLJW.woff) format("woff")}:root{color-scheme:light;--page: #f2f3f5;--card: #ffffff;--ink: #111318;--on-ink: #ffffff;--muted: #555a64;--accent: #ffd23f;--on-accent: #111318;--screen: #111318;--progress: rgba(17, 19, 24, .2);--track: rgba(17, 19, 24, .16);--sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;--line: 3px;--shell: min(100vw, 440px)}:root[data-theme=dark]{color-scheme:dark;--page: #111318;--card: #1c1f26;--ink: #b3b9c2;--on-ink: #111318;--muted: #8f949e;--screen: #08090b;--progress: rgba(179, 185, 194, .22);--track: rgba(179, 185, 194, .22)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none;touch-action:manipulation;background:var(--page);color:var(--ink);font-family:var(--sans);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}button{font:inherit;color:inherit;cursor:pointer}.app{width:var(--shell);height:100vh;height:100svh;margin:auto;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--page)}.topbar{position:sticky;top:0;z-index:20;min-height:62px;padding:max(0px,env(safe-area-inset-top)) 0 0 10px;display:flex;align-items:center;gap:6px;background:var(--page)}.avatar-btn,.avatar{flex:none;display:grid;place-items:center;border:var(--line) solid var(--ink);border-radius:50%;background:var(--card);color:var(--ink);font:700 12px var(--mono)}.avatar-btn{width:44px;height:44px;padding:0}.avatar-btn.active{background:var(--ink);color:var(--on-ink)}.categories{flex:1 1 auto;min-width:0;display:flex;gap:6px;overflow-x:auto;align-items:center;padding:0 10px 0 0;scrollbar-width:none;touch-action:pan-x}.categories::-webkit-scrollbar,.workspace::-webkit-scrollbar{display:none}.chip{flex:none;height:44px;padding:0 16px;border:var(--line) solid var(--ink);border-radius:22px;background:var(--card);color:var(--ink);font:700 13px var(--sans);white-space:nowrap}.chip.active{background:var(--ink);color:var(--on-ink)}.workspace{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:none;touch-action:pan-y;-webkit-overflow-scrolling:touch}.feed{min-height:100%;padding:4px 15px 24px 10px;display:flex;flex-direction:column;gap:14px}.game-card{position:relative;flex:none;min-width:0;perspective:1400px}.card-inner{display:grid;grid-template-columns:minmax(0,1fr);transform-style:preserve-3d;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.card-inner.is-flipped{transform:rotateY(180deg)}.card-face{grid-area:1 / 1;min-width:0;display:flex;flex-direction:column;background:var(--card);border:var(--line) solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink);backface-visibility:hidden;-webkit-backface-visibility:hidden;pointer-events:none;overflow:hidden}.card-front{pointer-events:auto}.card-back{position:absolute;inset:0;transform:rotateY(180deg)}.card-inner.is-flipped .card-front{pointer-events:none}.card-inner.is-flipped .card-back{pointer-events:auto}.card-head{flex:none;display:flex;align-items:center;gap:10px;padding:12px 10px}.card-head .avatar{width:32px;height:32px;font-size:10px}.card-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.card-title h2{margin:0;font-size:15px;line-height:18px;font-weight:700}.card-sub{font-size:12px;line-height:14px;color:var(--muted)}.tag{align-self:flex-start;padding:3px 6px;background:var(--ink);color:var(--on-ink);font:700 10px/12px var(--mono);letter-spacing:.12em;text-transform:uppercase}.card-head .tag{align-self:center;flex:none}.preview{position:relative;flex:none;aspect-ratio:3 / 4;border-top:var(--line) solid var(--ink);border-bottom:var(--line) solid var(--ink);background:var(--screen);overflow:hidden}.preview img,.preview video{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;background:var(--screen)}.preview-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#8b909c;font:700 11px var(--mono);letter-spacing:.08em;text-align:center}.info{flex:none;padding:12px 10px 14px;display:flex;flex-direction:column;gap:12px}.info-copy{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.premise{margin:0;font-size:14px;line-height:20px}.hint{margin:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 11px/16px var(--mono);letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.result-line{display:flex;align-items:center;justify-content:space-between;gap:12px;align-self:stretch}.score{font:700 32px/34px var(--mono);letter-spacing:-.02em}.tag.rank{background:var(--accent);color:var(--on-accent);border:2px solid var(--ink);padding:2px 6px}.btn-row{display:flex;gap:10px;padding-right:3px}.btn{position:relative;flex:none;height:48px;min-width:48px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:var(--line) solid var(--ink);border-radius:8px;background:var(--card);color:var(--ink);box-shadow:3px 3px 0 var(--ink);font:700 14px var(--sans);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;touch-action:manipulation}.btn.main{flex:1;min-width:0;background:var(--accent);color:var(--on-accent)}.btn.icon{width:48px;padding:0}.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.btn:focus-visible,.chip:focus-visible,.avatar-btn:focus-visible,.run-row:focus-visible,.game-row:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.btn svg{width:20px;height:20px;stroke-linecap:round;stroke-linejoin:round}.btn.main svg{width:16px;height:16px}.btn[aria-pressed=true]{background:var(--ink);color:var(--on-ink)}.btn.like[aria-pressed=true]{background:var(--card);color:#e63946}.btn.like[aria-pressed=true] svg{fill:currentColor}.stats-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;border-top:var(--line) solid var(--ink);padding:16px 10px;display:flex;flex-direction:column;gap:20px}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}.metric{display:flex;flex-direction:column;gap:2px}.metric strong{font-size:32px;line-height:34px;font-weight:700;letter-spacing:-.02em}.metric span{font:700 10px/12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.runs{display:flex;flex-direction:column;gap:8px}.runs ol{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}.run-row{width:100%;height:34px;padding:0 10px;display:flex;align-items:center;gap:10px;border:0;background:transparent;text-align:left}.run-row .rank{flex:none;width:28px;font:700 12px var(--mono);color:var(--muted)}.run-row .who{flex:1;min-width:0;font-size:14px;font-weight:600}.run-row .who small{font-weight:500;color:var(--muted)}.run-row.mine .who small{color:var(--on-ink);opacity:.7}.run-row .val{flex:none;font:700 14px var(--mono)}.run-row.mine{background:var(--ink);color:var(--on-ink);border-radius:8px}.run-row.mine .rank{color:var(--on-ink)}.runs-empty{padding:4px 10px;font-size:14px;color:var(--muted)}.board-tabs{display:flex;gap:6px}.board-tab{flex:1;padding:8px 6px;font:700 11px/13px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--card);border:var(--line) solid var(--ink);border-radius:8px;cursor:pointer}.theme-seg{display:flex;gap:6px;align-self:stretch;padding-right:3px}.theme-seg .board-tab{min-height:44px}.board-tab.active{background:var(--ink);color:var(--on-ink)}.board-tab:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.me-row{height:40px;padding:0 10px;border-radius:8px;background:var(--ink);color:var(--on-ink);display:flex;align-items:center;gap:10px}.me-row .rank{flex:none;width:28px;font:700 12px var(--mono)}.me-row .who{flex:1;font-size:14px;font-weight:600}.me-row .val{font:700 14px var(--mono)}.stats-actions{flex:none;padding:12px 13px 14px 10px}.social{display:flex;flex-direction:column;gap:12px}.percent{display:flex;flex-direction:column;gap:2px}.percent strong{font-size:28px;line-height:30px;font-weight:700;letter-spacing:-.02em}.percent span{font-size:13px;line-height:18px;color:var(--muted)}.social-counts{margin:0}.comments{display:flex;flex-direction:column;gap:8px}.comment-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.comment{display:flex;flex-direction:column;gap:3px;padding:8px 10px;border:var(--line) solid var(--ink);border-radius:8px;background:var(--card)}.comment .who{font:700 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.comment .text{font-size:14px;line-height:19px}.comment-box{display:flex;gap:8px}.comment-box input{flex:1;min-width:0;height:44px;padding:0 12px;border:var(--line) solid var(--ink);border-radius:8px;background:var(--card);color:var(--ink);font:500 14px var(--sans)}.comment-box input::placeholder{color:var(--muted)}.comment-box input:disabled{opacity:.7}.comment-box .btn{height:44px}.comment-box .btn:disabled{opacity:.4}.social-note{margin:0;font:500 11px/15px var(--mono);letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.panel.account{align-items:stretch}.panel.account>.btn{align-self:flex-start}.auth-form{display:flex;flex-direction:column;gap:10px}.auth-form label{display:flex;flex-direction:column;gap:4px;font:700 10px/12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.auth-form input{height:44px;padding:0 12px;border:var(--line) solid var(--ink);border-radius:8px;background:var(--card);color:var(--ink);font:500 16px var(--sans);letter-spacing:0;text-transform:none;-webkit-user-select:text;user-select:text}.auth-form input:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.auth-form .btn{align-self:stretch;min-height:44px}.auth-form .btn:disabled{opacity:.5}.auth-error{min-height:18px;font:700 12px/18px var(--mono);color:var(--ink)}.auth-note{margin:0;font:500 12px/17px var(--sans)!important;letter-spacing:0!important;color:var(--muted)}.switch-row{display:flex;align-items:center;gap:12px;justify-content:space-between}.switch-title{font-size:14px;line-height:18px;font-weight:700}.switch-note{margin-top:2px;font-size:12px;line-height:16px;color:var(--muted)}.switch{flex:none;position:relative;width:56px;height:32px;padding:0;border:var(--line) solid var(--ink);border-radius:16px;background:var(--card)}.switch i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--ink);transition:transform .15s}.switch.on{background:var(--accent)}.switch.on i{transform:translate(24px)}.switch:focus-visible{outline:3px solid var(--ink);outline-offset:2px}@media (prefers-reduced-motion: reduce){.switch i{transition:none}}.state-card{min-height:240px;padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;background:var(--card);border:var(--line) solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink)}.state-card h2{margin:0;font-size:17px}.state-card p{margin:0;font-size:14px;line-height:20px;color:var(--muted)}.loading-lines{width:70%;display:grid;gap:10px;margin-top:8px}.loading-lines i{height:12px;background:var(--ink);opacity:.15}.loading-lines i:last-child{width:62%;background:var(--accent);opacity:1}.app.profile .topbar{display:none}.screen-head{min-height:62px;padding:max(0px,env(safe-area-inset-top)) 13px 0 10px;display:flex;align-items:center;gap:12px}.screen-head h1{flex:1;margin:0;font-size:17px;line-height:22px;font-weight:700}.screen-head .btn{width:44px;height:44px;min-width:44px}.profile{padding:10px 14px 28px 10px;display:flex;flex-direction:column;gap:18px}.who-row{display:flex;align-items:center;gap:14px}.who-row .avatar{width:64px;height:64px;font-size:20px}.who-name{font-size:24px;line-height:28px;font-weight:700;letter-spacing:-.01em}.who-meta{margin-top:4px;font:700 10px/12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.panel{padding:14px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:var(--card);border:var(--line) solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink)}.panel p{margin:0;font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.01em}.game-rows{display:flex;flex-direction:column;gap:14px;padding-right:3px}.game-row{width:100%;height:78px;padding:0;display:flex;align-items:stretch;overflow:hidden;text-align:left;background:var(--card);border:var(--line) solid var(--ink);border-radius:10px;box-shadow:3px 3px 0 var(--ink)}.game-row .thumb{flex:none;width:54px;border-right:var(--line) solid var(--ink);background:var(--screen)}.game-row .thumb img{width:100%;height:100%;display:block;object-fit:cover}.game-row .body{flex:1;min-width:0;padding:0 12px;display:flex;flex-direction:column;justify-content:center;gap:6px}.game-row .name{font-size:15px;line-height:18px;font-weight:700}.game-row .meta{font:700 10px/12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.game-row .chev{flex:none;width:40px;display:grid;place-items:center}.game-row .chev svg{width:20px;height:20px;stroke-linecap:round;stroke-linejoin:round}.app.playing,.app.suspended{display:block;padding:max(8px,env(safe-area-inset-top)) 10px max(8px,env(safe-area-inset-bottom))}.app.playing .topbar,.app.suspended .topbar{display:none}.app.playing .workspace,.app.suspended .workspace{height:100%;overflow:hidden}.play-layout{width:100%;height:100%;padding-right:4px;display:grid;grid-template-rows:52px auto minmax(96px,1fr);gap:12px;min-height:0}.stop-wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.clock{position:relative;justify-self:start;width:52px;height:52px}.clock svg{position:absolute;inset:0;width:52px;height:52px}.clock .track{fill:none;stroke:var(--track);stroke-width:4}.clock .arc{fill:none;stroke:var(--ink);stroke-width:4}.clock b{position:absolute;inset:0;display:grid;place-items:center;font:700 16px var(--mono)}.clock.urgent:before{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--accent)}.clock.urgent b{color:var(--on-accent);animation:clock-pulse 1s ease-in-out infinite}@keyframes clock-pulse{50%{transform:scale(1.14)}}.score-box{justify-self:end;min-width:84px;max-width:100%;height:48px;padding:4px 10px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:2px;background:var(--card);border:var(--line) solid var(--ink);border-radius:10px;box-shadow:3px 3px 0 var(--ink)}.score-box small{font:700 9px/10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.score-box b{font:700 20px/22px var(--mono);letter-spacing:-.02em}.stop-btn{width:170px;overflow:hidden}.stop-progress{position:absolute;inset:0 auto 0 0;width:0;background:var(--progress)}.stop-btn span:last-child{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px}.active-field{position:relative;justify-self:center;width:min(100%,calc((100svh - 196px)*.75));max-height:calc(100svh - 196px);aspect-ratio:3 / 4;overflow:hidden;border:var(--line) solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink);background:var(--screen)}.active-field canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.touch-area{position:relative;min-height:96px;overflow:hidden;border:var(--line) solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink);background:var(--screen);color:#f2f3f5;touch-action:none}.touch-label{position:absolute;z-index:2;inset:0;display:grid;place-items:center;padding:0 14px;text-align:center;font:700 20px/24px var(--sans);letter-spacing:.02em;text-transform:uppercase;color:#fff}.touch-area.split{display:flex}.touch-area .sub{position:relative;flex:1 1 0;min-width:0;display:grid;place-items:center;padding:0 6px;text-align:center;font:700 18px/22px var(--sans);letter-spacing:.02em;text-transform:uppercase;color:#fff}.touch-area .sub+.sub{border-left:2px dashed #566c86}.touch-area .sub.on{background:#ffd23f24;color:#f2f3f5}.control-note{display:grid;place-items:center;padding:0 10px;text-align:center;font:700 16px/20px var(--sans);letter-spacing:.02em;text-transform:uppercase;color:var(--ink)}.play-layout.none{grid-template-rows:52px auto 28px;align-content:start}.play-layout.none .active-field{width:min(100%,calc((100svh - 160px)*.75));max-height:calc(100svh - 160px);touch-action:none}.touch-contact{position:absolute;width:46px;height:46px;border:3px solid var(--accent);border-radius:50%;background:#ffd23f38;transform:translate(-50%,-50%);opacity:0}.touch-area.active .touch-contact{opacity:1}.suspend-layer{position:absolute;z-index:4;inset:0;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#111318f0;color:#f2f3f5;text-align:center}.suspend-layer strong{font:700 16px var(--mono);letter-spacing:.08em;text-transform:uppercase}.suspend-layer .btn{min-width:160px}.overlay{position:fixed;z-index:50;inset:0;display:none;align-items:flex-end;justify-content:center;background:#11131899}.overlay.open{display:flex}.sheet{width:min(100%,440px);padding:18px 18px max(20px,env(safe-area-inset-bottom));background:var(--card);border:var(--line) solid var(--ink);border-bottom:0;border-radius:10px 10px 0 0}.sheet h2{margin:0 0 8px;font-size:17px}.sheet p{margin:0;font-size:14px;line-height:20px;color:var(--muted)}.sheet-actions{display:flex;gap:10px;margin-top:16px;padding-right:3px}.sheet-actions .btn{flex:1}.toast{position:fixed;z-index:80;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;padding:10px 14px;background:var(--ink);color:var(--on-ink);font:700 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;transition:.15s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%)}@media (orientation: landscape) and (max-height: 520px){body:after{content:"Rotate to portrait";position:fixed;z-index:99;inset:0;display:grid;place-items:center;background:var(--page);font:700 16px var(--mono)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.app[data-state=feed] .workspace{scroll-snap-type:y mandatory}.app[data-state=feed] .topbar{min-height:52px}.app[data-state=feed] .chip{height:44px}.feed.snap{display:contents}.feed.snap .game-card{height:100%;padding:2px 15px 8px 10px;scroll-snap-align:start;scroll-snap-stop:always}.feed.snap .card-inner{height:100%;grid-template-rows:minmax(0,1fr)}.feed.snap .card-face{min-height:0}.feed.snap .card-head{padding:6px 10px}.feed.snap .card-head .avatar{width:30px;height:30px}.feed.snap .preview{flex:1 1 0;min-height:0;aspect-ratio:auto}.feed.snap .preview img,.feed.snap .preview video{background:var(--screen)}.feed.snap .info{position:relative;padding:8px 10px 10px;gap:8px}.feed.snap .btn{height:44px}.feed.snap .btn.icon{width:44px;min-width:44px}.feed.snap .info-copy{gap:4px}.feed.snap .score{font-size:26px;line-height:28px}.tile-card{position:relative;flex:none;min-width:0}.feed.snap .tile-card{height:100%;padding:2px 15px 8px 10px;scroll-snap-align:start;scroll-snap-stop:always;display:flex}.tile-body{flex:1;min-height:0;padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;background:var(--card);border:var(--line) solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink)}.tile-body h2{margin:0;font-size:24px;line-height:28px}.tile-body p{margin:0;max-width:28ch;font-size:15px;line-height:22px;color:var(--muted)}.tile-body .btn.main{flex:none;min-width:180px}.tile-body .tag{align-self:center}.tile-next{margin-top:10px;font:700 11px/14px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.tile-next:before{content:"↑";display:block;font-size:18px;line-height:20px}.premise{display:block;width:100%;min-height:24px;margin:0;padding:0;border:0;background:none;text-align:left;font:400 14px/24px var(--sans);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.premise:after{content:" …more";color:var(--muted);font:700 11px var(--mono)}.more{position:absolute;z-index:5;left:6px;right:6px;bottom:calc(100% + 6px);display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:10px;background:var(--card);border:var(--line) solid var(--ink);border-radius:8px;box-shadow:3px 3px 0 var(--ink)}.more[hidden]{display:none}.more p{margin:0;font-size:14px;line-height:20px}.more .hint{white-space:normal;overflow:visible}.step-nav{display:none}@media (hover: hover) and (pointer: fine) and (min-width: 700px){.app[data-state=feed] .step-nav{position:fixed;z-index:30;top:50%;left:calc(50% + 244px);transform:translateY(-50%);display:flex;flex-direction:column;gap:12px}}.touch-area .sub.on,.touch-area .sub.demo-on{background:#ffd23f38}.touch-area.hint-on{border-color:var(--accent);animation:hint-glow .9s ease-in-out infinite}.touch-area.hint-on .touch-label,.control-note.hint-on{animation:hint-hop .9s ease-in-out infinite}.control-note.hint-on:before{content:"";display:inline-block;width:16px;height:16px;margin-right:8px;vertical-align:-3px;border:3px solid var(--accent);border-radius:50%;background:#ffd23f4d;animation:demo-tap 1s ease-out infinite}.control-note.hint-on{display:block;line-height:28px}@keyframes hint-glow{50%{box-shadow:0 0 0 5px #ffd23f73,4px 4px 0 var(--ink)}}@keyframes hint-hop{40%{transform:translateY(-5px)}60%{transform:translateY(0)}}.demo{position:absolute;z-index:1;left:50%;top:50%;width:46px;height:46px;border:3px solid var(--accent);border-radius:50%;background:#ffd23f47;transform:translate(-50%,-50%);opacity:0;pointer-events:none}.touch-area.hint-on .demo{opacity:1}.touch-area.hint-on .demo.hold{animation:demo-hold 1s ease-in-out infinite}.touch-area.hint-on .demo.tap{animation:demo-tap 1s ease-out infinite}.touch-area.hint-on .demo.drag{animation:demo-drag 1.5s ease-in-out infinite}.touch-area.hint-on .demo.swipe{animation:demo-swipe 1s ease-in infinite}@keyframes demo-hold{0%{transform:translate(-50%,-50%) scale(1.25);opacity:.5}25%,80%{transform:translate(-50%,-50%) scale(.85);opacity:1}to{transform:translate(-50%,-50%) scale(1.25);opacity:.5}}@keyframes demo-tap{0%{transform:translate(-50%,-50%) scale(1.3);opacity:0}30%{transform:translate(-50%,-50%) scale(.8);opacity:1}to{transform:translate(-50%,-50%) scale(1.1);opacity:0}}@keyframes demo-drag{0%{left:22%;top:38%}50%{left:78%;top:62%}to{left:22%;top:38%}}@keyframes demo-swipe{0%{left:25%;opacity:0}15%{opacity:1}85%{opacity:1}to{left:75%;opacity:0}}.app[data-state=create] .topbar{display:none}.wiz{padding:4px 15px 32px 10px;display:flex;flex-direction:column;gap:18px}.wiz-steps{margin:0;padding:0;list-style:none;display:flex;gap:8px}.wiz-steps li{flex:1;display:flex;flex-direction:column;gap:6px;font:700 10px/12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.wiz-steps i{height:8px;border:2px solid var(--ink);border-radius:4px;background:var(--card)}.wiz-steps .past i{background:var(--ink)}.wiz-steps .now{color:var(--ink)}.wiz-steps .now i{background:var(--accent)}.wiz-field{display:flex;flex-direction:column;gap:8px;min-width:0}.wiz-q{font:700 17px/22px var(--sans);letter-spacing:-.01em}.wiz-q small{font:500 12px var(--sans);color:var(--muted);letter-spacing:0}.wiz-help{font:500 12px/17px var(--sans);color:var(--muted)}.wiz-count{align-self:flex-end;font:700 10px/12px var(--mono);letter-spacing:.08em;color:var(--muted)}.wiz textarea,.wiz input[type=text]{width:100%;padding:10px 12px;border:var(--line) solid var(--ink);border-radius:8px;background:var(--card);color:var(--ink);font:500 16px/22px var(--sans);letter-spacing:0;text-transform:none;-webkit-user-select:text;user-select:text;resize:none;box-shadow:3px 3px 0 var(--ink)}.wiz input[type=text]{height:48px;padding:0 12px}.wiz textarea:focus-visible,.wiz input:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.wiz-err{min-height:0;margin-top:-10px;font:700 12px/16px var(--mono);color:var(--ink)}.wiz-err:empty{display:none}.opts{display:flex;flex-wrap:wrap;gap:8px}.opt{min-height:44px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;border:var(--line) solid var(--ink);border-radius:22px;background:var(--card);color:var(--ink);font:700 14px var(--sans);box-shadow:3px 3px 0 var(--ink);touch-action:manipulation}.opt span{font-size:18px}.opt[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.opt:active,.pick:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.opt:focus-visible,.pick:focus-visible,.wiz-link:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pick{min-height:44px;padding:8px;display:flex;flex-direction:column;align-items:stretch;gap:4px;text-align:left;border:var(--line) solid var(--ink);border-radius:10px;background:var(--card);color:var(--ink);box-shadow:3px 3px 0 var(--ink);touch-action:manipulation}.pick[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.pick-label{font:700 14px/18px var(--sans)}.pick-hint{font:500 12px/16px var(--sans);opacity:.8}.finger-stage{position:relative;height:64px;border:2px dashed var(--ink);border-radius:6px;overflow:hidden;background:#7f7f7f1a}.finger-stage b{position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border:3px solid var(--ink);border-radius:50%;background:var(--accent)}.finger-stage i{display:none;position:absolute;width:14px;height:14px;border:2px solid var(--ink);background:var(--card);border-radius:3px}.finger-stage.tap_objects i{display:block}.finger-stage .t1{left:14%;top:18%}.finger-stage .t2{left:70%;top:22%}.finger-stage .t3{left:42%;top:66%}.finger-stage.left_right:before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:2px dashed var(--ink)}.finger-stage.tap b{animation:wiz-tap 1.2s ease-out infinite}.finger-stage.hold b{animation:wiz-hold 1.6s ease-in-out infinite}.finger-stage.drag b{animation:wiz-drag 1.8s ease-in-out infinite}.finger-stage.left_right b{animation:wiz-lr 1.6s steps(1) infinite}.finger-stage.tap_objects b{animation:wiz-hop 2.4s steps(1) infinite}@keyframes wiz-tap{0%,to{transform:scale(1)}20%{transform:scale(.7)}50%{transform:scale(1.1)}}@keyframes wiz-hold{0%,15%{transform:scale(1)}30%,80%{transform:scale(.75)}to{transform:scale(1)}}@keyframes wiz-drag{0%,to{transform:translate(-34px)}50%{transform:translate(34px)}}@keyframes wiz-lr{0%{transform:translate(-30px)}50%{transform:translate(30px)}}@keyframes wiz-hop{0%{transform:translate(-58px,-18px)}33%{transform:translate(34px,-14px)}66%{transform:translate(-14px,18px)}}@media (prefers-reduced-motion: reduce){.finger-stage b{animation:none!important}}.wiz-play{padding:14px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:var(--card);border:var(--line) solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink)}.wiz-play p{margin:0;font:700 18px/24px var(--sans);letter-spacing:-.01em}.wiz-link{padding:0;min-height:32px;border:0;background:none;color:var(--muted);font:700 12px var(--sans);text-decoration:underline}.wiz-check{display:flex;gap:12px;align-items:flex-start;font:500 14px/20px var(--sans)}.wiz-check input{flex:none;width:28px;height:28px;margin:0;accent-color:var(--ink)}.wiz-actions{display:flex;gap:10px;padding-right:3px}.wiz-actions .btn{flex:1;min-width:0;height:52px;white-space:normal}.wiz-actions .btn:disabled{opacity:.5}.wiz-code{display:flex;flex-direction:column;gap:6px;padding-top:6px;border-top:2px dashed var(--ink)}.wiz-code-row{display:flex;gap:8px}.wiz-code-row input{flex:1;min-width:0}.wiz-code-row .btn{height:48px}.wiz-done{align-items:stretch;text-align:center}.wiz-done h2{margin:0;font:700 24px/30px var(--sans);letter-spacing:-.01em}.wiz-done p{margin:0;font:500 15px/22px var(--sans)}.wiz-done .wiz-help{font:500 13px/18px var(--sans)}.wiz-url{word-break:break-all}.ticket{padding:16px 12px;display:flex;flex-direction:column;gap:6px;align-items:center;background:var(--accent);color:var(--on-accent);border:var(--line) solid var(--ink);border-radius:10px;box-shadow:4px 4px 0 var(--ink)}.ticket-label{font:700 10px/12px var(--mono);letter-spacing:.14em;text-transform:uppercase}.ticket strong{font:800 clamp(22px,7vw,30px)/1.15 var(--mono);letter-spacing:.04em;word-break:break-word;-webkit-user-select:text;user-select:text}.btn.counting{overflow:hidden}.auto-fill{position:absolute;inset:0 auto 0 0;width:0;background:var(--progress);box-shadow:inset -3px 0 #11131859;pointer-events:none}:root[data-theme=dark] .auto-fill{background:#1113186b;box-shadow:inset -3px 0 #11131899}.replay-tag{position:absolute;z-index:3;top:6px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:99px;background:#14141f8c;color:#fff;font:700 11px/16px var(--mono);letter-spacing:.14em;pointer-events:none}.replay-tag i{width:8px;height:8px;border-radius:50%;background:#ff4646;animation:replay-blink 1s steps(2,jump-none) infinite}@keyframes replay-blink{0%{opacity:1}to{opacity:.15}}.replay-marks{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.replay-marks i{position:absolute;border-radius:50%;transform:translate(-50%,-50%)}.rp-ring{width:40px;height:40px;border:3px solid rgba(255,70,70,.5);background:#ff46462e;opacity:0;transition:opacity .08s linear}.rp-ring.on{opacity:1}.rp-tap{width:22px;height:22px;border:3px solid rgba(255,70,70,.6);animation:rp-ripple .5s ease-out forwards}.rp-dot{width:10px;height:10px;background:#ff464666;animation:rp-fade .45s ease-out forwards}@keyframes rp-ripple{to{width:64px;height:64px;opacity:0}}@keyframes rp-fade{to{opacity:0;transform:translate(-50%,-50%) scale(.4)}}@media (prefers-reduced-motion: reduce){.replay-tag i{animation:none}.rp-tap,.rp-dot{animation-duration:.01s}}.stars{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px}.star{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:64px;padding:6px 2px;border:var(--line) solid var(--ink);border-radius:10px;background:var(--card);color:var(--ink)}.star span{font-size:28px;line-height:32px}.star small{font:700 10px/12px var(--sans);color:var(--muted)}.star[aria-pressed=true]{background:var(--accent);color:var(--on-accent);box-shadow:3px 3px 0 var(--ink)}.star[aria-pressed=true] small{color:var(--on-accent)}.moods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mood{display:flex;flex-direction:column;gap:8px;padding:8px;border:var(--line) solid var(--ink);border-radius:10px;background:var(--card);color:var(--ink);text-align:left}.mood b{font:700 14px/18px var(--sans)}.mood[aria-pressed=true]{box-shadow:4px 4px 0 var(--ink);outline:3px solid var(--accent);outline-offset:1px}.sw{display:flex;height:22px;border:2px solid var(--ink);border-radius:6px;overflow:hidden}.sw i{flex:1}.wiz-play .sw{align-self:stretch}.wiz-account{padding:14px;display:flex;flex-direction:column;gap:8px;border:var(--line) solid var(--ink);border-radius:10px;background:var(--card);box-shadow:4px 4px 0 var(--ink)}.wiz-account p{margin:0;font:500 14px/20px var(--sans)}.avatar-btn.has-news{position:relative}.avatar-btn.has-news:after{content:"";position:absolute;top:2px;right:2px;width:12px;height:12px;border:2px solid var(--page);border-radius:50%;background:#ff4646}.idea-list{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.idea-row{display:flex;flex-direction:column;gap:4px;padding:10px;border:2px solid var(--ink);border-radius:8px}.idea-main{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.idea-status{font:700 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.idea-row[data-status=ready] .idea-status{color:var(--ink)}.idea-row .mono{font-family:var(--mono)}.idea-actions{display:flex;gap:8px;margin-top:4px}.idea-actions .btn{height:38px;padding:0 14px}.touch-area .replay-marks{z-index:1}
