*{margin:0;padding:0;box-sizing:border-box}:root{--bg:#17151f;--card:#221e30;--card-raised:#2a2540;--text:#f2f0f7;--text-dim:#9a94ad;--border:#37324c}body,html{background:var(--bg);color:var(--text);font-family:Pretendard,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Segoe UI,sans-serif}.shell,body,html{min-height:100dvh}.shell{max-width:480px;margin:0 auto;display:flex;flex-direction:column;padding:16px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:4px 4px 16px}.topbar .logo{font-weight:800;font-size:18px;letter-spacing:-.5px}.topbar .logo span{color:var(--accent)}.streak{font-size:13px;color:var(--text-dim);border:1px solid var(--border);border-radius:999px;padding:6px 12px}.card,.streak{background:var(--card)}.card{border:1px solid var(--border);border-radius:20px;padding:24px 20px}.q-category{font-size:12px;margin-bottom:8px}.q-category,.q-title{color:var(--text-dim)}.q-title{font-size:15px;text-align:center;margin-bottom:20px}.vs-row{display:flex;gap:12px;align-items:stretch}.vs-option{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:var(--card-raised);border:2px solid var(--border);border-radius:16px;padding:28px 12px;cursor:pointer;font-size:16px;font-weight:700;color:var(--text);text-align:center;line-height:1.4;transition:transform .08s ease,border-color .08s ease}.vs-option:active{transform:scale(.96)}.vs-option .emoji{font-size:44px}.vs-option.a:hover{border-color:var(--accentA)}.vs-option.b:hover{border-color:var(--accentB)}.vs-option.picked-a{border-color:var(--accentA)}.vs-option.picked-b{border-color:var(--accentB)}.vs-divider{align-self:center;color:var(--text-dim)}.result-bar,.vs-divider{font-size:14px;font-weight:800}.result-bar{display:flex;height:44px;border-radius:12px;overflow:hidden;margin:16px 0 8px}.result-bar .side-a,.result-bar .side-b{display:flex;align-items:center;padding:0 12px;white-space:nowrap;transition:width .6s cubic-bezier(.22,1,.36,1);min-width:52px}.result-bar .side-a{background:var(--accentA);justify-content:flex-start}.result-bar .side-b{background:var(--accentB);justify-content:flex-end}.verdict{text-align:center;font-size:15px;font-weight:700;margin:12px 0 4px}.verdict.minority{color:#7fe08f}.participants{text-align:center;font-size:12px;color:var(--text-dim)}.breakdown{margin-top:18px;border-top:1px solid var(--border);padding-top:14px}.breakdown h4{font-size:13px;color:var(--text-dim);margin-bottom:10px}.bk-row{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:6px}.bk-label{width:44px;color:var(--text-dim);flex-shrink:0}.bk-bar{flex:1 1;display:flex;height:18px;border-radius:6px;overflow:hidden;background:var(--card-raised)}.bk-bar .a{background:var(--accentA)}.bk-bar .b{background:var(--accentB)}.bk-pct{width:76px;text-align:right;color:var(--text-dim);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex-shrink:0}.demo-gate{margin-top:16px;background:var(--card-raised);border-radius:12px;padding:14px;font-size:13px}.demo-gate p{color:var(--text-dim);margin-bottom:10px}.chip-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.chip{border:1px solid var(--border);background:transparent;color:var(--text);border-radius:999px;padding:6px 14px;font-size:13px;cursor:pointer}.chip.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 25%,transparent)}.btn-row{display:flex;gap:10px;margin-top:18px}.btn{flex:1 1;border:none;border-radius:12px;padding:14px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit}.btn.primary{background:var(--accent);color:#fff}.btn.ghost{background:var(--card-raised);color:var(--text);border:1px solid var(--border)}.ad-card{border:1px dashed var(--border);border-radius:20px;padding:36px 20px;text-align:center}.ad-card,.footer{color:var(--text-dim);font-size:13px}.footer{margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;align-items:center}.footer a{color:var(--text-dim)}.form-field{margin-bottom:14px}.form-field label{display:block;font-size:13px;color:var(--text-dim);margin-bottom:6px}.form-field input,.form-field select{width:100%;background:var(--card-raised);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:12px;font-size:15px;font-family:inherit}.notice{font-size:12px;color:var(--text-dim);line-height:1.6;margin-top:10px}.done-msg{text-align:center;padding:40px 0;line-height:1.8}