@import "https://fonts.googleapis.com/css2?family=Press+Start+2P&family=Pixelify+Sans:wght@400..700&display=swap";:root{--ink:#0b0205;--bg:#170609;--bg-2:#1d080e;--inset:#1f0a10;--surface:#2b0d17;--elevated:#3b1321;--elevated-2:#4a1a2c;--line:#401628;--border:#5a2137;--border-strong:#7b2b49;--accent:#e8294f;--accent-hi:#ff6b8a;--accent-fill:#cc1a40;--accent-fill-2:#ab1233;--accent-deep:#7d0b26;--accent-2:#ff8fb4;--accent-2-soft:#f6bccf;--text:#f4e8e4;--text-dim:#e2cbd0;--muted:#c19aa8;--faint:#8d6a78;--silver:#d8ced3;--win:#5ee6a8;--win-deep:#1d8a5c;--win-ink:#052015;--win-tint:#123626;--lose:#ff5c7c;--lose-deep:#b32d4c;--lose-tint:#3a0d18;--info:#9daaff;--info-tint:#1c1830;--warn:#f06ad6;--warn-tint:#35123a;--on-accent:#fff0f3;--px:2px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s7:32px;--s8:48px;--r0:0;--r1:2px;--shadow-px:3px 3px 0 var(--ink);--shadow-px-lg:4px 4px 0 var(--ink);--shadow-px-xl:6px 6px 0 var(--ink);--shadow-inset:inset 2px 2px 0 #00000073;--glow-accent:0 0 0 2px var(--bg), 0 0 0 4px var(--accent);--glow-win:0 0 0 2px var(--bg), 0 0 0 4px var(--win);--font-body:"Pixelify Sans", "Segoe UI", Roboto, system-ui, sans-serif;--font-display:"Press Start 2P", "Courier New", monospace;--font-mono:"Pixelify Sans", ui-monospace, Menlo, monospace;--fs-2xs:8px;--fs-xs:10px;--fs-sm:13px;--fs-md:14px;--fs-ds:12px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:24px;--fs-3xl:32px;--fs-4xl:40px;--lh-tight:1.15;--lh:1.45;--track:.04em;--app-max:520px;--tabbar-h:60px;--dock-h:72px;--header-h:56px;--sidebar-w:240px;--admin-max:1280px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--z-base:0;--z-raised:1;--z-sticky:10;--z-dock:20;--z-tabbar:30;--z-sidebar:35;--z-overlay:40;--z-sheet:50;--z-toast:60;--z-crt:100;--t-fast:80ms;--t-med:.16s;--t-slow:.28s;--frame-card:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%235a2137' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%232b0d17' d='M1 1h4v1H1zM1 2h1v2H1zM4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-elevated:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%237b2b49' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%233b1321' d='M1 1h4v1H1zM1 2h1v2H1zM4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-inset:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%230b0205' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%23150508' d='M1 1h4v1H1zM1 2h1v2H1z'/%3E%3Cpath fill='%234a1a2c' d='M4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-ghost:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%235a2137' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3C/svg%3E");--frame-accent:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%23e8294f' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%233b1321' d='M1 1h4v1H1zM1 2h1v2H1zM4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-rose:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%23ff8fb4' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%233b1321' d='M1 1h4v1H1zM1 2h1v2H1zM4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-win:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%235ee6a8' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%23123626' d='M1 1h4v1H1zM1 2h1v2H1zM4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-info:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%239daaff' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%231c1830' d='M1 1h4v1H1zM1 2h1v2H1zM4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-warn:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%23f06ad6' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%2335123a' d='M1 1h4v1H1zM1 2h1v2H1zM4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-lose:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%23ff5c7c' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%233a0d18' d='M1 1h4v1H1zM1 2h1v2H1zM4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-btn-primary:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%230b0205' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%23ff6b8a' d='M1 1h4v1H1zM1 2h1v2H1z'/%3E%3Cpath fill='%237d0b26' d='M4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-btn-secondary:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%230b0205' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%237b2b49' d='M1 1h4v1H1zM1 2h1v2H1z'/%3E%3Cpath fill='%231f0a10' d='M4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-btn-danger:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%23ff5c7c' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%232b0d17' d='M1 1h4v1H1zM1 2h1v2H1zM4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-btn-danger-hover:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%230b0205' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%23ff9db1' d='M1 1h4v1H1zM1 2h1v2H1z'/%3E%3Cpath fill='%23b32d4c' d='M4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-btn-success:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%230b0205' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%238ff0c4' d='M1 1h4v1H1zM1 2h1v2H1z'/%3E%3Cpath fill='%231d8a5c' d='M4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-input:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%230b0205' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%23150508' d='M1 1h4v1H1zM1 2h1v2H1z'/%3E%3Cpath fill='%234a1a2c' d='M4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-input-focus:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%23e8294f' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%23150508' d='M1 1h4v1H1zM1 2h1v2H1z'/%3E%3Cpath fill='%234a1a2c' d='M4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-input-invalid:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' shape-rendering='crispEdges'%3E%3Cpath fill='%23ff5c7c' d='M1 0h4v1H1zM0 1h1v4H0zM5 1h1v4H5zM1 5h4v1H1z'/%3E%3Cpath fill='%23150508' d='M1 1h4v1H1zM1 2h1v2H1z'/%3E%3Cpath fill='%234a1a2c' d='M4 2h1v2H4zM1 4h4v1H1z'/%3E%3C/svg%3E");--frame-hero:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' shape-rendering='crispEdges'%3E%3Crect x='1' y='1' width='12' height='12' fill='%232b0d17'/%3E%3Cpath fill='%23e8294f' d='M2 0h10v1H2zM0 2h1v10H0zM13 2h1v10h-1zM2 13h10v1H2zM1 1h1v1H1zM12 1h1v1h-1zM1 12h1v1H1zM12 12h1v1h-1z'/%3E%3Cpath fill='%237b2b49' d='M2 2h10v1H2zM2 3h1v8H2zM11 3h1v8h-1zM2 11h10v1H2z'/%3E%3C/svg%3E");--spinner-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='192' height='16' viewBox='0 0 192 16' shape-rendering='crispEdges'%3E%3Cg fill='%23000'%3E%3Crect x='0' y='0' width='4' height='4' fill-opacity='1'/%3E%3Crect x='4' y='0' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='8' y='0' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='20' y='0' width='4' height='4' fill-opacity='1'/%3E%3Crect x='24' y='0' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='28' y='0' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='40' y='0' width='4' height='4' fill-opacity='1'/%3E%3Crect x='44' y='0' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='44' y='4' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='60' y='0' width='4' height='4' fill-opacity='1'/%3E%3Crect x='60' y='4' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='60' y='8' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='76' y='4' width='4' height='4' fill-opacity='1'/%3E%3Crect x='76' y='8' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='76' y='12' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='92' y='8' width='4' height='4' fill-opacity='1'/%3E%3Crect x='92' y='12' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='88' y='12' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='108' y='12' width='4' height='4' fill-opacity='1'/%3E%3Crect x='104' y='12' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='100' y='12' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='120' y='12' width='4' height='4' fill-opacity='1'/%3E%3Crect x='116' y='12' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='112' y='12' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='132' y='12' width='4' height='4' fill-opacity='1'/%3E%3Crect x='128' y='12' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='128' y='8' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='144' y='12' width='4' height='4' fill-opacity='1'/%3E%3Crect x='144' y='8' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='144' y='4' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='160' y='8' width='4' height='4' fill-opacity='1'/%3E%3Crect x='160' y='4' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='160' y='0' width='4' height='4' fill-opacity='0.4'/%3E%3Crect x='176' y='4' width='4' height='4' fill-opacity='1'/%3E%3Crect x='176' y='0' width='4' height='4' fill-opacity='0.7'/%3E%3Crect x='180' y='0' width='4' height='4' fill-opacity='0.4'/%3E%3C/g%3E%3C/svg%3E");--chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' shape-rendering='crispEdges'%3E%3Cpath fill='%23c19aa8' d='M0 0h2v2H0zM2 2h2v2H2zM4 4h2v2H4zM6 4h2v2H6zM8 2h2v2H8zM10 0h2v2h-2zM4 6h4v2H4z'/%3E%3C/svg%3E")}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;height:100%}img,svg,video,canvas{max-width:100%;display:block}img{image-rendering:pixelated;image-rendering:crisp-edges}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:not-allowed}a{color:var(--accent-2);border-bottom:2px solid var(--border-strong);text-decoration:none}a:hover{color:var(--accent-hi);border-color:var(--accent-hi)}ul,ol{padding-left:var(--s5)}hr,.divider{height:2px;margin:var(--s4) 0;background:var(--line);border:0}code,kbd,.code{font-family:var(--font-mono);font-variant-numeric:tabular-nums}body{min-height:100%;color:var(--text);background-color:var(--bg);background-image:conic-gradient(var(--bg-2) 25%, var(--bg) 0 50%, var(--bg-2) 0 75%, var(--bg) 0);font-family:var(--font-body);font-size:var(--fs-md);line-height:var(--lh);-webkit-tap-highlight-color:transparent;background-size:4px 4px;font-weight:500;overflow-x:hidden}h1,h2,h3,h4,.display{font-family:var(--font-display);font-weight:400;line-height:var(--lh-tight);letter-spacing:var(--track);text-transform:uppercase;color:var(--text)}h1{font-size:var(--fs-xl)}h2{font-size:var(--fs-lg)}h3{font-size:var(--fs-ds)}h4{font-size:var(--fs-xs);color:var(--muted)}p{max-width:60ch}small,.small{font-size:var(--fs-sm)}b,strong{font-weight:700}.overline{font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.lead{font-size:var(--fs-lg)}::placeholder{color:var(--faint);opacity:1}::selection{background:var(--accent);color:var(--on-accent)}:focus{outline:none}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) var(--inset)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--inset)}::-webkit-scrollbar-thumb{background:var(--border-strong);border:2px solid var(--inset)}::-webkit-scrollbar-thumb:hover{background:var(--accent)}body.crt:before,body.crt:after{content:"";pointer-events:none;z-index:var(--z-crt);position:fixed;inset:0}body.crt:before{background:repeating-linear-gradient(#00000017 0 1px,#0000 1px 3px);animation:6s steps(6,end) infinite px-scan}body.crt:after{background:radial-gradient(80% 70% at 50% 45%,#0000 55%,#0800038c 100%),radial-gradient(50% 40% at 50% 30%,#ff8fb409,#0000 70%)}.u-muted{color:var(--muted)}.u-dim{color:var(--text-dim)}.u-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.u-upper{text-transform:uppercase;letter-spacing:var(--track)}.u-center{text-align:center}.u-right{text-align:right}.u-row{align-items:center;gap:var(--s2);display:flex}.u-col{gap:var(--s2);flex-direction:column;display:flex}.u-wrap{flex-wrap:wrap}.u-between{justify-content:space-between}.u-gap-1{gap:var(--s1)}.u-gap-2{gap:var(--s2)}.u-gap-3{gap:var(--s3)}.u-gap-4{gap:var(--s4)}.u-gap-6{gap:var(--s6)}.u-truncate{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.u-pos{color:var(--win)}.u-neg{color:var(--lose)}.u-accent{color:var(--accent-2)}.u-grow,.spacer{flex:auto;min-width:0}.u-mt-2{margin-top:var(--s2)}.u-mt-4{margin-top:var(--s4)}.u-mt-6{margin-top:var(--s6)}.u-mb-2{margin-bottom:var(--s2)}.u-mb-4{margin-bottom:var(--s4)}.u-hide-desktop{display:initial}.u-hide-mobile{display:none!important}.u-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width>=720px){.u-hide-mobile{display:initial!important}.u-hide-desktop{display:none!important}}@keyframes px-blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes px-roll{0%{transform:translate(0)rotate(0)}25%{transform:translate(6px,-14px)rotate(90deg)}50%{transform:translateY(-20px)rotate(180deg)}75%{transform:translate(-6px,-14px)rotate(270deg)}to{transform:translate(0)rotate(360deg)}}@keyframes px-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes px-pop{0%{opacity:0;transform:scale(0)}60%{opacity:1;transform:scale(1.15)}to{transform:scale(1)}}@keyframes px-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes px-slide-down{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes px-fade{0%{opacity:0}to{opacity:1}}@keyframes px-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes px-scan{0%{background-position:0 0}to{background-position:0 6px}}@keyframes px-spin{to{-webkit-mask-position:100% 0;mask-position:100% 0}}@keyframes px-shimmer{0%{background-position:0 0}to{background-position:32px 0}}.anim-pop{animation:px-pop var(--t-slow) steps(4, jump-none) both}.anim-shake{animation:.4s steps(5,end) both px-shake}.anim-blink{animation:1s step-end infinite px-blink}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.card,.card-elevated,.card-inset,.stat,.list,.table,.bet-panel,.profile-card,.ref-card,.chart-card,.fieldset,.rule-node,.analysis,.game-list,.mode-block,.audit-log,.withdrawal-row{background:var(--surface) padding-box;border:4px solid #0000;border-image:var(--frame-card) 2 stretch}.btn{--_spin:var(--text);justify-content:center;align-items:center;gap:var(--s2);min-height:40px;padding:0 var(--s4);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:var(--track);text-transform:uppercase;color:var(--text);text-align:center;white-space:nowrap;-webkit-user-select:none;user-select:none;background:var(--elevated) padding-box;border:4px solid #0000;border-image:var(--frame-btn-secondary) 2 stretch;box-shadow:var(--shadow-px);transition:transform var(--t-fast) steps(2), box-shadow var(--t-fast) steps(2), filter var(--t-fast);line-height:1;display:inline-flex;position:relative}.btn:hover{filter:brightness(1.1)}.btn:active,.btn.is-active{box-shadow:none;filter:none;transform:translate(3px,3px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;filter:saturate(.25);box-shadow:var(--shadow-px);pointer-events:none;transform:none}.btn .icon{flex:none}.btn-primary{--_spin:var(--on-accent);color:var(--on-accent);border-image-source:var(--frame-btn-primary);background-image:linear-gradient(180deg, var(--accent-fill) 0 50%, var(--accent-fill-2) 50%)}.btn-secondary{color:var(--text)}.btn-ghost{color:var(--text-dim);border-image-source:var(--frame-ghost);box-shadow:none;background-color:#0000}.btn-ghost:hover{color:var(--text);background-color:var(--surface);filter:none}.btn-ghost:active,.btn-ghost.is-active{background-color:var(--elevated);transform:none}.btn-danger{color:var(--lose);background-color:var(--surface);border-image-source:var(--frame-btn-danger)}.btn-danger:hover{--_spin:var(--ink);color:var(--ink);background-color:var(--lose);border-image-source:var(--frame-btn-danger-hover);filter:none}.btn-success{--_spin:var(--win-ink);color:var(--win-ink);border-image-source:var(--frame-btn-success);background-image:linear-gradient(180deg, var(--win) 0 50%, #4fd69a 50%)}.btn-sm{min-height:32px;padding:0 var(--s3);font-size:var(--fs-2xs);gap:var(--s1)}.btn-lg{min-height:52px;padding:0 var(--s6);font-size:var(--fs-ds);box-shadow:var(--shadow-px-lg)}.btn-lg:active,.btn-lg.is-active{transform:translate(4px,4px)}.btn-block{width:100%;display:flex}.btn-icon{width:40px;padding:0}.btn-sm.btn-icon{width:32px}.btn-lg.btn-icon{width:52px}.btn.is-loading{pointer-events:none;color:#0000!important}.btn.is-loading:after{content:"";background:var(--_spin);width:16px;height:16px;-webkit-mask:var(--spinner-mask) 0 0 / 1200% 100% no-repeat;-webkit-mask:var(--spinner-mask) 0 0 / 1200% 100% no-repeat;mask:var(--spinner-mask) 0 0 / 1200% 100% no-repeat;margin:auto;animation:.9s steps(12,jump-none) infinite px-spin;position:absolute;inset:0}.input,.select,.textarea,.input-group{width:100%;min-width:0;min-height:44px;padding:0 var(--s3);font-family:var(--font-body);font-size:var(--fs-lg);color:var(--text);background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-input) 2 stretch;box-shadow:var(--shadow-inset);font-weight:500;display:block}.input:focus,.select:focus,.textarea:focus,.input-group:focus-within{border-image-source:var(--frame-input-focus);outline:none}.input:disabled,.select:disabled,.textarea:disabled{color:var(--faint);opacity:.7}.input.is-invalid,.is-invalid .input,.is-invalid .select,.is-invalid .textarea,.is-invalid .input-group{border-image-source:var(--frame-input-invalid)}.input-lg{min-height:64px;font-family:var(--font-display);font-size:var(--fs-2xl);text-align:center;letter-spacing:0}.input-lg::placeholder{color:var(--border-strong)}.input-group{align-items:stretch;padding:0;display:flex}.input-group .input{min-width:0;min-height:36px;box-shadow:none;background:0 0;border:0;flex:auto}.input-group .input-lg{min-height:56px}.input-addon{padding:0 var(--s3);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:var(--track);color:var(--muted);border-left:2px solid var(--line);flex:none;align-items:center;display:flex}.input-addon:first-child{border-left:0;border-right:2px solid var(--line)}.select{appearance:none;cursor:pointer;background-image:var(--chevron);background-position:right 12px center;background-repeat:no-repeat;background-size:12px 8px;padding-right:36px}.select option{background:var(--surface);color:var(--text)}.textarea{min-height:96px;padding:var(--s2) var(--s3);line-height:var(--lh);resize:vertical}input[type=number]{appearance:textfield}input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.field{gap:var(--s1);flex-direction:column;min-width:0;display:flex}.field-label{font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.field-hint{font-size:var(--fs-sm);color:var(--muted)}.field-error{font-size:var(--fs-sm);color:var(--lose);font-weight:600;display:none}.field.is-invalid .field-error{display:block}.field.is-invalid .field-label{color:var(--lose)}.toggle,.checkbox{align-items:center;gap:var(--s2);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex;position:relative}.toggle input,.checkbox input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.toggle-track{background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-input) 2 stretch;width:44px;height:24px;transition:background-color var(--t-fast);flex:none;position:relative}.toggle-thumb{background:var(--muted);width:12px;height:12px;transition:transform var(--t-fast) steps(2), background-color var(--t-fast);position:absolute;top:2px;left:2px;box-shadow:2px 2px #00000080}.toggle input:checked+.toggle-track{background-color:var(--win-tint)}.toggle input:checked+.toggle-track .toggle-thumb{background:var(--win);transform:translate(20px)}.toggle input:focus-visible+.toggle-track,.checkbox input:focus-visible+.checkbox-box{outline:2px solid var(--accent-2);outline-offset:2px}.toggle input:disabled~*,.checkbox input:disabled~*{opacity:.5;cursor:not-allowed}.toggle-label{font-size:var(--fs-md)}.checkbox-box{background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-input) 2 stretch;flex:none;width:20px;height:20px;position:relative}.checkbox input:checked+.checkbox-box{background-color:var(--win-tint)}.checkbox input:checked+.checkbox-box:after{content:"";background:var(--win);width:2px;height:2px;box-shadow:2px 2px 0 var(--win), 4px 0 0 var(--win), 6px -2px 0 var(--win), 8px -4px 0 var(--win);position:absolute;top:5px;left:2px}.seg{background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-input) 2 stretch;gap:2px;padding:2px;display:inline-flex}.seg-item{min-height:28px;padding:0 var(--s3);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:var(--track);text-transform:uppercase;color:var(--muted);transition:color var(--t-fast)}.seg-item:hover{color:var(--text)}.seg-item.is-active{color:var(--on-accent);background:var(--accent-fill);box-shadow:inset 0 -2px 0 var(--accent-deep)}.seg-item:disabled{opacity:.4}.chips{gap:var(--s2);flex-wrap:wrap;display:flex}.chip{justify-content:center;align-items:center;gap:var(--s1);min-height:32px;padding:0 var(--s3);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:var(--track);text-transform:uppercase;white-space:nowrap;color:var(--text-dim);background:var(--elevated) padding-box;border:4px solid #0000;border-image:var(--frame-elevated) 2 stretch;box-shadow:2px 2px 0 var(--ink);transition:transform var(--t-fast) steps(2), box-shadow var(--t-fast) steps(2);display:inline-flex}.chip:hover{color:var(--text);border-image-source:var(--frame-rose)}.chip:active{box-shadow:none;transform:translate(2px,2px)}.chip.is-active{color:var(--on-accent);border-image-source:var(--frame-btn-primary);background-image:linear-gradient(180deg, var(--accent-fill) 0 50%, var(--accent-fill-2) 50%)}.chip:disabled{opacity:.4;box-shadow:none}.chip-sm{min-height:24px;padding:0 var(--s2);box-shadow:none}.tabs{gap:var(--s1);border-bottom:2px solid var(--line);scrollbar-width:none;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{padding:var(--s3) var(--s3) 10px;font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:var(--track);text-transform:uppercase;color:var(--muted);white-space:nowrap;border-bottom:4px solid #0000;flex:none;margin-bottom:-2px;position:relative}.tab:hover{color:var(--text)}.tab.is-active{color:var(--text);border-bottom-color:var(--accent)}.tab.is-active:after{content:"";background:var(--accent);width:8px;height:4px;margin-left:-4px;position:absolute;bottom:-8px;left:50%}.tab .badge{margin-left:var(--s1)}.badge{vertical-align:middle;white-space:nowrap;height:18px;font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);background:var(--elevated);box-shadow:inset 0 0 0 2px var(--border);align-items:center;gap:5px;padding:0 6px;line-height:1;display:inline-flex}.badge-win{color:var(--win-ink);background:var(--win);box-shadow:inset 0 -2px 0 var(--win-deep)}.badge-lose{color:var(--ink);background:var(--lose);box-shadow:inset 0 -2px 0 var(--lose-deep)}.badge-pending{color:var(--warn);background:var(--warn-tint);box-shadow:inset 0 0 0 2px var(--warn)}.badge-paid{color:var(--win);background:var(--win-tint);box-shadow:inset 0 0 0 2px var(--win-deep)}.badge-review{color:var(--info);background:var(--info-tint);box-shadow:inset 0 0 0 2px var(--info)}.badge-rejected{color:var(--lose);background:var(--lose-tint);box-shadow:inset 0 0 0 2px var(--lose-deep)}.badge-live{color:var(--accent-2);background:var(--ink);box-shadow:inset 0 0 0 2px var(--accent-deep)}.badge-live:before{content:"";background:var(--accent);width:6px;height:6px;animation:1s step-end infinite px-blink}.badge-demo{color:var(--info);background:var(--info-tint);box-shadow:inset 0 0 0 2px var(--info)}.badge-real{color:var(--on-accent);background:var(--accent-fill);box-shadow:inset 0 -2px 0 var(--accent-deep)}.badge-info{color:var(--info);background:var(--info-tint);box-shadow:inset 0 0 0 2px var(--info)}.badge-muted{color:var(--muted);background:var(--inset);box-shadow:inset 0 0 0 2px var(--line)}.card,.card-elevated,.card-inset{padding:var(--s4);min-width:0;position:relative}.card-elevated{background-color:var(--elevated);border-image-source:var(--frame-elevated);box-shadow:var(--shadow-px-lg)}.card-inset{background-color:var(--inset);border-image-source:var(--frame-inset);box-shadow:var(--shadow-inset)}.card-title{align-items:center;gap:var(--s2);margin-bottom:var(--s3);display:flex}.card-title h3{font-size:var(--fs-xs)}.pixel-frame{padding:var(--s4);background:var(--surface) padding-box;border:10px solid #0000;border-image:var(--frame-hero) 5 stretch;box-shadow:var(--shadow-px-lg);position:relative}.stat{min-width:0;padding:var(--s3);flex-direction:column;gap:2px;display:flex}.stat-label{font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.stat-value{font-family:var(--font-display);font-size:var(--fs-ds);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.25}.stat-delta{font-size:var(--fs-sm);font-weight:600}.stat-grid{gap:var(--s2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.list{flex-direction:column;display:flex}.list-item,.history-item,.tx-item{align-items:center;gap:var(--s3);min-height:56px;padding:var(--s2) var(--s3);border-bottom:2px solid var(--line);text-align:left;width:100%;color:inherit;display:flex}.list-item:last-child,.history-item:last-child,.tx-item:last-child{border-bottom:0}.list-item:hover,.list-item.is-active{background:var(--elevated)}.list-icon{width:36px;height:36px;color:var(--accent-2);background:var(--inset);box-shadow:inset 0 0 0 2px var(--border);flex:none;place-items:center;display:grid}.list-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.list-title{font-weight:700;font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.list-sub{font-size:var(--fs-sm);color:var(--muted)}.list-end{flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.amount{font-family:var(--font-display);font-size:var(--fs-ds);font-variant-numeric:tabular-nums;letter-spacing:0;white-space:nowrap}.money{align-items:baseline;gap:var(--s1);font-family:var(--font-display);font-variant-numeric:tabular-nums;white-space:nowrap;display:inline-flex}.money-unit{letter-spacing:.08em;color:var(--muted);font-size:.5em}.toast{top:calc(var(--safe-top) + var(--s3));left:var(--s4);right:var(--s4);z-index:var(--z-toast);align-items:center;gap:var(--s2);max-width:420px;padding:var(--s3) var(--s4);color:var(--text);background:var(--elevated) padding-box;border:4px solid #0000;border-image:var(--frame-elevated) 2 stretch;box-shadow:var(--shadow-px-lg);animation:px-slide-down var(--t-slow) steps(6) both;margin:0 auto;font-weight:600;display:flex;position:fixed}.toast .icon{flex:none}.toast-error{border-image-source:var(--frame-lose);background-color:var(--lose-tint)}.toast-error .icon{color:var(--lose)}.toast-success{border-image-source:var(--frame-win);background-color:var(--win-tint)}.toast-success .icon{color:var(--win)}.toast-info{border-image-source:var(--frame-info);background-color:var(--info-tint)}.toast-info .icon{color:var(--info)}.alert{align-items:flex-start;gap:var(--s2);padding:var(--s3);font-size:var(--fs-sm);color:var(--text-dim);background:var(--surface) padding-box;border:4px solid #0000;border-image:var(--frame-card) 2 stretch;display:flex}.alert .icon{color:var(--accent-2);flex:none;margin-top:1px}.alert b{color:var(--text)}.alert-error{border-image-source:var(--frame-lose);background-color:var(--lose-tint)}.alert-error .icon{color:var(--lose)}.alert-warn{border-image-source:var(--frame-warn);background-color:var(--warn-tint)}.alert-warn .icon{color:var(--warn)}.alert-success{border-image-source:var(--frame-win);background-color:var(--win-tint)}.alert-success .icon{color:var(--win)}.alert-info{border-image-source:var(--frame-info);background-color:var(--info-tint)}.alert-info .icon{color:var(--info)}.notice{align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);font-size:var(--fs-sm);color:var(--text-dim);background:var(--inset);box-shadow:inset 0 0 0 2px var(--line);display:flex}.notice .icon{color:var(--accent-2);flex:none}.marquee{white-space:nowrap;color:var(--accent-2);background:var(--ink);box-shadow:inset 0 2px 0 var(--line), inset 0 -2px 0 var(--line);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.1em;text-transform:uppercase;padding:6px 0;overflow:hidden}.marquee-track{gap:var(--s6);padding-right:var(--s6);will-change:transform;animation:28s linear infinite px-marquee;display:inline-flex}.marquee:hover .marquee-track{animation-play-state:paused}.empty{align-items:center;gap:var(--s2);padding:var(--s7) var(--s4);text-align:center;color:var(--muted);flex-direction:column;display:flex}.empty .icon,.empty .sprite{color:var(--border-strong);margin-bottom:var(--s2)}.empty-title{font-family:var(--font-display);font-size:var(--fs-xs);text-transform:uppercase;color:var(--text-dim)}.empty p{font-size:var(--fs-sm);max-width:30ch}.loader{width:16px;height:16px;color:var(--accent-2);-webkit-mask:var(--spinner-mask) 0 0 / 1200% 100% no-repeat;-webkit-mask:var(--spinner-mask) 0 0 / 1200% 100% no-repeat;mask:var(--spinner-mask) 0 0 / 1200% 100% no-repeat;background:currentColor;flex:none;animation:.9s steps(12,jump-none) infinite px-spin;display:inline-block}.loader-lg{width:32px;height:32px}.progress{--value:0%;background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-input) 2 stretch;height:16px;position:relative;overflow:hidden}.progress-bar{height:100%;width:var(--value);background:var(--accent);transition:width var(--t-med) steps(4);-webkit-mask:repeating-linear-gradient(90deg,#000 0 6px,#0000 6px 8px);mask:repeating-linear-gradient(90deg,#000 0 6px,#0000 6px 8px)}.progress.is-win .progress-bar{background:var(--win)}.progress.is-lose .progress-bar{background:var(--lose)}.skeleton{pointer-events:none;-webkit-user-select:none;user-select:none;background:repeating-linear-gradient(90deg, var(--elevated) 0 8px, var(--surface) 8px 16px) 0 0 / 32px 100%;min-height:14px;animation:.8s steps(4,end) infinite px-shimmer;display:block;color:#0000!important}.skeleton-text{width:60%}.skeleton-title{width:40%;min-height:18px}.skeleton-block{min-height:80px}.overlay{z-index:var(--z-overlay);background-color:#0b02058c;background-image:conic-gradient(#0b02058c 25%, transparent 0 50%, #0b02058c 0 75%, transparent 0);animation:px-fade var(--t-med) steps(3) both;background-size:4px 4px;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:var(--app-max);max-height:92%;padding:var(--s2) var(--s4) calc(var(--s4) + var(--safe-bottom));background:var(--elevated) padding-box;border:4px solid #0000;border-image:var(--frame-elevated) 2 stretch;animation:px-slide-up var(--t-slow) steps(8) both;border-bottom:0;position:relative;overflow:auto}.sheet-handle{width:40px;height:4px;margin:var(--s1) auto var(--s3);background:var(--border-strong)}.sheet-title,.modal-title,.drawer-header{align-items:center;gap:var(--s2);font-family:var(--font-display);font-size:var(--fs-ds);letter-spacing:var(--track);text-transform:uppercase;display:flex}.sheet-title{margin-bottom:var(--s3)}.sheet-body,.modal-body{gap:var(--s3);color:var(--text-dim);flex-direction:column;display:flex}.sheet-actions{gap:var(--s2);margin-top:var(--s4);display:flex}.sheet-actions .btn{flex:1}.modal{width:100%;max-width:520px;padding:var(--s5);background:var(--elevated) padding-box;border:4px solid #0000;border-image:var(--frame-elevated) 2 stretch;box-shadow:var(--shadow-px-xl);animation:px-pop var(--t-slow) steps(4, jump-none) both;margin:auto;position:relative}.modal-title{margin-bottom:var(--s4)}.modal-title .btn{margin-left:auto}.modal-actions{justify-content:flex-end;gap:var(--s2);margin-top:var(--s5);display:flex}.drawer{z-index:var(--z-sheet);background:var(--surface);width:min(440px,100%);box-shadow:-2px 0 0 var(--ink), -4px 0 0 var(--border-strong);animation:px-slide-left var(--t-slow) steps(8) both;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer-header{padding:var(--s4);border-bottom:2px solid var(--line)}.drawer-header .btn{margin-left:auto}.drawer-body{padding:var(--s4);gap:var(--s4);flex-direction:column;flex:1;display:flex;overflow:auto}.drawer-footer{gap:var(--s2);padding:var(--s3) var(--s4);border-top:2px solid var(--line);background:var(--elevated);display:flex}@keyframes px-slide-left{0%{transform:translate(100%)}to{transform:translate(0)}}.kv{flex-direction:column;display:flex}.kv-row{justify-content:space-between;align-items:baseline;gap:var(--s3);padding:var(--s2) 0;border-bottom:2px solid var(--line);display:flex}.kv-row:last-child{border-bottom:0}.kv-key{font-size:var(--fs-sm);color:var(--muted);flex:none}.kv-val{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0;font-weight:600}.code{font-size:var(--fs-sm);color:var(--accent-2);background:var(--inset);box-shadow:inset 0 0 0 2px var(--line);padding:1px 6px;display:inline-block}.copy-field{align-items:center;gap:var(--s2);padding:var(--s1) var(--s1) var(--s1) var(--s3);background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-input) 2 stretch;display:flex}.copy-field code{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fs-sm);color:var(--text-dim);flex:1;overflow:hidden}.copy-field .btn{flex:none}.icon{fill:currentColor;vertical-align:-3px;flex:none;width:16px;height:16px;display:inline-block}.icon-sm{vertical-align:-1px;width:12px;height:12px}.icon-lg{vertical-align:-6px;width:24px;height:24px}.icon-xl{vertical-align:-8px;width:32px;height:32px}.sprite{-webkit-user-select:none;user-select:none;width:1em;height:1em;filter:drop-shadow(1px 0 0 var(--ink)) drop-shadow(-1px 0 0 var(--ink)) drop-shadow(0 1px 0 var(--ink)) drop-shadow(0 -1px 0 var(--ink));flex:none;place-items:center;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:32px;line-height:1;display:inline-grid}.sprite img{width:1em;height:1em;image-rendering:pixelated}.sprite-sm{font-size:20px}.sprite-md{font-size:32px}.sprite-lg{font-size:48px}.sprite-xl{font-size:72px}.avatar{width:36px;height:36px;font-family:var(--font-display);font-size:var(--fs-xs);text-transform:uppercase;color:var(--on-accent);background:linear-gradient(180deg, var(--accent-fill) 0 50%, var(--accent-fill-2) 50%) padding-box;border:4px solid #0000;border-image:var(--frame-btn-primary) 2 stretch;flex:none;place-items:center;display:inline-grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-lg{width:64px;height:64px;font-size:var(--fs-xl)}.table{--cols:repeat(4, minmax(0, 1fr));flex-direction:column;display:flex}.table .tr{gap:var(--s1) var(--s3);padding:var(--s3);border-bottom:2px solid var(--line);font-size:var(--fs-sm);grid-template-columns:1fr;align-items:center;display:grid}.table .tr:last-child{border-bottom:0}.table .tr:hover{background:var(--elevated)}.table .tr.th{display:none}.table .tr>span{justify-content:flex-end;align-items:center;gap:var(--s2);min-width:0;display:flex}.table .tr>span[data-label]:before{content:attr(data-label);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex:none;margin-right:auto;padding-top:3px}.table-actions,.table .tr>.table-actions{gap:var(--s1);justify-content:flex-end;display:flex}.pager{justify-content:space-between;align-items:center;gap:var(--s2);padding:var(--s3) 0;display:flex}.pager-info{font-size:var(--fs-sm);color:var(--muted)}.pager-nav{gap:var(--s2);display:flex}.pager-btn{min-width:32px}@media (width>=720px){.stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.stat-value{font-size:var(--fs-lg)}.overlay{padding:var(--s6);align-items:center}.sheet{max-width:480px;box-shadow:var(--shadow-px-xl);animation:px-pop var(--t-slow) steps(4, jump-none) both;border-bottom:4px solid #0000}.sheet-handle{display:none}.table .tr{grid-template-columns:var(--cols);padding:var(--s2) var(--s3)}.table .tr.th{z-index:1;background:var(--inset);color:var(--muted);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;display:grid;position:sticky;top:0}.table .tr.th:hover{background:var(--inset)}.table .tr>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.table .tr>span[data-label]:before{content:none}}.app{min-height:100%;max-width:var(--app-max);flex-direction:column;margin:0 auto;display:flex;position:relative}.app-header{z-index:var(--z-sticky);align-items:center;gap:var(--s2);min-height:calc(var(--header-h) + var(--safe-top));padding:var(--safe-top) var(--s4) 0;background:var(--bg);box-shadow:0 2px 0 var(--line), 0 4px 0 var(--ink);display:flex;position:sticky;top:0}.brand{align-items:center;gap:var(--s2);min-width:0;color:inherit;border:0;display:flex}.brand>span{min-width:0;overflow:hidden}.brand-name,.brand-sub{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.brand .logo{width:32px;height:32px;color:var(--accent);filter:drop-shadow(2px 2px 0 var(--ink));flex:none}.brand-name{font-family:var(--font-display);font-size:var(--fs-ds);letter-spacing:.1em;text-transform:uppercase;line-height:1;display:block}.brand-sub{font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:5px;line-height:1;display:block}.balance-chip{white-space:nowrap;height:32px;font-family:var(--font-display);font-size:var(--fs-xs);color:var(--accent-2-soft);background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-input) 2 stretch;flex:none;align-items:center;gap:5px;margin-left:auto;padding:0 6px;display:inline-flex}.balance-chip .icon{color:var(--silver)}.balance-chip small{font-size:var(--fs-2xs);color:var(--muted)}.app-main{gap:var(--s4);padding:var(--s4) var(--s4) calc(var(--tabbar-h) + var(--dock-h) + var(--safe-bottom) + var(--s4));flex-direction:column;flex:1;display:flex}.app-main.no-dock{padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + var(--s4))}.tabbar{z-index:var(--z-tabbar);height:calc(var(--tabbar-h) + var(--safe-bottom));padding:0 var(--s1) var(--safe-bottom);background:var(--surface);box-shadow:0 -2px 0 var(--ink), 0 -4px 0 var(--border);display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar-item{min-width:0;color:var(--muted);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.04em;text-transform:uppercase;transition:color var(--t-fast);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;display:flex;position:relative}.tabbar-item .icon{width:20px;height:20px}.tabbar-item span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.tabbar-item:hover{color:var(--text)}.tabbar-item.is-active{color:var(--accent-2)}.tabbar-item.is-active:before{content:"";background:var(--accent);width:24px;height:4px;margin-left:-12px;position:absolute;top:0;left:50%}.tabbar-item:active .icon{transform:translateY(2px)}.cta-dock{left:0;right:0;bottom:calc(var(--tabbar-h) + var(--safe-bottom));z-index:var(--z-dock);padding:var(--s6) var(--s4) var(--s3);background:linear-gradient(180deg, transparent 0 20%, #1706098c 20% 45%, #170609e6 45% 70%, var(--bg) 70%);pointer-events:none;position:fixed}.cta-dock .btn{pointer-events:auto;width:100%}.hero-balance{align-items:center;gap:var(--s3);padding:var(--s5) var(--s4) var(--s4);text-align:center;background-image:linear-gradient(180deg, var(--elevated) 0 28%, #33101c 28% 52%, var(--surface) 52%);flex-direction:column;display:flex}.hero-balance-label{font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.hero-balance-value{font-family:var(--font-display);font-size:var(--fs-2xl);color:var(--accent-2-soft);text-shadow:3px 3px 0 var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.1}.hero-balance-value .money-unit{font-size:var(--fs-xs);color:var(--muted);text-shadow:none}.hero-balance-actions{gap:var(--s2);margin-top:var(--s1);justify-content:center;display:flex}.game-grid{gap:var(--s3);margin:0 calc(-1 * var(--s4));padding:var(--s1) var(--s4) var(--s2);scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;overflow-x:auto}.game-grid::-webkit-scrollbar{display:none}.game-card{scroll-snap-align:start;align-items:center;gap:var(--s2);padding:var(--s4) var(--s2) var(--s3);text-align:center;color:var(--text);background:var(--surface) padding-box;border:4px solid #0000;border-image:var(--frame-card) 2 stretch;box-shadow:var(--shadow-px);transition:transform var(--t-fast) steps(2), box-shadow var(--t-fast) steps(2);flex-direction:column;flex:0 0 116px;display:flex;position:relative}.game-card:hover{background-color:var(--elevated);border-image-source:var(--frame-elevated)}.game-card:active{box-shadow:none;transform:translate(3px,3px)}.game-card.is-selected{background-color:var(--elevated);border-image-source:var(--frame-accent);box-shadow:3px 3px 0 var(--accent-deep)}.game-card.is-selected .game-card-name{color:var(--accent-2)}.game-card:disabled{opacity:.45;filter:saturate(.2);box-shadow:none;transform:none}.game-card-index{font-family:var(--font-display);font-size:var(--fs-2xs);color:var(--faint);position:absolute;top:5px;left:7px}.game-card-name{font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:var(--track);text-transform:uppercase}.game-card-meta{font-size:var(--fs-sm);color:var(--muted)}.bet-panel{gap:var(--s4);padding:var(--s4);flex-direction:column;display:flex}.bet-panel-head h3{min-width:0;font-size:var(--fs-ds);flex:1}.bet-panel-head .badge{margin-left:auto}.outcome-grid{gap:var(--s2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.outcome-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.outcome{min-height:60px;padding:var(--s2);color:var(--text);background:var(--elevated) padding-box;border:4px solid #0000;border-image:var(--frame-elevated) 2 stretch;box-shadow:var(--shadow-px);transition:transform var(--t-fast) steps(2), box-shadow var(--t-fast) steps(2);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.outcome:hover{border-image-source:var(--frame-rose)}.outcome:active{box-shadow:none;transform:translate(3px,3px)}.outcome.is-active{color:var(--on-accent);border-image-source:var(--frame-btn-primary);background-image:linear-gradient(180deg, var(--accent-fill) 0 50%, var(--accent-fill-2) 50%)}.outcome.is-active .outcome-coef{color:var(--on-accent)}.outcome:disabled{opacity:.4;box-shadow:none;transform:none}.outcome-name{font-size:var(--fs-md);font-weight:700;line-height:1.2}.outcome-coef{font-family:var(--font-display);font-size:var(--fs-xs);color:var(--win)}.stake{gap:var(--s2);flex-direction:column;display:flex}.quick-row{gap:var(--s2);scrollbar-width:none;padding-bottom:3px;display:flex;overflow-x:auto}.quick-row::-webkit-scrollbar{display:none}.quick-row .chip{flex:1 0 auto}.summary{gap:var(--s1);padding:var(--s3);background:var(--inset);box-shadow:inset 0 0 0 2px var(--line);flex-direction:column;display:flex}.summary-row{justify-content:space-between;align-items:baseline;gap:var(--s3);font-size:var(--fs-sm);color:var(--muted);display:flex}.summary-row b{font-family:var(--font-display);font-size:var(--fs-xs);color:var(--text);font-variant-numeric:tabular-nums}.summary-total{margin-top:var(--s1);padding-top:var(--s2);border-top:2px solid var(--line);color:var(--text-dim)}.summary-total b{font-size:var(--fs-ds);color:var(--win)}.duel-note{align-items:flex-start;gap:var(--s2);padding:var(--s3);font-size:var(--fs-sm);color:var(--text-dim);background:var(--info-tint);box-shadow:inset 0 0 0 2px var(--info);display:flex}.duel-note .icon{color:var(--info);flex:none;margin-top:2px}.duel-note b{color:var(--text)}.duel-board{align-items:stretch;gap:var(--s3);padding:var(--s4);background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-inset) 2 stretch;grid-template-columns:1fr auto 1fr;display:grid}.duel-side{justify-content:center;align-items:center;gap:var(--s2);padding:var(--s3) var(--s2);background:var(--surface);min-width:0;box-shadow:inset 0 0 0 2px var(--border);flex-direction:column;display:flex}.duel-who{font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.12em;color:var(--muted)}.duel-val{font-family:var(--font-display);font-size:var(--fs-3xl);color:var(--text);text-shadow:3px 3px 0 var(--ink);line-height:1}.duel-vs{font-family:var(--font-display);font-size:var(--fs-ds);color:var(--accent);text-shadow:2px 2px 0 var(--ink);align-self:center}.duel-board.is-win .duel-you,.duel-board.is-lose .duel-server{background:var(--win-tint);box-shadow:inset 0 0 0 2px var(--win)}.duel-board.is-win .duel-you .duel-val,.duel-board.is-lose .duel-server .duel-val{color:var(--win)}.duel-board.is-win .duel-server .duel-val,.duel-board.is-lose .duel-you .duel-val{color:var(--muted)}.duel-board.is-lose .duel-you{background:var(--lose-tint);box-shadow:inset 0 0 0 2px var(--lose)}.duel-board.is-lose .duel-you .duel-val{color:var(--lose)}.duel-board.is-draw .duel-side{background:var(--info-tint);box-shadow:inset 0 0 0 2px var(--info)}.duel-board.is-draw .duel-val{color:var(--info)}.dice-stage{justify-content:center;align-items:center;gap:var(--s3);min-height:200px;padding:var(--s5);background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-inset) 2 stretch;background-image:radial-gradient(70% 55% at 50% 62%,#e8294f29,#0000 70%),repeating-linear-gradient(#0000 0 14px,#ff8fb40f 14px 16px);flex-direction:column;display:flex;position:relative;overflow:hidden}.dice-stage .sprite{transform-origin:50% 55%}.dice-stage.is-rolling .sprite{animation:.55s steps(8,end) infinite px-roll}.dice-stage.is-rolling .dice-result{visibility:hidden}.dice-result{font-family:var(--font-display);font-size:var(--fs-3xl);color:var(--accent-2-soft);text-shadow:4px 4px 0 var(--ink);line-height:1}.dice-caption{font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.result-banner{align-items:center;gap:var(--s1);padding:var(--s4);text-align:center;background:var(--elevated) padding-box;border:4px solid #0000;border-image:var(--frame-elevated) 2 stretch;animation:px-pop var(--t-slow) steps(4, jump-none) both;flex-direction:column;display:flex}.result-title{font-family:var(--font-display);font-size:var(--fs-lg);letter-spacing:var(--track);text-transform:uppercase;text-shadow:3px 3px 0 var(--ink)}.result-sub{font-size:var(--fs-md);color:var(--text-dim)}.result-banner.is-win{border-image-source:var(--frame-win);background-color:var(--win-tint)}.result-banner.is-win .result-title{color:var(--win)}.result-banner.is-lose{border-image-source:var(--frame-lose);background-color:var(--lose-tint);animation:.4s steps(5,end) both px-shake}.result-banner.is-lose .result-title{color:var(--lose)}.result-banner.is-refund{border-image-source:var(--frame-info);background-color:var(--info-tint)}.result-banner.is-refund .result-title{color:var(--info)}.result-grid{gap:var(--s2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.wallet-actions{gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.wallet-actions .btn{gap:var(--s2);min-height:84px;font-size:var(--fs-xs);white-space:normal;flex-direction:column}.wallet-actions .btn .icon{width:24px;height:24px}.asset-pill{align-items:center;gap:var(--s2);height:32px;padding:0 var(--s3) 0 var(--s2);white-space:nowrap;font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text);background:var(--inset);box-shadow:inset 0 0 0 2px var(--border);display:inline-flex}.asset-pill .icon{color:var(--silver)}.asset-pill small{font-size:var(--fs-2xs);color:var(--muted)}.profile-card{align-items:center;gap:var(--s3);padding:var(--s4);display:flex}.profile-card-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.profile-name{font-family:var(--font-display);font-size:var(--fs-ds);letter-spacing:var(--track);text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-handle{font-size:var(--fs-md);color:var(--accent-2)}.profile-since{font-size:var(--fs-sm);color:var(--muted)}.nickname-form{align-items:flex-end;gap:var(--s2);flex-wrap:wrap;display:flex}.nickname-form .field{flex:180px;min-width:0}.nickname-form .btn{flex:auto}.promo-box{gap:var(--s2);display:flex}.promo-box .input{font-family:var(--font-display);font-size:var(--fs-ds);letter-spacing:.1em;text-transform:uppercase;flex:120px}.ref-card{gap:var(--s3);padding:var(--s4);flex-direction:column;display:flex}.ref-stats{gap:var(--s2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ref-stats .stat{padding:var(--s2)}.ref-stats .stat-value{font-size:var(--fs-ds)}.screen-center{justify-content:center;align-items:center;gap:var(--s4);min-height:100%;padding:var(--s7) var(--s4);text-align:center;flex-direction:column;display:flex}.screen-center .logo{width:64px;height:64px;color:var(--accent);filter:drop-shadow(4px 4px 0 var(--ink))}.screen-center h2{font-size:var(--fs-md)}.screen-center p{font-size:var(--fs-sm);color:var(--muted);max-width:32ch}@media (width>=720px){.tabbar,.cta-dock{max-width:var(--app-max);margin:0 auto}.game-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;display:grid;overflow:visible}.game-card{flex:auto}.hero-balance-value{font-size:var(--fs-3xl)}}@media (width>=1080px){.game-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.admin{min-height:var(--admin-h,100vh);grid-template-columns:1fr;display:grid;position:relative}.sidebar{z-index:var(--z-sidebar);width:var(--sidebar-w);height:var(--admin-h,100vh);background:var(--surface);box-shadow:2px 0 0 var(--ink), 4px 0 0 var(--border);transition:transform var(--t-med) steps(4);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.is-open{transform:none}.sidebar-brand{align-items:center;gap:var(--s2);min-height:var(--header-h);padding:0 var(--s4);border-bottom:2px solid var(--line);flex:none;display:flex}.sidebar-brand .logo{width:28px;height:28px;color:var(--accent);filter:drop-shadow(2px 2px 0 var(--ink))}.sidebar-nav{padding:var(--s3) var(--s2);flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.sidebar-link{align-items:center;gap:var(--s3);min-height:40px;padding:0 var(--s3);text-align:left;width:100%;color:var(--muted);font-size:var(--fs-md);transition:color var(--t-fast), background-color var(--t-fast);border:0;border-left:4px solid #0000;font-weight:600;display:flex}.sidebar-link .icon{color:var(--border-strong);transition:color var(--t-fast)}.sidebar-link:hover{color:var(--text);background:var(--elevated)}.sidebar-link:hover .icon{color:var(--accent-2)}.sidebar-link.is-active{color:var(--text);background:var(--elevated);border-left-color:var(--accent)}.sidebar-link.is-active .icon{color:var(--accent)}.sidebar-link .badge{margin-left:auto}.sidebar-footer{gap:var(--s2);padding:var(--s3);border-top:2px solid var(--line);flex-direction:column;flex:none;display:flex}.sidebar-admin{align-items:center;gap:var(--s2);min-width:0;display:flex}.sidebar-admin b{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-admin small{font-size:var(--fs-sm);color:var(--muted);display:block}.sidebar-toggle{flex:none}.admin-main{flex-direction:column;min-width:0;display:flex}.admin-topbar{z-index:var(--z-sticky);align-items:center;gap:var(--s3);min-height:var(--header-h);padding:var(--s2) var(--s4);background:var(--bg);box-shadow:0 2px 0 var(--line);display:flex;position:sticky;top:0}.admin-title{flex-direction:column;gap:3px;min-width:0;display:flex}.admin-title .overline{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.admin-title h1{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-actions{align-items:center;gap:var(--s2);margin-left:auto;display:flex}.admin-content{width:100%;max-width:var(--admin-max);padding:var(--s4);gap:var(--s5);flex-direction:column;margin:0 auto;display:flex}.section-head{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.section-head h2{font-size:var(--fs-ds)}.section-head .spacer{flex:1}.login{min-height:var(--admin-h,100vh);padding:var(--s4);place-items:center;display:grid;position:relative;overflow:hidden}.login:before{content:"";pointer-events:none;background:linear-gradient(#0000 0 55%,#e8294f0d 55% 66%,#e8294f1a 66% 77%,#e8294f2b 77% 88%,#e8294f42 88%);position:absolute;inset:0}.login:after{content:"";pointer-events:none;opacity:.35;background-image:conic-gradient(var(--accent-deep) 25%, transparent 0 50%, var(--accent-deep) 0 75%, transparent 0);background-size:8px 8px;height:45%;position:absolute;bottom:0;left:0;right:0;-webkit-mask:linear-gradient(#0000,#000);mask:linear-gradient(#0000,#000)}.login .pixel-frame{z-index:1;gap:var(--s4);width:100%;max-width:400px;padding:var(--s6) var(--s5);flex-direction:column;display:flex;position:relative}.login .logo{width:56px;height:56px;color:var(--accent);filter:drop-shadow(4px 4px 0 var(--ink));margin:0 auto}.login-title{text-align:center;font-size:var(--fs-md)}.login-foot{text-align:center;font-size:var(--fs-sm);color:var(--muted)}.metric-grid{gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.metric{gap:2px var(--s3);padding:var(--s3) var(--s4);background:var(--surface) padding-box;border:4px solid #0000;border-image:var(--frame-card) 2 stretch;box-shadow:var(--shadow-px);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid;position:relative}.metric-icon{width:36px;height:36px;color:var(--accent-2);background:var(--inset);box-shadow:inset 0 0 0 2px var(--border);grid-row:1/span 3;place-items:center;display:grid}.metric-label{font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.metric-value{font-family:var(--font-display);font-size:var(--fs-md);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.2}.metric-delta{font-size:var(--fs-sm);font-weight:600}.metric-good{background-color:var(--win-tint);border-image-source:var(--frame-win)}.metric-good .metric-icon{color:var(--win)}.metric-bad{background-color:var(--lose-tint);border-image-source:var(--frame-lose)}.metric-bad .metric-icon{color:var(--lose)}.chart-card{gap:var(--s3);padding:var(--s4);flex-direction:column;display:flex}.chart{width:100%;position:relative;overflow:hidden}.chart svg{width:100%;height:auto;aspect-ratio:var(--ratio,640 / 240);shape-rendering:crispedges;display:block}.chart-grid-line{stroke:var(--line);stroke-width:2px;stroke-dasharray:2 4}.chart-axis-label{fill:var(--muted);font-family:var(--font-body);font-size:11px;font-weight:600}.chart-line{fill:none;stroke:var(--accent-2);stroke-width:2px}.chart-area{fill:var(--accent);fill-opacity:.18}.chart-bar{fill:var(--win)}.chart-bar.is-neg{fill:var(--lose)}.chart-dot{fill:var(--text);stroke:var(--ink);stroke-width:2px}.chart-tooltip{z-index:1;pointer-events:none;padding:var(--s1) var(--s2);white-space:nowrap;font-family:var(--font-display);font-size:var(--fs-2xs);color:var(--text);background:var(--ink);box-shadow:0 0 0 2px var(--border-strong);line-height:1.6;position:absolute;transform:translate(-50%,calc(-100% - 10px))}.chart-tooltip:after{content:"";background:var(--ink);width:6px;height:6px;box-shadow:2px 2px 0 var(--border-strong);clip-path:polygon(0 0,100% 0,100% 34%,67% 34%,67% 67%,34% 67%,34% 100%,0 100%);margin-left:-3px;position:absolute;bottom:-6px;left:50%}.chart-legend{gap:var(--s3) var(--s4);flex-wrap:wrap;display:flex}.legend-item{align-items:center;gap:var(--s2);font-size:var(--fs-sm);color:var(--muted);display:flex}.legend-swatch{background:var(--accent-2);width:10px;height:10px;box-shadow:0 0 0 2px var(--ink);flex:none}.toolbar{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.toolbar h2,.toolbar h3{margin-right:auto}.toolbar .input,.toolbar .input-group{max-width:360px;min-height:40px;font-size:var(--fs-md);flex:200px}.toolbar .input-group .input{min-height:32px}.filters{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.filters .select{width:auto;min-height:36px;font-size:var(--fs-md)}.form-grid{gap:var(--s4);grid-template-columns:minmax(0,1fr);display:grid}.form-grid .span-2{grid-column:1/-1}.fieldset{gap:var(--s3);min-width:0;min-inline-size:0;padding:var(--s4);flex-direction:column;margin:0;display:flex}.fieldset>legend{float:left;width:100%;margin-bottom:var(--s1);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-2);padding:0}.switch-row{justify-content:space-between;align-items:center;gap:var(--s3);padding:var(--s3) 0;border-bottom:2px solid var(--line);display:flex}.switch-row:last-child{border-bottom:0}.switch-row-text{flex-direction:column;gap:2px;min-width:0;display:flex}.switch-row-text b{font-size:var(--fs-md)}.switch-row-text span{font-size:var(--fs-sm);color:var(--muted)}.secret-field{gap:var(--s2);display:flex}.secret-field .input{letter-spacing:.08em;flex:1 1 0}.form-actions{z-index:var(--z-sticky);align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);margin:0 calc(-1 * var(--s4)) calc(-1 * var(--s4));background:var(--surface);box-shadow:0 -2px 0 var(--ink), 0 -4px 0 var(--border);flex-wrap:wrap;display:flex;position:sticky;bottom:0}.form-status{min-width:0;font-size:var(--fs-sm);color:var(--muted);flex:auto;margin-right:auto}.rule-builder{flex-direction:column;display:flex}.rule-group{gap:var(--s2);padding:var(--s3);background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-inset) 2 stretch;flex-direction:column;display:flex;position:relative}.rule-group>.rule-group{margin-left:var(--s4)}.rule-group-head{align-items:center;gap:var(--s2);display:flex}.rule-group-head span{font-size:var(--fs-sm);color:var(--muted)}.rule-group-kind{height:24px;padding:0 var(--s2);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.1em;color:var(--on-accent);background:var(--accent-fill);box-shadow:inset 0 -2px 0 var(--accent-deep);align-items:center;display:inline-flex}.rule-group-kind.is-any{color:var(--win-ink);background:var(--info);box-shadow:inset 0 -2px #6c7bd6}.rule-add{align-self:flex-start}.rule-node{gap:var(--s2);padding:var(--s3);flex-direction:column;display:flex}.rule-node-head{align-items:center;gap:var(--s2);display:flex}.rule-node-head .select{min-height:36px;font-size:var(--fs-md);flex:1 1 0}.rule-node-body{gap:var(--s2);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.rule-node-body .input,.rule-node-body .select{min-height:36px;font-size:var(--fs-md)}.rule-connector{width:4px;height:var(--s4);margin-left:var(--s6);background:repeating-linear-gradient(180deg, var(--accent) 0 4px, transparent 4px 8px)}.rule-preview{padding:var(--s3);tab-size:2;white-space:pre;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--win);background:var(--ink);box-shadow:inset 0 0 0 2px var(--line);margin:0;line-height:1.5;overflow:auto}.analysis{gap:var(--s3);padding:var(--s4);flex-direction:column;display:flex}.analysis-row{gap:var(--s1) var(--s3);font-size:var(--fs-sm);grid-template-columns:1fr auto;align-items:center;display:grid}.analysis-row span{color:var(--muted)}.analysis-row b{font-family:var(--font-display);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.analysis-row .gauge{grid-column:1/-1}.gauge{--value:0%;background:var(--inset);height:12px;box-shadow:inset 0 0 0 2px var(--line);position:relative}.gauge-bar{height:100%;width:var(--value);background:var(--accent-2);-webkit-mask:repeating-linear-gradient(90deg,#000 0 4px,#0000 4px 6px);mask:repeating-linear-gradient(90deg,#000 0 4px,#0000 4px 6px)}.gauge.is-good .gauge-bar{background:var(--win)}.gauge.is-bad .gauge-bar{background:var(--lose)}.analysis-verdict{align-items:center;gap:var(--s2);padding:var(--s3);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:var(--track);text-transform:uppercase;color:var(--text-dim);background:var(--inset);box-shadow:inset 0 0 0 2px var(--border);display:flex}.analysis-verdict.is-good{color:var(--win);background:var(--win-tint);box-shadow:inset 0 0 0 2px var(--win)}.analysis-verdict.is-bad{color:var(--lose);background:var(--lose-tint);box-shadow:inset 0 0 0 2px var(--lose)}.slot-grid{gap:var(--s2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.slot-cell{padding:var(--s2) var(--s1);color:var(--muted);cursor:pointer;background:var(--inset) padding-box;border:4px solid #0000;border-image:var(--frame-ghost) 2 stretch;flex-direction:column;align-items:center;gap:4px;display:flex;position:relative}.slot-cell:hover{background-color:var(--surface)}.slot-number{font-family:var(--font-display);font-size:var(--fs-2xs);color:var(--faint)}.slot-symbols{gap:2px;display:flex}.slot-symbols b{background:var(--surface);width:18px;height:18px;box-shadow:inset 0 0 0 2px var(--line);place-items:center;font-size:12px;line-height:1;display:grid}.slot-coef{font-family:var(--font-display);font-size:var(--fs-2xs);color:var(--muted)}.slot-cell.is-configured{color:var(--text);background-color:var(--surface);border-image-source:var(--frame-card)}.slot-cell.is-configured .slot-coef{color:var(--win)}.slot-cell.is-configured .slot-symbols b{background:var(--elevated)}.slot-cell.is-selected{background-color:var(--elevated);border-image-source:var(--frame-accent);box-shadow:var(--shadow-px)}.slot-cell.is-jackpot{background-color:var(--elevated);border-image-source:var(--frame-rose)}.slot-cell.is-jackpot .slot-coef{color:var(--accent-2)}.slot-cell.is-jackpot:after{content:"★";color:var(--accent-2);font-size:10px;line-height:1;position:absolute;top:2px;right:5px}.game-editor{gap:var(--s4);grid-template-columns:1fr;align-items:start;display:grid}.game-list{flex-direction:column;display:flex}.game-row{align-items:center;gap:var(--s3);width:100%;padding:var(--s2) var(--s3);text-align:left;min-height:56px;color:var(--text-dim);border-bottom:2px solid var(--line);display:flex}.game-row:last-child{border-bottom:0}.game-row:hover{background:var(--elevated);color:var(--text)}.game-row.is-active{background:var(--elevated);color:var(--text);box-shadow:inset 4px 0 0 var(--accent)}.game-row-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.game-row-body b{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.game-row-body span{font-size:var(--fs-sm);color:var(--muted)}.editor-pane{gap:var(--s4);flex-direction:column;min-width:0;display:flex}.mode-block{gap:var(--s3);padding:var(--s4);flex-direction:column;display:flex}.mode-block-head{align-items:center;gap:var(--s2);flex-wrap:wrap;display:flex}.mode-block-head h3{flex:1;min-width:0}.outcome-row{gap:var(--s2);padding:var(--s2) 0;border-bottom:2px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}.outcome-row:last-child{border-bottom:0}.outcome-row .input,.outcome-row .select,.outcome-row .input-group{min-height:36px;font-size:var(--fs-md)}.outcome-row .input-group .input{min-height:28px}.outcome-row-name{grid-column:1/-1;font-weight:700}.outcome-row .table-actions{grid-column:1/-1}.audit-log{flex-direction:column;display:flex}.audit-row{gap:2px var(--s3);padding:var(--s2) var(--s3);font-size:var(--fs-sm);border-bottom:2px solid var(--line);grid-template-columns:1fr;display:grid}.audit-row:last-child{border-bottom:0}.audit-time{color:var(--muted);font-variant-numeric:tabular-nums}.audit-admin{color:var(--accent-2);font-weight:700}.audit-action{color:var(--text)}.audit-entity{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-dot{vertical-align:middle;background:var(--faint);width:8px;height:8px;box-shadow:0 0 0 2px var(--ink);margin-right:6px;display:inline-block}.status-dot.is-online{background:var(--win)}.status-dot.is-off{background:var(--lose-deep)}.withdrawal-row{gap:var(--s2);padding:var(--s3);grid-template-columns:1fr;display:grid}.withdrawal-user{flex-direction:column;gap:2px;min-width:0;display:flex}.withdrawal-user b{font-size:var(--fs-md)}.withdrawal-user span{font-size:var(--fs-sm);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.withdrawal-actions{gap:var(--s2);display:flex}.withdrawal-row>.badge,.withdrawal-row>.amount{justify-self:start}.user-detail{gap:var(--s4);flex-direction:column;display:flex}.user-detail-head{align-items:center;gap:var(--s3);flex-wrap:wrap;display:flex}.user-detail-head .profile-card-body{flex:200px}.user-detail-actions{gap:var(--s2);flex-wrap:wrap;display:flex}.user-detail-balances{gap:var(--s2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=720px){.metric-value{font-size:var(--fs-lg)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.slot-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.audit-row{grid-template-columns:130px 150px 1fr 1fr;align-items:center}.withdrawal-row{grid-template-columns:minmax(0,1.4fr) auto auto auto;align-items:center}.outcome-row{grid-template-columns:minmax(0,1fr) 110px 110px auto}.outcome-row-name,.outcome-row .table-actions{grid-column:auto}.user-detail-balances{grid-template-columns:repeat(4,minmax(0,1fr))}.user-detail-actions{margin-left:auto}.admin-content{padding:var(--s5) var(--s6)}}@media (width>=1080px){.admin{grid-template-columns:var(--sidebar-w) minmax(0, 1fr)}.sidebar{position:sticky;top:0;transform:none}.sidebar-toggle{display:none}.admin-title h1{font-size:var(--fs-lg)}.game-editor{grid-template-columns:300px minmax(0,1fr)}.admin-content{padding:var(--s6) var(--s7)}}.logo-mark{flex:none;width:32px;height:32px}.logo-mark-lg{width:64px;height:64px}.balance-chip{align-items:center;gap:var(--s1,4px);display:inline-flex}.promo-card .promo-box{margin-top:var(--s2,8px)}.progress-bar.is-indeterminate{width:40%;animation:1.2s steps(8,end) infinite px-indeterminate}@keyframes px-indeterminate{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media (prefers-reduced-motion:reduce){.progress-bar.is-indeterminate{width:100%;animation:none}}.bet-panel-head{align-items:center;gap:var(--s3,12px);display:flex}.bet-panel-head>div{flex-direction:column;gap:2px;min-width:0;display:flex}.bet-panel-head .spacer{flex:1}.app-main{padding-bottom:calc(var(--tabbar-h,64px) + 96px + env(safe-area-inset-bottom))}.hero-balance-actions{justify-content:space-between;align-items:center;gap:var(--s3,12px);flex-wrap:wrap;display:flex}.card-title .spacer{flex:1}.profile-nick{gap:var(--s3,12px);flex-direction:column;display:flex}.promo-box{gap:var(--s2,8px);align-items:stretch;display:flex}.promo-box .input{flex:auto;min-width:0}.promo-box .btn{flex:none}.duel-note{gap:var(--s3,12px);align-items:flex-start;display:flex}.duel-note>div{flex-direction:column;gap:2px;min-width:0;display:flex}.logo-mark{color:var(--accent,#e8294f);filter:drop-shadow(2px 2px 0 var(--ink,#0b0205))}.brand-logo{object-fit:contain;width:32px;height:32px;image-rendering:pixelated;flex:none}.brand-logo-lg{width:72px;height:72px}.bet-status-head{justify-content:space-between;gap:var(--s2,8px);margin-bottom:var(--s2,8px);flex-wrap:wrap;display:flex}.dice-stage{justify-content:center;align-items:flex-end;gap:var(--s4,16px);min-height:120px;display:flex}.dice-slot{align-items:center;gap:var(--s2,8px);flex-direction:column;display:flex}.dice-face{filter:drop-shadow(3px 3px 0 var(--ink,#0b0205));transition:transform .15s steps(3,end);display:block}.dice-face.is-rolling{animation:.5s steps(4,end) infinite px-dice-tumble}@keyframes px-dice-tumble{0%{transform:rotate(0)translateY(0)}50%{transform:rotate(90deg)translateY(-6px)}to{transform:rotate(180deg)translateY(0)}}.roll-emoji{align-items:center;gap:var(--s2,8px);flex-direction:column;display:flex}.slot-reels{gap:var(--s2,8px);display:inline-flex}.slot-reels b{min-width:48px;padding:var(--s2,8px) var(--s1,4px);background:var(--inset,#1f0a10);border:2px solid var(--border,#5a2137);font-family:var(--font-display);text-align:center;color:var(--text,#f4e8e4);font-size:20px}.slot-reels b.is-bar{letter-spacing:.05em;font-size:12px}.slot-reels.is-rolling b{animation:.6s steps(2,end) infinite px-blink}.dice-caption{text-align:center;font-family:var(--font-display);font-size:var(--fs-2xs,8px);letter-spacing:.12em;text-transform:uppercase;color:var(--muted,#c19aa8);margin-bottom:var(--s2,8px);display:block}.verify-link{padding:var(--s1,4px);color:var(--muted,#c19aa8);font:inherit;font-size:var(--fs-xs,10px);cursor:pointer;background:0 0;border:0;align-self:center;align-items:center;gap:6px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:inline-flex}.verify-link:hover{color:var(--text,#f4e8e4)}.verify-link-inline{font-size:inherit;padding:0}@media (prefers-reduced-motion:reduce){.dice-face.is-rolling,.slot-reels.is-rolling b{animation:none}}.dice3d{--dice-size:96px;--rx:0deg;--ry:0deg;--rz:0deg;--view-x:-38deg;--view-y:-34deg;width:calc(var(--dice-size) * 1.5);height:calc(var(--dice-size) * 1.6);justify-content:center;align-items:center;display:flex;position:relative}.dice3d-scene{z-index:1;width:var(--dice-size);height:var(--dice-size);perspective:calc(var(--dice-size) * 5);perspective-origin:50% 30%;position:relative}.dice3d-cube{width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(var(--view-x)) rotateY(var(--view-y)) rotateX(var(--rx)) rotateY(var(--ry)) rotateZ(var(--rz));position:relative}.dice3d-face{background:linear-gradient(145deg,#fbfcff 0%,#e3e7f1 55%,#c9cfdf 100%);border:1px solid #aeb6c9;border-radius:15%;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:5%;padding:15%;display:grid;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #fffc,inset -8px -10px 16px #6e789638}.dice3d-face-2,.dice3d-face-5{background:linear-gradient(145deg,#fff 0%,#eef1f8 55%,#d7dce9 100%)}.dice3d-face i{display:block}.dice3d-face i.is-pip{background:radial-gradient(circle at 35% 32%,#4a5062,#12151d 68%);border-radius:50%;box-shadow:inset 0 1px 1px #ffffff40,0 1px #ffffff80}.dice3d-face-1 i.is-pip{background:radial-gradient(circle at 35% 32%,#ff7b7b,#c4262e 70%)}.dice3d-shadow{top:calc(50% + var(--dice-size) * .6);width:calc(var(--dice-size) * 1.35);height:calc(var(--dice-size) * .2);pointer-events:none;background:radial-gradient(#000000bf,#0000 68%);position:absolute;left:50%;transform:translate(-50%)}.dice3d.is-rolling .dice3d-cube{animation:1s linear infinite dice3d-tumble}.dice3d.is-rolling .dice3d-shadow{animation:1s ease-in-out infinite dice3d-shadow-bob}.dice3d.is-settling .dice3d-cube{animation:1.6s cubic-bezier(.22,.9,.3,1) both dice3d-settle}.dice3d.is-settling .dice3d-shadow{animation:1.6s ease-out both dice3d-shadow-land}@keyframes dice3d-tumble{0%{transform:translateY(0)rotateX(0)rotateY(0)rotate(0)}25%{transform:translateY(-24%)rotateX(150deg)rotateY(80deg)rotate(30deg)}50%{transform:translateY(0)rotateX(260deg)rotateY(190deg)rotate(-15deg)}75%{transform:translateY(-18%)rotateX(310deg)rotateY(300deg)rotate(35deg)}to{transform:translateY(0)rotateX(360deg)rotateY(360deg)rotate(0)}}@keyframes dice3d-settle{0%{transform:translateY(-80%) rotateX(calc(var(--view-x) + 540deg)) rotateY(calc(var(--view-y) + 450deg)) rotateX(var(--rx)) rotateY(var(--ry)) rotateZ(var(--rz))}55%{transform:translateY(6%) rotateX(calc(var(--view-x) + 50deg)) rotateY(calc(var(--view-y) + 35deg)) rotateX(var(--rx)) rotateY(var(--ry)) rotateZ(var(--rz))}74%{transform:translateY(-9%) rotateX(calc(var(--view-x) - 10deg)) rotateY(calc(var(--view-y) + 8deg)) rotateX(var(--rx)) rotateY(var(--ry)) rotateZ(var(--rz))}90%{transform:translateY(2%) rotateX(calc(var(--view-x) + 3deg)) rotateY(var(--view-y)) rotateX(var(--rx)) rotateY(var(--ry)) rotateZ(var(--rz))}to{transform:translateY(0) rotateX(var(--view-x)) rotateY(var(--view-y)) rotateX(var(--rx)) rotateY(var(--ry)) rotateZ(var(--rz))}}@keyframes dice3d-shadow-bob{0%,to{opacity:.6;transform:translate(-50%)scaleX(1)}50%{opacity:.3;transform:translate(-50%)scaleX(.55)}}@keyframes dice3d-shadow-land{0%{opacity:.2;transform:translate(-50%)scaleX(.4)}55%{opacity:.65;transform:translate(-50%)scaleX(1.15)}to{opacity:.6;transform:translate(-50%)scaleX(1)}}@media (prefers-reduced-motion:reduce){.dice3d .dice3d-cube,.dice3d .dice3d-shadow{animation:none!important}}.lottie-dice{margin:0 auto;display:block}.lottie-dice svg{display:block}.roll-label{text-align:center;font-family:var(--font-display);font-size:var(--fs-md,14px);color:var(--text,#f4e8e4);margin-top:var(--s2,8px);display:block}.duel-side.is-winner{box-shadow:0 0 0 2px var(--win,#5ee6a8)}.duel-side.is-winner .duel-val{color:var(--win,#5ee6a8)}.cta-inline{display:none}@media (width>=720px){.app-main .game-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media (width>=900px){.app,.tabbar,.cta-dock{max-width:1040px}.app-main.app-main--play{column-gap:var(--s5,24px);padding-bottom:calc(var(--tabbar-h,60px) + var(--s5,24px));grid-template-columns:minmax(0,1fr) 440px;align-items:start;display:grid}.app-main.app-main--play>.play-left{gap:var(--s4,16px);flex-direction:column;grid-column:1;min-width:0;display:flex}.app-main.app-main--play>.play-right{top:calc(var(--header-h,56px) + var(--s4,16px));grid-column:2;min-width:0;position:sticky}.app-main.app-main--play .cta-dock{display:none}.app-main.app-main--play .cta-inline{margin-top:var(--s4,16px);display:block}.app-main:not(.app-main--play)>*{width:100%;max-width:680px;margin-left:auto;margin-right:auto}.sheet{max-width:560px}}.game-card{flex-basis:128px;min-width:0}.game-card-name{letter-spacing:.02em;overflow-wrap:normal;word-break:keep-all;max-width:100%;font-size:9px;line-height:1.35}
