:root{color-scheme:dark;--bg:#0b0c1a;--panel:#17182c;--panel2:#20223c;--ink:#f8f6ff;--muted:#a9a8bd;--hot:#ff4d7d;--gold:#ffc857;--violet:#8f7cff;--green:#5be3a7;--line:#333651;font-family:Inter,ui-rounded,"SF Pro Rounded","SF Pro Display",system-ui,sans-serif}
.candidate{position:relative!important;touch-action:none;user-select:none;transition:transform .18s,opacity .18s}.swipe-cue{position:absolute;top:18px;padding:8px 12px;border:3px solid;border-radius:10px;font-weight:950;letter-spacing:.08em;opacity:0;transition:opacity .1s}.swipe-cue.left{left:16px;color:var(--muted);rotate:-8deg}.swipe-cue.right{right:16px;color:var(--green);rotate:8deg}.swipe-help{text-align:center;font-size:.72rem;margin:10px 0 0}.choices{grid-template-columns:repeat(2,1fr)!important;margin-top:10px!important}.choice.love{background:#6d1b3c}.choice.nope{color:var(--muted)}.battle{touch-action:none}.battle-card{transition:filter .15s}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;min-height:100vh;background:radial-gradient(circle at 90% -10%,#37205e 0,transparent 35%),radial-gradient(circle at -15% 40%,#182d55 0,transparent 35%),var(--bg);color:var(--ink)}button,input,textarea{font:inherit}.shell{max-width:720px;min-height:100vh;margin:auto;padding:calc(env(safe-area-inset-top) + 18px) 18px calc(env(safe-area-inset-bottom) + 28px)}header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.brand{font-weight:900;font-size:1.35rem;letter-spacing:-.04em}.brand i{font-style:normal;color:var(--hot)}h1{font-size:clamp(2rem,10vw,3.8rem);line-height:.95;letter-spacing:-.065em;margin:18px 0 12px}h2{font-size:1.7rem;letter-spacing:-.04em;margin:8px 0}p{color:var(--muted);line-height:1.45}.eyebrow{color:var(--gold);font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;font-weight:850}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin:22px 0}.topic{position:relative;min-height:112px;border:1px solid var(--line);border-radius:22px;padding:16px;text-align:left;background:linear-gradient(145deg,var(--panel2),var(--panel));color:var(--ink);font-weight:800;font-size:1.05rem;box-shadow:0 12px 30px #0004}.topic .emoji{display:block;font-size:1.8rem;margin-bottom:14px}.topic small{display:block;color:var(--green);font-size:.68rem;margin-top:6px}.primary,.secondary,.ghost,.choice,.battle-card{border:0;color:var(--ink);font-weight:800;cursor:pointer}.primary{width:100%;padding:17px;border-radius:17px;background:linear-gradient(120deg,var(--hot),#e73fbf);box-shadow:0 10px 28px #ff4d7d33}.secondary{padding:14px 17px;border-radius:15px;background:var(--panel2);border:1px solid var(--line)}.ghost{background:transparent;color:var(--muted);padding:10px}.stack{display:grid;gap:10px}.row{display:flex;gap:10px;align-items:center}.row>*{flex:1}.progress{height:7px;background:#282a42;border-radius:9px;overflow:hidden;margin:12px 0 26px}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--violet),var(--hot));border-radius:9px;transition:width .25s}.counter{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.88rem}.candidate{min-height:42vh;display:grid;place-items:center;text-align:center;padding:30px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(160deg,#262846,#141526);box-shadow:0 24px 60px #0007}.candidate h2{font-size:clamp(2.1rem,11vw,4.3rem);line-height:1}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:14px}.choice{padding:16px 6px;border-radius:16px;background:var(--panel2);font-size:.9rem}.choice:first-child{background:#6d1b3c}.choice:nth-child(2){background:#3e356e}.choice:last-child{color:var(--muted)}.battle{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:58vh}.battle-card{border-radius:26px;padding:18px;background:linear-gradient(160deg,#292c50,#17182b);border:1px solid var(--line);font-size:clamp(1.6rem,7vw,3rem);line-height:1.02;overflow-wrap:anywhere}.battle-card:first-child{box-shadow:inset 0 5px 0 var(--violet)}.battle-card:last-child{box-shadow:inset 0 5px 0 var(--hot)}.versus{position:absolute;left:50%;top:50%;translate:-50% -50%;background:var(--gold);color:#231b09;border-radius:99px;padding:9px 8px;font-weight:950;font-size:.7rem;z-index:2}.battle-wrap{position:relative}.rank-list{list-style:none;padding:0;margin:18px 0;display:grid;gap:9px}.rank-item{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);background:var(--panel);border-radius:16px}.rank-item.dragging{opacity:.45}.rank-num{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--panel2);font-weight:900;color:var(--gold);flex:0 0 auto}.rank-name{font-weight:800;flex:1}.handle{font-size:1.3rem;color:var(--muted);padding:8px;touch-action:none}.move{display:flex;gap:4px}.move button{border:0;background:#292b47;color:var(--ink);border-radius:8px;padding:7px}.podium{display:grid;grid-template-columns:1fr 1.15fr 1fr;align-items:end;gap:8px;margin:28px 0}.podium div{background:linear-gradient(150deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:18px 18px 7px 7px;padding:14px 8px;text-align:center;font-weight:800;overflow-wrap:anywhere}.podium div:nth-child(2){order:2;min-height:145px;border-color:#a67d27}.podium div:first-child{order:1;min-height:115px}.podium div:last-child{order:3;min-height:95px}.podium b{display:block;font-size:1.5rem;color:var(--gold);margin-bottom:8px}.result-list{counter-reset:rank;display:grid;gap:8px;margin:16px 0 26px}.result{counter-increment:rank;display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line);font-weight:750}.result:before{content:counter(rank);color:var(--muted);font-variant-numeric:tabular-nums;width:25px}.modal{position:fixed;inset:0;background:#050611dd;display:grid;place-items:end center;z-index:9}.sheet{width:min(720px,100%);max-height:90vh;overflow:auto;padding:24px 20px calc(env(safe-area-inset-bottom) + 24px);background:#181a30;border-radius:28px 28px 0 0}.field{width:100%;border:1px solid var(--line);background:#0f1020;color:var(--ink);padding:14px;border-radius:14px;margin:10px 0;resize:vertical}.hint{font-size:.78rem;color:var(--muted)}#toast{position:fixed;bottom:calc(env(safe-area-inset-bottom) + 20px);left:50%;translate:-50% 20px;background:#f7f4ff;color:#191726;padding:10px 15px;border-radius:99px;font-weight:800;opacity:0;pointer-events:none;transition:.25s;z-index:20;white-space:nowrap}#toast.show{opacity:1;translate:-50% 0}@media(max-width:380px){.shell{padding-left:13px;padding-right:13px}.battle{gap:8px}.choices{gap:6px}.choice{font-size:.78rem}.grid{gap:8px}}
