:root{--bg:var(--tg-theme-bg-color,#fff);--bg2:var(--tg-theme-secondary-bg-color,#f2f3f5);--text:var(--tg-theme-text-color,#111);--hint:var(--tg-theme-hint-color,#8a8f98);--accent:var(--tg-theme-button-color,#2f80ed);--accent-text:var(--tg-theme-button-text-color,#fff);--danger:var(--tg-theme-destructive-text-color,#e5484d);--line:color-mix(in srgb, var(--hint) 25%, transparent);--good:#2e9e5b;--energy:#f5a623;--nav-h:64px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:var(--tg-theme-bg-color,#17181c);--bg2:var(--tg-theme-secondary-bg-color,#22242a);--text:var(--tg-theme-text-color,#f2f2f2)}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{-webkit-tap-highlight-color:transparent;font:15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}main{max-width:480px;padding:12px 16px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;margin:0 auto;display:flex}main.with-nav{padding-bottom:calc(var(--nav-h) + 20px + env(safe-area-inset-bottom))}h1{margin:0;font-size:22px}h2{margin:0;font-size:18px}p{margin:0}.muted{color:var(--hint)}.small{font-size:12px}.warn{color:var(--danger);font-size:13px}.good{color:var(--good)}.bad{color:var(--danger)}.empty{text-align:center;padding:32px 8px}.topbar{gap:8px;display:flex}.pill{background:var(--bg2);border-radius:14px;flex:1;align-items:center;gap:8px;min-width:0;padding:8px 12px;display:flex}.pill:last-child{flex:none}.pill-meter{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.bar{background:var(--line);border-radius:3px;flex:1;height:6px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .3s}.screen-head{justify-content:space-between;align-items:center;gap:8px;min-height:32px;display:flex}.card{background:var(--bg2);border-radius:16px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.promo{text-align:center;align-items:center;gap:10px;padding:20px 16px}.box-icon{font-size:48px;line-height:1}.slipper-card{gap:10px}.slipper-stage{background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--glow) 28%, transparent), transparent 65%);border-radius:14px;place-items:center;padding:8px 0;display:grid}.slipper-art{filter:drop-shadow(0 6px 10px #0000002e);display:block}.slipper-art.walking{animation:.6s ease-in-out infinite alternate step}@keyframes step{0%{transform:rotate(-6deg)translateY(0)}to{transform:rotate(6deg)translateY(-6px)}}.shoe{font-size:72px}.hero{background:var(--bg2);border-radius:20px;place-items:center;min-height:120px;padding:8px;display:grid}.badges{flex-wrap:wrap;gap:6px;display:inline-flex}.badge{color:#fff;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.badge.outline{color:var(--hint);border:1px solid var(--line);background:0 0;font-weight:500}.meter{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.stats{grid-template-columns:1fr 1fr;gap:6px 16px;display:grid}.stat-row{border-bottom:1px solid var(--line);justify-content:space-between;padding:4px 0;display:flex}.grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.stat{background:var(--bg2);border-radius:14px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.stat strong{font-variant-numeric:tabular-nums;font-size:18px}.segmented{background:var(--bg2);border-radius:12px;gap:3px;padding:3px;display:flex}.segmented button{color:var(--text);background:0 0;border-radius:10px;flex:1;padding:8px;font-size:14px;font-weight:500}.segmented button.on{background:var(--bg);box-shadow:0 1px 3px #0000001f}.tiles{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.tile{background:var(--bg2);color:var(--text);border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;font-weight:400;display:flex}.list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.link-box{word-break:break-all;background:var(--bg);border-radius:10px;padding:8px 10px;font-size:13px;display:block}.actions{flex-direction:column;gap:8px;display:flex}button{background:var(--accent);width:100%;color:var(--accent-text);cursor:pointer;border:0;border-radius:14px;padding:14px;font-family:inherit;font-size:16px;font-weight:600}button:disabled{opacity:.55;cursor:default}button.stop{background:var(--danger);color:#fff}button.secondary{background:var(--bg2);color:var(--accent)}button.small-btn{width:auto;padding:8px 12px;font-size:13px}button.link{width:auto;color:var(--accent);background:0 0;padding:0;font-size:15px;font-weight:500}.tabbar{background:var(--bg);border-top:1px solid var(--line);padding:6px 8px calc(6px + env(safe-area-inset-bottom));z-index:10;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar button{max-width:120px;color:var(--hint);background:0 0;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 0;font-weight:500;display:flex}.tabbar button.on{color:var(--accent)}.tab-icon{font-size:22px;line-height:1}.tab-label{font-size:11px}.modal{z-index:20;background:#00000080;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal-body{background:var(--bg);text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:360px;padding:20px;display:flex}.reveal .slipper-art{animation:.5s ease-out pop}@keyframes pop{0%{opacity:0;transform:scale(.3)rotate(-20deg)}to{opacity:1;transform:none}}.loader{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;margin:40px auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.card.earn{background:color-mix(in srgb, var(--good) 12%, var(--bg2))}.earn-sp{color:var(--good);font-variant-numeric:tabular-nums;font-size:20px}.actions-card{gap:12px}.action-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.action-row .small-btn{flex:none;min-width:88px}.points{flex-direction:column;gap:8px;width:100%;display:flex}.points-row{text-align:left;grid-template-columns:1fr auto auto;align-items:center;gap:10px;display:grid}.stepper{gap:6px;display:flex}.stepper button{width:40px;padding:8px 0;font-size:18px}.cross-slots{grid-template-columns:1fr 1fr;gap:10px;display:grid}.cross-slot{border:2px dashed var(--line);justify-content:center;min-height:150px}.plus{color:var(--accent);font-size:36px;line-height:1}.picker{max-height:80vh;overflow-y:auto}.picker .tiles{width:100%}.shop-item{gap:10px}.shop-title{align-items:center;gap:12px;display:flex}.small-icon{font-size:36px}.odds{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.odds li{grid-template-columns:10px 1fr auto;align-items:center;gap:8px;font-size:14px;display:grid}.dot{border-radius:50%;width:10px;height:10px}.buy-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}button.stars{color:#fff;background:#f5a623}.tabbar button{max-width:96px}.deposit{gap:8px}.gift-list{flex-direction:column;gap:10px;display:flex}.gift{gap:8px}.gift-head{align-items:center;gap:12px;display:flex}.gift-title{flex-direction:column;display:flex}.gift-badge{color:#fff;border-radius:50%;flex:none;place-items:center;font-size:20px;font-weight:700;display:inline-grid;box-shadow:inset 0 0 0 2px #ffffff80}.gift-attrs{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.slot-row{gap:8px;width:100%;display:flex}.walk-box{color:#fff;border-radius:12px;place-items:center;font-size:22px;font-weight:800;display:inline-grid;transform:rotate(-6deg);box-shadow:inset 0 0 0 2px #fff6}.sp-win{color:var(--good);font-variant-numeric:tabular-nums;font-size:36px;font-weight:800;animation:.5s ease-out pop}.toast{left:16px;right:16px;bottom:calc(24px + env(safe-area-inset-bottom));background:var(--bg);border:1px solid var(--line);z-index:30;border-radius:16px;align-items:center;gap:12px;max-width:448px;margin:0 auto;padding:12px 14px;animation:.4s ease-out pop;display:flex;position:fixed;box-shadow:0 8px 24px #0000002e}.ton{gap:10px}.ton-amount{grid-template-columns:1fr auto auto;align-items:center;gap:10px;display:grid}.ton-amount input{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--text);border-radius:12px;padding:12px;font-family:inherit;font-size:18px}.ton-deposit{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:10px;display:flex}.copy-row{grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.copy-row code{word-break:break-all;background:var(--bg);border-radius:10px;padding:8px 10px;font-size:12px}.section-title{margin-top:6px;font-size:16px}.streak{gap:10px}.streak-days{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.streak-day{background:var(--bg);border:1px solid var(--line);border-radius:10px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:6px 0;display:flex}.streak-day.done{background:color-mix(in srgb, var(--good) 15%, var(--bg));border-color:#0000}.streak-day.today{border:2px solid var(--accent)}.tiny{color:var(--hint);font-size:10px}.task{gap:8px}.task .meter{grid-template-columns:1fr auto}.admin-tabs button{padding:8px 2px;font-size:12px}.search{gap:8px;display:flex}.search input,.search select{border:1px solid var(--line);background:var(--bg);min-width:0;color:var(--text);font:inherit;border-radius:12px;flex:1;padding:10px 12px}button.admin-row{text-align:left;color:var(--text);font-weight:400}.admin-row{gap:4px;padding:10px 12px}.ledger{gap:4px}.ledger .row{grid-template-columns:auto 1fr auto;gap:8px;display:grid}.log-row{border-bottom:1px solid var(--line);word-break:break-all;flex-direction:column;gap:2px;padding:6px 0;display:flex}.pill.go strong{color:var(--energy)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--bg2);width:auto;color:var(--text);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:500}.chip.on{background:var(--accent);color:var(--accent-text)}.sort{align-items:center;gap:8px;display:flex}.sort select,.price-input input{border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;border-radius:10px;padding:8px 10px}.price-input{flex-direction:column;gap:4px;width:100%;display:flex}.price-input input{text-align:center;font-size:18px}.listing{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.listing-info{flex-direction:column;gap:3px;min-width:0;display:flex}.listing-act{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.price{font-variant-numeric:tabular-nums;white-space:nowrap}input.addr{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--text);font:13px var(--mono,monospace);border-radius:12px;padding:10px 12px}.slipper-wrap{flex:none;display:inline-block;position:relative}.slipper-wrap .slipper-art{display:block}.slipper-wrap.walking{animation:.6s ease-in-out infinite alternate step}.slipper-wrap.walking .slipper-art{animation:none}.slot-gift{border-radius:50%;place-items:center;display:grid;position:absolute;overflow:visible;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #fff,0 3px 8px #00000059}.slot-gift .gift-model{pointer-events:none;width:125%;height:125%}.gift-sticker{border-radius:22%;flex:none;place-items:center;display:inline-grid;overflow:hidden;box-shadow:inset 0 0 0 2px #ffffff59}.gift-sticker .gift-model{width:92%;height:92%}.gift-letter{color:#fff;font-size:22px;font-weight:700}.fx-canvas{pointer-events:none;z-index:60;width:100vw;height:100vh;position:fixed;inset:0}.num-anim{font-variant-numeric:tabular-nums;transition:color .3s}.num-anim.up{color:var(--good)}.reveal-scene{background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--rc) 35%, #0000008c), #000000b8)}.reveal-scene .modal-body{position:relative;overflow:hidden}.reveal-flash{background:var(--rc);z-index:25;pointer-events:none;animation:.26s ease-out forwards flash;position:fixed;inset:0}@keyframes flash{0%{opacity:.95}to{opacity:0}}.reveal-box.shaking{filter:drop-shadow(0 0 18px var(--rc));animation:.22s ease-in-out infinite shake}@keyframes shake{0%{transform:rotate(-8deg)scale(1)}25%{transform:rotate(8deg)scale(1.06)}50%{transform:rotate(-6deg)scale(1.1)}75%{transform:rotate(6deg)scale(1.06)}to{transform:rotate(-8deg)scale(1)}}.reveal-pop{filter:drop-shadow(0 0 22px var(--rc));animation:.55s cubic-bezier(.2,1.6,.4,1) both pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.2)rotate(-25deg)}to{opacity:1;transform:none}}.reveal-rays{background:repeating-conic-gradient(from 0deg, color-mix(in srgb, var(--rc) 30%, transparent) 0 10deg, transparent 10deg 20deg);z-index:-1;opacity:.6;animation:9s linear infinite spin;position:absolute;inset:-40%;-webkit-mask-image:radial-gradient(circle,#000 25%,#0000 65%);mask-image:radial-gradient(circle,#000 25%,#0000 65%)}.sp-win{color:var(--good);font-size:40px;font-weight:800;animation:.5s ease-out both pop-in}.cross-merge{justify-content:center;align-items:center;gap:6px;height:150px;display:flex}.cross-parent.left{animation:1.4s cubic-bezier(.6,0,.4,1) forwards merge-left}.cross-parent.right{animation:1.4s cubic-bezier(.6,0,.4,1) forwards merge-right}@keyframes merge-left{to{opacity:.3;transform:translate(60px)rotate(340deg)scale(.5)}}@keyframes merge-right{to{opacity:.3;transform:translate(-60px)rotate(-340deg)scale(.5)}}.cross-dna{font-size:34px;animation:1.4s ease-in forwards dna}@keyframes dna{0%{transform:scale(.6)rotate(0)}to{filter:drop-shadow(0 0 20px var(--rc));transform:scale(1.8)rotate(720deg)}}button:active:not(:disabled){transform:scale(.97)}button{transition:transform 80ms ease-out,opacity .2s}@media (prefers-reduced-motion:reduce){.reveal-box.shaking,.reveal-pop,.reveal-rays,.cross-parent,.cross-dna,.sp-win,.slipper-wrap.walking{animation:none!important}}
