:root{color-scheme:dark;--bg-0: #07070d;--bg-1: #0e0e18;--bg-2: #161628;--bg-3: #1f1f3a;--line: rgba(255, 215, 0, .18);--text: #f4f4f7;--text-dim: #9a9ab0;--gold: #FFD700;--gold-dim: #b79600;--neon-pink: #ff3ea5;--neon-cyan: #00e5ff;--neon-purple: #b794ff;--danger: #ff5470;--success: #4ade80;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100vh;background:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(255,215,0,.18),transparent 60%),radial-gradient(ellipse 60% 40% at 90% 20%,rgba(255,62,165,.1),transparent 60%),radial-gradient(ellipse 60% 40% at 10% 80%,rgba(0,229,255,.1),transparent 60%),var(--bg-0);background-attachment:fixed;color:var(--text)}#root{max-width:1200px;margin:0 auto;padding:32px 20px 96px}a{color:var(--neon-cyan)}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}button:disabled{cursor:not-allowed;opacity:.4}.app-hero{text-align:center;margin-bottom:40px}.app-hero h1{margin:0;font-size:clamp(34px,6vw,60px);font-weight:800;letter-spacing:-1px;background:linear-gradient(100deg,var(--gold) 0%,#fff 35%,var(--neon-pink) 75%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 6px 30px rgba(255,215,0,.25))}.app-hero .tagline{margin:12px auto 0;color:var(--text-dim);font-size:16px;max-width:640px}.app-hero .meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:#ffffff0d;border:1px solid var(--line);font-size:12px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px}.chip.gold{background:linear-gradient(135deg,gold,#b79600);color:#1a1300;border:none;font-weight:700}.standings-list{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}.standing-card{background:var(--bg-1);border:1px solid rgba(255,255,255,.06);border-radius:18px;overflow:hidden;transition:transform .15s,border-color .15s}.standing-card:hover{transform:translateY(-1px);border-color:#ffd70033}.standing-card.rank-1{border:1px solid rgba(255,215,0,.4);background:linear-gradient(180deg,rgba(255,215,0,.1),transparent 60%),var(--bg-1);box-shadow:0 12px 32px #ffd7001a}.standing-card.rank-2{border:1px solid rgba(220,220,220,.3);background:linear-gradient(180deg,rgba(220,220,220,.06),transparent 60%),var(--bg-1)}.standing-card.rank-3{border:1px solid rgba(205,127,50,.3);background:linear-gradient(180deg,rgba(205,127,50,.06),transparent 60%),var(--bg-1)}.standing-head{display:grid;grid-template-columns:44px 56px 1fr auto;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.05)}.rank-badge{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:var(--text-dim)}.standing-card.rank-1 .rank-badge{background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:#1a1300;border:none;box-shadow:0 6px 18px #ffd70059}.standing-card.rank-2 .rank-badge{background:linear-gradient(135deg,#e2e2e2,#888);color:#1a1a1a;border:none}.standing-card.rank-3 .rank-badge{background:linear-gradient(135deg,#cd7f32,#8a4d1e);color:#fff7e0;border:none}.player-avatar.lg{width:44px;height:44px;font-size:16px;border:2px solid rgba(255,255,255,.08)}.player-avatar.sm{width:26px;height:26px;font-size:11px}.player-meta{display:flex;flex-direction:column;justify-content:center;min-width:0}.player-name-row{display:flex;align-items:center;gap:10px}.player-name{font-size:18px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crown{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:#1a1300}.player-sub{font-size:12px;color:var(--text-dim);margin-top:2px}.standing-total{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.standing-total strong{font-size:32px;font-weight:800;color:var(--gold);line-height:1;letter-spacing:-1px}.standing-total span{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim);font-weight:700}.timeline{display:flex;flex-direction:column}.timeline-row{display:grid;grid-template-columns:64px 1fr 180px 90px;align-items:center;gap:14px;padding:12px 20px;border-top:1px solid rgba(255,255,255,.03);transition:background .1s}.timeline-row.empty{opacity:.5}.timeline-row:hover{background:#ffffff04}.stage-num{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim);background:#ffffff0a;padding:4px 8px;border-radius:6px;text-align:center}.game-name{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.position-slot{display:flex;justify-content:flex-start}.points-slot{display:flex;justify-content:flex-end;text-align:right}.chip-pos{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.5px;line-height:1.2}.chip-pos.gold{background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:#1a1300}.chip-pos.silver{background:linear-gradient(135deg,#e2e2e2,#888);color:#1a1a1a}.chip-pos.bronze{background:linear-gradient(135deg,#cd7f32,#8a4d1e);color:#fff7e0}.chip-pos.gray{background:#ffffff0f;color:var(--text-dim);border:1px solid rgba(255,255,255,.08)}.chip-pos.winner{background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:#1a1300}.chip-pos.loser{background:#ffffff0f;color:var(--text-dim);border:1px solid rgba(255,255,255,.08)}.team-badge{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.team-badge.a{background:#00e5ff2e;color:#00e5ff;border:1px solid rgba(0,229,255,.35)}.team-badge.b{background:#ff3ea52e;color:#ff3ea5;border:1px solid rgba(255,62,165,.35)}.team-badge.won{box-shadow:0 0 0 2px #ffd70073}.team-badge.lost{opacity:.85}.missing{color:var(--text-dim);font-size:12px;font-style:italic}.points-value{display:inline-flex;align-items:baseline;gap:4px;font-size:14px;color:var(--text-dim)}.points-value strong{font-size:22px;font-weight:800;color:var(--text)}.points-value.gold strong{color:var(--gold)}.points-value.silver strong{color:#e2e2e2}.points-value.bronze strong{color:#cd7f32}.points-value.gray strong{color:var(--text-dim)}.points-value.muted,.points-value.muted strong{color:#ffffff2e}.compare-block{margin-top:20px;background:var(--bg-1);border:1px solid rgba(255,255,255,.06);border-radius:16px;overflow:hidden}.compare-block>summary{cursor:pointer;list-style:none;padding:14px 20px;font-size:14px;font-weight:700;color:var(--text);display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;user-select:none}.compare-block>summary::-webkit-details-marker{display:none}.compare-block>summary:after{content:"▾";font-size:12px;color:var(--text-dim);transition:transform .15s}.compare-block:not([open])>summary:after{transform:rotate(-90deg)}.compare-block>summary:hover{background:#ffffff05}.compare-table-wrap{padding:0 12px 14px;overflow-x:auto}.compare-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.compare-table th{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim);padding:10px 8px;text-align:center;border-bottom:1px solid rgba(255,255,255,.05)}.compare-table td{padding:10px 6px;text-align:center;border-bottom:1px solid rgba(255,255,255,.03);vertical-align:middle}.compare-table .name-cell{text-align:left;font-weight:600;padding-left:12px}.compare-table .td-inner{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.compare-table .name-inner{gap:8px}.compare-table tr:last-child td{border-bottom:0}.compare-table tr.rank-1 td{background:#ffd7000d}.compare-table tr.rank-2 td{background:#dcdcdc08}.compare-table tr.rank-3 td{background:#cd7f3208}.rank-dot{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;font-weight:800;font-size:12px;background:#ffffff0f;color:var(--text-dim)}.rank-dot.r1{background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:#1a1300}.rank-dot.r2{background:linear-gradient(135deg,#e2e2e2,#888);color:#1a1a1a}.rank-dot.r3{background:linear-gradient(135deg,#cd7f32,#8a4d1e);color:#fff7e0}.cell-empty{color:#ffffff2e}.cell-pos{text-align:center}.cell-pos .td-inner{flex-direction:column;gap:2px;justify-content:center}.cell-pos strong{font-size:20px;font-weight:800;line-height:1}.cell-pos small{font-size:10px;color:var(--text-dim);letter-spacing:.5px}.cell-pos.gold strong{color:var(--gold)}.cell-pos.silver strong{color:#e2e2e2}.cell-pos.bronze strong{color:#cd7f32}.cell-pos.gray strong{color:var(--text-dim)}.cell-team{text-align:center}.cell-team .td-inner{flex-direction:column;gap:2px;justify-content:center}.cell-team strong{font-weight:800;font-size:18px;line-height:1}.cell-team small{font-size:10px;color:var(--text-dim);letter-spacing:.5px}.cell-team.a strong{color:#00e5ff}.cell-team.b strong{color:#ff3ea5}.cell-team.won{box-shadow:inset 0 0 0 2px #ffd7004d}.cell-team.lost{opacity:.75}.cell-total strong{font-size:22px;font-weight:800;color:var(--gold)}@media (max-width: 700px){.standing-head{grid-template-columns:36px 44px 1fr;grid-template-rows:auto auto;gap:10px}.standing-total{grid-column:2 / 4;grid-row:2;flex-direction:row;align-items:baseline;gap:6px}.standing-total strong{font-size:22px}.timeline-row{grid-template-columns:56px 1fr 80px;gap:8px;padding:10px 14px}.timeline-row .position-slot{display:none}.game-name{font-size:13px}.compare-table-wrap{overflow-x:visible;padding:0 4px 12px}.compare-table,.compare-table thead,.compare-table tbody,.compare-table tr,.compare-table td{display:block;width:100%}.compare-table thead{position:absolute;left:-9999px;top:-9999px}.compare-table tr{background:var(--bg-2);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:6px 4px;margin-bottom:10px}.compare-table tr.rank-1{border-color:#ffd70066;background:linear-gradient(180deg,rgba(255,215,0,.06),var(--bg-2))}.compare-table tr.rank-2{border-color:#dcdcdc40}.compare-table tr.rank-3{border-color:#cd7f3240}.compare-table td{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border:none;border-bottom:1px solid rgba(255,255,255,.03);text-align:right;min-height:38px}.compare-table tr td:last-child{border-bottom:none;padding-top:10px;padding-bottom:10px;background:#ffd7000f;border-radius:8px;margin:4px 6px}.compare-table td:before{content:attr(data-label);font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim);margin-right:auto;text-align:left}.compare-table .name-cell{font-size:15px;font-weight:700;color:var(--text);padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.05)}.compare-table .name-cell:before{content:attr(data-label)}.compare-table .rank-dot{width:26px;height:26px}.compare-table .cell-pos .td-inner,.compare-table .cell-team .td-inner{flex-direction:row;gap:8px;justify-content:flex-end}.compare-table .cell-pos strong,.compare-table .cell-team strong{font-size:18px}.compare-table .cell-total strong{font-size:22px}}.standings{margin:24px 0 48px;padding:28px;border-radius:22px;background:linear-gradient(180deg,#ffd7000f,#ffd70000),var(--bg-1);border:1px solid var(--line);position:relative;overflow:hidden}.standings:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;pointer-events:none;border-radius:inherit;background:linear-gradient(120deg,transparent 30%,rgba(255,215,0,.18) 50%,transparent 70%);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;opacity:.5}.standings h2{margin:0 0 18px;font-size:22px;letter-spacing:.5px}.standings-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:0;border-radius:14px;background:var(--bg-2);overflow:hidden}.standings-grid .cell{padding:14px 12px;border-bottom:1px solid rgba(255,255,255,.04);border-right:1px solid rgba(255,255,255,.04);font-size:14px;text-align:center;color:var(--text-dim);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:56px}.standings-grid .cell.head{background:#ffd7000f;color:var(--gold);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:1.5px}.standings-grid .cell.name{text-align:left;align-items:flex-start;flex-direction:row;gap:10px;font-weight:600;color:var(--text)}.standings-grid .cell.total{font-size:22px;font-weight:800;color:var(--gold)}.standings-grid .empty{color:#ffffff26}.standings-grid .pos-1{color:var(--gold);font-weight:700}.standings-grid .pos-2{color:#cfd8dc;font-weight:700}.standings-grid .pos-3{color:#cd7f32;font-weight:700}.standings-grid .pos-4{color:#fff6}.standings-grid .rank-medal{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-weight:800;font-size:13px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1)}.standings-grid .rank-medal.r1{background:linear-gradient(135deg,var(--gold),#b79600);color:#1a1300;border:none}.standings-grid .rank-medal.r2{background:linear-gradient(135deg,#e2e2e2,#888);color:#1a1a1a;border:none}.standings-grid .rank-medal.r3{background:linear-gradient(135deg,#cd7f32,#8a4d1e);color:#fff7e0;border:none}.player-avatar{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;color:#111;flex-shrink:0}.podium{display:flex;justify-content:center;align-items:flex-end;gap:12px;margin:12px 0 24px}.podium-step{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:14px 12px 8px;border-radius:16px 16px 6px 6px;background:linear-gradient(180deg,var(--bg-3),var(--bg-2));border:1px solid rgba(255,255,255,.08);min-width:110px;text-align:center}.podium-step.gold{height:160px;background:linear-gradient(180deg,rgba(255,215,0,.16),var(--bg-1));border-color:#ffd70066}.podium-step.silver{height:130px;background:linear-gradient(180deg,rgba(220,220,220,.1),var(--bg-1));border-color:#dcdcdc4d}.podium-step.bronze{height:100px;background:linear-gradient(180deg,rgba(205,127,50,.14),var(--bg-1));border-color:#cd7f324d}.podium-step .pl{font-size:14px;font-weight:800;margin-bottom:4px;color:var(--text-dim)}.podium-step .name{font-size:15px;font-weight:700;margin-bottom:4px}.podium-step .pts{font-size:22px;font-weight:800;color:var(--gold)}.podium-step.empty .name,.podium-step.empty .pts{color:#fff3}.section-title{display:flex;align-items:center;gap:12px;margin:32px 0 16px}.section-title h2{margin:0;font-size:22px}.section-title .badge{font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:#ffffff0f;border:1px solid var(--line);color:var(--gold)}.game-card{border-radius:20px;padding:22px;margin-bottom:16px;background:var(--bg-1);border:1px solid rgba(255,255,255,.06);transition:border-color .2s,transform .15s}.game-card:hover{border-color:#ffd7004d}.game-card.complete{border-color:#4ade8066}.game-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.game-head h3{margin:0;font-size:22px;letter-spacing:-.4px}.game-head .subtitle{margin:4px 0 0;color:var(--text-dim);font-size:13px;text-transform:uppercase;letter-spacing:1px}.game-head .stage{font-weight:800;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:#ffd7001a;color:var(--gold)}.game-meta{display:flex;gap:14px;margin-top:14px;flex-wrap:wrap;font-size:13px;color:var(--text-dim)}.game-meta strong{color:var(--text)}.game-desc{margin-top:12px;color:var(--text-dim);font-size:14px;line-height:1.55}.game-rules{margin-top:14px;padding:14px 16px;background:#00000040;border-radius:12px;border:1px solid rgba(255,255,255,.04);font-size:13px;line-height:1.65;color:var(--text-dim);white-space:pre-line}.game-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:11px;letter-spacing:1px;text-transform:uppercase;font-weight:700}.game-status.done{background:#4ade801f;color:var(--success)}.game-status.pending{background:#ffd70014;color:var(--gold)}.game-status .dot{width:8px;height:8px;border-radius:50%;background:currentColor}.player-form{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}.player-form input[type=text]{flex:1;min-width:180px;padding:12px 16px;background:var(--bg-2);border:1px solid rgba(255,255,255,.08);border-radius:12px;color:var(--text);font-size:14px}.player-form input[type=color]{width:44px;height:44px;padding:4px;border-radius:12px;background:var(--bg-2);border:1px solid rgba(255,255,255,.08);cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:12px;font-weight:700;font-size:14px;letter-spacing:.5px;background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:#1a1300;transition:transform .1s,box-shadow .15s,filter .15s}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 28px #ffd70040}.btn.secondary{background:var(--bg-3);color:var(--text)}.btn.danger{background:linear-gradient(135deg,var(--danger),#aa1f3c);color:#fff}.btn.small{padding:8px 14px;font-size:12px}.position-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:18px}.pos-cell{display:flex;flex-direction:column;gap:8px;padding:14px;background:var(--bg-2);border:1px solid rgba(255,255,255,.06);border-radius:14px}.pos-cell .pos-label{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim)}.pos-cell.p1 .pos-label{color:var(--gold)}.pos-cell.p2 .pos-label{color:#e2e2e2}.pos-cell.p3 .pos-label{color:#cd7f32}.pos-cell.p4 .pos-label{color:#ffffff80}.pos-cell select{width:100%;padding:10px 12px;border-radius:10px;background:var(--bg-3);border:1px solid rgba(255,255,255,.08);color:var(--text);font-size:14px;font-weight:600;cursor:pointer}.pos-cell .team-toggle{display:inline-flex;gap:6px;margin-top:4px}.pos-cell .team-toggle button{flex:1;padding:6px 10px;font-size:12px;font-weight:700;border-radius:8px;background:var(--bg-3);color:var(--text-dim);border:1px solid rgba(255,255,255,.06);transition:.15s}.pos-cell .team-toggle button.active.a{background:var(--neon-cyan);color:#001a1a;border-color:var(--neon-cyan)}.pos-cell .team-toggle button.active.b{background:var(--neon-pink);color:#1a0011;border-color:var(--neon-pink)}.pos-cell .points{font-size:13px;color:var(--text-dim);font-weight:600}.pos-cell .points strong{color:var(--gold)}.player-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.player-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);font-size:13px;font-weight:600}.player-chip .dot{width:10px;height:10px;border-radius:50%}.player-chip button.x{margin-left:4px;color:var(--text-dim);font-size:16px;line-height:1}.player-chip button.x:hover{color:var(--danger)}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.muted{color:var(--text-dim)}.center{text-align:center}.right{margin-left:auto}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.kbd{font-family:JetBrains Mono,Menlo,monospace;font-size:11px;background:#ffffff0d;padding:2px 6px;border-radius:6px;color:var(--text-dim);border:1px solid rgba(255,255,255,.08)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:12px 22px;background:linear-gradient(135deg,var(--neon-cyan),#008f9e);color:#001a1a;border-radius:999px;font-weight:700;font-size:14px;box-shadow:0 18px 40px #00e5ff59;z-index:1000;animation:toast-in .25s ease-out}.toast.danger{background:linear-gradient(135deg,var(--danger),#aa1f3c);color:#fff;box-shadow:0 18px 40px #ff547059}@keyframes toast-in{0%{transform:translate(-50%,20px);opacity:0}to{transform:translate(-50%);opacity:1}}.skel{background:linear-gradient(90deg,var(--bg-2) 0%,var(--bg-3) 50%,var(--bg-2) 100%);background-size:200% 100%;animation:shimmer 1.6s linear infinite;border-radius:12px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 700px){.standings-grid{grid-template-columns:1.5fr 1fr}.standings-grid .cell.game-col{display:none}.podium-step{min-width:80px}}.confetti{pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:radial-gradient(circle at 20% 30%,rgba(255,215,0,.18),transparent 30%),radial-gradient(circle at 70% 60%,rgba(255,62,165,.18),transparent 30%),radial-gradient(circle at 50% 90%,rgba(0,229,255,.18),transparent 30%);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.team-shuffle{margin-top:6px}.shuffle-stage{position:relative;height:440px;margin:10px 0 12px;border-radius:20px;background:radial-gradient(circle at 20% 70%,rgba(0,229,255,.08),transparent 35%),radial-gradient(circle at 80% 70%,rgba(255,62,165,.08),transparent 35%),linear-gradient(180deg,#ffffff05,#fff0 60%);border:1px solid rgba(255,255,255,.06);overflow:hidden}.team-target{position:absolute;bottom:90px;width:220px;height:160px;border:2px dashed rgba(255,255,255,.12);border-radius:16px;display:flex;align-items:flex-start;justify-content:center;padding-top:14px;font-size:11px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;pointer-events:none;opacity:.65;transition:opacity .4s,border-color .4s}.team-target-a{left:calc(50% - 280px);color:var(--neon-cyan);border-color:#00e5ff40}.team-target-b{right:calc(50% - 280px);color:var(--neon-pink);border-color:#ff3ea540}.shuffle-stage:has(.shuffle-card.dealt-a) .team-target-a,.shuffle-stage:has(.shuffle-card.dealt-b) .team-target-b{opacity:1;border-style:solid}.shuffle-deck{position:absolute;top:0;right:0;bottom:0;left:0}.shuffle-card{position:absolute;left:50%;top:70px;width:84px;height:116px;margin-left:-42px;border-radius:14px;background:linear-gradient(135deg,var(--bg-3),var(--bg-1));border:2px solid var(--card-color, rgba(255, 215, 0, .6));box-shadow:0 12px 30px #00000080,inset 0 0 16px #ffd70014;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text);font-weight:800;pointer-events:auto;-webkit-user-select:none;user-select:none;transition:transform 1s cubic-bezier(.34,1.56,.64,1),top 1s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.shuffle-card:hover{box-shadow:0 14px 36px #0009,inset 0 0 18px #ffd70026,0 0 0 2px #ffd7004d}.shuffle-card.winning-team{box-shadow:0 16px 40px #ffd70073,inset 0 0 20px #ffd70033,0 0 0 2px #ffd70080}.card-corner{position:absolute;font-size:14px;color:var(--gold);opacity:.65;font-weight:700;line-height:1}.card-corner.tl{top:6px;left:8px}.card-corner.tr{top:6px;right:8px}.card-corner.bl{bottom:6px;left:8px;transform:rotate(180deg)}.card-corner.br{bottom:6px;right:8px;transform:rotate(180deg)}.card-initials{font-size:32px;color:var(--gold);letter-spacing:-1px;line-height:1;font-weight:900}.card-name{font-size:9px;margin-top:4px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;max-width:74px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shuffle-card.idle{transform:translate(0) rotate(0)}.shuffle-card.shuffling-0{animation:card-shuffle-0 2.5s ease-in-out infinite}.shuffle-card.shuffling-1{animation:card-shuffle-1 2.5s ease-in-out infinite}.shuffle-card.shuffling-2{animation:card-shuffle-2 2.5s ease-in-out infinite}.shuffle-card.shuffling-3{animation:card-shuffle-3 2.5s ease-in-out infinite}@keyframes card-shuffle-0{0%,to{transform:translate(0) rotate(0) scale(1)}25%{transform:translate(35px,-22px) rotate(12deg) scale(1.05)}50%{transform:translate(-30px,18px) rotate(-14deg) scale(.96)}75%{transform:translate(22px,-10px) rotate(8deg) scale(1.04)}}@keyframes card-shuffle-1{0%,to{transform:translate(0) rotate(0) scale(1)}20%{transform:translate(-32px,14px) rotate(-10deg) scale(1.06)}45%{transform:translate(28px,-28px) rotate(15deg) scale(.94)}70%{transform:translate(-18px,26px) rotate(-6deg) scale(1.05)}90%{transform:translate(20px,-8px) rotate(11deg) scale(1)}}@keyframes card-shuffle-2{0%,to{transform:translate(0) rotate(0) scale(1)}30%{transform:translate(20px,30px) rotate(-12deg) scale(1.04)}60%{transform:translate(-40px,-16px) rotate(8deg) scale(.96)}85%{transform:translate(28px,-22px) rotate(14deg) scale(1.06)}}@keyframes card-shuffle-3{0%,to{transform:translate(0) rotate(0) scale(1)}22%{transform:translate(-26px,-28px) rotate(15deg) scale(1.07)}50%{transform:translate(38px,16px) rotate(-10deg) scale(.95)}78%{transform:translate(-22px,28px) rotate(7deg) scale(1.05)}}.shuffle-controls{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.shuffle-btn{background:linear-gradient(135deg,var(--gold),var(--gold-dim));color:#1a1300;font-weight:800;letter-spacing:1px;font-size:14px;padding:12px 24px;border-radius:999px;border:none;cursor:pointer;box-shadow:0 8px 24px #ffd70059;transition:transform .15s,box-shadow .2s}.shuffle-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 30px #ffd7008c}.shuffle-btn:disabled{background:#ffffff0f;color:var(--text-dim);cursor:not-allowed;box-shadow:none}.shuffle-status{font-size:14px;color:var(--gold);font-weight:800;letter-spacing:1.5px;display:flex;align-items:center;gap:10px}.dice-roll{display:inline-block;animation:dice-roll .6s ease-in-out infinite;font-size:22px}@keyframes dice-roll{0%,to{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.15)}}.winner-picker{display:inline-flex;gap:8px;padding:6px;border-radius:999px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.winner-btn{border-radius:999px!important}.shuffle-stage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 35%,rgba(255,215,0,.18),transparent 30%);opacity:0;transition:opacity .4s;pointer-events:none}.shuffle-stage:has(.shuffle-card.shuffling-0):before,.shuffle-stage:has(.shuffle-card.shuffling-1):before,.shuffle-stage:has(.shuffle-card.shuffling-2):before,.shuffle-stage:has(.shuffle-card.shuffling-3):before{opacity:1}@media (max-width: 700px){.shuffle-stage{height:480px}.team-target{width:150px;height:130px;bottom:100px}.team-target-a{left:calc(50% - 180px)}.team-target-b{right:calc(50% - 180px)}.shuffle-card{width:70px;height:100px;margin-left:-35px}.card-initials{font-size:26px}.card-name{font-size:8px}}
