*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0f0f1e;color:#fff;font-family:Courier New,monospace;overflow-x:hidden;overflow-y:auto}#root,.App{display:flex;flex-direction:column;min-height:100vh}.App{width:100%}.screen{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:flex-start;min-height:100vh;overflow-x:hidden;overflow-y:auto;padding:20px}@media (max-width:768px){.screen{padding:10px}}.hidden{display:none!important}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.card,.player-status,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#1a1a2e}::-webkit-scrollbar-thumb{background:#52d4c4;border:2px solid #1a1a2e}::-webkit-scrollbar-thumb:hover{background:#ff8542}.loading{animation:spin 1s ease-in-out infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.notification-banner{background:#16213e;border-radius:0;box-shadow:0 0 20px #ffd4524d;color:#ffd452;max-width:90%;top:20px;z-index:1000}.waiting-screen{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:100vh}.error-message{background:#f03;border:2px solid #cc0028;color:#fff;font-weight:700;margin:10px 0;padding:10px 15px;text-align:center}@media (max-width:768px){.notification-banner{font-size:14px;padding:10px 20px;top:10px}}:root{--bg-dark:#0f0f1e;--bg-medium:#1a1a2e;--bg-light:#16213e;--accent-orange:#ff8542;--accent-red:#ff5942;--accent-yellow:#ffd452;--accent-teal:#52d4c4;--text-primary:#fff;--text-secondary:#a8a8a8;--border-color:#52d4c4}.pixel-text{image-rendering:pixelated;letter-spacing:2px;text-shadow:2px 2px 0 #ff8542;text-shadow:2px 2px 0 var(--accent-orange)}.pixel-button,.pixel-text{font-family:Courier New,monospace;font-weight:700;text-transform:uppercase}.pixel-button{background:#16213e;background:var(--bg-light);border:3px solid #52d4c4;border:3px solid var(--border-color);box-shadow:3px 3px 0 #52d4c44d,6px 6px 0 #52d4c41a;color:#fff;color:var(--text-primary);cursor:pointer;font-size:16px;min-width:150px;padding:15px 30px;position:relative;transition:all .1s}.pixel-button:hover:not(:disabled){background:#ff8542;background:var(--accent-orange);box-shadow:5px 5px 0 #ff854280,8px 8px 0 #ff854233;color:#0f0f1e;color:var(--bg-dark);transform:translate(-2px,-2px)}.pixel-button:active:not(:disabled){box-shadow:1px 1px 0 #ff85424d;transform:translate(2px,2px)}.pixel-button:disabled{background:#1a1a2e;background:var(--bg-medium);cursor:not-allowed;opacity:.5}.pixel-button-primary{border-color:#ff8542;border-color:var(--accent-orange);box-shadow:3px 3px 0 #ff85424d,6px 6px 0 #ff85421a}.pixel-button-primary:hover:not(:disabled){background:#ff8542;background:var(--accent-orange);box-shadow:5px 5px 0 #ff854280,8px 8px 0 #ff854233}.pixel-button-secondary{border-color:#ff5942;border-color:var(--accent-red);box-shadow:3px 3px 0 #ff59424d,6px 6px 0 #ff59421a}.pixel-button-secondary:hover:not(:disabled){background:#ff5942;background:var(--accent-red);box-shadow:5px 5px 0 #ff594280,8px 8px 0 #ff594233}.pixel-button-danger{background:#1a1a2e;background:var(--bg-medium);border-color:#c00;box-shadow:3px 3px 0 #cc00004d,6px 6px 0 #cc00001a}.pixel-button-danger:hover:not(:disabled){background:#c00;box-shadow:5px 5px 0 #cc000080,8px 8px 0 #c003;color:#fff}.pixel-input{background:#0f0f1e;background:var(--bg-dark);border:3px solid #52d4c4;border:3px solid var(--border-color);color:#fff;color:var(--text-primary);font-family:Courier New,monospace;font-size:16px;outline:none;padding:12px 15px;transition:all .2s;width:100%}.pixel-input:focus{border-color:#ffd452;border-color:var(--accent-yellow);box-shadow:0 0 10px #ffd4524d}.pixel-input::placeholder{color:#a8a8a8;color:var(--text-secondary)}.main-menu-screen{background:linear-gradient(180deg,#0c0d1b,#1a1a2e);background:linear-gradient(180deg,#0c0d1b 0,var(--bg-medium) 100%)}.main-menu{background:#0c0d1b;border:4px solid #52d4c4;border:4px solid var(--border-color);box-shadow:0 0 20px #52d4c44d,inset 0 0 30px #52d4c40d;max-width:500px;padding:30px;width:100%}.menu-header{margin-bottom:30px;text-align:center}.logo-video{display:block;height:auto;image-rendering:pixelated;margin:0 auto 20px;width:100%}.game-title{animation:pulse 2s infinite;color:#ff8542;color:var(--accent-orange);display:none;font-size:48px;margin-bottom:10px}.game-subtitle{color:#a8a8a8;color:var(--text-secondary);font-size:14px;letter-spacing:1px}.connection-status{margin-bottom:20px;text-align:center}.status-connected{color:#ffd452;color:var(--accent-yellow);font-weight:700}.status-disconnected{animation:blink 1s infinite;color:#ff5942;color:var(--accent-red);font-weight:700}.status-reconnecting{animation:pulse 1.5s ease-in-out infinite;color:#ffd452;color:var(--accent-yellow);font-weight:700}.restoring-session{align-items:center;background:#0f0f1e;background:var(--bg-dark);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.restoring-session .pixel-text{animation:pulse 1.5s ease-in-out infinite;color:#ffd452;color:var(--accent-yellow);font-size:24px}.connection-banner{border-bottom:3px solid;font-family:Courier New,monospace;font-weight:700;left:0;letter-spacing:2px;padding:12px 20px;position:fixed;right:0;text-align:center;text-transform:uppercase;top:0;z-index:9999}.reconnecting-banner{animation:pulse 1.5s ease-in-out infinite;background:linear-gradient(135deg,#ffd452,#ff8542);background:linear-gradient(135deg,var(--accent-yellow),var(--accent-orange));border-bottom-color:#ff8542;border-bottom-color:var(--accent-orange);color:#0f0f1e;color:var(--bg-dark)}.disconnected-banner{animation:blink 1s infinite;background:linear-gradient(135deg,#ff5942,#c00);background:linear-gradient(135deg,var(--accent-red),#c00);border-bottom-color:#c00;color:#fff;color:var(--text-primary)}.notification-banner{animation:slideDown .3s ease-out;background:#52d4c4;background:var(--accent-teal);border:3px solid #ffd452;border:3px solid var(--accent-yellow);box-shadow:0 4px 8px #0000004d;color:#0f0f1e;color:var(--bg-dark);font-family:Courier New,monospace;font-weight:700;left:50%;padding:15px 30px;position:fixed;text-align:center;top:60px;transform:translateX(-50%);z-index:9998}.menu-buttons{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.menu-button{width:100%}.game-info{background:#0f0f1e;background:var(--bg-dark);border:2px solid #52d4c4;border:2px solid var(--accent-teal);margin-top:20px;padding:20px}.game-info h3{color:#ffd452;color:var(--accent-yellow);font-size:14px;margin-bottom:10px}.game-info ul{list-style:none;padding:0}.game-info li{color:#a8a8a8;color:var(--text-secondary);font-size:13px;padding:5px 0}.game-info li:before{color:#52d4c4;color:var(--accent-teal);content:"▸ "}.menu-form{gap:20px}.form-group,.menu-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#ff8542;color:var(--accent-orange);font-size:14px;font-weight:700}.form-buttons{display:flex;gap:10px;margin-top:10px}.form-buttons button{flex:1 1}.room-code-input{font-size:24px;letter-spacing:5px;text-align:center;text-transform:uppercase}.room-screen{background:linear-gradient(180deg,#0f0f1e,#1a1a2e);background:linear-gradient(180deg,var(--bg-dark) 0,var(--bg-medium) 100%)}.room-container{background:#1a1a2e;background:var(--bg-medium);border:4px solid #52d4c4;border:4px solid var(--border-color);box-shadow:0 0 20px #52d4c44d;max-width:600px;padding:30px;width:100%}.room-header{border-bottom:2px solid #52d4c4;border-bottom:2px solid var(--accent-teal);margin-bottom:30px;padding-bottom:20px;text-align:center}.room-code-display{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:15px}.room-code-label{color:#a8a8a8;color:var(--text-secondary);font-size:14px}.room-code{color:#ffd452;color:var(--accent-yellow);font-size:32px;font-weight:700;letter-spacing:5px;text-shadow:2px 2px 0 #ffbe0b4d}.invite-link-display{align-items:center;display:flex;flex-direction:column;gap:10px;margin-top:20px}.copy-link-button{background:#1a1a2e;background:var(--bg-medium);border:2px solid #ffd452;border:2px solid var(--accent-yellow);color:#ffd452;color:var(--accent-yellow);font-size:14px;padding:10px 20px}.copy-link-button:hover:not(:disabled){background:#ffd452;background:var(--accent-yellow);border-color:#ffd452;border-color:var(--accent-yellow);color:#0f0f1e;color:var(--bg-dark)}.invite-hint{color:#a8a8a8;color:var(--text-secondary);font-size:12px;font-style:italic;text-align:center}.room-content{display:flex;flex-direction:column;gap:20px;margin-bottom:30px}.players-section h3,.room-instructions h3{color:#ff8542;color:var(--accent-orange);font-size:16px;margin-bottom:15px}.players-list{display:flex;flex-direction:column;gap:10px}.player-item{align-items:center;background:#0f0f1e;background:var(--bg-dark);border:2px solid #52d4c4;border:2px solid var(--accent-teal);display:flex;gap:10px;justify-content:space-between;padding:15px}.player-item.player-creator{border-color:#ffd452;border-color:var(--accent-yellow)}.player-name{word-wrap:break-word;flex:1 1;line-height:1.3;white-space:normal}.player-badges{align-items:center;display:flex;gap:5px}.player-badge{color:#fff;color:var(--text-primary);font-size:11px;padding:3px 8px}.kick-button,.player-badge{background:#ff5942;background:var(--accent-red);font-weight:700}.kick-button{border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:14px;padding:4px 8px;transition:all .2s}.kick-button:hover{background:#f03;transform:scale(1.1)}.player-badge.current{animation:blink 1s infinite;background:#ffd452;background:var(--accent-yellow)}.player-disconnected{border-style:dashed;opacity:.6}.disconnected-indicator{color:#ff5942;color:var(--accent-red);font-size:.85em;font-style:italic}.room-info{border:2px dashed #52d4c4;border:2px dashed var(--accent-teal);color:#a8a8a8;color:var(--text-secondary);font-style:italic;padding:15px;text-align:center}.room-info,.room-instructions{background:#0f0f1e;background:var(--bg-dark)}.room-instructions{border:2px solid #ff5942;border:2px solid var(--accent-red);padding:20px}.room-instructions ul{list-style:none;padding:0}.room-instructions li{color:#a8a8a8;color:var(--text-secondary);font-size:13px;padding:5px 0}.room-instructions li:before{color:#ff5942;color:var(--accent-red);content:"• "}.room-actions{display:flex;flex-direction:column;gap:10px}.waiting-message{color:#ffd452;color:var(--accent-yellow);font-weight:700;padding:15px;text-align:center}.game-starting-overlay{align-items:center;background:#0f0f1ef2;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.game-starting-message{animation:pulse 1s infinite;color:#ffd452;color:var(--accent-yellow);font-size:48px}.card{background:#fff;border:3px solid #333;border-radius:8px;box-shadow:3px 3px 0 #0000004d,0 0 10px #52d4c433;display:flex;flex-direction:column;height:160px;justify-content:space-between;padding:10px;position:relative;transition:all .2s;-webkit-user-select:none;user-select:none;width:120px}.card:hover:not(.card-disabled){box-shadow:5px 5px 0 #0000004d,0 0 20px #52d4c480;transform:translateY(-5px)}.card-small{font-size:12px;height:110px;padding:6px;width:80px}.card-large{font-size:20px;height:200px;padding:12px;width:150px}.card-selected{border-color:#ffd452;border-color:var(--accent-yellow);box-shadow:5px 5px 0 #ffd4524d,0 0 30px #ffd452cc;transform:translateY(-10px)}.card-disabled{cursor:not-allowed!important;opacity:.5}.card-back{background:linear-gradient(135deg,#1a1a2e,#16213e);border-color:#52d4c4;border-color:var(--accent-teal)}.card-back,.card-back-pattern{align-items:center;justify-content:center}.card-back-pattern{display:flex;flex-direction:column;height:100%}.card-back-symbol{color:#52d4c4;color:var(--accent-teal);font-size:16px;font-weight:700;transform:rotate(-15deg)}.card-corner{align-items:center;display:flex;flex-direction:column;line-height:1}.card-corner-top{align-items:flex-start}.card-corner-bottom{align-items:flex-end;transform:rotate(180deg)}.card-value{font-size:18px;font-weight:700}.card-small .card-value{font-size:12px}.card-suit{font-size:16px}.card-small .card-suit{font-size:11px}.card-center{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;min-height:0;overflow:hidden;position:relative}.card-image{height:auto;image-rendering:pixelated;max-height:80px;max-width:90%;object-fit:contain;width:auto}.card-small .card-image{max-height:50px}.card-large .card-image{max-height:120px}.card-main-symbol{font-size:48px;font-weight:700}.card-small .card-main-symbol{font-size:32px}.card-special-note{font-size:10px;margin-top:5px;padding:2px 5px}.card-selected-indicator,.card-special-note{background:#ffd452;background:var(--accent-yellow);color:#0f0f1e;color:var(--bg-dark);font-weight:700}.card-selected-indicator{align-items:center;border-radius:50%;box-shadow:0 0 10px #ffd45280;display:flex;font-size:16px;height:25px;justify-content:center;position:absolute;right:5px;top:5px;width:25px}.player-status{align-items:center;background:#16213e;background:var(--bg-light);border:3px solid #52d4c4;border:3px solid var(--accent-teal);display:flex;gap:15px;min-width:280px;padding:15px;position:relative;transition:all .2s}.player-status.player-current{border-color:#ffd452;border-color:var(--accent-yellow);box-shadow:0 0 20px #ffd45280}.player-status.player-me{background:#1a1a2e;background:var(--bg-medium);border-color:#ffd452;border-color:var(--accent-yellow)}.player-status.player-dead{filter:grayscale(100%);opacity:.5}.player-status.player-selectable{cursor:pointer}.player-status.player-selectable:hover{border-color:#ff8542;border-color:var(--accent-orange);box-shadow:0 0 20px #ff854280;transform:scale(1.05)}.player-info{display:flex;flex:1 1;flex-direction:column;gap:10px}.player-name{align-items:center;color:#ff8542;color:var(--accent-orange);display:flex;font-size:16px;font-weight:700;gap:10px}.player-stats{display:flex;gap:15px}.player-stat{align-items:center;display:flex;gap:5px}.stat-label{color:#a8a8a8;color:var(--text-secondary);font-size:12px}.stat-value{font-size:18px;font-weight:700}.life-value{color:#ff5942;color:var(--accent-red)}.defense-value{color:#52d4c4;color:var(--accent-teal)}.player-defense-card{align-items:center;display:flex}.no-defense{color:#a8a8a8;color:var(--text-secondary);font-size:12px;font-style:italic}.player-status-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.player-eliminated{color:#ff5942;color:var(--accent-red);font-size:24px;font-weight:700;text-shadow:2px 2px 0 #00000080}.player-select-hint{animation:bounce 1s infinite;background:#ff8542;background:var(--accent-orange);bottom:-25px;color:#fff;font-size:11px;font-weight:700;left:50%;padding:3px 10px;position:absolute;transform:translateX(-50%);white-space:nowrap}@keyframes bounce{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-5px)}}.player-cards-display{display:flex;flex-direction:column;gap:10px}.player-cards-display.horizontal-layout{align-items:flex-start;flex-direction:row;gap:15px}.defense-card-section,.life-cards-section{display:flex;flex-direction:column;gap:5px}.cards-label{color:#a8a8a8;color:var(--text-secondary);font-size:11px;font-weight:700;text-transform:uppercase}.defense-card,.life-cards{display:flex;flex-wrap:wrap;gap:5px}.player-hand{background:#16213e;background:var(--bg-light);border:3px solid #52d4c4;border:3px solid var(--accent-teal);padding:20px;width:100%}.player-hand.empty{padding:40px;text-align:center}.empty-hand-message{color:#a8a8a8;color:var(--text-secondary);font-style:italic}.selection-info{background:#0f0f1e;background:var(--bg-dark);border:2px solid #ffd452;border:2px solid var(--accent-yellow);color:#ffd452;color:var(--accent-yellow);font-weight:700;margin-bottom:15px;padding:10px;text-align:center}.selection-count{color:var(--accent-green);margin-left:10px}.hand-cards{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.game-screen{background:linear-gradient(180deg,#0f0f1e,#1a1a2e);background:linear-gradient(180deg,var(--bg-dark) 0,var(--bg-medium) 100%);padding:20px}.game-phase{margin:0 auto;max-width:1200px;width:100%}.selection-phase{display:flex;flex-direction:column;gap:30px}.phase-header{align-items:center;background:#1a1a2e;background:var(--bg-medium);border:3px solid #52d4c4;border:3px solid var(--accent-teal);display:flex;justify-content:space-between;padding:20px}.phase-header-content{flex:1 1;text-align:center}.phase-header h2{color:#ff8542;color:var(--accent-orange);margin-bottom:10px}.phase-header p{color:#a8a8a8;color:var(--text-secondary)}.leave-game-button{font-size:13px;min-width:100px;padding:10px 20px}.selection-container{display:flex;flex-direction:column;gap:20px}.selection-section{background:#1a1a2e;background:var(--bg-medium);border:3px solid #ff5942;border:3px solid var(--accent-red);padding:20px}.selection-section h3{color:#ff5942;color:var(--accent-red);margin-bottom:15px;text-align:center}.selection-cards{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.confirm-button{align-self:center;min-width:200px;width:auto}.playing-phase{display:flex;flex-direction:column;gap:20px}.game-header{background:#1a1a2e;background:var(--bg-medium);border:3px solid #52d4c4;border:3px solid var(--accent-teal);justify-content:space-between;padding:15px}.game-header,.game-info{align-items:center;display:flex}.game-info{gap:20px}.deck-count{color:#a8a8a8;color:var(--text-secondary);font-weight:700}.turn-indicator{animation:blink 1s infinite;color:#ffd452;color:var(--accent-yellow);font-size:20px}.game-board{display:flex;flex-direction:column;gap:30px}.opponents-section{background:#1a1a2e;background:var(--bg-medium);border:3px solid #ff5942;border:3px solid var(--accent-red);padding:20px}.opponents-section h3{color:#ff5942;color:var(--accent-red);margin-bottom:15px}.opponents-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.my-player-section{background:#1a1a2e;background:var(--bg-medium);border:3px solid #ffd452;border:3px solid var(--accent-yellow);display:flex;flex-direction:column;gap:20px;padding:20px}.my-status{display:flex;justify-content:center}.my-hand-section h3{color:#ffd452;color:var(--accent-yellow);margin-bottom:15px;text-align:center}.action-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.action-result-popup{animation:slideUp .3s ease-out;background:#1a1a2e;background:var(--bg-medium);border:3px solid #ffd452;border:3px solid var(--accent-yellow);bottom:100px;box-shadow:0 0 30px #ffd45280;left:50%;max-width:400px;padding:20px;position:fixed;transform:translateX(-50%);z-index:100}@keyframes slideUp{0%{opacity:0;transform:translateX(-50%) translateY(100%)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.action-result-content{gap:15px;text-align:center}.action-result-content,.drawn-card{align-items:center;display:flex;flex-direction:column}.drawn-card{gap:10px}.damage-indicator{color:#ff5942;color:var(--accent-red);font-size:24px;font-weight:700;text-shadow:2px 2px 0 #ff59424d}.gameover-phase{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px}.gameover-main{align-items:flex-start;display:flex;gap:20px;max-width:1400px;width:100%}.gameover-content{background:#1a1a2e;background:var(--bg-medium);border:4px solid #ffd452;border:4px solid var(--accent-yellow);box-shadow:0 0 40px #ffd45280;flex:1 1;max-width:600px;padding:40px;text-align:center}.gameover-content h1{color:#ff5942;color:var(--accent-red);font-size:48px;margin-bottom:20px}.winner-announcement{margin:30px 0}.winner-announcement h2{color:#ffd452;color:var(--accent-yellow);font-size:32px;margin-bottom:15px}.victory-message{animation:pulse 1.5s infinite;color:#ffd452;color:var(--accent-yellow);font-size:40px}.final-standings{margin:30px 0}.final-standings h3{color:#ff8542;color:var(--accent-orange);margin-bottom:20px}.standings-list{display:flex;flex-direction:column;gap:10px}.standing-item{align-items:center;background:#0f0f1e;background:var(--bg-dark);border:2px solid #52d4c4;border:2px solid var(--accent-teal);display:flex;gap:15px;padding:15px}.standing-rank{color:#ffd452;color:var(--accent-yellow);font-size:20px;font-weight:700;min-width:40px}.standing-name{flex:1 1;font-weight:700}.standing-life{color:#ff5942;color:var(--accent-red);font-weight:700}@media (max-width:768px){.game-title{font-size:32px}.main-menu{padding:15px}.menu-buttons,.menu-header{margin-bottom:20px}.menu-buttons{gap:12px}.game-info{margin-top:15px}.game-info,.room-container{padding:15px}.room-header{margin-bottom:20px;padding-bottom:15px}.room-content{gap:15px;margin-bottom:20px}.room-code{font-size:24px}.player-item{padding:12px}.players-list{gap:8px}.room-instructions{padding:15px}.game-screen{padding:10px}.phase-header{padding:12px}.phase-header h2{font-size:18px;margin-bottom:5px}.selection-phase{gap:15px}.playing-phase{gap:12px}.my-player-section,.opponents-section,.selection-section{border-width:2px;padding:12px}.main-menu,.room-container{border-width:3px}.my-hand-section h3,.opponents-section h3,.selection-section h3{font-size:14px;margin-bottom:8px}.game-header{padding:10px}.turn-indicator{font-size:16px}.card{height:125px;padding:6px;width:90px}.card-small{height:82px;padding:4px;width:60px}.card-value{font-size:14px}.card-suit{font-size:12px}.card-main-symbol{font-size:32px}.card-small .card-main-symbol{font-size:20px}.card-small .card-value{font-size:10px}.card-small .card-suit{font-size:9px}.player-status{border-width:2px;gap:10px;min-width:100%;padding:10px}.player-name{font-size:14px}.player-stat{gap:3px}.stat-label{font-size:11px}.stat-value{font-size:16px}.player-info{gap:6px}.opponents-grid{gap:10px;grid-template-columns:1fr}.player-hand{padding:12px}.action-buttons{flex-direction:column;gap:10px}.action-buttons button{width:100%}.hand-cards{gap:8px}.selection-cards{gap:10px}.defense-card,.life-cards{gap:4px}.cards-label{font-size:10px}.pixel-button{font-size:13px;min-height:44px;min-width:100px;padding:10px 18px}.form-buttons,.gameover-main{flex-direction:column}.gameover-content{max-width:100%;padding:15px}.gameover-content h1{font-size:28px;margin-bottom:12px}.winner-announcement{margin:15px 0}.winner-announcement h2{font-size:22px;margin-bottom:10px}.victory-message{font-size:24px}.final-standings{margin:15px 0}.final-standings h3{margin-bottom:12px}.standing-item{padding:10px}.my-player-section{gap:12px}.my-status{justify-content:center}}@media (max-width:480px){.game-title{font-size:24px}.main-menu{padding:12px}.menu-buttons,.menu-header{margin-bottom:15px}.menu-buttons{gap:10px}.game-info{margin-top:12px;padding:12px}.game-info h3{font-size:13px;margin-bottom:8px}.game-info li{font-size:12px;padding:4px 0}.room-container{padding:12px}.room-header{margin-bottom:15px;padding-bottom:12px}.room-content{gap:12px;margin-bottom:15px}.room-code{font-size:20px;letter-spacing:3px}.player-item{padding:10px}.players-list{gap:6px}.room-instructions{padding:12px}.room-instructions li{font-size:12px;padding:4px 0}.game-screen{padding:8px}.phase-header{padding:10px}.phase-header h2{font-size:16px}.playing-phase,.selection-phase{gap:10px}.my-player-section,.opponents-section,.selection-section{border-width:2px;padding:10px}.card,.card-small,.main-menu,.room-container{border-width:2px}.my-hand-section h3,.opponents-section h3,.selection-section h3{font-size:13px;margin-bottom:6px}.game-header{padding:8px}.card{height:105px;padding:5px;width:75px}.card-small{height:72px;padding:3px;width:52px}.card-value{font-size:12px}.card-suit{font-size:10px}.card-image{max-height:45px}.card-main-symbol{font-size:26px}.card-small .card-main-symbol{font-size:18px}.card-small .card-value{font-size:9px}.card-small .card-suit{font-size:8px}.player-status{gap:8px;padding:8px}.player-name{font-size:13px}.stat-label{font-size:10px}.stat-value{font-size:14px}.player-info{gap:5px}.opponents-grid{gap:8px}.player-hand{padding:10px}.action-buttons{gap:8px}.hand-cards,.selection-cards{gap:6px}.defense-card,.life-cards{gap:3px}.cards-label{font-size:9px}.player-badge{font-size:10px;padding:2px 6px}.pixel-button{font-size:12px;min-height:42px;min-width:90px;padding:9px 16px}.my-player-section{gap:10px}.gameover-content{padding:12px}.gameover-content h1{font-size:24px;margin-bottom:10px}.winner-announcement{margin:12px 0}.winner-announcement h2{font-size:18px;margin-bottom:8px}.victory-message{font-size:20px}.final-standings{margin:12px 0}.final-standings h3{font-size:14px;margin-bottom:10px}.standing-item{gap:10px;padding:8px}.standing-rank{font-size:16px;min-width:30px}.standing-life,.standing-name{font-size:13px}}@media (hover:none) and (pointer:coarse){.pixel-button{min-height:44px}.card,.player-status{min-height:auto}}.action-animation-overlay{align-items:center;animation:fadeIn .3s ease-out;background:#0f0f1ef2;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.action-animation-content{align-items:center;display:flex;flex-direction:column;gap:40px;max-width:80%}.action-description{animation:slideDown .5s ease-out;color:#ff8542;color:var(--accent-orange);font-size:32px;text-align:center}@keyframes slideDown{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.action-card-container{align-items:center;animation:fadeIn .5s ease-out;display:flex;flex-direction:column;gap:20px}.action-card-label{color:#ffd452;color:var(--accent-yellow);font-size:18px;font-weight:700;text-transform:uppercase}.rotating-card{animation:rotateCard 1s ease-in-out;transform-style:preserve-3d}@keyframes rotateCard{0%{opacity:0;transform:rotateY(0deg) scale(.5)}50%{transform:rotateY(180deg) scale(1.2)}to{opacity:1;transform:rotateY(1turn) scale(1)}}.explosion-container{align-items:center;animation:fadeIn .3s ease-out,screenShake .5s ease-out;display:flex;flex-direction:column;gap:20px;height:400px;position:relative;width:400px}@keyframes screenShake{0%,to{transform:translate(0)}10%{transform:translate(-10px,5px)}20%{transform:translate(10px,-5px)}30%{transform:translate(-8px,8px)}40%{transform:translate(8px,-8px)}50%{transform:translate(-5px,5px)}60%{transform:translate(5px,-5px)}70%{transform:translate(-3px,3px)}80%{transform:translate(3px,-3px)}90%{transform:translate(-1px,1px)}}.explosion{animation:explode 1s ease-out;background:radial-gradient(circle,#fff 0,#ffd452 10%,#ff8542 25%,#ff5942 45%,#0000 70%);background:radial-gradient(circle,#fff 0,var(--accent-yellow) 10%,var(--accent-orange) 25%,var(--accent-red) 45%,#0000 70%);box-shadow:0 0 150px #ff5942,0 0 300px #ff8542,0 0 450px #ffd452,inset 0 0 100px #ffffff80;box-shadow:0 0 150px var(--accent-red),0 0 300px var(--accent-orange),0 0 450px var(--accent-yellow),inset 0 0 100px #ffffff80;height:400px;width:400px}.explosion,.explosion-wave{border-radius:50%;position:absolute}.explosion-wave{border:4px solid #ffd452;border:4px solid var(--accent-yellow);height:100%;opacity:0;width:100%}.explosion-wave-1{animation:explosionWave 1s ease-out}.explosion-wave-2{animation:explosionWave 1s ease-out .15s;border-color:#ff8542;border-color:var(--accent-orange)}.explosion-wave-3{animation:explosionWave 1s ease-out .3s;border-color:#ff5942;border-color:var(--accent-red)}@keyframes explode{0%{opacity:1;transform:scale(0) rotate(0deg)}30%{opacity:1;transform:scale(1.2) rotate(90deg)}60%{opacity:.8;transform:scale(2) rotate(270deg)}to{opacity:0;transform:scale(4) rotate(540deg)}}@keyframes explosionWave{0%{border-width:8px;opacity:1;transform:scale(.5)}50%{border-width:4px;opacity:.6}to{border-width:1px;opacity:0;transform:scale(6)}}.damage-text{-webkit-text-stroke:3px #ffd452;-webkit-text-stroke:3px var(--accent-yellow);animation:damageFloat 1.2s ease-out;color:#ff5942;color:var(--accent-red);font-size:80px;font-weight:700;position:relative;text-shadow:0 0 30px #ff5942,0 0 60px #ff8542,0 0 90px #ffd452,6px 6px 0 #000000e6;text-shadow:0 0 30px var(--accent-red),0 0 60px var(--accent-orange),0 0 90px var(--accent-yellow),6px 6px 0 #000000e6;z-index:100}@keyframes damageFloat{0%{opacity:0;transform:translateY(0) scale(.5) rotate(-10deg)}30%{opacity:1;transform:translateY(-40px) scale(1.3) rotate(5deg)}60%{opacity:1;transform:translateY(-60px) scale(1.1) rotate(-3deg)}to{opacity:1;transform:translateY(-80px) scale(1) rotate(0deg)}}@media (max-width:768px){.action-description{font-size:24px}.explosion-container{height:300px;width:300px}.explosion{height:250px;width:250px}.damage-text{font-size:56px}}.ai-player-item{align-items:center;background:#00ffff1a;border:2px solid #0ff;border-radius:4px;box-shadow:0 0 10px #00ffff4d;display:flex;gap:10px;margin:5px 0;padding:10px}.robot-icon{filter:drop-shadow(0 0 5px #00ffff);font-size:1.5em}.personality-hint{word-wrap:break-word;color:#0ff;display:inline-block;font-size:.85em;font-style:italic;max-width:100%;opacity:.9;white-space:normal}.ai-controls{background:#8a2be21a;border:2px solid #8a2be2;border-radius:8px;margin-top:20px;padding:15px}.ai-controls h3{color:#0ff;margin-bottom:10px}.add-ai-button{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #0ff;border-radius:4px;color:#fff;cursor:pointer;font-size:1.1em;margin-bottom:10px;padding:10px 20px;width:100%}.add-ai-button:hover:not(:disabled){background:linear-gradient(135deg,#764ba2,#667eea);box-shadow:0 0 15px #00ffff80}.add-ai-button:disabled{cursor:not-allowed;opacity:.5}.ai-players-list{display:flex;flex-direction:column;gap:8px}.remove-ai-button{background:#f44;border:1px solid red;border-radius:4px;color:#fff;cursor:pointer;margin-left:auto;padding:5px 10px}.remove-ai-button:hover{background:red}.ai-thinking-container{position:fixed;right:20px;top:20px;z-index:1000}.ai-thinking{align-items:center;animation:pulse 1.5s ease-in-out infinite;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#8a2be233;border:2px solid #8a2be2;border-radius:8px;display:flex;gap:10px;padding:15px 20px}.thinking-text{color:#0ff;font-weight:700}.dots{display:inline-block;margin-left:2px}.dot{animation:blink 1.4s infinite;opacity:0}.dot:first-child{animation-delay:0s}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes blink{0%,20%,to{opacity:0}50%{opacity:1}}@keyframes pulse{0%,to{box-shadow:0 0 10px #8a2be280;transform:scale(1)}50%{box-shadow:0 0 20px #8a2be2cc;transform:scale(1.02)}}.message-panel{background:#0a0a0a;border:2px solid #0f0;border-radius:8px;box-shadow:0 0 15px #00ff004d;color:#0f0;display:flex;flex-direction:column;font-family:Courier New,monospace;max-height:500px;padding:10px}.message-header{align-items:center;border-bottom:1px solid #0f0;display:flex;font-size:1.1em;font-weight:700;gap:8px;margin-bottom:10px;padding-bottom:10px}.message-icon{font-size:1.3em}.message-list{-webkit-overflow-scrolling:touch;flex:1 1;margin:10px 0 15px;max-height:350px;min-height:200px;overflow-y:auto;overscroll-behavior:contain}.message-list::-webkit-scrollbar{width:8px}.message-list::-webkit-scrollbar-track{background:#00ff001a}.message-list::-webkit-scrollbar-thumb{background:#0f0;border-radius:4px}.no-messages{color:#00ff0080;font-style:italic;padding:20px;text-align:center}.message-item{background:#00ff000d;border-radius:4px;margin-bottom:12px;padding:8px}.ai-message{background:linear-gradient(90deg,#00ffff1a,#8a2be21a);border-left:3px solid #0ff}.human-message{background:#00ff001a;border-left:3px solid #0f0}.own-message{background:#ffd7001a;border-left:3px solid gold}.message-header-line{align-items:center;display:flex;flex-wrap:wrap;font-size:.9em;gap:8px;margin-bottom:4px}.message-sender{align-items:center;display:flex;font-weight:700;gap:5px}.message-sender .robot-icon{font-size:1em}.message-recipient{color:#0ff;font-style:italic}.message-timestamp{color:#0f09;font-size:.85em;margin-left:auto}.message-text{word-wrap:break-word;color:#0f0;line-height:1.4}.message-input-container{border-top:1px solid #0f0;display:flex;gap:8px;margin-bottom:20px;margin-top:15px;padding-top:12px}.message-input,.message-recipient-select,.message-send-button{background:#1a1a1a;border:1px solid #0f0;border-radius:4px;color:#0f0;font-family:Courier New,monospace;padding:8px}.message-recipient-select{flex:0 0 120px}.message-input{flex:1 1}.message-input:focus{border-color:#0ff;box-shadow:0 0 5px #00ffff80;outline:none}.message-send-button{cursor:pointer;flex:0 0 80px;font-weight:700;transition:all .3s ease}.message-send-button:hover:not(:disabled){background:#0f0;box-shadow:0 0 10px #00ff0080;color:#000}.message-send-button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.message-panel{max-height:400px}.message-list{max-height:220px;min-height:150px}.ai-thinking-container{right:10px;top:10px}.ai-thinking{font-size:.9em;padding:10px 15px}.message-input-container{flex-wrap:wrap;margin-bottom:30px;padding-bottom:10px}.message-recipient-select{flex:1 1 100%;min-height:44px}.message-input{flex-basis:calc(100% - 90px);flex-grow:1;flex-shrink:1;min-height:44px}.message-send-button{flex:0 0 80px;min-height:44px}}@media (max-width:480px){.message-panel{max-height:350px;padding-bottom:10px}.message-list{max-height:180px;min-height:120px}.message-input-container{margin-bottom:40px}}
/*# sourceMappingURL=main.1de2dd54.css.map*/