/* MSH UX redesign phase one — First Use, Landscape, Horizon only */
.msh-stage-name{display:flex;align-items:center;gap:10px;color:var(--msh-accent);font-size:11px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}
.msh-stage-name::before{content:"";width:30px;height:1px;background:currentColor}

/* First Use — an open choice field, not a menu of cards */
.msh-first-door{width:min(100%,1180px);min-height:calc(100svh - 150px);padding:clamp(38px,7vh,82px) 0 70px}
.msh-first-door>header{max-width:840px;margin-bottom:clamp(34px,6vh,64px)}
.msh-first-door>header h1{max-width:820px;font-size:clamp(48px,7vw,82px);letter-spacing:-.035em}
.msh-first-door>header>p:last-child{max-width:710px;font-size:18px}
.msh-first-door-choices{position:relative;display:grid;grid-template-columns:repeat(12,1fr);gap:0;border-top:1px solid var(--msh-border);border-bottom:1px solid var(--msh-border)}
.msh-first-door-choices::after{content:"";position:absolute;inset:50% 4% auto;height:1px;background:var(--msh-border);pointer-events:none}
.msh-first-door-choices button{position:relative;z-index:1;grid-column:span 4;min-height:172px;padding:30px 26px;border:0;border-right:1px solid var(--msh-border);border-radius:0;background:transparent;box-shadow:none}
.msh-first-door-choices button:nth-child(3n){border-right:0}
.msh-first-door-choices button:hover,.msh-first-door-choices button:focus-visible{background:var(--msh-surface-alt);transform:none}
.msh-first-door-choices button::after{content:"→";position:absolute;right:24px;bottom:22px;color:var(--msh-accent);font-size:18px;opacity:0;transform:translateX(-6px);transition:opacity .16s ease,transform .16s ease}
.msh-first-door-choices button:hover::after,.msh-first-door-choices button:focus-visible::after{opacity:1;transform:none}
.msh-first-door-choices strong{max-width:250px;font-size:clamp(21px,2.2vw,28px)}
.msh-first-door-choices span{max-width:260px;font-size:13px}
.msh-first-door-secondary{border-top:0}
.msh-first-door-context,.msh-first-door-orientation{position:relative;max-width:1000px;padding:clamp(28px,5vw,58px);border:0;border-left:1px solid var(--msh-accent);border-radius:0;background:linear-gradient(90deg,var(--msh-surface-alt),transparent 82%);box-shadow:none}
.msh-first-door-context textarea{min-height:170px;border:0;border-bottom:1px solid var(--msh-border-strong);border-radius:0;background:transparent;font:400 clamp(22px,3vw,32px)/1.45 Georgia,serif}
.msh-first-door-progress{display:flex;gap:9px;margin-bottom:24px;color:var(--msh-text-muted);font-size:12px}
.msh-first-door-progress span{display:flex;align-items:center;gap:9px}
.msh-first-door-progress span:not(:last-child)::after{content:"";width:34px;height:1px;background:var(--msh-border-strong)}
.msh-first-door-progress .is-current{color:var(--msh-heading);font-weight:700}

/* Landscape — a field that gains resolution as answers are recorded */
.msh-v2-landing{max-width:1180px;min-height:calc(100svh - 150px)}
.msh-landscape-stage-header{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(38px,7vw,100px);align-items:center;padding:clamp(28px,6vh,72px) 0}
.msh-landscape-stage-header h1{max-width:720px;margin:13px 0 18px;font:400 clamp(48px,7vw,82px)/1.02 Georgia,serif;letter-spacing:-.035em}
.msh-landscape-stage-header>div>p:last-of-type{max-width:650px;color:var(--msh-text-muted);font-size:18px;line-height:1.7}
.msh-landscape-terrain{position:relative;min-height:500px;overflow:hidden;background:radial-gradient(ellipse at 50% 68%,color-mix(in srgb,var(--msh-accent) 14%,transparent),transparent 58%)}
.msh-landscape-terrain::before,.msh-landscape-terrain::after{content:"";position:absolute;left:3%;right:3%;height:38%;border-top:1px solid color-mix(in srgb,var(--msh-accent) 35%,transparent);border-radius:50%;transform:rotate(-7deg)}
.msh-landscape-terrain::before{top:42%}.msh-landscape-terrain::after{top:57%;transform:rotate(8deg);opacity:.55}
.msh-terrain-domain{position:absolute;z-index:1;width:112px;height:112px;padding:10px;border:1px solid var(--msh-border-strong);border-radius:50%;background:color-mix(in srgb,var(--msh-surface) 90%,transparent);color:var(--msh-heading);font:600 13px/1.2 system-ui,sans-serif;text-align:center;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.msh-terrain-domain:hover,.msh-terrain-domain:focus-visible{border-color:var(--msh-focus);background:var(--msh-selected);transform:scale(1.04)}
.msh-terrain-domain:nth-child(1){left:4%;top:58%}.msh-terrain-domain:nth-child(2){left:20%;top:24%}.msh-terrain-domain:nth-child(3){left:39%;top:50%}.msh-terrain-domain:nth-child(4){left:58%;top:17%}.msh-terrain-domain:nth-child(5){left:74%;top:48%}.msh-terrain-domain:nth-child(6){left:39%;top:4%}.msh-terrain-domain:nth-child(7){left:4%;top:13%}.msh-terrain-domain:nth-child(8){left:72%;top:3%}.msh-terrain-domain:nth-child(9){left:20%;top:66%}
.msh-landscape-entry-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:8px}
.msh-landscape-explainer{max-width:760px;margin:16px 0 52px}
.msh-landscape-explainer summary{width:fit-content;color:var(--msh-heading);cursor:pointer;font-weight:650}
.msh-landscape-explainer>div{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:20px;padding-top:20px;border-top:1px solid var(--msh-border)}
.msh-landscape-explainer p{margin:4px 0 0;color:var(--msh-text-muted);font-size:13px;line-height:1.55}
.msh-v2-explore-shell,.msh-v2-discovery{max-width:1200px}
.msh-v2-question-layout{grid-template-columns:minmax(0,1fr) minmax(300px,390px);gap:0;min-height:620px;border-top:1px solid var(--msh-border);border-bottom:1px solid var(--msh-border)}
.msh-v2-question-stage{display:flex;flex-direction:column;justify-content:center;padding:clamp(34px,6vw,74px);border:0;border-right:1px solid var(--msh-border);border-radius:0;background:transparent;box-shadow:none}
.msh-v2-map-glimpse{position:relative;justify-content:center;min-height:100%;padding:42px;border:0;border-radius:0;background:radial-gradient(circle at 50% 45%,var(--msh-selected),transparent 46%),var(--msh-surface-alt)}
.msh-v2-map-glimpse::before{content:"";width:180px;height:180px;margin:0 auto 22px;border:1px solid var(--msh-border-strong);border-radius:50%;box-shadow:0 0 0 38px color-mix(in srgb,var(--msh-accent) 5%,transparent),0 0 0 78px color-mix(in srgb,var(--msh-accent) 3%,transparent)}
.msh-v2-map-glimpse .msh-map-mark{position:absolute;left:calc(50% - 8px);top:calc(50% - 74px)}
.msh-v2-discovery-card{max-width:920px;padding:34px 0;border:0;border-top:1px solid var(--msh-accent);border-bottom:1px solid var(--msh-border);background:transparent}
.msh-self-map{border:0;border-top:1px solid var(--msh-border);border-bottom:1px solid var(--msh-border);border-radius:0;background:transparent}
.msh-self-map-grid{position:relative;display:grid;grid-template-columns:repeat(9,1fr);gap:0;min-height:210px;align-items:end}
.msh-self-map-area{min-height:0;padding:0 6px 20px;border:0;border-radius:0;background:transparent;text-align:center}
.msh-self-map-area .msh-map-mark{margin:0 auto 14px}.msh-self-map-area h3{margin:0;font-size:12px}.msh-self-map-area p,.msh-self-map-area .msh-resolution-line{display:none}
.msh-self-map-area:nth-child(3n+1){padding-bottom:64px}.msh-self-map-area:nth-child(3n+2){padding-bottom:108px}
.msh-self-map-grid::before{content:"";position:absolute;left:2%;right:2%;bottom:73px;height:1px;background:var(--msh-border-strong);transform:rotate(-3deg)}

/* Horizon — one prompt at a time, raw fragments remain visible */
.msh-vision-main{max-width:none}
.msh-horizon-stage{max-width:1220px;margin:0 auto;padding:clamp(34px,6vh,72px) 0 70px}
.msh-horizon-stage-header{max-width:860px;margin-bottom:42px}.msh-horizon-stage-header h1{margin:12px 0 16px;color:var(--msh-heading);font:400 clamp(48px,7vw,82px)/1.02 Georgia,serif;letter-spacing:-.035em}.msh-horizon-stage-header>p:last-child{max-width:710px;color:var(--msh-text-muted);font-size:18px;line-height:1.7}
.msh-horizon-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,390px);min-height:610px;border-top:1px solid var(--msh-border);border-bottom:1px solid var(--msh-border)}
.msh-horizon-prompt{display:flex;flex-direction:column;justify-content:center;padding:clamp(34px,6vw,76px);border-right:1px solid var(--msh-border)}
.msh-horizon-prompt label>span{display:block;color:var(--msh-accent);font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.msh-horizon-prompt label>strong{display:block;max-width:750px;margin:12px 0 26px;color:var(--msh-heading);font:400 clamp(32px,4.5vw,52px)/1.18 Georgia,serif}
.msh-horizon-prompt textarea{width:100%;min-height:142px;padding:18px 0;border:0;border-bottom:1px solid var(--msh-border-strong);border-radius:0;background:transparent;color:var(--msh-text);font:400 clamp(20px,2.4vw,28px)/1.5 Georgia,serif;resize:vertical}
.msh-horizon-prompt textarea:focus{outline:0;border-bottom-color:var(--msh-focus);box-shadow:0 2px 0 var(--msh-focus)}
.msh-horizon-prompt-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:28px}
.msh-horizon-map{display:flex;flex-direction:column;justify-content:space-between;padding:42px;background:linear-gradient(180deg,var(--msh-surface-alt),transparent)}
.msh-horizon-map-line{position:relative;height:190px;margin:24px 0}.msh-horizon-map-line::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,var(--msh-accent),var(--msh-border-strong),transparent)}.msh-horizon-map-line::after{content:"";position:absolute;right:0;top:calc(50% - 44px);width:88px;height:88px;border:1px solid color-mix(in srgb,var(--msh-accent) 60%,transparent);border-radius:50%;box-shadow:0 0 45px color-mix(in srgb,var(--msh-accent) 20%,transparent)}
.msh-horizon-now,.msh-horizon-there{position:absolute;top:calc(50% + 16px);color:var(--msh-text-muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.msh-horizon-now{left:0}.msh-horizon-there{right:0}.msh-horizon-fragments{display:flex;flex-direction:column;gap:10px}.msh-horizon-fragments p{margin:0;color:var(--msh-text-muted);font-size:12px}.msh-horizon-fragments ul{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}.msh-horizon-fragments li{max-width:100%;padding:7px 10px;border-left:2px solid var(--msh-accent);background:var(--msh-surface);color:var(--msh-text);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msh-horizon-progress{display:flex;gap:5px;margin-top:20px}.msh-horizon-progress i{display:block;flex:1;height:3px;border-radius:99px;background:var(--msh-border)}.msh-horizon-progress i.is-seen{background:var(--msh-accent)}
.msh-horizon-intro-choice{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.msh-horizon-current{margin:0 0 34px;padding:22px 0;border-top:1px solid var(--msh-border);border-bottom:1px solid var(--msh-border)}.msh-horizon-current blockquote{max-width:900px;margin:8px 0;color:var(--msh-heading);font:400 26px/1.45 Georgia,serif}
.msh-vision-confirm{max-width:1040px;margin:50px auto;padding:clamp(34px,6vw,70px);border-radius:0;background:linear-gradient(180deg,var(--msh-surface-alt),transparent);box-shadow:none}.msh-vision-confirm h1{font-size:clamp(44px,6vw,72px)}

@media(max-width:900px){.msh-first-door-choices button{grid-column:span 6}.msh-first-door-choices button:nth-child(3n){border-right:1px solid var(--msh-border)}.msh-first-door-choices button:nth-child(2n){border-right:0}.msh-first-door-choices::after{display:none}.msh-landscape-stage-header,.msh-horizon-workspace{grid-template-columns:1fr}.msh-landscape-terrain{min-height:430px}.msh-v2-question-layout{grid-template-columns:1fr}.msh-v2-question-stage{border-right:0;border-bottom:1px solid var(--msh-border)}.msh-v2-map-glimpse{min-height:330px}.msh-horizon-prompt{border-right:0;border-bottom:1px solid var(--msh-border)}.msh-self-map-grid{grid-template-columns:repeat(5,1fr)}}
@media(max-width:620px){.msh-first-door{padding-top:28px}.msh-first-door-choices{display:block}.msh-first-door-choices button{width:100%;min-height:124px;border-right:0;border-bottom:1px solid var(--msh-border)}.msh-first-door-choices button:last-child{border-bottom:0}.msh-first-door-progress span:not(.is-current){font-size:0}.msh-first-door-progress span:not(.is-current)::before{content:"Step";font-size:11px}.msh-landscape-stage-header{display:block}.msh-landscape-terrain{min-height:470px;margin:20px -12px 0}.msh-terrain-domain{width:92px;height:92px;font-size:11px}.msh-terrain-domain:nth-child(1){left:2%}.msh-terrain-domain:nth-child(2){left:26%;top:25%}.msh-terrain-domain:nth-child(3){left:52%;top:49%}.msh-terrain-domain:nth-child(4){left:70%;top:15%}.msh-terrain-domain:nth-child(5){left:72%;top:67%}.msh-terrain-domain:nth-child(6){left:42%;top:1%}.msh-terrain-domain:nth-child(7){left:2%;top:8%}.msh-terrain-domain:nth-child(8){left:72%;top:0}.msh-terrain-domain:nth-child(9){left:24%;top:70%}.msh-landscape-explainer>div{grid-template-columns:1fr}.msh-v2-question-stage,.msh-horizon-prompt{padding:34px 20px}.msh-v2-map-glimpse,.msh-horizon-map{padding:30px 22px}.msh-self-map-grid{grid-template-columns:repeat(3,1fr)}.msh-self-map-area:nth-child(n){padding-bottom:28px}.msh-self-map-grid::before{display:none}.msh-horizon-stage-header h1,.msh-landscape-stage-header h1{font-size:47px}.msh-horizon-prompt-actions{align-items:stretch;flex-direction:column}.msh-horizon-prompt-actions>*{width:100%}.msh-vision-confirm{margin:24px auto}}
@media(prefers-reduced-motion:reduce){.msh-first-door-choices button::after,.msh-terrain-domain{transition:none!important}}
