:root { --font-helvetica-neue:'Helvetica Neue'; }
body { margin:0; line-height:1.6; }
a { text-underline-offset:4px; }
a:focus-visible,button:focus-visible,[role="radio"]:focus-visible { outline:3px solid currentColor; outline-offset:4px; }
input:focus-visible + span { outline:3px solid currentColor; outline-offset:4px; }
#skip { position:absolute; top:-100px; left:16px; z-index:100; }
#skip:focus { top:10px; }
header { border-bottom-width:1px; }
header nav { max-width:1280px; margin:auto; min-height:84px; padding:15px 32px; }
header img { width:54px; height:42px; }
#demo-banner { padding:13px 32px; display:flex; justify-content:center; flex-wrap:wrap; gap:8px 22px; }
main { max-width:1280px; margin:auto; padding:36px 32px 55px; }
#app-layout { display:grid; grid-template-columns:280px minmax(0,1fr); gap:38px; align-items:start; }
#app-sidebar { display:flex; flex-direction:column; gap:24px; }
#step-list { display:flex; flex-direction:column; gap:8px; }
#step-list li { display:flex; gap:16px; padding:12px 16px; }
#step-list li span { font-size:13px; padding-top:3px; }
#summary-card h3 { font-size:22px; line-height:1.3; }
[data-summary-line] { border-width:0; border-top-width:1px; padding-top:16px; }
#app-stage { padding:36px; display:flex; flex-direction:column; gap:30px; min-width:0; }
#stage-heading { outline:none; }
#stage-heading h1 { font-size:clamp(30px,3.6vw,44px); line-height:1.14; letter-spacing:-.025em; font-weight:600; }
#app-stage h3 { font-size:25px; line-height:1.25; }
#flow-actions { padding-top:8px; flex-wrap:wrap; }
[data-wrap] { flex-wrap:wrap; }
[data-panel] { padding-top:26px; }
#app-stage [role="tablist"] { gap:18px; flex-wrap:wrap; }
#app-stage [role="tab"] { white-space:normal; }
#workspace-actions { flex-wrap:wrap; }
#app-stage button { white-space:normal; }
#preview-questions { list-style:decimal; padding-left:22px; }
[role="dialog"] { max-height:90vh; overflow-y:auto; }
footer { max-width:980px; margin:0 auto; padding:0 32px 36px; text-align:center; }
footer p + p { margin-top:8px; }
@media(max-width:900px) {
 #app-layout { grid-template-columns:1fr; gap:24px; }
 #app-sidebar { gap:14px; }
 #summary-card { display:none; }
 #step-list { flex-direction:row; justify-content:space-between; gap:4px; }
 #step-list li { font-size:13px; padding:10px; gap:7px; }
 #step-list li span { display:none; }
 main { padding:24px 20px 40px; }
 #app-stage { padding:25px; }
 header nav { padding:14px 22px; }
 #demo-banner { justify-content:flex-start; padding:13px 22px; }
}
@media(max-width:480px) {
 #app-stage { padding:20px; gap:24px; }
 #app-stage h3 { font-size:22px; }
 #flow-actions > div { width:100%; justify-content:space-between; }
 #workspace-actions { padding:20px; }
 #app-stage [role="tablist"] { gap:8px; }
 #app-stage [role="tab"] { font-size:14px; }
 footer { padding-left:22px; padding-right:22px; }
}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; }
}
