/* YS-012 composes existing .yds-* parts. Canvas and normal editing remain the app's. */
.yds-root .catalog-search-panel{display:flex;flex:1;flex-direction:column;gap:8px;min-height:0}
.yds-root .drive-stack-mode{display:grid;flex:none;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:3px;margin:0;min-width:0;padding:3px}
.yds-root .drive-stack-mode legend{float:left}
.yds-root .drive-stack-mode.yds-segmented>label.yds-btn{min-width:0;padding:4px;white-space:normal;line-height:1.3;text-align:center}
.drive-stack-library{display:grid;gap:var(--yds-space-4);min-width:0;overflow:auto}
.drive-stack-locale{display:grid;gap:var(--yds-space-1)}
.drive-stack-list,.drive-stack-tiers{display:grid;gap:var(--yds-space-1);min-width:0;margin:0;padding:0;border:0}
.drive-stack-preset{cursor:pointer;overflow-wrap:anywhere}
.yds-root .drive-stack-preset:has(input:checked){background:var(--yds-primary-soft);border-color:var(--yds-primary-border)}
.drive-stack-preset:has(input:focus-visible){outline:var(--yds-focus-width) solid var(--yds-focus);outline-offset:var(--yds-focus-offset)}
.drive-stack-preset:has(input:disabled){opacity:.55;cursor:wait}
.drive-stack-guide,.drive-stack-budget{min-width:0}
.drive-stack-guide-content,.drive-stack-budget-content,.drive-stack-intro,.drive-stack-section{display:grid;gap:var(--yds-space-3);min-width:0}
.drive-stack-guide-content,.drive-stack-budget-content{overflow-wrap:anywhere}
.drive-stack-guide-content{gap:var(--yds-space-5)}
.drive-stack-section>.yds-badge{justify-self:start}
.drive-stack-section>.yds-toolbar{gap:var(--yds-space-2)}
.drive-stack-artist{padding-top:var(--yds-space-4);border-top:1px solid var(--yds-border)}
.drive-stack-chain{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--yds-space-3);margin:0;padding-left:var(--yds-space-5)}
.drive-stack-chain>li{min-width:0;padding-left:var(--yds-space-1)}
.drive-stack-chain>li>strong,.drive-stack-chain>li>span:not(.drive-stack-product-art){display:block;margin-top:var(--yds-space-1)}
.drive-stack-product-art{display:grid;place-items:center;width:100%;height:100px;padding:var(--yds-space-2);border-radius:var(--yds-radius-control);background:var(--yds-surface)}
.drive-stack-product-art img{max-width:100%;max-height:84px;object-fit:contain}
.drive-stack-product-art>[data-drive-stack-art-fallback]{max-width:120px;text-align:center}
.drive-stack-tier{display:grid;gap:var(--yds-space-2);padding:var(--yds-space-4) 0;min-width:0;border-bottom:1px solid var(--yds-border)}
.drive-stack-tier>.yds-badge{justify-self:start}
.drive-stack-tier:last-child{border-bottom:0}
.drive-stack-tier>.yds-spread{align-items:flex-start;gap:var(--yds-space-2)}
.drive-stack-tier>.yds-spread>.yds-num{margin-left:auto}
.drive-stack-products,.drive-stack-product{display:grid;gap:var(--yds-space-2);min-width:0}
.drive-stack-product{padding-left:var(--yds-space-6);gap:var(--yds-space-1)}
.drive-stack-product>div{display:grid;gap:var(--yds-space-1)}
.drive-stack-addition{display:grid;flex:none;gap:var(--yds-space-2);padding:var(--yds-panel-pad);border-top:1px solid var(--yds-border);background:var(--yds-panel)}
.drive-stack-budget>#drive-stack-status{margin:0;padding:0 var(--yds-panel-pad) var(--yds-panel-pad)}
.drive-stack-budget>#drive-stack-status:empty{padding:0}
.drive-stack-error{color:var(--yds-danger)}
.drive-stack-exit{justify-self:start}

/* The existing stage is laid out only while the preset collection is open. */
body.yds-root.drive-stack-active{overflow:hidden}
body.yds-root.drive-stack-active .workspace.drive-stack-workspace{inset:60px 12px 12px;display:grid;grid-template-columns:216px minmax(0,1fr) 300px;grid-template-rows:minmax(280px,340px) minmax(0,1fr);gap:var(--yds-space-4);overflow:hidden;align-items:stretch}
body.yds-root.drive-stack-active .drive-stack-workspace>.catalog-panel{position:relative;inset:auto;grid-column:1;grid-row:1 / 3;width:auto;height:auto;max-height:none;min-height:0;box-shadow:var(--yds-shadow-sm)}
body.yds-root.drive-stack-active .drive-stack-workspace>.editor-panel{position:relative;inset:auto;grid-column:2;grid-row:1;min-width:0;min-height:280px;overflow:hidden;border:1px solid var(--yds-border);border-radius:var(--yds-radius-panel)}
body.yds-root.drive-stack-active .drive-stack-workspace>.drive-stack-guide{grid-column:2;grid-row:2;min-height:0;overflow:auto;scrollbar-width:thin}
body.yds-root.drive-stack-active .drive-stack-workspace>.drive-stack-budget{display:flex;flex-direction:column;grid-column:3;grid-row:1 / 3;min-height:0;overflow:hidden}
body.yds-root.drive-stack-active #drive-stack-budget-content{display:flex;flex:1;flex-direction:column;min-height:0}
body.yds-root.drive-stack-active #drive-stack-budget-content>.yds-card-header{flex:none}
body.yds-root.drive-stack-active .drive-stack-budget-content{flex:1;min-height:0;overflow:auto;scrollbar-width:thin}
body.yds-root.drive-stack-active .drive-stack-addition{position:sticky;bottom:0;z-index:1}
body.yds-root.drive-stack-active .drive-stack-workspace .canvas-wrap{--ys-safe-top:58px;--ys-safe-right:12px;--ys-safe-bottom:12px;--ys-safe-left:12px;position:absolute;inset:0 0 56px;height:auto;min-height:0}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-checks{top:8px;right:auto;left:8px;transform:none;max-width:calc(100% - 16px);flex-wrap:wrap;white-space:normal;border-radius:var(--yds-radius-panel)}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-dock{right:8px;bottom:6px;left:8px;max-width:calc(100% - 16px);width:max-content;margin:0 auto;overflow-x:auto;transform:none;scrollbar-width:thin}
body.yds-root.drive-stack-active .drive-stack-workspace .zoom-label input{display:none}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-dock .ys-view-settings-button{display:inline-flex}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-dock .ys-view-settings:not(:popover-open){display:none}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-dock .ys-view-settings:popover-open{position:fixed;inset:112px 324px auto auto;display:flex;flex-direction:column;align-items:stretch;gap:var(--yds-space-2);width:min(280px,calc(100vw - 24px));padding:var(--yds-space-3);border:1px solid var(--yds-border);border-radius:var(--yds-radius-panel);background:var(--yds-panel);box-shadow:var(--yds-shadow-md)}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-selection-chip{display:none}
body.yds-root.drive-stack-active .drive-stack-workspace #catalog-toggle{display:none}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-cat-body{min-height:0;overflow:auto}
body.yds-root.drive-stack-active .drive-stack-workspace .drive-stack-library{overflow:visible}
body.yds-root.drive-stack-active #fit-details{top:112px;left:50%;max-height:calc(100dvh - 140px)}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-empty-card{max-width:280px;padding:12px 16px;gap:8px}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-empty-card :is(.empty-icon,p){display:none}
body.yds-root.drive-stack-active .drive-stack-workspace .ys-empty-card h2{font-size:var(--yds-text-md)}

@media (min-width:960px) and (max-width:1100px){
  body.yds-root.drive-stack-active .workspace.drive-stack-workspace{grid-template-columns:188px minmax(0,1fr) 280px}
}
@media (min-width:721px) and (max-width:959px){
  body.yds-root.drive-stack-active .workspace.drive-stack-workspace{grid-template-columns:188px minmax(0,1fr);grid-template-rows:320px auto auto;overflow:auto;align-items:start}
  body.yds-root.drive-stack-active .drive-stack-workspace>.catalog-panel{grid-row:1 / 4;max-height:calc(100dvh - 72px);position:sticky;top:0}
  body.yds-root.drive-stack-active .drive-stack-workspace>.editor-panel{height:320px}
  body.yds-root.drive-stack-active .drive-stack-workspace>.drive-stack-guide{grid-column:2;grid-row:2;overflow:visible}
  body.yds-root.drive-stack-active .drive-stack-workspace>.drive-stack-budget{display:block;grid-column:2;grid-row:3;overflow:visible}
  body.yds-root.drive-stack-active #drive-stack-budget-content{display:block}
  body.yds-root.drive-stack-active .drive-stack-budget-content{overflow:visible}
  body.yds-root.drive-stack-active .drive-stack-addition{position:static}
  body.yds-root.drive-stack-active .drive-stack-workspace .ys-dock .ys-view-settings:popover-open{right:24px}
}

@media (max-width:720px){
  .yds-root .catalog-search-panel{flex:none}
  body.yds-root.drive-stack-active{height:auto;min-height:100dvh;overflow:auto}
  body.yds-root.drive-stack-active .ys-action-bar{align-self:stretch;justify-content:space-between;gap:2px;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
  body.yds-root.drive-stack-active .ys-action-bar>.yds-btn{gap:4px;padding-right:6px;padding-left:6px}
  body.yds-root.drive-stack-active .workspace.drive-stack-workspace{position:relative;inset:auto;display:flex;flex-direction:column;gap:var(--yds-space-3);height:auto;min-height:100dvh;margin:0;padding:132px 8px 16px;overflow:visible}
  body.yds-root.drive-stack-active .drive-stack-workspace>.catalog-panel{position:relative;inset:auto;order:0;display:flex;width:100%;height:auto;min-height:0;max-height:none;border:1px solid var(--yds-border);border-radius:var(--yds-radius-panel);box-shadow:var(--yds-shadow-sm)}
  body.yds-root.drive-stack-active .drive-stack-workspace>.editor-panel{position:relative;inset:auto;order:1;flex:none;width:100%;height:340px;min-height:340px}
  body.yds-root.drive-stack-active .drive-stack-workspace>.drive-stack-guide{order:2;width:100%;overflow:visible}
  body.yds-root.drive-stack-active .drive-stack-workspace>.drive-stack-budget{display:block;order:3;width:100%;overflow:visible}
  body.yds-root.drive-stack-active #drive-stack-budget-content{display:block}
  body.yds-root.drive-stack-active .drive-stack-budget-content{overflow:visible}
  body.yds-root.drive-stack-active .drive-stack-addition{position:static}
  body.yds-root.drive-stack-active .drive-stack-workspace .ys-cat-body{overflow:visible}
  body.yds-root.drive-stack-active .drive-stack-workspace .drive-stack-library{overflow:visible}
  body.yds-root.drive-stack-active .drive-stack-workspace .ys-dock{bottom:6px}
  body.yds-root.drive-stack-active .drive-stack-workspace .ys-checks{top:8px}
  body.yds-root.drive-stack-active .drive-stack-workspace .canvas-wrap{--ys-safe-top:72px;--ys-safe-left:12px;--ys-safe-right:12px;--ys-safe-bottom:12px;inset:0 0 56px}
  body.yds-root.drive-stack-active .drive-stack-workspace .ys-dock .ys-view-settings:popover-open{inset:auto 12px 16px auto}
  body.yds-root.drive-stack-active #fit-details{top:132px;left:50%;max-height:calc(100dvh - 156px)}
}
