body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}html{background:#0a0a1a}body{background:linear-gradient(135deg,#0a0a1a,#1a1030,#0a1020);color:#fff;font-family:Segoe UI,system-ui,sans-serif;min-height:100vh;overscroll-behavior:none;transition:background 2s ease}.app.day-phase:before{background:radial-gradient(circle at 80% 10%,#ffc83233 0,#0000 40%),radial-gradient(circle at 20% 30%,#87ceeb1a 0,#0000 50%)}.app.day-phase:before,.app.night:before{content:"";inset:0;pointer-events:none;position:fixed;z-index:-1}.app.night:before{animation:twinkle 4s ease-in-out infinite alternate;background:radial-gradient(1px 1px at 10% 10%,#fff 50%,#0000 100%),radial-gradient(1px 1px at 20% 40%,#fff 50%,#0000 100%),radial-gradient(1px 1px at 35% 15%,#fff 50%,#0000 100%),radial-gradient(1px 1px at 50% 25%,#fff 50%,#0000 100%),radial-gradient(1px 1px at 65% 8%,#fff 50%,#0000 100%),radial-gradient(1px 1px at 75% 35%,#fff 50%,#0000 100%),radial-gradient(1px 1px at 85% 20%,#fff 50%,#0000 100%),radial-gradient(1px 1px at 90% 45%,#fff 50%,#0000 100%),radial-gradient(1px 1px at 15% 55%,#fff 50%,#0000 100%),radial-gradient(1px 1px at 40% 50%,#fff 50%,#0000 100%),radial-gradient(1.5px 1.5px at 25% 5%,#fffc 50%,#0000 100%),radial-gradient(1.5px 1.5px at 60% 30%,#fffc 50%,#0000 100%),radial-gradient(circle at 85% 15%,#ffffc814 0,#0000 30%)}@keyframes twinkle{0%{opacity:.7}to{opacity:1}}.app{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:16px}.app.game-screen{align-items:stretch;flex-direction:column;gap:12px;justify-content:flex-start;margin:0 auto;max-width:600px;padding-top:8px;position:relative;z-index:1}.app.day-phase,.app.night{max-width:none;padding:8px}.app.day-phase:after,.app.night:after{content:"";inset:0;position:fixed;transition:background 2s ease;z-index:-2}.app.day-phase:after{background:linear-gradient(180deg,#1a2a4a,#2a3a5a 40%,#1a2040)}.app.night:after{background:linear-gradient(180deg,#050510,#0a0a20 40%,#0f0520)}.home{align-items:center;display:flex;flex-direction:column;gap:16px;text-align:center}.logo{font-size:3rem}.tagline{color:#ffffff80;font-size:1.1rem;margin-bottom:12px}.btn{border:none;border-radius:14px;cursor:pointer;font-size:1rem;font-weight:700;max-width:300px;padding:14px 32px;transition:transform .15s,box-shadow .15s;width:100%}.btn.primary{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.btn.secondary{background:#ffffff14;border:1px solid #ffffff26;color:#fff}.btn.ghost{background:none;color:#ffffff80;font-size:.9rem;padding:8px}.btn:hover:not(:disabled){transform:scale(1.02)}.btn:disabled{opacity:.5}.panel{align-items:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:20px;display:flex;flex-direction:column;gap:14px;max-width:420px;padding:32px;width:100%}.panel h2{font-size:1.5rem}.panel input{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:12px;color:#fff;font-size:1rem;outline:none;padding:12px 16px;width:100%}.panel input:focus{border-color:#e74c3c80}.panel input::placeholder{color:#ffffff40}.code-box{align-items:center;background:#e74c3c26;border:1px dashed #e74c3c66;border-radius:12px;display:flex;gap:12px;padding:12px 24px}.code-label{color:#ffffff80;font-size:.8rem}.code-value{color:#e74c3c;font-size:1.8rem;font-weight:800;letter-spacing:6px}.share-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.share-btn{border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:8px 16px;text-decoration:none}.share-btn.wa{background:#25d366}.share-btn.sms{background:#3498db}.share-btn.copy{background:#ffffff1a}.player-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.player-tag{background:#ffffff0f;border-radius:20px;font-size:.85rem;padding:8px 14px}.player-tag.dc{opacity:.4}.hint{color:#ffffff59;font-size:.8rem}.game-header{align-items:center;background:#ffffff0a;border-radius:12px;display:flex;justify-content:space-between;padding:8px 12px}.role-badge-sm{border-radius:20px;font-size:.8rem;font-weight:700;padding:4px 12px;text-transform:capitalize}.phase-info{font-size:.95rem;font-weight:600}.timer{font-feature-settings:"tnum";font-size:1.2rem;font-variant-numeric:tabular-nums;font-weight:800}@keyframes pulse{50%{opacity:.5}}.settle-reveal{display:flex;justify-content:center;padding:16px 0}.role-card{background:#ffffff0a;border:2px solid;border-radius:16px;padding:24px;text-align:center}.role-emoji-lg{font-size:3rem}.role-card h3{margin-top:8px;text-transform:capitalize}.role-card p{color:#fff9;font-size:.9rem;margin-top:4px}.night-banner,.seer-banner{border-radius:10px;font-size:.9rem;font-weight:600;padding:10px;text-align:center}.night-banner{background:#e74c3c26}.seer-banner{background:#9b59b626}.players-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.player-card{align-items:center;background:#ffffff0d;border:1px solid #ffffff14;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:12px 8px;text-align:center;transition:all .2s}.player-card:hover{background:#ffffff14}.player-card.selected{background:#e74c3c26;border-color:#e74c3c}.player-card.me{border-color:#fff3}.player-card.has-votes{box-shadow:0 0 8px #e74c3c4d}.player-avatar{font-size:1.5rem}.player-name{color:#fffc;font-size:.75rem}.vote-count{color:#e74c3c;font-size:.7rem;font-weight:700}.dead-section{align-items:center;color:#ffffff59;display:flex;flex-wrap:wrap;font-size:.8rem;gap:8px}.dead-name{text-decoration:line-through}.dead-tag{background:#ffffff0f;border-radius:12px;font-size:.8rem;padding:4px 10px}.action-hint{color:#ffffff80;font-size:.85rem;padding:4px;text-align:center}.chat-box{background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;display:flex;flex:1 1;flex-direction:column;max-height:250px;min-height:150px}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:4px;overflow-y:auto;padding:8px 12px}.chat-msg{color:#ffffffb3;font-size:.8rem}.chat-msg.mine{color:#ffffffe6}.chat-msg strong{color:#ffffffe6;margin-right:4px}.chat-input-row{border-top:1px solid #ffffff0f;display:flex}.chat-input-row input{background:none;border:none;color:#fff;flex:1 1;font-size:.85rem;outline:none;padding:10px 12px}.chat-input-row input::placeholder{color:#fff3}.chat-input-row button{background:#e74c3c;border:none;border-radius:0 0 12px 0;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:10px 16px}.gameover h2{font-size:1.8rem}.roles-reveal{display:flex;flex-direction:column;gap:6px;width:100%}.reveal-row{align-items:center;background:#ffffff0a;border-radius:8px;display:flex;font-size:.9rem;justify-content:space-between;padding:8px 12px}.reveal-row.dead{opacity:.5;text-decoration:line-through}.role-badge{border-radius:12px;font-size:.75rem;font-weight:700;padding:3px 10px;text-transform:capitalize}.error{color:#e74c3c;font-size:.85rem;text-align:center}.error.floating{background:#e74c3ce6;border-radius:20px;bottom:20px;color:#fff;left:50%;padding:8px 20px;position:fixed;transform:translateX(-50%);z-index:100}@media (max-width:480px){.panel{padding:24px 16px}.players-grid{grid-template-columns:repeat(2,1fr)}.logo{font-size:2.2rem}}.wait-banner{background:#f1c40f1f;border:1px solid #f1c40f4d;border-radius:12px;color:#f1c40f;font-size:.95rem;font-weight:600;padding:12px 20px;text-align:center;width:100%}.leave-btn{background:#ffffff14;border:none;border-radius:8px;color:#ffffff80;cursor:pointer;font-size:1rem;padding:4px 8px}.leave-btn:hover{color:#e74c3c}.phase-popup{align-items:center;animation:popIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:200}.phase-popup p{background:#141428f2;border:1px solid #ffffff26;border-radius:16px;box-shadow:0 0 40px #00000080;font-size:1.15rem;font-weight:600;line-height:1.8;max-width:360px;padding:28px 36px;text-align:center;white-space:pre-line}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.player-card.wolf-ally{background:#e74c3c1a;border-color:#e74c3c}.wolf-target{color:#e74c3c;font-size:.65rem;font-weight:600}.open-games{margin-top:8px;max-width:340px;width:100%}.open-games h3{color:#ffffff80;font-size:.9rem;margin-bottom:8px;text-align:center}.open-game-row{align-items:center;background:#ffffff0d;border:1px solid #ffffff14;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:6px;padding:10px 14px;transition:background .15s}.open-game-row:hover{background:#ffffff1a}.og-host{font-size:.85rem;font-weight:600}.og-players{color:#ffffff80;font-size:.8rem}.og-code{color:#e74c3c;font-size:.75rem;font-weight:700;letter-spacing:2px}.player-card.seer-wolf{background:#e74c3c26;border-color:#e74c3c}.player-card.seer-safe{background:#2ecc711a;border-color:#2ecc71}.seer-label{font-size:.65rem;font-weight:700}.seer-wolf .seer-label{color:#e74c3c}.seer-safe .seer-label{color:#2ecc71}.healer-confirm{color:#2ecc71!important;font-weight:600}
/*# sourceMappingURL=main.1180b20a.css.map*/