:root{--bg:#0b0d17;--panel:#15192a;--line:#303750;--text:#f7f7fb;--muted:#a9afc2;--accent:#8b5cf6;--accent2:#d86df4}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#191a31,#0b0d17 48%);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;min-height:100vh}.topbar{height:68px;display:flex;align-items:center;justify-content:space-between;max-width:980px;margin:auto;padding:0 18px}.brand{font-weight:950;letter-spacing:.12em}.view{display:none}.view.active{display:block}.hero,.panel{max-width:900px;margin:30px auto;padding:32px 22px}.hero{text-align:center;padding-top:10vh}.hero h1{font-size:clamp(3rem,10vw,6.5rem);line-height:.88;margin:12px 0}.hero h1 span,.eyebrow{color:#c4b5fd}.hero p,.reason,.muted{color:var(--muted)}.hero p{max-width:620px;margin:20px auto 30px;font-size:1.08rem;line-height:1.55}.panel{background:linear-gradient(180deg,#1a2032,var(--panel));border:1px solid var(--line);border-radius:24px}.center{text-align:center}h2{font-size:clamp(1.8rem,5vw,3rem)}button,input,textarea{font:inherit}.primary,.secondary{border:0;border-radius:14px;padding:13px 16px;color:#fff;font-weight:850;cursor:pointer}.primary{background:linear-gradient(90deg,var(--accent),var(--accent2))}.secondary{background:#242b42}.small{width:auto;padding:9px 12px}.wide,.hero-btn{width:100%;margin-top:12px}.hero-btn{max-width:360px}label{display:block;font-weight:750;margin:14px 0 5px;text-align:left}input,textarea{width:100%;background:#0f1421;border:1px solid #343c56;color:#fff;border-radius:13px;padding:12px;outline:none}textarea{min-height:90px}.options-grid,.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.option-editor,.compare-card,.vote-card{background:#101522;border:1px solid var(--line);border-radius:18px;padding:13px}.option-badge{width:30px;height:30px;display:grid;place-items:center;background:#29224a;border-radius:8px;font-weight:900;margin-bottom:8px}.source-box,.option-image{width:100%;aspect-ratio:16/9;background:#fff;border:1px dashed #46506d;border-radius:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;margin:10px 0;position:relative}.source-box img,.option-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center center;transform-origin:center center}.source-actions{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:18px;background:#090c14}.source-actions input{max-width:88%;margin:0}.source-actions-over-image{inset:auto 10px 10px 10px;display:grid;grid-template-columns:auto 1fr;gap:8px;padding:8px;background:#090c14dd;border-radius:12px}.source-actions-over-image .or-label{display:none}.source-actions-over-image input{max-width:none}.upload-cta{background:#242b42;border:0;border-radius:12px;color:#fff;font-weight:800;cursor:pointer;padding:10px 14px}.or-label{color:var(--muted);font-size:.78rem}.edit-photo-btn{margin-top:8px}.control-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hidden{display:none!important}.winner{display:flex;gap:14px;align-items:center;justify-content:center;margin:22px auto}.winner>span{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));font-size:2rem;font-weight:950}.winner h3{margin:3px 0}.compare-card h3,.vote-card h3{font-size:clamp(1rem,3vw,1.25rem);line-height:1.25;overflow-wrap:anywhere}.product-link{display:block;background:#242b42;color:white;text-decoration:none;padding:10px;border-radius:10px;margin-top:8px}.price-line{color:#d9ccff;font-weight:800}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.stats div{background:#101522;border-radius:14px;padding:15px}.stats span{display:block;font-size:1.6rem;font-weight:900}.stats small{color:var(--muted)}.bar{height:14px;background:#252c42;border-radius:999px;display:flex;overflow:hidden}.bar div{height:100%}#barA{background:#8b5cf6}#barB{background:#d86df4}.pct-row{display:flex;justify-content:space-between;margin:8px 0 18px}.success{background:#123127;color:#9ff0ce;padding:12px;border-radius:12px;margin:12px 0}.editor-overlay{position:fixed;inset:0;background:#050711dd;z-index:100;display:grid;place-items:center;padding:16px}.editor-modal,.share-modal{width:min(560px,100%);max-height:94vh;overflow:auto;background:#15192a;border:1px solid var(--line);border-radius:22px;padding:18px}.editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.editor-head h3{margin:0;font-size:1.55rem}.editor-frame{width:100%;aspect-ratio:16/9;background:#fff;border-radius:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;margin:14px 0}.editor-frame img{width:100%;height:100%;object-fit:contain;object-position:center;transform-origin:center}.editor-modal input[type=range]{width:100%}.share-intro{text-align:left;line-height:1.45}.share-card-preview{width:100%;aspect-ratio:1200/630;background:#0b0d17;border:1px solid var(--line);border-radius:16px;overflow:hidden;margin:14px 0}.share-card-preview img{width:100%;height:100%;object-fit:cover;display:block}.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.social-btn{border:1px solid #3a4260;background:#101522;color:#fff;border-radius:14px;padding:15px 10px;font-weight:850;cursor:pointer}.share-tip{font-size:.82rem;color:var(--muted);line-height:1.4;margin-bottom:0}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(20px);opacity:0;background:white;color:#111;padding:11px 15px;border-radius:12px;font-weight:800;transition:.2s;z-index:150}.toast.show{opacity:1;transform:translateX(-50%)}@media(max-width:650px){.options-grid,.stats{grid-template-columns:1fr}.compare-grid{grid-template-columns:1fr 1fr;gap:8px}.compare-card,.vote-card{padding:8px}.option-image{aspect-ratio:1/1}.compare-card h3,.vote-card h3{font-size:.92rem}.product-link{font-size:.9rem;padding:9px 6px}.hero{padding-top:6vh}.panel{margin:12px;padding:22px 12px}.topbar{height:58px}.source-actions-over-image{grid-template-columns:1fr}.source-actions-over-image .upload-cta{display:none}.editor-frame{aspect-ratio:1/1}.share-modal{padding:16px}.social-btn{padding:14px 8px}}