.studio { padding: clamp(2rem,7vw,7rem) var(--gutter); }
.studio h1 { font-size: clamp(3.5rem,8vw,8rem); }
.studio-grid { display:grid; grid-template-columns:minmax(0,1.16fr) minmax(16rem,1fr); gap:clamp(1rem,4vw,4rem); margin-top:2rem; }
.studio-display { align-self:start; position:sticky; top:6rem; }
.rig { position:relative; isolation:isolate; background:#130e0c; border:1px solid #e7ac8355; border-radius:1rem; overflow:hidden; }
.rig-controls { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:.8rem; }
.rig-controls button { border:1px solid #e7ac8350; background:#1e1512; color:var(--ink); border-radius:2rem; padding:.55rem .8rem; cursor:pointer; }
.rig-controls button[aria-pressed=true] { background:#563124; border-color:var(--accent); }
.rig-controls button:disabled { opacity:.5; cursor:default; }
.rig[data-case=case-itx] :is(.board,.chip,.memory,.cooler,.graphics,.storage,.power) { scale:.8; translate:4% 4%; }
.secondary-services {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:2rem var(--gutter); gap:1rem; }
.secondary-services .chapter {min-height:0; padding:1.4rem; border:1px solid #e7ac8340; border-radius:1rem; background:#17100d; align-items:start;}
.secondary-services h2 {font-size:clamp(2.35rem,4.2vw,5rem);}
@media(max-width:900px){.secondary-services{grid-template-columns:1fr;}}
.rig-caption { color:var(--muted); line-height:1.45; }
.studio-config [hidden] { display:none; }
.studio-config h3 { font:400 clamp(2rem,4vw,3.2rem)/1 var(--display); margin:.25rem 0; }
.studio-config #build-modes { grid-template-columns:repeat(2,minmax(0,1fr)); }
.studio-config #part-selectors select { margin:.5rem 0; }
.studio-config button:not(:disabled) { cursor:pointer; }
.studio-config button:disabled { opacity:.55; }
.installed-parts { list-style:none; padding:0; margin:1.1rem 0; }
.installed-parts li { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:.8rem; border-bottom:1px solid #e7ac8330; }
.installed-parts li button { border:0; text-align:left; background:transparent; padding:.6rem 0; font-size:.87rem; }
.installed-parts li button[aria-current] { color:var(--accent); }
.installed-parts li a { color:var(--accent); font-size:.76rem; }
.studio-config h2 { font-size:clamp(2.5rem,5vw,4rem); }
.studio-actions,.part-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.6rem; align-items:end; margin:.8rem 0; }
.studio-config label { display:grid; gap:.3rem; min-width:0; color:var(--muted); }
.studio-config select,.studio-config button,.workflow-demo select,.workflow-demo button { width:100%; color:var(--ink); background:#201614; border:1px solid #e7ac8360; border-radius:.45rem; padding:.65rem; font:inherit; }
.part-row a { font-size:.8rem; color:var(--accent); padding:.6rem 0; }
.workflow-demo { padding:clamp(3rem,8vw,8rem) var(--gutter); background:radial-gradient(ellipse at top right,#382017,#100c0a 70%); }
.workflow-demo h2 {font-size:clamp(3rem,7vw,7rem);}
.workflow-controls {display:flex; gap:.8rem; align-items:end; flex-wrap:wrap;}
.workflow-controls label {display:grid; gap:.4rem;}
.workflow-controls button {width:auto; cursor:pointer;}
.workflow-steps {display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.8rem; padding:0; list-style:none; }
.workflow-steps li {border:1px solid #e7ac8350; padding:1rem; border-radius:.65rem; min-height:9rem; background:#1c1310; }
.workflow-steps li[data-state=done] {border-color:var(--accent);}
.workflow-steps p {margin:.55rem 0 0; color:var(--muted); font-size:.9rem; line-height:1.5;}
@media(max-width:780px){.studio-grid{grid-template-columns:1fr}.studio-display{position:static}.workflow-steps{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:400px){.workflow-steps{grid-template-columns:1fr;}.workflow-steps li{min-height:0;}}


#rig-canvas { display:block; width:100%; aspect-ratio:1; cursor:grab; touch-action:pan-y; }
#rig-canvas:active { cursor:grabbing; }
#rig-canvas:focus-visible { outline-offset:-4px; }
#rig-canvas { position:relative; height:auto; }
