/* Quiet working surface: preserve the brand accent for actions and key results. */
.bundle-editor{--editor-radius:18px}.bundle-section-nav{position:sticky;top:8px;z-index:12;display:flex;gap:5px;padding:6px;margin:0 0 24px;background:#fffefaf2;backdrop-filter:blur(14px);border:1px solid #e5e3ec;border-radius:13px;box-shadow:0 4px 16px #22203506}.bundle-section-nav a{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;padding:11px 8px;border-radius:8px;color:#55515f;font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap}.bundle-section-nav a span{font-size:10px;color:#8e879e}.bundle-section-nav a:hover,.bundle-section-nav a:focus-visible{background:#f0edfc;color:var(--brand)}.bundle-edit-layout{grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.bundle-section{padding:25px;border-radius:var(--editor-radius);border:1px solid #e6e4eb;box-shadow:0 3px 12px #211e3303;margin-bottom:22px;scroll-margin-top:90px}.bundle-section-title{display:flex;align-items:flex-start;gap:13px;margin-bottom:24px}.bundle-section-title>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;background:#f1eefb;color:#766395;border:1px solid #e6e0f3;border-radius:10px;font-size:11px;font-weight:650}.bundle-section-title h2{font-size:17px;margin:0 0 7px;letter-spacing:-.45px}.bundle-section-title p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.bundle-section .form-grid{gap:18px}.bundle-section input,.bundle-section select,.bundle-section textarea{min-height:43px;border-radius:9px;background:#fdfdfe}.bundle-section textarea{min-height:94px}.bundle-section label{font-size:12px;color:#64606f}.bundle-item-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:0 0 18px}.bundle-item-actions button{font-size:11px}.bundle-item-list{display:grid;gap:14px}.bundle-item-card{border:1px solid #e7e5ec;border-radius:14px;background:#fff;overflow:hidden}.bundle-item-heading{display:flex;gap:15px;align-items:center;padding:18px 18px 12px}.bundle-item-heading>img,.bundle-item-placeholder{width:68px;height:72px;object-fit:contain;flex:0 0 68px;border-radius:10px;background:#f8f7fa;border:1px solid #efedf3;padding:5px}.bundle-item-placeholder{display:grid;place-items:center;font-size:27px;color:#b2a9c3}.bundle-item-heading>div{min-width:0}.bundle-item-heading strong{font-size:14px;line-height:1.5;display:block;overflow-wrap:anywhere}.bundle-item-meta{font-size:11px;color:#817c8d;margin:4px 0 8px;overflow-wrap:anywhere}.bundle-item-badges{display:flex;flex-wrap:wrap;gap:5px}.bundle-item-badges .badge{font-size:10px;padding:4px 7px}.bundle-item-fields{display:grid;grid-template-columns:minmax(0,1fr) 70px 100px;align-items:end;gap:15px;padding:8px 18px 18px}.bundle-item-fields .item-role{margin:0;max-width:none}.bundle-item-fields .item-role label{font-size:11px}.bundle-item-fields .item-role select{font-size:12px;min-height:40px;padding:9px 8px}.bundle-item-fields .lineqty{width:100%;min-height:40px;padding:9px}.bundle-item-fields>label{font-size:11px}.bundle-item-cost{text-align:right;padding-bottom:8px}.bundle-item-cost>span{display:block;color:#817c8d;font-size:10px;margin-bottom:10px}.bundle-item-cost strong{font-size:17px;font-variant-numeric:tabular-nums;white-space:nowrap}.bundle-item-footer{border-top:1px solid #efedf3;background:#fcfbfd;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 18px;font-size:10px;color:#857f91}.bundle-item-footer button{border:0;background:transparent;font-size:10px;padding:5px;color:#8b6b76}.bundle-item-footer button:hover{background:#f9e9eb;color:var(--red)}.bundle-footnote{font-size:11px;line-height:1.6;color:#888192;margin:14px 0 0}.bundle-items-empty{text-align:center;background:#faf9fc;border:1px dashed #d9d3e5;border-radius:14px;padding:36px 22px}.bundle-items-empty>span{font-size:30px;color:#a496bf}.bundle-items-empty h3{font-size:14px;margin:12px 0}.bundle-items-empty p{font-size:12px;color:var(--muted);line-height:1.7;margin:0}.bundle-price-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;background:#f7f5fc;border:1px solid #e9e3f6;border-radius:13px;padding:18px;margin-bottom:24px}.bundle-price-fields input{font-size:23px;font-weight:600;background:#fff!important;color:#3e3263}.bundle-cost-heading{font-size:12px;font-weight:650;color:#514b5e;margin-bottom:16px}.bundle-explanation{margin-top:24px;border-top:1px solid #eeeaf3;padding-top:16px;color:var(--muted);font-size:12px;line-height:1.8}.bundle-explanation summary{cursor:pointer;color:#756585;font-size:11px;font-weight:550}.bundle-explanation p{margin:12px 0 0}.bundle-save-bar{position:sticky;bottom:12px;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid #ddd7eb;border-radius:13px;background:#ffffffee;backdrop-filter:blur(15px);box-shadow:0 6px 24px #2920390d}.bundle-save-bar>span{font-size:11px;color:#81788e}.bundle-save-bar .danger{border:0;background:transparent;font-size:11px}.bundle-save-bar .primary{font-size:12px}.bundle-edit-layout>div.bundle-results{top:86px;max-height:calc(100vh - 100px);overflow:auto;scrollbar-width:thin}.bundle-edit-layout>div.bundle-results>.panel{max-height:none;overflow:visible}.bundle-result-panel{padding:21px;border-radius:18px;border-color:#ddd7ed;box-shadow:0 5px 20px #3c2d6508}.bundle-result-heading{display:flex;align-items:center;gap:8px;margin-bottom:24px}.bundle-result-heading h2{font-size:14px;margin:0;flex:1;letter-spacing:-.3px}.bundle-result-heading>span:last-child{font-size:10px;color:#8a819b}.bundle-live-dot{height:6px;width:6px;border-radius:50%;background:#9785c2;box-shadow:0 0 0 4px #f0ecf8}.bundle-outcome-price{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.bundle-outcome-price>span{font-size:11px;color:#7b7388}.bundle-outcome-price>strong{font-size:18px;font-variant-numeric:tabular-nums}.bundle-outcome-profit{border:1px solid #e5dff5;background:linear-gradient(130deg,#f3effb,#faf8ff);padding:20px 17px;border-radius:13px}.bundle-outcome-profit>span{font-size:11px;color:#77638d}.bundle-outcome-profit>strong{display:block;font-family:'Sora',sans-serif;font-size:35px;font-weight:600;letter-spacing:-1.4px;color:#433266;margin:11px 0 16px;font-variant-numeric:tabular-nums}.bundle-outcome-profit>div{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:10px;color:#776786}.bundle-margin-pill{border-radius:6px;background:#e6def5;padding:6px 8px;color:#58406e;font-weight:650}.bundle-outcome-profit.is-warning{background:#fff7ee;border-color:#eedbc7}.bundle-outcome-profit.is-warning>strong{color:#9b543e}.bundle-outcome-profit.is-warning .bundle-margin-pill{background:#f6e5d5;color:#92573e}.bundle-result-breakdown{padding:13px 0}.bundle-result-breakdown>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;font-size:12px;color:#706879}.bundle-result-breakdown strong{font-size:12px;color:#41384f;font-variant-numeric:tabular-nums;font-weight:550}.bundle-result-meta{padding:14px 0;border-top:1px solid #ede8f4;display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#8d829d}.bundle-result-meta strong{color:#6b5c7b}.bundle-result-caption{font-size:10px;line-height:1.7;color:#8b8097;margin:0 0 15px}.bundle-calculation-details{border-top:1px solid #e8e2f1;border-bottom:1px solid #e8e2f1;padding:13px 0}.bundle-calculation-details>summary,.bundle-stock-note>summary{cursor:pointer;font-size:11px;font-weight:550;color:#766785}.bundle-calculation-details #calculation{margin-top:18px}.bundle-result-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:17px}.bundle-result-actions>button{font-size:10px;padding:10px 8px}.bundle-result-actions>.primary{grid-column:1/-1;font-size:12px}.bundle-stock-note{padding:16px 19px;border-radius:12px;background:#fbfafc;border-color:#ebe7f0}.bundle-stock-note p{font-size:11px}.bundle-editor .economics-panel .toolbar{gap:14px}.bundle-editor .economics-panel h2{font-size:17px}.bundle-editor .economics-panel .toolbar>.actions{gap:8px}.bundle-editor .economics-row{background:#fdfcfe;border-color:#e9e4f0;border-radius:13px;padding:18px}.bundle-editor .economic-result{font-size:11px;border-top:1px solid #eee9f4;padding-top:12px}.bundle-editor .economics-bridge{border:1px solid #e9e3f4}.bundle-editor .economics-budget{background:#f7f4fc}.bundle-editor .economics-budget.warning{background:#fff3df}.bundle-editor .economics-panel>p.muted{font-size:12px;line-height:1.75}
@media(min-width:1450px){.bundle-edit-layout{grid-template-columns:minmax(0,1fr) 350px}.bundle-section{padding:30px}.bundle-result-panel{padding:26px}}
@media(max-width:1120px){.bundle-edit-layout{grid-template-columns:minmax(0,1fr) 290px;gap:18px}.bundle-section{padding:20px}.bundle-item-fields{gap:10px;grid-template-columns:minmax(0,1fr) 60px 90px}.bundle-item-actions>.economics-info{margin-left:auto}.bundle-save-bar>span{display:none}}
@media(max-width:1080px){.bundle-edit-layout{grid-template-columns:1fr}.bundle-edit-layout>div.bundle-results{position:static;max-height:none;overflow:visible;grid-row:1}.bundle-result-panel{padding:20px}.bundle-result-panel #bundleOutcome{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.bundle-outcome-profit{grid-column:2;grid-row:1/4}.bundle-result-caption{grid-column:1/-1}.bundle-result-heading{margin-bottom:16px}.bundle-result-actions{grid-template-columns:repeat(4,1fr)}.bundle-result-actions>.primary{grid-column:auto}.bundle-stock-note{margin-bottom:22px}.bundle-section-nav{top:5px}.bundle-section-nav a{font-size:11px}.bundle-save-bar>span{display:block}}
@media(max-width:600px){.bundle-section-nav{gap:0;overflow-x:auto;padding:4px}.bundle-section-nav a{flex:0 0 auto;padding:10px;font-size:10px;gap:5px}.bundle-section-nav a span{font-size:9px}.bundle-section{padding:18px;border-radius:14px}.bundle-section-title h2{font-size:16px}.bundle-item-heading{padding:14px 14px 10px}.bundle-item-heading>img,.bundle-item-placeholder{width:56px;height:62px;flex-basis:56px}.bundle-item-fields{grid-template-columns:minmax(0,1fr) 65px 85px;padding:8px 14px 14px;gap:10px}.bundle-item-cost strong{font-size:15px}.bundle-item-fields select{max-width:100%;font-size:11px!important}.bundle-item-footer{padding:7px 14px}.bundle-price-fields{padding:14px;gap:12px;grid-template-columns:1fr}.bundle-save-bar{bottom:7px;padding:11px;justify-content:flex-end}.bundle-save-bar>span{display:none}.bundle-save-bar .actions{justify-content:space-between;width:100%}.bundle-result-panel #bundleOutcome{display:block}.bundle-result-actions{grid-template-columns:1fr 1fr}.bundle-result-actions>.primary{grid-column:1/-1}.bundle-editor .economics-panel .toolbar h2{font-size:16px}.bundle-section-title>span{width:30px;height:30px;flex-basis:30px}.bundle-results .bundle-outcome-profit>strong{font-size:32px}}
@media(prefers-reduced-motion:no-preference){.bundle-section-nav a,.bundle-item-card{transition:background .15s,border-color .15s}.bundle-item-card:hover{border-color:#cfc5e4}}
@media print{.bundle-section-nav,.bundle-save-bar,.bundle-result-actions,.bundle-item-actions{display:none!important}.bundle-edit-layout{display:block}.bundle-edit-layout>div.bundle-results{position:static;max-height:none;overflow:visible}.bundle-item-card{break-inside:avoid}.bundle-outcome-profit{background:white}.bundle-section{scroll-margin:0}.bundle-stock-note{display:block}.bundle-calculation-details #calculation{display:block!important}.bundle-results{margin-top:20px}}

.bundle-editor:has(#bundle-basics:target) a[href="#bundle-basics"],.bundle-editor:has(#bundle-items:target) a[href="#bundle-items"],.bundle-editor:has(#bundle-pricing:target) a[href="#bundle-pricing"],.bundle-editor:has(#bundle-economics:target) a[href="#bundle-economics"]{background:#eeebfa;color:#493b79}

/* Customer need precedes product selection, in both the editor and overview. */
.bundle-customer-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:18px;margin-bottom:24px;background:#f7f5fc;border:1px solid #e8e3f1;border-radius:13px}
.bundle-customer-fields label{min-width:0;font-weight:600;color:#514567}.bundle-customer-fields textarea{width:100%;font-weight:400;resize:vertical;background:#fff}
.bundle-customer-summary{display:grid;gap:12px;margin:0 0 16px;padding:14px;background:#f8f7fb;border:1px solid #ece8f2;border-radius:11px}
.bundle-customer-summary dt{font-size:10px;font-weight:650;letter-spacing:.03em;color:#756585;margin-bottom:5px}.bundle-customer-summary dd{margin:0;font-size:12px;line-height:1.6;color:#474150;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:600px){.bundle-customer-fields{grid-template-columns:1fr;padding:14px;gap:14px}}
