:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--bg: #0f0f1a;--card-bg: rgba(255, 255, 255, .04);--card-border: rgba(255, 255, 255, .08);--accent: #34d399;--accent-glow: rgba(52, 211, 153, .3)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:var(--bg);color:#fafafa}.game{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:2rem 1.5rem 3rem;max-width:480px;margin:0 auto}.header{text-align:center;margin-bottom:1.5rem}.title{font-size:1.75rem;font-weight:700;letter-spacing:-.03em;background:linear-gradient(135deg,#34d399,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.title-icon{font-size:1.5rem;-webkit-text-fill-color:initial}.subtitle{color:#fff6;font-size:.85rem;margin-top:.25rem}.setup-card{width:100%;background:var(--card-bg);border:1px solid var(--card-border);border-radius:1.25rem;padding:1.75rem}.setup-heading{font-size:1.15rem;font-weight:600;margin-bottom:.25rem}.setup-hint{color:#ffffff59;font-size:.8rem;margin-bottom:1.25rem}.input-row{display:flex;gap:.5rem;margin-bottom:1rem}.name-input{flex:1;padding:.7rem 1rem;border-radius:.75rem;border:1.5px solid rgba(255,255,255,.1);background:#ffffff08;color:#fafafa;font-size:.9rem;font-family:inherit;outline:none;transition:border-color .2s}.name-input:focus{border-color:var(--accent)}.name-input::placeholder{color:#ffffff40}.add-btn{width:44px;height:44px;border-radius:.75rem;border:1.5px solid var(--accent);background:var(--accent-glow);color:#fafafa;font-size:1.3rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:inherit}.add-btn:hover:not(:disabled){background:var(--accent);color:#0f0f1a}.add-btn:disabled{opacity:.3;cursor:default}.player-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.player-chip{display:flex;align-items:center;gap:.4rem;padding:.35rem .75rem .35rem .5rem;border-radius:2rem;border:1.5px solid;background:#ffffff08;font-size:.8rem;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.player-dot{width:8px;height:8px;border-radius:50%}.player-name{font-weight:500}.remove-btn{background:none;border:none;color:#ffffff4d;font-size:1rem;cursor:pointer;padding:0 .1rem;line-height:1;transition:color .15s}.remove-btn:hover{color:#f87171}.start-btn{width:100%;padding:.85rem;border-radius:2rem;border:none;background:linear-gradient(135deg,#34d399,#60a5fa);color:#0f0f1a;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:inherit;box-shadow:0 4px 20px var(--accent-glow)}.start-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 28px var(--accent-glow)}.start-btn:disabled{opacity:.4;cursor:default;box-shadow:none}.how-to-play{width:100%;margin-top:1.5rem;padding:1.25rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem}.how-heading{font-size:.85rem;font-weight:600;color:#fff9;margin-bottom:.75rem}.how-list{list-style:none;padding:0}.how-list li{font-size:.8rem;color:#fff6;padding:.3rem 0 .3rem 1.5rem;position:relative}.how-list li:before{content:"•";position:absolute;left:.5rem;color:var(--accent)}.category-tag{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;padding:.3rem .9rem;border-radius:2rem;border:1px solid;margin-bottom:1.25rem}.question-card{width:100%;display:flex;flex-direction:column;align-items:center;gap:1rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:1.25rem;padding:2rem 1.75rem;margin-bottom:1.5rem;box-shadow:0 8px 32px #0000004d;text-align:center}.chore-emoji{font-size:3rem;animation:bounce 1s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.question-text{font-size:1.15rem;font-weight:600;line-height:1.5}.voter-indicator{display:flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;border-radius:2rem;border:2px solid;background:#ffffff08;margin-bottom:.5rem;animation:fadeIn .3s ease}.voter-dot{width:10px;height:10px;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.voter-name{font-size:.95rem;font-weight:600}.vote-hint{color:#fff6;font-size:.8rem;margin-bottom:1.25rem}.vote-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;width:100%;margin-bottom:1.5rem}.vote-btn{display:flex;align-items:center;gap:.5rem;padding:.85rem 1rem;border-radius:.75rem;border:2px solid;background:#ffffff08;color:#fafafa;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.vote-btn:hover{background:#ffffff14;transform:translateY(-2px);box-shadow:0 4px 16px #0003}.vote-btn:active{transform:translateY(0)}.vote-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.vote-name{font-weight:600}.vote-progress{display:flex;gap:.4rem;justify-content:center}.progress-pip{width:8px;height:8px;border-radius:50%;transition:background .3s}.result-card{margin-bottom:1.25rem}.results-list{width:100%;display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.5rem}.result-row{display:flex;align-items:center;gap:.75rem;padding:.6rem .85rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:.75rem;animation:fadeUp .3s ease backwards}.result-row:nth-child(1){animation-delay:.1s}.result-row:nth-child(2){animation-delay:.2s}.result-row:nth-child(3){animation-delay:.3s}.result-row:nth-child(4){animation-delay:.4s}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.result-left{display:flex;align-items:center;gap:.5rem;min-width:80px}.result-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.result-name{font-weight:600;font-size:.85rem}.result-bar-wrap{flex:1;height:8px;background:#ffffff0d;border-radius:4px;overflow:hidden}.result-bar{height:100%;border-radius:4px;transition:width .6s ease}.result-count{font-size:.75rem;color:#ffffff80;min-width:50px;text-align:right}.appreciation-card{width:100%;padding:1.25rem;border-radius:1rem;border:2px solid;background:#ffffff08;text-align:center;margin-bottom:1.5rem;animation:fadeIn .5s ease}.appreciation-card.tie{border-color:#ffffff26}.appreciation-name{font-size:1rem;font-weight:700;margin-bottom:.35rem}.appreciation-msg{font-size:.85rem;color:#ffffff8c}.action-row{display:flex;gap:.75rem;width:100%;margin-bottom:1rem}.skip-btn{flex:.6;padding:.75rem;border-radius:2rem;border:1.5px solid rgba(255,255,255,.1);background:transparent;color:#ffffff80;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.skip-btn:hover:not(:disabled){border-color:#ffffff40;color:#ffffffb3}.skip-btn:disabled{opacity:.3;cursor:default}.next-btn{flex:1;padding:.75rem;border-radius:2rem;border:none;background:linear-gradient(135deg,#34d399,#60a5fa);color:#0f0f1a;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;font-family:inherit;box-shadow:0 4px 20px var(--accent-glow)}.next-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 28px var(--accent-glow)}.next-btn:disabled{opacity:.4;cursor:default;box-shadow:none}.summary-card{width:100%;background:var(--card-bg);border:1px solid var(--card-border);border-radius:1.25rem;padding:1.75rem;margin-bottom:1.5rem}.summary-intro{font-size:.85rem;color:#ffffff80;text-align:center;margin-bottom:1.5rem}.summary-list{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.5rem}.summary-row{display:flex;align-items:center;gap:.75rem;padding:.7rem .85rem;border-radius:.75rem;border:1.5px solid rgba(255,255,255,.06);background:#ffffff05;transition:all .3s}.summary-row.winner{border-width:2px;background:#ffffff0d}.summary-rank{font-size:1.1rem;min-width:28px;text-align:center}.summary-info{flex:1;display:flex;flex-direction:column;gap:.35rem}.summary-name{font-weight:600;font-size:.9rem}.summary-bar-wrap{height:6px;background:#ffffff0d;border-radius:3px;overflow:hidden}.summary-bar{height:100%;border-radius:3px;transition:width .8s ease}.summary-count{font-size:1rem;font-weight:700;min-width:24px;text-align:right}.winner-card{text-align:center;padding:1.25rem;border-radius:1rem;border:2px solid;background:#ffffff08;animation:fadeIn .5s ease}.winner-emoji{font-size:2.5rem;margin-bottom:.5rem}.winner-text{font-size:1rem;font-weight:600;margin-bottom:.35rem}.winner-sub{font-size:.8rem;color:#ffffff73}@media(max-width:400px){.question-text{font-size:1rem}.vote-grid{grid-template-columns:1fr}.result-name{font-size:.75rem}}
