/* cart-page.css — extracted from cart.html inline <style> (Optimize Bot run 7) */

/* Cart item actions */
.cart-item__actions{display:flex;flex-direction:column;gap:6px;align-items:flex-end;justify-content:center}
.cart-item__save-btn{display:inline-flex;align-items:center;gap:4px;font-size:.8125rem;white-space:nowrap;color:var(--muted,#6b7280)}
.cart-item__save-btn:hover{color:var(--accent,#2563eb)}

/* Cart items header */
.cart__items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}

/* Bulk selection bar */
.cart-bulk-bar{display:none;align-items:center;gap:12px;padding:10px 16px;margin-bottom:12px;background:var(--surface-alt,#f0f4ff);border:1px solid var(--accent,#2563eb);border-radius:8px;flex-wrap:wrap}
.cart-bulk-bar.is-active{display:flex}
.cart-bulk-bar__select-all{display:flex;align-items:center;gap:6px;font-size:.875rem;cursor:pointer;user-select:none}
.cart-bulk-bar__count{font-size:.875rem;color:var(--muted,#6b7280);margin-right:auto}
.cart-bulk-bar__actions{display:flex;gap:8px}
.cart-item__checkbox{flex-shrink:0;width:20px;height:20px;accent-color:var(--accent,#2563eb);cursor:pointer;margin:0;align-self:center}
.cart-item.is-checked{background:var(--surface-alt,#f0f4ff)}
.cart-bulk-toggle{font-size:.875rem}
@media(max-width:640px){.cart-bulk-bar__actions{width:100%}.cart-bulk-bar__actions .btn{flex:1}}

/* Saved for later */
.saved-later{margin-top:2rem;padding:1.5rem 0;content-visibility:auto;contain-intrinsic-size:auto 200px}
.saved-later__title{display:flex;align-items:center;gap:8px;font-size:1.125rem;font-weight:600;margin-bottom:1rem;color:var(--text,#1f2937)}
.saved-later__grid{display:grid;gap:1rem}
.saved-later__item{display:grid;grid-template-columns:80px 1fr auto;gap:1rem;align-items:center;padding:1rem;border:1px solid var(--border,#e5e7eb);border-radius:8px;background:var(--surface,#fff)}
.saved-later__img{width:80px;height:80px;flex-shrink:0}
.saved-later__img img{width:100%;height:100%;object-fit:contain;border-radius:4px}
.saved-later__name{font-size:.9375rem;font-weight:500;margin:0 0 4px}
.saved-later__name a{color:inherit;text-decoration:none}
.saved-later__name a:hover{color:var(--accent,#2563eb)}
.saved-later__price{font-size:.875rem;color:var(--text,#1f2937);margin:0}
.saved-later__stock--out{font-size:.8125rem;color:var(--danger,#dc2626);margin:4px 0 0}
.saved-later__actions{display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.saved-later__action-form .btn{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
@media(max-width:640px){
  .saved-later__item{grid-template-columns:64px 1fr;gap:.75rem}
  .saved-later__img{width:64px;height:64px}
  .saved-later__actions{grid-column:1/-1;flex-direction:row;justify-content:flex-start}
  .saved-later__actions .btn{min-height:44px}
  .cart-item__actions{flex-direction:row;gap:8px}
  .cart-item__save-btn svg{display:none}
}

/* Cross-sell recommendations */
.cart-cross-sell{margin-top:2rem;padding:1.5rem 0;content-visibility:auto;contain-intrinsic-size:auto 300px}
.cart-cross-sell__title{display:flex;align-items:center;gap:8px;font-size:1.125rem;font-weight:600;margin-bottom:1rem;color:var(--text,#1f2937)}
.cart-cross-sell__title::before{content:'';display:inline-block;width:4px;height:1.125em;background:var(--accent,#2563eb);border-radius:2px}
.cart-cross-sell__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.cart-cross-sell__card{display:flex;flex-direction:column;align-items:center;padding:1rem;border:1px solid var(--border,#e5e7eb);border-radius:8px;background:var(--surface,#fff);text-align:center;transition:border-color .15s}
.cart-cross-sell__card:hover{border-color:var(--accent,#2563eb)}
.cart-cross-sell__img{width:100px;height:100px;flex-shrink:0;margin-bottom:.5rem}
.cart-cross-sell__img img{width:100%;height:100%;object-fit:contain;border-radius:4px}
.cart-cross-sell__info{flex:1;min-width:0;margin-bottom:.5rem}
.cart-cross-sell__name{font-size:.8125rem;font-weight:500;margin:0 0 4px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cart-cross-sell__name a{color:inherit;text-decoration:none}
.cart-cross-sell__name a:hover{color:var(--accent,#2563eb)}
.cart-cross-sell__price{font-size:.875rem;font-weight:600;color:var(--text,#1f2937);margin:0}
.cart-cross-sell__add{width:100%;margin-top:auto}
@media(max-width:768px){.cart-cross-sell__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:400px){.cart-cross-sell__grid{grid-template-columns:1fr}.cart-cross-sell__card{flex-direction:row;text-align:left;gap:.75rem}.cart-cross-sell__img{width:64px;height:64px;margin-bottom:0}.cart-cross-sell__add{width:auto;align-self:center}}

/* Accessibility: focus-visible on interactive links (WCAG 2.4.7) */
.saved-later__name a:focus-visible,
.saved-later__img a:focus-visible,
.cart-cross-sell__name a:focus-visible{outline:2px solid var(--primary,#2563eb);outline-offset:2px;border-radius:2px}
.cart-cross-sell__card:focus-visible{outline:2px solid var(--primary,#2563eb);outline-offset:2px;border-radius:8px}

/* Accessibility: disable transitions for vestibular-sensitive users (WCAG 2.3.3) */
@media(prefers-reduced-motion:reduce){
  .cart-cross-sell__card,
  .cart-item-note__add-btn,
  .cart-drafts__save-btn,
  .cart-drafts__save-confirm,
  .cart-draft-card,
  .cart-draft-card__btn{transition:none}
}

/* Accessibility: preserve decorative accent bar in Windows High Contrast (WCAG 1.4.11) */
@media(forced-colors:active){
  .cart-cross-sell__title::before{forced-color-adjust:none}
}

/* Cart per-item internal note (B2B) — extracted from cart_item_note.html partial (was duplicated per item in loop) */
.cart-item-note{margin-top:6px}
.cart-item-note__display{display:flex;align-items:flex-start;gap:6px;background:#f0f4ff;border:1px solid #d0d9f0;border-radius:6px;padding:6px 10px;font-size:13px;color:#374151;line-height:1.4}
.cart-item-note__text{flex:1;word-break:break-word;white-space:pre-wrap}
.cart-item-note__edit-btn{flex-shrink:0;background:none;border:none;cursor:pointer;color:#6b7280;padding:2px;border-radius:3px}
.cart-item-note__edit-btn:hover{color:#1e40af;background:#e0e7ff}
.cart-item-note__editor{margin-top:4px}
.cart-item-note__input{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;padding:8px 10px;font-size:13px;font-family:inherit;resize:vertical;line-height:1.4;color:#1f2937;background:#fff;min-height:48px}
.cart-item-note__input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,.15)}
.cart-item-note__actions{display:flex;gap:6px;margin-top:4px}
.cart-item-note__save{font-size:12px!important;padding:4px 12px!important}
.cart-item-note__cancel{font-size:12px!important;padding:4px 10px!important}
.cart-item-note__add-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:1px dashed #d1d5db;border-radius:4px;padding:4px 10px;font-size:12px;color:#6b7280;cursor:pointer;font-family:inherit;transition:all .15s}
.cart-item-note__add-btn:hover{color:#1e40af;border-color:#93c5fd;background:#eff6ff}
.cart-item-note__status{font-size:11px;color:#059669;margin-top:2px;display:none}
@media(max-width:640px){.cart-item-note__input{font-size:14px}}

/* Print: hide interactive-only cart elements (B2B buyers print for purchase approval) */
@media print{
  .cart-bulk-bar,
  .cart__items-header,
  .cart-cross-sell,
  .cart-item__checkbox,
  .saved-later__actions,
  .cart-item__qty-btn,
  .cart-item__actions,
  .cart-mobile-bar,
  .cart-summary__checkout,
  .cart-summary__continue,
  .cart-summary__clear,
  .cart-summary__quote,
  #emailQuoteBtn,
  #emailQuoteModal,
  .cart-item-note__editor,
  .cart-item-note__add-btn,
  .cart-item-note__edit-btn{display:none!important}
  .cart-item__qty-input{border:none!important;background:transparent!important;text-align:center;-moz-appearance:textfield;appearance:textfield}
  .cart-item__qty-input::-webkit-inner-spin-button,.cart-item__qty-input::-webkit-outer-spin-button{display:none}
}

/* Cart drafts — extracted from cart_drafts.html inline <style> (Optimize Bot run 17) */
.cart-drafts{margin:24px 0 0}
.cart-drafts__header{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.cart-drafts__title{font-size:17px;font-weight:700;color:#1a1a2e;margin:0;display:flex;align-items:center;gap:6px}
.cart-drafts__title svg{color:#6366f1;flex-shrink:0}
.cart-drafts__count{font-size:13px;color:#6b7280;font-weight:400}
.cart-drafts__save-btn{margin-left:auto;padding:7px 14px;font-size:13px;font-weight:600;border:1px solid #6366f1;color:#6366f1;background:#f5f3ff;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:all .15s}
.cart-drafts__save-btn:hover{background:#ede9fe;border-color:#4f46e5;color:#4f46e5}
.cart-drafts__save-btn:disabled{opacity:.5;cursor:not-allowed}
.cart-drafts__save-form{display:none;background:#f5f3ff;border:1px solid #c7d2fe;border-radius:8px;padding:12px;margin-bottom:12px;gap:8px;align-items:center;flex-wrap:wrap}
.cart-drafts__save-form.is-open{display:flex}
.cart-drafts__save-input{flex:1;min-width:180px;padding:7px 10px;border:1px solid #c7d2fe;border-radius:6px;font-size:14px;background:#fff}
.cart-drafts__save-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px rgba(99,102,241,.15)}
.cart-drafts__save-confirm{padding:7px 16px;font-size:13px;font-weight:600;border:none;background:#6366f1;color:#fff;border-radius:6px;cursor:pointer;transition:background .15s}
.cart-drafts__save-confirm:hover{background:#4f46e5}
.cart-drafts__save-confirm:disabled{opacity:.5;cursor:not-allowed}
.cart-drafts__save-cancel{padding:7px 12px;font-size:13px;border:none;background:transparent;color:#6b7280;cursor:pointer}
.cart-drafts__save-cancel:hover{color:#374151}
.cart-drafts__list{display:flex;flex-direction:column;gap:8px}
.cart-drafts__empty{font-size:13px;color:#9ca3af;padding:8px 0}
.cart-draft-card{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:box-shadow .15s}
.cart-draft-card:hover{box-shadow:0 1px 4px rgba(0,0,0,.06)}
.cart-draft-card__icon{flex-shrink:0;width:36px;height:36px;background:#f5f3ff;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#6366f1}
.cart-draft-card__info{flex:1;min-width:0}
.cart-draft-card__name{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart-draft-card__meta{font-size:12px;color:#6b7280;margin-top:1px}
.cart-draft-card__actions{display:flex;gap:6px;flex-shrink:0}
.cart-draft-card__btn{padding:6px 10px;font-size:12px;font-weight:600;border-radius:5px;border:1px solid;cursor:pointer;transition:all .15s;white-space:nowrap}
.cart-draft-card__btn--restore{border-color:#6366f1;color:#6366f1;background:#f5f3ff}
.cart-draft-card__btn--restore:hover{background:#ede9fe;color:#4f46e5}
.cart-draft-card__btn--delete{border-color:#e5e7eb;color:#6b7280;background:#fff}
.cart-draft-card__btn--delete:hover{border-color:#fca5a5;color:#dc2626;background:#fef2f2}
.cart-draft-card__btn--preview{border-color:#e0e7ff;color:#6366f1;background:#f5f3ff}
.cart-draft-card__btn--preview:hover{background:#ede9fe;color:#4f46e5}
.cart-draft-card__btn:disabled{opacity:.5;cursor:not-allowed}
.cart-drafts__msg{font-size:13px;padding:6px 0;display:none}
@media(max-width:600px){
  .cart-drafts__header{flex-direction:column;align-items:flex-start;gap:8px}
  .cart-drafts__save-btn{margin-left:0;width:100%;justify-content:center}
  .cart-draft-card{flex-wrap:wrap}
  .cart-draft-card__actions{width:100%;justify-content:flex-end}
}

/* Save-as-template widget (extracted from cart_save_template.html — run 18) */
.cart-save-tpl{margin-top:8px}
.cart-save-tpl__btn svg{flex-shrink:0}
.cart-save-tpl__form{margin-top:8px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}
.cart-save-tpl__label{display:block;font-size:12px;font-weight:600;color:#374151;margin-bottom:4px}
.cart-save-tpl__row{display:flex;gap:6px;align-items:stretch}
.cart-save-tpl__input{flex:1;min-width:0;font-size:13px;padding:6px 10px}
.cart-save-tpl__submit{white-space:nowrap}
.cart-save-tpl__cancel{white-space:nowrap}
.cart-save-tpl__status{margin-top:8px;font-size:13px;padding:8px 10px;border-radius:6px}
.cart-save-tpl__status--ok{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}
.cart-save-tpl__status--err{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
@media(max-width:480px){
  .cart-save-tpl__row{flex-wrap:wrap}
  .cart-save-tpl__input{width:100%}
}
@media print{.cart-save-tpl{display:none!important}}
