/* Study builder layout */
.builder{display:grid;gap:24px}
@media(min-width:900px){.builder{grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:40px;align-items:start}}
.b-stage{position:relative}
@media(min-width:900px){.b-stage{position:sticky;top:84px}}
.b-stage .frame{max-width:300px;margin:0 auto}
@media(min-width:900px){.b-stage .frame{max-width:none}}
.b-score{margin:18px auto 0;max-width:380px;background:var(--night);color:var(--paper);border-radius:var(--r-lg);padding:18px 20px;box-shadow:var(--shadow-dark);border:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden}
.b-score::before{content:"";position:absolute;inset:0;background:var(--mesh-dark);opacity:.7;pointer-events:none}
.b-score>*{position:relative}
.b-score-main{display:flex;align-items:baseline;gap:12px}
.b-score-num{font-size:3.2rem;font-weight:500;letter-spacing:-.05em;line-height:1}
.b-score-label{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#9D9BC0;line-height:1.3}
.b-score-label small{text-transform:none;letter-spacing:0;font-size:.8rem;color:var(--indigo-200)}
.b-score-pred{font-size:.9rem;color:#C7C5E2;margin:8px 0 14px}
.b-score-pred b{color:#fff;font-weight:500}
.b-contrib{display:grid;gap:7px}
.b-c{display:grid;grid-template-columns:92px 1fr 40px;align-items:center;gap:10px;font-size:.82rem;color:#C7C5E2}
.b-c-track{height:6px;border-radius:3px;background:rgba(255,255,255,.1);overflow:hidden}
.b-c-fill{display:block;height:100%;background:var(--indigo-400);border-radius:3px;transition:width .6s var(--ease)}
.b-c.win .b-c-fill{background:var(--g-ember)}
.b-c.neg .b-c-fill{background:rgba(255,255,255,.25)}
.b-c-val{text-align:right;color:#fff;font-weight:500}
.b-c.win .b-c-val{color:var(--apricot)}
.b-panel{display:grid;gap:18px;min-width:0}
.b-groups{gap:8px}
.b-actions{display:flex;gap:8px;flex-wrap:wrap}
.b-pickers{display:grid;gap:18px}
.b-layer-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.b-layer-name{font-weight:500;font-size:.95rem}
.b-layer-val{font-size:.9rem;color:var(--indigo-600);font-weight:500}
.b-strip{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x proximity;scrollbar-width:none;margin:0 -2px}
.b-strip::-webkit-scrollbar{display:none}
.b-opt{flex:none;scroll-snap-align:start;width:104px;display:flex;flex-direction:column;gap:6px;text-align:left;border-radius:14px;padding:6px;border:1px solid var(--line);background:rgba(255,255,255,.7);transition:border-color .25s,box-shadow .25s,transform .25s}
.b-opt:hover{border-color:var(--indigo-300)}
.b-opt.on{border-color:var(--indigo-500);box-shadow:0 0 0 2px rgba(99,102,241,.25),var(--shadow-card)}
.b-thumb{display:block;width:100%;aspect-ratio:1;border-radius:9px;overflow:hidden;background:var(--paper-2);position:relative}
.b-thumb img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.b-opt.is-text .b-thumb{display:none}
.b-opt.is-text{width:150px;padding:10px 12px;justify-content:space-between;min-height:84px}
.b-opt-name{font-size:.78rem;line-height:1.25;color:var(--text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.b-opt.is-text .b-opt-name{font-size:.86rem;font-weight:500}
.b-opt-val{font-size:.8rem;font-weight:500;color:var(--indigo-600)}
.b-opt.neg .b-opt-val{color:var(--faint)}
.b-opt.on .b-opt-val{color:var(--indigo-700)}

/* Study page bits */
.study-hero{padding:clamp(32px,6vw,80px) 0 clamp(32px,5vw,60px)}
.study-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}
@media(min-width:720px){.study-stats{grid-template-columns:repeat(4,1fr)}}
.study-stats .stat .value{font-size:clamp(1.9rem,3vw,2.6rem)}
.question{border-left:2px solid var(--indigo-400);padding:4px 0 4px 18px;font-size:var(--fs-lead);color:var(--text);font-weight:400;line-height:1.4}
.question small{display:block;font-size:var(--fs-caption);color:var(--faint);margin-top:8px;text-transform:uppercase;letter-spacing:.12em}
.mindset-cards{display:grid;gap:14px}
@media(min-width:860px){.mindset-cards{grid-template-columns:repeat(3,1fr)}}
.mindset-cards .card{display:flex;flex-direction:column;gap:10px}
.mindset-cards .who{font-size:1.25rem;font-weight:500;letter-spacing:-.02em}
.mindset-cards .n{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--indigo-600)}
.steps{display:grid;gap:14px;counter-reset:s}
@media(min-width:720px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps .card{counter-increment:s}
.steps .card::before{content:counter(s,decimal-leading-zero);font-size:.78rem;letter-spacing:.12em;color:var(--indigo-500);font-weight:500}
.twocol{display:grid;gap:28px;align-items:center}
@media(min-width:860px){.twocol{grid-template-columns:1fr 1fr;gap:48px}}
.ranked-tabs{margin-bottom:14px}
.quiz{display:grid;gap:12px}
.quiz .q{display:grid;grid-template-columns:1fr auto;gap:8px 14px;align-items:center;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.6);border:1px solid var(--line)}
.quiz .q .t{font-size:.95rem}
.quiz .q .a{font-size:.8rem;color:var(--faint)}
.quiz .q .pct{font-size:1.5rem;font-weight:500;letter-spacing:-.03em;color:var(--indigo-700)}
.quiz .q .pct.bad{color:var(--ember)}
.next-study{display:grid;gap:14px}
@media(min-width:720px){.next-study{grid-template-columns:1fr 1fr}}

/* Logo round */
.round{display:grid;gap:20px}
@media(min-width:900px){.round{grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:40px;align-items:start}}
.round-card{background:#fff;border-radius:var(--r-lg);box-shadow:var(--shadow-float);aspect-ratio:1;display:grid;place-items:center;padding:8%;position:relative;overflow:hidden;max-width:380px;margin:0 auto;width:100%}
.round-card img{width:100%;height:100%;object-fit:contain;transition:opacity .25s,transform .35s var(--ease)}
.round-card.flash img{opacity:0;transform:scale(.96)}
.round-q{font-size:1.05rem;line-height:1.4;font-weight:400}
.round-scale{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px;max-width:420px}
.round-ends{max-width:420px}
.round-scale button{aspect-ratio:1;border-radius:14px;border:1px solid var(--line-strong);background:rgba(255,255,255,.7);font-size:1.3rem;font-weight:500;color:var(--indigo-700);transition:all .2s}
.round-scale button:hover{background:var(--indigo-50);border-color:var(--indigo-400);transform:translateY(-2px)}
.round-scale button:active{transform:scale(.96)}
.round-ends{display:flex;justify-content:space-between;font-size:var(--fs-caption);color:var(--faint);margin-top:6px}
.round-prog{display:flex;gap:4px;margin-top:16px}
.round-prog span{flex:1;height:4px;border-radius:2px;background:var(--line)}
.round-prog span.done{background:var(--indigo-500)}
.round-result{display:none}
.round-result.show{display:block}
.verdict{font-size:var(--fs-h2);letter-spacing:-.03em;line-height:1.1;font-weight:500}
.cmp{display:grid;gap:8px;margin-top:16px}
.cmp .r{display:grid;grid-template-columns:48px 1fr auto auto;gap:10px;align-items:center;font-size:.85rem;padding:6px 8px;border-radius:12px;background:rgba(255,255,255,.6);border:1px solid var(--line)}
.cmp .r img{width:48px;height:48px;object-fit:contain;border-radius:8px;background:#fff}
.cmp .you,.cmp .panel{font-weight:500;min-width:52px;text-align:right}
.cmp .you{color:var(--muted)}
.cmp .panel{color:var(--indigo-700)}
.cmp .r.agree .panel{color:var(--ember)}
.logo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
@media(min-width:720px){.logo-grid{gap:12px}}
.logo-cell{position:relative;border-radius:12px;background:#fff;aspect-ratio:1;overflow:hidden;border:1px solid var(--line);display:grid;place-items:center;padding:6%}
.logo-cell img{width:100%;height:100%;object-fit:contain}
.logo-cell .s{position:absolute;right:5px;bottom:4px;font-size:.72rem;font-weight:500;color:var(--indigo-700);background:rgba(255,255,255,.85);padding:2px 6px;border-radius:999px}
.logo-cell.neg .s{color:var(--faint)}
.logo-cell.top{border-color:var(--indigo-500);box-shadow:0 0 0 2px rgba(99,102,241,.25)}
.logo-row{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:center;margin-bottom:12px}
@media(max-width:719px){.logo-row{grid-template-columns:1fr}}
.logo-row .lbl{font-weight:500;font-size:.95rem}
.logo-row .lbl small{display:block;color:var(--faint);font-weight:400;font-size:.78rem}

.dark .b-opt{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}
.dark .b-opt-name{color:#EDEBFA}
.dark .b-opt-val{color:var(--indigo-200)}
.dark .b-opt.on{border-color:var(--indigo-300);box-shadow:0 0 0 2px rgba(129,140,248,.35)}
.dark .b-opt.on .b-opt-val{color:#fff}
.dark .b-thumb{background:rgba(255,255,255,.08)}
.dark .b-layer-val{color:var(--indigo-200)}
.dark .b-score{border-color:rgba(255,255,255,.14)}
.dark .quiz .q{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1)}
