.home-page{background:linear-gradient(180deg,var(--background) 0,#1a1a3e 100%);display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;padding:2rem 1rem}.home-content{display:flex;flex:1 1;flex-direction:column;justify-content:center;margin:0 auto;max-width:400px;width:100%}.logo-section{margin-bottom:3rem;text-align:center}.app-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--primary-light),var(--secondary));-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:800;margin-bottom:.5rem}.app-tagline{color:var(--text-muted);font-size:1.125rem}.mode-selection{display:flex;flex-direction:column;gap:1rem}.connection-status{align-items:center;color:var(--text-muted);display:flex;font-size:.875rem;gap:.5rem;justify-content:center;margin-top:1rem}.join-form{display:flex;flex-direction:column;gap:1.25rem}.back-link{align-self:flex-start;background:none;color:var(--text-muted);font-size:.875rem;padding:0}.back-link:hover{color:var(--text)}.form-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:var(--text-muted);font-size:.875rem}.home-footer{padding-top:2rem;text-align:center}.home-footer p{color:var(--text-muted);font-size:.75rem}.header{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-left,.header-right{align-items:center;display:flex;justify-content:center;width:40px}.header-title{font-size:1.125rem;font-weight:600;text-align:center}.back-button{background:none;border-radius:8px;color:var(--text);padding:.5rem}.back-button:hover{background:var(--surface-light)}.player-list{background:var(--surface);border-radius:16px;padding:1rem}.player-list-title{color:var(--text-muted);font-size:.875rem;letter-spacing:.05em;margin-bottom:.75rem;text-transform:uppercase}.player-list-items{display:flex;flex-direction:column;gap:.5rem}.player-item{align-items:center;background:var(--surface-light);border-radius:10px;display:flex;gap:.75rem;padding:.625rem}.player-item.is-you{border:1px solid var(--primary)}.player-avatar{align-items:center;background:linear-gradient(135deg,var(--primary),var(--secondary));border-radius:50%;display:flex;font-size:.875rem;font-weight:600;height:36px;justify-content:center;width:36px}.player-name{flex:1 1;font-weight:500}.you-badge{color:var(--text-muted);font-weight:400;margin-left:.25rem}.host-badge{background:var(--warning);border-radius:4px;color:#000;font-size:.75rem;font-weight:600;padding:.125rem .5rem;text-transform:uppercase}.lobby-page{background:var(--background);display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.lobby-content{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;margin:0 auto;max-width:480px;padding:1rem;width:100%}.lobby-code-section{text-align:center}.code-label{color:var(--text-muted);font-size:.875rem;margin-bottom:.5rem}.lobby-code{align-items:center;background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-radius:12px;display:inline-flex;flex-direction:column;gap:.25rem;padding:1rem 2rem;transition:transform .2s}.lobby-code:hover{transform:scale(1.02)}.lobby-code:active{transform:scale(.98)}.code-text{color:#fff;font-size:2rem;font-weight:700;letter-spacing:.2em}.copy-hint{color:#ffffffb3;font-size:.75rem}.section-title{color:var(--text-muted);font-size:.875rem;letter-spacing:.05em;margin-bottom:.75rem;text-transform:uppercase}.game-selection{flex:1 1}.game-list{display:flex;flex-direction:column;gap:.75rem}.game-card{background:var(--surface);border:2px solid #0000;border-radius:12px;padding:1rem;text-align:left;transition:all .2s}.game-card:hover:not(:disabled){background:var(--surface-light);border-color:var(--primary)}.game-card:disabled{cursor:not-allowed;opacity:.6}.game-name{font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.game-description{color:var(--text-muted);font-size:.875rem;line-height:1.4}.game-requirement{color:var(--warning);font-size:.75rem;margin-top:.5rem}.waiting-section{align-items:center;display:flex;flex:1 1;justify-content:center}.waiting-indicator{color:var(--text-muted);text-align:center}.waiting-dots{display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.waiting-dots span{animation:bounce 1.4s ease-in-out infinite;background:var(--primary);border-radius:50%;height:12px;width:12px}.waiting-dots span:nth-child(2){animation-delay:.2s}.waiting-dots span:nth-child(3){animation-delay:.4s}.playing-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0003;flex-shrink:0;position:relative}.playing-card.small{border-radius:6px;height:70px;width:50px}.playing-card.medium{height:100px;width:70px}.playing-card.large{border-radius:12px;height:140px;width:100px}.playing-card.animate{animation:cardDeal .5s ease}@keyframes cardDeal{0%{opacity:0;transform:translateY(-50px) rotateY(90deg)}to{opacity:1;transform:translateY(0) rotateY(0)}}.card-front{height:100%;position:relative;width:100%}.card-corner{align-items:center;display:flex;flex-direction:column;line-height:1;position:absolute}.top-left{left:6px;top:4px}.bottom-right{bottom:4px;right:6px;transform:rotate(180deg)}.card-rank{font-weight:700}.small .card-rank{font-size:.75rem}.medium .card-rank{font-size:.875rem}.large .card-rank{font-size:1.25rem}.card-suit{font-size:.75rem}.small .card-suit{font-size:.625rem}.large .card-suit{font-size:1rem}.card-center{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.card-suit-large{font-size:2rem}.small .card-suit-large{font-size:1.25rem}.large .card-suit-large{font-size:3rem}.playing-card.face-down{background:#1e40af}.card-back{height:100%;padding:4px;width:100%}.card-pattern{background:repeating-linear-gradient(45deg,#0000,#0000 5px,#ffffff1a 0,#ffffff1a 10px);border:2px solid #ffffff4d;border-radius:4px;height:100%;width:100%}.poker-game{background:var(--background);display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.poker-content{padding:1rem}.phase-container,.poker-content{display:flex;flex:1 1;flex-direction:column}.phase-container{align-items:center;padding-top:1rem}.phase-title{font-size:1.5rem;font-weight:600;margin-bottom:2rem;text-align:center}.dealing-animation{animation:pulse 1.5s infinite}.community-cards,.hole-cards{margin-bottom:2rem;text-align:center}.cards-label{color:var(--text-muted);font-size:.875rem;letter-spacing:.05em;margin-bottom:.75rem;text-transform:uppercase}.cards-row{display:flex;gap:.5rem;justify-content:center}.cards-row.community{gap:.375rem}.card-slot{height:100px;width:70px}.card-placeholder{background:var(--surface-light);border:2px dashed var(--border);border-radius:8px;height:100%;width:100%}.result-banner h2{margin-bottom:.25rem}.result-banner p{opacity:.9}.all-hands{background:var(--surface);border-radius:16px;padding:1rem}.all-hands h3{color:var(--text-muted);font-size:.875rem;margin-bottom:.75rem;text-transform:uppercase}.hand-result{align-items:center;background:var(--surface-light);border-radius:10px;display:flex;gap:.75rem;margin-bottom:.5rem;padding:.75rem}.hand-result:last-child{margin-bottom:0}.hand-result.loser{background:#ef444433;border:1px solid var(--danger)}.hand-result.is-you{border:1px solid var(--primary)}.hand-rank{align-items:center;background:var(--border);border-radius:50%;display:flex;flex-shrink:0;font-size:.75rem;font-weight:600;height:28px;justify-content:center;width:28px}.hand-result.loser .hand-rank{background:var(--danger)}.hand-info{flex:1 1;min-width:0}.hand-player{display:block;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hand-name{color:var(--text-muted);display:block;font-size:.75rem}.hand-cards{display:flex;flex-shrink:0;gap:.25rem}.timer{align-items:center;display:flex;flex-direction:column;gap:.5rem}.timer-label{color:var(--text-muted);font-size:.875rem}.timer-display{align-items:baseline;display:flex;gap:.125rem}.timer-value{font-feature-settings:"tnum";font-size:2.5rem;font-variant-numeric:tabular-nums;font-weight:700;transition:color .2s}.timer-unit{color:var(--text-muted);font-size:1rem}.timer.low .timer-value{animation:pulse .5s infinite;color:var(--danger)}.timer-bar{background:var(--surface-light);border-radius:2px;height:4px;max-width:200px;overflow:hidden;width:100%}.timer-progress{background:var(--primary);border-radius:2px;height:100%;transition:width .1s linear,background .2s}.timer.low .timer-progress{background:var(--danger)}.drawing-game{background:var(--background);display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.game-content{margin:0 auto;max-width:480px;padding:1rem;width:100%}.game-content,.phase-content{display:flex;flex:1 1;flex-direction:column}.phase-content{align-items:center;gap:1.5rem}.phase-header{text-align:center}.phase-header h2{font-size:1.5rem;font-weight:600;margin-bottom:.25rem}.phase-header p{color:var(--text-muted)}.word-input-section{display:flex;flex-direction:column;gap:1rem;width:100%}.submitted-status{padding:2rem;text-align:center}.check-icon{align-items:center;background:var(--success);border-radius:50%;display:flex;font-size:1.5rem;height:60px;justify-content:center;margin:0 auto 1rem;width:60px}.submissions-count{color:var(--text-muted);font-size:.875rem;margin-top:.5rem}.drawing-phase{gap:1rem}.canvas-container{aspect-ratio:1;border-radius:12px;box-shadow:0 4px 20px #0000004d;max-width:350px;overflow:hidden;width:100%}.drawing-canvas{cursor:crosshair;height:100%;touch-action:none;width:100%}.drawing-actions{display:flex;gap:1rem;width:100%}.drawing-actions .btn{flex:1 1}.viewing-phase{gap:1rem}.viewing-drawing{align-items:center;aspect-ratio:1;background:var(--surface);border-radius:12px;display:flex;justify-content:center;max-width:350px;overflow:hidden;width:100%}.viewing-drawing img{height:100%;object-fit:contain;width:100%}.no-drawing{color:var(--text-muted);font-style:italic}.voting-buttons{display:flex;gap:2rem}.vote-btn{align-items:center;background:var(--surface);border:3px solid var(--border);border-radius:50%;display:flex;font-size:2rem;height:80px;justify-content:center;transition:all .2s;width:80px}.vote-btn:hover:not(:disabled){transform:scale(1.1)}.vote-btn.up.selected,.vote-btn.up:hover:not(:disabled){background:#22c55e33;border-color:var(--success)}.vote-btn.down.selected,.vote-btn.down:hover:not(:disabled){background:#ef444433;border-color:var(--danger)}.vote-btn:disabled{cursor:not-allowed;opacity:.5}.own-drawing-note{color:var(--text-muted);font-style:italic}.results-container{animation:fadeIn .5s ease;display:flex;flex:1 1;flex-direction:column;padding-bottom:2rem;width:100%}.result-banner{border-radius:16px;margin-bottom:1.5rem;padding:2rem;text-align:center}.result-banner.loser{background:linear-gradient(135deg,var(--danger),#b91c1c)}.result-banner.safe{background:linear-gradient(135deg,var(--success),#15803d)}.result-banner h2{font-size:2rem;font-weight:700;margin-bottom:.5rem}.loser-section{margin-bottom:1.5rem;text-align:center}.loser-section h3{color:var(--text-muted);font-size:.875rem;margin-bottom:.5rem;text-transform:uppercase}.loser-names{color:var(--danger);font-size:1.5rem;font-weight:700}.all-scores{background:var(--surface);border-radius:16px;padding:1rem}.all-scores h3{color:var(--text-muted);font-size:.875rem;margin-bottom:.75rem;text-transform:uppercase}.score-result{align-items:center;background:var(--surface-light);border-radius:10px;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.75rem}.score-result:last-child{margin-bottom:0}.score-result.loser{background:#ef444433;border:1px solid var(--danger)}.score-result.is-you{border:1px solid var(--primary)}.score-info{display:flex;flex-direction:column}.score-player{font-weight:500}.score-detail{color:var(--text-muted);font-size:.75rem}.score-value{font-size:1.25rem;font-weight:700}.score-value.positive{color:var(--success)}.score-value.negative{color:var(--danger)}:root{--primary:#6366f1;--primary-dark:#4f46e5;--primary-light:#818cf8;--secondary:#f43f5e;--secondary-dark:#e11d48;--success:#22c55e;--warning:#f59e0b;--danger:#ef4444;--background:#0f0f23;--surface:#1a1a2e;--surface-light:#25253d;--text:#fff;--text-muted:#a1a1aa;--border:#3f3f5c;--card-shadow:0 4px 20px #0000004d;--transition:0.2s ease}*{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0f0f23;background:var(--background);color:#fff;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5}#root,body{min-height:100vh;min-height:100dvh}#root{display:flex;flex-direction:column}button{cursor:pointer;transition:all .2s ease;transition:all var(--transition)}button,input{border:none;font-family:inherit;outline:none}a{color:inherit;text-decoration:none}.container{margin:0 auto;max-width:480px;padding:0 1rem;width:100%}.page{display:flex;flex:1 1;flex-direction:column;padding:1rem 1rem env(safe-area-inset-bottom,1rem)}.btn,.page-center{align-items:center;justify-content:center}.btn{border-radius:12px;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.875rem 1.5rem;transition:all .2s ease;transition:all var(--transition)}.btn-primary{background:#6366f1;background:var(--primary);color:#fff}.btn-primary:hover{background:#4f46e5;background:var(--primary-dark);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#25253d;background:var(--surface-light);border:1px solid #3f3f5c;border:1px solid var(--border);color:#fff;color:var(--text)}.btn-secondary:hover{background:#3f3f5c;background:var(--border)}.btn-danger{background:#ef4444;background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626}.btn-success{background:#22c55e;background:var(--success);color:#fff}.btn-success:hover{background:#16a34a}.btn-large{border-radius:16px;font-size:1.125rem;padding:1rem 2rem}.btn-full{width:100%}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.input{background:#1a1a2e;background:var(--surface);border:2px solid #3f3f5c;border:2px solid var(--border);border-radius:12px;color:#fff;color:var(--text);font-size:1rem;padding:.875rem 1rem;transition:border-color .2s ease;transition:border-color var(--transition);width:100%}.input:focus{border-color:#6366f1;border-color:var(--primary)}.input::placeholder{color:#a1a1aa;color:var(--text-muted)}.input-large{font-size:1.25rem;letter-spacing:.5em;padding:1rem 1.25rem;text-align:center;text-transform:uppercase}.card{background:#1a1a2e;background:var(--surface);border-radius:16px;box-shadow:0 4px 20px #0000004d;box-shadow:var(--card-shadow);padding:1.5rem}.title{font-size:2rem;font-weight:700;margin-bottom:.5rem}.subtitle{color:#a1a1aa;color:var(--text-muted);font-size:1rem;margin-bottom:1.5rem}.text-center{text-align:center}.text-muted{color:#a1a1aa;color:var(--text-muted)}.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}.gap-1{gap:.5rem}.gap-2{gap:1rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex-1{flex:1 1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-in{animation:fadeIn .3s ease}.animate-slide-up{animation:slideUp .4s ease}.animate-pulse{animation:pulse 2s infinite}.status-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.status-dot.connected{background:#22c55e;background:var(--success);box-shadow:0 0 8px #22c55e;box-shadow:0 0 8px var(--success)}.status-dot.disconnected{background:#ef4444;background:var(--danger)}.error-message{background:#ef44441a;border:1px solid #ef4444;border:1px solid var(--danger);border-radius:8px;color:#ef4444;color:var(--danger);font-size:.875rem;margin-bottom:1rem;padding:.75rem 1rem}
/*# sourceMappingURL=main.7a9d5b3b.css.map*/