/* Build 01 screens; only the shared header spacing accommodates the Cake link. */
@media (min-width:981px) and (max-width:1180px) {
  .site-header .main-nav { gap:0; font-size:12px; }
  .site-header .main-nav a { padding-inline:6px; }
}
.commerce-page .commerce-shell,.commerce-page .commerce-heading { padding:32px clamp(16px,5vw,72px); }
.commerce-page .commerce-heading { background:#fff4d6; }
.commerce-page .commerce-heading h1,.commerce-page .commerce-shell h1 { font-size:clamp(28px,3.1vw,44px); line-height:1.15; margin:10px 0 18px; }
.commerce-page .commerce-subnav,.commerce-filters { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.commerce-page .commerce-subnav { padding:12px clamp(16px,5vw,72px); border-bottom:1px solid #e7edf2; background:#fff; }
.commerce-subnav a,.commerce-filters a { display:inline-flex; align-items:center; min-height:44px; padding:7px 14px; border-radius:12px; color:#0f3f67; background:#eff6fb; font-weight:700; }
.commerce-filters { margin-bottom:24px; }
.commerce-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.commerce-card { min-width:0; border:1px solid #e7edf2; border-radius:22px; overflow:hidden; background:#fff; box-shadow:0 10px 24px rgba(15,63,103,.05); }
.commerce-card > a > img { width:100%; aspect-ratio:1; height:auto; object-fit:cover; }
.commerce-card-copy { display:flex; flex-direction:column; align-items:start; gap:10px; padding:20px; }
.commerce-card h2 { font-size:21px; line-height:1.3; margin:0; }
.commerce-card p { font-size:14px; margin:0; color:#607086; }
.commerce-card .btn { margin-top:6px; }
.commerce-pet { font-size:13px; font-weight:700; color:#216044; }
.commerce-price { font-size:22px; color:#0f3f67; font-weight:800; }
.commerce-detail,.commerce-checkout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:36px; align-items:start; }
.commerce-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.commerce-gallery img { width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:18px; }
.commerce-gallery img:first-child { grid-column:1 / -1; }
.commerce-product-copy,.commerce-summary { min-width:0; }
.commerce-form { display:grid; gap:16px; }
.commerce-form label,.commerce-quantity-form label,.commerce-filter-form label { display:grid; gap:7px; font-size:14px; font-weight:700; color:#183e56; }
.commerce-form input,.commerce-form select,.commerce-form textarea,.commerce-quantity-form input,.commerce-filter-form select { width:100%; min-width:0; min-height:44px; margin:0; border:1px solid #b8c9d6; border-radius:10px; padding:10px 12px; font:inherit; font-size:16px; background:#fff; color:#17212f; }
.commerce-form textarea { min-height:90px; resize:vertical; }
.commerce-form .commerce-check { display:flex; align-items:start; gap:10px; font-weight:400; }
.commerce-check input[type=checkbox] { width:22px; height:22px; min-height:22px; flex:0 0 22px; margin-top:2px; }
.commerce-form .btn { justify-self:start; min-height:46px; }
.commerce-form fieldset { border:1px solid #b8c9d6; border-radius:16px; padding:20px; display:grid; gap:16px; min-width:0; }
.commerce-form fieldset[hidden] { display:none; }
.commerce-form legend { color:#0f3f67; font-weight:800; }
.commerce-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.commerce-description { margin-top:36px; padding-top:24px; border-top:1px solid #e7edf2; max-width:900px; }
.commerce-description dt { font-weight:700; color:#0f3f67; margin-top:16px; }
.commerce-description dd { margin:6px 0; white-space:normal; }
.commerce-notice { padding:16px; border-radius:12px; border:1px solid #e0c986; background:#fff6da; color:#614b12; }
.commerce-empty { padding:32px; border-radius:22px; background:#f1f7fb; }
.commerce-cart-list { display:grid; gap:18px; }
.commerce-cart-row { display:grid; grid-template-columns:minmax(0,1fr) 180px; gap:24px; padding:22px; border:1px solid #e7edf2; border-radius:18px; background:#fff; }
.commerce-cart-row h2 { font-size:22px; margin-top:0; }
.commerce-quantity-form { display:grid; gap:10px; align-content:start; }
.commerce-options-summary { margin:12px 0; }
.commerce-options-summary div { display:grid; grid-template-columns:minmax(100px,.4fr) minmax(0,1fr); gap:14px; margin:7px 0; }
.commerce-options-summary dt { font-weight:700; }
.commerce-options-summary dd { margin:0; overflow-wrap:anywhere; }
.commerce-total { font-size:22px; color:#0f3f67; }
.commerce-muted { font-size:14px; color:#607086; }
.commerce-summary { background:#f1f7fb; border-radius:22px; padding:24px; }
.commerce-order-items article { padding:12px 0; border-bottom:1px solid #d7e2ea; }
.commerce-order-items h3 { margin:4px 0; }
.commerce-order-id { font-weight:800; color:#0f3f67; font-size:24px; overflow-wrap:anywhere; }
.commerce-actions { display:flex; flex-wrap:wrap; gap:12px; }
.commerce-success { max-width:1100px; margin:auto; }
.commerce-success #chi-tiet-don { margin-top:36px; }
.commerce-admin .admin-content { min-width:0; }
.commerce-admin .panel { margin-bottom:30px; }
.commerce-admin .commerce-table-wrap { overflow-x:auto; max-width:100%; }
.commerce-admin .commerce-table-wrap table { min-width:740px; }
.commerce-admin .commerce-table-wrap td { white-space:normal; overflow-wrap:anywhere; max-width:320px; }
.commerce-admin .commerce-table-wrap td form { margin-top:8px; }
.commerce-admin-gallery,.commerce-checks,.commerce-filter-form { display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin-block:14px; }
.commerce-admin-gallery img { object-fit:cover; border-radius:12px; }
.commerce-filter-form { align-items:end; }
.commerce-page :is(h1,h2,h3,p,li),.commerce-admin :is(h1,h2,h3,p,li) { overflow-wrap:anywhere; }
.commerce-page :is(input,select,textarea,a,button):focus-visible,.commerce-admin :is(input,select,textarea,a,button):focus-visible { outline:3px solid #1f75bc; outline-offset:3px; }
@media (min-width:1400px) { .commerce-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (max-width:980px) {
  .commerce-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .commerce-detail,.commerce-checkout { grid-template-columns:minmax(0,1fr); gap:24px; }
  .commerce-gallery { max-width:620px; }
}
@media (max-width:600px) {
  .commerce-page .commerce-shell,.commerce-page .commerce-heading { padding:24px 16px; }
  .commerce-page .commerce-subnav { padding:10px 16px; gap:8px; }
  .commerce-subnav a { padding-inline:10px; font-size:13px; }
  .commerce-grid { gap:12px; }
  .commerce-card { border-radius:16px; }
  .commerce-card-copy { padding:12px; gap:8px; }
  .commerce-card h2 { font-size:16px; }
  .commerce-card p { font-size:12px; }
  .commerce-card .commerce-price { font-size:17px; }
  .commerce-card .btn { font-size:12px; min-height:44px; padding-inline:10px; }
  .commerce-cart-row { grid-template-columns:minmax(0,1fr); padding:18px; gap:16px; }
  .commerce-quantity-form { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:end; }
  .commerce-quantity-form label { grid-column:1 / -1; }
  .commerce-field-grid { grid-template-columns:minmax(0,1fr); }
  .commerce-form fieldset { padding:14px; }
  .commerce-summary { padding:18px; }
  .commerce-options-summary div { grid-template-columns:minmax(0,.5fr) minmax(0,1fr); gap:10px; font-size:14px; }
}
/* Build 01A: presentation of the existing cake form only. */
.commerce-cake-form { margin-top:20px; gap:14px; }
.commerce-cake-form fieldset { margin:0; padding:14px 16px 16px; border-color:#d7e2ea; background:#fafcfe; }
.commerce-cake-form legend { padding:0 6px; font-size:15px; }
.commerce-cake-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.commerce-cake-form .commerce-muted { margin:0; font-weight:400; }
.commerce-cake-form textarea { min-height:76px; }
.commerce-cake-form .btn { width:100%; justify-self:stretch; min-height:52px; justify-content:center; font-size:16px; }
@media (max-width:600px) { .commerce-cake-grid { grid-template-columns:minmax(0,1fr); } }
