:root{--table-bg:#03010a;--table-bg-2:#0e0622;--panel-bg:#0d081ed9;--panel-border:#4f33b5;--text:#e1f9ff;--text-dim:#798ebc;--accent:#00f0ff;--accent-2:#ff007f;--neon-glow:0 0 8px #00f0ffb3, 0 0 20px #00f0ff66;--neon-glow-2:0 0 8px #ff007fb3, 0 0 20px #ff007f66;--cyber-yellow:#fffe00;--cyber-yellow-glow:0 0 8px #fffe0099;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--table-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Consolas,Fira Code,Courier New,Courier,monospace,system-ui;font-size:15px;line-height:1.5}*{box-sizing:border-box}body{min-height:100svh;margin:0;position:relative;overflow-x:hidden}body:before{content:" ";z-index:9999;pointer-events:none;opacity:.45;background:linear-gradient(#12101000 50%,#00000040 50%) 0 0/100% 4px;display:block;position:fixed;inset:0}#root{min-height:100svh}@keyframes cyber-glitch{0%{clip-path:inset(40% 0 61%);transform:skew(.3deg)}20%{clip-path:inset(92% 0 1%);transform:skew(-.5deg)}40%{clip-path:inset(15% 0 80%);transform:skew(.5deg)}60%{clip-path:inset(80% 0 5%);transform:skew(-.3deg)}80%{clip-path:inset(3% 0 92%);transform:skew(.8deg)}to{clip-path:inset(40% 0 61%);transform:skew(0deg)}}@keyframes scanline-move{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes pulse-neon{0%,to{opacity:1;filter:drop-shadow(0 0 2px var(--accent))}50%{opacity:.85;filter:drop-shadow(0 0 8px var(--accent)) drop-shadow(0 0 15px var(--accent))}}@keyframes grid-scroll{0%{background-position:0 0}to{background-position:0 40px}}@keyframes border-glow-run{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}:root{--card-width:84px;--card-height:120px}.board{background:linear-gradient(180deg, #03010aa6 0%, #03010af2 100%), repeating-linear-gradient(0deg, #00f0ff08 0, #00f0ff08 1px, transparent 1px, transparent 40px), repeating-linear-gradient(90deg, #00f0ff08 0, #00f0ff08 1px, transparent 1px, transparent 40px), radial-gradient(circle at 50% 40%, var(--table-bg-2) 0%, var(--table-bg) 85%);background-size:100% 100%,40px 40px,40px 40px,100% 100%;flex-direction:column;gap:14px;min-height:100svh;padding:16px 20px 40px;animation:35s linear infinite grid-scroll;display:flex;position:relative}.toolbar{background:var(--panel-bg);clip-path:polygon(0 0,calc(100% - 15px) 0,100% 15px,100% 100%,15px 100%,0 calc(100% - 15px));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 24px;display:flex;position:relative;box-shadow:0 8px 30px #000000b3,inset 0 0 15px #00f0ff1a}.toolbar:before{content:"";background:linear-gradient(135deg, var(--accent) 0%, var(--panel-border) 40%, var(--accent-2) 100%);-webkit-mask-composite:xor;pointer-events:none;clip-path:polygon(0 0,calc(100% - 15px) 0,100% 15px,100% 100%,15px 100%,0 calc(100% - 15px));padding:1.5px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.toolbar h1{color:var(--accent);letter-spacing:2px;text-transform:uppercase;text-shadow:var(--neon-glow);margin:0;font-size:22px;font-weight:900;position:relative}.title-accent{color:var(--accent-2);text-shadow:var(--neon-glow-2)}.toolbar-actions{align-items:center;gap:14px;display:flex}.match-score{color:var(--cyber-yellow);text-shadow:var(--cyber-yellow-glow);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px;font-weight:700}.round-number{color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;font-size:13px;font-weight:700}.toolbar button,.action-bar button,.mode-buttons button{color:var(--accent);cursor:pointer;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));letter-spacing:.5px;background:#00f0ff0f;border:none;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);position:relative}.toolbar button:before,.action-bar button:before,.mode-buttons button:before{content:"";background:var(--accent);-webkit-mask-composite:xor;pointer-events:none;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));padding:1px;transition:all .2s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.toolbar button:hover:not(:disabled),.action-bar button:hover:not(:disabled),.mode-buttons button:hover:not(:disabled){color:#fff;text-shadow:var(--neon-glow);background:#00f0ff33;box-shadow:0 0 15px #00f0ff66}.toolbar button:hover:not(:disabled):before,.action-bar button:hover:not(:disabled):before,.mode-buttons button:hover:not(:disabled):before{background:#fff}.buy-button{color:var(--accent-2)!important;background:#ff007f14!important}.buy-button:before{background:var(--accent-2)!important}.buy-button:hover:not(:disabled){color:#fff!important;text-shadow:var(--neon-glow-2)!important;background:#ff007f40!important;box-shadow:0 0 15px #ff007f66!important}.buy-button:hover:not(:disabled):before{background:#fff!important}.start-screen{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:24px;padding:40px 20px;display:flex;position:relative}.start-screen:before{content:"[ SECURITY INTERFACE ACTIVE ]";color:var(--text-dim);letter-spacing:2px;opacity:.6;font-size:11px;position:absolute;top:10px}.start-desc{color:var(--text-dim);max-width:500px;font-size:14px;line-height:1.7}.name-inputs{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.name-inputs.single{flex-direction:column;align-items:center}.name-inputs label{color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;flex-direction:column;gap:8px;font-size:12px;display:flex}.name-inputs input{border:1px solid var(--panel-border);color:var(--accent);text-align:center;clip-path:polygon(0 0,92% 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));background:#00f0ff08;outline:none;padding:10px 14px;font-family:inherit;font-weight:700;transition:all .2s}.name-inputs input:focus{border-color:var(--accent);background:#00f0ff14;box-shadow:inset 0 0 8px #00f0ff33}.level-picker{flex-direction:column;align-items:center;gap:10px;display:flex}.level-picker-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;font-size:12px}.level-picker-options{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.level-picker-options button{color:var(--text-dim);cursor:pointer;clip-path:polygon(0 0,90% 0,100% 6px,100% 100%,10% 100%,0 calc(100% - 6px));background:#0d081e99;border:1px solid #4f33b580;padding:8px 14px;font-family:inherit;font-size:12px;transition:all .2s}.level-picker-options button.active{border-color:var(--accent-2);color:#fff;box-shadow:var(--neon-glow-2);text-shadow:var(--neon-glow-2);background:#ff007f26;font-weight:700}.mode-buttons{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.mode-buttons button{padding:14px 24px;font-size:14px}.mode-buttons button:disabled,.toolbar button:disabled,.level-picker-options button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none!important;color:var(--text-dim)!important;background:#0d081e66!important}.mode-buttons button:disabled:before,.toolbar button:disabled:before{background:var(--text-dim)!important}.score-strip{clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));background:#0d081ee6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 20px;display:flex;position:relative;box-shadow:0 4px 20px #00000080}.score-strip:before{content:"";background:linear-gradient(90deg, var(--accent) 0%, #4f33b580 50%, var(--accent-2) 100%);-webkit-mask-composite:xor;pointer-events:none;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.score-chip{color:var(--text-dim);clip-path:polygon(0 0,94% 0,100% 6px,100% 100%,6% 100%,0 calc(100% - 6px));padding:6px 14px;font-size:13px;font-weight:600;transition:all .2s}.score-chip.active{color:var(--accent);text-shadow:0 0 4px #00f0ff80;background:#00f0ff1f;font-weight:700;box-shadow:inset 0 0 8px #00f0ff33}.score-chip.active:before{content:"▶ ";color:var(--accent);font-size:10px}.score-chip .pending{color:var(--cyber-yellow);font-weight:700}.score-chip .tricks{opacity:.6}.phase-chip{text-transform:uppercase;letter-spacing:1.5px;color:var(--cyber-yellow);text-shadow:var(--cyber-yellow-glow);font-size:11px;font-weight:700}.player-zone{flex-direction:column;align-items:center;gap:8px;display:flex}.player-zone-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:1.5px;font-size:12px;font-weight:700}.player-zone.top .player-zone-label{order:2}.player-zone.top .hand-row{order:1}.hand-row{min-height:var(--card-height);flex-wrap:wrap;justify-content:center;gap:12px;padding:4px;display:flex}.hand-card-slot{width:var(--card-width);height:var(--card-height);transition:transform .2s cubic-bezier(.175,.885,.32,1.275);position:relative}.player-zone.bottom .hand-card-slot:hover{z-index:10;transform:translateY(-16px)}.marriage-badge{background:var(--accent-2);color:#fff;clip-path:polygon(0 0,90% 0,100% 4px,100% 100%,10% 100%,0 calc(100% - 4px));white-space:nowrap;box-shadow:var(--neon-glow-2);text-shadow:0 0 2px #fff;z-index:15;padding:3px 8px;font-size:9px;font-weight:900;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.table-zone{flex-wrap:wrap;justify-content:center;align-items:center;gap:60px;padding:20px 0;display:flex}.stock-area{clip-path:polygon(0 0,92% 0,100% 10px,100% 100%,8% 100%,0 calc(100% - 10px));background:#0d081e66;border:1px solid #4f33b54d;flex-direction:column;align-items:center;gap:8px;padding:10px 18px;display:flex}.stock-pile{min-height:var(--card-height);align-items:center;gap:16px;display:flex}.trump-label{color:var(--cyber-yellow);letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:700}.trick-area{min-height:var(--card-height);clip-path:polygon(0 0,94% 0,100% 10px,100% 100%,6% 100%,0 calc(100% - 10px));background:#0d081e4d;border:1px dashed #00f0ff33;align-items:center;gap:28px;padding:10px 24px;display:flex}.trick-slot{width:var(--card-width);flex-direction:column;align-items:center;gap:8px;display:flex}.trick-tag{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;font-size:10px}.trick-placeholder,.last-trick-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;font-size:12px;font-weight:700}.last-trick{opacity:.8;flex-direction:column;align-items:center;gap:8px;display:flex}.last-trick-cards{gap:12px;display:flex}.action-bar{clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));background:#0d081ef2;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:12px 20px;display:flex;position:relative;box-shadow:0 0 25px #00f0ff26}.action-bar:before{content:"";background:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);-webkit-mask-composite:xor;pointer-events:none;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.action-bar-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;font-size:11px}.declare-button{color:var(--cyber-yellow)!important;background:#fffe0014!important}.declare-button:before{background:var(--cyber-yellow)!important}.declare-button:hover:not(:disabled){font-weight:900;color:#000!important;text-shadow:none!important;background:#fffe0038!important;box-shadow:0 0 15px #fffe0073!important}.banner{text-align:center;padding:12px 24px;font-weight:700;position:relative}.banner.win{color:var(--accent);text-shadow:var(--neon-glow);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));background:#00f0ff1a;box-shadow:0 0 25px #00f0ff33}.banner.win:before{content:"";background:var(--accent);-webkit-mask-composite:xor;pointer-events:none;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));padding:1.5px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.banner.paywall{color:var(--text);clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));background:#ff007f14}.banner.paywall:before{content:"";background:var(--accent-2);-webkit-mask-composite:xor;pointer-events:none;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.play-count{color:var(--cyber-yellow);text-shadow:var(--cyber-yellow-glow);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:700}.license-badge{color:var(--cyber-yellow);text-shadow:var(--cyber-yellow-glow);white-space:nowrap;letter-spacing:.5px;font-weight:800}.license-loading{justify-content:center;align-items:center;min-height:100svh;display:flex}.license-loading-inner{color:var(--accent);letter-spacing:1.5px;flex-direction:column;align-items:center;gap:20px;font-weight:700;display:flex}.spinner{border:3px solid #00f0ff1a;border-top-color:var(--accent);border-right-color:var(--accent-2);border-radius:50%;width:50px;height:50px;animation:1s cubic-bezier(.53,.21,.29,.67) infinite spin;box-shadow:0 0 15px #00f0ff33}@keyframes spin{to{transform:rotate(360deg)}}.overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:60;background:#03010af2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay-inner{text-align:center;background:var(--panel-bg);clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px));flex-direction:column;align-items:center;gap:20px;max-width:460px;padding:36px;display:flex;position:relative;box-shadow:0 0 40px #00f0ff33}.overlay-inner:before{content:"";background:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);-webkit-mask-composite:xor;pointer-events:none;clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px));padding:1.5px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.overlay-inner p{color:var(--text);font-size:14px;line-height:1.6}.round-summary h2{color:var(--accent-2);text-shadow:var(--neon-glow-2);letter-spacing:1px;margin:0;font-size:24px}.round-winner{color:var(--accent);text-shadow:var(--neon-glow);font-size:18px;font-weight:700}.final-scores{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:13px}.card{width:var(--card-width);height:var(--card-height);-webkit-user-select:none;user-select:none;cursor:pointer;border-radius:6px;transition:all .2s cubic-bezier(.16,1,.3,1);position:absolute;top:0;left:0}.card-back{border:1.5px solid var(--accent);background:radial-gradient(circle,#150937 0%,#060212 100%);box-shadow:0 4px 10px #000000b3,0 0 12px #00f0ff4d}.card-back-pattern{border-radius:4px;width:100%;height:100%;position:relative;overflow:hidden}.card-face{border:1.5px solid var(--accent);background:#090d1ef2;flex-direction:column;justify-content:space-between;padding:6px 8px;transition:all .2s;display:flex;overflow:hidden;box-shadow:0 4px 10px #0009,0 0 10px #00f0ff40}.card-face.red{color:var(--accent-2);border-color:var(--accent-2);text-shadow:0 0 5px #ff007f99;box-shadow:0 4px 10px #0009,0 0 10px #ff007f40}.card-face.black{color:var(--accent);border-color:var(--accent);text-shadow:0 0 5px #00f0ff99;box-shadow:0 4px 10px #0009,0 0 10px #00f0ff40}.card-corner{flex-direction:column;align-items:center;width:fit-content;font-size:13px;font-weight:900;line-height:1.1;display:flex}.card-corner span:first-child{font-size:15px}.card-corner.bottom{align-self:flex-end;transform:rotate(180deg)}.card-pips{pointer-events:none;position:absolute;inset:22px 6px}.card-pip-symbol{opacity:.85;font-size:13px;line-height:1;position:absolute}.card-center-label{opacity:.9;justify-content:center;align-items:center;font-size:32px;font-weight:900;display:flex;position:absolute;inset:0}.pile-empty{width:var(--card-width);height:var(--card-height);color:#00f0ff4d;background:#00f0ff05;border:1.5px dashed #00f0ff66;border-radius:6px;justify-content:center;align-items:center;font-size:24px;display:flex;box-shadow:inset 0 0 10px #00f0ff0d}.pile-empty.small{font-size:15px}.pile-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:1.5px;font-size:11px;font-weight:700}.stock-back:after{content:"";opacity:.5;pointer-events:none;background:linear-gradient(#0000 50%,#00f0ff4d 50%) 0 0/100% 6px;position:absolute;inset:0}.confetti{pointer-events:none;z-index:70;position:fixed;inset:0;overflow:hidden}.confetti-piece{opacity:1;border-radius:2px;animation-name:confetti-fall;animation-timing-function:ease-in;animation-fill-mode:forwards;position:absolute;top:-12px}@keyframes confetti-fall{0%{opacity:1;transform:translate(0)rotate(0)}to{transform:translate(var(--drift), 110vh) rotate(var(--rotate));opacity:.3}}@media (width<=680px){:root{--card-width:60px;--card-height:84px}.card-pips{inset:15px 4px}.card-pip-symbol{font-size:9px}.card-center-label{font-size:22px}.card-corner{font-size:9px}.card-corner span:first-child{font-size:11px}.toolbar h1{font-size:18px}.table-zone{gap:20px;padding:10px 0}.hand-row{gap:8px}.toolbar{padding:10px 16px}.score-strip{padding:8px 12px;font-size:11px}}
