.stack-page{padding-block:var(--space-8) var(--space-9)}.stack-intro{max-width:54rem;padding-block:var(--space-5) var(--space-8)}.stack-intro h1{margin-block:var(--space-5) var(--space-6);letter-spacing:-.045em;font-size:clamp(3.25rem,6.8vw,6.75rem);line-height:1.02}.stack-intro h1 em{color:var(--accent)}.stack-intro>p:last-child{max-width:36rem;font-size:var(--text-lead);color:var(--muted)}.stack-recommendations,.stack-install{gap:var(--space-8);padding-block:var(--space-8);border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(0,2fr);display:grid}.stack-section-heading h2{margin-block:var(--space-4);font-size:var(--text-section);letter-spacing:-.035em;line-height:1.12}.stack-section-heading>p:last-child{max-width:29rem;color:var(--muted);font-size:var(--text-small)}.stack-picks,.stack-feedback ul,.stack-install-notes ul,.stack-unavailable ul{margin:0;padding:0;list-style:none}.stack-picks li{border-bottom:1px solid var(--rule)}.stack-pick{gap:var(--space-5);width:100%;padding:var(--space-5) 0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.stack-pick:hover strong{color:var(--accent)}.stack-pick strong{font-family:var(--font-editorial);font-size:var(--text-subhead);font-weight:400;line-height:1.25;display:block}.stack-pick strong+span{margin-top:var(--space-2);color:var(--muted);font-size:var(--text-small);display:block}.stack-pick-number{padding-top:var(--space-1);color:var(--muted);font-family:var(--font-code);font-size:var(--text-caption)}.stack-workbench{padding-block:var(--space-8);border-top:1px solid var(--rule)}.stack-slots{gap:var(--space-6);margin-top:var(--space-7);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.stack-slot,.stack-agent-fieldset{border:0;min-width:0;margin:0;padding:0}.stack-slot legend{width:100%;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--rule);font-weight:650;font-size:var(--text-small)}.stack-slot legend>span:first-child{font-family:var(--font-code);color:var(--accent)}.stack-slot-optional{padding-top:var(--space-1);color:var(--muted);font-size:var(--text-caption);font-weight:400;display:block}.stack-slot>p,.stack-selected-detail,.stack-install-state,.stack-install-notes,.stack-unavailable,.stack-share>p,.stack-command>p{color:var(--muted);font-size:var(--text-small)}.stack-select-label{margin-top:var(--space-5);margin-bottom:var(--space-2);font-size:var(--text-caption);font-weight:650;display:block}.stack-slot select{width:100%;min-height:48px;padding:var(--space-3);color:var(--ink);background:var(--canvas);border:1px solid var(--muted);border-radius:var(--radius-subtle);font:inherit;font-size:var(--text-small);text-overflow:ellipsis}.stack-selected-detail{margin-top:var(--space-4)}.stack-selected-detail a,.stack-install-notes a,.stack-unavailable a{padding-block:var(--space-2);color:var(--ink);text-underline-offset:.2em;text-decoration:underline;display:inline-block}.stack-selection-actions{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-6);color:var(--muted);font-size:var(--text-small);display:flex}.stack-reset{min-height:44px;padding:var(--space-2);color:var(--ink);text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;text-decoration:underline}.stack-feedback{margin-top:var(--space-4);padding-block:var(--space-4);border-block:1px solid var(--rule);color:var(--muted);font-size:var(--text-small)}.stack-feedback li+li{margin-top:var(--space-2)}.stack-feedback-label{color:var(--ink);font-weight:650}.stack-agent-fieldset legend{margin-bottom:var(--space-3);font-size:var(--text-small);font-weight:650}.stack-agent-options{gap:var(--space-3);flex-wrap:wrap;display:flex}.stack-agent-options label{align-items:center;gap:var(--space-2);min-height:44px;padding-right:var(--space-4);color:var(--ink);cursor:pointer;font-size:var(--text-small);display:flex}.stack-agent-options input{width:18px;height:18px;accent-color:var(--accent)}.stack-install-state,.stack-unavailable{margin-top:var(--space-5);padding-block:var(--space-5);border-top:1px solid var(--rule)}.stack-command{margin-top:var(--space-5)}.stack-command pre{margin:0 0 var(--space-4);padding:var(--space-5);background:var(--surface);color:var(--ink);border-radius:var(--radius-subtle);font-family:var(--font-code);font-size:var(--text-small);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.stack-command>p{margin-top:var(--space-3)}.stack-button{min-height:44px;padding:var(--space-3) var(--space-5);color:var(--on-accent);background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-subtle);font-size:var(--text-small);cursor:pointer;font-weight:650}.stack-button:hover{background:var(--accent-hover)}.stack-page button:disabled,.stack-page fieldset:disabled select{cursor:not-allowed;opacity:.6}.stack-copy-control{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.stack-copy-status{font-size:var(--text-small);color:var(--muted)}.stack-install-notes,.stack-share{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--rule)}.stack-install-notes h3,.stack-unavailable h3,.stack-share h3{margin-bottom:var(--space-3);color:var(--ink);font-size:var(--text-body);font-weight:650}.stack-install-notes strong,.stack-unavailable strong{color:var(--ink);font-weight:600}.stack-install-notes li+li,.stack-unavailable li+li,.stack-share .stack-copy-control{margin-top:var(--space-4)}.stack-loading,.stack-empty{padding-block:var(--space-7);border-top:1px solid var(--rule)}.stack-loading[role=status]{min-height:100svh}.stack-empty h2{font-size:var(--text-section);line-height:1.15}.stack-empty p{max-width:38rem;margin-block:var(--space-5);color:var(--muted)}@media (max-width:900px){.stack-recommendations,.stack-install{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}}@media (max-width:650px){.stack-page{padding-block:var(--space-6) var(--space-7)}.stack-intro,.stack-recommendations,.stack-workbench,.stack-install{padding-block:var(--space-6)}.stack-slots{gap:var(--space-7);grid-template-columns:minmax(0,1fr)}.stack-pick{gap:var(--space-3)}}
