.cart-giant-thumbnails{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;width:100%;padding:8px}.cart-giant-thumbnails figure{display:grid;place-items:center;margin:0;min-width:0}.cart-thumb .cart-giant-thumbnails svg{width:76px;height:72px}.cfg-cart-link{display:inline-flex!important;align-items:center;gap:5px;margin-left:12px;white-space:nowrap}.cfg-cart-link b{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:99px;background:#72266b;color:#fff;font-size:11px}.cart-page{max-width:980px;margin:48px auto 90px;padding:0 24px}.cart-page h1{margin-top:4px}.cart-items{display:grid;gap:16px;margin-top:28px}.cart-item{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:18px;border:1px solid #e1dfe5;border-radius:20px;background:#fff}.cart-thumb{display:grid;place-items:center;min-height:130px;background:#faf9fb;border-radius:14px;overflow:hidden}.cart-thumb svg{width:160px;height:130px}.cart-thumb .giant-preview-card{margin:0;display:grid;place-items:center}.cart-thumb .giant-preview-card svg{width:145px;height:120px}.cart-thumb .giant-preview-card figcaption{display:none}.cart-thumb figure{margin:0}.cart-item h2{margin:2px 0 8px;font-size:21px}.cart-item p{margin:0;color:#60606a}.cart-colours{margin-top:14px}.cart-colours strong{display:block;margin-bottom:7px;font-size:14px}.cart-colours div{display:flex;flex-wrap:wrap;gap:6px}.cart-colours span{padding:5px 9px;border-radius:999px;background:#f3edf5;color:#52234f;font-size:13px;font-weight:600}.cart-giant{display:grid;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid #e7e4e9}.cart-giant-row{display:grid;grid-template-columns:minmax(150px,1fr) 78px auto auto;align-items:end;gap:10px;padding:11px 12px;border-radius:10px;background:#faf8fb}.cart-giant-row b,.cart-giant-row span{display:block}.cart-giant-row span{margin-top:3px;font-size:13px;color:#666}.cart-giant-row label{display:grid;gap:3px;font-size:12px;font-weight:700}.cart-giant-row input{width:100%;padding:7px;border:1px solid #c9c7d0;border-radius:7px;font:inherit}.cart-giant-row a,.cart-giant-row button{padding:7px;border:0;background:transparent;color:#582254;font:inherit;font-weight:700;white-space:nowrap}.cart-giant-row button{cursor:pointer}.cart-actions{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-top:18px}.cart-actions label{display:grid;gap:4px;font-weight:700}.cart-actions input{width:86px;padding:8px;border:1px solid #c9c7d0;border-radius:8px;font:inherit}.cart-future{margin-top:28px;padding:18px;border-radius:14px;background:#f4eff7}.cart-empty{padding:26px;border-radius:14px;background:#f6f5f7}@media(max-width:650px){.cfg-cart-link span{display:none}.cart-item{grid-template-columns:1fr}.cart-thumb{min-height:105px}.cart-thumb svg{height:105px}.cart-page{margin-top:28px;padding:0 16px}.cart-giant-row{grid-template-columns:1fr 76px}.cart-giant-row a,.cart-giant-row button{padding:3px 0}}
.cart-giant-row-preview{margin:0;display:grid;place-items:center}.cart-giant-row-preview svg{width:52px;height:52px}.cart-giant-row{grid-template-columns:58px minmax(120px,1fr) 78px auto auto}.cart-loose{display:grid;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid #e7e4e9}.cart-loose-row{display:grid;grid-template-columns:58px minmax(120px,1fr) 78px auto auto;align-items:end;gap:10px;padding:11px 12px;border-radius:10px;background:#faf8fb}.cart-loose-row-preview{margin:0;display:grid;place-items:center}.cart-loose-row-preview svg{width:48px;height:58px}.cart-loose-row b,.cart-loose-row span{display:block}.cart-loose-row span{margin-top:3px;font-size:13px;color:#666}.cart-loose-row label{display:grid;gap:3px;font-size:12px;font-weight:700}.cart-loose-row input{width:100%;padding:7px;border:1px solid #c9c7d0;border-radius:7px;font:inherit}.cart-loose-row a,.cart-loose-row button{padding:7px;border:0;background:transparent;color:#582254;font:inherit;font-weight:700;white-space:nowrap}.cart-loose-row button{cursor:pointer}@media(max-width:650px){.cart-loose-row{grid-template-columns:52px 1fr 76px}.cart-loose-row a,.cart-loose-row button{padding:3px 0}}.cart-item.is-combination{grid-template-columns:1fr}
@media(max-width:650px){
  .cart-page,.cart-item,.cart-item>div{min-width:0;max-width:100%;box-sizing:border-box}
  .cart-item{width:100%}
  .cart-thumb{width:100%}
  .cart-thumb svg{max-width:100%}
  .cart-colours span{max-width:100%;overflow-wrap:anywhere}
  .cart-actions{max-width:100%}
  .cart-actions .button{white-space:normal}
}

@media(max-width:650px){
  .cart-giant-row,.cart-loose-row{grid-template-columns:52px minmax(0,1fr);align-items:center}
  .cart-giant-row label,.cart-loose-row label{grid-column:1;grid-row:2}
  .cart-giant-row a,.cart-loose-row a{grid-column:2;grid-row:2;white-space:normal}
  .cart-giant-row button,.cart-loose-row button{grid-column:2;grid-row:3;justify-self:start;white-space:normal}
}

/* Keep cart actions as clear, centred controls instead of loose-looking labels. */
.cart-actions .button{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:46px;padding:10px 18px;box-sizing:border-box}
@media(max-width:650px){
  .cart-actions{display:grid;grid-template-columns:86px minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:end}
  .cart-actions .button{width:100%;min-width:0;padding:10px 7px;font-size:13px;line-height:1.2}
}

/* Every individual combination follows the same compact mobile grid. */
@media(max-width:650px){
  .cart-giant-row,.cart-loose-row{
    grid-template-columns:52px minmax(0,1fr);
    grid-template-areas:"preview description" "quantity quantity" "edit remove";
    gap:10px;
    align-items:center;
  }
  .cart-giant-row-preview,.cart-loose-row-preview{grid-area:preview}
  .cart-giant-row>div:not(.cart-giant-row-preview),.cart-loose-row>div:not(.cart-loose-row-preview){grid-area:description}
  .cart-giant-row label,.cart-loose-row label{grid-area:quantity;justify-self:start}
  .cart-giant-row a,.cart-loose-row a{grid-area:edit}
  .cart-giant-row button,.cart-loose-row button{grid-area:remove}
  .cart-giant-row a,.cart-loose-row a,.cart-giant-row button,.cart-loose-row button{
    display:flex;align-items:center;justify-content:center;min-height:42px;margin:0;padding:8px;
    border:1px solid #e1dfe5;border-radius:999px;background:#fff;color:#582254;text-align:center;white-space:normal;
    font-size:13px;font-weight:700;line-height:1.2;
  }
  .cart-giant-row button,.cart-loose-row button{background:#f3edf5}
}

/* Keep the two row actions equally wide; the earlier grid made the first one too narrow. */
@media(max-width:650px){
  .cart-giant-row a,.cart-loose-row a,.cart-giant-row button,.cart-loose-row button{
    grid-column:1 / -1;grid-row:3;width:calc(50% - 5px);min-width:0;
  }
  .cart-giant-row a,.cart-loose-row a{justify-self:start}
  .cart-giant-row button,.cart-loose-row button{justify-self:end}
}

/* Combination-level actions have no quantity field: use the complete row for two equal buttons. */
@media(max-width:650px){
  .cart-actions:not(:has(label)){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .cart-actions:not(:has(label)) .button{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px;white-space:normal;text-align:center;border:1px solid #e1dfe5;border-radius:999px;background:#fff;color:#582254}
  .cart-actions:not(:has(label)) button.button{background:#f3edf5}
}

/* Product rows stay neutral; only actions receive an accent fill. */
.cart-giant-row,.cart-loose-row{background:#fff;border:1px solid #e8e4ea}

/* Shared cart palette for desktop and mobile. */
.cart-item{background:#fff}.cart-thumb{background:#faf9fb}
.cart-giant-row a,.cart-loose-row a,.cart-actions .button{background:#fff;border:1px solid #e1dfe5}
.cart-giant-row button,.cart-loose-row button,.cart-actions button.button{background:#f3edf5;border:1px solid #e1dfe5}

/* cart rounded row actions 2026-09-22 */
.cart-page .cart-giant-row > a,
.cart-page .cart-loose-row > a,
.cart-page .cart-giant-row > button,
.cart-page .cart-loose-row > button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  min-height:44px;
  padding:9px 16px;
  border:1px solid #e1dfe5;
  border-radius:999px;
  color:#582254;
  font:inherit;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  white-space:normal;
}
.cart-page .cart-giant-row > a,
.cart-page .cart-loose-row > a { background:#fff; }
.cart-page .cart-giant-row > button,
.cart-page .cart-loose-row > button { background:#f3edf5;cursor:pointer; }
.cart-page .cart-giant-row > a:hover,
.cart-page .cart-loose-row > a:hover,
.cart-page .cart-giant-row > button:hover,
.cart-page .cart-loose-row > button:hover { border-color:#b785b1; }
.cart-page .cart-giant-row > a:focus-visible,
.cart-page .cart-loose-row > a:focus-visible,
.cart-page .cart-giant-row > button:focus-visible,
.cart-page .cart-loose-row > button:focus-visible { outline:3px solid #b785b1;outline-offset:2px; }
