:root{--space-0: #05010f;--space-1: #0b0820;--space-2: #141038;--panel: rgba(18, 16, 48, .72);--panel-border: rgba(120, 170, 255, .35);--neon-blue: #38bdf8;--neon-blue-soft: #7dd3fc;--neon-gold: #fcd34d;--neon-violet: #a78bfa;--laser-red: #ff3b5c;--laser-green: #22e584;--ink: #e6ecff;--muted: #93a0c8}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Rajdhani,Segoe UI,system-ui,sans-serif;color:var(--ink);min-height:100vh;background-color:var(--space-0);background-image:radial-gradient(1200px 600px at 80% -10%,rgba(99,102,241,.25),transparent 60%),radial-gradient(900px 500px at -10% 110%,rgba(56,189,248,.18),transparent 55%);overflow-x:hidden;position:relative}body:before,body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background-repeat:repeat}body:before{background-image:radial-gradient(1px 1px at 20px 30px,#fff,transparent),radial-gradient(1px 1px at 120px 80px,#cfe3ff,transparent),radial-gradient(1.5px 1.5px at 200px 160px,#fff,transparent),radial-gradient(1px 1px at 300px 50px,#bcd4ff,transparent);background-size:350px 350px;animation:drift 120s linear infinite;opacity:.7}body:after{background-image:radial-gradient(1px 1px at 60px 120px,#fff,transparent),radial-gradient(1px 1px at 180px 40px,#a9c7ff,transparent),radial-gradient(2px 2px at 260px 220px,#fff,transparent);background-size:500px 500px;animation:drift 200s linear infinite reverse;opacity:.5}@keyframes drift{0%{background-position:0 0}to{background-position:700px 1000px}}h1,h2,h3,.brand,button,.topbar{font-family:Orbitron,Rajdhani,sans-serif;letter-spacing:.04em}h1,h2{margin-top:0}.container{max-width:1000px;margin:0 auto;padding:clamp(.75rem,3vw,1.5rem)}.topbar{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap;color:var(--ink);margin-bottom:1rem}.topbar .brand{font-weight:900;font-size:clamp(1rem,4vw,1.3rem);color:var(--neon-gold);text-shadow:0 0 12px rgba(252,211,77,.6)}.topbar nav{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.topbar a{color:var(--neon-blue-soft);text-decoration:none;font-size:.95rem;padding:.35rem .6rem;border-radius:8px;border:1px solid transparent}.topbar a:hover{border-color:var(--panel-border);text-shadow:0 0 8px var(--neon-blue)}.card-box{background:var(--panel);border:1px solid var(--panel-border);border-radius:16px;padding:clamp(1rem,4vw,1.75rem);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 0 30px #38bdf81f,inset 0 0 24px #6366f114}label{display:block;margin:.75rem 0 .25rem;font-weight:600;color:var(--neon-blue-soft)}input{width:100%;padding:.7rem;background:#050818cc;border:1px solid var(--panel-border);border-radius:10px;color:var(--ink);font-size:1rem;font-family:inherit}input:focus{outline:none;border-color:var(--neon-blue);box-shadow:0 0 0 3px #38bdf840}button{cursor:pointer;border:1px solid var(--neon-blue);border-radius:10px;padding:.7rem 1.1rem;min-height:44px;font-size:1rem;font-weight:700;color:var(--space-0);background:linear-gradient(180deg,var(--neon-blue-soft),var(--neon-blue));box-shadow:0 0 14px #38bdf873;transition:transform .08s,box-shadow .15s,filter .15s}button:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 22px #38bdf8b3}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}button.secondary{color:var(--ink);background:#1e1b4bcc;border-color:var(--neon-violet);box-shadow:0 0 12px #a78bfa59}button.danger{color:#fff;background:linear-gradient(180deg,#ff5a78,var(--laser-red));border-color:var(--laser-red);box-shadow:0 0 14px #ff3b5c80}.link-btn{background:none;border:none;box-shadow:none;color:var(--neon-blue-soft);text-decoration:underline;padding:.35rem .4rem;min-height:auto}.link-btn:hover:not(:disabled){filter:none;text-shadow:0 0 8px var(--neon-blue)}.error{color:#ff8aa0;margin:.5rem 0}.muted{color:var(--muted);font-size:.9rem}.table{display:flex;flex-direction:column;gap:1rem}.players{display:grid;grid-template-columns:1fr;gap:.75rem}@media (min-width: 640px){.players{grid-template-columns:1fr 1fr}}.player{background:var(--panel);border:1px solid var(--panel-border);border-radius:14px;padding:.75rem;color:var(--ink);transition:box-shadow .2s,border-color .2s}.player.active{border-color:var(--neon-gold);box-shadow:0 0 22px #fcd34d73}.player.eliminated{opacity:.4}.player h3{margin:0 0 .35rem;display:flex;justify-content:space-between;align-items:center;font-size:1rem}.droid-tag{font-size:.7rem;color:var(--neon-blue-soft);border:1px solid var(--panel-border);border-radius:6px;padding:.05rem .35rem;margin-left:.4rem}.action-badge{font-size:.72rem;font-weight:700;color:var(--space-0);background:var(--neon-gold);border-radius:6px;padding:.08rem .45rem;margin-left:.4rem;box-shadow:0 0 12px #fcd34dcc;animation:badgePop .3s ease}@keyframes badgePop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.hearts{color:var(--laser-red);letter-spacing:2px;text-shadow:0 0 8px rgba(255,59,92,.6)}.hand,.open-cards{display:flex;gap:.5rem;flex-wrap:wrap;margin:.5rem 0}.open-cards{justify-content:center}.playing-card{width:clamp(58px,18vw,72px);height:clamp(82px,25vw,100px);border-radius:10px;background:linear-gradient(160deg,#f8fbff,#dde8ff);border:1px solid #b9c8ee;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:Orbitron,sans-serif;font-weight:700;font-size:clamp(1rem,4.5vw,1.2rem);-webkit-user-select:none;user-select:none;position:relative;box-shadow:0 4px 14px #00000073;transition:transform .18s,box-shadow .18s,outline-color .15s}.playing-card.red{color:#e11d48}.playing-card.black{color:#1e293b}.playing-card .suit{font-size:1.35em;line-height:1}.playing-card.back{background:repeating-linear-gradient(45deg,#0b1230,#0b1230 6px,#1e2a66 6px,#1e2a66 12px);border-color:var(--neon-blue);box-shadow:0 0 14px #38bdf880}.playing-card.back:after{content:"✦";color:var(--neon-blue-soft);font-size:1.4rem;text-shadow:0 0 8px var(--neon-blue)}.playing-card.selectable{cursor:pointer;outline:2px solid transparent}.playing-card.selectable:hover{outline-color:var(--neon-blue);box-shadow:0 0 18px #38bdf899}.playing-card.selected{outline:3px solid var(--neon-gold);transform:translateY(-8px);box-shadow:0 0 22px #fcd34db3}.playing-card.swapping{animation:cardSwap .55s ease;z-index:5}@keyframes cardSwap{0%{transform:translateY(0) scale(1) rotateY(0)}40%{transform:translateY(-26px) scale(1.12) rotateY(180deg);box-shadow:0 0 26px var(--neon-gold)}to{transform:translateY(0) scale(1) rotateY(360deg)}}.playing-card.dealing{animation:cardDeal .4s ease both}@keyframes cardDeal{0%{transform:translateY(-40px) scale(.6);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.player.pulsing{animation:playerPulse .5s ease}@keyframes playerPulse{0%{box-shadow:0 0 #38bdf800}45%{box-shadow:0 0 24px #38bdf8d9;transform:scale(1.02)}to{box-shadow:0 0 #38bdf800}}.actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.6rem}@media (min-width: 640px){.actions{display:flex;flex-wrap:wrap}.actions button{flex:0 0 auto}}.center-table{text-align:center;color:var(--ink)}.center-table h3{color:var(--neon-blue-soft);text-shadow:0 0 10px rgba(56,189,248,.4)}.turn-hint{text-align:center;color:var(--neon-gold);font-weight:700;text-shadow:0 0 10px rgba(252,211,77,.5)}.score-pill{display:inline-block;background:#050818b3;border:1px solid var(--neon-gold);color:var(--neon-gold);border-radius:999px;padding:.25rem .75rem;font-family:Orbitron,sans-serif;font-weight:700;box-shadow:0 0 14px #fcd34d4d}.log{background:#05081899;border:1px solid var(--panel-border);color:#c7d2fe;border-radius:10px;padding:.75rem;font-size:.85rem;max-height:150px;overflow-y:auto;font-family:Rajdhani,monospace}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#02010cc7;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{position:relative;width:min(440px,100%);background:linear-gradient(160deg,var(--space-2),var(--space-1));border:1px solid var(--panel-border);border-radius:18px;padding:1.5rem;text-align:center;box-shadow:0 0 40px #38bdf84d;animation:modalPop .35s cubic-bezier(.2,1.2,.4,1);overflow:hidden}@keyframes modalPop{0%{transform:scale(.8) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.modal h2{margin:0 0 .5rem}.modal .result-line{display:flex;justify-content:space-between;padding:.3rem .2rem;border-bottom:1px dashed rgba(120,170,255,.18);font-size:.95rem}.modal .result-line.lost{color:#ff8aa0}.modal .result-line.win{color:var(--laser-green)}.modal .result-row{margin-bottom:.4rem}.modal .result-cards{display:flex;gap:.3rem;justify-content:center;margin:.25rem 0 .5rem}.modal .result-cards .playing-card{width:38px;height:54px;font-size:.8rem;border-radius:6px;box-shadow:0 2px 8px #0006}.modal .result-cards .playing-card .suit{font-size:1.1em}.modal .modal-actions{margin-top:1.2rem;display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.fx-title{font-family:Orbitron,sans-serif;font-weight:900;font-size:clamp(1.4rem,7vw,2.2rem);margin:.25rem 0 .75rem}.fx-blitz .fx-title{color:#bfe9ff;animation:blitzPulse .4s ease infinite alternate}.fx-blitz:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 42%,rgba(125,211,252,.55) 50%,transparent 58%),radial-gradient(circle at 50% 0%,rgba(191,233,255,.4),transparent 60%);background-size:220% 100%,100% 100%;animation:laserSweep .6s linear infinite;pointer-events:none;mix-blend-mode:screen}@keyframes blitzPulse{0%{text-shadow:0 0 8px #7dd3fc,0 0 16px #38bdf8;transform:scale(1)}to{text-shadow:0 0 22px #bfe9ff,0 0 44px #38bdf8,0 0 60px #fff;transform:scale(1.08)}}@keyframes laserSweep{0%{background-position:150% 0,0 0}to{background-position:-150% 0,0 0}}.fx-feuer .fx-title{color:var(--laser-red);animation:feuerPulse .5s ease infinite alternate}.fx-feuer:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 40%,rgba(255,59,92,.35) 50%,transparent 60%);background-size:250% 100%;animation:laserSweep .9s linear infinite;pointer-events:none}@keyframes feuerPulse{0%{text-shadow:0 0 8px #ff3b5c,0 0 16px #ff3b5c}to{text-shadow:0 0 20px #ff3b5c,0 0 40px #ffb300;transform:scale(1.06)}}.fx-schnauz .fx-title{color:var(--neon-gold);animation:goldGlow 1.1s ease infinite alternate}.fx-schnauz:after{content:"✦ ✦ ✦";position:absolute;top:8px;left:0;right:0;color:var(--neon-gold);letter-spacing:1.5rem;text-align:center;animation:sparkle 1.4s ease infinite;pointer-events:none}@keyframes goldGlow{0%{text-shadow:0 0 10px rgba(252,211,77,.6)}to{text-shadow:0 0 26px rgba(252,211,77,1),0 0 42px rgba(255,180,0,.7)}}@keyframes sparkle{0%,to{opacity:.2}50%{opacity:1}}.scoreboard{width:100%;border-collapse:collapse}.scoreboard th,.scoreboard td{padding:.6rem .5rem;text-align:left;border-bottom:1px solid rgba(120,170,255,.15);font-size:.9rem}.scoreboard th{color:var(--neon-blue-soft);font-family:Orbitron,sans-serif;font-size:.78rem;text-transform:uppercase}.scoreboard tr.me{background:#fcd34d14}.scoreboard td.rank{font-family:Orbitron,sans-serif;color:var(--neon-gold);width:2.5rem}.scoreboard .num{text-align:right;font-variant-numeric:tabular-nums}@media (max-width: 520px){.scoreboard .hide-sm{display:none}}.ad-slot{margin:1rem auto;max-width:728px;min-height:90px;display:flex;align-items:center;justify-content:center}.ad-placeholder{width:100%;border:1px dashed var(--panel-border);border-radius:12px;background:var(--panel);color:var(--muted);font-family:Orbitron,sans-serif;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}.footer{display:flex;gap:1.25rem;justify-content:center;padding:1.5rem 1rem 5rem;font-size:.82rem}.footer a{color:var(--muted);text-decoration:none}.footer a:hover{color:var(--neon-blue-soft)}.consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:1000;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem 1.5rem;padding:.9rem 1.1rem;background:var(--panel);border-top:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 -8px 30px #05010f99}.consent-text{margin:0;max-width:640px;font-size:.85rem;color:var(--ink)}.consent-text a{color:var(--neon-blue-soft)}.consent-actions{display:flex;gap:.75rem;align-items:center}.legal-page{max-width:720px;margin:1rem auto;line-height:1.6}.legal-page h2{color:var(--neon-blue-soft);font-size:1rem;margin-top:1.5rem}.legal-page a{color:var(--neon-blue-soft)}
