:root{--bg:#f7f5f2;--card:#fff;--text:#1a1a1a;--muted:#6b6b6b;--accent:#2d5bff;--accent-soft:#eef2ff;--border:#e5e2dd;--error:#d94040;--success:#2ba060;--radius:14px;--shadow:0 1px 3px rgba(0,0,0,0.04),0 4px 12px rgba(0,0,0,0.06)}[data-sc=a]{--sc:#6366f1;--sc-soft:#eef0ff;--sc-text:#fff}[data-sc=b]{--sc:#f59e0b;--sc-soft:#fef3c7;--sc-text:#1a1a1a}[data-sc=c]{--sc:#10b981;--sc-soft:#d1fae5;--sc-text:#fff}[data-sc=d]{--sc:#f43f5e;--sc-soft:#ffe4e6;--sc-text:#fff}[data-sc=e]{--sc:#06b6d4;--sc-soft:#cffafe;--sc-text:#fff}[data-sc=f]{--sc:#8b5cf6;--sc-soft:#ede9fe;--sc-text:#fff}*{margin:0;padding:0;box-sizing:border-box}body{font-family:DM Sans,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh}.container{max-width:740px;margin:0 auto;padding:40px 24px 80px}.study-header{text-align:center;margin-bottom:48px}.study-badge{display:inline-block;font-size:11px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);padding:6px 14px;border-radius:100px;margin-bottom:20px}.study-header h1{font-family:"DM Serif Display",serif;font-size:32px;font-weight:400;margin-bottom:12px}.study-header p{font-size:15px;color:var(--muted);max-width:520px;margin:0 auto}.est-time{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);margin-top:16px}.est-time svg{width:14px;height:14px}.section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:32px;margin-bottom:20px;box-shadow:var(--shadow)}.section.has-error{border-color:var(--error)}.section-label{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.section h2{font-family:"DM Serif Display",serif;font-size:22px;font-weight:400;margin-bottom:6px}.section p.desc{font-size:14px;color:var(--muted);margin-bottom:24px}.pair-block{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--border)}.pair-block:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.pair-label{font-size:13px;font-weight:600;color:var(--muted);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.comparison-grid{display:grid;grid-template-columns:repeat(var(--variation-count,2),1fr);grid-gap:16px;gap:16px}.style-option{position:relative;cursor:pointer;border-radius:12px;overflow:hidden;border:3px solid transparent;transition:border-color .2s,transform .15s,box-shadow .2s;background:#fafaf8}.style-option:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.1)}.style-option.selected{border-color:var(--sc,var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--sc,var(--accent)) 15%,transparent)}.style-option img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.check-badge{position:absolute;top:10px;right:10px;width:26px;height:26px;background:var(--sc,var(--accent));border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.5);transition:opacity .2s,transform .2s;z-index:2}.style-option.selected .check-badge{opacity:1;transform:scale(1)}.style-tag{position:absolute;bottom:10px;left:10px;background:var(--sc,rgba(0,0,0,.65));color:var(--sc-text,#fff);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;letter-spacing:.5px}.style-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--sc,var(--accent));vertical-align:middle;margin-right:4px}.likert-group{margin-bottom:24px}.likert-group:last-child{margin-bottom:0}.likert-label{font-size:14px;font-weight:500;margin-bottom:10px}.likert-scale{display:flex;justify-content:space-between;gap:8px}.likert-scale label{flex:1 1;text-align:center;cursor:pointer}.likert-scale input{display:none}.likert-scale .pill{display:block;padding:10px 4px;border:2px solid var(--border);border-radius:10px;font-size:13px;font-weight:500;color:var(--muted);transition:all .15s}.likert-scale input:checked+.pill{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.likert-scale label:hover .pill{border-color:#ccc}.likert-anchors{display:flex;justify-content:space-between;font-size:11px;color:#aaa;margin-top:6px;padding:0 4px}.slider-item{padding:20px 0}.slider-item-border{border-bottom:1px solid var(--border);margin-bottom:4px}.slider-question{font-size:15px;font-weight:500;margin-bottom:14px;color:var(--text)}.slider-subtext{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:2px}.slider-control{display:flex;align-items:center;gap:16px}.slider-track-wrap{flex:1 1;position:relative;padding-bottom:12px}.slider-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:100px;outline:none;cursor:pointer;background:linear-gradient(to right,var(--accent) 0,var(--accent) var(--pct,0),var(--border) var(--pct,0),var(--border) 100%)}.slider-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--accent);border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.15);cursor:pointer;-webkit-transition:transform .1s;transition:transform .1s}.slider-range::-webkit-slider-thumb:hover{transform:scale(1.15)}.slider-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--accent);border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.15);cursor:pointer}.slider-ticks{display:flex;justify-content:space-between;padding:0 10px;margin-top:6px}.slider-ticks span{width:1px;height:6px;background:var(--border)}.slider-value{min-width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted);background:#fafaf8;border:2px solid var(--border);border-radius:10px;flex-shrink:0}.slider-value-active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.slider-anchors{display:flex;justify-content:space-between;font-size:11px;color:#aaa;padding:0 4px}.text-field{width:100%;border:2px solid var(--border);border-radius:10px;padding:14px 16px;font-family:DM Sans,sans-serif;font-size:14px;color:var(--text);resize:vertical;min-height:90px;transition:border-color .2s;background:#fafaf8}.text-field:focus{outline:none;border-color:var(--accent);background:#fff}.text-field::placeholder{color:#bbb}.radio-group{display:flex;flex-wrap:wrap;gap:8px}.radio-group label{cursor:pointer}.radio-group input{display:none}.radio-group .chip{display:inline-block;padding:8px 18px;border:2px solid var(--border);border-radius:100px;font-size:13px;font-weight:500;color:var(--muted);transition:all .15s}.radio-group input:checked+.chip{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.radio-group label:hover .chip{border-color:#ccc}.overall-choice{display:grid;grid-template-columns:repeat(var(--variation-count,2),1fr);grid-gap:12px;gap:12px;margin-top:4px}.overall-option{cursor:pointer;border:2px solid var(--border);border-radius:12px;padding:20px;text-align:center;transition:all .2s;background:#fafaf8}.overall-option:hover{border-color:#ccc;background:#fff}.overall-option.selected{border-color:var(--sc,var(--accent));background:var(--sc-soft,var(--accent-soft))}.overall-option .style-name{font-size:16px;font-weight:700;margin-bottom:4px}.overall-option .style-desc{font-size:12px;color:var(--muted)}.overall-option.selected .style-name{color:var(--sc,var(--accent))}.tally{display:flex;align-items:center;gap:12px;margin-top:20px;padding:16px;background:#fafaf8;border-radius:10px;border:1px solid var(--border)}.tally-bar{flex:1 1;height:8px;background:var(--border);border-radius:100px;overflow:hidden;display:flex}.tally-fill{height:100%;background:var(--sc,var(--accent));transition:flex-basis .4s ease}.tally-count{font-size:13px;font-weight:600;min-width:36px;text-align:center;color:var(--sc,var(--text));display:inline-flex;align-items:center;gap:4px}.submit-section{text-align:center;padding-top:12px}.submit-btn{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff;border:none;padding:16px 48px;border-radius:100px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s,transform .1s;box-shadow:0 2px 8px rgba(45,91,255,.3)}.submit-btn:hover{background:#1a44e6;transform:translateY(-1px)}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.submit-note{font-size:12px;color:#aaa;margin-top:12px}.completion-screen{text-align:center;padding:80px 24px}.completion-icon{width:64px;height:64px;background:#e8f5ee;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-bottom:24px}.completion-screen h2{font-family:"DM Serif Display",serif;font-size:28px;font-weight:400;margin-bottom:12px}.completion-screen p{color:var(--muted);font-size:15px;margin-bottom:8px}.completion-code{display:inline-block;font-family:monospace;font-size:18px;font-weight:700;background:var(--accent-soft);color:var(--accent);padding:12px 28px;border-radius:10px;margin-top:16px;letter-spacing:2px}.not-found-screen{text-align:center;padding:80px 24px}.not-found-icon{width:64px;height:64px;background:#f5f3f0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-bottom:24px}.not-found-screen h2{font-family:"DM Serif Display",serif;font-size:28px;font-weight:400;margin-bottom:12px}.not-found-screen p{color:var(--muted);font-size:15px;margin-bottom:8px}.not-found-link{color:var(--accent);text-decoration:none;font-weight:500}.not-found-link:hover{text-decoration:underline}.staircase-offer{text-align:center;padding:24px 0 20px}.staircase-question{font-size:15px;color:var(--muted);margin-bottom:8px}.staircase-amount{font-family:"DM Serif Display",serif;font-size:48px;font-weight:400;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.staircase-trial-info{text-align:center;margin-bottom:24px}.staircase-trial-info>span{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.staircase-pips{display:flex;justify-content:center;gap:6px;margin-top:10px}.staircase-pip{width:8px;height:8px;border-radius:50%;background:var(--border);transition:background .2s,transform .2s}.staircase-pip.pip-yes{background:var(--success)}.staircase-pip.pip-no{background:var(--error)}.staircase-pip.pip-current{background:var(--accent);transform:scale(1.3)}.staircase-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.staircase-btn{padding:16px 24px;border-radius:12px;border:2px solid var(--border);font-family:DM Sans,sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:all .15s;background:#fafaf8}.staircase-btn:active{transform:scale(.97)}.staircase-yes{border-color:var(--success);color:var(--success);background:#f0faf4}.staircase-yes:hover{background:#e0f5ea}.staircase-no{border-color:var(--border);color:var(--muted)}.staircase-no:hover{border-color:#ccc;background:#f5f5f3}.staircase-complete{display:flex;align-items:center;gap:8px;justify-content:center;padding:24px 0 8px;color:var(--success);font-size:15px;font-weight:600}.ladder-offer{text-align:center;padding:24px 0 16px}.ladder-word{font-family:"DM Serif Display",serif;font-size:28px;font-weight:400;color:var(--text);margin-bottom:8px}.ladder-question{font-size:15px;color:var(--muted);margin-bottom:12px}.ladder-value{font-family:"DM Serif Display",serif;font-size:48px;font-weight:400;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.ladder-range-bar{position:relative;height:6px;background:var(--border);border-radius:3px;margin:16px auto 0;max-width:280px;overflow:visible}.ladder-range-fill{top:0;bottom:0;border-radius:3px;opacity:.3;transition:left .2s ease-out,right .2s ease-out}.ladder-range-fill,.ladder-range-needle{position:absolute;background:var(--accent)}.ladder-range-needle{top:-5px;width:3px;height:16px;border-radius:2px;transform:translateX(-50%);transition:left .2s ease-out}.ladder-progress{text-align:center;margin-bottom:24px}.ladder-progress>span{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.ladder-pips{display:flex;justify-content:center;gap:4px;margin-top:10px;flex-wrap:wrap}.ladder-pip{width:8px;height:8px;border-radius:50%;background:var(--border);transition:background .2s,transform .2s}.ladder-pip.pip-done{background:var(--success)}.ladder-pip.pip-current{background:var(--accent);transform:scale(1.3)}.ladder-actions{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:12px;gap:12px;align-items:center}.ladder-btn{padding:16px 24px;border-radius:12px;border:2px solid var(--border);font-family:DM Sans,sans-serif;font-size:15px;font-weight:600;cursor:pointer;transition:all .15s;background:#fafaf8}.ladder-btn:active{transform:scale(.97)}.ladder-lower{border-color:var(--accent);color:var(--accent);background:#f0f4fa}.ladder-lower:hover{background:#e0eaf5}.ladder-higher{border-color:var(--success);color:var(--success);background:#f0faf4}.ladder-higher:hover{background:#e0f5ea}.ladder-unsure{padding:12px 16px;font-size:13px;border-color:var(--border);color:var(--muted)}.ladder-unsure:hover:not(:disabled){border-color:#ccc;background:#f5f5f3}.ladder-unsure:disabled{opacity:.3;cursor:default}.ladder-complete{display:flex;align-items:center;gap:8px;justify-content:center;padding:24px 0 8px;color:var(--success);font-size:15px;font-weight:600}.error-msg{color:var(--error);font-size:13px;margin-top:8px;display:none}.section.has-error .error-msg{display:block}.progress-bar{position:fixed;top:0;left:0;height:3px;background:var(--accent);transition:width .4s ease;z-index:100}@media (max-width:560px){.container{padding:24px 16px 60px}.section{padding:24px 20px}.study-header h1{font-size:26px}.likert-anchors,.section-label,.slider-anchors,.study-badge{font-size:13px}.comparison-grid{gap:10px}.likert-scale .pill{padding:12px 2px;font-size:12px}.slider-control{gap:12px}.slider-range::-webkit-slider-thumb{width:32px;height:32px}.slider-range::-moz-range-thumb{width:32px;height:32px}.radio-group .chip{padding:12px 18px}.overall-choice{grid-template-columns:1fr}.ladder-actions{gap:8px}.ladder-btn{padding:12px 10px;font-size:13px}.ladder-unsure{padding:10px 8px;font-size:11px}}