/* Bag-specific spacing; shared product colors, controls and quote card belong to the theme. */
.cp-bag{--ink:var(--chipak-navy,#102235);--line:#dce3ec;--accent:var(--chipak-gold,#c89536);color:var(--ink);font:inherit;max-width:100%;margin:auto}
.cp-bag *{box-sizing:border-box}.cp-bag [hidden]{display:none!important}
.cp-bag-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;align-items:start}
.cp-bag-visual{min-width:0}.cp-bag-note{font-size:13px;line-height:1.9;color:#526174;margin:8px 0}
.cp-bag-options,.cp-bag-field-group{display:grid;gap:16px}.cp-bag-options{padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff}
.cp-bag label{display:grid;gap:7px;font-size:13px;font-weight:600;min-width:0}
.cp-bag select,.cp-bag input{font:inherit;width:100%;max-width:100%;min-width:0;border:1px solid #c8d2df;border-radius:9px;background:white;color:var(--ink);padding:10px;min-height:46px}
.cp-bag [data-size],.cp-bag [data-dimension]{direction:ltr;text-align:center}.cp-bag [data-qty]{direction:ltr;text-align:right}
.cp-bag-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.cp-bag-dimensions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cp-bag-dimensions small{font-weight:400;color:#526174;text-align:center}
.cp-bag button{font:inherit;border:1px solid var(--ink);background:var(--ink);color:white;border-radius:10px;padding:10px 14px;cursor:pointer;min-height:44px}
.cp-bag button:disabled{opacity:.55;cursor:default}.cp-bag .cp-bag-primary{background:var(--accent);border-color:var(--accent);color:var(--ink)}
.cp-bag :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.cp-bag-price{display:grid;gap:14px}.cp-bag-price strong{display:block;font-size:24px;margin:8px 0}.cp-bag-price span{font-size:12px}.cp-bag-price .quote-total{padding-top:12px;border-top:1px solid #ffffff38}
.cp-bag details{border:1px solid var(--line);border-radius:12px;padding:16px}.cp-bag summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}
.cp-bag-flat{padding:22px 0}.cp-bag-flat svg{width:100%;height:auto;max-height:350px;overflow:visible}
.cp-bag-buttons,.cp-bag [data-purchase]{display:flex;gap:10px;flex-wrap:wrap}.cp-bag [data-lead]{display:grid;gap:12px}
.cp-bag fieldset{min-width:0;margin:0;border:1px solid var(--line);border-radius:10px;padding:14px;display:grid;gap:12px}
.cp-bag [data-sheet]{direction:ltr;text-align:center}.cp-bag [data-status]{margin:0;min-height:1.7em}.cp-bag [data-lead-status]{margin:0}
.cp-bag .cp-scene{height:420px;position:relative;overflow:hidden;touch-action:pan-y;cursor:grab}.cp-bag .cp-scene canvas{display:block;width:100%;height:100%}
.cp-bag-view-tools{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:8px 14px;background:#ffffffb8}.cp-bag-view-tools button{flex-shrink:0;font-size:12px;padding:7px 10px}
.cp-bag [data-view-status]{padding:0 14px 14px}.cp-bag [data-art-editor]{display:block;width:100%;height:auto;touch-action:none;border-radius:8px;cursor:move}
.cp-bag [data-art-file]{padding:8px;font-size:12px}.cp-bag [data-art-scale]{padding:0;accent-color:var(--accent);min-height:28px}
.cp-bag .cp-art-name{overflow-wrap:anywhere;font-size:12px}.cp-bag-error{color:#9f303c;background:#fff1f2;padding:10px;border-radius:8px;font-size:13px;margin:0;line-height:1.8}
@media(max-width:760px){.cp-bag-grid{grid-template-columns:minmax(0,1fr);gap:20px}.cp-bag-options{padding:16px}.cp-bag .cp-scene{height:330px}.cp-bag-dimensions{gap:7px}.cp-bag-dimensions label{font-size:12px}.cp-bag-dimensions input{padding:8px 3px}.cp-bag-view-tools{flex-wrap:wrap}}
