/* Shared commerce controls; preserve each shop's existing page design. */
.sticker-forge-page { --pf-cream:#eee7d7;--pf-cream-dim:#c9c0ae;--pf-ink:#090a0b;--pf-panel:#17191b;--pf-steel:#aeb3b6;--pf-gold:#b99658;--pf-line:rgba(238,231,215,.2);--pf-display:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;--pf-mono:'Courier New',monospace;--pf-red:#a42925; }
.sticker-forge-page [data-cart-shell],.sticker-forge-page [data-cart-shell] * { box-sizing:border-box; }
.sticker-forge-page .pf-cart-drawer { color:var(--pf-cream); }
.sticker-forge-page .pf-cart-drawer a { color:inherit; }
.pf-quantity { display:flex;align-items:center;justify-content:center;gap:12px;margin:12px 0; }
.pf-quantity button { width:44px;height:44px;border:1px solid var(--pf-line);color:var(--pf-cream);background:#17191b;cursor:pointer;font-size:20px; }
.pf-quantity button:disabled { opacity:.45;cursor:default; }
.pf-cart-note { font-size:13px;line-height:1.5; }
.pf-cart-drawer { max-height:100dvh; }
.pf-cart-footer { position:static; }
.ef-checkout { max-width:1180px;margin:0 auto;padding:48px 24px 100px; }
.ef-checkout h1 { font-family:var(--pf-display);font-size:clamp(48px,7vw,84px);text-transform:uppercase;margin:10px 0 24px; }
.ef-checkout h2 { font-family:var(--pf-display);font-size:30px;letter-spacing:.04em; }
.ef-checkout-grid { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:start;margin-top:32px; }
.ef-checkout fieldset { border:0;padding:0;margin:0 0 24px;min-width:0; }
.ef-checkout legend { font-size:22px;margin-bottom:24px;font-weight:bold; }
.ef-checkout label { display:block;text-align:left;margin-bottom:18px;line-height:1.5;font-size:16px; }
.ef-checkout label span,.ef-help { color:var(--pf-steel); }
.ef-checkout input,.ef-checkout select { display:block;width:100%;min-height:48px;margin-top:6px;padding:12px;border:1px solid var(--pf-line);border-radius:0;background:#111315;color:var(--pf-cream);font:inherit;font-size:16px; }
.ef-checkout :focus-visible { outline:2px solid var(--pf-gold);outline-offset:3px; }
.ef-checkout input:disabled,.ef-checkout select:disabled { opacity:.65; }
.ef-field-row { display:grid;grid-template-columns:1fr 1fr;gap:16px; }
.ef-summary { padding:24px;border:1px solid var(--pf-line);background:#111315;min-width:0; }
.ef-summary-item { display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--pf-line);padding:16px 0;text-align:left; }
.ef-summary-item p { margin:6px 0;color:var(--pf-steel);font-size:14px; }
.ef-summary-item>strong { white-space:nowrap; }
.ef-summary dl>div { display:flex;justify-content:space-between;gap:16px;margin:16px 0; }
.ef-summary dd { margin:0;text-align:right; }
.ef-total { padding-top:20px;border-top:1px solid var(--pf-line);font-weight:bold;font-size:22px; }
.ef-sandbox { border:1px solid var(--pf-gold);padding:14px;color:var(--pf-cream);background:#211d13;font-size:14px;line-height:1.5; }
.ef-help { font-size:14px;line-height:1.6; }
#checkout-status { min-height:24px;line-height:1.5; }
.ef-checkout .pf-button { width:100%;margin:12px 0; }
.ef-checkout button:disabled { opacity:.5;cursor:not-allowed; }
.ef-checkout [hidden] { display:none!important; }
#payment-element { margin:24px 0; }
.sticker-card .pf-button { margin:12px 0;min-height:48px;width:100%;font-size:14px; }
.ef-sticker-cart { position:sticky;top:10px;z-index:100;margin:12px auto;padding:12px 20px;background:#111315;color:#eee7d7;border:1px solid #b99658;cursor:pointer; }
.ef-sticker-note { color:#eee7d7;font-size:16px;line-height:1.5; }
@media(max-width:760px){.ef-checkout-grid{grid-template-columns:minmax(0,1fr);gap:24px}.ef-summary{grid-row:1}.ef-checkout{padding:30px 16px 70px}.ef-summary{padding:18px}.ef-field-row{gap:12px}.ef-summary-item{gap:12px}}
