:root{--yellow:#ffd500;--black:#0b0b0b;--ink:#151515;--paper:#f2f1ec;--white:#fff;--line:#d9d8d1;--muted:#62625f;--soft:#e9e8e2;--shadow:0 24px 70px rgba(0,0,0,.13)}
*{box-sizing:border-box}
html{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink);scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:var(--paper)}
button,input{font:inherit}
button{cursor:pointer}
button:focus-visible,input:focus-visible{outline:3px solid rgba(255,213,0,.65);outline-offset:3px}
.topbar{height:68px;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,52px);position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;letter-spacing:.08em;font-size:.88rem;white-space:nowrap}.brand strong{color:var(--yellow);font-weight:700}.brand em{font-style:normal;color:#fff;font-weight:500}.lead{color:#a6a6a6;letter-spacing:.15em;font-size:.72rem;font-weight:600}.cellmark{width:30px;height:30px;border:1px solid #3c3c3c;border-radius:50%;position:relative;display:inline-block}.cellmark i{position:absolute;width:4px;height:4px;background:var(--yellow);border-radius:50%}.cellmark i:nth-child(1){left:7px;top:7px}.cellmark i:nth-child(2){right:7px;top:6px}.cellmark i:nth-child(3){left:13px;top:14px}.cellmark i:nth-child(4){left:7px;bottom:6px}.cellmark i:nth-child(5){right:6px;bottom:7px}
.progress{height:5px;background:#262626;position:sticky;top:68px;z-index:20}.progress span{display:block;width:2%;height:100%;background:var(--yellow);transition:width .28s ease}
.view{display:none;min-height:calc(100vh - 73px)}.view.active{display:block}
.intro-view{background:var(--black);color:#fff;position:relative;overflow:hidden}.intro-view.active{display:grid;align-items:center}.intro-copy{width:min(1080px,88vw);margin:auto;padding:70px 0 90px;position:relative;z-index:2}.kicker{margin:0 0 16px;color:var(--muted);font-size:.75rem;letter-spacing:.16em;font-weight:700}.kicker.yellow{color:var(--yellow)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,7.7vw,7.2rem);line-height:.88;letter-spacing:-.065em;font-weight:600;margin:0 0 30px;max-width:990px}h1 mark{background:transparent;color:var(--yellow)}.lede{font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1.55;color:#c7c7c7;max-width:670px;margin-bottom:32px}.btn{border:0;border-radius:11px;padding:16px 22px;min-height:52px;font-weight:700;display:inline-flex;align-items:center;gap:18px;justify-content:center;transition:transform .15s ease,background .15s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--yellow);color:var(--black)}.btn.dark{background:var(--black);color:#fff}.btn:disabled{opacity:.32;cursor:not-allowed;transform:none}.intro-meta{display:flex;gap:25px;flex-wrap:wrap;color:#898989;font-size:.82rem;margin-top:28px}.intro-meta span{display:flex;align-items:center;gap:8px}.intro-meta span:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--yellow)}.period-note{color:#777;font-size:.78rem;margin:22px 0 0}.dotfield{position:absolute;width:min(48vw,650px);height:min(48vw,650px);right:-7vw;bottom:-14vw;border-radius:50%;opacity:.55;background-image:radial-gradient(var(--yellow) 0 2px,transparent 2.4px);background-size:19px 19px;mask-image:radial-gradient(circle,#000 25%,transparent 72%)}
.check-view.active{display:grid;grid-template-columns:260px 1fr}.rail{background:#e7e6e0;border-right:1px solid var(--line);padding:36px 28px}.rail-label{font-size:.7rem;letter-spacing:.14em;color:#777;font-weight:700;margin-bottom:22px}.domain-step{display:flex;align-items:center;gap:12px;color:#777;padding:8px 0;font-size:.84rem}.domain-step b{width:29px;height:29px;border-radius:50%;border:1px solid #c1c0ba;display:grid;place-items:center;font-size:.7rem;font-weight:600;flex:none}.domain-step.current{color:var(--black);font-weight:700}.domain-step.current b{background:var(--yellow);border-color:var(--yellow)}.domain-step.done b{background:var(--black);border-color:var(--black);color:#fff}.question-stage{padding:clamp(38px,6vw,76px) clamp(24px,8vw,110px);display:flex;flex-direction:column;min-width:0}.mobile-domain{display:none}.counter{font-size:.77rem;color:#777;margin:0 0 18px}.question-stage h2,.emotion-view h2,.goals-view h2,.results-view h2{font-size:clamp(2rem,4.2vw,4.1rem);line-height:1;letter-spacing:-.05em;font-weight:600;margin:0 0 18px;color:#575754;max-width:980px}.helper{color:var(--muted);font-size:1rem;line-height:1.55;max-width:780px;margin-bottom:26px}.helper:empty{display:none}.helper.wide{max-width:820px}.answers{display:grid;gap:11px;max-width:820px}.answer{border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--ink);min-height:58px;padding:15px 18px;text-align:left;display:flex;align-items:center;gap:15px;font-size:.98rem;line-height:1.35;transition:border-color .15s,box-shadow .15s}.answer:before{content:"";width:19px;height:19px;border:1.5px solid #9d9c96;border-radius:50%;flex:none}.answer:hover{border-color:#8f8e89}.answer.selected{border-color:var(--black);box-shadow:inset 6px 0 0 var(--yellow)}.answer.selected:before{border:5px solid var(--black);background:var(--yellow)}.answer small{margin-left:auto;color:#8a8984;font-size:.72rem}.actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:auto;padding-top:34px}.back,.restart{border:0;background:transparent;color:#666;padding:13px 0;font-weight:600}.restart{border-bottom:1px solid #aaa}.question-stage>.actions{margin-top:34px}
.content-wrap{width:min(1160px,90vw);margin:auto;padding:62px 0 80px}.content-wrap.narrow{width:min(900px,88vw)}.title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:28px}.phase{font-size:.7rem;letter-spacing:.1em;font-weight:800;background:var(--yellow);border-radius:99px;padding:10px 13px;white-space:nowrap}.emotion-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.emotion-card,.direction-card,.focus-section{background:#fff;border:1px solid var(--line);border-radius:20px;padding:25px}.card-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.card-title h3{font-size:1.25rem;margin:0}.card-title span{font-size:.76rem;color:#777}.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.chip{border:1px solid var(--line);background:#fff;border-radius:99px;padding:11px 14px;color:var(--ink);font-size:.9rem}.chip.selected{background:var(--black);border-color:var(--black);color:#fff}.chip.selected:after{content:" ✓";color:var(--yellow)}.chip:disabled{opacity:.38;cursor:not-allowed}.home-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}.home-option{border:1px solid var(--line);background:#fff;border-radius:15px;padding:21px;text-align:left;font-weight:700;display:flex;justify-content:space-between;align-items:center}.home-option small{font-weight:500;color:#777}.home-option.selected{border-color:var(--black);box-shadow:inset 6px 0 0 var(--yellow)}.emotion-question-wrap .title-row>div{width:100%}
.goal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.goal-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}.goal-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px}.goal-head h3{font-size:1rem;margin:0}.goal-numbers{display:flex;gap:16px}.goal-numbers span{font-size:.68rem;color:#777;text-transform:uppercase}.goal-numbers b{display:block;color:var(--black);font-size:1.15rem;margin-top:3px}.goal-card input[type=range]{width:100%;accent-color:var(--black)}.goal-scale{display:flex;justify-content:space-between;color:#999;font-size:.65rem;margin-top:4px}.goal-summary{background:var(--black);color:#fff;border-radius:16px;margin-top:18px;padding:22px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.goal-summary span{color:#929292;font-size:.76rem}.goal-summary strong{display:block;color:var(--yellow);font-size:1.55rem;margin-top:7px}
.result-wrap{width:min(1180px,92vw)}.result-title{margin-bottom:30px}.result-hero{display:grid;grid-template-columns:.95fr 1.25fr;gap:20px}.score-card{background:var(--black);color:#fff;border-radius:22px;padding:30px;min-height:355px}.score-card>p{font-size:.72rem;letter-spacing:.14em;color:#999}.score-card>div:nth-child(2){display:flex;align-items:end;gap:12px;margin-top:22px}.score-card>div strong{font-size:clamp(5rem,10vw,8rem);line-height:.78;letter-spacing:-.08em;color:var(--yellow);font-weight:600}.score-card>div span{color:#8f8f8f;font-size:1.1rem}.emotion-direction{display:inline-flex!important;align-items:center!important;gap:9px!important;background:#222;border-radius:99px;padding:10px 13px;margin-top:30px!important}.emotion-direction i{width:9px;height:9px;border-radius:50%;background:var(--yellow)}.emotion-direction span{font-size:.8rem!important;color:#fff!important}.score-meta{display:grid!important;grid-template-columns:1fr 1fr;gap:16px!important;margin-top:30px!important}.score-meta>span{border-top:1px solid #353535;padding-top:13px}.score-meta small{font-size:.62rem;color:#888;display:block;margin-bottom:6px}.score-meta b{font-size:1.4rem}.profile-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px}.profile-card h3{font-size:1.25rem;margin-bottom:22px}.bar-row{display:grid;grid-template-columns:1fr auto;gap:11px;margin:15px 0}.bar-row span,.bar-row b{font-size:.84rem}.bar-row b{font-weight:700}.bar-track{grid-column:1/-1;height:7px;border-radius:99px;background:#e7e6e0;overflow:hidden;margin-top:-4px}.bar-track i{display:block;height:100%;border-radius:99px;background:var(--black)}.bar-track i.gap{background:var(--yellow);position:relative;top:-7px;margin-left:var(--current)}.direction-card{margin-top:20px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}.direction-card h3{font-size:2rem;margin:0}.direction-score{text-align:right}.direction-score span{display:block;font-size:.7rem;color:#777}.direction-score strong{font-size:2.5rem;color:var(--black)}.direction-score small{color:#888}.direction-card>p{grid-column:1/-1;color:#666;line-height:1.5;border-top:1px solid var(--line);padding-top:17px;margin:0}.focus-section{margin-top:20px;padding:30px}.focus-section h2{font-size:clamp(2rem,4vw,3.8rem)}.focus-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}.focus-option{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:19px;text-align:left}.focus-option span{display:block;font-size:.74rem;color:#777;margin-bottom:7px}.focus-option b{font-size:1.05rem}.focus-option em{display:block;font-style:normal;color:#777;font-size:.78rem;margin-top:8px}.focus-option.selected{background:var(--black);color:#fff;border-color:var(--black);box-shadow:inset 0 -5px var(--yellow)}.focus-option.selected span,.focus-option.selected em{color:#aaa}.step-input{display:block;font-size:.78rem;color:#666;font-weight:600}.step-input input{display:block;width:100%;border:1px solid var(--line);border-radius:12px;padding:16px;margin-top:9px;font-size:.95rem;color:var(--ink)}.focus-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:20px}.focus-footer>span{font-size:.82rem;color:#666}.focus-confirm{background:var(--yellow);border-radius:14px;padding:18px;margin-top:20px;line-height:1.45}.medical-note{font-size:.72rem;line-height:1.55;color:#777;max-width:920px;margin:26px auto 0;text-align:center}
.emotion-context{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff7c6;border:1px solid #ead475;border-radius:13px;padding:13px 15px;margin:-4px 0 20px;max-width:820px}.emotion-context>span{font-size:.73rem;color:#70682f;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.emotion-context>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.emotion-context b{background:var(--black);color:#fff;border-radius:99px;padding:7px 10px;font-size:.78rem;font-weight:600}
.protocol-section{margin-top:20px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(24px,4vw,42px)}.protocol-section>div:first-child h2{font-size:clamp(2.3rem,5vw,4.5rem)}.protocol-group{margin-top:32px}.protocol-group.secondary{padding-top:30px;border-top:1px solid var(--line)}.protocol-group-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:14px}.protocol-group-head h3{font-size:1.35rem;margin:0}.protocol-group-head span{font-size:.76rem;color:#777}.protocol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.protocol-card{position:relative;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:17px;padding:21px;text-align:left;display:flex;flex-direction:column;min-height:270px;transition:transform .15s,border-color .15s,box-shadow .15s}.protocol-card:hover{transform:translateY(-2px);border-color:#999}.protocol-card.selected{background:var(--black);color:#fff;border-color:var(--black);box-shadow:inset 0 -6px var(--yellow)}.recommendation{align-self:flex-start;background:var(--yellow);color:var(--black);font-size:.62rem;letter-spacing:.1em;font-weight:800;border-radius:99px;padding:7px 9px;margin-bottom:16px}.protocol-values{font-size:.71rem;color:#777;letter-spacing:.03em}.protocol-card.selected .protocol-values,.protocol-card.selected p,.protocol-card.selected .protocol-bottom span{color:#aaa}.protocol-card h3{font-size:1.15rem;margin:10px 0 9px}.protocol-card p{font-size:.8rem;line-height:1.45;color:#666;margin-bottom:20px}.protocol-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:13px;display:flex;justify-content:space-between;gap:10px;align-items:end}.protocol-card.selected .protocol-bottom{border-color:#383838}.protocol-bottom span{font-size:.7rem;color:#777}.protocol-bottom strong{font-size:1.05rem}.protocol-select{margin-top:13px;font-size:.76rem;font-weight:700;color:var(--black)}.protocol-card.selected .protocol-select{color:var(--yellow)}
.bundle-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px}.bundle-card{border:2px solid var(--black);border-radius:18px;background:#fff;color:var(--ink);padding:23px;text-align:left;display:grid;grid-template-columns:1fr auto;gap:6px 16px}.bundle-card>span{grid-column:1/-1;color:#777;font-size:.65rem;letter-spacing:.12em;font-weight:800}.bundle-card strong{font-size:1.1rem}.bundle-card small{font-size:.76rem;color:#777}.bundle-card b{grid-column:2;grid-row:2/4;font-size:1.55rem;align-self:center}.bundle-card.selected{background:var(--yellow);border-color:var(--yellow)}.bundle-card.all{border-color:#aaa}.selection-summary{background:var(--black);color:#fff;border-radius:18px;padding:19px 21px;margin-top:15px;display:flex;align-items:center;justify-content:space-between;gap:18px}.selection-summary>div span{display:block;color:#aaa;font-size:.75rem;margin-bottom:5px}.selection-summary>div strong{font-size:1.35rem;color:var(--yellow)}.prototype-note{background:#fff7c6;border:1px solid #ead475;border-radius:13px;padding:15px;margin-top:14px;line-height:1.45}.recheck-line{font-size:.84rem;color:#666;text-align:center;margin:22px 0}.coach-card{background:var(--paper);border-radius:18px;padding:25px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.coach-card h3{font-size:1.4rem;margin-bottom:9px}.coach-card p{font-size:.88rem;line-height:1.5;color:#666;margin:0;max-width:720px}.coach-action{display:flex;align-items:center;gap:15px}.coach-action>strong{font-size:1.45rem;white-space:nowrap}
@media(max-width:820px){.lead{display:none}.check-view.active{grid-template-columns:1fr}.rail{display:none}.mobile-domain{display:block;height:5px;background:#ddd;border-radius:99px;overflow:hidden;margin-bottom:28px}.mobile-domain:before{content:"";display:block;width:var(--mobile-progress,10%);height:100%;background:var(--yellow)}.question-stage{padding:38px 20px 50px}.question-stage h2,.emotion-view h2,.goals-view h2,.results-view h2{font-size:2.35rem}.question-stage h2,.emotion-question-wrap h2{font-size:clamp(1.8rem,6.2vw,2.1rem);line-height:1.08;letter-spacing:-.035em}.emotion-columns,.goal-grid,.result-hero{grid-template-columns:1fr}.home-options{grid-template-columns:1fr}.focus-options{grid-template-columns:1fr}.direction-card{grid-template-columns:1fr}.direction-score{text-align:left}.goal-summary{grid-template-columns:1fr 1fr}.goal-summary span:last-child{grid-column:1/-1}.dotfield{width:440px;height:440px;right:-230px;bottom:-100px}.intro-copy{width:90vw;padding:55px 0 70px}h1{font-size:3.35rem;line-height:.94}.content-wrap,.content-wrap.narrow{width:90vw;padding:42px 0 60px}.title-row{display:block}.phase{display:inline-block;margin-bottom:20px;order:-1}.title-row>div{margin-top:16px}.emotion-question-wrap .title-row{display:flex;flex-direction:column-reverse}.focus-footer{align-items:stretch;flex-direction:column}.focus-footer .btn{width:100%}}
@media(max-width:460px){.topbar{height:62px;padding:0 15px}.progress{top:62px}.brand{font-size:.72rem;gap:8px}.cellmark{width:27px;height:27px}.view{min-height:calc(100vh - 67px)}h1{font-size:2.85rem}.intro-meta{gap:12px;flex-direction:column}.question-stage h2,.emotion-view h2,.goals-view h2,.results-view h2{font-size:2rem}.question-stage h2,.emotion-question-wrap h2{font-size:1.75rem;line-height:1.08}.answer{padding:14px 15px}.score-card{padding:24px}.score-card>div strong{font-size:5.4rem}.score-meta{grid-template-columns:1fr!important}.direction-card h3{font-size:1.6rem}.goal-summary{grid-template-columns:1fr}.goal-summary span:last-child{grid-column:auto}.actions{gap:12px}.actions .btn{padding:14px 17px}.result-title .restart{margin-top:10px}}
@media(max-width:820px){.emotion-context{align-items:flex-start;flex-direction:column}.emotion-context>div{justify-content:flex-start}.protocol-grid,.bundle-grid{grid-template-columns:1fr}.protocol-card{min-height:230px}.protocol-group-head{align-items:flex-start;flex-direction:column;gap:5px}.selection-summary,.coach-card,.coach-action{align-items:stretch;grid-template-columns:1fr;flex-direction:column}.selection-summary{flex-direction:column}.selection-summary .btn,.coach-action .btn{width:100%}.coach-action>strong{font-size:1.7rem}.recheck-line{text-align:left}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.topbar,.progress,.restart,.focus-section .btn{display:none!important}.view{display:none!important}.results-view{display:block!important}.content-wrap{width:100%;padding:0}.result-hero{break-inside:avoid}.focus-section,.direction-card{break-inside:avoid}body{background:#fff}}
.domain-step.catalyst-step{border-top:1px solid #cfcec7;margin-top:9px;padding-top:17px;color:var(--black);font-weight:700}.domain-step.catalyst-step b{background:var(--yellow);border-color:var(--yellow);font-size:.55rem}
.catalyst-intro{background:var(--black);color:#fff;border-radius:18px;padding:22px 24px;margin:-2px 0 22px;display:grid;grid-template-columns:minmax(190px,.5fr) 1.5fr;gap:24px;align-items:start;border-left:7px solid var(--yellow)}.catalyst-intro strong{font-size:1.15rem;line-height:1.2;color:var(--yellow)}.catalyst-intro p{margin:0;color:#c9c9c9;line-height:1.55;font-size:.92rem}.catalyst-intro em{color:#fff;font-style:normal;font-weight:700}.selection-prompt{font-size:.92rem;color:#666;line-height:1.5;margin:0 0 18px}
.direction-card.catalyst-card{background:var(--black);color:#fff;border-color:var(--black);box-shadow:inset 0 6px 0 var(--yellow);padding:clamp(25px,4vw,38px)}.catalyst-card .kicker{color:var(--yellow)}.catalyst-card h3{color:#fff;font-size:clamp(2rem,4vw,3.5rem)}.catalyst-card .direction-score{background:#222;border-radius:14px;padding:14px 17px;min-width:180px}.catalyst-card .direction-score span{color:#969696;letter-spacing:.08em}.catalyst-card .direction-score strong{display:block;color:var(--yellow);font-size:1.05rem;margin-top:6px}.catalyst-card>p{color:#d0d0d0;border-color:#383838}.catalyst-card>p.catalyst-definition{color:#fff;font-size:1.02rem;border-top:1px solid #383838;padding-top:20px}.catalyst-card #directionExplanation{color:#ababab}
@media(max-width:820px){.catalyst-intro{grid-template-columns:1fr;gap:10px;padding:20px}.catalyst-card .direction-score{min-width:0}}
.selection-summary>div small{display:block;color:#fff;font-size:.76rem;font-weight:700;margin-top:6px}.selection-summary>div small[hidden]{display:none}
.home-type{display:inline-flex;margin-top:13px;border:1px solid #484848;border-radius:99px;padding:8px 11px;color:#d0d0d0;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.catalyst-card .direction-score span{max-width:190px}.catalyst-card .direction-score strong{line-height:1.2}
