/* Deals Commerce Closure V1: page-owned presentation only. */
.deal-card { grid-template-rows: auto 1fr; min-height: 426px; }
.deal-photo { aspect-ratio: 4 / 3; }
.deal-photo-button { position: relative; display: block; width: 100%; height: 100%; min-height: 0; padding: 0; border: 0; cursor: zoom-in; }
.deal-photo-button:focus-visible { outline: 3px solid var(--blue); outline-offset: -3px; }
.deal-photo-button img { --deal-preview-inset-x: 16px; --deal-preview-inset-y: 16px; position: absolute; top: var(--deal-preview-inset-y); right: var(--deal-preview-inset-x); bottom: var(--deal-preview-inset-y); left: var(--deal-preview-inset-x); display: block; width: calc(100% - var(--deal-preview-inset-x) - var(--deal-preview-inset-x)); height: calc(100% - var(--deal-preview-inset-y) - var(--deal-preview-inset-y)); max-width: calc(100% - var(--deal-preview-inset-x) - var(--deal-preview-inset-x)); max-height: calc(100% - var(--deal-preview-inset-y) - var(--deal-preview-inset-y)); object-fit: contain; object-position: center; }
.deal-photo-button.is-landscape img { --deal-preview-inset-x: 26px; --deal-preview-inset-y: 14px; }
.deal-photo-button.is-portrait img { --deal-preview-inset-x: 8px; --deal-preview-inset-y: 14px; }
.deal-body { grid-template-rows: auto auto minmax(3.9em, 1fr) auto auto auto; }
.deal-card-actions { margin-top: auto; }
.deal-cart-launcher { position: fixed; right: 18px; bottom: 76px; z-index: 31; display: inline-flex; min-height: 44px; align-items: center; gap: 8px; padding: 0 12px; border: 1px solid #1346a1; border-radius: 999px; background: #155eef; color: #fff; box-shadow: 0 10px 28px rgba(21, 94, 239, .28); font-weight: 800; }
.deal-cart-launcher svg { width: 18px; height: 18px; }
.deal-cart-launcher strong { display: grid; min-width: 22px; min-height: 22px; place-items: center; padding: 0 5px; border-radius: 999px; background: #fff; color: #155eef; font-size: .78rem; }
.deal-detail-panel { grid-template-columns: minmax(260px, .95fr) minmax(0, 1.05fr); max-width: 880px; }
.deal-cart-drawer.is-deal-detail { width: min(880px, calc(100vw - 36px)); max-height: min(82dvh, 760px); }
.deal-detail-image { min-height: 320px; padding: 0; border: 0; cursor: zoom-in; }
.deal-detail-copy p { white-space: pre-wrap; }
.deal-image-gallery { display: flex; flex-wrap: wrap; gap: 8px; }
.deal-image-gallery button { width: 58px; height: 58px; padding: 0; overflow: hidden; border: 2px solid var(--line); border-radius: 8px; background: #f8fafc; cursor: pointer; }
.deal-image-gallery button.is-active { border-color: var(--blue); box-shadow: 0 0 0 2px rgba(21, 94, 239, .18); }
.deal-image-gallery img { width: 100%; height: 100%; object-fit: contain; }
.deal-image-lightbox { position: fixed; inset: 0; z-index: 1210; display: grid; place-items: center; padding: 24px; background: rgba(15, 23, 42, .78); }
.deal-image-lightbox[hidden] { display: none; }
.deal-image-lightbox-panel { position: relative; display: grid; gap: 12px; width: min(920px, 100%); max-height: min(92dvh, 920px); padding: 18px; overflow: auto; border-radius: 14px; background: #fff; outline: none; }
.deal-image-lightbox-panel > img { display: block; width: 100%; max-height: min(72dvh, 720px); object-fit: contain; }
.deal-image-lightbox-close { position: absolute; top: 10px; right: 10px; z-index: 1; width: 40px; min-height: 40px; border: 1px solid var(--line); border-radius: 999px; background: #fff; font-size: 1.4rem; }
.deal-image-lightbox-controls { display: flex; justify-content: center; align-items: center; gap: 10px; color: var(--muted); font-size: .9rem; font-weight: 700; }
.deal-checkout-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 14px; margin: 0; }
.deal-checkout-summary div { display: flex; justify-content: space-between; gap: 10px; }
.deal-checkout-summary dt, .deal-checkout-summary dd { margin: 0; }
.deal-checkout-summary dd { font-weight: 800; }
@media (max-width: 760px) { .deal-checkout-summary { grid-template-columns: 1fr; } .deal-cart-launcher { right: auto; left: 12px; bottom: calc(74px + env(safe-area-inset-bottom, 0px) + 12px); z-index: 46; } .deal-cart-drawer { right: 12px; bottom: calc(74px + env(safe-area-inset-bottom, 0px) + 12px); left: 12px; width: auto; max-height: calc(100dvh - 122px - env(safe-area-inset-bottom, 0px)); } .deal-detail-panel { grid-template-columns: minmax(0, 1fr); } .deal-detail-image { min-height: min(56vw, 320px); } .deal-image-lightbox { padding: 12px; } .deal-image-lightbox-panel { max-height: calc(100dvh - 24px); padding: 12px; } .deal-image-lightbox-panel > img { max-height: 68dvh; } }

/* Location Windows remains inside the existing Pickup workspace and scroll
   owner; this is presentation-only and does not alter the mobile shell. */
[data-pickup-slot-scheduling] .pickup-windows-workspace,
[data-pickup-slot-scheduling] .pickup-window-manager,
[data-pickup-slot-scheduling] .pickup-window-existing { display: grid; gap: 14px; }
@media (max-width: 760px) { [data-pickup-slot-scheduling] .pickup-windows-workspace { padding-bottom: calc(88px + env(safe-area-inset-bottom)); } }
[data-pickup-slot-scheduling] .pickup-window-scope-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
[data-pickup-slot-scheduling] .pickup-window-scope-tabs button { min-height: 42px; border: 1px solid var(--line); border-radius: 8px; padding: 8px 12px; background: var(--white); color: var(--text); font-weight: 800; }
[data-pickup-slot-scheduling] .pickup-window-scope-tabs button[aria-selected="true"] { border-color: var(--blue); background: #eef5ff; color: var(--blue); }
[data-pickup-slot-scheduling] .pickup-window-form-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
@media (max-width: 760px) {
  [data-pickup-slot-scheduling] .pickup-slot-form { display: grid; gap: 12px; }
  [data-pickup-slot-scheduling] .pickup-slot-form label { display: grid; gap: 5px; min-width: 0; color: var(--muted); font-size: .82rem; font-weight: 800; }
  [data-pickup-slot-scheduling] .pickup-slot-form input,
  [data-pickup-slot-scheduling] .pickup-slot-form select,
  [data-pickup-slot-scheduling] > section > label select { width: 100%; min-width: 0; min-height: 42px; }
  [data-pickup-slot-scheduling] .pickup-slot-form__submit,
  [data-pickup-slot-scheduling] .pickup-window-form-actions > button { min-height: 42px; }
  [data-pickup-slot-scheduling] .pickup-window-summary dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-pickup-slot-scheduling] .pickup-slot-list li { grid-template-columns: minmax(0, 1fr) auto; }
  [data-pickup-slot-scheduling] .pickup-slot-list li > strong { grid-column: 1 / -1; overflow-wrap: anywhere; }
}
/* Shared Media Phase 3: contained editor only; the mobile shell remains unchanged. */
.shared-media-presentation-editor{box-sizing:border-box;position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:1rem;background:rgb(0 0 0/.6)}.shared-media-presentation-editor__panel{box-sizing:border-box;width:min(42rem,100%);max-height:calc(var(--bm-mobile-viewport-height,100vh) - 2rem);overflow:auto;background:#fff;border-radius:1rem;padding:1rem}.shared-media-presentation-editor__panel header,.shared-media-presentation-editor__panel footer{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.shared-media-presentation-editor__frame{aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;background:#f2f4f7;touch-action:none}.shared-media-presentation-editor__frame img{width:100%;height:100%;transition:transform .12s ease}.shared-media-presentation-editor__controls{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}@media(max-width:420px){.shared-media-presentation-editor{align-items:start;padding:.5rem}.shared-media-presentation-editor__panel{max-height:calc(var(--bm-mobile-viewport-height,100vh) - 1rem)}}

.shared-media-presentation-editor__panel header strong{font-size:1.15rem}.shared-media-presentation-editor__helper{margin:.5rem 0 1rem;color:var(--muted);line-height:1.45}.shared-media-presentation-editor__frame{border:1px solid var(--line);border-radius:.75rem}.shared-media-presentation-editor__controls{align-items:center;justify-content:space-between}.shared-media-presentation-editor__mode-group,.shared-media-presentation-editor__position-actions{display:flex;gap:.5rem}.shared-media-presentation-editor__mode-group .is-active{border-color:var(--brand);background:var(--brand);color:#fff}.shared-media-presentation-editor__zoom{display:flex;align-items:center;gap:.5rem;font-weight:700}.shared-media-presentation-editor__zoom input{width:min(12rem,35vw)}.shared-media-presentation-editor__status{min-height:1.4em;margin:.25rem 0 .75rem;color:var(--muted)}

@media(max-width:420px){.shared-media-presentation-editor__panel{padding:.875rem}.shared-media-presentation-editor__controls{align-items:stretch}.shared-media-presentation-editor__mode-group{width:100%}.shared-media-presentation-editor__mode-group button{flex:1}.shared-media-presentation-editor__zoom{width:100%;justify-content:space-between}.shared-media-presentation-editor__zoom input{width:min(16rem,70vw)}.shared-media-presentation-editor__panel footer{position:sticky;bottom:-.875rem;margin:0 -.875rem -.875rem;padding:.75rem .875rem;background:#fff;border-top:1px solid var(--line)}}
