.bundle-store-page {color-scheme:dark;font-family:Inter,"Segoe UI",Helvetica,Arial,sans-serif;background:#000;color:#f5f5f5}
:is(.bundle-store-page,.bundle-detail,.bundle-preview,.bundle-cart),:is(.bundle-store-page,.bundle-detail,.bundle-preview,.bundle-cart) * {box-sizing:border-box}
body.bundle-store-page {display:flex;flex-direction:column;margin:0;min-height:100dvh;background:#000}
body.bundle-store-page > :is(.site-header,footer) {flex:none}
body.bundle-store-page > .site-header {min-height:3.75rem}
.bundle-store-page,.bundle-detail,.bundle-preview {-webkit-user-select:none;user-select:none}
:is(input,textarea,[contenteditable="true"]) {-webkit-user-select:text;user-select:text}
.bundle-store-page main {flex:1;width:100%;max-width:none;margin:0 auto;padding:1rem clamp(1rem,4vw,4rem)}
.store-heading {display:flex;flex-wrap:wrap;gap:.35rem 1rem;align-items:baseline}
.store-heading h1 {font-size:clamp(1.45rem,2.5vw,2rem);letter-spacing:-.025em;margin:0;flex:none}
.store-heading p,#bundle-store-status {color:#aaa;line-height:1.5;font-size:.8rem}.store-heading p {margin:0}
.bundle-store-grid {display:grid;grid-template-columns:repeat(auto-fill,min(100%,15rem));align-items:start;gap:1rem;margin-top:.85rem}
.bundle-store-page #bundle-store-grid {grid-template-columns:repeat(auto-fill,min(100%,14.25rem))}
/* Use the Store's available width for six cards, including scaled desktop viewports. */
@media(min-width:96rem) {.bundle-store-page #bundle-store-grid {grid-template-columns:repeat(6,minmax(0,1fr))}}
.bundle-store-empty {max-width:40rem;margin:4rem auto;text-align:center;padding:2rem;color:#aaa}
.bundle-store-empty > span {font-size:2.5rem}.bundle-store-empty h2 {font-size:1.4rem;color:#f5f5f5}.bundle-store-empty p {line-height:1.7}.bundle-store-empty a {display:inline-block;margin-top:1rem;color:#fff}
[hidden] {display:none!important}
#phone-checkout button, #phone-checkout a {font:inherit;display:block;min-height:34px;padding:.45rem .65rem;border:1px solid #ffffff38;border-radius:.25rem;background:#101010;color:#f5f5f5;text-align:center;cursor:pointer}
:is(.bundle-store-page,.bundle-detail,.bundle-preview,.bundle-cart) button:disabled {opacity:.55;cursor:default}
:is(.bundle-store-page,.bundle-detail,.bundle-preview,.bundle-cart) button:focus-visible {outline:2px solid #fff;outline-offset:3px}
#phone-checkout {--account-text:#f5f5f5;--account-boundary:#444;--account-muted:#aaa}
#bundle-cart-toggle {display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font:inherit;font-weight:750;min-height:36px;padding:.4rem .65rem;border:1px solid #666;border-radius:.3rem;background:#fff;color:#000;cursor:pointer}
.bundle-cart {position:fixed;right:1.5rem;top:4rem;z-index:20;width:min(20rem,calc(100vw - 2rem));max-height:calc(100dvh - 6rem);overflow:auto;padding:.8rem;border:1px solid #444;border-radius:.4rem;background:rgb(0 0 0 / 80%);box-shadow:0 10px 32px #0008;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.bundle-cart h2 {display:flex;gap:.6rem;align-items:center;font-size:1rem;margin:0 2rem .6rem 0}.bundle-cart h2 span {border:1px solid #555;border-radius:1rem;padding:.15rem .5rem;font-size:.7rem}
.bundle-cart .bundle-cart-close {position:absolute;right:.35rem;top:.2rem;border:0;background:transparent;font-size:1.5rem}
.bundle-cart ul {margin:.4rem 0;padding:0;list-style:none}.bundle-cart-row {display:flex;justify-content:space-between;align-items:center;gap:.65rem;padding:.4rem 0;border-bottom:1px solid #282828}
.bundle-cart p,.bundle-cart a {line-height:1.4;font-size:.75rem}.bundle-cart p {margin:.5rem 0}.bundle-cart a {display:block;margin-top:.55rem;color:#fff}.bundle-cart .bundle-price span {font-size:1.1rem;color:#fff;margin-left:.6rem}
.bundle-cart-row {font-size:.8rem}.bundle-cart-row button {font-size:.72rem}#bundle-cart-note {font-size:.72rem;color:#aaa}#bundle-cart-checkout {width:100%}
.bundle-cart button,.bundle-detail button,.bundle-preview button {font:inherit;min-height:34px;padding:.4rem .65rem;border:1px solid #555;border-radius:.25rem;background:#151515;color:#fff;cursor:pointer}
.bundle-cart button {min-height:30px;padding:.3rem .5rem;font-size:.75rem}
#bundle-cart-checkout {background:#fff;color:#000;font-weight:650}
.bundle-detail,.bundle-preview {background:rgb(0 0 0 / 80%);backdrop-filter:blur(22px);color:#f5f5f5;border:1px solid #ffffff30;border-radius:.5rem;padding:.75rem 1.4rem 1rem;overscroll-behavior:contain}
.bundle-detail {position:fixed;width:min(76rem,96vw);max-height:92dvh}
.bundle-preview {position:fixed;inset:auto;margin:0;padding:0;border:0;border-radius:0;max-width:none;max-height:none;overflow:hidden}
.bundle-preview .bundle-close {position:absolute;top:.4rem;right:.4rem;margin:0;font-size:.75rem}
:is(.bundle-detail,.bundle-preview)::backdrop {background:#0009;backdrop-filter:blur(6px)}.bundle-close {display:block;position:sticky;top:0;z-index:6;margin:0 0 .5rem auto;background:#000e!important}
#bundle-detail-close {margin-bottom:-34px}
:is(#bundle-detail-close,.bundle-gallery-pages button) {height:34px;min-height:34px;padding:.4rem .7rem;font-size:.75rem;font-weight:650;line-height:1.2;background:#151515;color:#fff;white-space:nowrap}
.bundle-detail-heading {display:grid;grid-template-columns:minmax(8rem,12rem) 1fr;gap:1rem;align-items:start;margin-bottom:.75rem}
#bundle-detail-cover {height:12rem;overflow:hidden;border-radius:.25rem}
#bundle-detail-cover img {display:block;width:100%;height:100%;object-fit:cover;object-position:center}.bundle-detail p {color:#bbb;line-height:1.6}
.bundle-detail-copy {min-width:0;padding-right:9rem}.bundle-detail-heading h2 {margin:0 0 .2rem;font-size:1.4rem;line-height:1.2;letter-spacing:-.025em}.bundle-detail-heading p {margin:.2rem 0;font-size:.8rem;line-height:1.4}.bundle-detail-heading .bundle-ownership {margin:.5rem 0 .4rem}.bundle-detail-heading .bundle-price {color:#fff;font-size:1.2rem;font-weight:750}
.bundle-detail-heading .bundle-store-actions {display:flex;flex-direction:column;gap:.3rem;margin-top:.3rem;max-width:11rem}
.bundle-detail-heading .bundle-store-actions button {background:#fff;color:#000;border-color:#ddd;min-height:34px;font-size:.75rem;line-height:1.2;padding:.4rem .65rem;font-weight:750}
.bundle-gallery {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem}
.bundle-gallery .bundle-thumbnail {max-width:174px;padding:0;border:0;border-radius:.2rem;font-size:.67rem;background:transparent;display:flex;flex-direction:column;align-self:start;justify-self:center;gap:.4rem;text-align:left;transition:filter .18s ease,box-shadow .18s ease,transform .18s ease}
.bundle-thumbnail:hover:not(:disabled) {filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 0 18px #ffffff18}
.bundle-thumbnail {width:100%}.bundle-thumbnail img {display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center}.bundle-thumbnail span {color:#fff;font-size:.65rem;line-height:1.4}
.bundle-gallery-pages {display:flex;justify-content:space-between;gap:1rem;margin-top:.85rem}
.bundle-hover {position:absolute;pointer-events:none;padding:0;background:#000;box-shadow:0 12px 60px #000;z-index:5;overflow:hidden}
.bundle-hover img,#bundle-preview-image img {display:block;width:100%;height:100%;object-fit:cover;object-position:center}
#bundle-preview-image {width:100%;height:100%}
/* Manual popovers render in the browser top layer, outside the panel's fixed
   containing block. Geometry is viewport-only, including from the first frame. */
.bundle-hover,.bundle-preview {position:fixed;inset:auto;left:50vw;top:50vh;transform:translate(-50%,-50%);margin:0;padding:0;border:0;max-width:none;max-height:none;width:min(20.4rem,calc(100vw - 2rem),calc(80vh - 1.6rem));height:min(25.5rem,calc(100vh - 2rem),calc(125vw - 2.5rem));transition:none;box-shadow:0 12px 60px #000}
.bundle-preview::backdrop {background:transparent;backdrop-filter:none;pointer-events:none}
@supports(height:100dvh) {
  .bundle-hover,.bundle-preview {top:50dvh;width:min(20.4rem,calc(100vw - 2rem),calc(80dvh - 1.6rem));height:min(25.5rem,calc(100dvh - 2rem),calc(125vw - 2.5rem))}
}
#bundle-preview-image {position:relative;overflow:hidden}
#bundle-preview-image img {-webkit-user-drag:none}
.bundle-loupe {position:absolute;pointer-events:none;border-radius:50%;outline:1px solid #ffffff85;outline-offset:-1px;box-shadow:0 3px 16px #0009}
@media(max-width:60rem) {.bundle-gallery {grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:45rem) {.bundle-gallery {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:40rem) {.bundle-detail {padding:.65rem .8rem 1rem}.bundle-detail-heading {grid-template-columns:6.5rem minmax(0,1fr);gap:.75rem}#bundle-detail-cover {height:8rem}.bundle-detail-copy {padding-right:0;padding-top:2.6rem}.bundle-detail-heading h2 {font-size:1.15rem}.bundle-detail-heading p {font-size:.72rem}.bundle-cart {right:1rem;top:4.3rem;padding:.75rem}.bundle-hover {display:none}}
@media(max-width:30rem) {.bundle-gallery {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce) {.bundle-store-actions button,.bundle-thumbnail {transition:none}}
@media(max-width:40rem) {.store-heading {gap:.35rem .75rem}.bundle-store-page main {padding-top:1rem}}

/* Shared controls inherit the landing page's family and neutral treatment. */
.bundle-cart-icon {width:1.1rem;height:1.1rem;flex:none}
.bundle-detail,.bundle-preview,.bundle-cart {font-family:Inter,"Segoe UI",Helvetica,Arial,sans-serif}
#bundle-gallery-status {font-size:.75rem;line-height:1.45;margin:.5rem 0 .7rem}
#bundle-cart-badge {font-size:.7rem;line-height:1;min-width:.65rem;text-align:center}
.bundle-gallery-pages button:hover:not(:disabled),.bundle-close:hover {background:#222}
.bundle-gallery-pages button,.bundle-close {transform:none;transition:background-color .16s ease,border-color .16s ease}
.bundle-gallery-pages button:is(:hover,:active,:focus-visible),.bundle-close:is(:hover,:active,:focus-visible) {transform:none}
body:has(.bundle-detail[open]) {overflow:hidden}
.bundle-sales-choices {display:flex;gap:.4rem;flex-wrap:wrap;margin:.5rem 0}
.bundle-individual-card {display:grid;gap:.4rem;min-width:0;background:#111;border:1px solid #444;border-radius:.5rem;padding:.55rem;color:#ddd;font-size:.8rem}
.bundle-individual-card img {width:100%;height:120px;object-fit:contain}
.bundle-individual-card strong {overflow-wrap:anywhere}
.bundle-image-detail {background:#101010;color:#dedede;border:1px solid #666;border-radius:.65rem;padding:1rem;width:min(90vw,550px);max-height:85vh;overflow:auto;box-sizing:border-box}
.bundle-image-detail::backdrop {background:#000b}
.bundle-image-detail img {width:100%;max-height:48vh;object-fit:contain;display:block;margin:.6rem 0}
.bundle-image-detail :is(button,a) {background:#222;color:#ddd;border:1px solid #666;border-radius:.3rem;padding:.5rem .7rem;margin:.2rem;font:inherit;font-size:.8rem}
.bundle-image-detail h2 {font-size:1.1rem;overflow-wrap:anywhere}
@media(max-width:40rem) {
  :is(#bundle-detail-close,.bundle-gallery-pages button) {height:38px;min-height:38px}
  #bundle-detail-close {margin-bottom:-38px}
  .bundle-detail-copy {padding-top:2.8rem}
}
