*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-card: #0f3460;--text-primary: #e8e8e8;--text-secondary: #a0a0b0;--accent: #e94560;--accent-hover: #ff6b81;--duke: #7b2d8e;--assassin: #2c2c2c;--captain: #1e6fa8;--ambassador: #2a8a4b;--contessa: #c0392b;--inquisitor: #b8860b;--challenge: #e67e22;--block: #f39c12;--pass: #555;--success: #27ae60;--border: #333;--radius: 8px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5}#root{min-height:100vh;display:flex;flex-direction:column}.app{display:flex;flex-direction:column;min-height:100vh}.app-header{text-align:center;padding:12px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.app-header{display:flex;align-items:center;justify-content:center;position:relative}.app-header h1{font-size:1.4rem;letter-spacing:2px;text-transform:uppercase;color:var(--accent)}.app-header.your-turn{border-bottom:2px solid var(--accent);box-shadow:0 2px 12px #e945604d}.your-turn-badge{display:none}.app-header.your-turn .your-turn-badge{display:inline-block;margin-left:12px;font-size:.65rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:1px;padding:2px 8px;border:1px solid var(--accent);border-radius:10px;animation:pulse-turn 1.5s infinite ease-in-out;vertical-align:middle}@keyframes pulse-turn{0%,to{opacity:.6}50%{opacity:1}}.rules-toggle{position:absolute;right:20px;padding:6px 14px;font-size:.8rem}.app-main{flex:1;display:flex;flex-direction:column}.btn{border:none;border-radius:var(--radius);padding:10px 20px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background-color .2s,opacity .2s,transform .1s;color:#fff}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background-color:var(--accent)}.btn-primary:hover:not(:disabled){background-color:var(--accent-hover)}.btn-secondary{background-color:var(--bg-card);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background-color:#1a4a7a}.btn-large{padding:14px 32px;font-size:1.1rem;width:100%}.landing{flex:1;display:flex;align-items:center;justify-content:center;padding:20px}.landing-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:40px;max-width:420px;width:100%}.landing-card h2{text-align:center;margin-bottom:4px;font-size:1.8rem}.subtitle{text-align:center;color:var(--text-secondary);margin-bottom:28px;font-style:italic}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.form-group input{width:100%;padding:12px 16px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);font-size:1rem;outline:none;transition:border-color .2s}.form-group input:focus{border-color:var(--accent)}.room-code-input{font-family:Courier New,monospace;font-size:1.2rem!important;text-align:center;letter-spacing:4px;text-transform:uppercase}.landing-section{margin-bottom:16px}.divider{text-align:center;position:relative;margin:24px 0;color:var(--text-secondary)}.divider:before,.divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:var(--border)}.divider:before{left:0}.divider:after{right:0}.error-message{margin-top:16px;padding:12px;background:#e9456026;border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent-hover);text-align:center;font-size:.9rem}.global-error{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:12px 24px;background:#e94560e6;border-radius:var(--radius);cursor:pointer;z-index:100;font-weight:600;max-width:90%;text-align:center}.lobby{flex:1;display:flex;align-items:center;justify-content:center;padding:20px}.lobby-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:40px;max-width:480px;width:100%;text-align:center}.lobby-card h2{margin-bottom:24px}.room-code-section{margin-bottom:28px}.room-code-label{font-size:.8rem;text-transform:uppercase;letter-spacing:2px;color:var(--text-secondary);margin-bottom:4px}.room-code{font-family:Courier New,monospace;font-size:3rem;font-weight:700;letter-spacing:8px;color:var(--accent)}.room-code-hint{font-size:.8rem;color:var(--text-secondary);margin-top:4px}.copy-link-btn{margin-top:10px;padding:8px 20px;font-size:.85rem}.room-code-display .room-code{font-size:2rem}.players-list{text-align:left;margin-bottom:24px}.players-list h3{margin-bottom:12px;font-size:.95rem;color:var(--text-secondary)}.players-list ul{list-style:none}.player-item{padding:10px 14px;background:var(--bg-primary);border-radius:var(--radius);margin-bottom:6px;display:flex;align-items:center;gap:8px}.host-badge{font-size:.7rem;background:var(--challenge);padding:2px 8px;border-radius:10px;text-transform:uppercase;font-weight:700}.you-badge{font-size:.7rem;background:var(--success);padding:2px 8px;border-radius:10px;text-transform:uppercase;font-weight:700}.waiting-text{color:var(--text-secondary);font-style:italic;margin-top:12px}.game-settings{text-align:left;margin-bottom:24px;padding:16px;background:var(--bg-primary);border-radius:var(--radius)}.game-settings h3{font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);margin-bottom:12px}.setting-row{display:flex;align-items:center;gap:12px}.setting-label{display:flex;align-items:center;gap:8px;font-size:.95rem;cursor:pointer}.setting-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.setting-select{padding:4px 8px;border-radius:4px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:.9rem}.setting-hint{font-size:.8rem;color:var(--text-secondary);margin-top:6px;font-style:italic}.role-picker{display:flex;gap:10px;margin-top:8px}.role-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;border:2px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:border-color .2s,background .2s;text-align:center}.role-option:hover:not(:disabled){border-color:var(--text-secondary)}.role-option:disabled{cursor:default;opacity:.8}.role-option-selected{border-color:var(--accent);background:#e945601a}.role-option-emoji{font-size:1.5rem}.role-option-name{font-weight:700;font-size:.95rem}.role-option-desc{font-size:.75rem;color:var(--text-secondary);line-height:1.3}.examine-card-display{display:flex;justify-content:center;margin:16px 0}.waiting-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.sidebar-container{display:flex;flex-direction:column;position:relative;flex-shrink:0}.sidebar-container.sidebar-collapsed{width:32px}.sidebar-toggle,.log-toggle{position:absolute;z-index:10;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;font-size:.85rem;padding:8px 10px;border-radius:6px;transition:color .2s,background-color .2s;line-height:1}.sidebar-toggle:hover,.log-toggle:hover{color:var(--text-primary);background:var(--bg-card)}.sidebar-toggle{top:8px;right:4px}.sidebar-collapsed .sidebar-toggle{right:auto;left:4px}.log-toggle{top:8px;left:4px}.log-collapsed .log-toggle{right:auto;left:4px}.game-log-area.log-collapsed{width:32px}.player-sidebar{width:220px;background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0}.player-sidebar h3{padding:12px 16px;font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-players{flex:1;overflow-y:auto;padding:8px}.sidebar-player{display:flex;align-items:center;gap:6px;padding:10px 8px;border-radius:var(--radius);margin-bottom:4px;transition:background-color .2s}.sidebar-player.sidebar-current{background:#e9456026;border:1px solid rgba(233,69,96,.3)}.sidebar-player.sidebar-eliminated{opacity:.4;text-decoration:line-through}.sidebar-player.sidebar-you{background:#0f346080}.sidebar-player.sidebar-you.sidebar-current{background:#e9456033}.sidebar-turn-indicator{width:16px;flex-shrink:0;text-align:center}.turn-arrow{color:var(--accent);font-size:.7rem;animation:pulse-arrow 1.2s infinite ease-in-out}@keyframes pulse-arrow{0%,to{opacity:.6}50%{opacity:1}}.sidebar-player-info{flex:1;min-width:0}.sidebar-player-name{font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:6px}.sidebar-you-tag{font-size:.6rem;background:var(--success);padding:1px 5px;border-radius:8px;text-transform:uppercase;font-weight:700;letter-spacing:.5px}.sidebar-player-details{display:flex;gap:8px;font-size:.75rem;color:var(--text-secondary);margin-top:2px}.sidebar-coins{color:gold}.sidebar-revealed{display:flex;gap:4px;margin-top:3px;flex-wrap:wrap}.sidebar-role{font-size:.6rem;padding:1px 5px;border-radius:4px;font-weight:600;opacity:.7}.sidebar-role-duke{background:var(--duke)}.sidebar-role-assassin{background:#3a3a3a}.sidebar-role-captain{background:var(--captain)}.sidebar-role-ambassador{background:var(--ambassador)}.sidebar-role-contessa{background:var(--contessa)}.sidebar-role-inquisitor{background:var(--inquisitor)}.sidebar-order{font-size:.65rem;color:var(--text-secondary);opacity:.5;flex-shrink:0;width:16px;text-align:center}.game-board{flex:1;display:flex;height:calc(100vh - 60px);overflow:hidden}.game-area{flex:1;display:flex;flex-direction:column;padding:16px;gap:16px;overflow-y:auto}.other-players{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.player-panel{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;min-width:160px;position:relative}.player-panel.player-current{border-color:var(--accent);box-shadow:0 0 12px #e945604d}.player-panel.player-eliminated{opacity:.5;border-color:var(--accent);border-style:dashed}.player-panel.player-you{background:var(--bg-card);border-width:2px}.player-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:12px}.player-name{font-weight:600;font-size:.95rem}.player-coins{font-size:.85rem;color:gold;font-weight:600;white-space:nowrap}.player-cards{display:flex;gap:8px}.eliminated-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.4rem;font-weight:900;color:var(--accent);letter-spacing:4px;text-shadow:0 0 10px rgba(233,69,96,.5);pointer-events:none}.card{width:56px;height:80px;border-radius:6px;border:2px solid var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;transition:transform .2s}.card-large{width:90px;height:112px;font-size:.8rem}.card-hidden{background:linear-gradient(135deg,#2a2a3e,#1a1a2e);border-color:#444}.card-back{font-size:1.4rem;color:#555}.card-duke{background:linear-gradient(135deg,var(--duke),#5a1d6e);border-color:#9b4dca}.card-assassin{background:linear-gradient(135deg,#3a3a3a,var(--assassin));border-color:#555}.card-captain{background:linear-gradient(135deg,var(--captain),#154d7a);border-color:#2980b9}.card-ambassador{background:linear-gradient(135deg,var(--ambassador),#1e6b3a);border-color:#2ecc71}.card-contessa{background:linear-gradient(135deg,var(--contessa),#922b21);border-color:#e74c3c}.card-inquisitor{background:linear-gradient(135deg,var(--inquisitor),#8b6914);border-color:#daa520}.card-revealed{opacity:.7;position:relative}.card-revealed:after{content:"✕";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2.5rem;font-weight:900;color:#e94560b3;text-shadow:0 0 8px rgba(233,69,96,.5);pointer-events:none}.card-large.card-revealed:after{font-size:3.5rem}.card-emoji{font-size:1.6rem;line-height:1}.card-large .card-emoji{font-size:2.2rem}.card-role{text-shadow:0 1px 3px rgba(0,0,0,.6);text-align:center;line-height:1.1;font-size:.55rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 2px}.card-large .card-role{font-size:.7rem;white-space:normal;overflow:visible;text-overflow:clip}.your-cards .card{cursor:default}.card-clickable:not(.card-revealed){cursor:pointer;transition:transform .2s,box-shadow .2s}.card-clickable:not(.card-revealed):hover{transform:translateY(-4px);box-shadow:0 4px 16px #0006}.card-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.card-detail-modal{border-radius:16px;padding:32px;max-width:300px;width:100%;text-align:center;border:2px solid rgba(255,255,255,.2);animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.card-detail-emoji{font-size:4rem;margin-bottom:12px}.card-detail-name{font-size:1.6rem;font-weight:800;text-transform:uppercase;letter-spacing:2px;margin-bottom:16px;text-shadow:0 2px 4px rgba(0,0,0,.4)}.card-detail-abilities{font-size:.95rem;line-height:1.6;color:#ffffffe6;margin-bottom:20px}.card-detail-close{padding:8px 24px;font-size:.85rem}.your-area{display:flex;justify-content:center}.your-area .player-panel{min-width:280px}.your-area .player-cards{justify-content:center}.action-area{display:flex;justify-content:center}.action-panel{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:20px;width:100%;max-width:600px;text-align:center}.action-panel h3{margin-bottom:16px;font-size:1.05rem}.action-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.btn-action{background:var(--bg-card);border:1px solid var(--border);display:flex;flex-direction:column;align-items:center;padding:12px 8px;gap:4px}.btn-action:hover:not(:disabled){border-color:var(--text-secondary);background:#1a4a7a}.action-desc{font-size:.7rem;font-weight:400;color:var(--text-secondary)}.btn-duke{border-left:3px solid var(--duke)}.btn-assassin{border-left:3px solid #666}.btn-captain{border-left:3px solid var(--captain)}.btn-ambassador{border-left:3px solid var(--ambassador)}.btn-inquisitor{border-left:3px solid var(--inquisitor)}.btn-coup{border-left:3px solid var(--accent)}.forced-coup-text{margin-top:12px;color:var(--accent);font-weight:600}.passed-text{color:var(--text-secondary);font-style:italic;margin-bottom:8px}.countdown-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:10px;background:var(--bg-card);border:1px solid var(--border);font-size:.8rem;font-weight:700;color:var(--text-secondary);font-variant-numeric:tabular-nums}.countdown-urgent{background:#e9456033;border-color:var(--accent);color:var(--accent);animation:pulse-countdown .5s infinite alternate}@keyframes pulse-countdown{0%{opacity:.7}to{opacity:1}}.response-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.btn-challenge{background:var(--challenge);padding:12px 24px;font-size:1rem}.btn-challenge:hover:not(:disabled){background:#d35400}.btn-block{background:var(--block);color:#1a1a2e;padding:12px 24px;font-size:1rem}.btn-block:hover:not(:disabled){background:#e8b30e}.btn-pass{background:var(--pass);padding:12px 24px;font-size:1rem}.btn-pass:hover:not(:disabled){background:#666}.target-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:16px}.btn-target{background:var(--bg-card);border:2px solid var(--border);padding:10px 20px}.btn-target:hover:not(:disabled){border-color:var(--accent)}.btn-target-selected{border-color:var(--accent);background:#e9456033}.lose-influence-cards,.exchange-cards{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:16px}.btn-card-select{padding:20px 24px;font-size:1.1rem;text-transform:capitalize;border:2px solid var(--border);border-radius:var(--radius);min-width:100px}.card-btn-duke{background:var(--duke)}.card-btn-assassin{background:#3a3a3a}.card-btn-captain{background:var(--captain)}.card-btn-ambassador{background:var(--ambassador)}.card-btn-contessa{background:var(--contessa)}.card-btn-inquisitor{background:var(--inquisitor)}.card-btn-hidden{background:var(--bg-card)}.card-selected{border-color:var(--success)!important;box-shadow:0 0 12px #27ae6066;transform:translateY(-4px)}.exchange-hint{color:var(--text-secondary);font-size:.85rem;margin-bottom:12px}.waiting-indicator{display:flex;justify-content:center;padding:12px}.waiting-dots{display:flex;gap:6px}.waiting-dots span{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);animation:pulse 1.4s infinite ease-in-out}.waiting-dots span:nth-child(2){animation-delay:.2s}.waiting-dots span:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.game-log-area{width:320px;border-left:1px solid var(--border);display:flex;flex-direction:column;position:relative}.game-log{display:flex;flex-direction:column;height:100%;min-height:0}.game-log h3{padding:12px 16px 12px 40px;font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.log-entries{flex:1;overflow-y:auto;padding:8px 12px;background:#0003;min-height:0}.log-entry{padding:6px 10px;font-size:.9rem;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.06);line-height:1.5}.log-entry:last-of-type{border-bottom:none}.log-timestamp{font-size:.7rem;color:var(--text-secondary);opacity:.6;font-variant-numeric:tabular-nums}.game-over{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;gap:24px;flex-wrap:wrap}.game-over-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:40px;max-width:440px;width:100%;text-align:center}.game-over-card h2{font-size:2rem;margin-bottom:8px;color:gold}.winner-name{font-size:1.3rem;margin-bottom:24px;color:var(--text-primary)}.final-standings{text-align:left;margin-bottom:24px}.final-standings h3{margin-bottom:12px;font-size:.9rem;color:var(--text-secondary)}.final-standings ul{list-style:none}.final-standings li{padding:8px 12px;background:var(--bg-primary);border-radius:var(--radius);margin-bottom:4px}.final-standings li.winner{border:1px solid gold;background:#ffd7001a}.trophy{color:gold}.eliminated-text{color:var(--text-secondary);font-size:.85rem}.game-over-log{max-width:320px;width:100%;max-height:500px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;overflow:hidden}.game-over-log .game-log{max-height:500px}.player-notes{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;flex-shrink:0}.player-notes-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.player-notes-header:hover{background:#ffffff08}.player-notes-header h4{font-size:.8rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);margin:0}.player-notes-toggle{font-size:.7rem;color:var(--text-secondary)}.player-notes textarea{width:100%;min-height:80px;max-height:200px;padding:10px 16px;background:#0003;border:none;border-top:1px solid var(--border);color:var(--text-primary);font-family:inherit;font-size:.9rem;line-height:1.5;resize:vertical;outline:none;border-radius:0 0 var(--radius) var(--radius)}.player-notes textarea::placeholder{color:var(--text-secondary);opacity:.5}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#444;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#555}.rules-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}.rules-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;max-width:600px;width:100%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.rules-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border);flex-shrink:0}.rules-header h2{margin:0;font-size:1.3rem}.rules-close{padding:4px 10px;font-size:1.4rem;line-height:1}.rules-content{padding:20px 24px;overflow-y:auto}.rules-content section{margin-bottom:20px}.rules-content h3{color:var(--accent);font-size:1rem;margin-bottom:8px}.rules-content p{margin-bottom:8px;line-height:1.6;color:var(--text-secondary)}.rules-content ul{list-style:disc;padding-left:20px;color:var(--text-secondary)}.rules-content li{margin-bottom:4px;line-height:1.5}.rules-table{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-top:10px;font-size:.85rem}.rules-row{display:grid;grid-template-columns:120px 1fr 140px;padding:8px 12px;border-bottom:1px solid var(--border);color:var(--text-secondary)}.rules-row:last-child{border-bottom:none}.rules-row-header{background:var(--bg-primary);font-weight:700;color:var(--text-primary);font-size:.75rem;text-transform:uppercase;letter-spacing:1px}.rules-row-duke{border-left:3px solid var(--duke)}.rules-row-captain{border-left:3px solid var(--captain)}.rules-row-assassin{border-left:3px solid #666}.rules-row-ambassador{border-left:3px solid var(--ambassador)}.rules-row-inquisitor{border-left:3px solid var(--inquisitor)}@media(max-width:768px){.game-board{flex-direction:column;height:auto;min-height:calc(100vh - 60px);overflow:visible}.game-area{flex:none;overflow-y:visible;padding:12px;gap:12px}.sidebar-container{width:100%!important}.sidebar-container .sidebar-toggle{display:none}.player-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border);max-height:none}.sidebar-players{display:flex;flex-wrap:wrap;gap:4px;padding:6px 8px}.sidebar-player{margin-bottom:0;flex:0 0 auto;padding:6px 8px}.sidebar-revealed{display:none}.game-log-area{width:100%!important;border-left:none;border-top:1px solid var(--border);height:180px;max-height:180px;flex-shrink:0;overflow:hidden}.game-log-area .log-toggle{display:none}.game-log-area .game-log{height:100%}.game-log-area .log-entries{max-height:140px;overflow-y:auto}.other-players{flex-direction:column;align-items:center}.player-panel{min-width:auto;width:100%;max-width:300px}.action-grid{grid-template-columns:repeat(2,1fr)}.room-code{font-size:2.2rem}.rules-row{grid-template-columns:90px 1fr 100px;font-size:.75rem;padding:6px 8px}.rules-card{max-height:90vh}}@media(max-width:420px){.rules-row{grid-template-columns:1fr;gap:2px}.rules-row-header{display:none}.rules-row span:first-child{font-size:.85rem}.rules-row span:last-child{font-size:.7rem;color:var(--text-secondary);opacity:.8}.action-grid{grid-template-columns:1fr 1fr}.card-large{width:70px;height:100px}.landing-card{padding:24px 20px}}
