:root{--brand-blue:#1b4fba;--brand-blue-hover:#1947af;--brand-blue-press:#143a8c;--brand-blue-soft:#3d7bd9;--ink:#0b1b33;--slate:#4a5a75;--muted:#94a0b5;--muted2:#b7c0d0;--bg:#f5f7fb;--surface:#ffffff;--tint50:#f2f5fc;--tint100:#eff3fb;--tint200:#e8eefb;--border:#e4e9f2;--border-strong:#d4dcea;--ring:rgba(27,79,186,0.45);--success:#1f8a4c;--success-surface:#e7f6ec;--warning-text:#9a6a12;--warning-surface:#fbf1dd;--disabled:#c2ccdc;--shadow-xs:0 1px 2px rgba(11,27,51,0.06);--shadow-card:0 10px 30px rgba(11,27,51,0.07);--font-serif:"Fraunces",Georgia,"Times New Roman",serif;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.glow{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(60% 38% at 50% 0,rgba(27,77,179,.1),rgba(27,77,179,0) 60%)}.shell{position:relative;z-index:1;min-height:100dvh;display:flex;flex-direction:column;max-width:480px;margin:0 auto;padding:24px 20px 40px}.scroll{flex:1 1}.eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--brand-blue);font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.title{font-family:var(--font-serif);font-weight:400;font-size:30px;line-height:1.1;letter-spacing:-.6px;color:var(--ink)}.intro,.title{margin:10px 0 0}.intro{font-size:15px;line-height:1.5;color:var(--slate)}.progress-row{display:flex;align-items:center;gap:14px;margin-top:20px}.progress{flex:1 1;height:8px;border-radius:999px;background:var(--tint200);overflow:hidden}.progress>span{display:block;height:100%;background:var(--brand-blue);border-radius:999px;transition:width .35s ease}.progress-count{font-size:14px;font-weight:600;color:var(--slate);white-space:nowrap}.stack{display:flex;flex-direction:column;gap:16px;margin-top:22px}.q-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow-card);padding:18px}.q-card-head{display:flex;align-items:center;gap:9px;margin-bottom:14px}.q-num{font-family:var(--font-serif);font-style:italic;font-weight:500;font-size:16px;color:var(--brand-blue);line-height:1}.q-name{font-size:12px;font-weight:700;letter-spacing:.7px;color:var(--slate)}.q-prompt{font-family:var(--font-serif);font-weight:400;font-size:18px;line-height:1.28;letter-spacing:-.3px;color:var(--ink);margin:0 0 14px}.options{display:flex;flex-direction:column;gap:10px}.vote-option{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:15px 16px;border-radius:14px;border:1.5px solid var(--border);background:var(--surface);cursor:pointer;font-family:inherit;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .05s ease}.vote-option:hover:not(:disabled){border-color:var(--border-strong)}.vote-option:active:not(:disabled){transform:scale(.995)}.vote-option.selected{border-color:var(--brand-blue);box-shadow:0 0 0 3px rgba(27,79,186,.08)}.vote-option:disabled{cursor:default}.radio{width:22px;height:22px;flex:none;border-radius:50%;border:2px solid var(--border-strong);background:var(--surface);position:relative;transition:border-color .15s ease,background .15s ease}.radio.on{border-color:var(--brand-blue)}.radio.on:after{content:"";position:absolute;inset:3.5px;border-radius:50%;background:var(--brand-blue)}.vote-label{flex:1 1;font-size:15px;font-weight:600;color:var(--ink)}.your-pick{flex:none;font-size:11.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--brand-blue)}.q-empty{font-size:13px;color:var(--muted);margin:0}.submit{width:100%;height:52px;margin-top:22px;border:none;border-radius:15px;font-family:inherit;font-size:15.5px;font-weight:700;letter-spacing:-.15px;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .15s ease,opacity .15s ease}.submit.enabled{background:var(--brand-blue);color:#fff;cursor:pointer;box-shadow:var(--shadow-xs)}.submit.enabled:hover{background:var(--brand-blue-hover)}.submit.busy{background:var(--brand-blue);color:#fff;cursor:default;opacity:.85}.submit.disabled{background:var(--disabled);color:#fff;cursor:not-allowed}.footer-count{margin-top:14px;font-size:13px}.footer-count,.footer-note{text-align:center;color:var(--muted)}.footer-note{margin-top:6px;font-size:12.5px}.center{flex:1 1;min-height:70dvh;display:grid;place-items:center;text-align:center;padding:40px 20px}.center .inner{max-width:360px}.center h2{font-family:var(--font-serif);font-weight:400;font-size:24px;letter-spacing:-.4px;color:var(--ink);margin:18px 0 6px}.center p{font-size:14.5px;line-height:1.5;color:var(--muted);margin:0}.center .badge{width:64px;height:64px;margin:0 auto;display:grid;place-items:center;border-radius:20px;background:var(--tint200);color:var(--brand-blue)}.center .badge.success{background:var(--success-surface);color:var(--success)}.link-btn{margin-top:18px;background:none;border:none;color:var(--brand-blue);font-family:inherit;font-size:14px;font-weight:700;cursor:pointer}.spinner{width:34px;height:34px;margin:0 auto;border-radius:50%;border:3px solid var(--tint200);border-top-color:var(--brand-blue);animation:spin .8s linear infinite}.code-chip{display:inline-block;margin-top:14px;padding:4px 10px;border-radius:8px;background:var(--tint100);border:1px solid var(--border);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;color:var(--slate)}@keyframes spin{to{transform:rotate(1turn)}}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:10;background:var(--ink);color:#fff;padding:10px 16px;border-radius:12px;font-size:13px;font-weight:500;box-shadow:var(--shadow-card);animation:rise .2s ease}@keyframes rise{0%{opacity:0;transform:translate(-50%,6px)}}.results-title{font-family:var(--font-serif);font-weight:400;font-size:30px;line-height:1.12;letter-spacing:-.6px;color:var(--ink);margin:10px 0 0}.results-title em{font-style:italic}.q-icon{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:10px;background:var(--tint200);color:var(--brand-blue)}.q-name.grow{flex:1 1}.q-votes{font-weight:500;color:var(--muted)}.chip,.q-votes{font-size:12.5px}.chip{width:26px;height:26px;flex:none;display:grid;place-items:center;border-radius:8px;font-weight:700}.chip.filled{background:var(--brand-blue);color:#fff}.chip.light{background:var(--tint200);color:var(--brand-blue)}.stat{flex:none;display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:700;color:var(--slate)}.stat.win{color:var(--brand-blue)}.rbar{height:7px;background:var(--tint200);overflow:hidden;margin-top:9px}.rbar,.rbar>span{border-radius:999px}.rbar>span{display:block;height:100%;background:#b7ccf0}.rbar.win>span{background:var(--brand-blue)}.winner{background:var(--tint100);border:1px solid var(--tint200);border-radius:14px;padding:13px 14px;margin-bottom:10px}.winner-tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--brand-blue);margin-bottom:9px}.opt-row{display:flex;align-items:center;gap:11px}.opt-label{flex:1 1;font-size:14.5px;font-weight:600;color:var(--ink)}.result-item{padding:4px 2px}.result-item+.result-item{margin-top:10px}.thanks{flex:1 1;display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:44px}.mascot{width:108px;height:108px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow-card);display:grid;place-items:center}.mascot img{width:78px;height:78px;object-fit:contain}.thanks-title{font-family:var(--font-serif);font-weight:400;font-size:30px;letter-spacing:-.6px;color:var(--ink);margin:22px 0 0}.thanks-sub{font-size:15px;line-height:1.5;color:var(--muted);margin:10px 0 0;max-width:340px}.thanks-line{display:inline-flex;align-items:center;gap:7px;color:var(--brand-blue);font-size:14px;font-weight:700;margin:20px 0 0}.promo{width:100%;margin-top:30px;background:var(--ink);border-radius:20px;padding:24px 22px;text-align:center}.promo-title{font-family:var(--font-serif);font-weight:400;font-size:20px;letter-spacing:-.3px;color:#fff;margin:0}.promo-body{font-size:13.5px;line-height:1.5;color:#aeb9cc;margin:10px 0 18px}.appstore{display:inline-flex;align-items:center;gap:10px;background:#000;color:#fff;border:1px solid #2a3a55;border-radius:11px;padding:9px 18px;text-decoration:none}.appstore .as-sub{font-size:9.5px;line-height:1;letter-spacing:.2px;display:block;text-align:left}.appstore .as-main{font-size:17px;font-weight:600;line-height:1.1;display:block;text-align:left}