.workspace-shell #cart-view{max-width:1120px;margin:auto;overflow:visible}
.workspace-shell #cart-view .catalog-overview{padding:24px;border:1px solid var(--line);border-radius:13px;background:var(--surface);overflow:visible}
.workspace-shell #cart-title{font-size:22px;letter-spacing:-.5px;margin:0 0 5px}
.workspace-shell #cart-count{display:inline-block;margin:0 16px 8px 0;font-weight:700}
.workspace-shell #cart-breakdown{display:inline-block;margin:0;font-size:13px}
.workspace-shell #cart-breakdown:empty{display:none}
.workspace-shell #cart-view .number-builder{margin:18px 0 24px;padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--card)}
.workspace-shell #cart-view .number-builder>summary{font-size:16px;font-weight:700;color:var(--ink)}
.workspace-shell #cart-view .number-builder>.note{margin:12px 0;color:var(--muted)}
.workspace-shell #cart-view .builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:18px;margin-top:16px}
.workspace-shell #cart-view #number-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;min-width:0}
.workspace-shell .number-part-group{min-width:0}
.workspace-shell .number-part-group h3{font-size:13px;margin:0 0 8px;color:var(--muted);padding-bottom:8px;border-bottom:1px solid var(--line)}
.workspace-shell #cart-view .number-count-row{display:grid;grid-template-columns:minmax(0,1fr) 32px 36px 32px;gap:3px;min-height:42px;padding:3px 0;align-items:center}
.workspace-shell #cart-view .number-count-row>span{font-size:12px;line-height:1.35;padding-right:5px;overflow-wrap:anywhere}
.workspace-shell #cart-view .number-count-row input{width:36px;min-height:32px;padding:0;text-align:center;border:0;background:transparent;color:var(--ink);font-variant-numeric:tabular-nums}
.workspace-shell #cart-view .number-count-row button{display:grid;place-items:center;width:32px;height:32px;min-height:32px;margin:0;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);font-size:18px}
.workspace-shell .builder-summary{align-self:start;position:sticky;top:94px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.workspace-shell #number-totals{margin:0;font-size:14px;line-height:1.8;color:var(--ink)}
.workspace-shell #number-build{margin:14px 0 0;background:var(--signal);color:#171918;border-color:transparent;min-height:44px;font-weight:700}
.workspace-shell #number-message{margin:10px 0 0;font-size:13px;overflow-wrap:anywhere}
.workspace-shell #number-message:empty{display:none}
.workspace-shell .cart-reorder-help{margin:10px 0;font-size:12px}
.workspace-shell #cart-reorder-status{margin:6px 0}
.workspace-shell #cart-reorder-status:empty{display:none}
.workspace-shell #cart-view #cart-items{display:grid;gap:9px;padding:0;margin:14px 0;list-style:none;max-height:none;overflow:visible}
.workspace-shell #cart-view .cart-compact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--card);min-width:0}
.workspace-shell #cart-view .cart-preview{border:0;padding:0;margin:0;min-width:0}
.workspace-shell #cart-view .cart-preview summary{display:flex;align-items:center;gap:10px;min-height:40px;padding:5px 0;color:var(--ink);font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.workspace-shell #cart-view .cart-position{flex:none!important;width:24px;color:var(--muted);font-variant-numeric:tabular-nums}
.workspace-shell #cart-view .cart-preview summary>span:not(.cart-position):not(.cart-arrow){flex:1}
.workspace-shell #cart-view .cart-preview-body{padding:16px 0 4px;background:transparent;color:var(--ink);overflow-wrap:anywhere}
.workspace-shell #cart-view .cart-preview-body p{font-family:Georgia,serif;font-size:17px;margin:0 0 12px}
.workspace-shell #cart-view .cart-preview-body .diagram{max-height:240px}
.workspace-shell #cart-view .cart-preview-body .diagram-link{display:block;max-width:380px;margin:12px auto}
.workspace-shell #cart-view .cart-actions{display:flex;flex-wrap:wrap;justify-content:end;align-items:center;gap:7px;max-width:240px;height:auto;min-height:40px}
.workspace-shell #cart-view .cart-actions button{width:auto;min-width:0;min-height:40px;height:auto;padding:6px 10px;margin:0;font-size:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink)}
.workspace-shell #cart-view .cart-actions .cart-reorder-handle{touch-action:none;cursor:grab;user-select:none;min-width:40px;font-size:20px;line-height:1}
.workspace-shell #cart-view .cart-moving{opacity:.55}
.workspace-shell #cart-view .cart-drop-before{border-top:3px solid var(--signal)}
.workspace-shell #cart-view .cart-drop-after{border-bottom:3px solid var(--signal)}
.workspace-shell #cart-view .is-reordering{cursor:grabbing}
.workspace-shell #cart-clear{width:auto;margin:8px 0 24px;min-height:42px;border-color:var(--line-strong);background:transparent}
.workspace-shell #cart-view .cart-save{position:sticky;bottom:16px;z-index:20;display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:6px 18px;align-items:end;padding:18px;background:var(--card);border:1px solid var(--line-strong);border-radius:13px;box-shadow:0 10px 40px #0002;margin-top:18px;overflow-wrap:anywhere}
.workspace-shell #cart-view .cart-name-field{grid-column:1;grid-row:1;min-width:0}
.workspace-shell #cart-view .cart-name-field label{margin:0 0 5px;font-size:12px;color:var(--muted)}
.workspace-shell #cart-view #saved-name{min-height:44px;margin:0;border-color:var(--line);border-radius:8px}
.workspace-shell #cart-view .cart-save-actions{grid-column:2;grid-row:1;display:flex;gap:8px;flex-wrap:wrap}
.workspace-shell #cart-view .cart-save-actions button{min-height:44px;min-width:0;width:auto;margin:0;padding:8px 14px;background:var(--signal);color:#171918;border:1px solid transparent;border-radius:8px;font-size:13px;font-weight:700;white-space:normal}
.workspace-shell #cart-view .cart-save-actions #saved-start{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}
.workspace-shell #cart-view .cart-save>p,.workspace-shell #cart-view #saved-login{grid-column:1/-1;margin:3px 0 0;font-size:12px}
.workspace-shell #cart-view .cart-save>p:empty{display:none}
.workspace-shell #cart-view #saved-login input{max-width:350px}
.workspace-shell #cart-view .cart-warning{color:var(--ink);background:var(--signal-soft);border-radius:7px;padding:8px 12px}
@media(max-width:1050px){.workspace-shell #cart-view .cart-save{bottom:calc(74px + env(safe-area-inset-bottom))}}
@media(max-width:760px){.workspace-shell #cart-view .catalog-overview{padding:16px}.workspace-shell #cart-view .builder-layout{grid-template-columns:minmax(0,1fr);gap:16px}.workspace-shell .builder-summary{position:static}.workspace-shell #cart-view .cart-save{grid-template-columns:minmax(0,1fr);padding:12px;gap:8px}.workspace-shell #cart-view .cart-save-actions{grid-column:1;grid-row:2;display:grid;grid-template-columns:1fr 1fr}.workspace-shell #cart-view .cart-save-actions button{padding:8px;font-size:12px}}
@media(max-width:480px){.workspace-shell #cart-view .catalog-overview{padding:12px}.workspace-shell #cart-title{font-size:20px}.workspace-shell #cart-view .number-builder{padding:12px}.workspace-shell #cart-view .cart-compact{grid-template-columns:minmax(0,1fr);gap:5px;padding:10px 12px}.workspace-shell #cart-view .cart-actions{justify-content:start;max-width:none}.workspace-shell #cart-view .cart-actions button{min-height:44px}.workspace-shell #cart-view .cart-preview summary{font-size:13px}.workspace-shell #cart-view .cart-save{bottom:calc(70px + env(safe-area-inset-bottom))}}
@media(max-height:700px){.workspace-shell #cart-view .cart-save{position:static}}

@media(max-width:1050px){.workspace-shell #cart-view .builder-layout{grid-template-columns:minmax(0,1fr)}.workspace-shell .builder-summary{position:static;display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px}.workspace-shell #number-build{width:auto;margin:0 0 0 auto}.workspace-shell #number-message:not(:empty){flex-basis:100%}}
@media(max-width:600px){.workspace-shell #cart-view #number-counts{grid-template-columns:minmax(0,1fr)}.workspace-shell #cart-view .number-count-row{grid-template-columns:minmax(0,1fr) 44px 44px 44px;min-height:48px}.workspace-shell #cart-view .number-count-row button{width:44px;height:44px;min-height:44px}.workspace-shell #cart-view .number-count-row input{width:44px;min-height:44px}.workspace-shell #cart-view .number-count-row>span{font-size:13px}}
