/* Conceptual artwork only. The canonical hero frame and shared lifecycle own its container. */
.offer-configurator .canvas{padding:32px;gap:16px}
.config-board{display:flex;flex-direction:column;flex:1;min-height:0}
.config-step{display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:16px;position:relative;flex:1;min-width:0;align-items:center}
.config-step::before{content:"";position:absolute;left:9px;top:50%;bottom:-50%;width:1px;background:var(--color-border)}
.config-step:last-child::before{display:none}
.config-pin{z-index:1;display:grid;place-items:center;width:20px;height:24px;background:var(--surface-technical);color:var(--color-text-muted)}
.config-pin i{width:7px;height:7px;border:1px solid var(--color-border);background:var(--surface-technical)}
.config-content{min-width:0;padding:10px 0;border-bottom:1px solid var(--color-border);position:relative}
.config-step:last-child .config-content{border-bottom:0}
.config-step[data-state=current] .config-pin{color:var(--color-primary)}
.config-step[data-state=current] .config-pin i{border-color:var(--color-primary);background:var(--color-primary)}
.config-step[data-state=completed] .config-pin i{border-color:var(--color-text-muted);background:var(--color-text-muted)}
.config-step[data-state=current] .config-content::before{content:"";position:absolute;left:-9px;top:8px;bottom:8px;width:2px;background:var(--color-primary)}
.assembly-identity{display:flex;gap:12px;align-items:center}
.assembly-identity svg{width:32px;height:32px;flex-shrink:0;stroke:var(--color-text-muted);fill:none;stroke-width:1.2}
.assembly-identity strong{display:block;font-size:14px;letter-spacing:.03em;margin-top:3px}
.assembly-module{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;align-items:center}
.assembly-module>strong{font-size:11px;letter-spacing:.045em;color:var(--color-text-muted);font-weight:500}
.module-art{width:100%;max-width:210px;height:44px;justify-self:end;fill:none;stroke:var(--color-border);stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round}
.module-fill{fill:var(--technical-bg-panel)}
.config-step[data-state=completed] .module-art{stroke:var(--color-text-muted)}
.config-step[data-state=completed] .assembly-module>strong{color:var(--color-text-secondary)}
.config-step[data-state=current] .module-art{stroke:var(--color-primary)}
.config-step[data-state=current] .module-fill{fill:var(--color-primary-tint)}
.config-step[data-state=current] .assembly-module>strong{color:var(--color-text-primary)}
.config-step[data-state=current] .compute-art .module-piece{animation:assembly-compute var(--motion-text-swap) var(--motion-ease) both}
.config-step[data-state=current] .memory-art .module-piece{transform-origin:center;animation:assembly-memory var(--motion-text-swap) var(--motion-ease) both}
.config-step[data-state=current] .storage-art .module-piece{animation:assembly-storage var(--motion-text-swap) var(--motion-ease) both}
.config-step[data-state=current] .network-route{stroke-dasharray:100;animation:assembly-network var(--motion-text-swap) var(--motion-ease) both}
.config-step[data-state=current] .assembly-identity{animation:assembly-compute var(--motion-text-swap) var(--motion-ease) both}
.assembly-result strong{display:block;font-size:18px;line-height:1.35;margin-top:4px;letter-spacing:-.025em;color:var(--color-text-muted)}
.config-step[data-state=current] .assembly-result strong{color:var(--color-text-primary);animation:assembly-result var(--motion-text-swap) var(--motion-ease) both}
.config-step[data-state=current] .assembly-result .kicker{color:var(--color-text-secondary)}
.config-progress{display:flex;align-items:center;gap:12px;min-height:22px;font-size:10px;color:var(--color-text-muted)}
@keyframes assembly-compute{from{transform:translateX(-12px)}to{transform:translateX(0)}}
@keyframes assembly-memory{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
@keyframes assembly-storage{from{transform:translateY(-9px)}to{transform:translateY(0)}}
@keyframes assembly-network{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@keyframes assembly-result{from{transform:translateY(7px);opacity:.55}to{transform:translateY(0);opacity:1}}
@container(max-width:460px){.offer-configurator .canvas{padding:24px;gap:12px}.config-content{padding:7px 0}.module-art{height:36px}.assembly-module{grid-template-columns:76px minmax(0,1fr);gap:10px}.config-step{column-gap:12px}.assembly-result strong{font-size:16px}}
@container(max-width:380px){.offer-configurator .canvas{padding:20px;gap:8px}.config-content{padding:6px 0}.module-art{height:32px}.config-step{column-gap:10px}.assembly-module{grid-template-columns:68px minmax(0,1fr);gap:8px}.assembly-module>strong{font-size:10px}.assembly-result strong{font-size:14px}.assembly-identity strong{font-size:12px}.assembly-identity .kicker{font-size:9px}}
