:root{color-scheme:dark;--ink:#f7f5ff;--muted:#b9b3d4;--bg:#120d29;--panel:#211847;--line:rgba(255,255,255,.13);--purple:#805cff;--pink:#ff4f9a;--cyan:#39d6e8;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);font-family:Inter,ui-rounded,"SF Pro Rounded",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{min-width:320px;background:var(--bg);scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;color:var(--ink);background:radial-gradient(circle at 10% -10%,#39206d 0,transparent 35%),radial-gradient(circle at 100% 50%,#35153e 0,transparent 35%),var(--bg);overflow-x:hidden}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid #fff;outline-offset:3px}.app-shell{position:relative;min-height:100vh;min-height:100dvh;max-width:520px;margin:auto;overflow:hidden;background:linear-gradient(160deg,rgba(255,255,255,.035),transparent 45%)}.screen{display:none;min-height:100vh;min-height:100dvh;padding:calc(18px + var(--safe-top)) 20px calc(18px + var(--safe-bottom));animation:screen-in .24s ease}.screen--active{display:flex;flex-direction:column}@keyframes screen-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.home{justify-content:center;text-align:center;isolation:isolate;padding-top:calc(28px + var(--safe-top));padding-bottom:calc(25px + var(--safe-bottom))}.orb{position:absolute;border-radius:50%;filter:blur(4px);z-index:-1;opacity:.65}.orb--a{width:260px;height:260px;left:-130px;top:2%;background:radial-gradient(circle,#7547ff,transparent 69%)}.orb--b{width:280px;height:280px;right:-150px;bottom:4%;background:radial-gradient(circle,#ff3f94,transparent 70%)}.duel-mark{display:flex;align-items:center;justify-content:center;gap:9px;margin:0 auto 16px}.duel-mark span{display:grid;place-items:center;width:62px;height:62px;border-radius:20px;font-weight:1000;font-size:2rem;box-shadow:0 15px 35px rgba(0,0,0,.28)}.duel-mark span:first-child{background:linear-gradient(145deg,#7652ff,#a681ff);transform:rotate(-6deg)}.duel-mark span:last-child{background:linear-gradient(145deg,#ff397f,#ff7b54);transform:rotate(6deg)}.duel-mark i{font-size:.75rem;font-weight:1000;font-style:normal;background:#fff;color:#1c1238;padding:7px;border-radius:50%;z-index:2}.eyebrow{margin:0 0 8px;color:#c7b9ff;font-size:.69rem;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.home h1{margin:0;font-size:clamp(3.45rem,18vw,5.4rem);line-height:.77;letter-spacing:-.075em}.home h1 em{font-style:normal;color:transparent;background:linear-gradient(100deg,#9b7bff,#ff5c9f 70%);background-clip:text;-webkit-background-clip:text}.lead{max-width:410px;margin:24px auto 22px;color:#ddd8ef;line-height:1.52;font-weight:570}.home-actions{display:grid;gap:10px;width:min(100%,390px);margin:0 auto}.feature-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:22px}.feature-pills span,.round-pill{border:1px solid var(--line);background:rgba(255,255,255,.075);border-radius:999px;padding:7px 10px;font-size:.68rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(12px)}
.btn{min-height:48px;border:0;border-radius:16px;padding:12px 18px;font-weight:850;cursor:pointer;transition:transform .15s ease,filter .15s ease,background .15s ease}.btn:active{transform:scale(.975)}.btn--xl{min-height:58px;font-size:1.02rem}.btn--primary{background:linear-gradient(110deg,#7d56ff,#ef4dbe);color:#fff;box-shadow:0 13px 34px rgba(108,64,242,.31)}.btn--glass{border:1px solid var(--line);background:rgba(255,255,255,.075)}.btn--outline{width:100%;border:1px dashed rgba(190,174,255,.5);background:transparent;color:#ddd3ff}.text-button{border:0;background:transparent;padding:9px;color:#c6bfe1;font-weight:780;cursor:pointer}.text-button--danger{color:#ff7c9f}.icon-button{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.07);font-size:1.45rem;cursor:pointer}.icon-button--ghost{visibility:hidden}.icon-button--dots{font-size:.9rem;font-weight:900;letter-spacing:.05em}.topbar,.game-header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;min-height:60px}.topbar>div{text-align:center}.topbar h2{margin:0;font-size:1.4rem}.topbar .eyebrow{margin-bottom:2px}.game-header{flex:0 0 auto}.game-header .round-pill{justify-self:center}.simple-header{display:flex;justify-content:center;padding-top:5px}.scroll-content{flex:1;overflow-y:auto;padding:18px 1px 118px;scrollbar-width:none}.scroll-content::-webkit-scrollbar{display:none}.sticky-footer{position:fixed;z-index:5;left:50%;bottom:0;transform:translateX(-50%);width:min(520px,100%);padding:13px 20px calc(13px + var(--safe-bottom));background:linear-gradient(transparent,rgba(18,13,41,.94) 24%);display:grid;gap:5px}.form-error{min-height:18px;margin:0;text-align:center;color:#ff96b2;font-size:.79rem;font-weight:700}
.player-fields{display:grid;gap:9px}.player-field{display:grid;grid-template-columns:38px 1fr 40px;align-items:center;gap:8px;padding:7px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.06)}.player-number{display:grid;place-items:center;width:32px;height:32px;border-radius:11px;background:#6d4bdf;font-weight:900}.player-field input{width:100%;border:0;background:transparent;color:#fff;font-weight:750;min-height:40px}.player-field input::placeholder{color:#9189ab}.remove-player{border:0;background:transparent;color:#bcb4d1;font-size:1.45rem;cursor:pointer}.remove-player:disabled{opacity:.25}.settings-card{border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.045);padding:16px;margin:18px 0 0}.settings-card legend{padding:0 6px;font-weight:900}.setting-help{margin:0 0 12px;color:var(--muted);font-size:.84rem}.segments{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.segments button,.category-grid button{min-height:45px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.05);color:#bcb6cf;font-size:.76rem;font-weight:800;cursor:pointer}.segments button.is-active,.category-grid button[aria-pressed=true]{background:linear-gradient(145deg,rgba(128,92,255,.8),rgba(239,77,190,.48));border-color:rgba(213,198,255,.6);color:#fff}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.category-grid button span{display:block;font-size:1.25rem;margin-bottom:3px}
.game-screen{padding-left:16px;padding-right:16px}.duel-stage{display:flex;flex:1;flex-direction:column;align-items:stretch;justify-content:center;gap:12px;padding:12px 0}.captain-cue{display:flex;align-items:center;gap:10px;width:100%;padding:10px 13px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.05)}.captain-cue>span{font-size:1.55rem}.captain-cue div{display:grid;gap:2px}.captain-cue small{font-size:.62rem;color:#c9baff;font-weight:900;letter-spacing:.11em}.captain-cue b{font-size:.88rem}.dilemma-card{position:relative;padding:13px;border:1px solid rgba(255,255,255,.16);border-radius:28px;background:linear-gradient(160deg,rgba(255,255,255,.13),rgba(255,255,255,.055));box-shadow:0 22px 55px rgba(0,0,0,.25)}.dilemma-card h2{text-align:center;margin:2px 0 11px;font-size:1rem;color:#d4caff}.option{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:10px;min-height:100px;padding:14px;border-radius:19px}.option span{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:rgba(255,255,255,.16);font-size:1.45rem;font-weight:1000}.option p{margin:0;font-weight:850;font-size:clamp(.98rem,4.5vw,1.18rem);line-height:1.3}.option--a{background:linear-gradient(135deg,#6549df,#876af1)}.option--b{background:linear-gradient(135deg,#d43c85,#ef625c)}.versus{position:relative;z-index:2;width:42px;margin:-7px auto;padding:7px 0;border:4px solid #1f1743;border-radius:999px;background:#fff;color:#281a52;text-align:center;font-size:.7rem;font-weight:1000}.twist{margin:11px 5px 0;padding-top:10px;border-top:1px solid var(--line);text-align:center;color:#d6cee8;font-size:.81rem;font-weight:700}.twist::before{content:'TWIST · ';color:#ff84bd;font-weight:950}.timer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:0 5px}.timer>span{font-variant-numeric:tabular-nums;font-weight:950}.timer-track{height:6px;border-radius:99px;background:rgba(255,255,255,.11);overflow:hidden}.timer-track i{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#62dcea,#b676ff);transition:width .3s linear}.timer .text-button{font-size:.74rem;padding:5px}.timer.is-done>span{color:#ff75a5}.timer.is-done i{background:#ff527f}
.handoff{justify-content:center;text-align:center;align-items:center}.privacy-icon{display:grid;place-items:center;width:118px;height:118px;border-radius:38px;background:linear-gradient(145deg,#6546db,#e445a1);font-size:3.4rem;box-shadow:0 25px 60px rgba(85,44,183,.36);transform:rotate(-4deg)}.handoff h2{font-size:2rem;line-height:1.15;margin:16px 0 8px}.handoff h2 em{color:#b698ff;font-style:normal}.handoff>p:not(.eyebrow){color:var(--muted);max-width:330px;line-height:1.5}.handoff .btn{width:100%;margin-top:16px}.vote-screen{justify-content:flex-start}.vote-wrap{display:flex;flex:1;flex-direction:column;justify-content:center;text-align:center;padding:15px 0}.vote-wrap h2{margin:0;font-size:2rem}.vote-twist{margin:10px auto 18px;color:#d5cde5;font-size:.84rem}.vote-options{display:grid;gap:12px}.vote-choice{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:10px;min-height:130px;padding:15px;border:0;border-radius:23px;color:white;text-align:left;cursor:pointer;box-shadow:0 18px 40px rgba(0,0,0,.22)}.vote-choice span{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.16);font-size:1.55rem;font-weight:1000}.vote-choice b{font-size:1.08rem;line-height:1.3}.vote-choice--a{background:linear-gradient(140deg,#5b3bd0,#8d70fa)}.vote-choice--b{background:linear-gradient(140deg,#c83379,#f05f59)}.vote-wrap>small{margin-top:15px;color:#9f96b8}
.result-wrap{display:flex;flex:1;flex-direction:column;justify-content:center;text-align:center;padding:14px 5px}.result-wrap h2{font-size:2.15rem;line-height:1.08;margin:3px 0 22px}.result-bars{display:grid;gap:11px}.result-bars>div{display:grid;grid-template-columns:30px 1fr 32px;align-items:center;gap:9px}.result-bars span{font-weight:1000}.result-bars i{height:19px;border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden}.result-bars i b{display:block;height:100%;border-radius:inherit;transition:width .55s cubic-bezier(.2,.8,.2,1)}.result-bars div:first-child i b{background:linear-gradient(90deg,#7050ed,#ac8cff)}.result-bars div:last-child i b{background:linear-gradient(90deg,#db3d81,#ff745e)}.result-bars strong{font-size:1.2rem}.result-wrap>p:not(.eyebrow){color:#d6cee6;line-height:1.45}.voter-chips{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin:6px 0 21px}.voter-chips span{padding:6px 9px;border:1px solid var(--line);border-radius:99px;background:rgba(255,255,255,.06);font-size:.75rem}.result-actions{display:grid;gap:9px}.score-list,.history-list{display:grid;gap:9px}.score-row{display:grid;grid-template-columns:34px 43px 1fr auto;align-items:center;gap:9px;padding:11px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.055)}.score-rank{color:#a69dbb;font-weight:900}.score-avatar{display:grid;place-items:center;width:41px;height:41px;border-radius:13px;background:#382c66;font-size:1.25rem}.score-copy{display:grid;min-width:0}.score-copy span{color:#aaa2bd;font-size:.72rem}.score-value{font-size:1.45rem;color:#c6b2ff}.stat-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.stat-totals div{display:grid;gap:2px;padding:13px 6px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.05);text-align:center}.stat-totals strong{font-size:1.35rem}.stat-totals span{color:#a59db9;font-size:.7rem}.history-row{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:13px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.05)}.history-number{font-weight:950;color:#b9a5ff}.history-copy{display:grid;gap:4px}.history-copy b{font-size:.87rem}.history-copy span{color:#bbb3cb;font-size:.76rem;line-height:1.35}.history-copy small{color:#ff8bbb}.empty-state{padding:28px 15px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:18px}
.dialog{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:20px;border:0;background:rgba(9,6,22,.74);color:var(--ink);backdrop-filter:blur(11px)}.dialog[open]{display:grid;place-items:center}.dialog::backdrop{background:transparent}.dialog-card{position:relative;width:min(100%,420px);padding:24px;border:1px solid var(--line);border-radius:27px;background:linear-gradient(155deg,#2d2059,#18112f);box-shadow:0 25px 80px #080511;display:grid;gap:10px}.dialog-card h2{margin:0;font-size:1.8rem}.dialog-card p{color:#bbb4cd;line-height:1.45}.dialog-card ol{padding-left:22px;margin:5px 0;color:#d6cfe3}.dialog-card li{margin:12px 0;line-height:1.4}.dialog-close{position:absolute;right:14px;top:12px;border:0;background:transparent;color:#fff;font-size:1.8rem;cursor:pointer}.toast{position:fixed;z-index:20;left:50%;bottom:calc(20px + var(--safe-bottom));transform:translate(-50%,30px);max-width:calc(100% - 36px);padding:11px 15px;border:1px solid var(--line);border-radius:13px;background:#f7f3ff;color:#231742;font-weight:800;opacity:0;pointer-events:none;transition:.2s}.toast--visible{opacity:1;transform:translate(-50%,0)}
@media(max-height:720px){.home{justify-content:flex-start}.duel-mark span{width:50px;height:50px;font-size:1.6rem}.home h1{font-size:3.8rem}.lead{margin:18px auto}.feature-pills{margin-top:15px}.duel-stage{gap:8px;justify-content:flex-start}.option{min-height:82px}.result-wrap{justify-content:flex-start;padding-top:36px}.privacy-icon{width:92px;height:92px;font-size:2.7rem}}
@media(max-width:350px){.screen{padding-left:14px;padding-right:14px}.game-screen{padding-left:11px;padding-right:11px}.home h1{font-size:3.65rem}.lead{font-size:.91rem}.feature-pills span{font-size:.58rem}.category-grid{grid-template-columns:repeat(2,1fr)}.segments{grid-template-columns:repeat(2,1fr)}.option{grid-template-columns:42px 1fr;padding:11px;min-height:88px}.option p{font-size:.92rem}.captain-cue{padding:8px 10px}.vote-choice{min-height:112px}.result-wrap h2{font-size:1.85rem}.sticky-footer{padding-left:14px;padding-right:14px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
