/* Cart layout owns its grid and scrolling; summary never overlays a line. */
#cart-dialog{inset:0 0 0 auto;margin:0;inline-size:min(34rem,100vw);max-inline-size:100vw;block-size:100dvh;max-block-size:100dvh;border:0;padding:0;overflow:hidden;background:var(--color-background);color:var(--color-text);}
#cart-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr);}
#cart-dialog .cart-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px;border-block-end:1px solid var(--color-border);background:var(--color-background);}
#cart-dialog .cart-dialog-heading h2{font:400 22px/1.3 var(--font-display);margin:0;letter-spacing:0;}
#cart-dialog .cart-dialog-heading button{font:400 12px/1.4 var(--font-sans);color:inherit;background:transparent;border:0;padding:8px;min-block-size:40px;min-inline-size:44px;display:flex;align-items:center;gap:8px;}
#cart-dialog iframe{display:block;inline-size:100%;block-size:100%;min-block-size:0;border:0;grid-row:2;grid-column:1;}
#cart-dialog [data-cart-loading],#cart-dialog [data-cart-load-error]{grid-row:2;grid-column:1;align-self:start;margin:0;padding:24px;font-size:14px;background:var(--color-background);z-index:1;}
#cart-dialog [hidden]{display:none;}
#cart-dialog[aria-busy=true] iframe{visibility:hidden;}
.cart-surface{min-inline-size:0;}
.cart-surface .cart-heading{min-inline-size:0;padding-block:0 16px;}
.cart-surface .cart-heading h1{font-size:clamp(1.6rem,3vw,2.2rem);margin-block:0 12px;}
.cart-surface .cart-heading p{margin:0;font:400 13px/1.5 var(--font-sans);}
.cart-surface .cart-demo-note{color:var(--color-text-muted);margin-block-start:4px;}
.cart-surface .cart-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.44fr);gap:32px;align-items:start;}
.cart-surface .cart-lines{min-inline-size:0;}
.cart-surface .cart-line{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px 16px;padding:20px 0;min-inline-size:0;border-block-end:1px solid var(--color-border);}
.cart-surface .cart-line__image{grid-column:1;grid-row:1/span 2;align-self:start;}
.cart-surface .cart-line__image .cms-editorial__media{margin:0;aspect-ratio:1;}
.cart-surface .cart-line__details{grid-column:2;min-inline-size:0;overflow-wrap:anywhere;}
.cart-surface .cart-line h2{font:400 18px/1.35 var(--font-display);letter-spacing:0;margin:0 0 6px;}
.cart-surface .cart-line__details>p{font:400 13px/1.5 var(--font-sans);margin:3px 0;}
.cart-surface .cart-line__sku{font-size:11px;color:var(--color-text-muted);}
.cart-surface .cart-line__details .cart-line__total{font-weight:500;}
.cart-surface .cart-line__form{grid-column:2;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-inline-size:0;margin:0;}
.cart-surface .cart-line__form .quantity-control{display:grid;grid-template-columns:36px 44px 36px;gap:0;border:1px solid var(--color-border);max-inline-size:100%;}
.cart-surface .quantity-control button{display:grid;place-items:center;min-inline-size:0;min-block-size:38px;padding:0;background:transparent;color:inherit;border:0;border-radius:0;font:400 18px var(--font-sans);}
.cart-surface .cart-line__form .quantity-control input{inline-size:44px;min-inline-size:0;max-inline-size:100%;min-block-size:38px;border:0;text-align:center;padding:0;font-size:14px;appearance:textfield;}
.cart-surface .quantity-control input::-webkit-inner-spin-button,.cart-surface .quantity-control input::-webkit-outer-spin-button{appearance:none;margin:0;}
.cart-surface .cart-line__form .cart-line__remove{padding:6px 0;min-block-size:40px;max-inline-size:100%;font:400 12px/1.4 var(--font-sans);background:transparent;border:0;color:inherit;text-decoration:underline;}
.cart-surface .cart-update-fallback{font-size:12px;padding:8px;min-block-size:40px;}
.cart-surface .cart-line__pending{flex-basis:100%;font:400 12px/1.4 var(--font-sans);}
.cart-surface .cart-summary{position:static;align-self:start;padding:20px;margin:0;border:1px solid var(--color-border);background:var(--color-surface);min-inline-size:0;}
.cart-surface .cart-summary h2{font:400 20px/1.3 var(--font-display);margin:0 0 16px;}
.cart-surface .cart-summary__amounts{margin:0 0 16px;}
.cart-surface .cart-summary__amounts>div{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;font:400 15px/1.5 var(--font-sans);}
.cart-surface .cart-summary dd{margin:0;}
.cart-surface .cart-summary .cart-checkout{display:block;inline-size:100%;text-align:center;margin:0;min-block-size:44px;padding:12px;}
.cart-surface .cart-full-link{display:block;text-align:center;padding:10px;font-size:13px;min-block-size:40px;}
.cart-surface .cart-summary>p{font:400 12px/1.5 var(--font-sans);margin-block:12px 0;}
.cart-surface .cart-empty{padding-block:24px;}
.cart-drawer-page{overflow:hidden;block-size:100dvh;}
.cart-drawer-page .skip-link{display:none;}
.cart-drawer-page .site-main{block-size:100dvh;min-block-size:0;padding:0;}
.cart-drawer-page .cart-surface{display:grid;grid-template-rows:auto minmax(0,1fr);block-size:100dvh;padding:12px 20px 0;min-block-size:0;}
.cart-drawer-page .cart-surface .cart-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:0;block-size:100%;min-block-size:0;align-items:stretch;}
.cart-drawer-page .cart-surface .cart-lines{overflow-y:auto;min-block-size:0;padding-block-end:16px;scroll-padding-block:16px;overscroll-behavior:contain;}
.cart-drawer-page .cart-surface .cart-summary{padding:16px 0 12px;border:0;border-block-start:1px solid var(--color-border);background:var(--color-background);margin:0;}
.cart-drawer-page .cart-surface .cart-summary h2{display:none;}
.cart-drawer-page .cart-surface .cart-line{grid-template-columns:80px minmax(0,1fr);gap:8px 12px;padding:16px 0;}
.cart-drawer-page .cart-surface .cart-heading{padding-block-end:8px;}
@media(max-width:47.99rem){.cart-surface .cart-layout{grid-template-columns:minmax(0,1fr);gap:24px;}.cart-surface .cart-line{grid-template-columns:80px minmax(0,1fr);gap:8px 12px;}}
@media(max-width:23rem){.cart-drawer-page .cart-surface{padding-inline:12px;}.cart-surface .cart-line,.cart-drawer-page .cart-surface .cart-line{grid-template-columns:64px minmax(0,1fr);gap:8px 10px;}}
/* Low-height/zoom fallback: the whole iframe document scrolls in natural order. */
@media(max-height:32rem){.cart-drawer-page{overflow:auto;block-size:auto;}.cart-drawer-page .site-main{block-size:auto;}.cart-drawer-page .cart-surface{display:block;block-size:auto;min-block-size:100dvh;}.cart-drawer-page .cart-surface .cart-layout{display:block;block-size:auto;}.cart-drawer-page .cart-surface .cart-lines{overflow:visible;}.cart-drawer-page .cart-surface .cart-summary{margin-block-start:16px;}}

.cart-surface,.cart-surface .cart-layout,.cart-surface .cart-lines{box-sizing:border-box;}
.cart-drawer-page .cart-surface .cart-layout{overflow:visible;}
.cart-surface .cart-line__form[aria-busy=true]{opacity:.65;}

.cart-surface .cart-summary dd{font:500 17px/1.5 var(--font-sans);overflow-wrap:anywhere;}
