.lc-cart-surface {


&{--bg:#faf8f4;--ink:#38291f;--cacao:#683b16;--muted:#706457;--line:#ddd4c9;--paper:#fffdfa}*{box-sizing:border-box}&{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 Inter,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button,summary{cursor:pointer}a{color:inherit;text-underline-offset:4px}button{min-height:44px}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--cacao);outline-offset:4px}button:disabled{opacity:.35;cursor:default}.concept{padding:7px 20px;text-align:center;background:#eee7dd;color:#5a4938;font-size:11px;letter-spacing:.07em}.header{height:100px;max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--line)}.logo{width:136px;height:42px;position:relative;overflow:hidden}.logo:before{content:'';position:absolute;inset:0;background:var(--cacao);mask:url('../../logo-email.png') center/contain no-repeat}.steps{display:flex;gap:22px;color:var(--muted);font-size:12px}.steps b{color:var(--cacao);font-weight:500}.header>a{font-size:13px;text-decoration:none}.wrap{max-width:1180px;margin:48px auto 64px;padding:0 28px}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.2}h1{font-size:46px;margin:0 0 36px;letter-spacing:-1.2px}h1 span{font:13px Inter;color:var(--muted);letter-spacing:0;margin-left:16px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 376px;gap:64px;align-items:start}.item{display:grid;grid-template-columns:144px 1fr;gap:24px;padding-bottom:26px;border-bottom:1px solid var(--line)}.photo{width:144px;height:144px;object-fit:contain;background:#f2efeb;border:1px solid #e5ded4;border-radius:8px}.itemhead{display:flex;justify-content:space-between;gap:12px}h2{font-size:26px;margin:2px 0 8px}.price{font-weight:500;white-space:nowrap;font-size:17px}.muted{color:var(--muted);font-size:13px}.item p{margin:0 0 5px}.controls{display:flex;gap:20px;align-items:center;margin-top:18px}.qty{display:flex;border:1px solid var(--line);border-radius:5px;align-items:center;height:44px}.qty button{background:none;border:0;width:40px;font-size:18px}.qty output{width:26px;text-align:center}.quiet{border:0;background:none;padding:0;text-decoration:underline;text-underline-offset:4px;color:var(--muted);font-size:12px}.gift{padding:24px 0;border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:44px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:22px;font-weight:300}details[open]>summary:after{content:'−'}.gift summary{gap:12px;justify-content:start}.gift summary:after{margin-left:auto}.gift small{display:block;color:var(--muted);font-size:12px;font-weight:400}.gift svg{width:23px;height:23px;stroke:var(--cacao);flex-shrink:0}.gift textarea{width:100%;min-height:100px;margin-top:16px;padding:12px;border:1px solid var(--line);border-radius:6px;background:var(--paper);resize:vertical}.note{font-size:12px;color:var(--muted);margin-top:10px}.continue{display:inline-block;font-size:13px;margin-top:24px;text-decoration:none}.aside{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:26px;box-shadow:0 8px 30px #38291f05}.aside h2{font-size:25px;margin:0 0 24px}.progresscopy{font-size:12px;color:var(--muted);line-height:1.65}.progresscopy b{color:var(--ink);font-weight:500}.bar{height:3px;background:#eae3d8;margin:10px 0 24px;border-radius:5px;overflow:hidden}.bar i{display:block;width:55%;height:100%;background:#936b42;transition:width .2s}.rows{margin:20px 0 0}.row{display:flex;justify-content:space-between;gap:20px;margin:12px 0;font-size:13px}.delivery{font-size:13px;border-block:1px solid var(--line);padding:9px 0}.delivery summary span{display:block}.delivery summary small{font-size:11px;color:var(--muted)}select{width:100%;padding:10px 8px;margin:12px 0 6px;border:1px solid var(--line);border-radius:5px;background:var(--paper)}.delivery p{font-size:12px;color:var(--muted);margin:8px 0}.coupon{font-size:12px;margin-top:12px}.coupon input{max-width:100%;width:100%;padding:10px;border:1px solid var(--line);border-radius:4px}.total{border-top:1px solid var(--line);padding-top:17px;margin-top:14px;font-size:18px}.total strong{font-weight:500;font-size:23px}.cta{width:100%;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--cacao);border-radius:6px;background:var(--cacao);color:#fffaf2;padding:15px 19px;font-weight:500;margin-top:21px;transition:background .18s}.cta:hover{background:#4f2b0f}.cta svg{width:17px;height:17px;stroke:currentColor}.secure{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;color:var(--muted);margin:13px 0 0}.secure svg{width:13px;height:13px;stroke:currentColor}.help{font-size:12px;text-align:center;margin:19px 0 0;color:var(--muted)}footer{max-width:1124px;margin:0 auto;padding:22px 0 28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.footerlinks{display:flex;gap:22px}.status{font-size:12px;color:var(--cacao);margin:12px 0 0}.empty{padding:32px;border:1px solid var(--line);border-radius:8px}.empty button{margin:14px 0;background:none;border:0;text-decoration:underline}.sticky{display:none}@media(min-width:900px){.aside{position:sticky;top:24px}}@media(max-width:800px){.header{height:76px;padding:0 22px}.steps{display:none}.logo{width:114px;height:36px}.wrap{margin:28px auto 36px;padding:0 22px}.layout{grid-template-columns:1fr;gap:28px}h1{font-size:34px;margin-bottom:26px}h1 span{font-size:12px;margin-left:10px}.item{grid-template-columns:112px minmax(0,1fr);gap:17px}.photo{width:112px;height:112px}.itemhead{display:block}h2{font-size:22px;margin-top:0}.price{font-size:16px;margin:8px 0}.controls{gap:18px;margin-top:13px}.qty button{width:35px}.gift{padding:15px 0}.gift summary{font-size:13px}.aside{padding:22px;border-radius:8px}.aside h2{font-size:24px;margin-bottom:18px}.continue{margin-top:18px}.header>a{font-size:12px}footer{padding:20px 22px 100px;display:block}.footerlinks{margin-top:12px;gap:20px}.sticky{position:fixed;bottom:0;left:0;right:0;display:flex;gap:20px;align-items:center;background:#fffdfaf5;border-top:1px solid var(--line);padding:10px 20px max(10px,env(safe-area-inset-bottom));box-shadow:0 -4px 20px #38291f05}.sticky[hidden]{display:none}.sticky small{display:block;font-size:10px;color:var(--muted)}.sticky strong{font-size:15px;font-weight:500}.sticky button{margin:0;flex:1;justify-content:center;font-size:13px;padding:11px}.concept{font-size:9px}.total{font-size:17px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.logo{height:calc(136px * 76 / 249)}.logo:before{inset:auto;width:120.481928%;aspect-ratio:1;left:-14.056225%;top:-202.631579%;mask-mode:alpha}.delivery summary small{display:block;margin-top:3px}.qty button{width:44px}.item p{font-size:14px}.item .muted{font-size:12px}@media(max-width:800px){.logo{height:calc(114px * 76 / 249)}.controls{gap:14px}.qty output{width:22px}}@media(max-width:360px){.item{grid-template-columns:96px minmax(0,1fr);gap:12px}.photo{width:96px;height:96px}.controls{flex-wrap:wrap;gap:4px}.wrap{padding:0 18px}.header{padding:0 18px}h1 span{display:block;margin:8px 0 0}}

/* Shared rhythm: keep product details together and remove stacked empty margins. */
.header { max-width: 920px; height: 88px; }
.wrap { max-width: 920px; margin: 32px auto 40px; }
h1 { font-size: 40px; margin-bottom: 24px; }
.layout { grid-template-columns: minmax(0,1fr) 352px; gap: 32px; }
.item { grid-template-columns: 112px minmax(0,1fr); gap: 18px; padding-bottom: 20px; align-items: start; }
.photo-frame { position: relative; margin: 0; width: 100%; aspect-ratio: 1 / 1; min-height: 0; align-self: start; }
.photo { position: absolute; inset: 0; width: 100%; height: 100%; border-radius: 6px; object-fit: contain; }
.item > div { display: grid; grid-template-columns: minmax(0,1fr) auto; grid-template-rows: auto auto 1fr; column-gap: 12px; row-gap: 4px; align-items: start; text-align: left; min-width: 0; min-height: 112px; }
.itemhead { display: contents; }
.item h2 { grid-column: 1; grid-row: 1; margin: 0; font-size: 21px; }
.item p:not(.muted) { grid-column: 1 / -1; grid-row: 2; margin: 0; font-size: 13px; color: var(--muted); }
.item .price { grid-column: 2; grid-row: 1; margin: 3px 0 0; line-height: 1.3; font-size: 15px; font-variant-numeric: tabular-nums; text-align: right; }
.item p.muted { order: 3; margin: 0; }
.controls { grid-column: 1 / -1; grid-row: 3; align-self: end; margin-top: 12px; gap: 16px; width: 100%; justify-content: flex-start; }
/* A lighter 32px outline inside the unchanged 44px touch targets. */
.qty { position: relative; border: 0; border-radius: 0; height: 44px; isolation: isolate; }
.qty::before { content: ''; position: absolute; inset: 6px 0; border: 1px solid var(--line); border-radius: 5px; pointer-events: none; z-index: -1; }
.qty button { font-size: 16px; height: 44px; min-height: 44px; padding: 0; }
.qty output { font-size: 14px; font-variant-numeric: tabular-nums; }
.gift { padding: 14px 0; }
.gift-preference { display: grid; grid-template-columns: auto 1fr; column-gap: 10px; align-items: start; margin-top: 16px; color: var(--ink); font-size: 13px; cursor: pointer; }
.gift-preference input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--cacao); }
.gift-preference small { grid-column: 2; color: var(--muted); font-size: 12px; line-height: 1.45; }
.continue { margin-top: 16px; }
.aside { padding: 22px; border: 0; border-radius: 8px; box-shadow: none; }
.aside h2 { margin-bottom: 16px; font-size: 24px; }
.bar { margin: 8px 0 16px; }
.delivery { padding: 5px 0; }
.rows { margin-top: 14px; }
.row { margin: 9px 0; }
.row:not(.total) { font-size: 14px; }
.coupon { margin-top: 4px; font-size: 13px; }
.total { margin-top: 10px; padding-top: 14px; }
.cta { margin-top: 16px; }
.secure { margin-top: 10px; font-size: 12px; }
.quiet, .gift small, .help { font-size: 13px; }
.status:empty { display: none; }
.gift-limit { display: flex; justify-content: space-between; gap: 16px; }
.cart-line + .cart-line { margin-top: 20px; }
.cart-line { border-bottom: 1px solid var(--line); }
.cart-line .item { border-bottom: 0; padding-bottom: 20px; }
.gift[hidden] { display: none; }
.cart-recommendation { margin: 0; padding: 18px 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; }
.cart-recommendation[hidden] { display: none; }
.cart-recommendation h3 { margin: 0 0 12px; font-family: Inter,sans-serif; font-size: 13px; font-weight: 400; color: var(--muted); }
.recommendation-row { display: grid; grid-template-columns: 72px minmax(0,1fr) auto; gap: 14px; align-items: center; }
.recommendation-row figure { margin: 0; }
.recommendation-row img { display: block; width: 72px; height: 72px; object-fit: contain; border: 1px solid #e5ded4; border-radius: 6px; }
.recommendation-info { min-width: 0; display: flex; flex-direction: column; }
.recommendation-row strong { display: block; font-family: 'Playfair Display',Georgia,serif; font-size: 18px; font-weight: 400; line-height: 1.2; }
.recommendation-info > span { display: block; font-size: 12px; color: var(--muted); margin: 5px 0 8px; line-height: 1.4; }
.recommendation-actions { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-top: auto; }
.recommendation-row b { font-size: 15px; font-weight: 500; font-variant-numeric: tabular-nums; }
.recommendation-row button { border: 0; background: transparent; border-radius: 4px; padding: 8px 4px; min-height: 44px; font-size: 13px; color: var(--cacao); white-space: nowrap; text-decoration: underline; text-underline-offset: 4px; }
.recommendation-row button:hover { background: #f0eae1; }
.recommendation-row button span { margin-left: 5px; }
.recommendation-status { margin: 12px 0; color: var(--cacao); font-size: 12px; }
.recommendation-status:empty { display: none; }
.recommendation-info > b { margin-top: auto; }
.recommendation-config { grid-column: 3; }
.recommendation-config button:not(:disabled):hover { background: #eee6da; }
.flavor-picker { min-width: 0; border-block: 1px solid var(--line); }
.flavor-picker > summary { min-height: 44px; gap: 12px; padding: 8px 2px; font-size: 13px; color: var(--cacao); }
.flavor-picker > summary:after { content: ''; flex: 0 0 6px; height: 6px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); margin: -4px 5px 0 0; }
.flavor-picker[open] > summary:after { content: ''; transform: rotate(225deg); margin-top: 4px; }
.flavor-choices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; padding: 3px 0 14px; }
.flavor-choices label { position: relative; cursor: pointer; min-width: 0; }
.flavor-choices input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.flavor-choices label > span { display: flex; align-items: center; justify-content: center; text-align: center; min-height: 44px; height: 100%; padding: 8px; border: 1px solid var(--line); border-radius: 5px; background: var(--paper); color: var(--ink); font-size: 12px; line-height: 1.4; transition: border-color .15s,background .15s; }
.flavor-choices label:hover > span { border-color: #ad9275; }
.flavor-choices input:checked + span { border-color: var(--cacao); background: #ebe1d3; color: var(--cacao); box-shadow: inset 0 0 0 1px var(--cacao); }
.flavor-choices input:focus-visible + span { outline: 2px solid var(--cacao); outline-offset: 3px; }
.item .item-format { grid-column: 1 / -1; grid-row: 2; margin: 0; font-size: 13px; color: var(--muted); }
.item-format .flavor-picker { margin-top: 6px; border-top: 0; }
.item-format .flavor-picker > summary { font-size: 12px; }
.item-format .flavor-choices { grid-template-columns: 1fr; }
.quick-flavor { position: fixed; inset: auto; margin: 0; width: min(280px,calc(100vw - 32px)); max-height: 300px; overflow: hidden; padding: 10px; border: 1px solid var(--line); border-radius: 9px; background: var(--paper); color: var(--ink); box-shadow: 0 10px 30px #38291f20; }
.quick-flavor:popover-open { display: flex; flex-direction: column; }
.quick-flavor-list { min-height: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #b9a48c transparent; }
.quick-flavor::backdrop { background: transparent; }
.quick-flavor-head { display: flex; flex-shrink: 0; align-items: center; justify-content: space-between; gap: 8px; padding-bottom: 6px; border-bottom: 1px solid var(--line); }
.quick-flavor-head h3 { font: 13px/1.4 Inter,sans-serif; margin: 0; }
.quick-flavor-head button { flex: 0 0 44px; border: 0; background: transparent; font-size: 22px; color: var(--muted); }
.quick-flavor-option { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 10px 8px; border: 0; border-radius: 4px; background: transparent; font-size: 13px; text-align: left; }
.quick-flavor-option span:last-child { color: var(--cacao); }
.quick-flavor-option:hover { background: #f2ece3; }
.quick-flavor-option:focus-visible { outline: 1px solid var(--cacao); outline-offset: -1px; background: #f2ece3; }
.aside fieldset.delivery { min-width: 0; margin: 0; padding: 0; border: 0; }
.delivery legend { width: 100%; padding: 0 0 8px; border: 0; font-size: 14px; font-weight: 500; }
.delivery-option { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 8px 10px; margin-bottom: 2px; border: 1px solid transparent; border-radius: 6px; cursor: pointer; transition: background .15s, border-color .15s; }
.delivery-option:hover { background: #f7f3ed; }
.delivery-option:has(input:checked) { border-color: #a28668; background: #f3eee6; }
.delivery-option:has(input:focus-visible) { outline: 2px solid var(--cacao); outline-offset: 2px; }
.delivery-option input { appearance: auto; accent-color: var(--cacao); flex: 0 0 15px; width: 15px; height: 15px; margin: 0; }
.delivery-copy { flex: 1; min-width: 0; font-size: 13px; line-height: 1.4; }
.delivery-copy small { display: block; font-size: 12px; color: var(--muted); margin-top: 2px; }
.delivery-cost { font-size: 13px; white-space: nowrap; color: var(--cacao); font-variant-numeric: tabular-nums; }
.delivery #deliverynote { margin: 8px 0 0; font-size: 12px; line-height: 1.5; white-space: pre-line; }
#shippingprogress { margin: 16px 0 4px; padding: 16px; border: 1px solid #dcc9a9; border-radius: 8px; background: #fbf6ea; }
#shippingprogress .shippingprogress-eyebrow { display: block; margin-bottom: 6px; color: var(--cacao); font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
#shippingprogress .progresscopy { display: grid; gap: 2px; color: var(--muted); font-size: 12px; }
#shippingprogress .progresscopy strong { color: var(--ink); font-size: 14px; font-weight: 650; }
#shippingprogress .bar { height: 6px; margin: 12px 0 0; background: #e6dccd; }
#shippingprogress .bar i { background: var(--cacao); }
#shippingprogress.is-earned { border-color: #b7c7a9; background: #f4f8ee; }
#shippingprogress.is-earned .shippingprogress-eyebrow { color: #49623c; }
#shippingprogress.is-earned .bar i { background: #5d7a4c; }
@media(max-width:360px) { .recommendation-row { grid-template-columns: 64px minmax(0,1fr) auto; gap: 10px; } .recommendation-row img { width: 64px; height: 64px; } .recommendation-row strong { font-size: 16px; } }
.undo-bar { display: flex; align-items: center; gap: 12px; padding: 12px 0; font-size: 13px; }
.undo-bar[hidden] { display: none; }
.undo-bar button { border: 0; background: none; text-decoration: underline; }
.scenario-links { display: inline-flex; gap: 12px; margin-left: 12px; }
#gift-count { font-variant-numeric: tabular-nums; white-space: nowrap; }
.help { margin-top: 12px; }
footer { width: calc(100% - 56px); max-width: 864px; }
@media (min-width: 901px) {
  .wrap { display: grid; grid-template-columns: minmax(0,1fr) 352px; column-gap: 32px; row-gap: 24px; grid-template-rows: auto 1fr; align-items: start; }
  .wrap > h1 { grid-column: 1; margin: 0; }
  .layout { display: contents; }
  .layout > section { grid-column: 1; grid-row: 2; }
  .aside { grid-column: 2; grid-row: 1 / 3; }
}
@media (max-width: 900px) {
  .header { height: 72px; }
  .steps { display: none; }
  .wrap { max-width: 520px; margin: 22px auto 28px; }
  h1 { font-size: 32px; margin-bottom: 20px; }
  .layout { grid-template-columns: 1fr; gap: 20px; }
  .item { grid-template-columns: 112px minmax(0,1fr); column-gap: 14px; row-gap: 0; padding-bottom: 16px; align-items: start; }
  .item > div { display: grid; min-width: 0; min-height: 112px; column-gap: 10px; }
  .itemhead { display: contents; }
  .photo { width: 100%; height: 100%; }
  .item h2 { grid-column: 1; grid-row: 1; font-size: 18px; margin: 0; }
  .item p:not(.muted) { grid-column: 1 / -1; grid-row: 2; font-size: 13px; margin: 0; }
  .item .price { grid-column: 2; grid-row: 1; margin: 3px 0 0; font-size: 14px; }
  .item p.muted { grid-column: 2; grid-row: 4; font-size: 12px; line-height: 1.4; }
  .controls { grid-column: 1 / -1; grid-row: 3; justify-content: flex-start; width: 100%; margin: 10px 0 0; flex-wrap: nowrap; gap: 12px; }
  .qty { width: 112px; flex-shrink: 0; justify-content: center; }
  .qty button { flex: 0 0 44px; }
  .qty output { width: 22px; }
  .quiet { min-width: 52px; text-align: left; }
  .gift { padding: 12px 0; }
  .aside { padding: 20px; position: static; }
  .aside h2 { margin-bottom: 14px; }
  .sticky .cta { margin-top: 0; }
  footer { width: calc(100% - 44px); max-width: 476px; margin-inline: auto; padding: 20px 0 96px; }
}
@media (max-width: 360px) {
  .wrap { padding-inline: 18px; }
  .item { grid-template-columns: 88px minmax(0,1fr); column-gap: 12px; }
  .item > div { display: grid; column-gap: 8px; }
  .photo { width: 100%; height: 100%; }
  .controls { width: 100%; margin-top: 8px; gap: 10px; }
  .item h2 { font-size: 18px; }
  .item .muted { font-size: 11px; }
  h1 { font-size: 30px; }
  h1 span { display: inline; margin-left: 8px; font-size: 11px; }
}

/* Integration-only semantics and states; visual baseline is the approved concept. */
& { background: var(--bg); color: var(--ink); font: 15px/1.55 Inter,sans-serif; padding: 0; }
& h1,& h2,& h3 { color: var(--ink); text-transform: none; letter-spacing: normal; }
& a { color: inherit; }
& .cta { color: #fffaf2; text-decoration: none; text-transform: none; letter-spacing: normal; }
& form { margin: 0; }
& .item h2 a { text-decoration: none; }
& .item h2 a:hover { text-decoration: underline; }
& .qty input { appearance: textfield; -moz-appearance: textfield; width: 26px; min-width: 0; height: 32px; margin: 0; padding: 0; background: transparent; border: 0; border-radius: 0; text-align: center; font-size: 14px; box-shadow: none; }
& .qty input::-webkit-inner-spin-button,& .qty input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
& .qty input:focus-visible { outline: 2px solid var(--cacao); outline-offset: 2px; }
& .item-format dl { margin: 0; font-size: 13px; }
& .item-format dt { font-weight: 400; display: inline; margin-right: 4px; }
& .item-format dd { display: inline; margin: 0; }
& .item-format dd::after { content: ''; display: block; }
& .item-format dd p { display: inline; font-size: inherit; }
& .price .amount { color: inherit; font: inherit; }
& .price { overflow-wrap: normal; }
& .row form { display: inline; }
& .row form button { margin-left: 6px; }
& .cart-notices { max-width: 864px; margin: 16px auto 0; padding-inline: 0; }
& .cart-notices:empty { display: none; }
& .woocommerce-error,& .woocommerce-message,& .woocommerce-info { margin: 0 0 12px; padding: 12px 16px; list-style: none; border: 1px solid var(--line); border-radius: 6px; background: var(--paper); color: var(--ink); font-size: 14px; }
& .woocommerce-error::before,& .woocommerce-message::before,& .woocommerce-info::before { display: none; }
& .woocommerce-error { border-color: #9c5d44; }
& .cart-toast { position:fixed; z-index:10000; top:max(12px,env(safe-area-inset-top)); left:50%; transform:translateX(-50%); display:flex; align-items:center; gap:12px; width:max-content; max-width:min(480px,calc(100vw - 24px)); padding:10px 10px 10px 18px; border:1px solid var(--line); border-radius:12px; background:var(--paper); color:var(--ink); box-shadow:0 8px 28px rgb(56 41 31 / 14%); font-size:14px; line-height:1.45; }
& .cart-toast[hidden] { display:none; }
& .cart-toast [role=status] { min-width:0; overflow-wrap:anywhere; }
& .cart-toast-close { display:grid; place-items:center; flex:0 0 44px; width:44px; min-height:44px; padding:0; border:0; border-radius:8px; background:transparent; color:var(--muted); font-size:24px; line-height:1; cursor:pointer; }
& .cart-toast-close:hover { background:var(--bg); color:var(--cacao); }
& .cart-toast-close:focus-visible { outline:2px solid var(--cacao); outline-offset:1px; }
& .cart-feedback:empty { display: none; }
& .cart-feedback { position: fixed; z-index: 9999; bottom: 88px; left: 50%; transform: translateX(-50%); width: max-content; max-width: calc(100vw - 32px); margin: 0; padding: 12px 16px; background: var(--paper); border: 1px solid var(--line); border-radius: 6px; font-size: 13px; }
& .sticky { z-index: 50; }
& .cart-skip { position: absolute; left: -9999px; }
& .cart-skip:focus { left: 16px; top: 12px; z-index: 100; background: var(--paper); padding: 12px; }
& footer { align-items: center; gap: 20px; }
& .cart-footer-brand { display: flex; align-items: center; gap: 18px; font-size: 12px; }
& .cart-footer-brand .logo { display: block; width: 96px; height: calc(96px * 76 / 249); flex-shrink: 0; }
& .footerlinks { align-items: center; flex-wrap: wrap; column-gap: 20px; row-gap: 0; font-size: 12px; }
& .footerlinks a { display: inline-flex; align-items: center; min-height: 44px; }
& .recommendation-info .amount { font: inherit; color: inherit; }
& .recommendation-link { display: inline-flex; min-height: 44px; align-items: center; font-size: 13px; color: var(--cacao); text-decoration: underline; }
& .empty .cta { max-width: 280px; }
& .empty h2 { margin: 0 0 12px; }
& .wrap.is-empty { display:block; max-width:640px; margin-block:48px 64px; }
& .wrap.is-empty .layout { display:block; }
& .empty { padding:24px 0; text-align:center; }
& .empty h1 { font-size:clamp(28px,4vw,38px); margin:0 0 12px; }
& .empty .cta { margin-inline:auto; }
& .is-empty .undo-bar { justify-content:center; }
& .coupon-error:empty { display:none; }
& .coupon-error .woocommerce-error { padding:10px 12px; margin:8px 0 0; font-size:13px; text-align:left; }
& .coupon input[aria-invalid=true] { border-color:#9c5d44; }
& .coupon input:focus-visible { outline:2px solid var(--cacao); outline-offset:2px; box-shadow:none; }
@media(max-width:900px) { & .qty input { font-size:16px; } }
& .coupon input,& .gift textarea { font-size: 16px; }
body.cart-enhanced & .quantity-fallback { display: none; }
body:not(.cart-enhanced) & .quick-flavor { position: static; display: block; max-height: none; width: auto; margin-top: 12px; }
body:not(.cart-enhanced) & [data-flavors-open] { display: none; }
/* Preserve approved type sizes against legacy header-wide mobile overrides. */
& .item h2 { font-size: 21px !important; }
& .aside h2 { font-size: 24px !important; }
@media(min-width:901px) { & .aside { top: 110px; } }
@media(max-width:900px) { & .item h2 { font-size: 18px !important; } }
@media(max-width:360px) { & h1 { font-size: 30px !important; } }
@media(max-width:900px) { & .cart-notices { max-width: 476px; margin: 16px auto 0; padding-inline: 22px; } }

}
