/* V3 interaction states, contextual navigation and task-focused presentation. */
:root{--danger:#ff8e9d;--danger-surface:#3d1230;--danger-border:#f47791;--success:#7be4b7;--success-surface:#103c38;--success-border:#6dd3a9;--motion-fast:180ms;--motion-normal:240ms}
html[data-theme=light]{--danger:#a92443;--danger-surface:#ffeaf0;--danger-border:#c33758;--success:#176546;--success-surface:#e0f6eb;--success-border:#338762}
.public-page .eyebrow{font-size:.75rem}.public-page .site-header nav,.public-page label,.public-page .text-link{font-size:.875rem}.public-page .section-copy{line-height:1.95}
.public-page :is(.content-card,.insight-tile,.phase-panel,.tone-panel)[data-tone]{--feedback:var(--accent);--feedback-bg:var(--panel);--feedback-border:var(--accent);--feedback-glow:#64e4ed18;transition:background-color var(--motion-normal),border-color var(--motion-normal),box-shadow var(--motion-normal),transform var(--motion-normal)}
.public-page [data-tone=danger]{--feedback:var(--danger)!important;--feedback-bg:var(--danger-surface)!important;--feedback-border:var(--danger-border)!important;--feedback-glow:#ed4f6e25!important}
.public-page [data-tone=success]{--feedback:var(--success)!important;--feedback-bg:var(--success-surface)!important;--feedback-border:var(--success-border)!important;--feedback-glow:#4bca9f20!important}
.tone-icon{display:inline-flex;justify-content:center;align-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;font-size:18px;line-height:1;flex-shrink:0;color:var(--feedback,var(--accent));transition:color var(--motion-normal),border-color var(--motion-normal),transform var(--motion-normal);margin-inline-end:12px}
.content-card h3:has(.tone-icon){display:flex;align-items:baseline;gap:0}.content-card .tone-icon{align-self:flex-start}.public-page [data-section-tone=danger]>.section-copy>h2{border-inline-start:3px solid var(--danger);padding-inline-start:20px}
.public-page :is(.content-card,.insight-tile,.phase-panel,.tone-panel)[data-tone]:is(:focus-visible,.is-touched){background-color:var(--feedback-bg);border-color:var(--feedback-border);box-shadow:0 12px 36px var(--feedback-glow);outline-color:var(--feedback)}
.public-page [data-tone]:is(:focus-visible,.is-touched) .tone-icon{border-color:var(--feedback-border);transform:scale(1.08)}
.public-page .feature-tiles{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0;margin:28px 0}.public-page .feature-tiles li{display:flex;align-items:center;gap:12px;padding:22px;background:var(--card);border:1px solid var(--line);border-radius:16px;color:var(--text)}.feature-tiles .tone-icon{margin:0}.feature-tiles li:focus-visible{outline-offset:4px}
.public-page .button,.public-page button,.public-page .quiet,.public-page .back-link{transition:background-color var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast),transform var(--motion-fast),color var(--motion-fast)}
.public-page :is(button,.button,.quiet,.back-link):focus-visible{box-shadow:0 0 0 5px #77ebe721}.public-page :is(button,.button,.back-link):active:not(:disabled){transform:translateY(1px) scale(.98)}
.public-page .button span[aria-hidden],.public-page .text-link span[aria-hidden],.back-link span[aria-hidden]{display:inline-block;transition:transform var(--motion-fast)}
.public-page .entry{transition:transform var(--motion-normal),border-color var(--motion-normal),box-shadow var(--motion-normal)}.public-page .entry:focus-within{border-color:var(--accent);box-shadow:0 16px 38px #0002}.public-page .entry:focus-within h3 a{color:var(--accent)}
.public-page .entry-pager a{transition:background-color var(--motion-normal),border-color var(--motion-normal),transform var(--motion-normal)}
@media(hover:hover) and (pointer:fine){
 .public-page :is(.content-card,.insight-tile,.phase-panel,.tone-panel)[data-tone]:not([data-tone=neutral]):hover{background-color:var(--feedback-bg);border-color:var(--feedback-border);box-shadow:0 12px 36px var(--feedback-glow);transform:translateY(-3px)}
 .public-page [data-tone]:hover .tone-icon{border-color:var(--feedback-border);transform:scale(1.08)}
 .public-page .entry:hover{transform:translateY(-5px);border-color:var(--accent);box-shadow:0 20px 45px #0003}
 .public-page :is(.button,button):not(:disabled):hover{box-shadow:0 7px 24px #65dbdf23}
 .public-page .quiet:hover,.public-page .back-link:hover{background-color:var(--panel);color:var(--accent);border-color:var(--accent)}
 .public-page .button:hover span[aria-hidden],.public-page .text-link:hover span[aria-hidden]{transform:translateY(-2px)}
 .public-page .entry-pager a:hover{border-color:var(--accent);background:var(--band);transform:translateY(-3px)}
 .phase-tab:hover{border-color:var(--accent);background:var(--band)}
}
.context-bar{max-width:1440px;padding:24px 6vw 0;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:22px}.breadcrumbs{display:block;order:0;width:auto;overflow:visible;min-width:0;white-space:normal;font-size:.875rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;list-style:none;padding:0;margin:0}.breadcrumbs li{display:inline-flex;align-items:baseline;gap:12px;color:var(--muted);line-height:1.7}.breadcrumbs li+li:before{content:"/";color:var(--muted);opacity:.6}.breadcrumbs li[aria-current=page]{color:var(--text);max-width:44ch}.breadcrumbs a:hover{text-decoration:underline}.back-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;flex-shrink:0;border:1px solid var(--line);border-radius:100px;min-height:44px;padding:9px 17px;font-size:.875rem;color:var(--text)}.context-bar+.page-hero{padding-top:52px}.context-bar+.entry-detail{padding-top:40px}
.entry-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:auto;order:0;white-space:normal;overflow:visible;margin:65px 0 24px}.entry-pager:empty{display:none}.entry-pager a{display:grid;gap:10px;border:1px solid var(--line);border-radius:18px;padding:25px;align-content:start;min-height:150px}.entry-pager .eyebrow{margin:0}.entry-pager strong{font-size:18px;font-weight:500}.entry-pager [aria-hidden]{color:var(--accent);font-size:23px}.returned-entry{outline:2px solid var(--accent);outline-offset:5px}.public-page .collection-count{font-size:.875rem;color:var(--muted);margin:0 0 22px}.public-page .filters{display:flex}.public-page .filters button{align-self:end;justify-self:auto}.public-page .filters label{font-size:.875rem}.public-page .entry h3 a{scroll-margin-top:140px}
.phase-system{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr));margin:32px 0}.phase-panel{background:var(--card);padding:30px;border:1px solid var(--line);border-radius:22px;min-width:0}.phase-panel p{max-width:90ch}.phase-panel p:last-child{margin-bottom:0}.phase-panel h3{font-size:24px;color:var(--accent)}.phase-ready{display:block}.phase-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:0 0 24px}.public-page .phase-tab{padding:19px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--text);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:14px;text-align:start;font-size:.875rem;line-height:1.65;min-height:120px}.phase-number{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--panel);border-radius:10px;width:34px;height:34px;color:var(--accent);font-size:.875rem}.public-page .phase-tab[aria-selected=true]{background:var(--accent);color:var(--ink);border-color:var(--accent);box-shadow:0 10px 25px #77e7ec18}.phase-tab[aria-selected=true] .phase-number{background:var(--ink);color:var(--accent);border-color:transparent}.phase-ready>.phase-panel:not([hidden]){animation:panel-enter 240ms ease-out}.phase-ready>.phase-panel{padding:36px;min-height:170px}.phase-panel:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.public-page .faq{transition:border-color var(--motion-normal),background-color var(--motion-normal)}.public-page .faq[open]{border-color:var(--accent);background:var(--panel)}.public-page .faq summary{color:var(--text);min-height:64px;align-items:center;font-size:1rem}.public-page .faq summary:after{content:"+";color:var(--accent);transition:transform var(--motion-normal)}.public-page .faq[open] summary:after{content:"+";transform:rotate(45deg)}.public-page .faq .disclosure-body{padding:0 24px 20px}.public-page .faq .disclosure-body p{padding:0}.public-page .faq .disclosure-body p:last-child{margin:0}.is-animating{overflow:hidden}
.public-page .assessment-hero{min-height:0;padding-top:30px;padding-bottom:35px;grid-template-columns:minmax(0,1fr) 190px;gap:40px}.public-page .assessment-hero h1{font-size:clamp(30px,3vw,43px);margin:10px 0 18px}.public-page .assessment-hero .eyebrow{margin-bottom:0}.public-page .assessment-hero .hero-art img{height:165px!important;aspect-ratio:auto!important}.public-page .assessment-hero .hero-copy>p{font-size:1rem;margin-bottom:12px}.public-page .assessment-hero .actions{margin-top:18px}.public-page .assessment-shell{scroll-margin-top:105px}.public-page .wizard-step{scroll-margin-top:115px}.public-page .step-pills li{font-size:.875rem}.step-pills li.is-complete{border-color:var(--success);color:var(--success)}.step-pills li.is-complete:before{content:"✓";margin-inline-end:6px}.public-page .answer-tile{transition:background-color var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast),transform var(--motion-fast);font-size:.875rem!important}.public-page .answer-tile:has(:checked){background:#81e9ed20;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.public-page .answer-tile:has(:checked):after{content:"✓";position:absolute;inset-inline-end:8px;top:5px;color:var(--accent);font-size:14px}.public-page .answer-tile:active{transform:scale(.985)}.public-page .gate-card{transition:background-color var(--motion-normal),border-color var(--motion-normal),box-shadow var(--motion-normal)}.public-page .gate-card:has(:checked){background:#81e9ed14;box-shadow:0 0 0 1px var(--accent)}.public-page .gate-card:has(:focus-visible){outline:3px solid var(--accent);outline-offset:4px}
.public-page .form-feedback{border-color:var(--danger-border);background:var(--danger-surface)}.public-page .form-feedback:not([hidden]){animation:panel-enter 220ms ease-out}.public-page .is-loading:after{content:"";width:17px;height:17px;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:busy-spin 750ms linear infinite}.public-page form[aria-busy=true] .wizard-actions button:not(.is-loading){opacity:.6;pointer-events:none}.public-page #stepStatus{min-height:1.7em}.public-page .result-card{transition:background-color var(--motion-normal),border-color var(--motion-normal)}
.admin-page .block-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px;border:1px solid var(--line);padding:22px;border-radius:14px;margin-bottom:20px}.admin-page .block-controls label:nth-child(3){grid-column:1/-1}.admin-page .block-controls input,.admin-page .block-controls select{margin-top:7px}
.public-page .tone-panel{padding:28px;background:var(--card);border:1px solid var(--line);border-radius:20px}.tone-panel>.tone-icon{margin-bottom:20px}.tone-panel>p:last-child{margin-bottom:0}
@keyframes panel-enter{from{opacity:.35;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes busy-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.context-bar{align-items:flex-start;flex-direction:column;gap:16px}.context-bar .back-link{font-size:.875rem}.breadcrumbs{width:auto}.phase-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.public-page .assessment-hero{grid-template-columns:1fr 150px;gap:24px}.public-page .assessment-hero .hero-art img{height:150px!important}.context-bar+.page-hero{padding-top:35px}.public-page .site-header nav{font-size:1rem}}
@media(max-width:640px){.context-bar{padding-top:22px}.breadcrumbs ol{gap:5px 8px}.breadcrumbs li{gap:8px;font-size:.8125rem}.breadcrumbs li[aria-current=page]{max-width:34ch}.context-bar .back-link{min-height:44px;padding:9px 16px}.entry-pager{grid-template-columns:1fr;gap:12px;margin-top:40px}.entry-pager a{min-height:0;padding:22px}.public-page .feature-tiles{grid-template-columns:1fr}.public-page .feature-tiles li{padding:20px}.phase-system{grid-template-columns:1fr}.phase-tabs{display:flex;overflow-x:auto;gap:10px;padding:5px 3px 15px;scroll-snap-type:x mandatory}.public-page .phase-tab{flex:0 0 72%;min-height:110px;scroll-snap-align:start;font-size:.9375rem}.phase-ready>.phase-panel{padding:24px}.phase-panel h3{font-size:21px}.public-page .assessment-hero{display:block;padding-top:25px;padding-bottom:28px}.public-page .assessment-hero .hero-art{display:block;max-width:120px;margin:18px 0 0}.public-page .assessment-hero .hero-art img{height:80px!important}.public-page .assessment-hero h1{font-size:32px}.public-page .assessment-hero .hero-copy>p{font-size:1rem}.public-page .step-pills li{font-size:.8125rem}.public-page .answer-tile:has(:checked):after{top:50%;transform:translateY(-50%);inset-inline-end:16px}.public-page .answer-tile{padding-inline-end:40px}.admin-page .block-controls{grid-template-columns:1fr}.public-page .collection-heading h2{font-size:26px}.public-page .entry-detail{padding-top:32px}}
@media(prefers-reduced-motion:reduce){.public-page *,.public-page *:before,.public-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.public-page .entry:hover,.public-page [data-tone]:hover,.public-page .button:hover{transform:none!important}}
@media print{.context-bar,.entry-pager,.back-link,.phase-tabs{display:none!important}.phase-ready>[data-phase-panel][hidden]{display:block!important}.phase-panel{break-inside:avoid;border-color:#aaa}.phase-system{display:block}.phase-panel{margin:15px 0}}
@media(hover:hover) and (pointer:fine){.public-page .phase-tab:not([aria-selected=true]):hover{background:var(--band);border-color:var(--accent)}}
@media(min-width:901px) and (max-width:1100px){.site-header{height:80px;padding-inline:20px}.site-header .brand{margin-inline-end:auto}.nav-toggle{display:inline-flex;order:3}.site-header nav{display:none;position:fixed;inset:80px 0 auto;background:var(--bg);padding:22px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px #0002;max-height:calc(100dvh - 80px);overflow:auto}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:6px}.public-page .site-header nav{font-size:1rem}.site-header nav a{padding:12px 20px}.public-page main{padding-top:80px}}
