:root{--table-bg:#05020f;--table-bg-2:#170a35;--panel-bg:#100a26e0;--panel-border:#3a2a6d;--panel-border-bright:#5d45a9;--text:#eafcff;--text-dim:#8fa3d6;--accent:#00f0ff;--accent-2:#ff2bd6;--cyber-yellow:#ffd76a;--neon-glow:0 0 6px #00f0ff99, 0 0 16px #00f0ff59;--neon-glow-2:0 0 6px #ff2bd699, 0 0 16px #ff2bd659;--cyber-yellow-glow:0 0 8px #ffd76a80;--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:15px/145% Segoe UI,system-ui,-apple-system,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--table-bg);min-height:100svh;margin:0}#root{min-height:100svh}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-neon{0%,to{opacity:.8}50%{opacity:1}}@keyframes confetti-fall{0%{opacity:1;transform:translate(0)rotate(0)}to{transform:translate(var(--drift), 110vh) rotate(var(--rotate));opacity:.3}}:root{--card-width:84px;--card-height:120px}.board{background:repeating-linear-gradient(0deg, #00f0ff0a 0, #00f0ff0a 1px, transparent 1px, transparent 40px), repeating-linear-gradient(90deg, #00f0ff0a 0, #00f0ff0a 1px, transparent 1px, transparent 40px), radial-gradient(ellipse at 50% 20%, var(--table-bg-2) 0%, var(--table-bg) 75%);flex-direction:column;gap:16px;min-height:100svh;padding:16px 24px 50px;display:flex;position:relative}.toolbar{background:var(--panel-bg);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:12px 22px;display:flex;box-shadow:0 4px 20px #0009,0 0 20px #00f0ff1f}.toolbar h1{color:var(--accent);letter-spacing:2px;text-transform:uppercase;text-shadow:var(--neon-glow);margin:0;font-size:22px;font-weight:800}.title-accent{color:var(--accent-2);text-shadow:var(--neon-glow-2)}.toolbar-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.match-score{color:var(--cyber-yellow);text-shadow:var(--cyber-yellow-glow);font-variant-numeric:tabular-nums;letter-spacing:.5px;white-space:nowrap;font-size:14px;font-weight:700}.round-number{color:var(--text-dim);letter-spacing:1px;font-size:13px;font-weight:700}.toolbar button,.action-bar button,.mode-buttons button,.overlay-inner button,.level-picker-options button{font:inherit;border:1px solid var(--accent);color:var(--text);cursor:pointer;letter-spacing:.5px;background:#00f0ff14;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:700;transition:background .18s,box-shadow .18s,transform .1s,border-color .18s}.toolbar button:hover:not(:disabled),.action-bar button:hover:not(:disabled),.mode-buttons button:hover:not(:disabled),.overlay-inner button:hover:not(:disabled),.level-picker-options button:hover:not(:disabled){box-shadow:var(--neon-glow);background:#00f0ff38;transform:translateY(-1px)}.toolbar button:disabled,.action-bar button:disabled,.mode-buttons button:disabled,.level-picker-options button:disabled{opacity:.4;cursor:default;background:#00f0ff0a;transform:none;box-shadow:none!important}.buy-button{border-color:var(--accent-2)!important;color:#fff!important;background:#ff2bd61f!important}.buy-button:hover:not(:disabled){box-shadow:var(--neon-glow-2)!important;background:#ff2bd647!important}.zoom-control-container{border:1px solid var(--panel-border-bright);background:#100a26e6;border-radius:8px;align-items:center;padding:2px;display:flex;position:relative;box-shadow:0 2px 8px #0006}.zoom-btn{cursor:pointer;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;color:var(--accent)!important;background:0 0!important;border:none!important;border-radius:4px!important;padding:0!important;font-size:16px!important;line-height:1!important;display:flex!important}.zoom-btn:hover:not(:disabled){box-shadow:var(--neon-glow)!important;background:#00f0ff33!important}.zoom-btn:disabled{opacity:.3!important;cursor:default!important}.zoom-badge-btn{cursor:pointer;font-variant-numeric:tabular-nums;align-items:center;gap:4px;height:28px;transition:all .15s;color:var(--accent)!important;background:0 0!important;border:none!important;border-radius:4px!important;padding:2px 8px!important;font-size:12px!important;font-weight:800!important;display:flex!important}.zoom-badge-btn:hover{text-shadow:var(--neon-glow);background:#00f0ff26!important}.zoom-caret{opacity:.8;font-size:10px}.zoom-dropdown-backdrop{z-index:90;position:fixed;inset:0}.zoom-dropdown-menu{border:1px solid var(--accent);box-shadow:0 10px 30px #000c, var(--neon-glow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;background:#100a26fa;border-radius:10px;flex-direction:column;gap:4px;min-width:160px;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.zoom-dropdown-title{color:var(--accent-2);letter-spacing:1px;text-transform:uppercase;border-bottom:1px solid var(--panel-border);padding:4px 8px;font-size:10px;font-weight:800}.zoom-preset-item{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;width:100%;transition:all .15s;color:var(--text)!important;background:0 0!important;border:1px solid #0000!important;border-radius:6px!important;padding:6px 10px!important;font-size:12px!important;display:flex!important}.zoom-preset-item.active{border-color:var(--accent)!important;color:var(--accent)!important;background:#00f0ff33!important;font-weight:800!important}.zoom-reset-btn{cursor:pointer;width:100%;margin-top:4px;transition:all .15s;color:var(--text-dim)!important;border:1px dashed var(--panel-border)!important;background:#ffffff0d!important;border-radius:6px!important;padding:6px 8px!important;font-size:11px!important;font-weight:700!important}.zoom-reset-btn:hover{color:#fff!important;border-color:var(--accent)!important;background:#00f0ff26!important}.board-scaler{transform-origin:top;flex-direction:column;gap:16px;width:100%;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.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:520px;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{font:inherit;border:1px solid var(--panel-border-bright);color:var(--accent);text-align:center;background:#100a26e6;border-radius:8px;outline:none;padding:10px 16px;font-weight:700;transition:all .2s}.name-inputs input:focus{border-color:var(--accent);background:#00f0ff14;box-shadow:0 0 12px #00f0ff4d}.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;font-weight:700}.level-picker-options{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.level-picker-options button{border-color:var(--panel-border);color:var(--text-dim);background:#100a26b3}.level-picker-options button.active{border-color:var(--accent-2);background:var(--accent-2);color:#1a0018;box-shadow:var(--neon-glow-2);font-weight:800}.mode-buttons{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.mode-buttons button{padding:12px 24px;font-size:14px}.score-strip{background:var(--panel-bg);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 20px;display:flex;box-shadow:0 4px 14px #0006,0 0 15px #00f0ff14}.score-chip{color:var(--text-dim);background:#00f0ff0a;border:1px solid #0000;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .2s}.score-chip.active{color:var(--accent);border-color:var(--accent);box-shadow:var(--neon-glow);text-shadow:0 0 4px #00f0ff99;background:#00f0ff1f;font-weight:700}.phase-chip{text-transform:uppercase;letter-spacing:1.5px;color:var(--cyber-yellow);text-shadow:var(--cyber-yellow-glow);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.shibari-label{text-shadow:var(--neon-glow-2);margin-left:6px;font-weight:800;color:var(--accent-2)!important}.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;border:1px solid var(--panel-border);background:#100a26b3;border-radius:12px;padding:4px 14px;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:6px 12px;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{background:radial-gradient(circle,#00f0ff0d 0%,#ff2bd608 50%,#0000 70%);border:1px solid #3a2a6d66;border-radius:20px;flex-wrap:wrap;justify-content:center;align-items:center;gap:40px;padding:24px 20px;display:flex;position:relative}.stock-area{border:1px solid var(--panel-border);background:#100a2699;border-radius:10px;flex-direction:column;align-items:center;gap:8px;padding:10px 16px;display:flex;box-shadow:0 4px 12px #0006}.stock-pile{min-height:var(--card-height);width:var(--card-width);justify-content:center;align-items:center;display:flex;position:relative}.trump-label{color:var(--cyber-yellow);letter-spacing:1px;font-size:11px;font-weight:700}.trick-area{min-height:var(--card-height);background:#100a2680;border:1.5px dashed #00f0ff4d;border-radius:12px;justify-content:center;align-items:center;min-width:240px;padding:12px 24px;display:flex}.table-cards-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding-bottom:22px;display:flex;position:relative}.table-card-slot{width:var(--card-width);height:var(--card-height);position:relative}.trick-tag{color:var(--accent);text-shadow:var(--neon-glow);text-transform:uppercase;letter-spacing:1px;white-space:nowrap;font-size:11px;font-weight:700;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.trick-placeholder{color:var(--text-dim);letter-spacing:1px;opacity:.7;font-size:13px;font-weight:600}.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{background:var(--panel-bg);border:1px solid var(--accent);box-shadow:0 4px 20px #0009, var(--neon-glow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;padding:12px 24px;display:flex}.action-bar-label{color:var(--text);letter-spacing:1px;font-size:13px;font-weight:700}.play-button-action{border-color:var(--accent)!important;color:#fff!important;box-shadow:var(--neon-glow)!important;background:#00f0ff2e!important;font-weight:800!important}.play-button-action:hover:not(:disabled){background:#00f0ff59!important}.declare-button{border-color:var(--cyber-yellow)!important;color:var(--cyber-yellow)!important;background:#ffd76a26!important;font-weight:800!important}.declare-button:hover:not(:disabled){box-shadow:var(--cyber-yellow-glow)!important;background:#ffd76a4d!important}.exchange-bar{text-align:center;padding:16px 24px}.banner{text-align:center;border:1px solid #0000;border-radius:8px;padding:12px 22px;font-weight:700}.banner.win{border-color:var(--accent);color:var(--accent);text-shadow:var(--neon-glow);box-shadow:var(--neon-glow);background:#00f0ff1f}.banner.paywall{border-color:var(--accent-2);color:var(--text);background:#ff2bd61f}.play-count{color:var(--text-dim);font-variant-numeric:tabular-nums;white-space:nowrap}.license-badge{color:#ffd76a;text-shadow:0 0 8px #ffd76a80;white-space:nowrap;font-weight:700}.license-loading{justify-content:center;align-items:center;min-height:100svh;display:flex}.license-loading-inner{color:var(--text-dim);letter-spacing:.04em;flex-direction:column;align-items:center;gap:16px;display:flex}.spinner{border:4px solid #00f0ff33;border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:60;background:#03010ae6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay-inner{text-align:center;background:var(--panel-bg);border:1px solid var(--panel-border-bright);border-radius:16px;flex-direction:column;align-items:center;gap:20px;max-width:460px;padding:36px;display:flex;box-shadow:0 0 40px #00f0ff33}.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:8px;transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s;position:absolute;top:0;left:0}.card-back{border:2px solid var(--accent);background:linear-gradient(135deg,#170a35,#0a0420);box-shadow:0 2px 6px #00000080,0 0 10px #00f0ff59}.card-back-pattern{background-image:repeating-linear-gradient(45deg,#00f0ff1f 0 2px,#0000 2px 10px),repeating-linear-gradient(-45deg,#ff2bd614 0 2px,#0000 2px 10px);border-radius:6px;width:100%;height:100%}.card-face{border:1px solid var(--accent);background:#eef4fb;flex-direction:column;justify-content:space-between;padding:4px 6px;transition:transform .1s,box-shadow .1s;display:flex;overflow:hidden;box-shadow:0 2px 6px #00000080,0 0 8px #00f0ff40}.card-face.selected{outline:3px solid var(--accent-2);outline-offset:1px;box-shadow:0 6px 12px #0000008c, var(--neon-glow-2);transform:translateY(-4px)}.card-face.red{color:#e0116f}.card-face.black{color:#1b1330}.card-face.joker{color:#7928ca}.card-corner{flex-direction:column;align-items:center;width:fit-content;font-size:16px;font-weight:700;line-height:1;display:flex}.card-corner.bottom{align-self:flex-end;transform:rotate(180deg)}.card-pips{pointer-events:none;position:absolute;inset:26px 10px}.card-pip-symbol{opacity:.9;font-size:17px;line-height:1;position:absolute}.card-center-label{opacity:.85;justify-content:center;align-items:center;font-size:36px;font-weight:700;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:8px;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{border-radius:2px;animation-name:confetti-fall;animation-timing-function:ease-in;animation-fill-mode:forwards;position:absolute;top:-12px}.revolution-grid-overlay{pointer-events:none;z-index:1;background:radial-gradient(circle,#ff005514 0%,#f053 100%);border:2px solid #f056;animation:2s ease-in-out infinite pulse-neon;position:absolute;inset:0;box-shadow:inset 0 0 60px #ff00554d}.revolution-badge{background:var(--accent-2);color:#fff;box-shadow:var(--neon-glow-2);text-shadow:0 0 4px #fff;letter-spacing:1px;border-radius:6px;padding:4px 12px;font-size:12px;font-weight:800}.console-panel{border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;background:#0a0618d9;border-radius:10px;align-self:center;width:100%;max-width:580px;padding:10px 16px;box-shadow:0 4px 15px #00000080,inset 0 0 10px #00f0ff0d}.console-header{color:var(--accent-2);text-shadow:var(--neon-glow-2);letter-spacing:1.5px;margin-bottom:6px;font-size:11px;font-weight:800}.console-body{flex-direction:column;gap:4px;display:flex}.console-line{color:#38ef7d;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 0 3px #38ef7d66;font-family:Consolas,Fira Code,Courier New,monospace;font-size:12px;overflow:hidden}.joker-label{letter-spacing:1px;font-weight:800;font-size:20px!important}@media (width<=680px){:root{--card-width:60px;--card-height:84px}.card-pips{inset:17px 6px}.card-pip-symbol{font-size:12px}.card-center-label{font-size:24px}.card-corner{font-size:11px}.joker-label{font-size:14px!important}.toolbar h1{font-size:18px}.table-zone{gap:16px;padding:14px 10px}.hand-row{gap:8px}.toolbar{padding:10px 16px}.score-strip{padding:8px 12px;font-size:11px}}.board-scaler{flex-direction:column;align-items:center;width:100%;display:flex}.zoom-control-container{border:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;background:#0a0618d9;border-radius:8px;align-items:center;gap:4px;padding:3px 6px;display:inline-flex;position:relative;box-shadow:0 2px 8px #0006}.zoom-btn{width:26px;height:26px;color:var(--accent);cursor:pointer;background:#00f0ff14;border:1px solid #00f0ff40;border-radius:5px;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:14px;font-weight:700;line-height:1;transition:all .15s;display:inline-flex}.zoom-btn:hover:not(:disabled){border-color:var(--accent);background:#00f0ff40;transform:scale(1.05);box-shadow:0 0 8px #00f0ff66}.zoom-btn:disabled{opacity:.35;cursor:not-allowed;color:#666;border-color:#ffffff1a}.zoom-badge-btn{color:#e0e6ed;cursor:pointer;white-space:nowrap;background:#ffffff0d;border:1px solid #ffffff26;border-radius:5px;align-items:center;gap:4px;padding:3px 8px;font-family:inherit;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.zoom-badge-btn:hover{border-color:var(--accent);color:var(--accent);background:#00f0ff26}.zoom-badge-caret{opacity:.7;font-size:9px}.zoom-dropdown-menu{border:1px solid var(--accent);box-shadow:0 8px 24px #000000b3, var(--neon-glow);z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0e0a20f5;border-radius:8px;flex-direction:column;gap:4px;min-width:140px;padding:6px;animation:.15s ease-out fadeInDown;display:flex;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}@keyframes fadeInDown{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}.zoom-preset-item{color:#d0d8e2;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;justify-content:space-between;align-items:center;width:100%;padding:6px 10px;font-family:inherit;font-size:12px;transition:all .15s;display:flex}.zoom-preset-item:hover{color:var(--accent);background:#00f0ff26}.zoom-preset-item.active{color:var(--accent);background:#00f0ff40;font-weight:700;box-shadow:inset 0 0 6px #00f0ff4d}.zoom-reset-btn{color:var(--accent-2);cursor:pointer;background:#ff2bd61a;border:1px solid #ff2bd64d;border-radius:4px;justify-content:center;align-items:center;padding:3px 6px;font-size:11px;transition:all .15s;display:inline-flex}.zoom-reset-btn:hover{border-color:var(--accent-2);background:#ff2bd640;box-shadow:0 0 8px #ff2bd666}.start-zoom-wrapper{justify-content:center;align-items:center;gap:10px;margin-top:16px;display:flex}
