@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;700&family=Inter:wght@400;500;600&display=swap";:root{--bg-dark:#07050d;--bg-panel:#131022;--text-main:#f8f9fa;--text-muted:#9ca3af;--accent-gold:gold;--accent-gold-hover:#ffea00;--accent-magic:#7209b7;--accent-danger:#ef233c;--accent-success:#06d6a0;--glass-bg:#13102299;--glass-border:#ffffff14;--glass-shadow:0 8px 32px 0 #0000005e;--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 15%,#7209b726 0%,#0000 50%),radial-gradient(circle at 85% 30%,#ffd7000d 0%,#0000 50%);min-height:100vh;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700}a{color:var(--accent-gold);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-gold-hover)}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:16px}.btn-primary{background:linear-gradient(135deg, var(--accent-gold) 0%, #d4af37 100%);color:#000;font-family:var(--font-heading);cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-weight:700;transition:transform .2s,box-shadow .2s;display:inline-flex}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px #ffd7004d}.btn-secondary{color:var(--text-main);border:1px solid var(--glass-border);font-family:var(--font-heading);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-weight:500;transition:all .2s;display:inline-flex}.btn-secondary:hover{background:#ffffff0d;border-color:#fff3}.container{max-width:1200px;margin:0 auto;padding:0 24px}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.animate-float{animation:4s ease-in-out infinite float}@keyframes pulse-glow{0%{box-shadow:0 0 #ffd70066}70%{box-shadow:0 0 0 10px #ffd70000}to{box-shadow:0 0 #ffd70000}}.animate-pulse{animation:2s infinite pulse-glow}.main-nav{z-index:100;border-radius:12px;margin:16px 24px;padding:16px 24px;position:sticky;top:16px}.nav-content{justify-content:space-between;align-items:center;display:flex}.logo{font-family:var(--font-heading);color:var(--text-main);letter-spacing:-.5px;font-size:24px;font-weight:700}.logo span{color:var(--accent-gold)}.nav-links{align-items:center;gap:32px;display:flex}.nav-links a{color:var(--text-main);font-weight:500}.nav-links a:hover{color:var(--accent-gold)}.home-container{padding-bottom:64px}.hero{justify-content:space-between;align-items:center;gap:48px;min-height:80vh;padding:0 5%;display:flex}.hero-content{flex:1;max-width:600px}.hero h1{background:linear-gradient(to right, #fff, var(--text-muted));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:24px;font-size:4rem;line-height:1.1}.hero-subtitle{color:var(--text-muted);margin-bottom:40px;font-size:1.25rem;line-height:1.6}.hero-actions{gap:16px;display:flex}.hero-graphic{max-width:400px;height:550px;box-shadow:none;background:radial-gradient(circle,#7209b766,#0000);border:none;flex:1;justify-content:center;align-items:center;display:flex}.demo-card{width:250px;box-shadow:0 20px 50px #00000080, 0 0 20px var(--accent-gold);border-radius:8px;transition:transform .3s}.demo-card:hover{transform:scale(1.05)rotateY(10deg)}.features{z-index:10;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;margin-top:-40px;display:grid;position:relative}.feature-card{text-align:left;padding:32px;transition:transform .3s}.feature-card:hover{transform:translateY(-5px)}.feature-icon{color:var(--accent-gold);margin-bottom:24px}.feature-card h3{margin-bottom:16px;font-size:1.5rem}.feature-card p{color:var(--text-muted);line-height:1.6}.auth-page{justify-content:center;align-items:center;min-height:80vh;display:flex}.auth-card{text-align:left;width:100%;max-width:450px;padding:40px}.auth-card h2{background:linear-gradient(to right, var(--accent-gold), #fff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:2rem}.auth-subtitle{color:var(--text-muted);margin-bottom:24px;font-size:.95rem}.auth-error{border:1px solid var(--accent-danger);color:#ff8585;background:#ef233c26;border-radius:8px;margin-bottom:20px;padding:12px;font-size:.9rem}.auth-info{color:#8ff0a4;background:#28a7451f;border:1px solid #28a74580;border-radius:8px;margin-bottom:20px;padding:12px;font-size:.9rem}.auth-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-size:.85rem;font-weight:600}.form-group input{border:1px solid var(--glass-border);color:var(--text-main);font-family:var(--font-body);background:#ffffff0d;border-radius:8px;padding:12px 16px;font-size:1rem;transition:all .2s}.form-group input:focus{border-color:var(--accent-gold);background:#ffffff14;outline:none;box-shadow:0 0 10px #ffd7001a}.auth-submit{justify-content:center;margin-top:10px}.auth-toggle{text-align:center;color:var(--text-muted);margin-top:24px;font-size:.9rem}.toggle-btn{color:var(--accent-gold);cursor:pointer;background:0 0;border:none;margin-left:6px;font-weight:600;transition:color .2s}.toggle-btn:hover{color:var(--accent-gold-hover);text-decoration:underline}.user-menu{align-items:center;gap:16px;display:flex}.username{color:var(--accent-gold);font-weight:500}.logout-btn{border-radius:6px;padding:6px 12px;font-size:.85rem}.deckbuilder-page{grid-template-columns:220px 1fr 360px;gap:20px;height:calc(100vh - 100px);margin-top:20px;padding-bottom:20px;display:grid}.decks-sidebar{flex-direction:column;gap:16px;padding:20px;display:flex;overflow-y:auto}.decks-sidebar h3{border-bottom:1px solid var(--glass-border);color:var(--accent-gold);padding-bottom:10px;font-size:1.2rem}.btn-full{justify-content:center;width:100%}.sidebar-decks-list{flex-direction:column;gap:10px;display:flex}.sidebar-deck-item{border:1px solid var(--glass-border);cursor:pointer;background:#ffffff05;border-radius:8px;flex-direction:column;padding:12px;transition:all .2s;display:flex}.sidebar-deck-item:hover{background:#ffffff0d;border-color:#ffffff26}.sidebar-deck-item.active{border-color:var(--accent-gold);background:#ffd7000d}.sidebar-deck-item span{font-size:.95rem;font-weight:600}.sidebar-deck-item small{color:var(--text-muted);margin-top:4px}.no-decks{color:var(--text-muted);text-align:center;margin-top:20px;font-size:.9rem}.builder-main{flex-direction:column;gap:20px;height:100%;display:flex}.builder-header{justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.deck-name-input{border:none;border-bottom:2px solid var(--glass-border);color:var(--text-main);font-family:var(--font-heading);background:0 0;width:60%;padding-bottom:4px;font-size:1.5rem;font-weight:700;transition:border-color .2s}.deck-name-input:focus{border-color:var(--accent-gold);outline:none}.builder-workspace{flex:1;grid-template-columns:1fr 1fr;gap:20px;min-height:0;display:grid}.card-selector{flex-direction:column;gap:16px;min-height:0;padding:20px;display:flex}.selector-filters{flex-direction:column;gap:12px;display:flex}.search-box{border:1px solid var(--glass-border);background:#ffffff0d;border-radius:8px;align-items:center;gap:10px;padding:10px 14px;display:flex}.search-box input{color:var(--text-main);background:0 0;border:none;width:100%;font-size:.95rem}.search-box input:focus{outline:none}.filter-buttons{gap:8px;display:flex}.filter-btn{border:1px solid var(--glass-border);color:var(--text-main);cursor:pointer;background:#ffffff05;border-radius:6px;flex:1;padding:6px;font-size:.8rem;font-weight:500;transition:all .2s}.filter-btn:hover{background:#ffffff0d}.filter-btn.active{background:var(--accent-gold);color:#000;border-color:var(--accent-gold)}.cards-loading{text-align:center;color:var(--text-muted);margin-top:40px}.cards-grid{scrollbar-gutter:stable;flex:1;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));grid-auto-rows:max-content;align-content:start;gap:10px;padding:8px;display:grid;overflow-y:auto}.card-grid-item{aspect-ratio:2/3;cursor:pointer;border:1px solid #0000;border-radius:6px;width:100%;transition:all .2s;position:relative;overflow:hidden}.card-grid-item:hover{border-color:var(--accent-gold);transform:scale(1.05);box-shadow:0 0 10px #ffd70033}.card-thumb{object-fit:cover;width:100%;height:100%}.card-name-overlay{text-align:center;white-space:nowrap;text-overflow:ellipsis;opacity:0;background:#000c;padding:4px;font-size:.65rem;transition:opacity .2s;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.card-grid-item:hover .card-name-overlay{opacity:1}.deck-editor{flex-direction:column;gap:24px;min-height:0;padding:20px;display:flex;overflow-y:auto}.deck-section{flex-direction:column;gap:10px;display:flex}.deck-section h4{color:var(--accent-gold);border-bottom:1px solid var(--glass-border);padding-bottom:6px;font-size:1rem}.deck-cards-grid{grid-template-columns:repeat(auto-fill,minmax(65px,1fr));grid-auto-rows:max-content;align-content:start;gap:8px;display:grid}.deck-card-item{aspect-ratio:2/3;cursor:pointer;border:1px solid #0000;border-radius:4px;transition:all .2s;overflow:hidden}.deck-card-item:hover{border-color:var(--accent-danger);transform:scale(1.05);box-shadow:0 0 10px #ef233c4d}.deck-card-item img{object-fit:cover;width:100%;height:100%}.card-detail-preview{scrollbar-width:thin;scrollbar-color:#ffd70033 transparent;height:100%;padding:20px;overflow-y:auto}.preview-empty{color:var(--text-muted);text-align:center;margin-top:50%;font-size:.95rem}.preview-content{flex-direction:column;gap:14px;display:flex}.preview-img{image-rendering:auto;border-radius:10px;width:100%;max-width:100%;height:auto;display:block;box-shadow:0 12px 32px #0009,0 0 0 1px #ffd7001a}.card-type-badge{text-transform:uppercase;border-radius:4px;width:fit-content;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-block}.card-type-badge.Monster{color:#fff;background:#b97d10}.card-type-badge.Spell{color:#fff;background:#1d9e74}.card-type-badge.Trap{color:#fff;background:#bc265e}.preview-details{flex-direction:column;gap:10px;font-size:.88rem;display:flex}.preview-stats{flex-wrap:wrap;gap:8px;display:flex}.preview-stat-badge{color:var(--text-main);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:5px;padding:3px 10px;font-size:.78rem;font-weight:700}.preview-desc-header{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.preview-desc-label{color:var(--text-muted);font-size:.8rem;font-weight:700}.preview-desc-toggle{color:var(--text-main);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:4px;padding:4px 8px;font-size:.7rem;transition:all .2s}.preview-desc-toggle:hover{border-color:var(--accent-gold);color:var(--accent-gold);background:#ffd7001a}.preview-desc{color:var(--text-main);white-space:pre-line;background:#00000040;border:1px solid #ffffff12;border-radius:8px;padding:12px 14px;font-size:.83rem;line-height:1.65}.lobby-container{justify-content:center;align-items:center;min-height:80vh;display:flex}.lobby-card{text-align:left;width:100%;max-width:600px;padding:40px}.lobby-subtitle{color:var(--text-muted);margin-bottom:24px}.create-room-box{gap:12px;margin-bottom:32px;display:flex}.create-room-box input{border:1px solid var(--glass-border);color:var(--text-main);background:#ffffff0d;border-radius:8px;flex:1;padding:12px 16px;font-size:1rem}.create-room-box input:focus{border-color:var(--accent-gold);outline:none}.rooms-section h3{color:var(--accent-gold);margin-bottom:16px;font-size:1.2rem}.rooms-grid{flex-direction:column;gap:12px;display:flex}.room-item{justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.room-info h4{margin-bottom:4px;font-size:1.1rem}.room-info span{color:var(--text-muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.no-rooms{color:var(--text-muted);text-align:center;padding:20px;font-style:italic}.join-pw-overlay{-webkit-backdrop-filter:blur(6px);z-index:2000;background:#000000bf;justify-content:center;align-items:center;padding:20px;animation:.2s both fadeInOverlay;display:flex;position:fixed;inset:0}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.join-pw-modal{text-align:center;border:1px solid #ffd70026;flex-direction:column;align-items:center;gap:16px;width:min(420px,96vw);padding:36px 32px;animation:.35s cubic-bezier(.34,1.56,.64,1) both pwModalIn;display:flex}@keyframes pwModalIn{0%{opacity:0;transform:scale(.8)translateY(30px)}to{opacity:1;transform:scale(1)translateY(0)}}.join-pw-icon{filter:drop-shadow(0 0 20px #ffd70066);font-size:3rem;line-height:1;animation:2s ease-in-out infinite iconPulse}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.join-pw-modal h3{color:var(--accent-gold);margin:0;font-size:1.4rem}.join-pw-modal p{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.5}.join-pw-input{width:100%;color:var(--text-main);font-family:var(--font-body);letter-spacing:.08em;background:#00000059;border:1.5px solid #ffffff1f;border-radius:10px;outline:none;padding:13px 16px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.join-pw-input:focus{border-color:var(--accent-gold);box-shadow:0 0 0 3px #ffd7001f}.join-pw-input::placeholder{color:#ffffff4d;letter-spacing:normal}.join-pw-actions{gap:12px;width:100%;margin-top:4px;display:flex}.join-pw-actions .btn-secondary{flex:1;justify-content:center}.join-pw-actions .btn-primary{flex:2;justify-content:center}.custom-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:2200;background:#000000bf;justify-content:center;align-items:center;padding:20px;animation:.25s both fadeInOverlay;display:flex;position:fixed;inset:0}.custom-modal{text-align:center;border:1px solid #ffffff1f;flex-direction:column;align-items:center;gap:18px;width:min(440px,96vw);padding:36px 32px;animation:.35s cubic-bezier(.34,1.56,.64,1) both pwModalIn;display:flex;position:relative;overflow:hidden}.custom-modal.modal-victory{border-color:#ffd70066;box-shadow:0 0 30px #ffd70026}.custom-modal.modal-victory h3{color:var(--accent-gold);text-shadow:0 0 10px #ffd7004d}.custom-modal.modal-defeat{border-color:#ff4b4b4d;box-shadow:0 0 30px #ff4b4b26}.custom-modal.modal-defeat h3{color:#ff4b4b;text-shadow:0 0 10px #ff4b4b4d}.custom-modal.modal-error{border-color:#ff4b4b4d;box-shadow:0 0 25px #ff4b4b1a}.custom-modal.modal-error h3{color:#ff4b4b}.custom-modal.modal-warning{border-color:#ffa5004d;box-shadow:0 0 25px #ffa5001a}.custom-modal.modal-warning h3{color:orange}.custom-modal.modal-confirm{border-color:#00bfff4d;box-shadow:0 0 25px #00bfff1a}.custom-modal.modal-confirm h3{color:#00bfff}.custom-modal-icon{filter:drop-shadow(0 0 15px);font-size:3.5rem;line-height:1;animation:2s ease-in-out infinite iconPulse}.custom-modal h3{color:var(--accent-gold);letter-spacing:.05em;margin:0;font-size:1.5rem}.custom-modal p{color:var(--text-main);white-space:pre-line;margin:0;font-size:.95rem;line-height:1.6}.custom-modal-actions{gap:12px;width:100%;margin-top:10px;display:flex}.custom-modal-actions button{flex:1;justify-content:center;padding:12px;font-size:.95rem}.game-lobby-container{justify-content:center;align-items:center;min-height:80vh;display:flex}.game-lobby-card{width:100%;max-width:800px;padding:40px}.players-setup{justify-content:space-between;align-items:center;gap:32px;margin-top:32px;display:flex}.player-setup-box{text-align:center;flex-direction:column;flex:1;align-items:center;gap:16px;padding:32px 24px;display:flex}.avatar{border:1px solid var(--glass-border);background:#ffffff0d;border-radius:50%;padding:20px}.avatar-icon{color:var(--accent-gold)}.deck-selector-box{text-align:left;flex-direction:column;gap:8px;width:100%;display:flex}.deck-selector-box select{border:1px solid var(--glass-border);color:var(--text-main);background:#ffffff0d;border-radius:6px;padding:10px;font-size:.9rem}.btn-ready{justify-content:center;width:100%}.btn-ready.ready{background:var(--accent-success);color:#000}.vs-divider{font-family:var(--font-heading);color:var(--text-muted);font-size:2.5rem;font-weight:900}.status-badge{background:#ffffff0d;border-radius:20px;padding:6px 12px;font-size:.8rem;font-weight:700}.status-badge.ready{color:var(--accent-success);background:#06d6a033}.playroom-page{box-sizing:border-box;height:calc(100vh - 80px);padding:16px;overflow:hidden}.playroom-layout{grid-template-columns:280px 1fr 300px;gap:16px;height:100%;max-height:100%;display:grid;overflow:hidden}.game-status-panel{flex-direction:column;gap:16px;height:100%;max-height:100%;padding:16px;display:flex;overflow:hidden}.lp-trackers{flex-direction:column;gap:12px;display:flex}.player-lp-box{border:1px solid var(--glass-border);background:#ffffff05;border-radius:8px;padding:12px 16px}.opponent-lp{border-left:4px solid var(--accent-danger)}.my-lp{border-left:4px solid var(--accent-success)}.lp-val{font-family:var(--font-heading);margin-top:4px;font-size:1.8rem;font-weight:700;display:block}.lp-adjusters{grid-template-columns:repeat(4,1fr);gap:4px;margin-top:8px;display:grid}.lp-adjusters button{border:1px solid var(--glass-border);color:var(--text-main);cursor:pointer;background:#ffffff0d;border-radius:4px;padding:4px 0;font-size:.65rem}.lp-adjusters button:hover{background:#ffffff1a}.game-logs{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.logs-list{scrollbar-gutter:stable;background:#0003;border-radius:8px;flex-direction:column;flex:1;gap:6px;padding:10px;font-size:.8rem;line-height:1.4;display:flex;overflow-y:auto}.log-entry{border-bottom:1px solid #ffffff05;padding-bottom:4px}.board-container{background:radial-gradient(circle,#1b162f 0%,#07050d 100%);border:1px solid #ffd70026;flex-direction:column;justify-content:flex-start;align-items:center;height:100%;padding:12px;display:flex;position:relative;overflow:hidden}.playfield-scalable{transform-origin:0 0;flex-direction:column;flex-shrink:0;justify-content:space-around;width:840px;height:640px;transition:transform .1s ease-out;display:flex;position:absolute;top:0;left:0}.board-half{flex-direction:column;flex:1;justify-content:space-around;display:flex;position:relative}.board-divider{background:linear-gradient(90deg,#0000,#ffd700a6,#0000);height:2px;margin:16px 0;box-shadow:0 0 10px #ffd70066}.board-row{justify-content:center;align-items:center;gap:16px;display:flex}.spells-zones,.monsters-zones{gap:10px;display:flex}.board-slot{cursor:pointer;background:#ffffff05;border:1px dashed #ffffff1a;border-radius:6px;justify-content:center;align-items:center;width:91px;height:136px;transition:all .2s;display:flex;position:relative}.board-slot:hover{background:#ffd70008;border-color:#ffd7004d}.board-slot.monster-slot{background:#ff7f5005;border:1.5px dashed #ff7f5040}.board-slot.monster-slot:hover{background:#ff7f500d;border-color:#ff7f5099;box-shadow:0 0 8px #ff7f5026}.board-slot.monster-slot .slot-indicator{color:#ff7f5059}.board-slot.spell-slot{background:#00ced105;border:1.5px dashed #00ced140}.board-slot.spell-slot:hover{background:#00ced10d;border-color:#00ced199;box-shadow:0 0 8px #00ced126}.board-slot.spell-slot .slot-indicator{color:#00ced159}.board-slot.field-spell-slot{background:#32cd3205;border:1.5px dashed #32cd3240}.board-slot.field-spell-slot:hover{background:#32cd320d;border-color:#32cd3299;box-shadow:0 0 8px #32cd3226}.board-slot.field-spell-slot .slot-indicator{color:#32cd3259}.board-slot.deck-slot{background:#1e90ff08;border:1.5px solid #1e90ff4d}.board-slot.deck-slot:hover{background:#1e90ff14;border-color:#1e90ffb3;box-shadow:0 0 10px #1e90ff33}.board-slot.deck-slot .slot-indicator{color:#1e90ff66}.board-slot.extra-deck-slot{background:#ba55d308;border:1.5px solid #ba55d34d}.board-slot.extra-deck-slot:hover{background:#ba55d314;border-color:#ba55d3b3;box-shadow:0 0 10px #ba55d333}.board-slot.extra-deck-slot .slot-indicator{color:#ba55d366}.board-slot.gy-slot{background:#a9a9a908;border:1.5px solid #a9a9a94d}.board-slot.gy-slot:hover{background:#a9a9a914;border-color:#a9a9a9b3;box-shadow:0 0 10px #a9a9a933}.board-slot.gy-slot .slot-indicator{color:#a9a9a966}.board-slot.banished-slot{background:#dc143c08;border:1.5px solid #dc143c4d}.board-slot.banished-slot:hover{background:#dc143c14;border-color:#dc143cb3;box-shadow:0 0 10px #dc143c33}.board-slot.banished-slot .slot-indicator{color:#dc143c66}.slot-indicator{color:#fff3;text-transform:uppercase;font-size:.65rem}.card-on-field{border-radius:4px;width:100%;height:100%;transition:all .2s;overflow:hidden;box-shadow:0 4px 10px #00000080}.card-thumb.defense{transform:rotate(90deg)scale(.65)}.card-thumb.facedown{background-image:url(/card_back.png);background-size:cover}.count-badge{background:var(--accent-gold);color:#000;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:.7rem;font-weight:700;display:flex;position:absolute;bottom:-6px;right:-6px}.opponent-hand-section,.player-hand-section{-webkit-backdrop-filter:blur(16px);z-index:10;box-sizing:border-box;background:#0d0816bf;border:1px solid #ffd70040;border-radius:14px;justify-content:flex-start;align-items:center;gap:20px;width:95%;max-width:95%;height:160px;margin:12px auto;padding:10px 24px;transition:all .3s;display:flex;box-shadow:0 10px 30px #000000bf,0 0 20px #ffd7001a}.opponent-hand,.my-hand{scrollbar-width:thin;scrollbar-color:#ffd7004d transparent;flex-grow:1;align-items:center;gap:8px;padding:6px 4px;display:flex;overflow-x:auto}.opponent-hand::-webkit-scrollbar{height:4px}.my-hand::-webkit-scrollbar{height:4px}.opponent-hand::-webkit-scrollbar-track{background:0 0}.my-hand::-webkit-scrollbar-track{background:0 0}.opponent-hand::-webkit-scrollbar-thumb{background:#ffd7004d;border-radius:4px}.my-hand::-webkit-scrollbar-thumb{background:#ffd7004d;border-radius:4px}.opp-hand-card-back{cursor:pointer;background-image:url(/card_back.png);background-position:50%;background-size:cover;border-radius:6px;flex-shrink:0;width:90px;height:130px;transition:transform .2s,box-shadow .2s;position:relative;box-shadow:0 6px 16px #0000008c}.opp-hand-card-back:hover{z-index:9999!important;transform:translateY(-20px)!important;box-shadow:0 12px 25px #000000b3,0 0 15px #ffd70059!important}.btn-reveal-hand{color:var(--accent-gold);font-family:var(--font-heading);cursor:pointer;background:#ffd7001a;border:1px solid #ffd7004d;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-reveal-hand:hover{background:#ffd70033;border-color:#ffd70080;transform:translateY(-1px);box-shadow:0 0 10px #ffd70033}.btn-reveal-hand:active{transform:translateY(0)}.card-back-small{background-image:url(/card_back.png);background-size:cover;border-radius:3px;width:45px;height:65px;box-shadow:0 2px 5px #0000004d}.hand-card-item{cursor:pointer;border-radius:6px;flex-shrink:0;width:90px;height:130px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 6px 16px #0000008c}.hand-card-item.card-just-drawn{animation:.4s cubic-bezier(.34,1.56,.64,1) both cardSlideIn}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(30px)scale(.8)}to{opacity:1;transform:translateY(0)scale(1)}}.hand-card-item:hover{z-index:9999!important;transform:translateY(-20px)!important;box-shadow:0 12px 25px #000000b3,0 0 15px #ffd70059!important}.hand-card-item img,.card-thumb{object-fit:cover;width:100%;height:100%}.game-chat-panel{flex-direction:column;gap:16px;height:100%;max-height:100%;padding:16px;display:flex;overflow:hidden}.voice-controls{border-bottom:1px solid var(--glass-border);padding-bottom:12px}.voice-btn-group{margin-top:10px}.voice-btn{justify-content:center;width:100%}.chat-tabs{background:#0003;border-radius:8px;gap:4px;padding:3px;display:flex}.chat-tab-btn{color:var(--text-muted);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:6px;flex:1;padding:7px 8px;font-size:.75rem;font-weight:600;transition:all .2s;overflow:hidden}.chat-tab-btn.active{color:var(--accent-gold);background:#ffd7001f;border:1px solid #ffd70033}.chat-box{flex-direction:column;flex:1;min-height:0;display:flex}.chat-log{scrollbar-gutter:stable;background:#0003;border-radius:8px;flex-direction:column;flex:1;gap:8px;padding:10px;font-size:.85rem;display:flex;overflow-y:auto}.chat-msg{word-break:break-word}.chat-msg strong{color:var(--accent-gold);margin-right:6px}.chat-input-form{gap:8px;margin-top:10px;display:flex}.chat-input-form input{border:1px solid var(--glass-border);color:var(--text-main);font-size:.9rem;font-family:var(--font-body);background:#ffffff0d;border-radius:6px;flex:1;padding:8px 12px}.chat-input-form input:focus{border-color:var(--accent-gold);outline:none}.chat-input-form button{background:var(--accent-gold);color:#000;cursor:pointer;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:38px;display:flex}.ai-chat-log{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#ffd70033 transparent;background:#0003;border-radius:8px;flex-direction:column;flex:1;gap:10px;padding:10px;font-size:.82rem;display:flex;overflow-y:auto}.ai-msg{flex-direction:column;gap:2px;display:flex}.ai-msg.user-msg{align-items:flex-end}.ai-msg.ai-msg-item{align-items:flex-start}.ai-bubble{white-space:pre-line;word-break:break-word;border-radius:10px;max-width:92%;padding:8px 11px;line-height:1.5}.user-msg .ai-bubble{color:var(--text-main);background:#ffd7001f;border:1px solid #ffd7002e;border-bottom-right-radius:3px}.ai-msg-item .ai-bubble{color:var(--text-main);background:#7209b726;border:1px solid #7209b740;border-bottom-left-radius:3px}.ai-msg-label{color:var(--text-muted);padding:0 4px;font-size:.65rem}.ai-input-form{flex-direction:column;gap:6px;margin-top:10px;display:flex}.ai-input-row{gap:6px;display:flex}.ai-input-form textarea{border:1px solid var(--glass-border);color:var(--text-main);font-size:.82rem;font-family:var(--font-body);resize:none;background:#ffffff0d;border-radius:6px;flex:1;min-height:52px;max-height:90px;padding:8px 10px;line-height:1.4}.ai-input-form textarea:focus{border-color:#7209b780;outline:none}.ai-send-btn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#7209b7 0%,#560bad 100%);border:none;border-radius:6px;align-self:flex-end;align-items:center;gap:4px;padding:0 14px;font-size:.8rem;font-weight:700;transition:opacity .2s;display:flex}.ai-send-btn:hover{opacity:.85}.ai-send-btn:disabled{opacity:.5;cursor:not-allowed}.ai-thinking{background:#7209b71a;border:1px solid #7209b733;border-radius:10px 10px 10px 3px;align-items:center;gap:4px;width:fit-content;padding:8px 11px;display:flex}.ai-thinking-dot{background:#7209b7b3;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite dotBounce}.ai-thinking-dot:nth-child(2){animation-delay:.2s}.ai-thinking-dot:nth-child(3){animation-delay:.4s}@keyframes dotBounce{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.action-modal-overlay{z-index:1000;background:#000000e0;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.action-modal{flex-direction:row;align-items:flex-start;gap:24px;width:min(820px,96vw);max-height:92vh;padding:24px;animation:.25s cubic-bezier(.34,1.56,.64,1) both modalIn;display:flex;overflow:hidden}@keyframes modalIn{0%{opacity:0;transform:scale(.88)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.action-modal-left{flex-direction:column;flex-shrink:0;align-items:center;gap:10px;display:flex}.action-preview-img{border-radius:8px;width:200px;display:block;box-shadow:0 12px 28px #0009,0 0 0 2px #ffd70026}.action-card-stats{color:var(--text-muted);gap:10px;font-size:.78rem;font-weight:600;display:flex}.action-card-stats span{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:4px;padding:3px 8px}.action-modal-right{flex-direction:column;flex:1;gap:12px;min-width:0;max-height:calc(92vh - 48px);display:flex;overflow:hidden}.action-modal-right h3{color:var(--accent-gold);font-size:1.15rem;line-height:1.3}.action-card-type-badge{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem}.action-desc-section{scrollbar-width:thin;scrollbar-color:#ffd70040 transparent;background:#00000040;border:1px solid #ffffff12;border-radius:8px;max-height:160px;padding:10px 12px;overflow-y:auto}.action-desc-section::-webkit-scrollbar{width:4px}.action-desc-section::-webkit-scrollbar-thumb{background:#ffd70040;border-radius:4px}.action-desc-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.action-desc-header span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;font-weight:600}.action-desc-lang-toggle{color:var(--accent-gold);cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:4px;padding:2px 7px;font-size:.68rem;transition:all .15s}.action-desc-lang-toggle:hover{background:#ffd7001a}.action-desc-text{color:var(--text-main);white-space:pre-line;font-size:.82rem;line-height:1.55}.action-desc-loading{color:var(--text-muted);align-items:center;gap:6px;font-size:.8rem;font-style:italic;display:flex}.action-desc-loading:before{content:"";border:2px solid #ffd7004d;border-top-color:var(--accent-gold);border-radius:50%;flex-shrink:0;width:12px;height:12px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.action-buttons{flex-direction:column;gap:7px;width:100%;display:flex}.action-buttons button{border:1px solid var(--glass-border);color:var(--text-main);cursor:pointer;text-align:left;background:#ffffff0d;border-radius:6px;padding:9px 12px;font-size:.85rem;font-weight:600;transition:all .2s}.action-buttons button:hover{background:#ffffff1a;border-color:#fff3;transform:translate(3px)}.action-buttons .btn-cancel{background:var(--accent-danger);color:#fff;text-align:center;border:none;margin-top:6px}.action-buttons .btn-cancel:hover{background:#d90429;transform:none}.voice-btn.active-call{border-color:var(--accent-success);color:var(--accent-success);background:#06d6a026;animation:2s infinite call-pulse;box-shadow:0 0 10px #06d6a033}@keyframes call-pulse{0%{box-shadow:0 0 #06d6a066}70%{box-shadow:0 0 0 8px #06d6a000}to{box-shadow:0 0 #06d6a000}}.browser-modal{background:var(--bg-panel);border:1px solid var(--accent-gold);border-radius:12px;flex-direction:column;gap:16px;width:90%;max-width:900px;max-height:80vh;padding:24px;display:flex}.browser-header{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.browser-header h2{color:var(--accent-gold);font-size:1.5rem}.btn-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.5rem}.btn-close:hover{color:var(--text-main)}.browser-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:12px;padding-right:8px;display:grid;overflow-y:auto}.browser-card-item{aspect-ratio:2/3;cursor:pointer;border:2px solid #0000;border-radius:4px;transition:all .2s;overflow:hidden}.browser-card-item:hover{border-color:var(--accent-gold);transform:scale(1.05);box-shadow:0 0 10px #ffd7004d}.browser-card-item img{object-fit:cover;width:100%;height:100%}.playroom-preview{justify-content:center;align-items:center;height:380px;max-height:380px;display:flex;overflow:hidden;box-shadow:none!important;border:1px solid var(--glass-border)!important;background:#ffffff03!important;border-radius:12px!important;padding:8px!important}.playroom-preview .preview-content{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.playroom-preview .preview-img{object-fit:contain;border-radius:12px;width:100%;height:100%;margin:0;box-shadow:0 10px 30px #0009}.card-on-field.banished{filter:grayscale(.5)sepia(.5)hue-rotate(320deg)brightness(.6)}.holographic-card{transform-style:preserve-3d;height:360px;transition:transform .1s,box-shadow .3s;position:relative;overflow:hidden;border:1px solid var(--accent-gold)!important;background:#131022b3!important;border-radius:16px!important;box-shadow:0 0 25px #ffd70026!important}.holographic-card:hover{box-shadow:0 0 35px #ffd7004d!important}.holographic-card.Monster{border-color:#b97d10!important;box-shadow:0 0 25px #b97d1040!important}.holographic-card.Spell{border-color:#1d9e74!important;box-shadow:0 0 25px #1d9e7440!important}.holographic-card.Trap{border-color:#bc265e!important;box-shadow:0 0 25px #bc265e40!important}.preview-empty-holo{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.holo-grid{background-image:linear-gradient(#ffd7001a 1px,#0000 1px),linear-gradient(90deg,#ffd7001a 1px,#0000 1px);background-size:12px 12px;border:1px solid #ffd70033;border-radius:8px;width:120px;height:120px;margin-bottom:20px;animation:3s infinite alternate grid-flicker}@keyframes grid-flicker{0%{opacity:.3;transform:scale(.95)rotate(0)}to{opacity:.8;transform:scale(1.05)rotate(5deg)}}.phases-bar-wrapper{border:1px solid var(--glass-border);background:#ffffff08;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:8px 16px;display:flex}.turn-indicator{font-family:var(--font-heading);align-items:center;font-weight:700;display:flex}.phase-help-toggle{color:var(--text-muted,#b9b4c7);border:1px solid var(--glass-border,#ffffff1f);cursor:pointer;white-space:nowrap;background:#ffffff0d;border-radius:6px;margin-left:10px;padding:3px 8px;font-size:.72rem;font-weight:600;transition:all .15s}.phase-help-toggle:hover{color:#fff;border-color:#ffd70080}.phase-help-toggle.active{color:#0d0816;background:var(--accent-gold,#ffd166);border-color:var(--accent-gold,#ffd166)}@keyframes phaseHelpIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.phase-help-panel{background:#0d0816b3;border:1px solid #ffd7002e;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:-8px 0 12px;padding:10px 14px;animation:.2s phaseHelpIn;display:grid}.phase-help-item{border-left:3px solid #0000;border-radius:6px;flex-direction:column;gap:2px;padding:6px 8px;display:flex}.phase-help-item.active{border-left-color:var(--accent-gold,#ffd166);background:#ffd70014}.phase-help-name{font-family:var(--font-heading);color:var(--accent-gold,#ffd166);text-transform:uppercase;font-size:.78rem;font-weight:700}.phase-help-desc{color:#ffffffc7;font-size:.72rem;line-height:1.3}.badge-turn{border-radius:6px;padding:6px 12px;font-size:.8rem}.badge-turn.my-turn{background:var(--accent-success);color:#000;box-shadow:0 0 10px #06d6a04d}.badge-turn.opp-turn{color:var(--text-muted);background:#ffffff0d}.phases-bar{gap:4px;display:flex}.phase-btn{border:1px solid var(--glass-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;padding:6px 12px;font-size:.75rem;font-weight:600;transition:all .2s}.phase-btn:hover:not(:disabled){color:var(--text-main);background:#ffffff0d}.phase-btn.active{background:var(--accent-gold);color:#000;border-color:var(--accent-gold);box-shadow:0 0 10px #ffd70033}.end-turn-btn{border-radius:6px!important;padding:6px 16px!important;font-size:.8rem!important}.rps-modal{text-align:center!important;max-width:500px!important;padding:32px!important}.rps-status{color:var(--text-muted);margin-bottom:24px;font-size:1.1rem}.rps-options{justify-content:center;gap:12px;margin-bottom:24px;display:flex}.rps-btn{border:1px solid var(--glass-border);color:var(--text-main);cursor:pointer;background:#ffffff08;border-radius:8px;padding:16px 24px;font-size:1.1rem;transition:all .2s}.rps-btn:hover{border-color:var(--accent-gold);background:#ffffff14;transform:translateY(-2px)}.rps-btn.selected{border-color:var(--accent-gold);color:var(--accent-gold);background:#ffd7001a}.rps-starter-selection{justify-content:center;gap:16px;display:flex}.rps-starter-selection button{padding:12px 24px;font-size:.95rem}.summon-animation{animation:.8s cubic-bezier(.25,.46,.45,.94) forwards summon-glow}@keyframes summon-glow{0%{box-shadow:0 0 50px var(--accent-gold);opacity:.5;transform:scale(1.3)}to{opacity:1;transform:scale(1);box-shadow:0 4px 10px #00000080}}.lp-custom-adjuster{gap:6px;margin-top:8px;display:flex}.lp-custom-adjuster input{border:1px solid var(--glass-border);color:var(--text-main);background:#ffffff0d;border-radius:4px;flex:1;width:60px;padding:4px 8px;font-size:.75rem}.lp-custom-adjuster input:focus{border-color:var(--accent-gold);outline:none}.lp-custom-adjuster button{border:1px solid var(--glass-border);color:var(--text-main);cursor:pointer;background:#ffffff0d;border-radius:4px;padding:4px 10px;font-size:.75rem;transition:all .2s}.lp-custom-adjuster button:hover{background:#ffffff1a;border-color:#fff3}.opponent-hand-header,.player-hand-header{width:200px;color:var(--text-muted);text-align:center;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:8px;font-size:.85rem;display:flex}.game-tools-section{border-bottom:1px solid var(--glass-border);padding-bottom:12px}.game-tools-section h4{margin-bottom:8px}.tools-btn-group{gap:8px;display:flex}.tools-btn-group button{flex:1;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:.75rem;display:flex}.card-thumb.targeted{animation:1s infinite alternate target-pulse;border:2px solid var(--accent-danger)!important;box-shadow:0 0 15px #ef233c99!important}@keyframes target-pulse{0%{border-color:#ef233c99;box-shadow:0 0 5px #ef233c66}to{border-color:#ef233c;box-shadow:0 0 20px #ef233ccc}}.card-text-panel{border:1px solid var(--glass-border);scrollbar-gutter:stable;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006;border-radius:8px;max-height:250px;margin-top:16px;padding:16px;overflow-y:auto}.card-text-name{color:var(--accent-gold);text-shadow:0 0 10px #d4af374d;margin-top:0;margin-bottom:8px;font-size:1.1rem;font-weight:700}.card-text-meta{flex-wrap:wrap;gap:8px;margin-bottom:12px;font-size:.8rem;display:flex}.card-text-description{color:var(--text-main);white-space:pre-line;font-size:.85rem;line-height:1.5}.card-text-empty{color:var(--text-muted);text-align:center;padding:20px 0;font-size:.85rem}.card-draw-animation{transform-origin:50%;transition:all .8s cubic-bezier(.25,1,.5,1)}.shuffle-card{pointer-events:none;z-index:9998;transform-origin:bottom;background-image:url(/card_back.png);background-position:50%;background-size:cover;border-radius:6px;position:fixed;box-shadow:0 8px 20px #0009}@keyframes shuffleFan{0%{opacity:1;transform:rotate(0)translateY(0)}30%{transform:rotate(var(--fan-angle)) translateY(-18px);opacity:1}70%{transform:rotate(var(--fan-angle)) translateY(-18px);opacity:.9}to{opacity:0;transform:rotate(0)translateY(0)}}@keyframes shuffleWave{0%{transform:translate(0)rotate(0)scale(1)}25%{transform:translateX(var(--wave-x)) rotate(var(--fan-angle)) scale(1.05)}75%{transform:translateX(calc(var(--wave-x) * -.5)) rotate(calc(var(--fan-angle) * -.5)) scale(.97)}to{transform:translate(0)rotate(0)scale(1)}}body.playroom-active .main-nav{display:none!important}body.playroom-active .playroom-page{height:100vh!important;padding:8px!important}body.playroom-active .playroom-layout{height:100%!important;max-height:100%!important}.playfield-scalable-wrapper{border:1px solid #ffd70014;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin:auto;display:flex;overflow:visible;box-shadow:0 10px 40px #0009}.game-logs-tab{flex-direction:column;flex:1;min-height:0;display:flex}.preloaded-decks-section{border-top:1px solid var(--glass-border);margin-top:24px;padding-top:16px}.preloaded-decks-section h4{color:var(--accent-gold);text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;font-size:.85rem}.preloaded-decks-list{flex-direction:column;gap:8px;display:flex}.preloaded-deck-btn{text-align:left;width:100%;padding:8px 12px!important;font-size:.75rem!important}.disconnected-player{opacity:.7;transition:all .3s;border-color:var(--accent-danger)!important;box-shadow:0 0 12px #ef233c66!important}.disconnected-badge{color:var(--accent-danger);margin-left:6px;font-size:.75rem;font-weight:600;animation:1.5s linear infinite blinker-glow}@keyframes blinker-glow{50%{opacity:.3}}.animation-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:99999;background:#000000d9;justify-content:center;align-items:center;animation:.3s forwards fadeIn;display:flex;position:fixed;inset:0}.animation-card{text-align:center;background:linear-gradient(135deg,#ffffff0d 0%,#ffffff03 100%);border:1px solid #ffd70040;border-radius:24px;flex-direction:column;align-items:center;gap:20px;width:90%;max-width:420px;padding:40px 50px;animation:.3s cubic-bezier(.34,1.56,.64,1) forwards scaleIn;display:flex;box-shadow:0 0 40px #ffd70026,inset 0 0 20px #ffffff0d}.animation-title{font-family:var(--font-heading);color:var(--accent-gold);text-shadow:0 0 10px #ffd7004d;margin:0;font-size:1.3rem;font-weight:700}.dice-animation-container{perspective:400px;width:100px;height:100px;margin:15px 0}.dice-rolling-box{width:100%;height:100%;transform-style:preserve-3d;border:2px solid var(--accent-gold);background:#ffffff14;border-radius:16px;justify-content:center;align-items:center;animation:1.2s cubic-bezier(.25,1,.5,1) forwards diceSpin;display:flex;position:relative;box-shadow:0 0 25px #ffd70040}.dice-result-text{font-family:var(--font-heading);color:var(--accent-gold);text-shadow:0 0 15px #ffd70099;font-size:3.8rem;font-weight:900;animation:.3s cubic-bezier(.34,1.56,.64,1) 1.2s both popIn}@keyframes diceSpin{0%{transform:rotateX(0)rotateY(0)rotate(0)scale(.5)}15%{transform:rotateX(180deg)rotateY(90deg)rotate(45deg)scale(1.1)}30%{transform:rotateX(360deg)rotateY(270deg)rotate(135deg)scale(.95)}60%{transform:rotateX(720deg)rotateY(540deg)rotate(270deg)scale(1.05)}to{transform:rotateX(1080deg)rotateY(1080deg)rotate(360deg)scale(1)}}.coin-animation-container{perspective:600px;width:120px;height:120px;margin:10px 0}.coin-flipping-element{width:100%;height:100%;transform-style:preserve-3d;transition:transform 1.2s cubic-bezier(.25,1,.5,1);position:relative}.coin-flipping-element.flip-cara{animation:1.5s cubic-bezier(.25,1,.5,1) forwards coinFlipCara}.coin-flipping-element.flip-cruz{animation:1.5s cubic-bezier(.25,1,.5,1) forwards coinFlipCruz}.coin-face{backface-visibility:hidden;width:100%;height:100%;font-family:var(--font-heading);border:4px solid;border-radius:50%;justify-content:center;align-items:center;font-size:1.4rem;font-weight:800;display:flex;position:absolute;box-shadow:0 0 25px #0006}.coin-front{color:#594000;text-shadow:0 1px 1px #fff6;background:radial-gradient(circle,#ffe066 0%,#d4af37 70%,#aa8010 100%);border-color:#ffe066}.coin-back{color:#222;text-shadow:0 1px 1px #fff6;background:radial-gradient(circle,#fff 0%,#dcdcdc 70%,#8c8c8c 100%);border-color:#fff;transform:rotateY(180deg)}@keyframes coinFlipCara{0%{transform:rotateY(0)translateY(0)scale(.5)}35%{transform:rotateY(720deg)translateY(-100px)scale(1.15)}70%{transform:rotateY(1440deg)translateY(-40px)scale(.95)}to{transform:rotateY(2160deg)translateY(0)scale(1)}}@keyframes coinFlipCruz{0%{transform:rotateY(0)translateY(0)scale(.5)}35%{transform:rotateY(720deg)translateY(-100px)scale(1.15)}70%{transform:rotateY(1440deg)translateY(-40px)scale(.95)}to{transform:rotateY(2340deg)translateY(0)scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.board-slot.selected-by-me,.hand-card-item.selected-by-me{border-color:#3b82f6!important;outline:2px solid #3b82f6!important;box-shadow:0 0 14px #3b82f6cc!important}.board-slot.selected-by-opponent,.hand-card-item.selected-by-opponent,.opp-hand-card-back.selected-by-opponent{border-color:#ef4444!important;outline:2px solid #ef4444!important;box-shadow:0 0 14px #ef4444cc!important}.placement-banner{z-index:2100;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:30px;padding:10px 24px;font-size:.9rem;font-weight:600;animation:.2s scaleIn;position:fixed;top:70px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #00000080;background:#10b98140!important;border:1.5px solid #10b98166!important}.placement-banner:hover{background:#10b98159!important}.board-slot.placement-targetable{border:2px dashed #10b981!important;animation:1.5s infinite pulse-green!important;box-shadow:0 0 15px #10b98180!important}@keyframes pulse-green{0%{box-shadow:0 0 10px #10b98166}50%{box-shadow:0 0 20px #10b981cc}to{box-shadow:0 0 10px #10b98166}}.card-counter-badge{color:#fff;z-index:10;background:#f36;border:1px solid #fff6;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 4px;font-size:.75rem;font-weight:800;display:flex;position:absolute;top:-6px;left:-6px;box-shadow:0 0 8px #f36c}.flying-card-element{z-index:10000;pointer-events:none;transform-origin:50%;will-change:transform, top, left, width, height, opacity;background-position:50%;background-size:cover;border-radius:6px;transition:transform .6s cubic-bezier(.25,1,.5,1),top .6s cubic-bezier(.25,1,.5,1),left .6s cubic-bezier(.25,1,.5,1),width .6s cubic-bezier(.25,1,.5,1),height .6s cubic-bezier(.25,1,.5,1),opacity .6s cubic-bezier(.25,1,.5,1);position:fixed;box-shadow:0 12px 30px #000000a6,0 0 15px #ffd70033}
