/* Accessibility and responsive refinements over the original visual scaffold. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;450;500;550;600;650;700;750;800&display=swap');
:root{--ink:#14243b;--muted:#526177;--line:#dce3ed}
body{font-family:Inter,Arial,sans-serif;font-size:16px}h1,h2,h3,.brand{font-family:Inter,Arial,sans-serif}button,a{touch-action:manipulation}button:disabled{cursor:not-allowed}button .icon{flex-shrink:0}p,span,strong,label{overflow-wrap:anywhere}.skip-link{position:fixed;top:-80px;left:16px;z-index:30;background:#fff;padding:14px;border:2px solid var(--blue)}.skip-link:focus{top:12px}#main:focus,h1:focus{outline:none}.brand{padding:5px 0;min-height:44px;font-size:26px;gap:0;letter-spacing:-1px}.brand-period{color:var(--blue)}.prototype-tag{font-size:14px;color:var(--muted)}.hero-kicker{font-size:16px;color:var(--blue);font-weight:550}.hero h1{font-size:57px;letter-spacing:-2.6px;margin-top:18px}.hero-copy>p{font-size:18px;line-height:1.7;max-width:460px}.hero-meta{font-size:14px;gap:24px}.hero-meta .icon{width:17px;height:17px;color:#307663}.hardware-note{font-size:14px;bottom:-4px;left:40px}.hardware-label{font-family:Inter,Arial,sans-serif;font-size:14px;fill:var(--muted)}.hardware{background:radial-gradient(ellipse,#e5eefb 0%,#f3f7fc 58%,transparent 72%)}.intro-strip{grid-template-columns:1.15fr repeat(3,1fr)}.intro-strip p{font-size:14px}.assembly-flow{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:20px;padding:20px 16px 0;border-top:1px solid var(--line);font-size:14px}.assembly-flow .icon{color:var(--blue);width:18px;flex-shrink:0}.preview-step strong{font-size:14px}.preview-step .number{font-size:14px;color:var(--muted)}.landing-bottom{font-size:14px}.builder{grid-template-columns:225px minmax(0,1fr)}.sidebar h3{font-size:17px}.sidebar>p,.side-foot{font-size:14px}.step-link{font-size:14px;line-height:1.5}.step-link:disabled{opacity:.7;cursor:not-allowed}.step-link .badge{font-size:14px;flex-shrink:0}.rail-divider{border-top:1px solid var(--line);margin:14px 12px 8px}.side-foot>.icon{color:var(--blue);margin-bottom:14px}.breadcrumbs{font-size:14px}.crumb{padding:8px 0;min-height:44px;font-size:14px;color:var(--muted)}.workspace{padding:28px 34px 40px}.form-layout{grid-template-columns:minmax(0,1fr) 255px;gap:28px}.form-layout:has(.review-panel){grid-template-columns:minmax(0,780px);justify-content:center}.form-heading>p{font-size:16px;line-height:1.65}.form-heading h1{font-size:32px;letter-spacing:-1px;line-height:1.25}.choice{min-height:88px;padding:17px;gap:12px}.choice b{font-size:14px;max-width:none}.choice .radio{width:18px;height:18px}.choice .checkbox{border-radius:4px}.choice.selected .checkbox{background:var(--blue);position:relative}.choice.selected .checkbox:after{content:'✓';color:white;position:absolute;left:-3px;top:-10px;font-size:16px}.shape-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shape-grid .choice{flex-direction:column;align-items:flex-start;min-height:140px;gap:14px}.shape-grid .radio{position:absolute;right:12px;top:12px}.shape-icon{height:40px;width:60px;fill:#edf3ff;stroke:#6b87ab;stroke-width:1.5}.selected .shape-icon{stroke:var(--blue)}.form-surface{padding:24px;background:#fff;border:1px solid var(--line);border-radius:12px}.small-heading{font-size:18px;letter-spacing:-.3px;margin-bottom:22px}.field{font-size:14px;margin-bottom:22px}.field label{display:block;margin-bottom:8px}.field em{font-size:14px;margin-left:3px}.required{color:var(--blue)}input,textarea,select{font-size:16px;min-height:48px;padding:12px;line-height:1.5}input::placeholder,textarea::placeholder{color:#65768d}.unit{font-size:14px;top:14px;pointer-events:none}.helper,.field-error,.count,.field-meta{font-size:14px}.helper{display:block;color:var(--muted);margin-top:7px}.field-meta{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-top:7px;color:var(--muted)}.count{margin:0;white-space:nowrap}.field-error{margin-top:7px;line-height:1.5}.over-limit{color:var(--error);font-weight:600}.has-error input,.has-error textarea,.has-error select{border-color:var(--error);background:#fffafa}.group-error{margin-bottom:20px}.error-box{font-size:16px}.row-number{width:28px;height:28px;border-radius:7px;background:var(--soft);color:var(--blue);display:grid;place-items:center;font-size:14px}.card-head{font-size:16px;justify-content:flex-start;min-width:0}.card-head strong{flex:1}.remove{min-width:44px;min-height:44px;width:auto;display:flex;gap:6px;padding:10px;color:var(--muted);font-size:14px}.remove .icon{width:18px}.add-button{display:flex;align-items:center;justify-content:center;gap:8px;font-size:16px}.dimension{margin-bottom:0;font-size:14px;line-height:1.5}.dimension p{margin:6px 0}.hint{font-size:14px}.summary summary{min-height:56px;font-size:16px}.summary summary::-webkit-details-marker{display:none}.summary-row{padding:12px 0}.summary-row>div{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:14px}.summary-row strong{font-size:14px;font-weight:500;line-height:1.6;white-space:pre-line;display:block;margin-top:3px}.edit{display:inline-flex;align-items:center;gap:6px;min-height:44px;min-width:44px;font-size:14px;justify-content:center}.edit .icon{width:16px}.summary-illustration{height:125px}.review-panel{background:white;border:1px solid var(--line);border-radius:12px;padding:4px 24px}.review-section:last-child{border:0}.review-section h3{font-size:16px}.review-section h3>span{display:flex;align-items:center;gap:12px}.review-section h3 .icon{color:var(--blue)}.review-section p{font-size:16px;line-height:1.8}.contact p{font-size:16px;color:var(--muted)}.prototype-controls{font-size:14px;border-top:1px solid var(--line);padding-top:16px}.prototype-controls summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px}.prototype-controls summary:before{content:'+';font-size:20px}.prototype-controls[open] summary:before{content:'−'}.prototype-controls label{min-height:44px}.prototype-controls input{width:20px;height:20px;min-height:20px;accent-color:var(--blue)}.submission-disclaimer{font-size:14px;color:var(--muted);text-align:right;margin:16px 0}.success{max-width:750px}.success h1{font-size:36px;line-height:1.2}.confirmation-recap{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0}.confirmation-recap section{background:var(--bg);border-radius:8px;padding:16px;min-width:0}.confirmation-recap h2{font-size:14px;color:var(--muted);margin:0 0 8px;font-weight:500}.confirmation-recap p{font-size:16px;margin:0;white-space:pre-line}.mobile-progress{font-size:14px}.button.small{min-height:44px;font-size:14px}.empty p{font-size:16px}#toast{font-size:16px;max-width:calc(100vw - 40px);text-align:center}
@media(min-width:1650px){.hero{max-width:1420px;padding:90px 70px}.hero h1{font-size:64px}}
@media(max-width:1200px){.builder{grid-template-columns:195px minmax(0,1fr)}.workspace{padding:24px}.form-layout{grid-template-columns:minmax(0,1fr) 220px;gap:20px}.sidebar{padding:30px 14px}.form-heading h1{font-size:28px}.shape-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-content{padding:0 15px 16px}.hero h1{font-size:48px}}
@media(max-width:950px){.form-layout{display:flex;flex-direction:column}.form-main{width:100%}.summary{order:-1;width:100%;margin:0 0 8px}.summary-content{display:block}.summary-illustration{display:none}.intro-strip{grid-template-columns:repeat(3,1fr)}.intro-strip>p{grid-column:1/-1}.assembly-flow{gap:12px;flex-wrap:wrap}.hero h1{font-size:42px}.hardware-note{font-size:14px;left:28px}}
@media(max-width:650px){header{padding:0 20px;height:76px}.header-links .button{font-size:14px;min-height:44px}.header-links .prototype-tag{display:none}.brand{font-size:24px}.hero{padding:40px 22px 24px}.hero h1{font-size:43px;letter-spacing:-2px;line-height:1.12}.hero-copy>p{font-size:17px}.hero-meta{gap:16px;font-size:14px;flex-wrap:wrap}.hero-actions{gap:10px}.hero-actions .button{font-size:14px;padding:12px 16px}.hardware{margin-top:18px}.hardware-note{left:22px;bottom:0;font-size:12px}.intro-strip{grid-template-columns:1fr;gap:22px}.assembly-flow{flex-direction:column;align-items:flex-start;padding:22px 0 0;gap:14px}.assembly-flow>.icon{transform:rotate(90deg)}.preview-step strong{font-size:14px}.process{margin-top:40px}.section-top h2{font-size:26px;line-height:1.3}.section-top p{font-size:16px}.builder{display:block}.workspace{padding:16px 20px 36px}.breadcrumbs{display:none}.mobile-progress{margin:6px 0 22px}.form-heading h1{font-size:28px;line-height:1.25}.form-heading>p{font-size:16px}.choice-grid{grid-template-columns:1fr}.choice{min-height:76px;padding:17px;flex-wrap:nowrap}.choice b{font-size:16px;max-width:none}.shape-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shape-grid .choice{min-height:156px;padding:16px}.shape-grid .choice b{font-size:14px}.field-grid{grid-template-columns:1fr;gap:0}.field-meta{flex-wrap:wrap;gap:3px 12px}.field-meta .count{margin-left:auto}.form-surface{padding:20px}.card-head{padding:12px 14px;flex-wrap:wrap}.card-head strong{font-size:16px;min-width:110px}.remove{padding:10px 4px;gap:5px}.remove span{font-size:14px}.card-body{padding:20px 16px 0}.form-footer .button{font-size:16px;padding:12px 18px;min-height:48px}.form-footer{gap:10px}.dimension{padding:16px;flex-direction:column;align-items:flex-start}.dimension svg{width:160px;height:110px}.summary-content{display:block;padding:0 16px 16px}.summary summary{font-size:16px}.review-panel{padding:0 18px}.review-section p{font-size:16px}.confirmation-recap{grid-template-columns:1fr}.success{margin:24px 20px;padding:24px}.success h1{font-size:30px}.submission-disclaimer{text-align:left}.landing-bottom{font-size:14px}.add-button{font-size:16px}.prototype-controls{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
