/* Neon Future: static cyan light, silver Khmer carving and responsive touch controls. */
:root{--bg:#050b17;--panel:#0b1729;--cyan:#00def8;--purple:#b069ff;--gold:#f5c76b;--mint:#3ef2c6;--muted:#8eabc7;--line:#29415f}
body{background:radial-gradient(ellipse at top,#12334b,#050b17 65%);color:#f3f7ff}button{background:linear-gradient(145deg,#162940,#091323);border-color:#304966;border-radius:11px}button:active{filter:brightness(1.15)}button:focus-visible{outline-color:#79f1ff}.shell{max-width:520px;background:radial-gradient(ellipse at 90% 0,#12324b44,transparent 35%),linear-gradient(175deg,#070f1e,#050b15);padding:14px 13px calc(82px + var(--safe));border-color:#1a2e49}.topbar{margin-bottom:12px;min-height:39px;gap:8px}.brand{font-family:Arial,system-ui,sans-serif;font-style:italic;font-weight:950;letter-spacing:-1.4px;color:#f3f8ff;text-shadow:0 2px 0 #2b455e;transform:skew(-6deg)}.topbar .brand{font-size:26px;line-height:1.15}.brand span{color:var(--cyan);text-shadow:0 2px 0 #057ca6}.brand small{display:none}.topbar .row{gap:7px}.coin-pill{min-height:36px;border-radius:18px;padding:5px 10px;background:linear-gradient(100deg,#142236,#060d19);border-color:#344b6b;font-size:13px}.coin{color:#f3f5fc}.coin:before{color:#ffc64b;content:'◉';font-size:19px;text-shadow:0 1px 0 #805013}.topbar .icon-button{min-height:38px;min-width:38px;padding:6px;background:none;border:0;color:#bdcde0}.topbar .icon-button .icon{width:25px;height:25px}.progress{height:7px;border:1px solid #304968;background:#091224}.progress i{box-shadow:none;background:linear-gradient(90deg,#0095c9,#00def8,#54ebff)}.progress.purple i{background:linear-gradient(90deg,#6432dd,#bb76ff)}.club-player{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px 9px 7px;margin-bottom:10px;text-align:left;background:linear-gradient(100deg,#07162bf5,#07162bd6),url('/assets/neon-hero.webp') center 10%/cover;border:1px solid #284d6c;border-radius:14px;position:relative;overflow:hidden;box-shadow:inset 0 1px #8fdaff0b}.club-player:after{content:'';position:absolute;right:0;top:0;width:90px;height:100%;background:linear-gradient(90deg,#0b162800,#148ad622);transform:skew(-15deg);pointer-events:none}.club-player .avatar{width:48px;height:48px;border:2px solid #00def8;box-shadow:0 0 0 3px #00def818}.club-player strong{font-size:17px;line-height:1.6;font-weight:800}.player-xp{display:flex;align-items:center;gap:7px}.player-xp small{color:#00def8;font-weight:800;white-space:nowrap;font-size:12px}.player-xp .progress{flex:1;height:7px}.player-xp>span{font-size:9px;color:#b3c7da;white-space:nowrap}.resume-match{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:10px}.feature{min-height:0;height:auto;aspect-ratio:1.08;border:1px solid #05d3ee;border-radius:16px;display:block;padding:12px;background:#072239;box-shadow:inset 0 0 0 3px #67e4ff0a,0 7px 16px #0005}.feature:before{inset:0;background:linear-gradient(0deg,#021020f5 0%,#051329c7 17%,#03102000 57%),url('/assets/neon-hero.webp') center 35%/cover no-repeat}.feature-top{display:flex;justify-content:space-between;align-items:center}.club-tag{padding:5px 7px;border:1px solid #78d4ff44;border-radius:5px;background:#051b32b5;font-size:7px;font-weight:750;letter-spacing:1px;color:#bceeff}.hero-fee{font-size:10px;background:#050d1bcc;border:1px solid #428db955;border-radius:15px;padding:3px 7px}.hero-fee .coin:before{font-size:13px}.feature-copy{position:absolute;left:12px;right:12px;bottom:12px;text-align:center}.feature h1{margin:0;font-size:clamp(29px,8.4vw,42px);font-weight:800;line-height:1.65;color:#e8faff;text-shadow:0 2px 0 #056b9b,0 0 15px #00b8f98c}.eyebrow{font:700 9px/1.5 system-ui;letter-spacing:1.6px;color:#00dafa}.feature p{font-size:9px;color:#b8d4e8;margin:5px 0 8px;line-height:1.5}.feature .hero-play{margin:0 auto;min-height:44px;height:44px;max-width:190px;width:64%;display:flex;justify-content:center;align-items:center;gap:30px;font-size:21px;border:1.5px solid #54edff;border-radius:24px;background:linear-gradient(#123c57,#04182b);box-shadow:inset 0 0 13px #00daff44,0 0 11px #00d4ff77;color:#edfdff;padding:3px 14px}.hero-play span{font:bold 32px/1 Arial;color:#00e8ff}.modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:10px 0}.mode-card{position:relative;isolation:isolate;overflow:hidden;display:block;text-align:left;height:111px;min-height:111px;padding:0;border:1px solid #bb74fb;border-radius:10px;background:#141132}.mode-card.eight{border-color:#00d9fa;background:#081c2d}.mode-card.practice{border-color:#53e6c9;background:#082b26}.mode-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:-2}.mode-card:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#040b16ed,#040b1622 65%)}.mode-card>div{position:absolute;bottom:7px;left:8px;right:5px}.mode-card strong{display:block;font:750 17px/1.3 system-ui;color:white}.mode-card small{font-size:7px;color:#bbcadb;line-height:1.8}.mode-fee{position:absolute;top:5px;right:5px;font:700 8px/1.6 system-ui;padding:1px 5px;border-radius:7px;background:#050c20a6;color:#a9f9e6}.mode-fee .coin:before{font-size:10px;margin-right:3px}.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.social-play{display:flex;align-items:center;text-align:left;gap:8px;padding:9px 10px;min-height:55px;border-color:#344a72;background:linear-gradient(120deg,#192945,#08121f);border-radius:10px;box-shadow:inset 0 1px #ffffff08}.social-play>.icon{width:28px;height:28px;color:#b5dcff}.social-play>div{min-width:0;flex:1}.social-play strong{display:block;font-size:13px}.social-play small{font-size:8px;color:#9eb4d3}.social-play>span:last-child{font:25px Arial;color:#bbd3ef}.panel,.friend,.mission-card,.history-row{background:linear-gradient(135deg,#14233c,#081425);border-color:#314b70;box-shadow:inset 0 1px #a3cfff0a}.mission-mini{padding:9px 10px;border-radius:11px;gap:10px;margin-top:9px;text-align:left;min-height:61px;border-color:#4978bc;background:linear-gradient(120deg,#162646,#081529)}.mission-emblem{display:grid;place-items:center;width:32px;height:37px;color:#a6e6ff}.mission-emblem .icon{width:30px;height:30px}.mission-mini strong{font-size:13px;line-height:1.6}.mission-inline{display:flex;align-items:center;gap:7px}.mission-inline small{font-size:8px;white-space:nowrap}.mission-inline .progress{height:5px;flex:1}.mission-inline>span{font:10px system-ui;white-space:nowrap}.mission-prize{width:36px;height:40px;display:grid;place-items:center;color:#ffca63;border:1px solid #a6bfd244;background:#0b1a2c;border-radius:7px}.mission-prize .icon{width:25px;height:25px}.club-actions{display:flex;gap:8px;margin-top:9px}.club-actions button{flex:1;font-size:10px;min-height:40px;display:flex;align-items:center;justify-content:center;gap:7px;color:#a9c1db}.club-actions .icon{width:17px;height:17px}.nav{max-width:520px;width:100%;background:linear-gradient(#081524f5,#030a14);border-color:#294966;border-radius:16px 16px 0 0;backdrop-filter:none;padding:7px 5px calc(7px + var(--safe));box-shadow:0 -7px 15px #0004}.nav button{gap:3px;font-size:8px;color:#8fa3c5}.nav button.active{color:#00e2fb;background:#03d0ec08;text-shadow:none;position:relative;border-radius:10px}.nav button.active:before{content:'';height:2px;width:22px;border-radius:2px;background:#02e3fa;position:absolute;top:-7px}.nav button.active .icon{filter:drop-shadow(0 0 4px #00d7f888)}.nav .icon{width:23px;height:23px}.primary,.gold{background:linear-gradient(115deg,#05bcd7,#006bba);color:#f0fcff;border-color:#40e1fc;box-shadow:inset 0 1px #b5faff33}.purple{background:linear-gradient(120deg,#7b3bd1,#351c74);border-color:#a075df}.mint{background:linear-gradient(120deg,#26dcb6,#087a82);color:#f0fffa;border-color:#5cffd9}.tabs{padding:4px;border:1px solid #233d5b;border-radius:13px;background:#040d1a;gap:4px}.tabs button{background:none;border:1px solid transparent;border-radius:9px;font-size:11px}.tabs button.active{background:linear-gradient(120deg,#124f76,#09314d);border-color:#15beda;box-shadow:none}.badge{background:#00cdef0e;border-color:#00cdef55;color:#67eaff;font-size:10px}.section-title h1,.shell>h1{font-size:25px;margin-top:15px}.shell>small{color:#7ca5ca;font-size:10px;letter-spacing:.4px}.friend .avatar{border-color:#41cde7;box-shadow:none}.friend .identity>small{font-size:10px}.friend-actions{gap:5px}.friend-actions button{font-size:10px;padding:8px;min-height:40px}.empty{background:#0b1933;line-height:1.9;font-size:12px}.mission-card{position:relative;padding:15px;overflow:hidden;border-radius:16px}.mission-card>.row>.icon{width:30px;height:30px;color:#36d8fb}.mission-card.done{border-color:#1ac7c7;background:linear-gradient(110deg,#103846,#0a192d)}.mission-card h3{font-size:14px}.mission-card .reward{color:#b286ff}.mission-card small{font-size:10px}.profile-head{padding:18px 12px;border:1px solid #365b7f;border-radius:17px;background:radial-gradient(ellipse at top right,#14557644,#0a1425);margin-top:15px}.profile-head h1{font-size:23px}.profile-head .avatar.big{width:70px;height:70px;border-color:#00dbf6;box-shadow:0 0 0 4px #00dbf61a}.rank-art{clip-path:polygon(50% 0,93% 20%,88% 72%,50% 100%,12% 72%,7% 20%);background:linear-gradient(135deg,#5fedff,#145e85 60%,#a987ee);color:#dcfaff;text-shadow:0 1px 2px #082131;box-shadow:none}.profile-head .rank-art{width:50px;height:58px;font-size:15px}.rank-art span{padding:5px;background:#041a3255}.profile-level{margin:14px 0}.profile-level small{font-size:9px}.profile-head .stats-grid{gap:5px}.stat{border-color:#325070;background:#08172b;padding:10px 2px}.stat strong{color:#a9eeff;font-size:21px}.stat small{font-size:8px}.achievement{background:linear-gradient(#192543,#0b1529);border-color:#324865}.achievement .icon{color:#6edbff}.achievement.locked{opacity:.45}.bonus{border-color:#525291;background:linear-gradient(120deg,#272248,#0e203b)}.bonus strong{color:#ffcf71;font-size:23px}.shop-grid{gap:9px}.product{background:radial-gradient(ellipse at 50% 25%,#13455b,#0b1428);border-color:#3f6585;border-radius:14px;padding:10px}.product.cue{background:radial-gradient(ellipse at 30% 40%,#13465a,#0e152e)}.product h3{font-size:13px}.product img.table-product{height:205px;width:100%;object-fit:contain}.product.cue img{height:115px}.product .row button{font-size:9px;padding:6px;min-height:40px}.product .coin{color:#ebedf8}.balance-card{background:radial-gradient(ellipse at top,#244664,#0a1830);border-color:#427ba3}.balance-card strong{color:#97eeff}.note{background:#0d224077;color:#a3bfd9;font-size:12px}.history-row .identity strong{font-size:13px}.history-row small{font-size:10px}.invite-card{background:linear-gradient(120deg,#232345,#0d1e35);border-color:#6a5cb0}input,textarea,select{border-color:#345170;background:#071324}.chat-box .bubble{border-color:#3e5070;background:#13253d}.chat-box .bubble.mine{background:linear-gradient(135deg,#105470,#102e56);border-color:#1b91b1}dialog{background:radial-gradient(ellipse at top,#193b5a,#0b1427 70%);border-color:#376582;border-radius:18px;box-shadow:0 20px 60px #0009}dialog::backdrop{background:#020914df;backdrop-filter:none}dialog h2{font-size:23px}dialog .choices button{border-color:#46779a;background:radial-gradient(ellipse at top,#174265,#0a192d)}dialog .choices .purple{border-color:#9171ce;background:radial-gradient(ellipse at top,#453773,#131a35)}.welcome{background:linear-gradient(#04142722,#050e1d 400px),url('/assets/neon-hero.webp') center top/auto 440px no-repeat;padding-top:max(30px,env(safe-area-inset-top))}.welcome .brand{font-size:38px;color:#effaff;margin-bottom:175px}.welcome .panel{background:#0a172bee;border-color:#3b83a3}.loading .brand{font-family:Arial,system-ui;font-size:30px}.result-modal{background:radial-gradient(ellipse at 50% 15%,#164969,#091429 65%)}.victory{color:#b7f6ff;text-shadow:0 0 25px #00daff55}.result-rewards{background:#101f3a;border-color:#396881}.upgrade-track span{border-color:#446895;background:#142646}.room-code{color:#71ecff}.game-shell{max-width:550px;gap:4px;padding:6px 8px calc(5px + var(--safe));background:radial-gradient(ellipse at 50% 0,#11294366,#040b16 60%);border-color:#1c3049}.game-shell .topbar{min-height:35px;margin:0;padding:0 3px}.game-shell .topbar .brand{font-size:23px}.game-shell .topbar button{min-height:35px;min-width:35px;padding:5px}.players-bar{min-height:59px;padding:3px 1px;border:0;gap:7px}.player-block{gap:7px;opacity:.66;background:linear-gradient(105deg,#11263d99,#0b1326);border:1px solid #284562;border-radius:12px;padding:5px 6px}.player-block.current{opacity:1;border-color:#2d8caf}.players-bar .avatar{width:38px;height:38px;border:1.5px solid #34d8ed;box-shadow:0 0 0 3px #21d9ff10}.player-block.current .avatar{box-shadow:0 0 0 3px #00dfff1a}.match-identity{min-width:0;flex:1}.player-block strong{font:750 11px/1.3 system-ui;display:block;max-width:115px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-level{display:flex;align-items:center;gap:4px;margin-top:3px}.match-level small{font:700 8px/1.3 system-ui;color:#23daf2;white-space:nowrap}.match-level .progress{height:4px;flex:1;min-width:10px;max-width:56px}.bot-skill{display:block;flex:1;height:3px;max-width:45px;background:linear-gradient(90deg,#009bc2,#7255b455);border-radius:3px}.player-block .match-count{font:8px/1.5 system-ui;color:#a3b6cf}.player-block.right .match-level{flex-direction:row-reverse}.turn-timer{display:grid;place-items:center;width:45px;height:45px;min-width:45px;border:2px solid #00d9ff;border-radius:50%;outline:3px solid #168ac333;box-shadow:inset 0 0 8px #00c7ff33,0 0 8px #00c7ff26;font:bold 14px/1 system-ui;color:#edfaff;background:#06172c;font-variant-numeric:tabular-nums}.practice-symbol{color:#2ce1ed}.game-objective{font-size:9px;min-height:19px;color:#71cfe2;line-height:1.6}.stage{contain:layout paint;isolation:isolate;overflow:hidden;min-height:0}.game-status{background:#05172bf2;color:#9dc5df;border-color:#3e7895;padding:3px 9px;font-size:8px;bottom:1px}.hand{gap:5px;min-height:55px;padding:2px 3px}.card{position:relative;border-radius:5px;height:51px;max-width:56px;padding:4px 5px;background:linear-gradient(120deg,#fff,#ecedf5);border:1px solid #ccdaeb;color:#10141f;font:700 18px/18px Arial;box-shadow:0 2px 0 #7b8da733,0 3px 6px #0005;animation:none!important;transition:none!important}.card.red{color:#cc243d}.card span:last-child{font:26px/25px Georgia;align-self:flex-end}.card-count{font-size:9px;color:#83abcc}.game-controls.cue-controls{display:grid;grid-template-columns:.95fr 1.15fr 1.15fr;gap:5px;align-items:stretch;min-height:82px;padding:0;border:0;background:none;max-width:none}.control-panel{position:relative;min-width:0;padding:7px 7px 6px;border:1px solid #253a54;border-radius:10px;background:linear-gradient(130deg,#0d1b2c,#040c19);box-shadow:inset 0 1px #739dcc0b}.control-label{font:500 8px/1.4 system-ui;color:#bdcbe1;display:flex;align-items:center;gap:3px;white-space:nowrap}.control-label .icon{width:12px;height:12px;color:#00dbfa}.energy-line{display:block;font-size:10px;color:#f0fcff}.energy-line .progress{height:10px;margin:7px 0 5px;border-color:#3f8aae}.energy-line .progress i{box-shadow:inset 0 1px #8affff88}.energy-line strong{display:block;font:750 15px/1.2 system-ui;white-space:nowrap}.energy-line strong small{font:500 10px system-ui;color:#8eafc4}.energy-line>button{display:block;min-height:19px;padding:0 3px;margin-top:4px;font-size:8px;color:#4edff1;background:none;border:0}.energy-line>small{font-size:8px;color:#80aac4}.power-wrap output{display:block;font:750 17px/1.3 system-ui;color:#f0f5ff;margin-top:2px}.cue-power{position:relative;height:14px;border:1px solid #26394d;border-radius:3px;background:#060e1c;overflow:hidden;margin:4px 0}.cue-power i{display:block;height:100%;background:linear-gradient(90deg,#00a3dc,#00f0e0);border-radius:0}.cue-power:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 2px),#07172e calc(10% - 2px),#07172e 10%)}.cue-hint{font-size:8px;line-height:1.5;white-space:nowrap;color:#7aaac6;margin:3px 0 0;text-align:left}.aim-tools{display:flex;align-items:flex-start;justify-content:space-around;padding:8px 4px;gap:3px}.aim-tool{text-align:center;flex:1}.aim-tool .control-label{justify-content:center;font-size:7px}.aim-tools button{padding:0}.spin-ball,.aim-circle{position:relative;border-radius:50%;width:40px;height:40px;min-height:40px;min-width:40px;margin:6px auto 0;display:grid;place-items:center}.spin-ball{border:2px solid #95aebd;box-shadow:0 0 0 2px #32dfff22;background:radial-gradient(circle at 30% 24%,#fff 10%,#e5eff2 55%,#78879a 100%)}.spin-ball i{position:absolute;width:7px;height:7px;left:calc(50% + var(--spin,0)*12px);top:50%;transform:translate(-50%,-50%);border-radius:50%;background:#009ce1;box-shadow:inset 0 1px #65dcff}.aim-circle{border:1px solid #32628a;background:radial-gradient(circle,#122c46,#040d1d)}.aim-circle .icon{width:27px;height:27px;color:#bddcf1}.aim-tools .nudge{position:absolute;bottom:calc(100% + 6px);right:0;background:#0c2138;border:1px solid #297b9e;border-radius:11px;padding:5px;align-items:center;z-index:20;box-shadow:0 3px 15px #0007;gap:6px}.nudge[hidden]{display:none}.cue-controls .nudge button{width:44px;height:44px;min-height:44px;flex:0 0 44px;font:25px Arial;background:#183e59;border:1px solid #417a9e}.nudge small{font:9px system-ui;color:#7ddff3}#toast{background:#0a2a42f5;border-color:#23b5d3}
@media(min-width:760px){.shell{max-width:620px;padding-left:23px;padding-right:23px}.nav{max-width:620px}.feature{aspect-ratio:1.35}.feature-copy{bottom:18px}.feature h1{font-size:42px}.feature .hero-play{max-width:230px;height:49px}.mode-card{height:151px}.mode-card strong{font-size:22px}.mode-card small{font-size:10px}.social-play{min-height:66px}.club-player{padding:11px}.game-shell{max-width:1100px}.game-shell .players-bar{max-width:620px;width:100%;margin:auto}.game-shell .stage{min-height:0}.game-shell .game-controls{max-width:440px}.game-shell .hand{max-width:430px}.game-shell .topbar{max-width:850px;width:100%;margin:auto}.game-shell .players-bar .avatar{width:43px;height:43px}.player-block strong{font-size:13px}.product.cue img{height:140px}}
@media(max-width:365px){.shell{padding-left:10px;padding-right:10px}.topbar .brand{font-size:23px}.coin-pill{font-size:11px;padding:5px 7px}.feature h1{font-size:29px}.mode-card strong{font-size:15px}.mode-card small{font-size:6px}.player-block{padding:4px;gap:4px}.players-bar .avatar{width:30px;height:30px}.turn-timer{height:40px;width:40px;min-width:40px;font-size:12px}.player-block strong{font-size:9px}.match-level small{font-size:7px}.control-panel{padding-left:5px;padding-right:5px}.spin-ball,.aim-circle{width:35px;height:35px;min-height:35px;min-width:35px}.card{height:47px}.card span:last-child{font-size:23px}}
@media(max-height:720px){.game-shell{gap:3px;padding-top:4px}.game-shell .topbar{min-height:31px}.players-bar{min-height:51px;padding:2px 0}.players-bar .avatar{width:31px;height:31px}.turn-timer{width:39px;height:39px;min-width:39px}.player-block .match-count{font-size:7px}.game-objective{min-height:16px;font-size:8px}.hand{min-height:46px;padding:1px 3px}.card{height:43px;font-size:16px;line-height:16px}.card span:last-child{font-size:21px;line-height:20px}.game-controls.cue-controls{min-height:73px}.control-panel{padding-top:5px;padding-bottom:4px}.energy-line strong{font-size:13px}.energy-line .progress{height:7px;margin:5px 0}.power-wrap output{font-size:15px}.cue-power{height:11px}.spin-ball,.aim-circle{width:35px;height:35px;min-height:35px;min-width:35px}.aim-tools{padding-top:6px}.cue-hint{font-size:7px}.game-status{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(min-width:366px){.spin-ball,.aim-circle{width:44px;height:44px;min-height:44px;min-width:44px}}

.coin:before{content:'✦';display:inline-grid;place-items:center;vertical-align:middle;font:700 11px/1 Arial;width:18px;height:18px;border:1px solid #ffdb73;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff0a4,#ecb748 45%,#9e620b);color:#fff1b3;box-shadow:inset 0 0 0 1px #b87522,1px 1px 0 #704718;text-shadow:0 1px #9c6a27}.mode-fee .coin:before,.hero-fee .coin:before{font-size:8px;width:12px;height:12px}

/* Phone account entry, matching the Neon club. */
.auth-shell{max-width:520px;padding:24px 18px calc(24px + env(safe-area-inset-bottom));margin:auto}.auth-shell>.brand{text-align:center;margin-bottom:24px}.auth-art{min-height:190px;padding:25px 22px;background:linear-gradient(90deg,rgba(4,12,27,.94),rgba(4,12,27,.25)),url('/assets/neon-hero.webp') center 42%/cover;border:1px solid #157588;border-radius:22px 22px 0 0;box-shadow:0 0 28px #08dafa17}.auth-art>span{font-size:10px;letter-spacing:2px;color:var(--cyan)}.auth-art h1{font-size:25px;line-height:1.6;margin:10px 0}.auth-art small{font-size:10px;color:#b1c4d9}.auth-panel{border-radius:0 0 22px 22px;padding:22px!important}.auth-panel h2{font-size:19px;margin:20px 0}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.auth-tabs button{min-height:46px}.auth-tabs .active{border-color:var(--cyan);color:var(--cyan);background:#073141}.auth-note,.auth-footer{font-size:12px;line-height:1.8;color:#9dadc5;margin-top:16px}.auth-footer{text-align:center}.auth-panel .bonus small{display:block;margin-top:4px}.text-button{border:0;background:transparent!important;color:#63dff6;display:block;margin:14px auto 0}.legacy-signin{font-size:12px;color:#92accc;text-align:center;display:block;margin-top:14px}.form-error{color:#ff8aa0;font-size:13px;line-height:1.7}.form-error:empty{display:none}.check-row{display:flex;align-items:center;gap:12px;line-height:1.8;margin:20px 0}.check-row input{width:22px;height:22px;flex:none}.recovery-code{font-family:monospace;word-break:break-all;height:110px;resize:none;width:100%;font-size:14px;line-height:1.8}.recovery-dialog .dialog-close[hidden]{display:none}.auth-panel input{font-size:16px;min-height:48px}.auth-panel button.primary{min-height:52px}

/* Khmer Future equipment uses static texture detail and restrained neon light. */
.shop-title{margin-top:7px}.collection-banner{position:relative;overflow:hidden;border:1px solid #2c8297;border-radius:16px;padding:17px 15px;background:radial-gradient(ellipse at 100% 0,#623da044,transparent 65%),linear-gradient(125deg,#073047,#0a1427);box-shadow:inset 0 1px #92f4ff22}.collection-banner:after{content:'✦';position:absolute;right:12px;top:17px;font-size:74px;line-height:1;color:#5eeaff0c;pointer-events:none}.collection-banner>small{font:700 9px system-ui;letter-spacing:2px;color:#67e5ef}.collection-banner h2{font-size:21px;margin:7px 0 2px;color:#e8fcff}.collection-banner p{color:#93e9fa;font:700 12px system-ui;margin:4px 0 8px}.collection-banner>span{color:#7b9aba;font:10px system-ui}.tabs button>span{padding:2px 5px;margin-left:3px;background:#184054;border-radius:5px;font:9px system-ui;color:#a1f2ff}.signature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product.signature{padding:10px;background:radial-gradient(ellipse at 50% 30%,#133547,#081324 70%);border-color:#31546b;box-shadow:inset 0 1px #b7e8ff0a}.product.signature.cue{grid-column:1/-1;background:radial-gradient(ellipse at 12% 35%,#23354b,#0b1323 80%)}.product-edition{display:flex;align-items:center;justify-content:space-between;gap:3px;padding-bottom:6px}.product-edition>span{font:700 9px system-ui;letter-spacing:1px;color:var(--item-color,#65e6ff)}.product-edition>small{font:8px system-ui;color:#7f9bb3}.equipment-showcase{width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.table-showcase{height:278px}.equipment-art{position:relative;overflow:hidden;flex-shrink:0;isolation:isolate}.equipment-art>img{position:absolute;max-width:none!important;object-fit:fill!important;margin:0!important;pointer-events:none}.equipment-art.table-art{width:min(100%,var(--art-width));margin:auto}.cue-showcase{flex-direction:column;gap:9px;padding:11px 0 8px;min-height:107px}.equipment-art.cue-art{width:100%;max-height:none}.equipment-art.equipment-grip{width:52%;align-self:flex-start;margin-left:2px;border:1px solid #41586b66;border-radius:8px;background:#07111c66}.signature-grid .product h3{font-size:13px;color:#f2f8ff;line-height:1.45}.product-material{font:9px/1.6 system-ui;color:#88aeca;margin:4px 0}.product-story{font-size:9px;line-height:1.9;color:#91a9bf;min-height:35px;margin-top:3px}.product-price{margin-top:7px;min-height:26px;display:flex;align-items:center}.product-actions{margin-top:9px!important}.product .product-actions button{min-height:44px;font-size:10px}.cue-level{white-space:nowrap;color:var(--item-color,#65e6ff);font:700 10px system-ui}.product.signature.cue .product-story{min-height:0}.legacy-collection{margin-top:22px;border:1px solid #223c52;border-radius:12px;background:#081322}.legacy-collection summary{padding:14px 12px;cursor:pointer;color:#b3c8dc;font:600 13px system-ui;min-height:44px}.legacy-collection summary>span{display:block;font:9px/1.8 system-ui;color:#7f9ab1;margin:4px 0 0 15px}.legacy-grid{padding:0 9px 10px}.shop-note{font-size:10px;color:#7b9bb4;line-height:1.9;margin:17px 3px 3px}.equipment-preview{margin:14px 0}.equipment-preview .table-showcase{height:auto}.equipment-preview .table-art{width:min(100%,260px);max-height:55dvh}.equipment-preview .cue-showcase,.cue-detail .cue-showcase{min-height:0;padding:17px 0}.equipment-preview .equipment-grip,.cue-detail .equipment-grip{width:72%;align-self:center}.equipment-legacy{object-fit:contain}.equipment-modal .equipment-legacy{max-height:55dvh;margin:auto}.equipment-preview .table-art{--art-width:260px}.cue-detail .equipment-art>img{height:auto}.product .equipment-art>img{height:auto}.equipment-preview .table-art{width:min(260px,calc(55dvh / 2))}.cue-detail .panel{margin-top:12px}@media(min-width:760px){.signature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.table-showcase{height:345px}.equipment-art.table-art{--art-width:190px!important}.equipment-preview .table-art{width:250px;--art-width:250px!important}.equipment-art.equipment-grip{width:57%}.product.signature.cue{grid-column:1/-1}.product-story{font-size:11px}.signature-grid .product h3{font-size:16px}}

.cue-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 0 8px}.cue-stats>div{border:1px solid #28566a;border-radius:8px;background:#081e2d;padding:8px 10px}.cue-stats small{font:9px/1.5 system-ui;color:#91b4c5;display:block}.cue-stats strong{font:750 18px/1.5 system-ui;color:#64ebf8;display:block}.cue-stats>span{grid-column:1/-1;font:9px/1.4 system-ui;color:#849fba}.cue-boost{font:700 8px/1.5 system-ui;color:#71e3f3;display:block;white-space:nowrap}.upgrade-comparison{margin:10px 0;display:grid;gap:8px;font-size:12px}.upgrade-comparison strong{color:#81eef5}.match-cue{display:block;font:7px/1.5 system-ui;color:#66d9ed}.cue-detail .upgrade-track span{width:54px;height:54px;font:10px/1.6 system-ui}
