/* Shared cart, using the existing Shaw3D palette and typography. */
.theme-shaw3d .cart-nav{font-weight:700}
.cart-add-form{display:grid;grid-template-columns:1fr 100px;gap:8px 16px;margin:20px 0}
.cart-add-form label{font-size:.9rem;font-weight:600}
.cart-add-form label[for^="cart-qty"]{grid-column:2;grid-row:1}
.cart-add-form select{grid-column:1;grid-row:2}
.cart-add-form input{grid-column:2;grid-row:2}
.cart-add-form .button{grid-column:1/-1;justify-self:start;margin-top:8px}
.theme-shaw3d .cart-add-form input,.theme-shaw3d .cart-add-form select,.theme-shaw3d .cart-fields input,.theme-shaw3d .cart-fields select,.theme-shaw3d .cart-line input{width:100%;min-height:44px;background:#fffaf3;color:#1b3832;border:1px solid #b9b9a7;border-radius:6px;padding:10px 12px;font:inherit}
.cart-add-form .cart-feedback{grid-column:1/-1}
.cart-feedback{min-height:1.4em;margin:10px 0 0;font-size:.9rem;color:#286650}
.cart-feedback[role="alert"]{color:#8b2424}
.cart-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:36px;align-items:start;margin:34px 0 40px}
.cart-line{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:20px;padding:22px 0;border-bottom:1px solid #dcd5c8}
.cart-line:first-child{padding-top:0}
.cart-line img{width:96px;height:110px;object-fit:contain;background:#fffaf3;border-radius:8px}
.cart-line h2{font-size:1.05rem;line-height:1.4;margin:0 0 6px}
.cart-line p{font-size:.9rem;margin:4px 0 10px}
.cart-line a{color:inherit}
.cart-line-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.cart-line-controls label{display:flex;gap:10px;align-items:center;font-size:.85rem}
.theme-shaw3d .cart-line input{width:78px;padding:6px 9px}
.cart-line-price{white-space:nowrap}
.cart-line-controls button,.cart-selection>.actions>button{font:inherit;color:#286650;background:transparent;border:0;text-decoration:underline;padding:8px 0;min-height:44px}
.cart-summary{border:1px solid #dcd5c8;background:#fffaf3;padding:26px;border-radius:10px}
.cart-summary h2{font-size:1.25rem;margin:0 0 24px}
.cart-summary dl{margin:0}
.cart-summary dl>div{display:flex;justify-content:space-between;gap:18px;margin:16px 0;font-size:.95rem}
.cart-summary dt,.cart-summary dd{margin:0}
.cart-summary dd{text-align:right}
.cart-summary .cart-grand-total{border-top:1px solid #dcd5c8;padding-top:18px;font-size:1.1rem;font-weight:700}
.cart-shipping{max-width:820px;padding:30px 0 50px;border-top:1px solid #dcd5c8}
.cart-shipping h2{font-size:1.6rem}
.cart-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin:26px 0}
.cart-fields label{display:grid;gap:7px;font-size:.9rem;font-weight:600}
.cart-fields [hidden]{display:none!important}
.cart-fields label span{font-size:.85rem;font-weight:400}
.cart-field-wide{grid-column:1/-1}
.cart-fields input[readonly]{background:#eae5d9}
.cart-shipping .button{margin-bottom:12px}
.cart-checkout-note{padding:16px 0}
.theme-shaw3d [data-cart-checkout] .button{background:#286650;color:#fff}
.theme-shaw3d [data-cart-checkout] .button:disabled,.theme-shaw3d [data-cart-quote]:disabled{opacity:.55}
.cart-selection>.actions{margin-top:24px}
.cart-storage-note{padding:14px;background:#ece7dc;border-radius:6px;font-size:.9rem}
@media(max-width:850px){.cart-layout{grid-template-columns:1fr;gap:28px}.cart-summary{max-width:none}}
@media(max-width:500px){.cart-line{grid-template-columns:68px minmax(0,1fr);gap:12px}.cart-line img{width:68px;height:84px}.cart-line-price{grid-column:2}.cart-fields{grid-template-columns:1fr}.cart-field-wide{grid-column:1}.cart-add-form{grid-template-columns:minmax(0,1fr) 85px}.cart-summary{padding:22px}.cart-line-controls{gap:10px}.cart-line h2{font-size:1rem}}
