:root{--ink: #16201d;--muted: #63736d;--line: #dce5df;--panel: #ffffff;--soft: #eef6f1;--mint: #13a06f;--mint-dark: #08744f;--gold: #e0a229;--rose: #c54053;--navy: #263447;--shadow: 0 18px 44px rgba(27, 42, 36, .12);--shadow-deep: 0 26px 70px rgba(17, 31, 26, .18);--shadow-soft: 0 12px 32px rgba(27, 42, 36, .08);--glass: rgba(255, 255, 255, .84);--surface: #fbfdfb;--surface-strong: #ffffff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media print{body,body[data-app=admin]{background:#fff!important}.admin-sidebar,.admin-topbar,.admin-page-intro,.report-tabs,.report-control-panel,.admin-view:not(#adminReports),.admin-pager{display:none!important}.admin-shell,.admin-main,#adminReports,.report-print-area{display:block!important;width:100%!important;min-height:0!important;padding:0!important;margin:0!important;background:#fff!important;box-shadow:none!important}#adminReports:before{content:attr(data-print-title);display:block;margin:0 0 14px;color:#111;font-size:24px;font-weight:1000}.admin-panel,.report-summary article,.report-row{break-inside:avoid;box-shadow:none!important;background:#fff!important;border-color:#cfd8d2!important}.report-summary,.report-chart-grid,.admin-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.report-section{margin-top:12px}.bar-track,.bar-track i,.pie-ring{print-color-adjust:exact;-webkit-print-color-adjust:exact}}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ink);background:linear-gradient(rgba(18,33,28,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(18,33,28,.02) 1px,transparent 1px),linear-gradient(135deg,#f7fbf8,#f2f6fb 52%,#fff8ea);background-size:32px 32px,32px 32px,auto}body[data-app=player]{background:linear-gradient(rgba(18,33,28,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(18,33,28,.022) 1px,transparent 1px),linear-gradient(160deg,#edf5f1,#f7fbf9 48%,#fff7e7);background-size:34px 34px,34px 34px,auto}body[data-app=admin]{background:linear-gradient(rgba(18,33,28,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(18,33,28,.022) 1px,transparent 1px),linear-gradient(145deg,#edf3f1,#f8fbf8 46%,#fff8e8);background-size:36px 36px,36px 36px,auto}button,input,select{font:inherit}button{border:0;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease}button:not(:disabled):active{transform:translateY(1px)}input,select,textarea{border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.phone-input-group{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:stretch;width:100%}.phone-input-group span{display:grid;place-items:center;min-height:50px;padding:0 12px;border:1px solid var(--line);border-right:0;border-radius:8px 0 0 8px;color:var(--muted);background:#f4f8f5;font-weight:1000}.phone-input-group input{border-radius:0 8px 8px 0}input:focus,select:focus,textarea:focus{border-color:#13a06fad;box-shadow:0 0 0 4px #13a06f24}.hidden{display:none!important}body.auth-active{background:#061512}.auth-landing{position:relative;min-height:100vh;min-height:100dvh;padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);overflow:hidden;color:#fff;background:radial-gradient(circle at 82% 18%,rgba(19,160,111,.34),transparent 30%),radial-gradient(circle at 16% 88%,rgba(224,162,41,.24),transparent 26%),linear-gradient(135deg,#061512,#10231d 48%,#111f1a)}.auth-hero-scene{position:absolute;inset:0;overflow:hidden;pointer-events:none}.auth-hero-scene:before{content:"";position:absolute;inset:-15% -8%;background:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(120deg,transparent 0%,#000 28%,#000 74%,transparent 100%);transform:rotate(-8deg)}.auth-hero-scene:after{content:"";position:absolute;inset:auto -12% -22%;height:42%;background:radial-gradient(ellipse at center,rgba(2,9,7,.82),transparent 68%)}.auth-board-preview{position:absolute;top:clamp(48px,9vw,104px);right:clamp(-64px,5vw,88px);width:min(44vw,450px);min-width:300px;aspect-ratio:1;display:grid;grid-template-columns:repeat(4,1fr);padding:14px;border:14px solid #5d2a12;border-radius:8px;background:#20130f;box-shadow:0 42px 90px #0000006b;transform:perspective(820px) rotateX(58deg) rotate(-24deg);transform-origin:center}.auth-board-preview span,.auth-board-preview b{display:grid;place-items:center;min-width:0;min-height:0}.auth-board-preview span:nth-child(odd),.auth-board-preview b:nth-child(2n){background:#f5ead5}.auth-board-preview span:nth-child(2n),.auth-board-preview b:nth-child(odd){background:#101312}.auth-board-preview b{color:#f7efe2;font-size:clamp(36px,6vw,70px);font-weight:900;text-shadow:0 14px 20px rgba(0,0,0,.52);transform:translateY(-16px) rotate(24deg) rotateX(-58deg)}.auth-shell{position:relative;z-index:1;width:min(1120px,100%);min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:clamp(24px,5vw,72px);align-items:center;margin:0 auto;padding:clamp(22px,5vw,56px)}.auth-copy{max-width:650px}.auth-brand{margin-bottom:clamp(36px,8vh,80px)}.auth-copy .brand-mark{background:#f5ca5f;color:#14211c}.auth-copy .brand small,.auth-copy>p{color:#d8e4de}.auth-copy h1{max-width:760px;margin:10px 0 18px;font-size:clamp(42px,7vw,82px);line-height:.98}.auth-copy>p:not(.eyebrow){max-width:560px;margin:0;font-size:clamp(16px,2vw,20px);line-height:1.7}.auth-highlights{display:flex;flex-wrap:wrap;gap:2em;margin-top:26px}.auth-highlights span{min-height:34px;display:inline-grid;place-items:center;padding:0 13px;border-radius:999px;color:#f7fbf9;background:#ffffff1f;border:1px solid rgba(255,255,255,.16);font-size:12px;font-weight:900}.auth-panel{display:grid;gap:18px;padding:22px;border-radius:8px;color:var(--ink);background:linear-gradient(180deg,#fffffff5,#f8fcf9eb);border:1px solid rgba(255,255,255,.72);box-shadow:0 28px 80px #00000047,inset 0 1px #ffffffdb;backdrop-filter:blur(16px)}.auth-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px;border-radius:8px;background:#e8eee9}.auth-tab{min-height:42px;border-radius:8px;color:var(--muted);background:transparent;font-weight:900}.auth-tab.active{color:#fff;background:#12211c;box-shadow:0 8px 18px #12211c29}.auth-form{display:grid;gap:14px}.auth-form h2{margin:4px 0 0;font-size:27px;line-height:1.1}.auth-form label{display:grid;gap:8px;color:#31423b;font-weight:900}.auth-form input{width:100%;min-height:50px;padding:0 13px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;outline:none}.auth-form input:focus{border-color:var(--mint);box-shadow:0 0 0 4px #13a06f24}.auth-form .phone-input-group input,.phone-input-group input{border-radius:0 8px 8px 0}.auth-form .auth-terms-row{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fbf9;font-weight:700;line-height:1.45}.auth-form .auth-terms-row.hidden{display:none}.auth-form .auth-terms-row input{width:18px;min-height:18px;height:18px;margin-top:2px;padding:0;accent-color:var(--mint-dark)}.auth-terms-row a{color:var(--mint-dark);font-weight:900;text-decoration:underline}.terms-page{min-height:100vh;background:#f3f7f4}.terms-header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px max(20px,calc((100vw - 980px)/2));border-bottom:1px solid var(--line);background:#fffffff5;backdrop-filter:blur(12px)}.terms-header .brand{color:inherit;text-decoration:none}.terms-header .brand>span:last-child{display:grid}.terms-shell{width:min(980px,calc(100% - 32px));margin:0 auto;padding:34px 0 60px}.terms-hero,.terms-document{padding:clamp(22px,5vw,48px);border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 14px 34px #1b2a2412}.terms-hero h1{margin:8px 0;font-size:clamp(34px,7vw,60px)}.terms-notice{margin-top:20px;padding:14px 16px;border-left:5px solid var(--gold);border-radius:8px;background:#fff8df;font-weight:900}.terms-language-nav{display:flex;gap:10px;margin:18px 0}.terms-language-nav a{padding:10px 18px;border-radius:999px;color:#fff;background:var(--mint-dark);font-weight:900;text-decoration:none}.terms-document{margin-top:18px;color:#25372f;font-size:16px;line-height:1.8}.terms-document header{padding-bottom:20px;border-bottom:1px solid var(--line)}.terms-document h2{margin:5px 0 15px;font-size:clamp(27px,5vw,40px)}.terms-document h3{margin:28px 0 8px;color:#12211c;font-size:20px}.terms-document p,.terms-document li{max-width:82ch}.terms-document li+li{margin-top:8px}.terms-footer{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding-top:24px}@media(max-width:600px){.terms-header{padding:12px 16px}.terms-download{display:none}.terms-shell{width:min(100% - 20px,980px);padding-top:14px}.terms-hero,.terms-document{padding:20px;border-radius:10px}}.auth-form p{margin:0;color:var(--muted);line-height:1.5}.auth-form .primary,.auth-form .secondary{width:100%}.admin-login{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(120deg,#0c1c17f5,#1a3930e6),repeating-linear-gradient(45deg,#12211c 0 16px,#1e3a31 16px 32px)}.login-card{width:min(100%,500px);display:grid;gap:24px;padding:30px;border-radius:8px;color:#fff;background:linear-gradient(180deg,#ffffff24,#ffffff14);border:1px solid rgba(255,255,255,.18);box-shadow:0 24px 80px #0000003d,inset 0 1px #ffffff2e;backdrop-filter:blur(12px)}.login-brand-row{display:flex;justify-content:space-between;gap:14px;align-items:center}.portal-badge,.system-pill{display:inline-grid;place-items:center;min-height:30px;padding:0 12px;border-radius:999px;font-size:12px;font-weight:1000}.portal-badge{color:#17362d;background:#f5ca5f}.login-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.login-feature-grid span{min-height:38px;display:grid;place-items:center;border-radius:8px;color:#d8e3de;background:#ffffff14;border:1px solid rgba(255,255,255,.12);font-size:12px;font-weight:900}.login-card h1{margin-bottom:10px;font-size:36px;line-height:1.05}.login-copy,.login-hint{margin-bottom:0;color:#d8e3de}.login-form{display:grid;gap:14px}.login-form label{color:#d8e3de}.app-shell{display:grid;grid-template-columns:244px 1fr;min-height:100vh}.player-shell{display:block;width:min(100%,520px);min-height:100vh;min-height:100dvh;margin:0 auto;padding-bottom:calc(88px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#ffffffd1,#f8fcf9f5),#f8fbf9;box-shadow:0 0 0 1px #12211c0f,var(--shadow-deep)}.admin-shell{display:grid;grid-template-columns:292px minmax(0,1fr);min-height:100vh;background:#eef3f1}.rail{padding:24px 18px;background:#12211c;color:#fff;display:flex;flex-direction:column;gap:28px}.admin-sidebar{position:sticky;top:0;height:100vh;padding:26px 20px;color:#fff;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(180deg,#111f1a,#1f3442);background-size:28px 28px,auto;display:flex;flex-direction:column;gap:24px;box-shadow:14px 0 34px #12211c29}.admin-nav{display:grid;gap:7px}.admin-nav-item{min-height:48px;display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:0 12px;border-radius:8px;color:#cddbd5;background:transparent;text-align:left;font-weight:900}.admin-nav-item:hover{color:#fff;background:#ffffff14}.admin-nav-item span{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;color:#d8e6df;background:#ffffff14;font-size:11px;font-weight:1000}.admin-nav-item b{font-size:14px}.admin-nav-item.active{color:#10201a;background:linear-gradient(135deg,#ffe08a,#f2c860);box-shadow:0 10px 24px #e0a22942}.admin-nav-item.active span{color:#10201a;background:#ffffff70}.admin-main{min-width:0;padding:24px}.mobile-appbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:calc(74px + env(safe-area-inset-top));padding:calc(12px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) 12px calc(14px + env(safe-area-inset-left));color:#fff;background:#12211c;box-shadow:0 10px 24px #12211c2e}.header-game-timers{display:grid;grid-template-columns:repeat(2,minmax(72px,1fr));gap:7px;margin-inline:auto}.mobile-appbar .header-game-timers .top-timer{min-width:76px;padding:7px 9px;border-radius:10px;box-shadow:0 7px 18px #0000004d,0 0 0 2px #ffd6661a}.mobile-appbar .header-game-timers .top-timer span{font-size:8px;white-space:nowrap}.mobile-appbar .header-game-timers .top-timer strong{font-size:21px}@media(max-width:620px){.mobile-appbar{gap:7px;padding-right:calc(8px + env(safe-area-inset-right));padding-left:calc(8px + env(safe-area-inset-left))}.mobile-appbar .brand{gap:0}.mobile-appbar .brand>div{display:none}.mobile-appbar .player-chip{padding:6px}.mobile-appbar .player-chip .signal,.mobile-appbar .player-chip small{display:none}.mobile-appbar .header-game-timers{grid-template-columns:repeat(2,minmax(64px,1fr));gap:5px}.mobile-appbar .header-game-timers .top-timer{min-width:64px;padding:6px}.mobile-appbar .header-game-timers .top-timer strong{font-size:18px}}.admin-summary{margin-top:auto;padding:16px;border-radius:8px;background:#ffffff17;border:1px solid rgba(255,255,255,.14)}.admin-summary span{display:block;margin-bottom:8px;color:#bdc9d6;font-size:12px;text-transform:uppercase;letter-spacing:0}.admin-summary strong{word-break:break-word}.admin-summary button{width:100%;margin-top:14px}.brand,.player-chip,.section-head,.match-bar,.inline-form{display:flex;align-items:center}.brand{gap:12px}.brand-mark{width:42px;height:42px;border-radius:8px;display:grid;place-items:center;color:#092015;background:linear-gradient(145deg,#ffe49c,var(--gold));font-weight:900;font-size:24px;box-shadow:inset 0 -7px #0000001a,0 10px 20px #e0a2292e}.brand small,.player-chip small,.stats-grid span,.balance-panel span,.match-bar span,.eyebrow{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:0}.brand small{color:#a8b8b1;display:block}.nav{display:grid;gap:8px}.bottom-nav{position:fixed;left:50%;bottom:0;z-index:6;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;width:min(100%,520px);padding:8px calc(10px + env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) calc(10px + env(safe-area-inset-left));background:#ffffffeb;border-top:1px solid var(--line);box-shadow:0 -16px 40px #12211c1f;backdrop-filter:blur(16px);transform:translate(-50%)}.player-bottom-nav{grid-template-columns:repeat(5,1fr)}.leaderboard-hero{padding:28px 22px;border-radius:20px;color:#fff;background:linear-gradient(135deg,#14241f,#137d5b);box-shadow:0 18px 42px #137d5b38}.leaderboard-hero h2{margin:5px 0 8px;font-size:clamp(25px,6vw,38px)}.leaderboard-hero p,.leaderboard-hero small{color:#d5eee5}.tournament-countdown{display:block;margin:20px 0 8px;font-size:clamp(27px,8vw,46px);letter-spacing:2px}.leaderboard-card{margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.leaderboard-list{display:grid;gap:9px;margin-top:14px}.leaderboard-row{display:grid;grid-template-columns:34px 42px minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:13px;border-radius:12px;background:var(--soft)}.leaderboard-row.is-me{outline:2px solid var(--mint);background:#effcf7}.leaderboard-row.is-me .leaderboard-player{font-weight:900}.leaderboard-player em{margin-left:5px;color:var(--green);font-size:10px;font-style:normal;text-transform:uppercase}.rank-movement{font-size:12px;font-weight:900;text-align:center}.rank-up{color:#138a54}.rank-down{color:#d63737}.rank-same{color:var(--muted)}.leaderboard-separator{padding:12px;color:var(--muted);font-size:22px;font-weight:900;letter-spacing:8px;text-align:center}.leaderboard-rank{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-weight:900;background:#fff}.leaderboard-row:nth-child(1) .leaderboard-rank{background:#ffd85c}.leaderboard-row:nth-child(2) .leaderboard-rank{background:#dce4e8}.leaderboard-row:nth-child(3) .leaderboard-rank{background:#dca06b}.leaderboard-player strong,.leaderboard-player small{display:block;overflow-wrap:anywhere}.leaderboard-player small,.leaderboard-stat span{color:var(--muted);font-size:11px}.leaderboard-stat{text-align:right}.leaderboard-stat b,.leaderboard-stat span{display:block}.leaderboard-empty{padding:28px 12px;color:var(--muted);text-align:center}.nav-item{display:grid;grid-template-columns:34px 1fr;align-items:center;height:46px;padding:0 12px;border-radius:8px;color:#dce9e3;background:transparent;text-align:left}.nav-item span{font-size:22px}.nav-item.active{background:#234036;color:#fff}.bottom-nav .nav-item{grid-template-columns:1fr;place-items:center;height:58px;padding:5px 4px;color:var(--muted);background:transparent;text-align:center}.bottom-nav .nav-item span{font-size:24px;line-height:1}.bottom-nav .nav-item b{font-size:11px}.bottom-nav .nav-item.active{color:#fff;background:linear-gradient(135deg,var(--mint),var(--mint-dark));box-shadow:0 10px 22px #13a06f3d}.main-panel{padding:28px;overflow:hidden}.player-shell .main-panel{padding:16px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.player-shell .topbar{display:block;margin-bottom:14px}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(28px,4vw,44px)}.player-shell h1{font-size:28px}.player-chip{gap:10px;min-width:214px;justify-content:flex-end;padding:10px 12px;background:#ffffffb8;border:1px solid var(--line);border-radius:8px}.mobile-appbar .player-chip{min-width:0;max-width:190px;padding:7px 8px;color:#fff;background:#ffffff17;border-color:#ffffff29}.mobile-appbar .player-chip small{color:#b9c8c1}.mobile-appbar .player-chip strong{display:block;max-width:128px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signal{width:12px;height:12px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px #13a06f1f}.view{display:none}.view.active{display:block}.admin-view{display:none}.admin-view.active{display:block}.hero{min-height:300px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:stretch;padding:32px;border-radius:8px;color:#fff;background:linear-gradient(105deg,#0c221af5,#10543dd6),radial-gradient(circle at 80% 25%,rgba(224,162,41,.45),transparent 32%),repeating-linear-gradient(45deg,#17362d 0 14px,#1f473c 14px 28px);box-shadow:var(--shadow-deep)}.player-shell .hero{min-height:0;grid-template-columns:1fr;gap:16px;padding:20px}.player-shell .game-hero{position:relative;overflow:hidden;padding:22px;background:linear-gradient(135deg,#08241cfa,#146749e6),radial-gradient(circle at 88% 8%,rgba(255,216,103,.9),transparent 24%),radial-gradient(circle at 12% 88%,rgba(216,78,94,.65),transparent 30%),repeating-linear-gradient(45deg,#10251f 0 12px,#183b31 12px 24px)}.game-hero:after{content:"XO";position:absolute;right:-14px;top:8px;color:#ffffff14;font-size:112px;font-weight:1000;line-height:1}.hero h2{max-width:680px;margin-bottom:12px;font-size:clamp(34px,5vw,64px);line-height:.98}.player-shell .hero h2{font-size:36px;line-height:1.02}.hero p{max-width:580px;color:#d8e9df}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.friend-home-button{display:grid;min-height:48px;min-width:148px;padding:8px 16px;border:1px solid rgba(255,234,163,.7);border-radius:8px;color:#17221d;background:linear-gradient(135deg,#ffe28a,#f7b733);box-shadow:0 12px 24px #f7b73338,inset 0 -3px #764b0029;text-align:left}.friend-home-button span{font-size:10px;font-weight:1000;line-height:1;text-transform:uppercase}.friend-home-button strong{font-size:15px;line-height:1.1}.live-ticket{align-self:center;padding:24px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff1a;backdrop-filter:blur(12px)}.player-shell .live-ticket{position:relative;z-index:1;padding:16px;background:#ffffff24}.live-ticket strong{display:block;margin:10px 0 18px;font-size:30px}dl,dd{margin:0}.live-ticket div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid rgba(255,255,255,.18)}.live-ticket .home-leaderboard-list{display:grid;padding:0}.live-ticket .home-tournament-time{display:flex;align-items:center;gap:12px}.home-top-three-label{display:block;margin:-10px 0 10px;color:#ffffffbf}.home-tournament-time span{color:#ffffffc2;font-size:12px}.home-tournament-time b{color:#fff1a8;font-size:13px;white-space:nowrap}.live-ticket .home-leaderboard-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:9px;align-items:center}.home-leaderboard-rank{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;color:#17352b;background:#ffd85c;font-weight:900}.home-leaderboard-row>span:last-child,.home-leaderboard-list p{margin:0;color:#fffc;font-size:12px}.live-ticket .home-leaderboard-more{width:100%;margin-top:12px;padding:10px 14px;border:1px solid rgba(255,255,255,.32);border-radius:8px;color:#17352b;background:#fff;font-weight:900;cursor:pointer}.live-ticket .home-leaderboard-more:hover{background:#eafff5}.home-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 2px}.home-stats article{min-width:0;padding:12px;border-radius:8px;color:#fff;background:linear-gradient(145deg,#263447,#17241f);box-shadow:0 12px 26px #12211c29}.home-stats span,.game-copy span{display:block;color:#ffffffb8;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:0}.home-stats strong{display:block;margin-top:6px;overflow:hidden;color:#fff;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.home-cash-in{width:100%;min-height:34px;margin-top:10px;border:1px solid rgba(255,226,111,.5);border-radius:8px;color:#17241f;background:linear-gradient(135deg,#ffe98a,#f5c84b);font-size:12px;font-weight:950;box-shadow:0 7px 16px #00000038}.home-cash-in:hover{filter:brightness(1.06);transform:translateY(-1px)}.primary,.secondary,.danger{min-height:46px;padding:0 18px;border-radius:8px;font-weight:800}.primary:disabled,.secondary:disabled,.danger:disabled{cursor:not-allowed;opacity:.58;filter:grayscale(.2)}.primary{color:#fff;background:linear-gradient(135deg,var(--mint),var(--mint-dark));box-shadow:0 10px 22px #13a06f33}.primary:hover{box-shadow:0 14px 28px #13a06f47;transform:translateY(-1px)}.secondary{color:var(--ink);background:linear-gradient(180deg,#fff,#f7faf8);border:1px solid var(--line);box-shadow:0 8px 18px #1b2a240f}.secondary:hover{border-color:#13a06f57;box-shadow:0 12px 24px #1b2a2417;transform:translateY(-1px)}.danger{color:#fff;background:linear-gradient(135deg,#d94f63,var(--rose));box-shadow:0 10px 22px #c540532e}.stats-grid,.game-cards,.wallet-grid,.admin-layout{display:grid;gap:16px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:22px 0}.stats-grid article,.game-card,.balance-panel,.ledger-panel,.admin-panel,.match-card{border:1px solid rgba(220,229,223,.9);border-radius:8px;background:linear-gradient(180deg,#fffffff2,#f8fcf9e0);box-shadow:var(--shadow-soft);backdrop-filter:blur(10px)}.stats-grid article{position:relative;overflow:hidden;padding:18px}.stats-grid article:after,.admin-panel:after,.game-card:after,.profile-edit-card:after,.profile-grid article:after{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.88),transparent);pointer-events:none}.stats-grid strong{display:block;margin-top:8px;font-size:28px}.section-head{justify-content:space-between;gap:16px;margin:22px 0 12px}.section-head.compact{margin:0 0 16px}.segmented{display:flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.segmented button{min-height:38px;padding:0 14px;background:transparent;font-weight:800}.segmented .selected{color:#fff;background:var(--navy)}.game-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.player-shell .game-cards{grid-template-columns:1fr}.game-card{position:relative;overflow:hidden;display:grid;grid-template-columns:76px 1fr auto;gap:16px;align-items:center;padding:18px}.game-card:hover,.admin-panel:hover,.profile-grid article:hover,.history-card:hover,.ledger-row:hover{border-color:#13a06f42;box-shadow:0 16px 38px #1b2a241c}.friend-page{display:grid;gap:14px}.friend-game-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.friend-game-picker button,.friend-room-card{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:left;box-shadow:var(--shadow-soft)}.friend-game-picker button{flex-direction:column;align-items:flex-start;color:var(--ink)}.friend-game-picker button:hover{border-color:var(--mint)}.friend-game-picker span,.friend-room-card span{color:var(--muted);font-size:12px}.friend-join-preview{display:grid;gap:10px}.friend-room-card div{display:grid;gap:5px}.friend-room-card .primary{min-width:110px}@media(max-width:420px){.friend-game-picker{grid-template-columns:1fr}}.friend-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,auto);gap:16px;align-items:center;padding:20px;border-radius:8px;color:#fff;background:linear-gradient(135deg,#0c332df7,#12825feb),radial-gradient(circle at 90% 12%,rgba(255,219,115,.5),transparent 30%);box-shadow:var(--shadow-soft)}.friend-hero h2{margin:4px 0 8px;font-size:clamp(28px,5vw,46px);line-height:1}.friend-hero p:not(.eyebrow){max-width:520px;margin:0;color:#ffffffc7}.friend-code-card{display:grid;gap:6px;padding:14px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff1f}.friend-code-card span{color:#ffffffb8;font-size:12px;font-weight:900;text-transform:uppercase}.friend-code-card strong{color:#fff;font-size:20px}.friend-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:#fff;box-shadow:var(--shadow-soft)}.friend-mode-tab{min-height:44px;border-radius:8px;color:var(--muted);background:transparent;font-weight:1000}.friend-mode-tab.active{color:#fff;background:linear-gradient(135deg,var(--mint),var(--mint-dark))}.friend-match-panel{display:none;position:relative;overflow:hidden;grid-template-columns:1fr;gap:16px;align-items:stretch;margin:0 0 16px;padding:18px;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:linear-gradient(135deg,#fffffff5,#f0f8f4eb);box-shadow:var(--shadow-soft)}.friend-match-panel.active{display:grid}.friend-match-panel h3{margin:4px 0 6px}.friend-match-panel p:last-child{margin:0;color:var(--muted);font-size:14px;line-height:1.45}.friend-join-form{display:grid;grid-template-columns:1fr;gap:12px;align-items:stretch}.friend-join-form label{min-width:0;display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:900}.friend-join-form button{width:100%;min-height:46px}.friend-join-preview{display:grid;gap:8px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#0f172a8a}.friend-join-preview div{display:flex;align-items:center;justify-content:space-between;gap:12px}.friend-join-preview span{color:var(--muted);font-size:12px;font-weight:800}.friend-join-preview strong{text-align:right;color:var(--text);font-size:13px}.player-shell .game-card{grid-template-columns:64px 1fr;padding:14px}.player-shell .featured-game{position:relative;overflow:hidden;grid-template-columns:96px 1fr;min-height:176px;color:#fff;border:0}.xo-card{background:linear-gradient(135deg,#12211cf5,#13a06fdb),repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 1px,transparent 1px 34px)}.dama-card{background:linear-gradient(135deg,#263447f7,#e0a229d1),repeating-linear-gradient(45deg,rgba(255,255,255,.08) 0 12px,transparent 12px 24px)}.tankegna-card{background:linear-gradient(135deg,#12211cf5,#964e1ae6),repeating-linear-gradient(45deg,rgba(255,255,255,.08) 0 12px,transparent 12px 24px)}.chess-card{background:linear-gradient(135deg,#050708fa,#24272af5),repeating-linear-gradient(45deg,rgba(255,255,255,.14) 0 14px,transparent 14px 28px)}.game-art{width:96px;height:112px;display:grid;place-items:center;border-radius:8px;background:#ffffff21;border:1px solid rgba(255,255,255,.16)}.xo-art{grid-template-columns:repeat(2,1fr);gap:6px;padding:10px}.xo-art span{display:grid;place-items:center;width:100%;aspect-ratio:1;border-radius:8px;color:#12211c;background:#fff;font-size:24px;font-weight:1000}.dama-art{grid-template-columns:repeat(2,1fr);gap:10px;padding:16px}.dama-art span{position:relative;width:100%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 50% 50%,#26322e 0 42%,transparent 43%),repeating-conic-gradient(from 6deg,#0f1715 0deg 9deg,#34413d 9deg 18deg);box-shadow:inset 0 -8px #00000038,inset 0 6px #ffffff24,0 8px 14px #00000038}.dama-art span:nth-child(2),.dama-art span:nth-child(3){background:radial-gradient(circle at 50% 50%,#d84e5e 0 42%,transparent 43%),repeating-conic-gradient(from 6deg,#992c3a 0deg 9deg,#f07a86 9deg 18deg)}.tankegna-art span:after{content:"\265b";position:absolute;inset:24%;display:grid;place-items:center;border-radius:50%;color:#ffd66a;background:#ffffff29;font-size:17px;line-height:1}.chess-art{grid-template-columns:repeat(2,1fr);gap:4px;padding:12px;background:linear-gradient(145deg,#160904,#6f2b0e 12%,#080909 13% 87%,#5b220d 88%,#120704);border:5px solid #180903;box-shadow:inset 0 0 0 2px #ffffff1f,inset 0 0 0 5px #00000080,0 12px 18px #00000042}.chess-art span{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:1;color:#f4ead4;background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.72),transparent 28%),#f3debd;padding-bottom:8%;font-size:29px;line-height:1;border-radius:0;filter:drop-shadow(0 5px 3px rgba(0,0,0,.34));text-shadow:0 1px 0 #7c7568,0 3px 5px rgba(0,0,0,.4)}.chess-art span:before{content:"";position:absolute;left:50%;bottom:13%;width:58%;height:18%;border-radius:50%;background:radial-gradient(circle at 32% 18%,#fff 0 17%,transparent 18%),linear-gradient(180deg,#fff7df,#d1b98e 58%,#7f6a4e);box-shadow:inset 0 2px 2px #ffffff52,inset 0 -4px 4px #00000047,0 4px 3px #00000047;transform:translate(-50%)}.chess-art span:nth-child(2),.chess-art span:nth-child(4){color:#111a2a;background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.08),transparent 28%),#07090a;text-shadow:0 1px 0 rgba(255,255,255,.28),0 4px 5px rgba(0,0,0,.42)}.chess-art span:nth-child(2):before,.chess-art span:nth-child(4):before{background:radial-gradient(circle at 32% 18%,rgba(230,240,255,.58) 0 14%,transparent 15%),linear-gradient(180deg,#46546b,#142033 55%,#04060a);box-shadow:inset 0 2px 2px #ffffff29,inset 0 -4px 4px #00000080,0 4px 3px #00000057}.game-copy h3 small{color:#ffe18a;font-size:14px;font-weight:900}.active-game-count{display:flex;flex-flow:row nowrap;align-items:center;gap:2ch;width:max-content;margin-top:0;padding:0;color:#fff;background:transparent;border:0;box-shadow:none;font-size:12px;font-weight:1000;line-height:1.2;white-space:nowrap;text-transform:none}.active-game-count:before{content:none}.online-status-dot{display:block;flex:0 0 12px;width:12px;height:12px;border-radius:50%;background:var(--mint);border:0;box-shadow:0 0 0 5px #13a06f1f}.game-copy .online-status-text{display:inline;color:#fff;font:inherit;line-height:22px;text-transform:none;letter-spacing:0;white-space:nowrap}.active-game-count-list{display:flex;flex-direction:column;align-items:flex-start;gap:7px;width:100%;margin:14px auto 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.24)}.active-game-count-list .active-game-count{margin-top:0}.match-stake-choices{display:grid;gap:10px;margin-top:18px}.match-stake-choice{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:10px 16px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;text-align:left}.match-stake-choice:hover{border-color:var(--mint);box-shadow:0 10px 24px #13a06f24}.match-stake-choice strong{font-size:18px}.match-stake-choice span{color:var(--muted);font-size:13px;font-weight:800}body[data-cork-brand=coca-cola] .dama-art span,body[data-cork-brand=coca-cola] .piece.black{background:radial-gradient(circle at 50% 50%,#f7f2e8 0 40%,transparent 41%),radial-gradient(circle at 50% 56%,rgba(110,5,4,.28) 0 44%,transparent 45%),repeating-conic-gradient(from 3deg,#7a0807 0deg 5deg,#e41d16 5deg 10deg,#fff4ea 10deg 15deg)}body[data-cork-brand=coca-cola] .dama-art span:nth-child(2),body[data-cork-brand=coca-cola] .dama-art span:nth-child(3),body[data-cork-brand=coca-cola] .piece.red{background:radial-gradient(circle at 50% 50%,#e21c16 0 40%,transparent 41%),radial-gradient(circle at 50% 56%,rgba(255,255,255,.32) 0 44%,transparent 45%),repeating-conic-gradient(from 3deg,#fff 0deg 5deg,#d71913 5deg 10deg,#860706 10deg 15deg)}body[data-cork-brand=pepsi] .dama-art span,body[data-cork-brand=pepsi] .piece.black{background:radial-gradient(circle at 50% 50%,#f8fbff 0 40%,transparent 41%),radial-gradient(circle at 50% 56%,rgba(0,57,166,.25) 0 44%,transparent 45%),repeating-conic-gradient(from 3deg,#004b9b 0deg 5deg,#fff 5deg 10deg,#d71920 10deg 15deg)}body[data-cork-brand=pepsi] .dama-art span:nth-child(2),body[data-cork-brand=pepsi] .dama-art span:nth-child(3),body[data-cork-brand=pepsi] .piece.red{background:radial-gradient(circle at 50% 50%,#063d8f 0 40%,transparent 41%),radial-gradient(circle at 50% 56%,rgba(255,255,255,.3) 0 44%,transparent 45%),repeating-conic-gradient(from 3deg,#e4252b 0deg 5deg,#fff 5deg 10deg,#004b9b 10deg 15deg)}body[data-red-cork-brand=coca-cola] .piece.red,body[data-black-cork-brand=coca-cola] .piece.black{overflow:visible;background:url(./assets/coca-cork-generated.png) center / contain no-repeat;box-shadow:0 9px 12px #00000052;filter:drop-shadow(0 2px 2px rgba(0,0,0,.18))}body[data-red-cork-brand=coca-cola] .piece.red:before,body[data-black-cork-brand=coca-cola] .piece.black:before{display:none}body[data-red-cork-brand=pepsi] .piece.red,body[data-black-cork-brand=pepsi] .piece.black{overflow:visible;background:url(./assets/pepsi-cork-generated.png) center / contain no-repeat;box-shadow:0 9px 12px #00000052;filter:drop-shadow(0 2px 2px rgba(0,0,0,.18))}body[data-red-cork-brand=pepsi] .piece.red:before,body[data-black-cork-brand=pepsi] .piece.black:before{display:none}body[data-red-cork-brand=classic] .piece.red{background:radial-gradient(circle at 50% 50%,#f8f6f0 0 40%,transparent 41%),radial-gradient(circle at 50% 57%,rgba(128,42,34,.32) 0 44%,transparent 45%),repeating-conic-gradient(from 3deg,#d0cac1 0deg 5deg,#fff 5deg 10deg,#ede9e1 10deg 15deg)}body[data-black-cork-brand=classic] .piece.black{background:radial-gradient(circle at 50% 50%,#171918 0 40%,transparent 41%),radial-gradient(circle at 50% 57%,rgba(135,35,32,.24) 0 44%,transparent 45%),repeating-conic-gradient(from 3deg,#050707 0deg 5deg,#2a2f2c 5deg 10deg,#101312 10deg 15deg)}.game-copy{position:relative;z-index:1;min-width:0}.game-copy h3{margin:4px 0 6px;font-size:30px}.game-copy p{margin-bottom:0;color:#ffffffd1}.player-shell .game-card button{grid-column:1 / -1;position:relative;z-index:1;background:#fff;color:#12211c}.game-icon{width:76px;height:76px;display:grid;place-items:center;border-radius:8px;color:#fff;font-weight:900;font-size:26px}.xo-icon{background:var(--mint)}.dama-icon{background:var(--gold);color:#2b210b}.match-bar{position:relative;overflow:hidden;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:14px;margin-bottom:16px;border-radius:8px;color:#fff;background:linear-gradient(135deg,#0f2927f5,#177669f0),radial-gradient(circle at 92% 12%,rgba(255,214,102,.55),transparent 28%);border:1px solid rgba(255,255,255,.14);box-shadow:0 14px 28px #0b373433}.match-bar:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 0 46%,rgba(255,255,255,.08) 46% 48%,transparent 48% 100%),linear-gradient(0deg,transparent 0 46%,rgba(255,255,255,.08) 46% 48%,transparent 48% 100%);opacity:.42}.match-bar>*{position:relative;z-index:1}.match-bar span{color:#ffffffb8}.match-bar strong{display:block;color:#fff;font-size:21px;line-height:1.1}.match-start-notice{display:block;min-height:18px;margin-top:6px;color:#ffe98a;font-size:12px;font-weight:800;line-height:1.35}.match-bar .secondary{min-width:118px;color:#12372f;background:linear-gradient(180deg,#fff,#dff8ef);border:0;box-shadow:inset 0 -3px #115d4e29,0 8px 16px #0000002e}.board-wrap{display:grid;grid-template-columns:minmax(280px,560px) minmax(220px,320px);gap:20px;align-items:start}.player-shell .board-wrap{grid-template-columns:1fr;gap:12px}.xo-board,.dama-board,.chess-board{position:relative;width:min(100%,560px);aspect-ratio:1;display:grid;border:3px solid transparent;border-radius:8px;overflow:hidden;box-shadow:var(--shadow);transition:border-color .18s ease,box-shadow .18s ease,filter .18s ease}.xo-board.my-turn-board,.dama-board.my-turn-board,.chess-board.my-turn-board{border-color:#f5ca5f;box-shadow:0 0 0 4px #f5ca5f57,0 0 28px #f5ca5fb8,0 12px 34px #13a06f47;animation:boardTurnGlow 1.45s ease-in-out 2}.my-turn-board-wrap .match-card{border-color:#f5ca5f6b}@keyframes boardTurnGlow{0%,to{box-shadow:0 0 0 4px #f5ca5f40,0 0 22px #f5ca5f8f,0 12px 34px #13a06f38}50%{box-shadow:0 0 0 7px #f5ca5f57,0 0 38px #f5ca5fd1,0 16px 42px #13a06f52}}.player-shell .xo-board,.player-shell .dama-board,.player-shell .chess-board{width:100%}.captured-panel{display:grid;gap:10px;margin:16px 0;padding:12px;border-radius:8px;background:linear-gradient(180deg,#f8fbf9,#eef6f1);border:1px solid var(--line)}.captured-head,.captured-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.captured-head span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.captured-head b{min-width:34px;padding:5px 8px;border-radius:999px;color:#fff;background:var(--navy);text-align:center}.captured-row{min-height:46px;padding:8px;border-radius:8px;background:#fff;border:1px solid rgba(220,229,223,.8)}.captured-row>div:first-child{display:flex;align-items:center;gap:8px;min-width:74px}.captured-dot,.captured-piece{display:inline-block;border-radius:50%;box-shadow:inset 0 -3px 8px #00000038,0 2px 5px #12211c29}.captured-dot{width:18px;height:18px}.captured-stack{flex:1;min-width:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.captured-piece{width:16px;height:16px}.captured-dot.red,.captured-piece.red{background:linear-gradient(145deg,#f7c5b8,#b8293d 62%,#7b1425)}.captured-dot.black,.captured-piece.black{background:linear-gradient(145deg,#5b6672,#101820 62%,#05080a)}body[data-red-cork-brand=coca-cola] .captured-dot.red,body[data-red-cork-brand=coca-cola] .captured-piece.red,body[data-black-cork-brand=coca-cola] .captured-dot.black,body[data-black-cork-brand=coca-cola] .captured-piece.black{background:url(./assets/coca-cork-generated.png) center / contain no-repeat;box-shadow:inset 0 0 0 1px #ffffff47,0 2px 5px #12211c29}body[data-red-cork-brand=pepsi] .captured-dot.red,body[data-red-cork-brand=pepsi] .captured-piece.red,body[data-black-cork-brand=pepsi] .captured-dot.black,body[data-black-cork-brand=pepsi] .captured-piece.black{background:url(./assets/pepsi-cork-generated.png) center / contain no-repeat;box-shadow:inset 0 0 0 1px #ffffff52,0 2px 5px #12211c29}.captured-row>b{min-width:24px;color:var(--mint-dark);text-align:right}.xo-board{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,minmax(0,1fr));gap:clamp(6px,1.8vw,12px);padding:0;background:#fff;border-radius:0;box-shadow:0 18px 34px #0f564f38}.xo-cell{position:relative;z-index:1;display:grid;place-items:center;width:100%;height:100%;aspect-ratio:1;min-width:0;min-height:0;border-radius:0;color:transparent;background:#20a79b;font-family:Arial,Helvetica,sans-serif;font-size:clamp(74px,22vw,150px);font-weight:1000;line-height:1;letter-spacing:0;text-transform:uppercase;text-shadow:none;transition:background .16s ease,transform .16s ease}.xo-cell:hover{background:#24b6a9}.xo-cell.mark-x{color:#164f4b}.xo-cell.mark-o{color:#fff}.xo-cell.win{background:#18beb0;box-shadow:inset 0 0 0 5px #ffffff6b}.xo-cell.final-move{z-index:2;box-shadow:inset 0 0 0 6px #f5ca5f,inset 0 0 24px #f5ca5f94}.xo-winning-line{position:absolute;z-index:4;display:block;height:clamp(8px,2.2vw,14px);width:78%;left:11%;border:2px solid rgba(255,255,255,.88);border-radius:999px;background:#f5c84b;box-shadow:0 2px 9px #232f2a8c;pointer-events:none;transform-origin:center;animation:xoWinningLineIn .42s cubic-bezier(.2,.9,.25,1) both}.xo-winning-line.row-1{top:16.666%;transform:translateY(-50%)}.xo-winning-line.row-2{top:50%;transform:translateY(-50%)}.xo-winning-line.row-3{top:83.333%;transform:translateY(-50%)}.xo-winning-line.col-1,.xo-winning-line.col-2,.xo-winning-line.col-3{top:11%;width:clamp(8px,2.2vw,14px);height:78%;transform:translate(-50%)}.xo-winning-line.col-1{left:16.666%}.xo-winning-line.col-2{left:50%}.xo-winning-line.col-3{left:83.333%}.xo-winning-line.diagonal-down,.xo-winning-line.diagonal-up{top:50%;left:-4%;width:108%}.xo-winning-line.diagonal-down{transform:translateY(-50%) rotate(45deg)}.xo-winning-line.diagonal-up{transform:translateY(-50%) rotate(-45deg)}@keyframes xoWinningLineIn{0%{opacity:0;scale:0 1}to{opacity:1;scale:1 1}}.dama-board{grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,minmax(0,1fr));gap:2px;padding:6px;background:linear-gradient(90deg,rgba(55,28,17,.9) 0 2px,transparent 2px),linear-gradient(0deg,rgba(55,28,17,.9) 0 2px,transparent 2px),#2f1b12;border:10px solid #5b351f;box-shadow:inset 0 0 0 4px #d8a75e,inset 0 0 0 8px #2b160e,var(--shadow)}.chess-board{position:relative;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));gap:0;padding:clamp(12px,3.2vw,20px);overflow:visible;border:clamp(10px,2.8vw,18px) solid #070808;border-radius:4px;transform-style:preserve-3d;background:linear-gradient(145deg,#050607,#25282a 48%,#090a0b);box-shadow:inset 0 0 0 2px #4b4f51,inset 0 0 0 7px #111315,inset 0 0 0 10px #ffffff14,0 18px 28px #00000038}.chess-square{position:relative;display:grid;place-items:center;min-width:0;min-height:0;aspect-ratio:1;font-family:Georgia,Times New Roman,serif;transform-style:preserve-3d;box-shadow:inset 0 0 0 1px #00000014,inset 0 -2px #0000001a}.chess-square:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(145deg,rgba(255,255,255,.14),transparent 40%,rgba(0,0,0,.14));transform:translateZ(2px)}.chess-square.light{background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.72),transparent 28%),linear-gradient(135deg,rgba(222,176,113,.18),transparent 45%),#f3debd}.chess-square.dark{background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.08),transparent 28%),linear-gradient(135deg,rgba(60,71,79,.28),transparent 42%),#07090a}.chess-square.selected{box-shadow:inset 0 0 0 4px #e0a229,inset 0 0 18px #e0a2295c}.chess-square.target:after{content:"";position:absolute;width:34%;aspect-ratio:1;border-radius:50%;background:#e0a22985;box-shadow:0 0 0 5px #e0a2292e;pointer-events:none}.chess-square.target:has(.chess-piece):after{width:82%;border:4px solid rgba(224,162,41,.82);background:transparent}.chess-square.in-check{background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.26),transparent 42%),#c54053}.chess-square.opponent-last-from,.square.opponent-last-from{box-shadow:inset 0 0 0 4px #69b9ff,inset 0 0 24px #379cf47a;animation:opponentMoveGlow 1.25s ease-in-out 3}.chess-square.opponent-last-to,.square.opponent-last-to{box-shadow:inset 0 0 0 5px #ffe26f,inset 0 0 28px #ffd23e9e;animation:opponentMoveGlow 1.25s ease-in-out 3}@keyframes opponentMoveGlow{0%,to{filter:brightness(1)}50%{filter:brightness(1.28)}}.chess-piece{position:relative;z-index:1;display:grid;place-items:center;width:100%;height:100%;padding-bottom:13%;font-size:clamp(30px,11.2vw,64px);line-height:1;isolation:isolate;transform:translateZ(22px) perspective(140px) rotateX(11deg) translateY(-8%);filter:drop-shadow(0 15px 7px rgba(0,0,0,.5));transition:transform .16s ease,filter .16s ease}.chess-glyph{position:relative;z-index:4;display:grid;place-items:center;transform:translateZ(14px);opacity:.08;mix-blend-mode:normal}.chess-shape{position:absolute;left:50%;pointer-events:none;transform:translate(-50%)}.chess-shadow{z-index:-2;bottom:1%;width:90%;height:20%;border-radius:50%;background:#00000075;filter:blur(4px)}.chess-base{z-index:1;bottom:5%;width:82%;height:30%;border-radius:50%;box-shadow:inset 0 6px 6px #ffffff5c,inset 0 -10px 9px #00000080,0 9px 8px #00000057}.chess-body{z-index:2;bottom:25%;width:56%;height:38%;border-radius:50% 50% 40% 40%;box-shadow:inset 10px 0 9px #ffffff3d,inset -10px 0 12px #0000007a,0 7px 6px #0000004d}.chess-head{z-index:3;bottom:57%;width:40%;height:32%;border-radius:50%;box-shadow:inset 8px 6px 8px #ffffff6b,inset -9px -10px 10px #0000007a,0 7px 5px #0000004d}.chess-piece.white .chess-base,.chess-piece.white .chess-body,.chess-piece.white .chess-head{background:linear-gradient(105deg,transparent 0 28%,rgba(255,255,255,.48) 29% 36%,transparent 37% 100%),radial-gradient(circle at 30% 18%,#fff 0 16%,transparent 17%),radial-gradient(circle at 64% 20%,rgba(255,255,255,.58),transparent 18%),linear-gradient(135deg,#fff9e7,#dcc497 50%,#8a7352 78%,#5f4d36)}.chess-piece.black .chess-base,.chess-piece.black .chess-body,.chess-piece.black .chess-head{background:linear-gradient(105deg,transparent 0 28%,rgba(230,242,255,.24) 29% 36%,transparent 37% 100%),radial-gradient(circle at 30% 18%,rgba(235,244,255,.62) 0 14%,transparent 15%),radial-gradient(circle at 64% 20%,rgba(128,154,196,.34),transparent 18%),linear-gradient(135deg,#51647f,#18263e 48%,#060a12 78%,#010203)}.chess-square:hover .chess-piece,.chess-square.selected .chess-piece{transform:translateZ(30px) perspective(140px) rotateX(8deg) translateY(-12%);filter:drop-shadow(0 19px 9px rgba(0,0,0,.58))}.chess-piece:before,.chess-piece:after{content:"";position:absolute;left:50%;z-index:-1;pointer-events:none;transform:translate(-50%)}.chess-piece:before{bottom:10%;width:56%;height:22%;border-radius:50%;box-shadow:inset 0 3px 3px #ffffff47,inset 0 -5px 6px #00000057,0 5px 4px #0000003d}.chess-piece:after{bottom:5%;width:76%;height:17%;border-radius:50%;box-shadow:inset 0 2px 3px #fff3,inset 0 -5px 5px #0006,0 8px 7px #0000004d}.chess-piece.white{color:#f4ead4;text-shadow:-2px -2px 0 rgba(255,255,255,.72),1px -1px 0 #fff9e9,0 1px 0 #c2b7a2,1px 3px 0 #8f806a,2px 5px 0 rgba(108,93,70,.52),0 9px 10px rgba(0,0,0,.52)}.chess-piece.white:before{background:radial-gradient(circle at 32% 18%,#fff 0 17%,transparent 18%),radial-gradient(circle at 58% 20%,rgba(255,255,255,.62),transparent 18%),linear-gradient(180deg,#fff7df,#d1b98e 58%,#7f6a4e)}.chess-piece.white:after{background:radial-gradient(circle at 34% 22%,rgba(255,255,255,.78),transparent 20%),linear-gradient(180deg,#fff1cf,#c7aa76 56%,#766249)}.chess-piece.black{color:#111a2a;text-shadow:-2px -2px 0 rgba(210,225,255,.2),1px -1px 0 rgba(125,147,180,.26),0 1px 0 #020304,1px 3px 0 #304059,2px 5px 0 #05070b,0 9px 11px rgba(0,0,0,.66)}.chess-piece.black:before{background:radial-gradient(circle at 32% 18%,rgba(230,240,255,.58) 0 14%,transparent 15%),radial-gradient(circle at 58% 20%,rgba(125,147,180,.28),transparent 18%),linear-gradient(180deg,#46546b,#142033 55%,#04060a)}.chess-piece.black:after{background:radial-gradient(circle at 34% 22%,rgba(220,235,255,.32),transparent 18%),linear-gradient(180deg,#3b495e,#111b2d 58%,#020306)}.chess-square.light .chess-piece.black,.chess-square.dark .chess-piece.white{filter:drop-shadow(0 10px 5px rgba(0,0,0,.48))}.chess-square .chess-piece+*,.chess-piece{will-change:transform}.chess-piece.type-pawn{font-size:clamp(26px,9.2vw,52px);padding-bottom:16%}.chess-piece.type-pawn .chess-body{bottom:27%;width:44%;height:28%;border-radius:48% 48% 38% 38%}.chess-piece.type-pawn .chess-head{bottom:54%;width:40%;height:34%}.chess-piece.type-pawn:before{bottom:12%;width:50%;height:21%}.chess-piece.type-pawn:after{width:66%;height:15%}.chess-piece.type-rook{font-size:clamp(30px,10.2vw,58px)}.chess-piece.type-rook .chess-head{bottom:56%;width:54%;height:27%;border-radius:18% 18% 42% 42%;clip-path:polygon(0 22%,14% 22%,14% 0,31% 0,31% 22%,45% 22%,45% 0,62% 0,62% 22%,78% 22%,78% 0,95% 0,95% 22%,100% 22%,100% 100%,0 100%)}.chess-piece.type-knight{font-size:clamp(32px,11vw,64px);transform:translateZ(24px) perspective(140px) rotateX(11deg) rotate(-3deg) translateY(-8%)}.chess-piece.type-knight .chess-head{bottom:50%;width:52%;height:40%;border-radius:56% 42% 42% 34%;clip-path:polygon(18% 100%,8% 58%,30% 18%,38% 0,54% 17%,82% 20%,68% 42%,90% 68%,58% 78%,48% 100%)}.chess-square:hover .chess-piece.type-knight,.chess-square.selected .chess-piece.type-knight{transform:translateZ(32px) perspective(140px) rotateX(8deg) rotate(-3deg) translateY(-12%)}.chess-piece.type-bishop{font-size:clamp(31px,10.8vw,62px)}.chess-piece.type-bishop .chess-head{bottom:55%;width:42%;height:37%;border-radius:48% 48% 44% 44%;clip-path:polygon(50% 0,78% 18%,88% 56%,66% 100%,34% 100%,12% 56%,22% 18%)}.chess-piece.type-queen,.chess-piece.type-king{font-size:clamp(34px,11.8vw,70px);padding-bottom:10%}.chess-piece.type-queen:before,.chess-piece.type-king:before{width:60%;height:23%}.chess-piece.type-queen:after,.chess-piece.type-king:after{width:80%;height:18%}.chess-piece.type-queen .chess-head{bottom:55%;width:58%;height:37%;border-radius:44% 44% 42% 42%;clip-path:polygon(0 58%,12% 18%,28% 45%,42% 8%,50% 42%,60% 8%,74% 45%,90% 18%,100% 58%,84% 100%,16% 100%)}.chess-piece.type-king .chess-head{bottom:54%;width:50%;height:41%;border-radius:42% 42% 44% 44%;clip-path:polygon(42% 0,58% 0,58% 18%,75% 18%,75% 32%,58% 32%,58% 48%,88% 66%,75% 100%,25% 100%,12% 66%,42% 48%,42% 32%,25% 32%,25% 18%,42% 18%)}.player-shell .chess-board{margin:8px 0 12px}.chess-board .chess-piece{position:absolute;left:50%;bottom:2%;z-index:2;width:88%;height:128%;padding:0;font-size:0;background-color:transparent;background-repeat:no-repeat;background-position:center bottom;background-size:contain;transform:translate(-50%) translateZ(30px);filter:drop-shadow(0 13px 6px rgba(0,0,0,.56))}.chess-board .chess-piece:before,.chess-board .chess-piece:after,.chess-board .chess-shape,.chess-board .chess-glyph{display:none}.chess-board .chess-square:hover .chess-piece,.chess-board .chess-square.selected .chess-piece{transform:translate(-50%) translateZ(38px) translateY(-5%);filter:drop-shadow(0 18px 8px rgba(0,0,0,.64))}.chess-board .chess-piece.black.type-rook{background-image:url(./assets/chess3d/black-rook.png)}.chess-board .chess-piece.black.type-knight{background-image:url(./assets/chess3d/black-knight.png)}.chess-board .chess-piece.black.type-bishop{background-image:url(./assets/chess3d/black-bishop.png)}.chess-board .chess-piece.black.type-queen{background-image:url(./assets/chess3d/black-queen.png)}.chess-board .chess-piece.black.type-king{background-image:url(./assets/chess3d/black-king.png)}.chess-board .chess-piece.black.type-pawn{background-image:url(./assets/chess3d/black-pawn.png)}.chess-board .chess-piece.white.type-rook{background-image:url(./assets/chess3d/white-rook.png)}.chess-board .chess-piece.white.type-knight{background-image:url(./assets/chess3d/white-knight.png)}.chess-board .chess-piece.white.type-bishop{background-image:url(./assets/chess3d/white-bishop.png)}.chess-board .chess-piece.white.type-queen{background-image:url(./assets/chess3d/white-queen.png)}.chess-board .chess-piece.white.type-king{background-image:url(./assets/chess3d/white-king.png)}.chess-board .chess-piece.white.type-pawn{background-image:url(./assets/chess3d/white-pawn.png)}.chess-board .chess-piece.type-pawn{bottom:4%;width:72%;height:108%;transform:translate(-50%) translateZ(28px)}.chess-board .chess-square:hover .chess-piece.type-pawn,.chess-board .chess-square.selected .chess-piece.type-pawn{transform:translate(-50%) translateZ(36px) translateY(-4%)}.chess-board[data-piece-theme=classic] .chess-piece{left:0;bottom:0;width:100%;height:100%;background-size:contain;background-position:center;background-repeat:no-repeat;transform:none;filter:none;image-rendering:auto;opacity:1;mix-blend-mode:normal}.chess-board[data-piece-theme=classic]{padding:0;overflow:hidden;border:2px solid #302e2b;border-radius:0;background:#ebecd0;box-shadow:0 10px 24px #1f2d1933;transform-style:flat}.chess-board[data-piece-theme=classic] .chess-square{box-shadow:none;transform-style:flat}.chess-board[data-piece-theme=classic] .chess-square:before{display:none}.chess-board[data-piece-theme=classic] .chess-square.light{background:#ebecd0}.chess-board[data-piece-theme=classic] .chess-square.dark{background:#739552}.chess-board[data-piece-theme=classic] .chess-square.in-check{background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.3),transparent 46%),#cf3048;box-shadow:inset 0 0 0 4px #8f1026,inset 0 0 22px #68001180;animation:chessKingDanger 1s ease-in-out infinite alternate}@keyframes chessKingDanger{0%{filter:brightness(.96)}to{filter:brightness(1.16)}}.chess-board[data-piece-theme=classic] .chess-square:hover .chess-piece,.chess-board[data-piece-theme=classic] .chess-square.selected .chess-piece{transform:none;filter:none}.chess-board[data-piece-theme=classic] .chess-piece.black,.chess-board[data-piece-theme=classic] .chess-piece.white{background-position:center}.chess-board[data-piece-theme=classic] .chess-piece.black.type-rook{background-image:url(./assets/chessoriginal/pieces-v2/black-rook.png)}.chess-board[data-piece-theme=classic] .chess-piece.black.type-knight{background-image:url(./assets/chessoriginal/pieces-v2/black-knight.png)}.chess-board[data-piece-theme=classic] .chess-piece.black.type-bishop{background-image:url(./assets/chessoriginal/pieces-v2/black-bishop.png)}.chess-board[data-piece-theme=classic] .chess-piece.black.type-queen{background-image:url(./assets/chessoriginal/pieces-v2/black-queen.png)}.chess-board[data-piece-theme=classic] .chess-piece.black.type-king{background-image:url(./assets/chessoriginal/pieces-v2/black-king.png)}.chess-board[data-piece-theme=classic] .chess-piece.black.type-pawn{background-image:url(./assets/chessoriginal/pieces-v2/black-pawn.png)}.chess-board[data-piece-theme=classic] .chess-piece.white.type-rook{background-image:url(./assets/chessoriginal/pieces-v2/white-rook.png)}.chess-board[data-piece-theme=classic] .chess-piece.white.type-knight{background-image:url(./assets/chessoriginal/pieces-v2/white-knight.png)}.chess-board[data-piece-theme=classic] .chess-piece.white.type-bishop{background-image:url(./assets/chessoriginal/pieces-v2/white-bishop.png)}.chess-board[data-piece-theme=classic] .chess-piece.white.type-queen{background-image:url(./assets/chessoriginal/pieces-v2/white-queen.png)}.chess-board[data-piece-theme=classic] .chess-piece.white.type-king{background-image:url(./assets/chessoriginal/pieces-v2/white-king.png)}.chess-board[data-piece-theme=classic] .chess-piece.white.type-pawn{background-image:url(./assets/chessoriginal/pieces-v2/white-pawn.png)}.chess-promotion-chooser{position:absolute;inset:50% auto auto 50%;z-index:30;width:min(92%,390px);padding:12px;border:2px solid rgba(255,255,255,.78);border-radius:12px;background:#181a18f5;box-shadow:0 18px 50px #0000008c;transform:translate(-50%,-50%);text-align:center}.chess-promotion-chooser strong{display:block;margin-bottom:9px;color:#fff;font-size:clamp(13px,3.4vw,17px)}.chess-promotion-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.chess-promotion-option{position:relative;aspect-ratio:1;overflow:hidden;border:2px solid #739552;border-radius:8px;background:#ebecd0;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease}.chess-promotion-option:hover,.chess-promotion-option:focus-visible{border-color:#f5ca5f;background:#fff8d5;outline:none;transform:translateY(-2px)}.chess-board .chess-promotion-option .chess-piece{left:50%;bottom:1%;width:92%;height:96%;transform:translate(-50%);filter:none}.chess-match-bar{background:linear-gradient(135deg,#12211cfa,#263447f0),radial-gradient(circle at 88% 12%,rgba(245,217,144,.62),transparent 28%)}.chess-captured{display:grid;gap:8px;margin:14px 0;padding:12px;border-radius:8px;color:var(--ink);background:#ffffffe6}.chess-captured span{color:var(--muted);font-size:11px;font-weight:1000;text-transform:uppercase}.chess-captured div{min-height:24px;font-family:Georgia,Times New Roman,serif;font-size:20px;line-height:1.2;word-break:break-word}.square{position:relative;display:grid;place-items:center;width:100%;height:100%;aspect-ratio:1;overflow:hidden;min-width:0;min-height:0}.square.light{background:linear-gradient(135deg,rgba(255,255,255,.18),transparent 36%),radial-gradient(circle at 30% 20%,rgba(255,246,195,.42),transparent 36%),linear-gradient(45deg,#c89147,#f0c875 42%,#b97937)}.square.dark{background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 34%),radial-gradient(circle at 70% 80%,rgba(47,12,8,.34),transparent 42%),#7a3328}.square.selected{outline:4px solid var(--gold);outline-offset:-4px}.square.chain-source{box-shadow:inset 0 0 0 4px var(--gold),inset 0 0 24px #e0a22966}.square.capture-required{box-shadow:inset 0 0 0 4px var(--mint),inset 0 0 22px #13a06f5c}.square.capture-required.selected,.square.chain-source{box-shadow:inset 0 0 0 4px var(--gold),inset 0 0 24px #e0a22966}.square.jump-target:after{content:"";width:42%;aspect-ratio:1;border-radius:50%;border:3px solid #fff2b8;background:#e0a2296b;box-shadow:0 0 0 5px #e0a2292e}.piece{position:relative;width:76%;aspect-ratio:1;border-radius:50%;box-shadow:inset 0 -9px #00000042,inset 0 5px #fff3,0 9px 12px #00000052}.piece:before{content:"";position:absolute;inset:13%;border-radius:50%;border:1px solid rgba(0,0,0,.12);box-shadow:inset 0 3px 4px #ffffff8c,inset 0 -4px 6px #0000001f,0 0 0 2px #ffffff29}.piece:after{content:"";position:absolute;inset:22% 12%;display:grid;place-items:center;border-radius:50%;font-size:clamp(8px,2.9vw,17px);font-weight:1000;line-height:.86;text-align:center;letter-spacing:0;white-space:pre;font-family:Georgia,Times New Roman,serif;transform:rotate(-3deg) scaleX(1.08)}.piece.red{background:radial-gradient(circle at 50% 46%,#fffdf7 0 47%,transparent 48%),radial-gradient(circle at 50% 57%,rgba(128,42,34,.2) 0 50%,transparent 51%),repeating-conic-gradient(from 3deg,#d8d2c9 0deg 5deg,#fff 5deg 10deg,#ebe6dd 10deg 15deg)}.piece.red:before{background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.95),transparent 25%),linear-gradient(145deg,#fff,#f1ece5);border-color:#aaa0965c}.piece.red:after{color:#bd2a24;text-shadow:0 1px 0 #fff,1px 1px 0 rgba(27,86,62,.28),0 0 1px rgba(157,52,45,.25)}.piece.black{background:radial-gradient(circle at 50% 46%,#141715 0 47%,transparent 48%),radial-gradient(circle at 50% 57%,rgba(255,255,255,.08) 0 50%,transparent 51%),repeating-conic-gradient(from 3deg,#030404 0deg 5deg,#2a2e2b 5deg 10deg,#0e1110 10deg 15deg)}.piece.black:before{background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.12),transparent 25%),linear-gradient(145deg,#20231f,#080a09);border-color:#ffffff24}.piece.black:after{color:#f5f2ec;text-shadow:0 1px 0 #000,1px 1px 0 rgba(176,47,42,.78)}.piece.king:after{content:"\265b";display:grid;place-items:center;inset:0;border:0;border-radius:0;color:#ffd866;background:transparent;box-shadow:none;font-weight:1000;font-size:clamp(15px,4.1vw,27px);line-height:1;transform:perspective(80px) rotateX(10deg);text-shadow:0 -1px 0 #fff7bd,1px 1px 0 #c9850d,2px 2px 0 #8f5200,3px 3px 0 #4d2a00,-1px 0 0 #6a3a00,0 0 6px rgba(255,216,102,.74),0 4px 6px rgba(0,0,0,.36)}body[data-cork-brand=coca-cola] .piece:after{content:"Coca\a Cola";display:grid;place-items:center;inset:22%;color:#fff;background:#d71913b8;font-family:Georgia,Times New Roman,serif;font-weight:1000;font-size:clamp(8px,2.8vw,16px);line-height:.86;text-shadow:0 1px 0 rgba(90,0,0,.6);white-space:pre}body[data-cork-brand=coca-cola] .piece.black:after{color:#d71913;background:#ffffffd1;text-shadow:0 1px 0 #fff}body[data-cork-brand=pepsi] .piece:after{content:"Pepsi";display:grid;place-items:center;inset:22%;color:#fff;background:linear-gradient(180deg,#d71920 0 34%,#fff 34% 52%,#004b9b 52% 100%);font-family:Arial,Helvetica,sans-serif;font-weight:1000;font-size:clamp(8px,2.8vw,16px);line-height:1;text-shadow:0 1px 0 rgba(0,0,0,.55)}body[data-cork-brand=pepsi] .piece.black:after{color:#004b9b;background:linear-gradient(180deg,#d71920 0 28%,#fff 28% 64%,#004b9b 64% 100%);text-shadow:0 1px 0 #fff}body[data-red-cork-brand=coca-cola] .piece.red:after,body[data-black-cork-brand=coca-cola] .piece.black:after{content:"";display:none;transform:none}body[data-red-cork-brand=pepsi] .piece.red:after,body[data-black-cork-brand=pepsi] .piece.black:after{content:"";display:none;transform:none}body[data-red-cork-brand=classic] .piece.red:after,body[data-black-cork-brand=classic] .piece.black:after{content:""}body[data-cork-brand=coca-cola] .piece.king:after,body[data-cork-brand=pepsi] .piece.king:after,body[data-red-cork-brand] .piece.king:after,body[data-black-cork-brand] .piece.king:after{content:"\265b";color:#ffd866;inset:0;display:grid;place-items:center;border:0;border-radius:0;background:transparent;box-shadow:none;font-family:inherit;font-style:normal;font-weight:1000;font-size:clamp(15px,4.1vw,27px);line-height:1;transform:perspective(80px) rotateX(10deg);text-shadow:0 -1px 0 #fff7bd,1px 1px 0 #c9850d,2px 2px 0 #8f5200,3px 3px 0 #4d2a00,-1px 0 0 #6a3a00,0 0 6px rgba(255,216,102,.74),0 4px 6px rgba(0,0,0,.36)}.match-card{position:relative;overflow:hidden;padding:18px;color:#fff;background:linear-gradient(145deg,#172b28,#0f5b53 66%,#178f7f),radial-gradient(circle at 84% 12%,rgba(255,214,102,.68),transparent 24%);border:1px solid rgba(255,255,255,.14);border-radius:8px;box-shadow:0 16px 28px #0d3d373d}.match-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.08) 0 1px,transparent 1px 34px),linear-gradient(0deg,rgba(255,255,255,.06) 0 1px,transparent 1px 34px);opacity:.38}.match-card>*{position:relative;z-index:1}.match-card h3{margin:0 0 8px;color:#ffffffbd;font-size:12px;font-weight:1000;letter-spacing:0;text-transform:uppercase}.match-card p{margin:0 0 14px;color:#fff;font-size:20px;font-weight:900;line-height:1.25}.match-card .danger,.match-card .secondary{width:100%;box-shadow:inset 0 -3px #0000002e,0 10px 18px #0003}.player-shell .match-card{padding:14px}.turn-timer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;padding:12px;border-radius:8px;color:#fff;background:linear-gradient(135deg,#172b28,#265249);border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 -4px #ffffff0f,0 10px 18px #0d3d372e}.turn-timer span{color:#ffffffb8;font-size:12px;font-weight:900;text-transform:uppercase}.turn-timer strong{font-size:28px;font-weight:1000;line-height:1;font-variant-numeric:tabular-nums}.top-timer{min-width:126px;margin:0;padding:10px 14px;justify-content:center;flex-direction:column;gap:2px;background:linear-gradient(180deg,#101d1a,#102d28);border-color:#ffd66638;box-shadow:inset 0 -5px #ffffff14,0 0 0 3px #ffd66614,0 8px 18px #12211c3d}.top-timer span{font-size:10px}.top-timer strong{color:#ffe98a;font-size:34px;font-weight:1000;text-shadow:0 0 18px rgba(255,214,102,.36)}.top-timer.paused{background:linear-gradient(180deg,#5d6965,#404b48);border-color:#ffffff14;box-shadow:none}.top-timer.active-turn{background:linear-gradient(180deg,#162a25,#0f4f45);box-shadow:inset 0 -5px #ffffff14,0 0 0 3px #ffd66629,0 10px 22px #0d3d3747}.opponent-timer{background:linear-gradient(180deg,#263447,#18222f);border-color:#ffffff1a}.opponent-timer strong{color:#dce8ff;text-shadow:none}.opponent-timer.active-turn{background:linear-gradient(180deg,#3d3047,#263447);box-shadow:inset 0 -5px #ffffff12,0 0 0 3px #4e6fb52e,0 10px 22px #26344738}.wallet-grid{grid-template-columns:320px 1fr}.player-shell .wallet-grid{grid-template-columns:1fr}.wallet-page{display:grid;gap:14px}.wallet-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;gap:18px;padding:22px;border-radius:8px;color:#fff;background:linear-gradient(135deg,#12211c,#146749),radial-gradient(circle at 85% 15%,rgba(224,162,41,.8),transparent 26%);box-shadow:var(--shadow-deep)}.wallet-hero span{color:#ffffffb8;font-size:12px;font-weight:900;text-transform:uppercase}.wallet-hero strong{display:block;margin:8px 0;font-size:40px;line-height:1}.wallet-hero p{margin-bottom:0;color:#ffffffc7}.wallet-mark{width:62px;height:62px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#10201a;background:var(--gold);font-size:28px;font-weight:1000;box-shadow:inset 0 -8px #0000001f}.wallet-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.wallet-legend{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.wallet-legend span{min-height:34px;display:grid;place-items:center;border-radius:8px;font-size:12px;font-weight:1000}.legend-credit{color:var(--mint-dark);background:#e4f8ee;border:1px solid rgba(19,160,111,.22)}.legend-debit{color:#a42135;background:#ffe9ed;border:1px solid rgba(197,64,83,.2)}.wallet-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;padding:5px;border:1px solid var(--line);border-radius:8px;background:#ffffffc7;box-shadow:inset 0 1px #ffffffbd}.wallet-tab{min-height:42px;padding:0 10px;border-radius:8px;color:var(--muted);background:transparent;font-weight:900}.wallet-tab.active{color:#fff;background:linear-gradient(135deg,var(--navy),#17211f);box-shadow:0 8px 18px #2634472e}.wallet-tab-panel{display:none}.wallet-tab-panel.active{display:block}.wallet-page .ledger-panel{background:#fff}.balance-panel,.ledger-panel,.admin-panel{padding:20px}.balance-panel strong{display:block;margin:8px 0 12px;font-size:42px}.ledger-list,.people-list,.room-list,.history-list{display:grid;gap:12px}.person-row,.room-row{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:8px;background:var(--soft)}.ledger-row{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) auto auto auto;gap:10px;align-items:center;padding:12px;overflow:hidden;border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdfb);border:1px solid var(--line);box-shadow:var(--shadow-soft)}.ledger-row.selected{border-color:#21966b73;background:#f4fff9;box-shadow:0 12px 28px #21966b1f}.ledger-row:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--line)}.ledger-credit:before{background:var(--mint)}.ledger-debit:before{background:var(--rose)}.ledger-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-size:20px;font-weight:1000}.ledger-credit .ledger-icon{color:var(--mint-dark);background:#dff8ec}.ledger-debit .ledger-icon{color:#9d2537;background:#ffe6eb}.ledger-copy{min-width:0;display:grid;gap:3px}.ledger-copy strong{overflow:hidden;color:var(--ink);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.ledger-copy span{overflow:hidden;color:var(--muted);font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.ledger-amount{padding:7px 9px;border-radius:999px;font-size:13px;font-weight:1000;white-space:nowrap}.ledger-credit .ledger-amount{color:var(--mint-dark);background:#e6f8ef}.ledger-debit .ledger-amount{color:#a42135;background:#ffe9ed}.ledger-empty{grid-template-columns:minmax(0,1fr) auto;color:var(--muted);background:var(--soft);box-shadow:none}.history-empty,.history-card{display:grid;gap:14px;position:relative;overflow:hidden;padding:14px;border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdfb);border:1px solid var(--line);box-shadow:var(--shadow-soft)}.history-empty{min-height:160px;place-items:center;text-align:center;color:var(--muted);background:linear-gradient(135deg,#13a06f1a,#e0a2291a),#fff}.history-empty strong{display:block;color:var(--ink);font-size:22px}.history-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--line)}.history-playing:before,.history-waiting:before{background:var(--mint)}.history-card.result-won:before{background:var(--gold)}.history-card.result-lost:before{background:var(--rose)}.history-card.result-draw:before{background:var(--navy)}.history-card-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center}.history-game-badge{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;color:#fff;background:#17362d;box-shadow:inset 0 -10px 18px #0000002e}.history-game-badge.xo{background:linear-gradient(135deg,#17362d,var(--mint-dark))}.history-game-badge.dama{background:linear-gradient(135deg,#6f2f2f,var(--gold))}.history-game-badge.dama-egregna{background:linear-gradient(135deg,#263447,var(--gold))}.history-game-badge.dama-tankegna{background:linear-gradient(135deg,#12211c,#a05a1d)}.history-game-badge span{font-size:16px;font-weight:1000}.history-title{min-width:0;display:grid;gap:3px}.history-title span{font-size:17px;font-weight:1000}.history-title small{overflow:hidden;color:var(--muted);font-size:11px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.history-result{align-self:start;padding:6px 9px;border-radius:999px;color:var(--mint-dark);background:#e9f8f1;font-size:12px;text-transform:uppercase}.result-won .history-result{color:#7a5200;background:#fff2c8}.result-lost .history-result{color:#9d2537;background:#ffe8ec}.result-draw .history-result{color:var(--navy);background:#edf1f7}.history-meta{display:flex;flex-wrap:wrap;gap:7px}.history-meta span{padding:7px 9px;border-radius:999px;color:#17362d;background:var(--soft);font-size:11px;font-weight:900}.history-detail{display:grid;gap:8px;margin:0}.history-detail div{display:flex;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid var(--line)}.history-detail dt{color:var(--muted);font-size:12px;text-transform:uppercase}.history-detail dd{max-width:58%;margin:0;text-align:right;word-break:break-word;font-weight:800}.history-card-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.history-continue{min-width:112px;height:42px}.history-complete{display:inline-grid;place-items:center;min-width:112px;min-height:42px;padding:10px 12px;border-radius:8px;color:var(--muted);background:var(--soft);font-weight:900;text-align:center}@media(max-width:420px){.history-card-head{grid-template-columns:44px minmax(0,1fr)}.history-game-badge{width:44px;height:44px}.history-result{grid-column:1 / -1;justify-self:start}.history-card-foot{grid-template-columns:1fr}.history-continue,.history-complete{width:100%}}.profile-page{display:grid;gap:14px}.profile-hero{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;align-items:center;min-height:156px;padding:18px;overflow:hidden;border-radius:8px;color:#fff;background:linear-gradient(135deg,#12211cf7,#13a06fd6),repeating-linear-gradient(45deg,#17362d 0 14px,#234036 14px 28px);box-shadow:var(--shadow-deep)}.profile-hero:after{content:"XO";position:absolute;right:18px;bottom:-10px;color:#ffffff17;font-size:88px;font-weight:1000;line-height:1}.profile-avatar{width:76px;height:76px;display:grid;place-items:center;border-radius:50%;color:#211703;background:linear-gradient(145deg,#ffe19b,var(--gold));border:4px solid rgba(255,255,255,.24);font-size:34px;font-weight:1000;box-shadow:0 12px 28px #00000038}.profile-identity{min-width:0;position:relative;z-index:1}.profile-identity span,.profile-grid span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:0}.profile-identity span{color:#bfe8d7;font-weight:900}.profile-identity h3{margin-bottom:6px;font-size:26px;line-height:1.05;word-break:break-word}.profile-identity p{margin-bottom:0;color:#d6efe4;font-weight:800;word-break:break-word}.profile-status{position:absolute;top:14px;right:14px;z-index:1;padding:6px 10px;border-radius:999px;color:#073b28;background:#d9ffef;font-size:12px;font-weight:1000}.profile-edit-card{position:relative;overflow:hidden;display:grid;gap:10px;padding:16px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdfb);box-shadow:var(--shadow-soft)}.profile-edit-card h3,.profile-edit-card .eyebrow,.profile-edit-card label{margin-bottom:0}.profile-edit-card small{color:var(--muted);font-weight:700}.profile-edit-actions{display:grid;gap:10px}.profile-edit-actions .primary,.profile-logout{width:100%}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-grid article{position:relative;overflow:hidden;padding:16px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdfb);box-shadow:var(--shadow-soft)}.profile-grid strong{display:block;margin-top:8px;font-size:22px}.profile-referral-card{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:18px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#f4fff9,#fff);box-shadow:var(--shadow-soft)}.profile-referral-copy h3{margin-bottom:8px}.profile-referral-copy>p:not(.eyebrow){color:var(--muted)}.profile-referral-copy label{margin-bottom:8px}.profile-referral-copy input{width:100%}.profile-referral-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.profile-referral-actions button{width:100%}.profile-referral-qr{display:grid;gap:8px;justify-items:center;text-align:center}.profile-referral-qr img{width:180px;height:180px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.profile-referral-qr img.loading{opacity:.45;background:linear-gradient(110deg,#eef6f1 30%,#fff,#eef6f1 66%);background-size:220% 100%;animation:referral-qr-loading 1.2s linear infinite}.profile-referral-qr small{color:var(--muted);font-weight:700}@keyframes referral-qr-loading{to{background-position-x:-220%}}@media(max-width:620px){.profile-referral-card{grid-template-columns:1fr}.profile-referral-qr{order:-1}.profile-referral-actions{grid-template-columns:1fr}}.profile-support-card{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow-soft)}.profile-support-card h3{margin-bottom:14px}.profile-support-actions{display:grid;gap:10px}.support-action{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:10px 14px;border-radius:8px;color:#fff;text-decoration:none;box-shadow:0 10px 22px #12211c24}.support-action.whatsapp{background:#128c4e}.support-action.telegram{background:#168ac0}.support-action.phone{background:#263447}.support-action span{font-size:12px;font-weight:800}.profile-support-empty{margin-bottom:0;color:var(--muted)}.admin-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-topbar{position:sticky;top:0;z-index:3;align-items:center;margin:-24px -24px 22px;padding:20px 24px;background:#f8fcf9e6;border-bottom:1px solid rgba(220,229,223,.9);box-shadow:0 12px 34px #1b2a240f;backdrop-filter:blur(16px)}.admin-topbar h1{font-size:30px}.admin-subtitle{margin:6px 0 0;color:var(--muted);font-weight:700}.admin-top-actions{display:flex;align-items:center;gap:10px}.system-pill{color:var(--mint-dark);background:#dcf7eb;border:1px solid rgba(19,160,111,.22)}.admin-page-intro{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 28px #1b2a240f}.admin-page-intro h2{margin-bottom:0;font-size:24px}.admin-stats{gap:14px;margin-bottom:16px}.stat-card,.stats-grid article{position:relative;overflow:hidden;min-height:142px;padding:18px;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:linear-gradient(180deg,#fffffff7,#f8fcf9e6);box-shadow:0 14px 34px #1b2a2417}.stat-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--mint)}.stat-card.waiting:before{background:var(--gold)}.stat-card.revenue:before{background:var(--navy)}.stat-card.games:before{background:#4e6fb5}.stat-card strong,.stats-grid article strong{display:block;margin-top:10px;color:var(--ink);font-size:34px;line-height:1}.stat-card small{display:block;margin-top:12px;color:var(--muted);font-weight:800}.admin-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.admin-panel.wide{grid-column:1 / -1}.game-catalog-panel{margin-bottom:16px}.admin-game-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-game-box{position:relative;min-width:0;display:grid;gap:14px;align-content:space-between;min-height:360px;padding:16px;overflow:hidden;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:linear-gradient(180deg,#fff,#f7fbf8);box-shadow:0 12px 28px #1b2a2414}.admin-game-box:hover{border-color:#13a06f47;box-shadow:0 18px 38px #1b2a241c;transform:translateY(-1px)}.admin-game-box:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--mint)}.admin-game-box.dama-tankegna:before{background:var(--gold)}.admin-game-box.dama-egregna:before{background:#4e6fb5}.admin-game-box.chess:before{background:#263447}.admin-game-box.selected{border-color:#13a06f80;background:linear-gradient(180deg,#f6fff9,#edf8f2);box-shadow:inset 4px 0 0 var(--mint),0 14px 32px #13a06f24}.admin-game-top{position:relative;z-index:1;display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:start}.admin-game-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;color:#fff;background:#12211c;font-size:14px;font-weight:1000}.admin-game-title{min-width:0}.admin-game-title h3{margin:0 0 6px;overflow:hidden;font-size:18px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.admin-game-title p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.game-type-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.admin-game-detail-list{display:grid;gap:8px}.admin-game-detail-list div{min-width:0;display:grid;grid-template-columns:94px minmax(0,1fr);gap:8px;align-items:center;padding:9px;border-radius:8px;background:linear-gradient(180deg,#fbfdfb,#f4f8f5);border:1px solid rgba(220,229,223,.82)}.admin-game-detail-list span{color:var(--muted);font-size:11px;font-weight:1000;text-transform:uppercase}.admin-game-detail-list b{min-width:0;overflow:hidden;color:var(--ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.admin-game-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-game-stats span{min-width:0;display:grid;gap:4px;padding:9px;border-radius:8px;background:#fff;border:1px solid rgba(220,229,223,.85)}.admin-game-stats small{overflow:hidden;color:var(--muted);font-size:11px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.admin-game-stats b{overflow:hidden;color:var(--ink);font-size:15px;text-overflow:ellipsis;white-space:nowrap}.admin-game-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-game-inline-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-game-inline-edit label{margin:0;color:var(--muted);font-size:11px;font-weight:1000;text-transform:uppercase}.admin-game-inline-edit input{min-height:40px}.admin-game-actions button{min-width:0;padding:0 10px}.catalog-settings-form{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:10px;align-items:end;margin-top:10px}.catalog-settings-form.full{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;border:1px solid rgba(220,229,223,.86);border-radius:8px;background:linear-gradient(180deg,#fff,#f7fbf8)}.catalog-settings-form label{display:grid;gap:8px;color:var(--muted);font-weight:900}.catalog-settings-form input{min-height:46px;padding:0 12px;border:1px solid var(--line);border-radius:8px}.catalog-settings-form .toggle-row{margin:0}.mini-list [data-room-id]{cursor:pointer}.mini-list [data-room-id]:hover{border-color:#13a06f70;background:#edf8f2}.admin-panel{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#fffffff5,#f8fcf9e6);box-shadow:0 14px 34px #1b2a2417;backdrop-filter:blur(10px)}.detail-list,.audit-list,.customer-list{display:grid;gap:10px}.detail-list div,.audit-row,.room-row,.person-row{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:8px;background:linear-gradient(180deg,#fbfdfb,#f4f8f5);border:1px solid rgba(220,229,223,.76)}.detail-list span,.audit-row span{color:var(--muted)}.detail-list b,.audit-row b{text-align:right}.sms-test-result{min-height:220px;margin-top:14px;padding:14px;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:#0f1b17;color:#e8fff4;overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.55}.room-row b,.person-row b{align-self:flex-start;padding:6px 9px;border-radius:999px;color:var(--mint-dark);background:#e3f8ee;font-size:12px;text-transform:uppercase}.room-row{position:relative;overflow:hidden}.customer-row{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(5,minmax(88px,.8fr));gap:10px;align-items:center;padding:12px;border-radius:8px;background:linear-gradient(180deg,#fbfdfb,#f4f8f5);border:1px solid rgba(220,229,223,.76);box-shadow:0 8px 20px #1b2a240b}.customer-row[data-customer-phone],.room-row[data-room-id]{cursor:pointer}.customer-row[data-customer-phone]:hover,.customer-row.selected,.room-row[data-room-id]:hover,.room-row.selected{border-color:#13a06f70;background:linear-gradient(180deg,#f3fff8,#edf8f2);box-shadow:inset 4px 0 0 var(--mint)}.customer-row>div{min-width:0}.customer-row span{display:block;overflow:hidden;color:var(--muted);font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.customer-row b,.customer-main strong{display:block;overflow:hidden;color:var(--ink);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.customer-main strong{font-size:16px}.customer-status{width:max-content;max-width:100%;padding:6px 9px;border-radius:999px;color:var(--mint-dark);background:#e3f8ee;font-size:12px;text-transform:uppercase}.customer-status.offline{color:#56635f;background:#e9efec}.customer-filters{display:grid;grid-template-columns:minmax(0,1fr) 220px 120px;gap:12px;margin-bottom:14px}.customer-filters label,.admin-list-controls label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.admin-list-controls{display:grid;grid-template-columns:minmax(0,1fr) 180px 120px;gap:12px;margin-bottom:14px}.finance-ledger-panel .admin-list-controls{grid-template-columns:minmax(0,1fr) 170px 150px 120px}.admin-list-controls label:last-child:nth-child(2){grid-column:auto}.admin-pager{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px;color:var(--muted);font-size:12px;font-weight:900}.admin-pager button{min-height:34px;padding:7px 12px;border-radius:8px;color:var(--ink);background:linear-gradient(180deg,#fff,#f7faf8);border:1px solid var(--line)}.admin-pager button:disabled{cursor:not-allowed;opacity:.45}.ledger-action{min-height:34px;padding:7px 12px;white-space:nowrap}.finance-shell{display:grid;gap:16px}.payment-tabs{position:sticky;top:78px;z-index:2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:8px;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:#ffffffdb;box-shadow:0 12px 28px #1b2a2414;backdrop-filter:blur(14px)}.payment-tab{min-width:0;min-height:42px;padding:0 10px;border-radius:8px;color:var(--muted);background:transparent;font-size:13px;font-weight:1000;white-space:nowrap}.payment-tab:hover{color:var(--ink);background:#f1f7f4}.payment-tab.active{color:#fff;background:linear-gradient(135deg,var(--mint),var(--mint-dark));box-shadow:0 10px 22px #13a06f33}.payment-panel{display:none;gap:16px}.payment-panel.active{display:grid}.finance-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.customer-metrics,.game-monitor-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.game-monitor-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.finance-metric-card{position:relative;min-width:0;display:grid;gap:8px;padding:18px;overflow:hidden;border:1px solid rgba(220,229,223,.84);border-radius:8px;background:linear-gradient(135deg,#fff,#f4faf7);box-shadow:0 12px 28px #1b2a2412}.finance-metric-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--mint),#ffc857)}.finance-metric-card.primary{color:#fff;border-color:#16443533;background:linear-gradient(135deg,#13261f,#1d5f49)}.finance-metric-card.primary:before{background:linear-gradient(90deg,#ffc857,#80ed99)}.finance-metric-card span,.finance-metric-card small{color:inherit;opacity:.72;font-size:12px;font-weight:900;text-transform:uppercase}.finance-metric-card strong{overflow:hidden;color:inherit;font-size:30px;font-weight:1000;text-overflow:ellipsis;white-space:nowrap}.finance-workspace{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.finance-queue-panel,.payment-detail-panel,.finance-report-card,.finance-rule-card,.finance-ledger-panel{padding:16px}.finance-queue-panel .section-head,.payment-detail-panel .section-head,.finance-report-card .section-head,.finance-ledger-panel .section-head{align-items:flex-start}.section-head p{margin:5px 0 0;color:var(--muted);font-size:12px;font-weight:700;line-height:1.35}.badge.urgent{color:#9d2537;background:#ffe6eb}.badge.credit{color:var(--mint-dark);background:#dff8ec}.badge.debit{color:#9d2537;background:#ffe6eb}.finance-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.compact-ledger{max-height:420px;overflow:auto}.compact-ledger .ledger-row{grid-template-columns:38px minmax(0,1fr) auto auto auto;align-items:center}.payment-detail{display:grid;gap:14px}.payment-customer-transactions{display:grid;gap:10px;padding:14px;border:1px solid rgba(220,229,223,.86);border-radius:8px;background:linear-gradient(180deg,#fff,#f7fbf8)}.payment-filters{display:grid;grid-template-columns:minmax(0,1fr) 180px 120px;gap:10px;margin-bottom:14px}.payment-filters label{margin:0;color:var(--muted);font-size:12px;font-weight:1000;text-transform:uppercase}.payment-adjust-panel{padding:16px}.payment-adjust-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.payment-adjust-form.compact{grid-template-columns:minmax(220px,1fr) auto;align-items:end;margin-top:14px}.payment-adjust-form label{position:relative;margin:0;color:var(--muted);font-size:12px;font-weight:1000;text-transform:uppercase}.payment-adjust-form .wide-field{grid-column:1 / -1}.payment-customer-preview{display:grid;gap:5px;padding:12px;border:1px solid rgba(220,229,223,.86);border-radius:8px;background:linear-gradient(180deg,#fbfdfb,#f4f8f5);box-shadow:0 8px 18px #1b2a240b}.payment-customer-preview.found{border-color:#13a06f57;background:linear-gradient(180deg,#f4fff9,#e9f8f1)}.payment-customer-preview.warning{border-color:#e0a22975;background:linear-gradient(180deg,#fffaf0,#fff4d8)}.payment-customer-preview span{color:var(--muted);font-size:12px;font-weight:1000;text-transform:uppercase}.payment-customer-preview strong{color:var(--ink);font-size:16px}.payment-customer-preview small{color:var(--muted);font-weight:800}.payment-autocomplete{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:8;display:none;max-height:260px;overflow:auto;padding:6px;border:1px solid rgba(220,229,223,.96);border-radius:8px;background:#fff;box-shadow:0 18px 38px #1b2a2429}.payment-autocomplete.show{display:grid;gap:5px}.payment-autocomplete button{display:grid;gap:3px;width:100%;padding:10px;border-radius:8px;color:var(--ink);background:#f7faf8;text-align:left}.payment-autocomplete button:hover{background:#e9f8f1}.payment-autocomplete span{overflow:hidden;font-size:13px;font-weight:1000;text-overflow:ellipsis;white-space:nowrap}.payment-autocomplete small,.payment-autocomplete-empty{color:var(--muted);font-size:12px;font-weight:800}.payment-autocomplete-empty{padding:10px}.finance-rule-list{display:grid;gap:10px}.finance-rule-list div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid rgba(220,229,223,.76);border-radius:8px;background:linear-gradient(180deg,#fbfdfb,#f4f8f5);box-shadow:0 8px 18px #1b2a240b}.finance-rule-list span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.finance-rule-list b{min-width:0;overflow:hidden;color:var(--ink);text-align:right;text-overflow:ellipsis;white-space:nowrap}.payment-note{display:grid;gap:5px;padding:12px;border:1px solid rgba(220,229,223,.76);border-radius:8px;background:linear-gradient(180deg,#fbfdfb,#f4f8f5);box-shadow:0 8px 18px #1b2a240b}.payment-note span{color:var(--muted);font-size:12px;font-weight:800}.payment-note strong{color:var(--ink);line-height:1.4}.payment-detail-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.customer-detail-panel{margin-top:0}.customer-detail{display:grid;gap:16px}.customer-edit-card{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.8fr);gap:18px;padding:18px;border:1px solid rgba(28,122,84,.2);border-radius:12px;background:linear-gradient(135deg,#f4fbf7,#fff)}.customer-edit-card h4,.customer-edit-card p{margin:0}.customer-edit-card small{display:block;margin-top:6px;color:var(--muted);line-height:1.45}.customer-edit-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.customer-edit-form label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:900}.customer-edit-form .customer-edit-wide{grid-column:span 2}.customer-edit-form textarea{min-height:82px;resize:vertical}.customer-edit-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:10px}.customer-delete-note{grid-column:1 / -1;color:#9b3d4d;font-size:12px;font-weight:800}.account-notice-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:#0c1612c7;backdrop-filter:blur(7px)}.account-notice-card{width:min(480px,100%);display:grid;justify-items:center;gap:14px;padding:30px;border-radius:20px;background:#fff;color:var(--ink);text-align:center;box-shadow:0 24px 80px #0000004d}.account-notice-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#fff1c9;color:#8a5b00;font-size:28px;font-weight:950}.account-notice-overlay.blocked .account-notice-icon{background:#ffe5e8;color:#a41f35}.account-notice-card h2,.account-notice-card p{margin:0}.account-notice-card p{line-height:1.6;color:var(--muted);white-space:pre-wrap}.account-notice-until{color:#a41f35}.game-switch-overlay{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:20px;background:#081310d1;backdrop-filter:blur(8px)}.game-switch-card{width:min(500px,100%);display:grid;justify-items:center;gap:15px;padding:30px;border:1px solid rgba(245,200,75,.36);border-radius:20px;color:var(--ink);background:#fff;text-align:center;box-shadow:0 26px 90px #00000061}.game-switch-card h2,.game-switch-card p{margin:0}.game-switch-card p{color:var(--muted);line-height:1.65}.game-switch-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;color:#9f273a;background:#ffe8eb;font-size:28px;font-weight:1000}.game-switch-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;width:100%}.game-switch-actions button{flex:1 1 190px}.customer-detail-grid,.customer-detail-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.customer-detail-wide{align-items:start}.customer-activity-section{display:grid;gap:10px}.customer-activity-section h4,.customer-detail-columns h4{margin:0 0 8px}.customer-detail .mini-list{max-height:440px;overflow:auto;padding-right:3px}.customer-detail-grid article,.mini-list div{min-width:0;padding:12px;border-radius:8px;background:linear-gradient(180deg,#fbfdfb,#f4f8f5);border:1px solid rgba(220,229,223,.76);box-shadow:0 8px 18px #1b2a240b}.customer-detail-grid span,.mini-list span,.mini-list small{display:block;overflow:hidden;color:var(--muted);font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.customer-detail-grid strong,.mini-list b{display:block;overflow:hidden;margin-top:4px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.customer-detail-columns section{min-width:0}.customer-detail-columns h4{margin:0 0 8px}.mini-list{display:grid;gap:8px}.mini-list div{display:flex;justify-content:space-between;gap:10px}.customer-detail-empty{display:grid;gap:6px;padding:18px;border-radius:8px;background:linear-gradient(180deg,#fbfdfb,#f4f8f5);border:1px solid rgba(220,229,223,.76);box-shadow:0 8px 18px #1b2a240b}.customer-detail-empty strong{color:var(--ink);font-size:18px}.customer-detail-empty span{color:var(--muted)}.room-row:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--line)}.room-playing:before{background:var(--mint)}.room-waiting:before{background:var(--gold)}.room-finished:before{background:var(--navy)}.room-row span{display:grid;gap:4px;min-width:0}.room-row span strong{color:var(--ink)}.room-row small,.audit-row small{color:var(--muted)}.settings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-shell{display:grid;gap:16px}.settings-tabs{position:sticky;top:78px;z-index:2;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:8px;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:#ffffffe0;box-shadow:0 12px 28px #1b2a2414;backdrop-filter:blur(14px)}.settings-tab{min-width:0;min-height:42px;padding:0 10px;border-radius:8px;color:var(--muted);background:transparent;font-size:13px;font-weight:1000;white-space:nowrap}.settings-tab:hover{color:var(--ink);background:#f1f7f4}.settings-tab.active{color:#fff;background:linear-gradient(135deg,var(--mint),var(--mint-dark));box-shadow:0 10px 22px #13a06f33}.settings-panel{display:none}.settings-panel.active{display:block}.settings-card{padding:18px}.settings-save-bar{position:sticky;bottom:16px;z-index:2;display:flex;justify-content:flex-end;padding:12px;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:#ffffffe0;box-shadow:0 14px 34px #1b2a241f;backdrop-filter:blur(14px)}.settings-save-bar .primary{min-width:180px}.settings-summary-list{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-form-grid label{margin-bottom:0}.settings-form-grid .wide-field{grid-column:1 / -1}.bar-chart{display:grid;gap:12px}.chart-combo{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,1fr);gap:18px;align-items:center}.pie-chart{display:grid;grid-template-columns:138px minmax(0,1fr);gap:14px;align-items:center;min-width:0}.pie-ring{width:138px;aspect-ratio:1;display:grid;place-items:center;align-content:center;border-radius:50%;background:radial-gradient(circle at center,#fff 0 46%,transparent 47%),var(--pie-fill, conic-gradient(var(--mint) 0 100%));box-shadow:inset 0 0 0 1px #12211c14,0 12px 28px #1b2a2414}.pie-ring span{color:var(--ink);font-size:28px;font-weight:1000;line-height:1}.pie-ring small{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.pie-legend{display:grid;gap:9px;min-width:0}.pie-legend span{min-width:0;display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:8px;align-items:center;color:var(--muted);font-size:12px;font-weight:1000}.pie-legend i{width:12px;height:12px;border-radius:50%}.pie-legend b{color:var(--ink)}.bar-row{display:grid;grid-template-columns:86px minmax(0,1fr) 34px;gap:10px;align-items:center}.bar-row.money-row{grid-template-columns:86px minmax(0,1fr) minmax(78px,auto)}.bar-row span,.bar-row b{color:var(--muted);font-size:12px;font-weight:1000}.bar-row b{color:var(--ink);text-align:right}.bar-track{height:12px;overflow:hidden;border-radius:999px;background:#edf3ef}.bar-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),var(--gold))}.report-filters{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.report-filters label{margin-bottom:0}.report-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:16px 0}.report-summary article{position:relative;overflow:hidden;padding:16px;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:linear-gradient(180deg,#fff,#f7fbf8);box-shadow:0 12px 28px #1b2a2412}.report-summary article:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--mint),var(--gold))}.report-summary span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.report-summary strong{display:block;margin-top:6px;font-size:20px}.report-table{display:grid;gap:10px}.report-print-area{display:grid;gap:16px}.report-tabs{position:sticky;top:78px;z-index:2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:8px;border:1px solid rgba(220,229,223,.9);border-radius:8px;background:#ffffffe0;box-shadow:0 12px 28px #1b2a2414;backdrop-filter:blur(14px)}.report-tab{min-width:0;min-height:42px;padding:0 10px;border-radius:8px;color:var(--muted);background:transparent;font-size:13px;font-weight:1000;white-space:nowrap}.report-tab:hover{color:var(--ink);background:#f1f7f4}.report-tab.active{color:#fff;background:linear-gradient(135deg,var(--mint),var(--mint-dark));box-shadow:0 10px 22px #13a06f33}.report-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-section{padding:16px}.report-row{position:relative;display:grid;grid-template-columns:1.15fr .8fr 1fr 1.35fr;gap:12px;padding:12px;overflow:hidden;border:1px solid rgba(220,229,223,.86);border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdfb);box-shadow:0 8px 18px #1b2a240b}.report-row:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--line)}.wallet-audit-explainer{margin:0 0 16px;padding:12px 14px;border-radius:8px;background:#f4f8f5;color:#425249}.wallet-audit-row{grid-template-columns:repeat(8,minmax(105px,1fr));cursor:pointer}.wallet-audit-row:hover,.wallet-audit-row.selected{transform:translateY(-1px);border-color:#6e9b89;box-shadow:0 10px 22px #1b2a241f}.audit-detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin-bottom:18px}.audit-detail-metrics article{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fbf9}.audit-detail-metrics span,.audit-detail-table small{color:var(--muted)}.audit-detail-section{margin-top:18px}.audit-detail-section h4{margin:0 0 10px}.audit-detail-table{display:grid;gap:8px;max-height:420px;overflow:auto}.audit-detail-row{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(100px,.6fr) minmax(220px,2fr) minmax(150px,1fr);gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.audit-detail-row.pending{background:#fff8e1}.wallet-audit-row.unhealthy{border-color:#e8a4a4;background:linear-gradient(180deg,#fff5f5,#ffecec);box-shadow:0 8px 18px #9c1c1c1a}.wallet-audit-row.unhealthy:before{background:#c62828}.wallet-audit-row.unhealthy span:last-child strong,.wallet-audit-row.unhealthy span:last-child small{color:#b71c1c}.wallet-audit-row.healthy:before{background:#159447}.wallet-audit-row.healthy span:last-child strong,.wallet-audit-row.healthy span:last-child small{color:#087a39}.report-playing:before{background:var(--mint)}.report-waiting:before{background:var(--gold)}.report-finished:before{background:var(--navy)}.report-row span{min-width:0;display:grid;gap:4px}.report-row strong,.report-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-row small{color:var(--muted);font-weight:800}label{display:grid;gap:7px;margin-bottom:14px;color:var(--muted);font-weight:800}input,select{width:100%;min-height:42px;padding:0 12px;border:1px solid rgba(220,229,223,.95);border-radius:8px;color:var(--ink);background:linear-gradient(180deg,#fff,#fbfdfb);box-shadow:inset 0 1px #fffc}.settings-toggles{display:grid;gap:10px;margin-bottom:14px}.toggle-row{grid-template-columns:24px 1fr;align-items:start;gap:10px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:linear-gradient(180deg,#fff,#fbfdfb);box-shadow:0 8px 18px #1b2a240b}.toggle-row input{width:18px;min-height:18px;margin-top:2px;accent-color:var(--mint)}.toggle-row span{display:grid;gap:3px}.toggle-row small{color:var(--muted);font-weight:700}.inline-form{gap:8px;margin-bottom:14px}.badge{padding:6px 10px;border-radius:999px;color:var(--mint-dark);background:#e4f5ed;font-weight:900;font-size:12px}.toast{position:fixed;left:50%;bottom:22px;z-index:40;width:min(calc(100vw - 28px),460px);display:flex;align-items:center;gap:12px;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:14px 16px;border:1px solid rgba(255,255,255,.18);border-left:5px solid #7ed7b1;border-radius:12px;color:#fff;background:#17211e;box-shadow:0 18px 50px #050f0b57;transition:.18s ease}.toast[data-type=success]{border-left-color:#56d596;background:#123b2b}.toast[data-type=warning]{border-left-color:#ffd166;background:#493916}.toast[data-type=error]{border-left-color:#ff7d8d;background:#4b1f28}.toast-icon{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#17211e;background:#fff;font-size:18px;font-weight:1000}.toast-copy{min-width:0;display:grid;gap:2px}.toast-copy strong{font-size:14px;line-height:1.2}.toast-copy small{color:#ffffffe0;font-size:13px;line-height:1.35}body[data-app=player] .toast{bottom:calc(92px + env(safe-area-inset-bottom))}.toast.show{transform:translate(-50%);opacity:1}.approval-notification-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:#08141094;backdrop-filter:blur(8px);opacity:0;transition:opacity .18s ease}.approval-notification-overlay.show{opacity:1}.approval-notification{width:min(100%,680px);overflow:hidden;border:1px solid #d8e9e1;border-top:6px solid #36a977;border-radius:20px;color:#193128;background:#fff;box-shadow:0 28px 90px #04120c4d;transform:translateY(14px) scale(.98);transition:transform .18s ease}.approval-notification-overlay.show .approval-notification{transform:translateY(0) scale(1)}.approval-notification.warning{border-top-color:#e9a72d}.approval-notification.error{border-top-color:#df5267}.approval-notification>header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:22px 24px 16px}.approval-notification header p{margin:0 0 3px;color:#60776e;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.approval-notification header h2{margin:0;font-size:clamp(20px,3vw,27px)}.approval-notification-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;color:#fff;background:#36a977;font-size:24px;font-weight:1000}.approval-notification.warning .approval-notification-icon{background:#e9a72d}.approval-notification.error .approval-notification-icon{background:#df5267}.approval-notification-close{width:38px;height:38px;border:0;border-radius:50%;color:#536b61;background:#eff6f3;font-size:25px;cursor:pointer}.approval-notification-message{margin:0;padding:0 24px 18px;color:#496158;line-height:1.55}.approval-notification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 24px;overflow:hidden;border:1px solid #dce9e4;border-radius:14px;background:#dce9e4}.approval-notification-grid span{min-width:0;display:grid;gap:5px;padding:13px 15px;background:#f7fbf9}.approval-notification-grid small{color:#71857d;font-size:11px;font-weight:800;text-transform:uppercase}.approval-notification-grid strong{overflow-wrap:anywhere;font-size:14px}.approval-notification>footer{display:flex;justify-content:flex-end;gap:10px;padding:20px 24px 24px}@media(max-width:560px){.approval-notification-overlay{padding:10px}.approval-notification>header{padding:18px 16px 14px}.approval-notification-message{padding:0 16px 16px}.approval-notification-grid{grid-template-columns:1fr;margin:0 16px}.approval-notification>footer{padding:16px;flex-direction:column-reverse}.approval-notification>footer button{width:100%}}.wallet-modal{position:fixed;inset:0;z-index:18;display:grid;align-items:end;justify-items:center;padding:18px calc(18px + env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) calc(18px + env(safe-area-inset-left));pointer-events:none;opacity:0;background:#0a14107a;transition:opacity .16s ease}.wallet-modal.show{pointer-events:auto;opacity:1}.wallet-modal-card{width:min(100%,480px);display:grid;gap:14px;padding:18px;border-radius:8px;background:#fff;box-shadow:0 24px 80px #0000004d;transform:translateY(22px);transition:transform .18s ease}.wallet-modal.show .wallet-modal-card{transform:translateY(0)}.wallet-modal-card h3{margin-bottom:0}.wallet-modal-card p{margin-bottom:0;color:var(--muted)}.modal-close{min-height:36px;padding:0 12px}.win-celebration{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:24px;pointer-events:none;opacity:0;background:#0b171200;transition:opacity .16s ease}.win-celebration.show{opacity:1;background:#0b17126b}.boom-gif{position:relative;width:min(82vw,340px);aspect-ratio:1;display:grid;place-items:center;color:#fff;transform:scale(.4) rotate(-8deg)}.win-celebration.show .boom-gif{animation:boomPop .88s cubic-bezier(.2,1.4,.28,1) forwards,boomFloat .9s ease-in-out .9s infinite alternate}.burst-ring,.burst-core,.confetti,.boom-gif strong,.boom-gif small{position:absolute}.burst-ring{width:78%;aspect-ratio:1;border-radius:50%;border:10px solid var(--gold);box-shadow:0 0 0 12px #ffffff2e,0 0 50px #e0a229cc}.ring-one{animation:ringPulse .78s ease-out infinite}.ring-two{width:56%;border-color:#fff;animation:ringPulse .78s ease-out .16s infinite}.burst-core{width:62%;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;color:#17211e;background:radial-gradient(circle,#fff 0 28%,#ffd867 29% 54%,#e64f52 55% 100%);font-size:42px;font-weight:1000;box-shadow:inset 0 -10px #00000024,0 24px 60px #00000047}.win-celebration[data-result=lost] .burst-core{color:#fff;background:radial-gradient(circle,#ff9aa5 0 30%,#c54053 31% 62%,#5d1d28 63% 100%);font-size:34px}.win-celebration[data-result=timeout] .burst-core{color:#fff;background:radial-gradient(circle,#ffdc73 0 28%,#ef7b32 29% 58%,#9f2535 59% 100%);font-size:30px}.win-celebration[data-result=draw] .burst-core{color:#17211e;background:radial-gradient(circle,#fff 0 28%,#bdc9d6 29% 58%,#63736d 59% 100%);font-size:38px}.win-celebration[data-result=lost] .burst-ring{border-color:#c54053;box-shadow:0 0 0 12px #ffffff2e,0 0 50px #c54053c7}.win-celebration[data-result=timeout] .burst-ring{border-color:#ff9f43;box-shadow:0 0 0 12px #ffffff2e,0 0 50px #ef5350cc}.win-celebration[data-result=draw] .burst-ring{border-color:#bdc9d6;box-shadow:0 0 0 12px #ffffff2e,0 0 50px #63736d8c}.boom-gif strong{bottom:36px;padding:8px 22px;border-radius:999px;color:#092015;background:#fff;font-size:38px;line-height:1;box-shadow:0 16px 34px #0000003d}.win-celebration[data-result=lost] .boom-gif strong{color:#fff;background:#c54053}.win-celebration[data-result=timeout] .boom-gif strong{color:#fff;background:#b83242}.win-celebration[data-result=draw] .boom-gif strong{color:#17211e;background:#f0f4f2}.boom-gif small{bottom:8px;width:min(120%,410px);color:#fff;font-weight:900;line-height:1.35;text-align:center;text-shadow:0 2px 8px rgba(0,0,0,.45)}.confetti{width:16px;height:38px;border-radius:4px;background:var(--mint);animation:confettiFly .9s ease-out infinite}.c1{top:14%;left:12%;background:#fff}.c2{top:9%;right:18%;background:var(--gold);animation-delay:.12s}.c3{left:8%;bottom:26%;background:#e64f52;animation-delay:.22s}.c4{right:10%;bottom:24%;background:#2ed39a;animation-delay:.32s}.c5{top:40%;right:2%;background:#fff;animation-delay:.42s}@keyframes boomPop{0%{transform:scale(.25) rotate(-14deg);filter:blur(2px)}55%{transform:scale(1.08) rotate(4deg);filter:blur(0)}to{transform:scale(1) rotate(0)}}@keyframes boomFloat{0%{transform:translateY(0) rotate(-1deg)}to{transform:translateY(-8px) rotate(1deg)}}@keyframes ringPulse{0%{transform:scale(.75);opacity:1}to{transform:scale(1.35);opacity:0}}@keyframes confettiFly{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(18px,-42px) rotate(240deg);opacity:.15}}@media(max-width:900px){.admin-game-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-shell{grid-template-columns:1fr;align-content:start;gap:28px;padding:24px}.auth-copy{padding-top:28px}.auth-brand{margin-bottom:34px}.auth-copy h1{max-width:620px;font-size:clamp(40px,10vw,64px)}.auth-board-preview{top:76px;right:-98px;width:360px;min-width:360px;opacity:.34}.auth-panel{width:min(100%,480px)}.app-shell:not(.player-shell),.admin-shell{grid-template-columns:1fr}.rail,.admin-sidebar{position:sticky;top:0;z-index:3;padding:10px;flex-direction:row;align-items:center;overflow-x:auto}.admin-sidebar{height:auto;background:linear-gradient(90deg,#111f1a,#1f3442);box-shadow:0 10px 24px #12211c29}.admin-nav{display:flex;min-width:max-content}.admin-nav-item{min-width:116px}.admin-summary{min-width:220px;margin-top:0}.brand{min-width:150px}.nav{display:flex}.nav-item{width:52px;grid-template-columns:1fr;place-items:center;padding:0}.nav-item b{display:none}.main-panel,.admin-main{padding:18px}.admin-topbar{position:static;margin:-18px -18px 18px;padding:18px}.admin-page-intro,.admin-topbar,.admin-top-actions{align-items:stretch;flex-direction:column}.topbar,.hero,.game-cards,.friend-match-panel,.friend-hero,.friend-join-form,.board-wrap,.wallet-grid,.admin-layout,.admin-detail-grid,.settings-form-grid,.finance-metrics,.finance-workspace,.finance-report-grid,.admin-list-controls,.payment-tabs,.settings-tabs,.report-tabs,.payment-filters,.payment-adjust-form,.chart-combo,.report-filters,.report-summary,.customer-filters,.customer-row,.customer-detail-grid,.customer-detail-columns,.customer-edit-card,.customer-edit-form,.report-row{grid-template-columns:1fr}.customer-edit-form .customer-edit-wide{grid-column:1}.topbar{display:grid}.player-chip{justify-content:flex-start}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.payment-tabs,.settings-tabs,.report-tabs{display:flex;overflow-x:auto}.payment-tab,.settings-tab,.report-tab{flex:0 0 auto}.pie-chart{grid-template-columns:1fr;justify-items:center}.pie-legend{width:100%}.admin-game-catalog,.catalog-settings-form{grid-template-columns:1fr}.auth-shell{min-height:100vh;padding:18px}.auth-copy{padding-top:12px}.auth-copy h1{margin-bottom:12px;font-size:40px}.auth-copy>p:not(.eyebrow){font-size:15px;line-height:1.55}.auth-highlights{margin-top:18px}.auth-panel{padding:18px}.auth-form h2{font-size:24px}.player-shell{width:100%;box-shadow:none}.mobile-appbar{min-height:calc(68px + env(safe-area-inset-top))}.brand-mark{width:38px;height:38px;font-size:21px}.brand strong{font-size:15px}.mobile-appbar .player-chip{max-width:162px}.mobile-appbar .player-chip strong{max-width:104px;font-size:13px}.hero{padding:18px}.stats-grid{grid-template-columns:1fr}.ledger-row,.compact-ledger .ledger-row{grid-template-columns:38px minmax(0,1fr) auto}.ledger-action{grid-column:span 1}.admin-sidebar{gap:10px}.admin-nav-item{min-width:92px;grid-template-columns:1fr;justify-items:center;padding:6px}.admin-nav-item b{font-size:12px}.admin-summary{min-width:190px}.admin-page-intro h2,.admin-topbar h1{font-size:24px}.stat-card,.stats-grid article{min-height:118px}.game-card{grid-template-columns:64px 1fr}.game-card button{grid-column:1 / -1}.section-head{align-items:stretch;flex-direction:column}.segmented button{flex:1;padding:0 8px}.match-bar{align-items:stretch;flex-direction:column;padding:14px}.match-bar .secondary,.top-timer{width:100%}.match-card p{font-size:18px}.xo-board{gap:6px;padding:0}.dama-board{border-width:6px}}.access-denied-card{width:min(620px,100%);margin:clamp(30px,8vh,90px) auto;padding:clamp(28px,6vw,54px);border:1px solid rgba(205,67,83,.18);border-radius:26px;text-align:center;background:radial-gradient(circle at 50% 0,rgba(255,92,112,.1),transparent 36%),#fff;box-shadow:0 22px 55px #4221341f}.access-denied-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 20px;border-radius:22px;color:#fff;background:linear-gradient(145deg,#e5485b,#b92745);box-shadow:0 14px 30px #c92d4647;font-size:34px;font-weight:900}.access-denied-card h2{margin:7px 0 12px;font-size:clamp(24px,4vw,34px);letter-spacing:-.03em}.access-denied-card>p:not(.eyebrow){max-width:480px;margin:0 auto 24px;color:var(--muted);line-height:1.65}.staff-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;margin-bottom:18px;padding:28px 30px;border-radius:24px;color:#fff;background:radial-gradient(circle at 85% 10%,rgba(255,255,255,.2),transparent 28%),radial-gradient(circle at 5% 110%,rgba(128,102,255,.7),transparent 34%),linear-gradient(125deg,#17204a,#3d3eb7 55%,#6651eb);box-shadow:0 22px 45px #262b793d}.staff-hero:after{content:"";position:absolute;right:22%;top:-70px;width:180px;height:180px;border:1px solid rgba(255,255,255,.16);border-radius:50%}.staff-hero-copy,.staff-hero-security{position:relative;z-index:1;display:flex;align-items:center;gap:16px}.staff-hero-icon{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;border:1px solid rgba(255,255,255,.25);border-radius:18px;background:#ffffff21;box-shadow:inset 0 1px #fff3;font-size:17px;font-weight:900;letter-spacing:.08em}.staff-hero .eyebrow{color:#cdd3ff}.staff-hero h2{margin:3px 0 6px;color:#fff;font-size:clamp(24px,3vw,36px);letter-spacing:-.035em}.staff-hero p{max-width:650px;margin:0;color:#ffffffc2}.staff-hero-security{flex:0 0 auto;padding:12px 15px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:#080d3038;backdrop-filter:blur(10px)}.staff-hero-security strong,.staff-hero-security small{display:block}.staff-hero-security small{margin-top:2px;color:#ffffffa6}.staff-security-dot{width:10px;height:10px;border-radius:50%;background:#65e6a6;box-shadow:0 0 0 5px #65e6a624,0 0 18px #65e6a6}.staff-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.staff-metrics article{position:relative;overflow:hidden;padding:18px;border:1px solid rgba(86,111,255,.13);border-radius:18px;background:linear-gradient(145deg,#fffffffa,#eff3ffeb);box-shadow:0 12px 30px #1f2d5a14}.staff-metrics article i{position:absolute;right:15px;top:13px;color:#2b376833;font-size:12px;font-style:normal;font-weight:900}.staff-metric-indigo{border-top:3px solid #566fff!important}.staff-metric-green{border-top:3px solid #1cba77!important}.staff-metric-violet{border-top:3px solid #8957e5!important}.staff-metric-orange{border-top:3px solid #f09a43!important}.staff-metrics article:after{content:"";position:absolute;width:70px;height:70px;right:-20px;bottom:-25px;border-radius:50%;background:#566fff1f}.staff-metrics span,.staff-metrics small{display:block;color:var(--muted)}.staff-metrics strong{display:block;margin:7px 0 3px;font-size:28px}.role-permission-grid{display:grid;gap:9px}.role-permission-grid h4{margin:10px 0 0;padding:8px 2px 3px;color:#37405f;font-size:12px;letter-spacing:.09em;text-transform:uppercase}.role-permission-grid label{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid rgba(102,116,153,.2);border-radius:12px;background:#f8faffe6;cursor:pointer}.role-permission-grid label:has(input:checked){border-color:#566fff;background:#566fff14}.role-permission-grid input{margin-top:4px}.role-permission-grid span,.role-permission-grid small{display:block}.role-permission-grid small{margin-top:2px;color:var(--muted)}.staff-form-actions,.staff-card-actions{display:flex;gap:9px;flex-wrap:wrap}.staff-creator-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:18px;align-items:start;margin-bottom:18px}.staff-form-card,.staff-directory-panel{overflow:hidden;border:1px solid rgba(76,88,130,.14);border-radius:22px;background:#fff;box-shadow:0 14px 36px #232d5614}.staff-form-card{padding:0 22px 22px}.staff-form-heading{display:flex;align-items:center;gap:12px;margin:0 -22px 20px;padding:17px 22px;border-bottom:1px solid rgba(76,88,130,.1);background:linear-gradient(100deg,#f9faff,#f2f5ff)}.staff-form-heading p,.staff-directory-heading p{margin:0 0 2px;color:#7b849f;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.staff-form-heading h3,.staff-directory-heading h3{margin:0;font-size:18px}.staff-form-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#fff;background:linear-gradient(135deg,#566fff,#8256dd);box-shadow:0 8px 18px #566fff40;font-size:20px;font-weight:800}.staff-form-card-role .staff-form-icon{background:linear-gradient(135deg,#9a5ad9,#dc67a2)}.staff-form-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.staff-form-card .settings-form>label span,.staff-form-two label span{display:block;margin-bottom:7px;color:#4b5577;font-size:12px;font-weight:800}.staff-form-card input,.staff-form-card select{min-height:44px;border-color:#dfe3f0;border-radius:11px;background:#fbfcff}.staff-form-card input:focus,.staff-form-card select:focus{border-color:#6377f2;box-shadow:0 0 0 4px #6377f21a}.staff-primary-action{display:flex;justify-content:space-between;width:100%;margin-top:4px;padding-inline:17px;background:linear-gradient(110deg,#4e63e6,#704fda)}.staff-primary-action b{font-size:19px}.staff-directory-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:18px;align-items:start}.staff-directory-panel{padding:20px}.staff-directory-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.staff-count-pill{padding:7px 10px;border-radius:999px;color:#66708e;background:#f1f3fa;font-size:12px}.staff-count-pill b{color:#3e4ec4}.staff-card,.role-card{display:grid;gap:13px;padding:16px;margin-bottom:11px;border:1px solid rgba(102,116,153,.13);border-radius:16px;background:linear-gradient(145deg,#fff,#fafbff);box-shadow:0 7px 20px #2a355e0e;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.staff-card:hover,.role-card:hover{transform:translateY(-2px);border-color:#566fff4d;box-shadow:0 12px 28px #2a355e1a}.staff-card-head,.role-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.staff-avatar{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:14px;color:#fff;font-weight:800;background:linear-gradient(135deg,#566fff,#7c4dff)}.staff-identity{display:flex;gap:11px;min-width:0}.staff-identity strong,.staff-identity small{display:block;overflow-wrap:anywhere}.staff-identity small,.role-card p,.role-meta{color:var(--muted)}.permission-chips{display:flex;flex-wrap:wrap;gap:6px}.permission-chips span{padding:5px 9px;border-radius:999px;color:#3f51b5;background:#566fff1a;font-size:12px;font-weight:700}.staff-access-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:9px;align-items:end}@media(max-width:900px){.staff-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-creator-grid,.staff-directory-grid{grid-template-columns:1fr}.staff-hero{align-items:flex-start;flex-direction:column}.staff-access-fields{grid-template-columns:1fr}}@media(max-width:520px){.staff-metrics,.staff-form-two{grid-template-columns:1fr}.staff-hero{padding:22px 18px;border-radius:19px}.staff-hero-copy{align-items:flex-start}.staff-hero-icon{flex-basis:46px;width:46px;height:46px;border-radius:14px}.staff-hero-security{width:100%}.staff-card-head,.role-card-head{flex-direction:column}}html.bundle-loading body:before{content:"";position:fixed;inset:0;z-index:9998;background:linear-gradient(110deg,#eef3f1 8%,#f8faf9 18%,#eef3f1 33%);background-size:200% 100%;animation:bundle-skeleton 1.2s linear infinite}.bundle-load-failure{position:fixed;inset:25% 8% auto;z-index:9999;padding:24px;border-radius:16px;background:#fff;color:#17221e;text-align:center;box-shadow:0 16px 60px #0003}@keyframes bundle-skeleton{to{background-position-x:-200%}}.board-reconciling{transition:opacity .24s ease,transform .24s ease;opacity:.72;transform:scale(.995)}.network-syncing .game-view.active:after{content:"Syncing\2026";position:fixed;right:14px;bottom:112px;z-index:81;padding:5px 9px;border-radius:999px;background:#173f35;color:#fff;font-size:12px}.network-mode-indicator{position:fixed;left:12px;bottom:102px;z-index:79;padding:3px 7px;border-radius:999px;background:#31544b;color:#fff;font-size:10px;opacity:.82}html[data-network-mode=lean] *{scroll-behavior:auto!important}html[data-network-mode=lean] .avatar,html[data-network-mode=minimal] .avatar{display:none!important}html[data-network-mode=minimal] img{visibility:hidden!important}html[data-network-mode=minimal] button,html[data-network-mode=minimal] [role=button]{min-height:46px;min-width:46px}html[data-network-mode=minimal] .xo-cell,html[data-network-mode=minimal] .square,html[data-network-mode=minimal] .chess-square,html[data-network-mode=minimal] .ludo-token{min-width:0;min-height:0}.offline-shell{max-width:520px;margin:8vh auto;padding:24px;text-align:center}.offline-board{display:grid;grid-template-columns:repeat(8,1fr);max-width:420px;margin:20px auto;border:2px solid #31544b}.offline-board.offline-xo{grid-template-columns:repeat(3,1fr);max-width:280px}.offline-board span{aspect-ratio:1;display:grid;place-items:center;border:1px solid #31544b55;font-weight:700}body[data-app=admin]{--ad-bg: #f4f6f9;--ad-surface: #ffffff;--ad-surface-alt: #f8fafc;--ad-line: #e2e8f0;--ad-line-strong: #cbd5e1;--ad-ink: #0f172a;--ad-ink-soft: #475569;--ad-muted: #64748b;--ad-accent: #1d6f5c;--ad-accent-soft: #e6f2ee;--ad-accent-ink: #10513f;--ad-warn: #b45309;--ad-warn-soft: #fef3c7;--ad-danger: #b91c1c;--ad-danger-soft: #fee2e2;--ad-info: #1d4ed8;--ad-radius: 12px;--ad-radius-sm: 8px;--ad-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 6px 16px rgba(15, 23, 42, .05);background:var(--ad-bg);color:var(--ad-ink)}body[data-app=admin] .admin-shell{grid-template-columns:248px minmax(0,1fr);background:var(--ad-bg)}body[data-app=admin] .admin-sidebar{padding:20px 14px;gap:18px;background:#10241f;box-shadow:none;border-right:1px solid rgba(255,255,255,.06)}body[data-app=admin] .admin-sidebar .brand{padding:4px 8px 14px;border-bottom:1px solid rgba(255,255,255,.08)}body[data-app=admin] .admin-nav{gap:2px}body[data-app=admin] .admin-nav-item{min-height:42px;grid-template-columns:26px 1fr;gap:12px;padding:0 10px;border-radius:var(--ad-radius-sm);color:#9fb4ad;font-weight:600;letter-spacing:.01em;transition:background .12s ease,color .12s ease}body[data-app=admin] .admin-nav-item span{width:26px;height:26px;border-radius:6px;background:#ffffff12;color:#8fa8a0;font-size:10px;font-weight:700;letter-spacing:.04em}body[data-app=admin] .admin-nav-item b{font-size:13.5px;font-weight:600}body[data-app=admin] .admin-nav-item:hover{background:#ffffff0f;color:#f1f5f4}body[data-app=admin] .admin-nav-item.active{background:#ffffff1a;color:#fff;box-shadow:inset 3px 0 #4ade80}body[data-app=admin] .admin-nav-item.active span{background:#4ade80;color:#0b2019}body[data-app=admin] .admin-summary{margin-top:auto;padding:12px;border-radius:var(--ad-radius-sm);background:#ffffff0d;color:#cbd5e1;font-size:12px}body[data-app=admin] .admin-main{padding:22px 26px 40px}body[data-app=admin] .admin-topbar{align-items:center;margin-bottom:20px;padding:0 0 16px;border-bottom:1px solid var(--ad-line);background:transparent;box-shadow:none}body[data-app=admin] .admin-topbar h1{font-size:22px;font-weight:650;letter-spacing:-.015em;color:var(--ad-ink)}body[data-app=admin] .admin-subtitle{margin-top:2px;color:var(--ad-muted);font-size:13px;font-weight:450}body[data-app=admin] .eyebrow{color:var(--ad-muted);font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}body[data-app=admin] .system-pill{padding:6px 12px;border:1px solid var(--ad-line);border-radius:999px;background:var(--ad-surface);color:var(--ad-ink-soft);font-size:12px;font-weight:600;box-shadow:none}body[data-app=admin] .admin-panel{padding:18px;border:1px solid var(--ad-line);border-radius:var(--ad-radius);background:var(--ad-surface);box-shadow:var(--ad-shadow)}body[data-app=admin] .admin-panel:after,body[data-app=admin] .admin-panel:before{display:none}body[data-app=admin] .admin-panel:hover{transform:none;box-shadow:var(--ad-shadow)}body[data-app=admin] .section-head{align-items:center;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--ad-line)}body[data-app=admin] .section-head h3{font-size:15px;font-weight:650;letter-spacing:-.01em;color:var(--ad-ink)}body[data-app=admin] .badge{padding:4px 10px;border:1px solid var(--ad-line);border-radius:6px;background:var(--ad-surface-alt);color:var(--ad-muted);font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:none;box-shadow:none}body[data-app=admin] .admin-page-intro{margin-bottom:16px;padding:14px 16px;border:1px solid var(--ad-line);border-left:3px solid var(--ad-accent);border-radius:var(--ad-radius-sm);background:var(--ad-surface);color:var(--ad-ink-soft);box-shadow:none}body[data-app=admin] .stat-card,body[data-app=admin] .stats-grid article{min-height:0;padding:16px 18px;border:1px solid var(--ad-line);border-radius:var(--ad-radius);background:var(--ad-surface);box-shadow:var(--ad-shadow)}body[data-app=admin] .stat-card:before{display:none}body[data-app=admin] .stat-card>span,body[data-app=admin] .stats-grid article>span{color:var(--ad-muted);font-size:12px;font-weight:600;letter-spacing:.02em}body[data-app=admin] .stat-card strong,body[data-app=admin] .stats-grid article strong{margin-top:8px;font-size:28px;font-weight:650;letter-spacing:-.02em;color:var(--ad-ink)}body[data-app=admin] .stat-card.players strong{color:var(--ad-accent)}body[data-app=admin] .stat-card.waiting strong{color:var(--ad-warn)}body[data-app=admin] .stat-card.revenue strong{color:var(--ad-info)}body[data-app=admin] .stat-card.games strong{color:var(--ad-ink)}body[data-app=admin] .stat-card small{margin-top:6px;color:var(--ad-muted);font-size:12px;font-weight:450}body[data-app=admin] .finance-metric-card{padding:14px 16px;border:1px solid var(--ad-line);border-radius:var(--ad-radius-sm);background:var(--ad-surface);box-shadow:none}body[data-app=admin] .detail-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--ad-line)}body[data-app=admin] .detail-list>div:last-child{border-bottom:0}body[data-app=admin] .detail-list span{color:var(--ad-muted);font-size:13px;font-weight:450}body[data-app=admin] .detail-list b{color:var(--ad-ink);font-size:13px;font-weight:620;text-align:right}body[data-app=admin] .referral-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0 24px;margin-bottom:14px;padding:12px 14px;border:1px solid var(--ad-line);border-radius:var(--ad-radius-sm);background:var(--ad-surface-alt)}body[data-app=admin] .report-tabs,body[data-app=admin] .settings-tabs,body[data-app=admin] .payment-tabs{gap:2px;margin-bottom:18px;padding:4px;border:1px solid var(--ad-line);border-radius:var(--ad-radius-sm);background:var(--ad-surface);overflow-x:auto}body[data-app=admin] .report-tab,body[data-app=admin] .settings-tab,body[data-app=admin] .payment-tab{padding:8px 14px;border:0;border-radius:6px;background:transparent;color:var(--ad-muted);font-size:13px;font-weight:600;white-space:nowrap;box-shadow:none;transition:background .12s ease,color .12s ease}body[data-app=admin] .report-tab:hover,body[data-app=admin] .settings-tab:hover,body[data-app=admin] .payment-tab:hover{background:var(--ad-surface-alt);color:var(--ad-ink)}body[data-app=admin] .report-tab.active,body[data-app=admin] .settings-tab.active,body[data-app=admin] .payment-tab.active{background:var(--ad-accent-soft);color:var(--ad-accent-ink);box-shadow:none}body[data-app=admin] .report-table{gap:0;border:1px solid var(--ad-line);border-radius:var(--ad-radius-sm);overflow:hidden;background:var(--ad-surface)}body[data-app=admin] .report-row{gap:16px;padding:11px 14px;border:0;border-bottom:1px solid var(--ad-line);border-radius:0;background:var(--ad-surface);box-shadow:none;transition:background .1s ease}body[data-app=admin] .report-row:last-child{border-bottom:0}body[data-app=admin] .report-row:nth-child(2n){background:var(--ad-surface-alt)}body[data-app=admin] .report-row:hover{background:var(--ad-accent-soft)}body[data-app=admin] .report-row:before{display:none}body[data-app=admin] .report-row strong{color:var(--ad-ink);font-size:13px;font-weight:620}body[data-app=admin] .report-row small{color:var(--ad-muted);font-size:11.5px;font-weight:450}body[data-app=admin] .ledger-list,body[data-app=admin] .people-list{border:1px solid var(--ad-line);border-radius:var(--ad-radius-sm);overflow:hidden}body[data-app=admin] .settings-form-grid{gap:14px}body[data-app=admin] label{color:var(--ad-ink-soft);font-size:12.5px;font-weight:600}body[data-app=admin] input[type=text],body[data-app=admin] input[type=number],body[data-app=admin] input[type=email],body[data-app=admin] input[type=password],body[data-app=admin] input[type=tel],body[data-app=admin] input[type=search],body[data-app=admin] input[type=date],body[data-app=admin] input[type=datetime-local],body[data-app=admin] select,body[data-app=admin] textarea{margin-top:6px;padding:9px 11px;border:1px solid var(--ad-line-strong);border-radius:var(--ad-radius-sm);background:var(--ad-surface);color:var(--ad-ink);font-size:13.5px;font-weight:450;box-shadow:none;transition:border-color .12s ease,box-shadow .12s ease}body[data-app=admin] input:focus-visible,body[data-app=admin] select:focus-visible,body[data-app=admin] textarea:focus-visible{outline:none;border-color:var(--ad-accent);box-shadow:0 0 0 3px var(--ad-accent-soft)}body[data-app=admin] .toggle-row{align-items:flex-start;gap:10px;padding:11px 13px;border:1px solid var(--ad-line);border-radius:var(--ad-radius-sm);background:var(--ad-surface-alt)}body[data-app=admin] .toggle-row strong{display:block;color:var(--ad-ink);font-size:13px;font-weight:620}body[data-app=admin] .toggle-row small{display:block;margin-top:3px;color:var(--ad-muted);font-size:12px;font-weight:450;line-height:1.45}body[data-app=admin] button.primary{padding:9px 16px;border:1px solid var(--ad-accent);border-radius:var(--ad-radius-sm);background:var(--ad-accent);color:#fff;font-size:13.5px;font-weight:620;box-shadow:none;transition:background .12s ease}body[data-app=admin] button.primary:hover{background:var(--ad-accent-ink)}body[data-app=admin] button.secondary{padding:9px 16px;border:1px solid var(--ad-line-strong);border-radius:var(--ad-radius-sm);background:var(--ad-surface);color:var(--ad-ink-soft);font-size:13.5px;font-weight:600;box-shadow:none}body[data-app=admin] button.secondary:hover{border-color:var(--ad-accent);background:var(--ad-accent-soft);color:var(--ad-accent-ink)}body[data-app=admin] .admin-pager button{min-width:34px;padding:6px 10px;border:1px solid var(--ad-line);border-radius:6px;background:var(--ad-surface);color:var(--ad-ink-soft);font-size:12.5px;font-weight:600}body[data-app=admin] .admin-pager button.active{border-color:var(--ad-accent);background:var(--ad-accent-soft);color:var(--ad-accent-ink)}body[data-app=admin] .admin-login{background:var(--ad-bg)}body[data-app=admin] .login-card{border:1px solid var(--ad-line);border-radius:16px;background:var(--ad-surface);box-shadow:0 4px 12px #0f172a0f,0 24px 48px #0f172a14}@media(max-width:1080px){body[data-app=admin] .admin-shell{grid-template-columns:1fr}body[data-app=admin] .admin-sidebar{position:static;height:auto}body[data-app=admin] .admin-nav{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto}body[data-app=admin] .admin-main{padding:16px}body[data-app=admin] .report-row{grid-template-columns:1fr 1fr;row-gap:8px}}body[data-app=admin] .report-tabs,body[data-app=admin] .settings-tabs,body[data-app=admin] .payment-tabs{display:flex;flex-wrap:wrap;grid-template-columns:none;justify-content:flex-start;position:static;backdrop-filter:none}body[data-app=admin] .report-summary article{padding:14px 16px;border:1px solid var(--ad-line);border-radius:var(--ad-radius-sm);background:var(--ad-surface);box-shadow:none}body[data-app=admin] .report-summary article:before{display:none}body[data-app=admin] .report-summary article span{color:var(--ad-muted);font-size:11px;font-weight:650;letter-spacing:.05em;text-transform:uppercase}body[data-app=admin] .report-summary article strong{display:block;margin-top:6px;color:var(--ad-ink);font-size:22px;font-weight:650;letter-spacing:-.02em}body[data-app=admin] .detail-list>div{background:transparent;border-radius:0;box-shadow:none}body[data-app=admin] .login-card{gap:20px;padding:28px;color:var(--ad-ink);background:var(--ad-surface);backdrop-filter:none}body[data-app=admin] .login-card h1{color:var(--ad-ink);font-size:24px;font-weight:650;letter-spacing:-.02em}body[data-app=admin] .login-card .brand strong{color:var(--ad-ink)}body[data-app=admin] .login-card .brand small,body[data-app=admin] .login-copy,body[data-app=admin] .login-hint{color:var(--ad-muted)}body[data-app=admin] .login-copy,body[data-app=admin] .login-hint{font-size:13.5px;font-weight:450;line-height:1.5}body[data-app=admin] .portal-badge{border:1px solid var(--ad-line);background:var(--ad-accent-soft);color:var(--ad-accent-ink);font-weight:600;box-shadow:none}body[data-app=admin] .login-feature-grid span{display:grid;place-items:center;border:1px solid var(--ad-line);border-radius:var(--ad-radius-sm);background:var(--ad-surface-alt);color:var(--ad-ink-soft);font-size:12px;font-weight:600}body[data-app=admin] .admin-sidebar .brand strong{color:#fff}body[data-app=admin] .admin-sidebar .brand small{color:#8fa8a0}body[data-app=admin] .ops-panel.ops-alert{border-color:#fca5a5;background:linear-gradient(0deg,var(--ad-danger-soft) 0%,var(--ad-surface) 60%)}body[data-app=admin] .ops-panel.ops-alert .section-head h3,body[data-app=admin] .ops-panel.ops-alert #opsWithdrawalsBreached{color:var(--ad-danger)}body[data-app=admin] .ops-panel.ops-alert .badge{border-color:#fca5a5;background:var(--ad-danger-soft);color:var(--ad-danger)}body[data-app=admin] .chart-combo{grid-template-columns:minmax(0,1fr);gap:14px;align-items:stretch}body[data-app=admin] .pie-chart{grid-template-columns:138px minmax(0,1fr);gap:18px;align-items:center}body[data-app=admin] .pie-chart>*:last-child{min-width:0;overflow-wrap:anywhere}body[data-app=admin] .finance-action-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr)) auto;gap:12px;align-items:stretch;margin-bottom:16px;padding:14px;border:1px solid var(--ad-line);border-radius:var(--ad-radius);background:var(--ad-surface);box-shadow:var(--ad-shadow)}body[data-app=admin] .finance-action-card{padding:10px 12px;border:1px solid var(--ad-line);border-radius:var(--ad-radius-sm);background:var(--ad-surface-alt)}body[data-app=admin] .finance-action-card span{color:var(--ad-muted);font-size:11px;font-weight:650;letter-spacing:.05em;text-transform:uppercase}body[data-app=admin] .finance-action-card strong{display:block;margin-top:4px;color:var(--ad-ink);font-size:22px;font-weight:650;letter-spacing:-.02em}body[data-app=admin] .finance-action-card small{display:block;margin-top:2px;color:var(--ad-muted);font-size:12px;font-weight:450}body[data-app=admin] .finance-action-card.finance-breached{border-color:#fca5a5;background:var(--ad-danger-soft)}body[data-app=admin] .finance-action-card.finance-breached strong,body[data-app=admin] .finance-action-card.finance-breached span{color:var(--ad-danger)}body[data-app=admin] .finance-action-go{align-self:center;white-space:nowrap}body[data-app=admin] .ledger-overdue{color:var(--ad-danger);font-weight:700}body[data-app=admin] .ledger-waiting{color:var(--ad-warn);font-weight:650}body[data-app=admin] .ledger-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;overflow:visible;border-radius:var(--ad-radius-sm);background:var(--ad-surface);border-color:var(--ad-line);box-shadow:none}body[data-app=admin] .ledger-row:hover{border-color:var(--ad-line-strong);box-shadow:none}body[data-app=admin] .ledger-copy{flex:1 1 240px;min-width:0}body[data-app=admin] .ledger-copy span{white-space:normal;overflow:visible;text-overflow:clip;font-size:11.5px;font-weight:500;line-height:1.45}body[data-app=admin] .ledger-copy strong{overflow:visible;white-space:normal;font-size:13px;font-weight:620}body[data-app=admin] .ledger-amount{margin-left:auto;white-space:nowrap}body[data-app=admin] .ledger-action{flex:0 0 auto}body[data-app=admin] .ledger-row.ledger-empty{justify-content:space-between;background:var(--ad-surface-alt);color:var(--ad-muted)}body[data-app=admin] .finance-metric-card.primary{border-color:#bfe0d5;background:var(--ad-accent-soft);color:var(--ad-accent-ink)}body[data-app=admin] .finance-metric-card.primary span,body[data-app=admin] .finance-metric-card.primary small,body[data-app=admin] .finance-metric-card.primary strong{color:var(--ad-accent-ink)}body[data-app=admin] .finance-metric-card:before{display:none}body[data-app=admin] .finance-metric-card span{color:var(--ad-muted);font-size:11px;font-weight:650;letter-spacing:.05em;text-transform:uppercase}body[data-app=admin] .finance-metric-card strong{display:block;margin-top:6px;color:var(--ad-ink);font-size:24px;font-weight:650;letter-spacing:-.02em}body[data-app=admin] .finance-metric-card small{display:block;margin-top:4px;color:var(--ad-muted);font-size:12px;font-weight:450;text-transform:none}body[data-app=admin] .finance-action-bar{grid-template-columns:repeat(3,minmax(140px,1fr)) auto}@media(max-width:900px){body[data-app=admin] .finance-action-bar{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-app=admin] .finance-action-go{grid-column:1 / -1}}.ludo-art{background:linear-gradient(135deg,#e53935 0 25%,#43a047 25% 50%,#fdd835 50% 75%,#1e88e5 75%);color:#fff;font-size:62px;display:flex;align-items:center;justify-content:center;gap:15px;text-shadow:0 2px 4px #0006}.ludo-card{background:linear-gradient(135deg,#223f3a,#152b2b)}.ludo-card .ludo-art{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:10px;font-size:26px}.ludo-card .ludo-art span:first-child{grid-column:1 / -1;font-size:42px;line-height:1}.ludo-play-panel{min-width:0;padding:10px;border-radius:12px;background:#fff;border:1px solid var(--line)}.ludo-frame{width:min(100%,560px);margin:0 auto 12px;padding:3%;box-sizing:border-box;border:4px solid #1c2445;border-radius:8px;background:repeating-linear-gradient(45deg,transparent 0 5px,rgba(196,148,52,.55) 5px 6px,transparent 6px 11px),repeating-linear-gradient(-45deg,transparent 0 5px,rgba(196,148,52,.55) 5px 6px,transparent 6px 11px),#fbf5e4;box-shadow:var(--shadow)}.ludo-board{position:relative;display:grid;grid-template-columns:repeat(15,minmax(0,1fr));grid-template-rows:repeat(15,minmax(0,1fr));width:100%;aspect-ratio:1;box-sizing:border-box;margin:0;border:2px solid #222;background:#fff;overflow:hidden;box-shadow:0 0 0 2px #fbf5e4,0 0 0 3px #b48a3a}.ludo-cell{position:relative;z-index:2;min-width:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1px;color:#7c7c7c;font-size:clamp(8px,2vw,16px);line-height:1}.ludo-cell.track,.ludo-cell.lane{background:#fff;box-shadow:inset 0 0 0 .5px #2b2b2b}.ludo-cell.arrow{color:#444;font-weight:700}.ludo-cell.lane-green,.ludo-cell.start-green{background:#43a047}.ludo-cell.lane-yellow,.ludo-cell.start-yellow{background:#fdd835}.ludo-cell.lane-red,.ludo-cell.start-red{background:#e53935}.ludo-cell.lane-blue,.ludo-cell.start-blue{background:#1e88e5}.ludo-cell.lane:before,.ludo-cell.start:before{content:"";position:absolute;inset:16%;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #2b2b2b}.ludo-cell.start:after{content:"START";position:absolute;font-size:clamp(3px,.9vw,7px);font-weight:800;letter-spacing:-.02em;color:#333}.ludo-cell.lane .ludo-token,.ludo-cell.start .ludo-token{z-index:3}.ludo-yard{position:absolute;z-index:1;width:40%;height:40%;pointer-events:none;box-shadow:inset 0 0 0 .5px #2b2b2b}.ludo-yard.green{top:0;left:0;background:#43a047}.ludo-yard.yellow{top:0;right:0;background:#fdd835}.ludo-yard.blue{bottom:0;left:0;background:#1e88e5}.ludo-yard.red{bottom:0;right:0;background:#e53935}.ludo-yard:after{content:"";position:absolute;inset:9%;border-radius:50%;background:#fff;box-shadow:0 0 0 1.5px #2b2b2b}.ludo-yard:before{content:attr(data-label);position:absolute;z-index:1;left:0;right:0;bottom:1.5%;text-align:center;font:700 clamp(6px,1.5vw,11px)/1 Georgia,serif;letter-spacing:.08em;color:#1d1d1d}.ludo-yard span{position:absolute;z-index:1;width:21%;height:21%;transform:translate(-50%,-50%);border-radius:50%;box-shadow:inset 0 2px 3px #00000040}.ludo-yard.green span{background:#43a047}.ludo-yard.yellow span{background:#fdd835}.ludo-yard.blue span{background:#1e88e5}.ludo-yard.red span{background:#e53935}.ludo-cell.ludo-center{background:transparent}.ludo-board:after{content:"";position:absolute;top:40%;left:40%;width:20%;height:20%;background:conic-gradient(from -45deg,#fdd835 0 90deg,#e53935 90deg 180deg,#1e88e5 180deg 270deg,#43a047 270deg);box-shadow:inset 0 0 0 .5px #2b2b2b}.ludo-token{--c:#d32f2f;--hi:#ff9e96;--lo:#7a0b0b;--rim:#5c0606;position:relative;z-index:3;width:80%;aspect-ratio:.8;padding:0;min-width:0;min-height:0;border:0;background:transparent;container-type:inline-size;transition:transform .16s ease;filter:drop-shadow(0 0 .7px rgba(255,255,255,.95)) drop-shadow(0 0 .7px rgba(255,255,255,.95))}.ludo-token.green{--c:#2e8b37;--hi:#9fe8a3;--lo:#0f4614;--rim:#0a3210}.ludo-token>span{position:absolute;left:50%;transform:translate(-50%);pointer-events:none}.ludo-token:after{content:"";position:absolute;left:50%;bottom:0;width:96%;height:20%;transform:translate(-50%);border-radius:50%;background:radial-gradient(ellipse,#00000080,#0000 70%)}.pawn-base{z-index:1;bottom:3%;width:88%;height:22%;border-radius:50%;background:radial-gradient(ellipse at 50% 28%,var(--hi) 0 12%,var(--c) 48%,var(--lo) 100%);box-shadow:inset 0 -2px 0 var(--rim),inset 0 1px 1px #ffffff8c}.pawn-body{z-index:2;bottom:12%;width:62%;height:54%;border-radius:50% 50% 22% 22%/78% 78% 22% 22%;background:linear-gradient(90deg,var(--lo) 0%,var(--c) 26%,var(--hi) 42%,var(--c) 58%,var(--lo) 100%);box-shadow:inset 0 -3px 3px #00000040;display:grid;place-items:end center;padding-bottom:9%;box-sizing:border-box;font:900 26cqw/1 Georgia,Times New Roman,serif;color:#ffffffeb;text-shadow:0 -1px 0 rgba(0,0,0,.45)}.pawn-body:before{content:"";position:absolute;left:50%;top:-4%;width:72%;height:16%;transform:translate(-50%);border-radius:50%;background:linear-gradient(180deg,var(--hi),var(--c) 45%,var(--lo));box-shadow:0 1px 1px #00000059}.pawn-head{z-index:3;top:0;width:50%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 34% 30%,#fff 0 7%,var(--hi) 18%,var(--c) 52%,var(--lo) 100%);box-shadow:inset -2px -3px 4px #00000047,0 1px 1px #0000004d}.ludo-token:disabled{opacity:1;cursor:default}.ludo-token:not(:disabled){cursor:pointer;z-index:4;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 2px #fff) drop-shadow(0 0 5px #ffcf46);animation:ludo-token-hop .9s ease-in-out infinite}.ludo-token:not(:disabled):active{transform:translateY(1px) scale(.94);animation:none}.ludo-token.in-yard{position:absolute;z-index:5;width:6.4%;transform:translate(-50%,-78%)}.ludo-token.in-yard:not(:disabled){animation-name:ludo-yard-hop}.ludo-token.in-yard:not(:disabled):active{transform:translate(-50%,-76%) scale(.94)}.ludo-cell:has(.ludo-token:nth-of-type(2)) .ludo-token{width:46%}@keyframes ludo-token-hop{0%,to{transform:translateY(0)}50%{transform:translateY(-16%)}}@keyframes ludo-yard-hop{0%,to{transform:translate(-50%,-78%)}50%{transform:translate(-50%,-94%)}}.ludo-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:12px;padding:8px;background:#eef5f2;border-radius:8px}.ludo-controls button{min-height:44px}.ludo-dice{display:grid;grid-template:repeat(3,1fr) / repeat(3,1fr);place-items:center;width:54px;height:54px;padding:8px;box-sizing:border-box;border-radius:11px;background:linear-gradient(145deg,#fff,#ebe7df);box-shadow:inset 0 1px #fff,inset 0 -3px #00000014,0 5px #c9c3b6,0 9px 12px #00000047}.ludo-dice i{width:9px;height:9px;border-radius:50%}.ludo-dice i.on{background:radial-gradient(circle at 40% 35%,#444,#000);box-shadow:inset 0 1px 1px #0009,0 1px #fffc}.ludo-dice.rolled{animation:ludo-dice-roll .52s cubic-bezier(.2,.8,.3,1.2)}@keyframes ludo-dice-roll{0%{transform:perspective(300px) rotateX(0) rotate(0) translateY(0)}40%{transform:perspective(300px) rotateX(200deg) rotate(90deg) translateY(-16px)}to{transform:perspective(300px) rotateX(360deg) rotate(180deg) translateY(0)}}.ludo-controls #ludoRoll{box-shadow:0 4px #0b6b4a,0 8px 12px #0b6b4a4d;transition:transform .12s ease,box-shadow .12s ease}.ludo-controls #ludoRoll:not(:disabled):active{transform:translateY(3px);box-shadow:0 1px #0b6b4a,0 3px 6px #0b6b4a4d}.ludo-rules{max-width:540px;margin:14px auto;font-size:14px;line-height:1.6}.ludo-match-card .ludo-rules{margin:12px 0;font-size:13px}.ludo-player-key{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;font-weight:700}.ludo-player-key span{display:flex;align-items:center;gap:6px}.ludo-player-key i{display:inline-block;width:12px;height:12px;border-radius:50%}.ludo-player-key .red{background:#e53935}.ludo-player-key .green{background:#43a047}@media(max-width:520px){.mobile-appbar{gap:8px}.mobile-appbar .header-game-timers{margin-left:auto;flex-shrink:0}.mobile-appbar .player-chip{min-width:0;max-width:90px;flex:0 1 90px;overflow:hidden}.mobile-appbar .player-chip strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.ludo-match-bar{gap:10px}.ludo-match-bar strong{font-size:15px}.ludo-match-bar .secondary{flex-shrink:0;padding:9px 10px;font-size:12px}.ludo-play-panel{padding:6px}.ludo-frame{padding:2.4%;border-width:3px}}@media(prefers-reduced-motion:reduce){.ludo-token:not(:disabled),.ludo-dice.rolled{animation:none}}html[data-network-mode=lean] .ludo-token:not(:disabled),html[data-network-mode=minimal] .ludo-token:not(:disabled),html[data-network-mode=lean] .ludo-dice.rolled,html[data-network-mode=minimal] .ludo-dice.rolled{animation:none}.chess-square.premove-target:after{content:"";position:absolute;width:30%;aspect-ratio:1;border-radius:50%;background:#5692eb8c;box-shadow:0 0 0 4px #5692eb2e;pointer-events:none}.chess-square.premove-from,.chess-square.premove-to{outline:3px solid rgba(86,146,235,.9);outline-offset:-3px}.square.jump-end:after{content:"";width:42%;aspect-ratio:1;border-radius:50%;border:3px dashed #fff2b8;background:#e0a22938;pointer-events:none}
