body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#1a1a2e;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{background-color:#1a1a2e;background-image:linear-gradient(135deg,#1a1a2e,#16213e);height:100vh}.login-card{background-color:#ffffffe6;border-radius:10px}.google-login-button{border-radius:4px;display:flex;padding:12px 24px;transition:background-color .3s ease}.error-message{color:#e63946}.loading{background-color:#1a1a2e;color:#fff;font-size:1.5rem;height:100vh}.loading,.user-profile{align-items:center;display:flex;justify-content:center}.user-profile{flex-wrap:wrap;gap:10px;margin-bottom:20px;position:relative}.user-profile .room-info-logout{font-size:.9em;margin-left:10px;margin-top:0;padding:6px 12px;width:auto}.profile-image{border-radius:50%;height:50px;margin-right:15px;object-fit:cover;width:50px}.lobby{margin:0 auto;max-width:1000px;overflow:visible;padding:40px;text-align:center}.room-controls{display:flex;flex-direction:column;gap:20px;margin-top:30px}.create-room-btn,.join-room-btn{background-color:#e94560;border-radius:4px;color:#fff;font-size:16px;padding:12px 24px;transition:background-color .3s ease}.create-room-btn:hover,.join-room-btn:hover{background-color:#d13354}.join-room-container{gap:10px}.room-input{border:1px solid #ddd;border-radius:4px;font-size:16px;padding:12px}.dialog-message{animation:fadeIn .5s;background-color:#000000b3;border-radius:4px;color:#fff;margin-top:20px;padding:15px}@media (max-width:600px){.join-room-container{flex-direction:column}.room-controls{width:100%}}:root{--primary-color:#2ecc71;--secondary-color:#27ae60;--danger-color:#ff4757;--danger-light:#ff6b81;--text-color:#fff;--text-secondary:#fff9;--border-color:#fff3;--border-hover:#fff6;--background-dark:#0000004d;--background-darker:#00000080}.login-container{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);display:flex;height:100%;justify-content:center;left:0;overflow:hidden;position:fixed;top:0;width:100%;z-index:1000}.login-container .particles{height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.login-container .particles-fade-out{animation:fadeOut 1s ease-out forwards}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.login-card{background-color:#fffffff2;border-radius:15px;box-shadow:0 10px 25px #0003;max-width:400px;padding:40px;position:relative;text-align:center;width:90%;z-index:1}.login-card h1{color:#0f3460;font-size:2.5rem;margin-bottom:20px}.login-card p{color:#555;font-size:1.1rem;margin-bottom:30px}.google-login-button{align-items:center;background-color:#4285f4;border:none;border-radius:8px;box-shadow:0 4px 6px #0000001a;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:700;justify-content:center;margin:0 auto;padding:15px 30px;transition:all .3s ease}.google-login-button:hover{background-color:#357ae8;box-shadow:0 6px 8px #00000026;transform:translateY(-2px)}.google-login-button:disabled{background-color:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.error-message{background-color:#e63946;border-radius:4px;font-size:.9rem;margin-top:20px;padding:10px}.app,.lobby{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;color:var(--text-color);display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative;width:100%}.background-rectangle{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:url(/static/media/bkg.bb5feb123e647d508913.png) 50%/cover no-repeat;border:1px solid #ffffff1a;border-radius:30px;box-shadow:0 25px 45px #0003;height:90vh;left:50%;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:95%;z-index:0}.game-container{flex-direction:column;gap:20px;margin:0 auto;max-width:1200px;padding:20px}.game-container,.game-over-container{align-items:center;display:flex;position:relative;width:100%;z-index:1}.game-over-container{background:linear-gradient(135deg,#1a1a2e,#16213e);height:100vh;justify-content:center;overflow:hidden}.logout-button-game{background-color:#ff4757;background-color:var(--danger-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;position:absolute;right:10px;top:10px;transition:all .3s ease}.logout-button-game:hover{background-color:#ff6b81;background-color:var(--danger-light);box-shadow:0 2px 8px #ff47574d;transform:translateY(-1px)}.logout-button-lobby{background-color:#ff4757;background-color:var(--danger-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 16px;transition:all .3s ease}.logout-button-lobby:hover{background-color:#ff6b81;background-color:var(--danger-light);box-shadow:0 2px 8px #ff47574d;transform:translateY(-1px)}.game-info-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000d9;border:1px solid #ffffff26;border-radius:15px;box-shadow:0 4px 20px #0006;color:#fff;padding:25px;position:fixed;right:20px;top:50%;transform:translateY(-50%);width:300px;z-index:1000}.game-info-panel p{align-items:center;display:flex;font-size:14px;justify-content:space-between;line-height:1.4;margin:12px 0}.game-info-panel strong{color:#4caf50;margin-right:10px}.game-info-panel button{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:5px 10px;transition:background-color .3s ease}.game-info-panel button:hover{background:#45a049}button{background:linear-gradient(135deg,#2ecc71,#27ae60);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;border-radius:8px;box-shadow:0 4px 15px #2ecc7133;color:#fff;color:var(--text-color);cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.5px;margin:10px;overflow:hidden;padding:12px 24px;position:relative;text-transform:uppercase;transition:all .3s ease}button:hover{background:linear-gradient(135deg,#27ae60,#2ecc71);background:linear-gradient(135deg,var(--secondary-color),var(--primary-color));box-shadow:0 6px 20px #2ecc714d;transform:translateY(-2px)}button:active{box-shadow:0 2px 10px #2ecc7133;transform:translateY(0)}input[type=text]{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff0d;border:2px solid #fff3;border:2px solid var(--border-color);border-radius:8px;color:#fff;color:var(--text-color);font-size:1rem;margin:10px;max-width:300px;padding:12px 20px;transition:all .3s ease;width:100%}input[type=text]:focus{background:#ffffff1a;border-color:#2ecc71;border-color:var(--primary-color);box-shadow:0 0 0 3px #2ecc7133;outline:none}.combat-stats-title,.kill-label,.player-name,.summary-title{color:#fff;color:var(--text-color);font-size:1.1rem;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-shadow:0 2px 4px #0003}.turn-indicator.waiting{color:#ff6b6b}.turn-indicator.active{border-radius:20px}h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#ccc);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:2.5rem;font-weight:700;letter-spacing:2px;margin-bottom:30px;text-shadow:0 4px 8px #0000004d;text-transform:uppercase}.combat-log-entry{background:#0003;border-left:3px solid #2ecc71;border-left:3px solid var(--primary-color);border-radius:6px}.combat-log-entry:hover{background:#0000004d;transform:translateX(5px)}.game-status{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0006;border:1px solid #fff3;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 15px #0003;margin:20px 0;padding:15px 25px}.game-status p{color:#fff;color:var(--text-color);font-size:1rem;margin:8px 0}.game-status strong{color:#2ecc71;color:var(--primary-color);font-weight:600}button[onClick*=Copy]{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border:1px solid #fff3;border:1px solid var(--border-color);box-shadow:none;font-size:.8rem;margin-left:10px;padding:6px 12px}button[onClick*=Copy]:hover{background:linear-gradient(135deg,#ffffff26,#ffffff1a);transform:translateY(-1px)}.game-content{align-items:center;background:#0006;border:1px solid #ffffff1a;border-radius:25px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;gap:20px;margin:0 auto;max-width:1200px;padding:30px}.battlefield{background:#0000004d;border-radius:20px;min-height:400px;width:100%}.battlefield-left,.battlefield-right{align-items:center;display:flex;height:100%;justify-content:center;padding:20px;position:relative;width:400px}.opponent-field,.player-field{height:100%;position:relative;width:100%}.battlefield>div{flex:0 1 auto;position:relative}.battlefield-vs{align-items:center;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#000000b3;border:1px solid #fff3;border-radius:10px;color:#fff;font-size:1.5rem;font-weight:700;padding:10px 20px;z-index:2}.battlefield-vs,.game-board{display:flex;justify-content:center}.game-board{background:#0006;border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 8px 32px #0000004d;flex-direction:row;gap:20px;padding:20px;width:100%}.game-board h2{color:#fff;color:var(--text-color);font-size:1.75rem;letter-spacing:2px;margin:0;text-align:center;text-shadow:0 2px 4px #0000004d;text-transform:uppercase}.game-status{background:#0000004d;background:var(--background-dark);border-radius:10px;color:#fff9;color:var(--text-secondary);font-size:1rem;margin:5px 0;padding:8px}.turn-indicator{animation:fadeInOut 2s ease-in-out;background:#000000b3;font-size:1.1rem}.field-highlight{background:#2ecc7126;border:2px dashed #2ecc71;border:2px dashed var(--primary-color);box-shadow:0 0 20px #2ecc7133}.combat-log{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#000000d9;border:1px solid #fff3;border-radius:15px;box-shadow:0 8px 32px #0000004d;color:#fff;display:flex;flex-direction:column;margin:20px auto;max-height:180px;min-height:180px;overflow-y:auto;padding:20px;position:relative;transition:all .3s ease;width:900px}.combat-log-header{align-items:center;border-bottom:1px solid #fff3;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.combat-log-title{color:#4caf50;font-size:1.2rem;font-weight:700}.card-counts{color:#fffc;font-size:.9rem}.combat-log-content{flex:1 1;overflow-y:auto}.combat-log-entry{background:#0006;border:1px solid #ffffff26;border-radius:8px;font-size:.9rem;margin:4px 0;padding:8px 12px;transition:all .3s ease}.combat-log-entry.play{background:#4caf501a;border-color:#4caf504d;color:#4caf50}.combat-log-entry.death{background:#f443361a;border-color:#f443364d;color:#f44336}.combat-log-entry.combat{background:#2196f31a;border-color:#2196f34d;color:#2196f3}.combat-log-entry.error{background:#ff98001a;border-color:#ff98004d;color:#ff9800}.combat-log-entry.system{background:#9c27b01a;border-color:#9c27b04d;color:#9c27b0}.instructions-button{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:10px 20px;position:absolute;right:20px;top:20px;transition:all .3s ease;z-index:1000}.instructions-button:hover{background:#fff3}.instructions-dialog{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000d9;border:1px solid #fff3;border-radius:12px;box-shadow:0 4px 6px #0000001a;color:#fff;padding:20px;position:absolute;right:20px;top:80px;width:350px;z-index:1000}.instructions-content{max-height:70vh;overflow-y:auto;padding-right:10px}.instructions-content h2{color:#fff;font-size:1.5em;margin-bottom:20px;margin-top:0}.instruction-section{margin-bottom:20px}.instruction-section h3{color:#fff;font-size:1.2em;margin-bottom:10px}.instruction-section p,.instruction-section ul{color:#ffffffe6;line-height:1.6;margin:0;padding-left:20px}.close-instructions{background:none;font-size:24px;padding:5px;right:10px;top:10px}.close-instructions:hover{color:#ffffffb3}.instruction-section li{padding:8px 0 8px 25px;position:relative}.instruction-section li:before{color:#4a9eff;content:"•";left:0;position:absolute}.close-instructions{background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.5rem;height:30px;line-height:1;position:absolute;right:15px;top:15px;transition:all .3s ease;width:30px}.close-instructions:hover{background:#fff3;transform:rotate(90deg)}@keyframes dialogFadeIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.player-profile{align-items:center;display:flex;gap:15px;margin-bottom:10px}.profile-picture{background:#0000004d;border:2px solid #fff3;border-radius:20px;box-shadow:0 4px 8px #0003;display:block;height:60px;max-width:100%;object-fit:cover;width:60px}.player-name{font-size:1.2rem;font-weight:700}.opponent-profile .profile-picture{border-color:#ff475766}.player-profile .profile-picture{border-color:#2ecc7166}.room-info{background:#000c;border-radius:8px;color:#fff;margin:20px auto;max-width:400px;padding:20px;text-align:center}.room-info .room-id{color:#4caf50;font-size:1.2em;font-weight:700}.room-details{margin:15px 0;text-align:left}.room-details p{align-items:center;display:flex;justify-content:space-between;margin:8px 0}.room-details .role{color:#2196f3;font-weight:700}.room-details .status{color:#ffc107;font-weight:700}.room-details .turn{color:#e91e63;font-weight:700}.waiting-message{color:#4caf50;font-style:italic;margin-top:10px}.copy-room-btn{background:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px;transition:background .3s}.copy-room-btn:hover{background:#45a049}.opponent-hand,.player-hand{align-items:center;background:#ff475726;border:1px solid #ff47574d;border-radius:15px;box-shadow:0 0 20px #ff47571a;display:flex;gap:15px;justify-content:center;margin:10px auto;min-height:180px;padding:20px 30px;transition:all .3s ease;width:900px}.active-turn.current-player .player-hand,.active-turn.opponent .opponent-hand{background:#2ecc7126;border:1px solid #2ecc714d;box-shadow:0 0 20px #2ecc711a}.battlefield-left .card,.battlefield-right .card{height:360px;margin:0;transform-origin:center center;transition:transform .3s ease;width:200px}.battlefield .card img{height:100%;max-height:280px;object-fit:contain;width:100%}.battlefield .card-content{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:space-between}.battlefield .opponent-field .card,.battlefield .player-field .card{align-items:center;background-color:initial;display:flex;justify-content:center;position:relative}.room-info-box{animation:glow 2s ease-in-out infinite alternate;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000f2;border:2px solid #4caf50;border-radius:12px;box-shadow:0 0 15px #00ff004d;color:#fff;min-width:300px;padding:20px;z-index:1000}.room-info-box h3{color:#4caf50;font-size:1.6em;letter-spacing:1px;margin:0 0 15px;text-align:center;text-shadow:0 0 8px #4caf5099}.room-info-content{display:flex;flex-direction:column;gap:12px}.room-info-box p{align-items:center;border-bottom:1px solid #ffffff26;display:flex;font-size:1.2em;justify-content:space-between;margin:0;padding:8px 0}.room-info-box p:last-child{border-bottom:none}.room-info-box .host{color:#2196f3;font-weight:700;text-shadow:0 0 5px #2196f380}.room-info-box .waiting{color:#ffc107;font-weight:700;text-shadow:0 0 5px #ffc10780}.room-info-box .playing{color:#4caf50;font-weight:700;text-shadow:0 0 5px #4caf5080}.room-info-box .status-dot{animation:pulse 1.5s ease-in-out infinite;border-radius:50%;display:inline-block;height:10px;margin-left:10px;width:10px}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.room-info-box .status-dot.host{background-color:#2196f3;box-shadow:0 0 8px #2196f3}.room-info-box .status-dot.waiting{background-color:#ffc107;box-shadow:0 0 8px #ffc107}.room-info-box .status-dot.playing{background-color:#4caf50;box-shadow:0 0 8px #4caf50}.copy-room-id{background:linear-gradient(45deg,#4caf50,#45a049);border:none;border-radius:6px;box-shadow:0 2px 5px #0003;color:#fff;font-size:1.1em;font-weight:700;letter-spacing:1px;padding:10px 15px;text-align:center;text-transform:uppercase}.copy-room-id:hover{background:linear-gradient(45deg,#45a049,#4caf50);box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.copy-room-id:active{box-shadow:0 1px 3px #0003;transform:translateY(1px)}.room-info-logout{background:linear-gradient(45deg,#f44336,#e53935);border:none;border-radius:6px;box-shadow:0 2px 5px #0003;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;letter-spacing:1px;margin-top:10px;padding:10px 15px;text-align:center;text-transform:uppercase;transition:all .3s ease;width:100%}.room-info-logout:hover{background:linear-gradient(45deg,#e53935,#f44336);box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.room-info-logout:active{box-shadow:0 1px 3px #0003;transform:translateY(1px)}.game-modes-container{gap:2rem;margin:0 auto;max-width:1000px}.game-mode-section,.game-modes-container{display:flex;flex-direction:column;width:100%}.game-mode-section{align-items:center;background:#000000b3;border-radius:12px;max-width:400px;padding:2rem;transition:all .3s ease}.game-mode-section:hover{box-shadow:0 10px 20px #0000004d;transform:translateY(-5px)}.game-mode-section h3{color:#fff;font-size:1.5rem;margin-bottom:.5rem}.game-mode-section p{color:#ffffffb3;margin-bottom:1.5rem;text-align:center}.free-game-section{border:2px solid #3498db}.paid-game-section{border:2px solid #f1c40f}.connect-wallet-container{align-items:center;display:flex;flex-direction:column;gap:1rem;width:100%}.wallet-header{display:flex;justify-content:flex-end;margin-bottom:1rem;width:100%}.join-room-container{align-items:center;background:#000000b3;border:2px solid #2ecc71;border-radius:12px;display:flex;flex-direction:column;padding:2rem}.join-room-container h3{color:#fff;font-size:1.5rem;margin-bottom:1.5rem}.join-input-group{align-items:center;display:flex;flex-direction:column;gap:10px;margin-top:15px;max-width:300px;width:100%}.join-input-group.free-game .room-input{background:#2196f31a;border:2px solid #2196f3;border-radius:4px;color:#fff;margin:0 auto;max-width:280px;padding:10px;text-align:center;width:100%}.join-input-group.free-game .join-room-btn{background-color:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;margin:0 auto;max-width:280px;padding:12px;transition:background-color .3s;width:100%}.join-input-group.free-game .join-room-btn:hover{background-color:#1976d2}.join-input-group.paid-game .room-input{background:#ffd7001a;border:2px solid gold;border-radius:4px;color:#fff;margin:0 auto;max-width:280px;padding:10px;text-align:center;width:100%}.join-input-group.paid-game .join-room-btn{background-color:gold;border:none;border-radius:4px;color:#000;cursor:pointer;margin:0 auto;max-width:280px;padding:12px;transition:background-color .3s;width:100%}.join-input-group.paid-game .join-room-btn:hover{background-color:#ffc000}.join-input-group .room-input:focus{box-shadow:0 0 5px #ffffff80;outline:none}.join-input-group .join-room-btn:disabled{cursor:not-allowed;opacity:.6}.room-input{background:#0000004d;border:2px solid #fff3;border-radius:8px;color:#fff;flex:1 1;font-size:1rem;padding:.75rem 1rem}.room-input:focus{border-color:#2ecc71;outline:none}.create-room-btn,.join-room-btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem 1.5rem;transition:all .3s ease}.create-room-btn{background:#3498db;color:#fff}.create-room-btn:hover{background:#2980b9;transform:translateY(-2px)}.join-room-btn{background:#2ecc71;color:#fff}.join-room-btn:hover:not(:disabled){background:#27ae60;transform:translateY(-2px)}.join-room-btn:disabled{cursor:not-allowed;opacity:.5}.free-game{color:#3498db;font-weight:700}.paid-game{color:#f1c40f;font-weight:700}@media (min-width:768px){.game-modes-container{flex-direction:row;gap:2rem;justify-content:center}.game-mode-section,.join-room-container{flex:0 1 400px;min-width:350px}}.card{background-color:#1a1a1a;border:2px solid #333;border-radius:10px;box-shadow:0 4px 8px #0003;cursor:pointer;display:flex;flex-direction:column;height:340px;margin:10px;padding:8px;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:160px}.opponent-hand .card{background:none;background-color:initial!important;display:flex}.card-back,.opponent-card,.opponent-hand .card{align-items:center;border:none;box-shadow:none;height:auto;justify-content:center;margin:0;padding:0;width:auto}.card-back,.opponent-card{background-color:initial;overflow:hidden}.opponent-card{align-items:center;background-color:initial;box-shadow:none;display:flex;height:auto;justify-content:center;margin:0;padding:0;width:auto}.card-back-image{display:block;height:220px;object-fit:contain;width:160px}.card-back-overlay{background:linear-gradient(135deg,#0003,#00000080);border-radius:8px;display:none;height:100%;left:0;position:absolute;top:0;width:100%}@keyframes floatingCard{0%{transform:translateY(0) translateX(0) rotate(0deg)}25%{transform:translateY(-5px) translateX(2px) rotate(.5deg)}50%{transform:translateY(-8px) translateX(-2px) rotate(-.5deg)}75%{transform:translateY(-5px) translateX(-1px) rotate(.25deg)}to{transform:translateY(0) translateX(0) rotate(0deg)}}.opponent-hand .card,.player-hand .card{animation:floatingCard 4s ease-in-out infinite}.player-hand .card:nth-child(2n){animation-delay:.2s;animation-duration:4.5s}.player-hand .card:nth-child(3n){animation-delay:.4s;animation-duration:5s}.player-hand .card:nth-child(4n){animation-delay:.6s;animation-duration:4.2s}.opponent-hand .card:nth-child(2n){animation-delay:.3s;animation-duration:4.8s}.opponent-hand .card:nth-child(3n){animation-delay:.5s;animation-duration:4.6s}.opponent-hand .card:nth-child(4n){animation-delay:.7s;animation-duration:5.2s}.battlefield .card{animation:none;border:2px solid #ffffff4d;box-shadow:0 10px 25px #0006;height:280px;margin:0 15px;transform:none!important;transition:all .3s ease;width:180px}.card:hover{border-color:#fff6;box-shadow:0 25px 45px #00000080,0 5px 15px #0006,inset 0 0 60px #ffffff14;transform:perspective(1000px) translateZ(20px)}.card:before{background:linear-gradient(125deg,#fff6,#ffffff1a 50%,#ffffff0d);border-radius:inherit;content:"";inset:-1px;opacity:.5;position:absolute;transform:translateZ(-1px);z-index:-1}.opponent-hand .card:before{display:none}.card-image{background:#0000001a;border:1px solid #fff3;border-radius:8px;box-shadow:inset 0 2px 8px #00000026;height:280px;margin:6px 0 8px;overflow:hidden;position:relative;width:100%}.card-image img{background:linear-gradient(135deg,#0000000d,#00000026);height:100%;object-fit:contain;object-position:center;transform-origin:center;transition:transform .4s ease;width:100%}.card:hover .card-image img{transform:scale(1.08)}.card-title{align-items:center;background:#00000080;border:1px solid #ffffff1a;border-radius:6px;color:#ffffffe6;display:flex;font-size:.9rem;font-weight:700;justify-content:space-between;margin-bottom:4px;padding:4px 6px;text-shadow:0 1px 2px #00000080}.card-stats{grid-gap:4px;background:#000000b3;border:1px solid #fff3;border-radius:8px;box-shadow:0 4px 6px #0003;display:grid;gap:4px;grid-template-columns:repeat(3,1fr);margin-top:auto;padding:6px}.stat{align-items:center;background:#0000004d;border-radius:4px;display:flex;flex-direction:column;padding:2px}.stat-label{color:#fffc;font-size:.7rem;font-weight:700;letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase}.stat-value{color:#fff;font-size:.8rem;min-width:20px;text-align:center;text-shadow:0 1px 2px #00000080}.stat:first-child .stat-value{color:#ff7675}.stat:nth-child(2) .stat-value{color:#74b9ff}.stat:nth-child(3) .stat-value{color:#00b894}.health-percentage{background:#00ff9d33;border-radius:4px;color:#00ff9d;font-size:.75rem;padding:2px 6px}@keyframes attack{0%{box-shadow:0 15px 35px #0006,0 3px 10px #0000004d;transform:translateZ(0) scale(1)}20%{border-color:#ff6464cc;box-shadow:0 0 45px #ff323299,0 0 15px #ff323280;transform:translateZ(20px) scale(1.1) translateY(-40px)}40%{border-color:#ff6464b3;box-shadow:0 0 40px #ff323280,0 0 10px #ff323266;transform:translateZ(0) scale(1) translateY(0) rotate(5deg)}to{border-color:#ffffff4d;box-shadow:0 15px 35px #0006,0 3px 10px #0000004d;transform:translateZ(0) scale(1)}}@keyframes defend{0%{box-shadow:0 15px 35px #0006,0 3px 10px #0000004d;transform:translateZ(0) scale(1)}20%{border-color:#6496ffcc;box-shadow:0 0 45px #3264ff99,0 0 15px #3264ff80;transform:translateZ(10px) scale(.95) translateY(20px)}40%{border-color:#6496ffb3;box-shadow:0 0 40px #3264ff80,0 0 10px #3264ff66;transform:translateZ(0) scale(.9) translateY(30px) rotate(-2deg)}70%{border-color:#6496ff99;box-shadow:0 0 30px #3264ff66,0 0 8px #3264ff4d;transform:translateZ(5px) scale(.95) translateY(15px) rotate(1deg)}to{border-color:#ffffff4d;box-shadow:0 15px 35px #0006,0 3px 10px #0000004d;transform:translateZ(0) scale(1)}}.card.attacking{animation:attack 1.5s cubic-bezier(.4,0,.2,1);z-index:3}.card.defending{animation:defend 1.5s cubic-bezier(.4,0,.2,1);z-index:2}.battlefield .card:after{background:#0000;border-radius:15px;bottom:-5px;box-shadow:0 0 15px #ffffff4d;content:"";left:-5px;opacity:0;position:absolute;right:-5px;top:-5px;transition:opacity .3s ease;z-index:-1}.battlefield .card:hover:after{opacity:1}.player-hand{flex-wrap:wrap;gap:15px;margin:12px 0;padding:12px}.player-hand,.session-expired{display:flex;justify-content:center}.session-expired{align-items:center;background-color:#e63946;border-radius:4px;color:#fff;font-size:.9rem;margin:10px 0;padding:12px 20px;text-align:center;width:100%}.transaction-status{background-color:#323232cc;border-radius:8px;margin:1rem auto;max-width:300px;padding:1rem;text-align:center;width:100%}.transaction-status.success{background-color:#323232cc;padding:0}.transaction-status.error{background-color:#f443;border:1px solid #f44}.status-container{align-items:center;display:flex;flex-direction:column;gap:.5rem}.status-text{color:#fff;font-size:.9rem}.error-details{color:#f44;font-size:.8rem;margin-top:.5rem;word-break:break-word}.loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#4fc3f7;height:40px;margin:0 auto 15px;width:40px}.transaction-status .transaction-hash{margin:15px 0;text-align:center}.transaction-status .hash-link{background-color:#4fc3f733;border-radius:20px;color:#4fc3f7;display:inline-block;font-size:14px;padding:8px 15px;text-decoration:none;transition:background-color .3s,color .3s}.transaction-status .hash-link:hover{background-color:#4fc3f766;color:#fff}@keyframes spin{to{transform:rotate(1turn)}}.create-paid-game-button{background-color:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem 1.5rem;transition:all .3s ease;width:100%}.create-paid-game-button:hover{background-color:#45a049;transform:translateY(-2px)}.game-end-dialog{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#000000d9;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.dialog-content{animation:slideUp .6s ease-out forwards;background:#ffffff1a;border:2px solid #fff3;border-radius:20px;box-shadow:0 15px 35px #0006;color:#fff;max-width:600px;padding:30px;text-align:center;width:90%}.dialog-content h2{color:#4caf50;font-size:2.5em;letter-spacing:1px;margin-bottom:20px;text-shadow:0 2px 4px #0000004d}.game-summary{border:1px solid #ffffff1a}.player-stats{background:#ffffff0d;border-radius:12px;margin-top:10px;padding:20px}.stat-item{align-items:flex-start;display:flex;flex-direction:column;font-size:1.2em;margin:0 0 12px;padding:16px}.stat-item span:first-child{color:#aaa;font-size:.9em;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.stat-item span:last-child{color:#fff;display:block;font-size:1.4em;font-weight:700;text-shadow:0 2px 4px #0003;width:100%}.stat-item:hover{background:#ffffff26}.paid-game-details{background:#0000004d;border:1px solid #ffffff1a;border-radius:12px;margin:20px 0;padding:20px}.opponent-summary,.player-summary{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0003;border:1px solid #ffffff1a;box-shadow:0 4px 8px #0003;padding:25px;transition:transform .3s ease}.opponent-summary:hover,.player-summary:hover{box-shadow:0 6px 12px #0000004d;transform:translateY(-5px)}.opponent-summary h3,.player-summary h3{border-bottom:2px solid #ffffff1a;color:#fff;font-size:1.4em;margin-bottom:20px;padding-bottom:15px;text-align:center;text-shadow:0 2px 4px #0000004d}.opponent-summary p,.player-summary p{background:#ffffff1a;border-radius:8px;font-size:1.2em;margin:10px 0;padding:8px}.room-id{color:#64b5f6;font-size:1.1em;margin-bottom:15px}.claim-instructions{color:#81c784;line-height:1.5;margin-bottom:10px}.gas-fee-warning{color:#ffb74d;margin-bottom:20px}.reward-details{background:#0003;border-radius:8px;margin-bottom:20px;padding:15px}.winner-reward{color:#4caf50;font-size:1.2em;margin-bottom:10px}.marketing-fee{color:#9e9e9e;font-size:.9em}.claim-button{background:linear-gradient(135deg,#f1c40f,#f39c12);border:none;border-radius:25px;box-shadow:0 4px 15px #f1c40f4d;color:#000;cursor:pointer;font-size:1.1em;font-weight:700;letter-spacing:1px;margin:15px 0;padding:12px 30px;text-transform:uppercase;transition:all .3s ease}.claim-button:hover{background:linear-gradient(135deg,#f39c12,#e67e22);box-shadow:0 6px 20px #f1c40f66;transform:translateY(-2px)}.restart-button{background:linear-gradient(135deg,#2ecc71,#27ae60);border:none;border-radius:25px;box-shadow:0 4px 15px #2ecc714d;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;letter-spacing:1px;margin-top:20px;padding:12px 30px;text-transform:uppercase;transition:all .3s ease}.restart-button:hover{background:linear-gradient(135deg,#27ae60,#219a52);box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}.game-end-dialog.player .dialog-content{animation:victoryGlow 2s infinite alternate;background:#2ecc7126;border:2px solid #2ecc714d}.game-end-dialog.opponent .dialog-content{animation:defeatPulse 2s infinite alternate;background:#e74c3c26;border:2px solid #e74c3c4d}.game-end-dialog.player .dialog-content h2{color:#2ecc71;text-shadow:0 0 10px #2ecc7180}.game-end-dialog.opponent .dialog-content h2{color:#e74c3c;text-shadow:0 0 10px #e74c3c80}@keyframes victoryGlow{0%{box-shadow:0 0 20px #2ecc714d,0 0 40px #2ecc711a}to{box-shadow:0 0 30px #2ecc7180,0 0 60px #2ecc7133}}@keyframes defeatPulse{0%{box-shadow:0 0 20px #e74c3c4d,0 0 40px #e74c3c1a}to{box-shadow:0 0 30px #e74c3c80,0 0 60px #e74c3c33}}@media (max-width:600px){.game-summary{gap:15px;grid-template-columns:1fr;padding:15px}.dialog-content{padding:20px;width:95%}.dialog-content h2{font-size:2em}.opponent-summary,.player-summary{padding:15px}.opponent-summary h3,.player-summary h3{font-size:1.2em}.opponent-summary p,.player-summary p{font-size:1em}.claim-button,.restart-button{font-size:1em;padding:10px 20px;width:100%}}.loading{opacity:.7;pointer-events:none}@media (hover:none){.claim-button:hover,.opponent-summary:hover,.player-summary:hover,.restart-button:hover{transform:none}}.game-summary{grid-gap:30px;background:#0000004d;border-radius:15px;box-shadow:0 4px 6px #0000001a;display:grid;gap:30px;grid-template-columns:repeat(2,1fr);margin:30px 0;padding:25px}.opponent-summary,.player-summary{background:#ffffff0d;border-radius:12px;box-shadow:0 2px 4px #0003;padding:20px;transition:transform .2s ease}.player-header{border-bottom:2px solid #ffffff1a;margin-bottom:20px;padding-bottom:15px}.player-header h3{color:#fff;font-size:1.4em;margin:0;text-shadow:0 2px 4px #0000004d}.player-stats{flex-direction:column}.stat-row{margin-bottom:10px}.stat-item{background:#ffffff14;border-radius:10px;padding:15px;transition:all .3s ease}.stat-item:hover{background:#ffffff1f;transform:translateX(5px)}.stat-item .stat-label{color:#aaa;font-size:1.1em;margin-bottom:8px}.stat-item .stat-value{color:#fff;font-size:1.4em;font-weight:700;text-shadow:0 2px 4px #0003}@media (max-width:600px){.game-summary{gap:20px;grid-template-columns:1fr}.stat-item .stat-value{font-size:1.2em}}.draggable-stat-box{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000f2;border-radius:12px;box-shadow:0 0 15px #00ff004d;color:#fff;cursor:move;min-width:280px;padding:15px;position:fixed;transition:box-shadow .3s ease;-webkit-user-select:none;user-select:none;z-index:1000}.draggable-stat-box:hover{box-shadow:0 0 25px #00ff0080}.draggable-stat-box.current-turn{animation:pulse-green 2s infinite alternate;border:3px solid #4caf50;border-radius:20px;box-shadow:0 0 25px #00ff00b3}.draggable-stat-box.current-turn .profile-picture{border:3px solid #4caf50;box-shadow:0 0 15px #00ff00b3}.draggable-stat-box.opponent.current-turn .profile-picture{border:3px solid #f44336;box-shadow:0 0 15px #f44336b3}@keyframes pulse-green{0%{box-shadow:0 0 15px #00ff0080}to{box-shadow:0 0 30px #00ff00e6}}.draggable-stat-box.player{border:2px solid #4caf50;left:20px;top:100px}.draggable-stat-box.player .profile-picture{border-color:#4caf50b3}.draggable-stat-box.opponent{border:2px solid #f44336;left:20px;top:300px}.draggable-stat-box.opponent .profile-picture{border-color:#f44336b3}.draggable-stat-box.combat-stats{left:20px;top:500px}.draggable-stat-box .profile-picture{border:2px solid #333;border-radius:10px;height:50px;margin-right:15px;object-fit:cover;transition:border-color .3s ease,box-shadow .3s ease;width:50px}.draggable-stat-box .stat-header{align-items:center;display:flex;margin-bottom:10px}.draggable-stat-box .stat-title{color:#fff;font-size:1.2em;font-weight:700;letter-spacing:1px;margin:0;text-shadow:0 0 8px #4caf5099;text-transform:uppercase}.draggable-stat-box.opponent .stat-title{color:#fff;text-shadow:0 0 8px #f4433699}.draggable-stat-box .stat-value{font-size:2em;font-weight:700;margin:5px 0;text-align:center}.draggable-stat-box .hp-bar{background-color:#ffffff1a;border-radius:10px;height:20px;margin-top:10px;overflow:hidden;position:relative;width:100%}.draggable-stat-box .hp-fill{background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:10px;height:100%;transition:width .5s ease}.draggable-stat-box.opponent .hp-fill{background:linear-gradient(90deg,#f44336,#ff9800)}.draggable-stat-box .hp-bar span{color:#fff;font-size:.9em;font-weight:700;left:0;line-height:20px;position:absolute;right:0;text-align:center;text-shadow:0 0 3px #000c;top:0}.draggable-stat-box .drag-handle{color:#ffffffb3;cursor:move;font-size:1.2em;position:absolute;right:5px;top:5px}.draggable-stat-box .drag-handle:hover{color:#fff}.draggable-stat-box .kill-stat{align-items:center;background-color:#ffffff1a;border-radius:5px;display:flex;justify-content:space-between;margin-top:10px;padding:5px 10px}.draggable-stat-box .kill-label{color:#fff;font-weight:700}.draggable-stat-box .kill-value{color:#4caf50;font-size:1.2em;font-weight:700}.draggable-stat-box.opponent .kill-value{color:#f44336}.draggable-stat-box.combat-stats{border:2px solid #fff;box-shadow:0 0 15px #ffffff4d}.draggable-stat-box.combat-stats:hover{box-shadow:0 0 25px #ffffff80}.draggable-stat-box.combat-stats .combat-stats-content{background-color:#0000004d;border-radius:5px;margin-top:10px;max-height:200px;overflow-y:auto;padding:5px}.draggable-stat-box.combat-stats .combat-log-entry{border-radius:3px;font-size:.9em;margin-bottom:5px;padding:5px}.draggable-stat-box.combat-stats .combat-log-entry.combat{background-color:#2196f333;border-left:3px solid #2196f3}.draggable-stat-box.combat-stats .combat-log-entry.damage{background-color:#f4433633;border-left:3px solid #f44336}.draggable-stat-box.combat-stats .combat-log-entry.death{background-color:#0000004d;border-left:3px solid #000;color:#f44336;font-weight:700}.draggable-stat-box.combat-stats .combat-log-entry.play{background-color:#4caf5033;border-left:3px solid #4caf50}.game-type-message{background-color:#000c;border:1px solid #ffffff1a;border-radius:5px;box-shadow:0 2px 4px #0003;color:#fff;font-size:16px;font-weight:700;left:50%;padding:10px 20px;position:fixed;text-align:center;top:20px;transform:translateX(-50%);z-index:1000}.game-header{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;border:3px solid #daa520;border-radius:12px;box-shadow:0 4px 8px #0000004d,0 0 20px #daa52066,inset 0 0 15px #daa52033;color:#fff;display:flex;justify-content:space-between;margin:15px auto 25px;max-width:900px;min-width:700px;padding:18px 30px;position:relative;z-index:100}.game-info{gap:10px;min-width:180px}.game-type{border-radius:6px;font-size:.9em;font-weight:700;letter-spacing:.5px;padding:6px 12px;text-align:center;text-transform:uppercase}.game-type.free{background-color:#2e8b57b3;border:1px solid #2e8b57;box-shadow:0 0 10px #2e8b574d}.game-type.paid{background-color:#daa520b3;border:1px solid #daa520;box-shadow:0 0 10px #daa5204d}.room-id{background:#4fc3f726;border:1px solid #4fc3f74d;border-radius:6px;color:#4fc3f7;font-family:monospace;font-size:1em;letter-spacing:1px;padding:6px 12px;text-align:center}.player-stats{align-items:center;background:#0009;border-radius:8px;display:flex;gap:15px;min-width:280px;padding:12px 20px;transition:all .3s ease}.player-stats.active-turn{background:#2e8b5733;border:1px solid #2e8b574d;box-shadow:0 0 15px #2e8b5733}.player-avatar{border:2px solid #daa520;border-radius:50%;box-shadow:0 0 10px #daa52066;height:48px;object-fit:cover;width:48px}.player-info{flex:1 1}.player-name{align-items:center;color:#fff;display:flex;font-size:1.1em;font-weight:600;gap:10px;margin-bottom:5px;text-shadow:0 2px 4px #0000004d}.total-hp{align-items:center;background:#ff4b4b26;border:1px solid #ff4b4b4d;border-radius:12px;box-shadow:0 0 10px #ff4b4b33;color:#ff4b4b;display:inline-flex;font-size:.9em;gap:4px;padding:2px 8px}.energy-bar{background:#ffffff1a;border:1px solid #fff3;border-radius:4px;height:8px;margin-top:5px;overflow:hidden;position:relative}.energy-fill{height:100%;transition:width .3s ease-out,background-color .3s ease}.energy-value{color:#fffc;font-size:.8em;position:absolute;right:-25px;top:-2px}.vs-badge{background:#daa52033;border:1px solid #daa52066;border-radius:20px;box-shadow:0 0 15px #daa5204d,0 0 30px #daa52026;color:#daa520;font-size:1.3em;font-weight:700;margin:0 20px;padding:8px 16px;text-shadow:0 2px 4px #0000004d}.player-area{border-radius:12px;margin:10px 0;padding:20px;position:relative;transition:all .3s ease}.player-area.active-turn{background:#2e8b571a;border:1px solid #2e8b5733;box-shadow:inset 0 0 30px #2e8b571a}.opponent-area{margin-bottom:20px}.battlefield{align-items:center;display:flex;flex-direction:row;gap:40px;height:300px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:20px;position:relative}.opponent-field,.player-field{align-items:center;background:#0003;border:1px solid #ffffff1a;border-radius:10px;display:flex;justify-content:center;min-height:180px;padding:10px;transition:all .3s ease;width:45%}.battlefield-vs{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10}.field-highlight{background:#2e8b5726;border:1px solid #2e8b574d;box-shadow:0 0 20px #2e8b5733}.turn-indicator{background:#000000d9;border:1px solid #2ecc7180;border-radius:20px;color:#4caf50;font-size:.9rem;font-weight:700;margin-left:10px;padding:4px 12px;text-shadow:none}.turn-indicator.active{background:#4caf50;border:1px solid #ffffff4d;box-shadow:0 2px 8px #2ecc714d;color:#fff}.error-message{animation:fadeIn .3s ease-in-out;background-color:#dc3545e6;border:1px solid #ffffff1a;border-radius:5px;box-shadow:0 2px 4px #0003;color:#fff;font-size:16px;font-weight:700;left:50%;padding:10px 20px;position:fixed;top:80px;transform:translateX(-50%);z-index:1000}.room-info-content{padding:15px}.room-info-content p{align-items:center;display:flex;justify-content:space-between;margin:8px 0}.copy-room-id{background:#4fc3f726;border:1px solid #4fc3f74d;border-radius:4px;color:#4fc3f7;cursor:pointer;margin-top:10px;padding:8px;transition:all .3s ease;width:100%}.copy-room-id:hover{background:#4fc3f740}.status-dot{border-radius:50%;display:inline-block;height:8px;margin-left:8px;width:8px}.status-dot.host{background-color:#4caf50}.status-dot.playing{background-color:#2196f3}.status-dot.finished{background-color:#f44336}.card img{border-radius:10px;height:100%;object-fit:contain;width:100%}.game-over-overlay{align-items:center;animation:fadeIn .5s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#000000d9;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.game-over-content{animation:slideUp .6s ease-out forwards;background:#ffffff1a;border:2px solid #fff3;border-radius:20px;box-shadow:0 15px 35px #0006;max-width:500px;padding:30px;text-align:center;transform:translateY(20px);width:90%}.game-over-title{color:var(--text-color);font-size:2.5rem;letter-spacing:3px;margin-bottom:20px;text-shadow:0 2px 4px #00000080;text-transform:uppercase}.game-over-message{color:var(--text-secondary);font-size:1.2rem;margin-bottom:25px}.game-over-stats{grid-gap:15px;background:#0000004d;border:1px solid #ffffff1a;border-radius:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);margin:20px 0;padding:15px}.stat-item{padding:10px;text-align:center}.stat-label{color:var(--text-secondary);font-size:.9rem;margin-bottom:5px}.stat-value{color:var(--primary-color);font-size:1.5rem;font-weight:700}.play-again-btn{background:var(--primary-color);border:none;border-radius:25px;box-shadow:0 4px 15px #2ecc714d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;letter-spacing:1px;margin-top:20px;padding:12px 30px;text-transform:uppercase;transition:all .3s ease}.play-again-btn:hover{background:var(--secondary-color);box-shadow:0 6px 20px #2ecc7166;transform:translateY(-2px)}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.victory{color:var(--primary-color)}.defeat{color:var(--danger-color)}.leaderboard-container{display:flex;flex-direction:column;gap:20px;margin:0 auto;max-width:1200px;padding:20px}.free-game{color:#2196f3}.paid-game{color:#4caf50}.free-game-id{background-color:#2196f3}.free-game-id,.paid-game-id{border-radius:4px;color:#fff;display:inline-block;font-weight:700;padding:2px 8px}.paid-game-id{background-color:#4caf50}.pagination-controls{gap:10px;margin-top:15px}.pagination-button{background-color:#4a5568;border-radius:4px;padding:8px 15px;transition:background-color .3s}.pagination-button:hover:not(:disabled){background-color:#2d3748}.pagination-button:disabled{background-color:#718096;opacity:.7}.page-indicator{color:#4a5568;font-size:14px;margin:0 10px}.table-section{margin-bottom:30px}.table-section h2{color:gold;font-size:1.5em;margin-bottom:15px;text-align:center}.leaderboard-table{background:#ffffff1a;border-collapse:collapse;border-radius:4px;overflow:hidden;width:100%}.leaderboard-table td,.leaderboard-table th{border-bottom:1px solid #fff3;padding:12px;text-align:left}.leaderboard-table th{background:#ffd70033;color:gold;font-weight:700}.leaderboard-table tr:hover{background:#ffffff0d}.leaderboard-table tr:last-child td{border-bottom:none}.winner-info{align-items:center;color:#4caf50;display:inline-flex;font-size:.95em;font-weight:700;margin-left:8px;text-shadow:0 0 10px #4caf5066}.winner-info:before{content:"👑";font-size:1.1em;margin-right:4px}.game-status{align-items:center;border-radius:4px;display:inline-flex;display:inline-block;flex-wrap:wrap;font-size:.85rem;font-weight:500;gap:4px;min-width:80px;padding:4px 8px;text-align:center}.status-available{background-color:#4caf50;color:#fff}.status-waiting{background-color:#2196f3;color:#fff}.status-playing{background-color:#ff9800;color:#fff}.status-finished{background-color:#9c27b0;color:#fff}.status-abandoned{background-color:#f44336;color:#fff}.status-unknown{background-color:#9e9e9e;color:#fff}.leaderboard-table td,.leaderboard-table th{padding:8px 12px;text-align:center}.room-info-box{position:relative}.room-copy-message{animation:fadeIn .3s;background-color:#000000b3;border-radius:4px;bottom:-40px;color:#fff;font-size:14px;left:50%;padding:8px 15px;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:100}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.game-room-id{font-family:monospace;padding:4px 8px}.game-room-id.free.active{background-color:#2196f333;border:1px solid #2196f3;color:#2196f3}.game-room-id.free.active:hover{background-color:#2196f34d;transform:translateY(-1px)}.game-room-id.paid.active{background-color:#4caf5033;border:1px solid #4caf50;color:#4caf50}.game-room-id.paid.active:hover{background-color:#4caf504d;transform:translateY(-1px)}.game-room-id.finished{background-color:#9c27b01a;border:1px solid #9c27b04d;color:#9c27b0;cursor:not-allowed;opacity:.8}.game-room-id.active:hover:after{opacity:1}.game-room-id.finished:after{content:"Game completed"}.join-room-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:700;padding:8px 16px;transition:background-color .3s}.join-room-button:hover{background-color:#45a049}.no-active-games{color:#666;font-style:italic;padding:20px;text-align:center}.active-games-loading{color:#333;padding:20px}.active-games-error{color:#f33;font-weight:700;padding:20px}.wallet-info{color:#666;font-size:.9rem;margin-bottom:15px}.active-paid-games{background-color:#000000b3;border:1px solid #ffffff1a;border-radius:10px;margin-bottom:20px;padding:15px}.active-paid-games h3{color:#4ade80;font-size:1.2rem;margin-bottom:15px;margin-top:0;text-align:center}.active-games-list{display:flex;flex-direction:column;gap:10px;max-height:200px;overflow-y:auto}.active-game-item{align-items:center;background-color:#1e293bcc;border:1px solid #ffffff0d;border-radius:8px;display:flex;justify-content:space-between;padding:10px 15px}.game-info{display:flex;flex-direction:column;gap:5px}.game-id{color:#f3f4f6}.game-id,.game-token{font-size:.9rem;font-weight:700}.game-token{color:#fbbf24}.game-status{color:#a5f3fc;font-size:.8rem}.game-time{color:#9ca3af;font-size:.8rem}.join-game-btn{background-color:#4ade80;border:none;border-radius:6px;color:#1e293b;cursor:pointer;font-weight:700;padding:8px 15px;transition:all .2s ease}.join-game-btn:hover{background-color:#22c55e;transform:translateY(-2px)}.active-games-loading{color:#9ca3af;padding:10px;text-align:center}.active-games-error{background-color:#ef44441a;border-radius:6px;color:#ef4444;margin-bottom:15px;padding:10px;text-align:center}.game-options{background:#000000b3;border-radius:12px;margin:0 auto;max-width:600px;padding:2rem;width:100%}.token-selector{display:flex;gap:1rem;margin-bottom:2rem}.token-button{align-items:center;background:#ffffff1a;border:2px solid #0000;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:.5rem;padding:1rem;transition:all .3s ease}.token-button:hover{background:#ffffff26}.token-button.active{background:#00ff9d1a;border-color:#00ff9d}.token-button .balance{color:#888;font-size:.9rem}.stake-options{text-align:center}.stake-options h3{color:#fff;margin-bottom:1.5rem}.options-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stake-button{align-items:center;background:#00ff9d1a;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;padding:1rem;transition:all .3s ease}.stake-button:hover:not(:disabled){background:#00ff9d33;transform:translateY(-2px)}.stake-button:disabled{background:#555;border:1px solid #444;color:#aaa;cursor:not-allowed;opacity:.7}.stake-button:disabled:hover{background:#555;box-shadow:none;transform:none}.gas-fee{color:#888;font-size:.8rem}.connect-wallet-prompt{background:#ffffff1a;border-radius:8px;color:#888;margin-top:2rem;padding:1rem;text-align:center}.wallet-connection{background:#000c;border-radius:10px;color:#fff;gap:1rem;min-width:300px;padding:1rem}.wallet-connection,.wallet-status{align-items:center;display:flex;flex-direction:column}.wallet-status{width:100%}.wallet-info{align-items:center;display:flex;flex-direction:column;gap:.5rem;position:relative;width:100%}.disconnect-button{background:#f44;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;margin-top:1rem;max-width:250px;padding:.5rem 1rem;transition:background-color .2s;width:100%;z-index:10}.disconnect-button:hover{background:red}.wallet-address{background:#00ff9d1a;border-radius:4px;color:#00ff9d;font-family:monospace;padding:.25rem .5rem}.balance-container{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.balance-item{align-items:center;background:#ffffff1a;border-radius:4px;display:flex;gap:.5rem;padding:.5rem 1rem}.balance-label{color:#888;font-size:.9rem}.balance-value{color:#fff;font-weight:700}.connect-prompt{color:#888;margin:1rem 0}.error-message{color:#f44;margin-top:.5rem;text-align:center}.wallet-status-connected{background-color:#00ff9d1a;border-radius:4px;color:#00ff9d;display:inline-block;font-weight:700;margin-bottom:5px;padding:5px 10px}.connect-button-container{align-items:center;display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;width:100%}.connection-error{background:#ff4d4d1a;border-radius:4px;color:#ff4d4d;margin-top:.5rem;padding:.5rem;width:100%}.custom-connect-button,.wallet-connection button:not(.disconnect-button){background-color:#00c853!important;border:none!important;border-radius:8px!important;box-shadow:0 4px 6px #0000001a!important;color:#fff!important;cursor:pointer!important;font-size:1rem!important;font-weight:700!important;letter-spacing:1px!important;max-width:250px!important;padding:12px 24px!important;position:relative!important;text-align:center!important;text-transform:uppercase!important;transition:all .3s ease!important;width:100%!important;z-index:10!important}.custom-connect-button:hover,.wallet-connection button:not(.disconnect-button):hover{background-color:#00e676!important;box-shadow:0 6px 12px #0003!important;transform:translateY(-2px)!important}.disconnect-button{background-color:#ff4d4d!important;border:none!important;border-radius:8px!important;box-shadow:0 4px 6px #0000001a!important;color:#fff!important;cursor:pointer!important;display:block!important;font-size:.9rem!important;font-weight:700!important;letter-spacing:1px!important;margin-top:10px!important;max-width:250px!important;padding:10px 20px!important;position:relative!important;text-align:center!important;text-transform:uppercase!important;transition:all .3s ease!important;width:100%!important;z-index:10!important}.disconnect-button:hover{background-color:#f33!important;box-shadow:0 6px 12px #0003!important;transform:translateY(-2px)!important}.connect-button-wrapper{position:relative;z-index:5}.connect-button-container,.wallet-connection{position:relative;z-index:auto}.wallet-selector-dialog{max-width:450px;width:90%}.wallet-list-container{padding:0}.wallet-list{list-style:none;margin:0 0 20px;padding:0}.wallet-item{align-items:center;border:1px solid #0000001a;border-radius:8px;cursor:pointer;display:flex;margin-bottom:8px;padding:12px 15px;transition:background-color .2s}.wallet-item:hover{background-color:#00c8531a}.wallet-icon{height:40px;width:40px}.icon-placeholder{background-color:#f0f0f0;border-radius:8px;height:100%;width:100%}.wallet-name{font-size:16px}.wallet-note{color:#666;display:block;font-size:11px;margin-top:2px}.wallet-info-section{border-top:1px solid #0000001a;padding-top:15px}.wallet-info-section h3{color:#333;font-size:18px;margin-top:0}.wallet-info-section p{color:#666;font-size:14px;line-height:1.4;margin:8px 0}.wallet-popup-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:999}.wallet-list-popup{background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000026;max-width:400px;padding:24px;position:relative;width:100%;z-index:1000}.wallet-list-header{align-items:center;border-bottom:1px solid #eaeaea;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.wallet-list-header h3{color:#1a1a1a;font-size:1.25rem;font-weight:600;margin:0}.wallet-close-icon{align-items:center;background-color:#ff4d4d;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:24px;justify-content:center;line-height:1;transition:background-color .2s ease,transform .2s ease;width:24px}.wallet-close-icon:hover{background-color:#f33;transform:scale(1.1)}.wallet-list{gap:12px}.wallet-option{align-items:center!important;background:#f8f9fa!important;border:1px solid #eaeaea!important;border-radius:12px!important;box-shadow:none!important;cursor:pointer!important;display:flex!important;max-width:none!important;padding:16px!important;text-transform:none!important;transition:all .2s ease!important;width:100%!important}.wallet-option:hover{background:#f1f3f5!important;border-color:#e1e1e1!important;transform:translateY(-2px)!important}.wallet-icon{align-items:center;background-color:#fff;background-color:initial;border-radius:10px;display:flex;font-size:30px;height:42px;justify-content:center;margin-right:15px;padding:2px;width:42px}.wallet-icon img{border-radius:5px;display:block;height:36px;margin:0 auto;object-fit:contain;width:36px}.wallet-option[data-wallet="Sui Wallet"]{background:#6fbcf0!important;color:#fff!important}.wallet-option[data-wallet=Phantom]{background:#ab9ff2!important;color:#fff!important}.wallet-option[data-wallet=Suiet]{background:#4f87ff!important;color:#fff!important}.wallet-name{font-size:1rem;font-weight:500}.connection-error{color:#dc3545;font-size:.875rem;margin-top:12px;text-align:center}.disconnect-wallet-button{background:#f44;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:.9rem;margin-top:.5rem;padding:.5rem 1rem;transition:background-color .2s;width:auto}.disconnect-wallet-button:hover{background:red}.profile-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.profile-modal{animation:modalFadeIn .3s ease-out;background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 10px 25px #00000080;color:#fff;max-height:90vh;max-width:1000px;overflow-y:auto;padding:0;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.profile-modal-header{align-items:center;background:#0003;border-bottom:1px solid #ffffff1a;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:16px 24px}.profile-modal-header h2{color:#fff;font-size:1.5rem;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#ffffffb3;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.close-button:hover{background:#ffffff1a;color:#fff}.profile-content{padding:24px}.profile-info-section{background:#0003;border:1px solid #ffffff0d;border-radius:8px;display:flex;margin-bottom:30px;padding:20px}.profile-avatar{margin-right:24px}.profile-avatar img{background-color:#2a2a3a;border:3px solid #fff3;border-radius:50%;height:100px;object-fit:cover;width:100px}.profile-details{flex:1 1}.profile-details h3{color:#fff;font-size:1.5rem;margin:0 0 12px}.wallet-info{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.wallet-address{align-items:center;background:#0003;border-radius:6px;display:flex;grid-column:1/-1;margin-bottom:8px;padding:8px 12px}.label{color:#ffffffb3;font-size:.9rem;margin-right:8px}.value{color:#fff;font-weight:500}.copy-button{background:#ffffff1a;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;margin-left:8px;padding:4px 8px;transition:background .2s}.copy-button:hover{background:#fff3}.account-info,.balance-info{display:flex;flex-direction:column;gap:8px}.balance-item,.joined-date,.last-active{align-items:center;background:#00000026;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.game-history-section{background:#0003;border:1px solid #ffffff0d;border-radius:8px;padding:20px}.game-history-section h3{color:#fff;font-size:1.3rem;margin:0 0 16px}.filter-controls{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{color:#ffffffb3;font-size:.9rem}.filter-group select{background:#0000004d;border:1px solid #ffffff1a;border-radius:4px;color:#fff;font-size:.9rem;min-width:150px;padding:8px 12px}.game-history-table-container{border:1px solid #ffffff0d;border-radius:8px;margin-bottom:20px;margin-top:16px;max-height:400px;overflow-x:auto;overflow-y:auto}.loading-message{color:#ffffffb3;font-size:1rem;padding:24px;text-align:center}.game-history-table{border-collapse:collapse;font-size:.9rem;text-align:left;width:100%}.game-history-table th{background:#0000004d;border-bottom:1px solid #ffffff1a;color:#ffffffe6;font-weight:500;padding:12px 16px;position:sticky;top:0;z-index:10}.game-history-table td{border-bottom:1px solid #ffffff0d;padding:12px 16px}.game-history-table tr:hover{background:#ffffff0d}.pagination-controls{background:#0003;border-radius:8px;margin-top:16px;padding:1rem}.pagination-button{background:#ffffff1a;border:none;color:#fff;font-size:.9rem;min-width:100px;padding:8px 16px}.pagination-button:hover:not(:disabled){background:#fff3;transform:translateY(-1px)}.page-info{background:#0000004d;border-radius:4px;color:#ffffffb3;min-width:120px;padding:.5rem 1rem;text-align:center}.status-badge{border-radius:4px;display:inline-block;font-size:.8rem;font-weight:500;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.status-waiting{background:#ff980033;border:1px solid #ff98004d;color:#ffa726}.status-playing{background:#2196f333;border:1px solid #2196f34d;color:#64b5f6}.status-completed{background:#4caf5033;border:1px solid #4caf504d;color:#81c784}.status-abandoned{background:#9e9e9e33;border:1px solid #9e9e9e4d;color:#bdbdbd}.status-available{background:#00c85333;border:1px solid #00c8534d;color:#00c853}.status-failed{background:#f4433633;border:1px solid #f443364d;color:#e57373}.action-button{align-items:center;background:#ffffff1a;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:.8rem;margin-right:6px;padding:6px 12px;text-decoration:none;transition:all .2s ease}.action-button:last-child{margin-right:0}.resume-button{background:#2196f333;color:#64b5f6}.resume-button:hover{background:#2196f34d}.view-button{background:#4caf5033;color:#81c784}.view-button:hover{background:#4caf504d}.delete-button{background:#f4433633;color:#e57373}.delete-button:hover{background:#f443364d}.explorer-link{background:#9c27b033;color:#ba68c8}.explorer-link:hover{background:#9c27b04d}.no-games-message{color:#ffffff80;padding:24px;text-align:center}@media (max-width:768px){.profile-info-section{flex-direction:column}.profile-avatar{display:flex;justify-content:center;margin-bottom:16px;margin-right:0}.wallet-info{grid-template-columns:1fr}.filter-controls{flex-direction:column}.game-history-table td,.game-history-table th{padding:8px}.action-button{margin-bottom:4px}}.player-status-control{animation:glow 2s infinite alternate;background-color:#00000080;border:2px solid #4a90e2;border-radius:8px;box-shadow:0 4px 8px #0003;margin-bottom:20px;padding:15px}@keyframes glow{0%{box-shadow:0 0 5px #4a90e280}to{box-shadow:0 0 15px #4a90e2cc}}.player-status-control h3{color:#fff;font-size:1.2rem;margin-bottom:10px;margin-top:0}.status-options{display:flex;flex-wrap:wrap;gap:10px}.status-option{align-items:center;background-color:#0000004d;border-radius:20px;cursor:pointer;display:flex;padding:8px 15px;transition:all .3s ease}.status-option:hover{background-color:#00000080}.status-option.selected{background-color:#4a6ee0}.status-option input[type=radio]{height:0;opacity:0;position:absolute;width:0}.status-label{color:#fff;font-size:.9rem;font-weight:500}.status-option.selected:first-child{background-color:#4a90e2}.status-option.selected:nth-child(2){background-color:#50c878}.status-option.selected:nth-child(3){background-color:#e74c3c}@media (max-width:768px){.status-options{flex-direction:column}}.online-players-table{margin-bottom:2rem}.pagination-controls{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:1rem;padding:.5rem}.pagination-button{align-items:center;background-color:#21262d;border:1px solid #30363d;border-radius:6px;color:#c9d1d9;cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.pagination-button:hover:not(:disabled){background-color:#30363d}.pagination-button:disabled{cursor:not-allowed;opacity:.5}.page-info{color:#c9d1d9;font-size:.9rem}.status-indicator{border-radius:12px;font-size:.875rem;font-weight:500;padding:.25rem .5rem}.status-indicator.free{background-color:#4caf50;color:#fff}.status-indicator.playing{background-color:#ffc107;color:#000}.status-indicator.offline{background-color:#f44336;color:#fff}.status-indicator.waiting{background-color:#2196f3;color:#fff}.status-indicator.completed,.status-indicator.finished{background-color:#9c27b0;color:#fff}.status-indicator.available{background-color:#4caf50;color:#fff}.game-rooms-container{width:100%}.game-room-id{border-radius:4px;cursor:pointer;display:inline-block;font-weight:500;padding:6px 12px;position:relative;transition:all .2s ease;-webkit-user-select:all;user-select:all}.game-room-id:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.game-room-id:active{transform:translateY(0)}.game-room-id:after{background-color:#000c;border-radius:4px;bottom:100%;color:#fff;content:"Click to copy";font-size:12px;left:50%;margin-bottom:4px;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .2s ease;white-space:nowrap}.game-room-id:hover:after{opacity:1}.game-room-id.copied:after{background-color:#4caf50;content:"Copied!"}.game-room-id.free{background-color:#1aa0ff;border:1px solid #bbdefb;color:#fff}.game-room-id.paid{background-color:#169921;border:1px solid #c8e6c9;color:#fff}.game-rooms-header{align-items:center;background-color:#2196f31a;border-radius:4px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.5rem}.game-rooms-header:hover{background-color:#2196f333}.rooms-count{font-weight:500}.game-rooms-list{display:flex;flex-wrap:wrap;gap:.5rem}.game-rooms-list.expanded{border:1px solid #eee;border-radius:4px;max-height:300px;overflow-y:auto;padding:.5rem}.game-rooms-list.collapsed{margin-top:.5rem}.room-id{border-radius:4px;font-size:.875rem;padding:.25rem .5rem}.free-room{background-color:#2196f3;color:#fff}.join-game-button,.paid-room{background-color:#4caf50;color:#fff}.join-game-button{border:none;border-radius:4px;cursor:pointer;font-weight:700;padding:8px 16px;transition:background-color .3s}.join-game-button:hover:not(:disabled){background-color:#45a049}.join-game-button.disabled,.join-game-button:disabled{background-color:#ccc;color:#666;cursor:not-allowed;opacity:.7;position:relative}.join-game-button[title]:hover:after{background-color:#000c;border-radius:4px;bottom:100%;color:#fff;content:attr(title);font-size:12px;left:50%;margin-bottom:5px;padding:5px 10px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:10}.your-game{background-color:#9e9e9e;border-radius:4px;color:#fff;display:inline-block;font-size:.875rem;font-weight:500;padding:.5rem 1rem}.action-buttons,.wallet-list{display:flex;flex-direction:column;gap:.5rem}.wallet-item{padding:.25rem 0}.no-players-message{background-color:#2196f31a;border-radius:8px;margin-top:1rem;padding:2rem;text-align:center}.no-players-message p{color:#555;font-size:1.1rem}.no-rooms{color:#777;font-style:italic}.popup-notification{background-color:#f9f9f9;border:2px solid #4caf50;border-radius:10px;box-shadow:0 4px 8px #0003;display:block!important;font-family:Arial,sans-serif;left:50%;padding:20px;position:fixed;text-align:center;top:50%;transform:translate(-50%,-50%);width:300px;z-index:1000}.popup-notification.show{display:block}.popup-notification .popup-header{color:#333;font-size:18px;font-weight:700;margin-bottom:10px}.popup-notification .popup-content{color:#555;font-size:14px;margin-bottom:20px}.popup-notification .popup-footer{align-items:center;display:flex;justify-content:space-between}.popup-notification button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 30px;width:347px}.popup-notification button:hover{background-color:#45a049}.popup-notification .close-button{background-color:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 30px;width:70px}.popup-notification .close-button:hover{background-color:#d32f2f}
/*# sourceMappingURL=main.209b7bbf.css.map*/