:root{--ink:#042663;--mid:#092562;--night:#020b24;--donut:#04affb;--cyan:#5edeff;--pink:#ff00dd;--text:#132344;--muted:#5d6b82;--line:#dce9fb;--shadow:0 24px 70px rgba(3,18,68,.22);--soft:0 16px 44px rgba(4,38,99,.12);--max:1220px;--radius:28px}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:#fbfdff;line-height:1.5}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;background:#fff;color:#000;padding:.75rem;z-index:999}.site-header{position:sticky;top:0;z-index:50;background:rgba(2,11,36,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(94,222,255,.22)}.nav{max-width:var(--max);margin:auto;display:flex;align-items:center;gap:1rem;padding:.55rem 1rem}.brand img{width:86px;height:86px;object-fit:contain}.menu{display:flex;align-items:center;gap:.25rem;margin-left:auto}.menu a{color:#d9ecff;font-weight:900;padding:.7rem .85rem;border-radius:999px}.menu a:hover,.menu a[aria-current=page]{background:rgba(94,222,255,.16);color:#fff}.nav-actions{margin-left:.5rem}.mobile-toggle{display:none;background:#fff;color:var(--ink);border:0;border-radius:999px;padding:.65rem .9rem;font-weight:1000}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:0;border-radius:999px;padding:.9rem 1.15rem;font-weight:1000;cursor:pointer;transition:.18s transform,.18s filter}.btn:hover{transform:translateY(-3px);filter:saturate(1.08)}.btn-primary,.btn-shop{background:linear-gradient(135deg,var(--pink),#ff73ef);color:#fff;box-shadow:0 16px 36px rgba(255,0,221,.26)}.btn-blue{background:linear-gradient(135deg,var(--cyan),var(--donut));color:var(--ink);box-shadow:0 16px 36px rgba(4,175,251,.22)}.btn-dark{background:var(--ink);color:#fff;box-shadow:0 16px 36px rgba(4,38,99,.22)}.btn-light{background:#fff;color:var(--ink);box-shadow:0 12px 28px rgba(255,255,255,.12)}.mini-cta{display:flex;gap:.75rem;flex-wrap:wrap}.eyebrow{display:inline-flex;align-items:center;gap:.45rem;padding:.38rem .72rem;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);font-weight:1000;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}.eyebrow.dark,.tag-navy{background:var(--ink)!important;border-color:#021a48!important;color:#fff!important}.hero-v13{position:relative;overflow:hidden;color:#fff;background:linear-gradient(90deg,rgba(2,11,36,.82),rgba(4,38,99,.58),rgba(4,38,99,.28)),url("../img/ukge-hitl-hero-wide.jpg") center center/cover no-repeat}.hero-v13:before,.page-hero-v13:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 76%,rgba(255,0,221,.24),transparent 28%),linear-gradient(115deg,transparent 0 58%,rgba(255,255,255,.08) 58% 58.35%,transparent 58.35%)}.hero-inner-v13{position:relative;z-index:1;max-width:var(--max);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:3rem;align-items:center;padding:6.3rem 1rem 5rem;min-height:720px}.hero-v13 h1,.page-hero-v13 h1{font-size:clamp(3rem,7vw,6.3rem);line-height:.88;letter-spacing:-.075em;margin:1rem 0;font-weight:1000}.hero-v13 p{font-size:1.2rem;color:#e4f5ff;max-width:720px}.hero-badges,.trust-mini{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1.3rem}.hero-badges span,.trust-mini span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:.45rem .7rem;font-weight:900;color:#fff}.hero-panel{background:rgba(2,11,36,.55);border:1px solid rgba(255,255,255,.18);border-radius:36px;padding:2rem;box-shadow:var(--shadow);backdrop-filter:blur(10px)}.hero-panel img{max-width:260px;margin:auto}.hero-panel h2{font-size:2rem;margin:1rem 0 .5rem}.section{padding:5rem 1rem}.section.alt{background:linear-gradient(180deg,#e9f9ff,#fff)}.container{max-width:var(--max);margin:auto}.section-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.8rem}.section-head h2{font-size:clamp(2.1rem,4.7vw,4.2rem);line-height:.95;letter-spacing:-.055em;margin:0}.section-head p{max-width:780px;color:var(--muted);margin:.6rem 0 0}.grid{display:grid;gap:1.25rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.promo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.promo-card{display:flex;flex-direction:column;align-items:stretch;background:#04affb;color:#fff;overflow:hidden;border-radius:32px;box-shadow:var(--soft);transition:.2s transform,.2s box-shadow}.promo-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.promo-card-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#dfefff}.promo-card-media img{width:100%;height:100%;object-fit:cover}.promo-card .content{padding:1.15rem 1.2rem 1.25rem;background:#04affb}.promo-card h3{font-size:1.7rem;line-height:1.03;margin:.35rem 0 .45rem;color:#fff}.promo-card p{margin:0 0 .85rem;color:#fff}.promo-card .arrow-link{color:#fff;font-weight:1000}.page-hero-v13{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 82% 12%,rgba(255,0,221,.28),transparent 28%),linear-gradient(135deg,#020b24,#042663 64%,#092562);padding:4.5rem 1rem 3.5rem}.page-hero-v13 .container{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:2rem;align-items:center}.page-hero-v13 p{color:#dceeff;font-size:1.13rem}.breadcrumb{color:#bcdcff;font-weight:900}.hero-product-frame{background:#fff;border-radius:34px;padding:1rem;box-shadow:var(--shadow);transform:rotate(2deg)}.hero-banner-img{padding:0;overflow:hidden;transform:none;background:#fff}.hero-banner-img img{width:100%;height:100%;object-fit:cover;border-radius:34px}.feature,.service-card,.form-card,.buy-box,.gallery-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--soft);padding:1.25rem;overflow:hidden}.service-card{display:flex;flex-direction:column;gap:.7rem}.service-card h3,.feature h3{font-size:1.45rem;line-height:1.05;margin:.5rem 0}.service-card p,.feature p{color:var(--muted)}.feature-icon{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--cyan),var(--pink));display:grid;place-items:center;color:#fff;font-weight:1000}.split-panel{display:grid;grid-template-columns:.85fr 1fr;gap:2rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:36px;padding:1.4rem;box-shadow:var(--soft)}.product-detail{display:grid;grid-template-columns:minmax(320px,.88fr) minmax(0,1.1fr);gap:2rem;align-items:start}.gallery-card{position:sticky;top:116px;background:linear-gradient(135deg,#fff,#e9f9ff)}.banner-gallery .main-product-img img{width:100%;border-radius:24px}.buy-box h1{font-size:clamp(2.3rem,4.8vw,4.8rem);line-height:.9;letter-spacing:-.06em;margin:.5rem 0 1rem}.badge-row{display:flex;gap:.45rem;flex-wrap:wrap}.badge-row span{display:inline-flex;border-radius:999px;padding:.28rem .58rem;background:#edf8ff;color:var(--ink);font-weight:1000;font-size:.72rem}.reassurance{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin-top:1rem}.reassurance span{background:#f4fbff;border:1px solid var(--line);border-radius:14px;padding:.65rem;text-align:center;font-weight:900;color:var(--ink)}.filterbar{display:flex;gap:.6rem;flex-wrap:wrap;margin:0 0 1.4rem}.filterbar a{border:1px solid #cfe0f6;background:#fff;border-radius:999px;padding:.72rem 1rem;font-weight:1000}.filterbar a.active{background:var(--ink);color:#fff}.form-card label{display:block;font-weight:900;margin:.75rem 0;color:var(--ink)}input,textarea,select{width:100%;border:1px solid #cfe0f6;border-radius:16px;padding:.9rem 1rem;font:inherit;margin-top:.35rem}fieldset{border:1px solid #cfe0f6;border-radius:18px;padding:1rem;margin:1rem 0}legend{font-weight:1000;color:var(--ink)}.checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.35rem}.checkbox-grid label{margin:.2rem 0;font-weight:700}.checkbox-grid input{width:auto;margin-right:.35rem}.tag-cloud{display:flex;flex-wrap:wrap;gap:.5rem}.tag-cloud span{background:var(--ink);color:#fff;border-radius:999px;padding:.42rem .7rem;font-weight:900}.tick-list{padding-left:1.2rem}.tick-list li{margin:.45rem 0}.notice{border-radius:18px;padding:1rem;margin-bottom:1rem;font-weight:900}.notice.success{background:#e5fff1;border:1px solid #9be4bd;color:#064b25}.notice.error{background:#fff0f0;border:1px solid #ffb4b4;color:#7d1010}.social-card:hover{transform:translateY(-4px)}.site-footer{background:#020b24;color:#c8dcff;padding:3.5rem 1rem 1rem}.footer-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:2rem}.site-footer img{max-width:240px}.site-footer h3{color:#fff}.site-footer a{display:block;color:#c8dcff;margin:.4rem 0}.fineprint{max-width:var(--max);margin:2rem auto 0;border-top:1px solid rgba(255,255,255,.14);padding-top:1rem;color:#9db6e5;font-size:.9rem}@media(max-width:980px){.hero-inner-v13,.page-hero-v13 .container,.product-detail,.split-panel{grid-template-columns:1fr}.promo-grid,.grid-3,.grid-2,.reassurance{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.mobile-toggle{display:inline-flex;margin-left:auto}.menu{position:absolute;left:1rem;right:1rem;top:92px;background:#06132c;border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:.75rem;display:none;flex-direction:column;align-items:stretch}.menu.open{display:flex}.nav-actions{display:none}.gallery-card{position:static}.hero-inner-v13{min-height:auto;padding:4rem 1rem}.checkbox-grid{grid-template-columns:1fr}}@media(max-width:620px){.hero-v13 h1,.page-hero-v13 h1{font-size:3rem}.section{padding:3.2rem 1rem}.footer-grid{grid-template-columns:1fr}.brand img{width:72px;height:72px}.reassurance{grid-template-columns:1fr}}


/* v1.1 deployment refinements */
.hero-v13{
  background:
    linear-gradient(90deg, rgba(2,11,36,.86) 0%, rgba(4,38,99,.64) 38%, rgba(4,38,99,.32) 68%, rgba(2,11,36,.45) 100%),
    radial-gradient(circle at 22% 72%, rgba(255,0,221,.22), transparent 26%),
    radial-gradient(circle at 78% 24%, rgba(4,175,251,.18), transparent 28%),
    url("../img/ukge-hitl-hero-wide.jpg") center center / cover no-repeat !important;
}
.hero-v13:before{
  background:
    linear-gradient(115deg, transparent 0 58%, rgba(255,255,255,.08) 58% 58.35%, transparent 58.35%),
    radial-gradient(circle at 14% 30%, rgba(255,255,255,.08) 0 9px, transparent 10px),
    radial-gradient(circle at 90% 20%, rgba(255,0,221,.18) 0 8px, transparent 9px);
}
.hero-panel-public{
  background:rgba(2,11,36,.66);
}
.hero-panel-public img{
  max-width:240px;
  background:#fff;
  border-radius:24px;
  padding:14px;
}
.promo-card-media{
  background:#031844;
}
.promo-card-media img{
  opacity:1;
  filter:none;
}
.promo-card .content{
  min-height:178px;
}
.promo-card h3,
.promo-card p,
.promo-card .arrow-link{
  color:#fff !important;
}
.promo-card .eyebrow{
  background:#042663 !important;
  color:#fff !important;
  border-color:#021a48 !important;
}
.page-hero-v13 .hero-product-frame img,
.hero-banner-img img{
  background:#fff;
}
@media(max-width:980px){
  .hero-v13{
    background:
      linear-gradient(180deg, rgba(2,11,36,.92) 0%, rgba(4,38,99,.78) 54%, rgba(2,11,36,.84) 100%),
      url("../img/ukge-hitl-hero-wide.jpg") center center / cover no-repeat !important;
  }
}


/* v1.2 real banner asset update */
.promo-card-media img,
.hero-banner-img img,
.banner-gallery .main-product-img img,
.split-panel > img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.split-panel > img{
  aspect-ratio:16/9;
  border-radius:24px;
  background:#031844;
}
.promo-card-media{
  aspect-ratio:16/9;
}
.promo-card .content{
  background:#04affb;
}
.promo-card .eyebrow{
  background:#042663 !important;
  color:#fff !important;
  border-color:#021a48 !important;
}
.hero-panel-public h2{
  color:#fff;
}


/* v1.3 admin area */
body:has(.admin-shell){
  background:#eef6ff;
}
.admin-hero{
  min-height:330px;
}
.admin-login-wrap{
  max-width:620px;
}
.admin-login-card{
  padding:2rem;
}
.admin-login-card h2{
  margin-top:0;
}
.admin-shell{
  min-height:calc(100vh - 104px);
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  background:#eef6ff;
}
.admin-sidebar{
  background:#020b24;
  color:#fff;
  padding:1.25rem;
  min-height:calc(100vh - 104px);
  position:sticky;
  top:104px;
  align-self:start;
}
.admin-brand{
  display:flex;
  align-items:center;
  gap:.8rem;
  font-size:1.3rem;
  font-weight:1000;
  margin-bottom:1.5rem;
}
.admin-brand img{
  width:70px;
  height:70px;
  background:#fff;
  border-radius:18px;
  padding:6px;
}
.admin-nav{
  display:grid;
  gap:.45rem;
  margin-bottom:2rem;
}
.admin-nav a{
  border-radius:14px;
  padding:.85rem 1rem;
  font-weight:900;
  color:#cfe8ff;
}
.admin-nav a:hover,
.admin-nav a.active{
  background:#04affb;
  color:#042663;
}
.admin-logout{
  width:100%;
}
.admin-main{
  padding:2rem;
  min-width:0;
}
.admin-topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  margin-bottom:1.5rem;
}
.admin-topbar h1{
  margin:.35rem 0 0;
  font-size:clamp(2.3rem,4vw,4.5rem);
  line-height:.9;
  color:#042663;
}
.admin-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin-bottom:1.4rem;
}
.admin-stats a{
  background:#fff;
  border:1px solid #d8e8fa;
  border-radius:24px;
  padding:1.3rem;
  box-shadow:0 12px 32px rgba(4,38,99,.09);
}
.admin-stats strong{
  display:block;
  font-size:2.6rem;
  line-height:1;
  color:#042663;
}
.admin-stats span{
  display:block;
  margin-top:.45rem;
  color:#5d6b82;
  font-weight:900;
}
.admin-panel{
  background:#fff;
  border:1px solid #d8e8fa;
  border-radius:28px;
  padding:1.4rem;
  box-shadow:0 18px 46px rgba(4,38,99,.1);
}
.admin-panel h2{
  margin-top:0;
  font-size:2rem;
  color:#042663;
}
.admin-panel-head{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:end;
}
.admin-record-list{
  display:grid;
  gap:1rem;
}
.admin-record{
  border:1px solid #d8e8fa;
  border-radius:22px;
  padding:1.15rem;
  background:#fbfdff;
}
.admin-record.is-test{
  border:2px dashed #ff00dd;
  background:#fff6fe;
}
.admin-record-heading{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:flex-start;
}
.admin-record-heading h3{
  margin:.45rem 0 .25rem;
  color:#042663;
  font-size:1.4rem;
}
.admin-record-heading p{
  margin:0;
  color:#5d6b82;
}
.admin-record-id{
  font-weight:1000;
  color:#72819a;
}
.admin-record-badges{
  display:flex;
  flex-wrap:wrap;
  gap:.4rem;
}
.status-badge{
  display:inline-flex;
  border-radius:999px;
  padding:.28rem .6rem;
  font-size:.74rem;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.04em;
  background:#e7eff8;
  color:#263a55;
}
.status-pending,.status-new{
  background:#fff3c7;
  color:#6b4e00;
}
.status-approved{
  background:#dcfbe8;
  color:#075d2e;
}
.status-rejected,.status-deleted{
  background:#ffe0e0;
  color:#7b1111;
}
.status-contacted{
  background:#dcf4ff;
  color:#064c6b;
}
.status-archived{
  background:#e7e7ee;
  color:#3e3e4a;
}
.status-test{
  background:#ffddfa;
  color:#7d006d;
}
.admin-record-grid{
  margin-top:1rem;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.8rem;
}
.admin-record-grid > div{
  background:#fff;
  border:1px solid #e3edf8;
  border-radius:14px;
  padding:.8rem;
  min-width:0;
}
.admin-record-grid strong,
.admin-record-grid span,
.admin-record-grid a{
  display:block;
}
.admin-record-grid strong{
  color:#042663;
  margin-bottom:.25rem;
}
.admin-record-grid a{
  color:#006eae;
  overflow-wrap:anywhere;
}
.admin-record-wide{
  grid-column:1/-1;
}
.admin-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.65rem;
  margin-top:1rem;
  padding-top:1rem;
  border-top:1px solid #dfeaf6;
}
.admin-actions form{
  display:flex;
  align-items:center;
  gap:.55rem;
  margin:0;
}
.admin-actions select{
  width:auto;
  min-width:145px;
  margin:0;
  padding:.65rem .8rem;
}
.btn-small{
  padding:.67rem .9rem;
  font-size:.88rem;
}
.btn-danger{
  background:#a11313;
  color:#fff;
}
.admin-section-gap{
  margin-top:2.2rem;
}
@media(max-width:1050px){
  .admin-shell{
    grid-template-columns:1fr;
  }
  .admin-sidebar{
    position:static;
    min-height:auto;
  }
  .admin-nav{
    grid-template-columns:repeat(4,1fr);
  }
  .admin-stats{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:700px){
  .admin-main{
    padding:1rem;
  }
  .admin-topbar,
  .admin-record-heading{
    flex-direction:column;
    align-items:stretch;
  }
  .admin-nav,
  .admin-stats,
  .admin-record-grid{
    grid-template-columns:1fr;
  }
  .admin-record-wide{
    grid-column:auto;
  }
  .admin-actions,
  .admin-actions form{
    align-items:stretch;
    flex-direction:column;
    width:100%;
  }
  .admin-actions select,
  .admin-actions .btn{
    width:100%;
  }
}


/* v3.7.28 pre-order mode */
.status-preorder,
.status-preorder_open,
.status-coming_soon,
.status-preorder_closed,
.status-in_production,
.status-released {
  color:#fff;
  background:var(--navy,#072a55);
}
.preorder-inline-notice,
.preorder-line-note,
.game-card-preorder-note {
  display:block;
  margin:.55rem 0;
  font-weight:800;
  color:var(--navy,#072a55);
}
.preorder-inline-notice.muted { opacity:.78; }
.preorder-order-notice { border-left:4px solid var(--cyan,#13b5ea); }
.public-preorder-panel {
  margin:1.25rem 0;
  padding:1.25rem;
  border:1px solid rgba(7,42,85,.15);
  border-radius:18px;
  background:rgba(19,181,234,.08);
}
.public-preorder-form {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:.85rem;
  margin-top:1rem;
}
.public-preorder-form label {
  display:grid;
  gap:.35rem;
  font-weight:800;
}
.public-preorder-form input,
.public-preorder-form textarea {
  width:100%;
  border:1px solid rgba(7,42,85,.2);
  border-radius:12px;
  padding:.75rem .85rem;
}
.public-preorder-wide { grid-column:1/-1; }

/* v3.7.41 unified public/trade product catalogue display */
.product-category-chips{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin:.75rem 0;
}
.product-category-chips span,
.product-category-chips a{
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(4,38,99,.14);
  border-radius:999px;
  padding:.35rem .65rem;
  background:#f1f7ff;
  color:#042663;
  font-weight:900;
  font-size:.78rem;
  line-height:1;
  text-decoration:none;
}
.product-category-chips a:hover{
  background:#dff5ff;
  color:#006eae;
}
.product-category-chips--compact{
  margin:.55rem 0 .7rem;
  gap:.35rem;
}
.product-category-chips--compact span,
.product-category-chips--compact a{
  font-size:.7rem;
  padding:.3rem .5rem;
}
.product-category-chips--hero{
  margin:1rem 0 1.1rem;
}
.product-category-chips--sidebar{
  margin:1rem 0;
}
.product-category-filter{
  border-style:dashed;
}
.trade-category-filterbar{
  margin:1.2rem 0 1.4rem;
}
.product-public-section{
  background:#f5f9fd;
}
.product-public-layout{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);
  gap:1.5rem;
  align-items:start;
}
.product-public-main{
  display:grid;
  gap:1.25rem;
}
.product-public-card{
  border:1px solid #d8e8fa;
  border-radius:24px;
  padding:1.25rem;
  background:#fff;
  box-shadow:0 18px 45px rgba(4,38,99,.06);
}
.section-heading.compact{
  margin-bottom:1rem;
}
.section-heading.compact h2{
  margin:.2rem 0;
}
.section-heading.compact p{
  margin:.25rem 0 0;
}
.public-product-gallery{
  display:grid;
  gap:1rem;
}
.public-product-gallery-main{
  overflow:hidden;
  border-radius:22px;
  border:1px solid #dbe9f6;
  background:#eaf3fb;
}
.public-product-gallery-main img{
  display:block;
  width:100%;
  height:auto;
}
.public-product-gallery-strip{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:.85rem;
}
.public-product-gallery-strip figure{
  margin:0;
  border:1px solid #dbe9f6;
  border-radius:16px;
  overflow:hidden;
  background:#f8fbff;
}
.public-product-gallery-strip img{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
.public-product-gallery-strip figcaption{
  padding:.55rem .7rem;
  font-size:.82rem;
  color:#5d6b82;
}
.product-public-copy{
  color:#263a55;
  line-height:1.72;
  font-size:1.03rem;
}
.product-public-buy-box{
  position:sticky;
  top:1rem;
}
.product-public-buy-box h2{
  margin:.75rem 0 .35rem;
  color:#042663;
  font-size:1.75rem;
}
.product-public-facts{
  display:grid;
  gap:.5rem;
  margin:1rem 0;
}
.product-public-facts div{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  border-bottom:1px solid #e2edf8;
  padding:.55rem 0;
}
.product-public-facts dt{
  color:#66758b;
  font-weight:800;
}
.product-public-facts dd{
  margin:0;
  color:#042663;
  font-weight:1000;
  text-align:right;
}
.product-download-list{
  display:grid;
  gap:.85rem;
}
.product-download-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:1rem;
  align-items:center;
  border:1px solid #e1edf8;
  border-radius:18px;
  padding:1rem;
  background:#fbfdff;
}
.product-download-card h3{
  margin:.2rem 0;
  color:#042663;
}
.product-download-card p,
.product-download-card small{
  margin:.2rem 0 0;
  color:#5d6b82;
}
@media(max-width:980px){
  .product-public-layout{
    grid-template-columns:1fr;
  }
  .product-public-buy-box{
    position:static;
  }
}
@media(max-width:640px){
  .product-download-card{
    grid-template-columns:1fr;
  }
}

/* v3.7.43 accessible secondary button contrast
   Light brown is sampled from the Blue Donut Games logo icing/donut edge.
   This avoids low-contrast white buttons on white cards/backgrounds. */
:root{
  --donut-biscuit:#b8845d;
  --donut-biscuit-strong:#8f613f;
  --donut-biscuit-soft:#f3e6dc;
  --donut-biscuit-hover:#ead4c2;
  --donut-biscuit-line:#d2ad8c;
}

.btn-light,
.filterbar a:not(.active),
.trade-category-filterbar a:not(.active){
  background:var(--donut-biscuit-soft);
  color:var(--ink);
  border:1px solid var(--donut-biscuit-line);
  box-shadow:0 12px 28px rgba(184,140,113,.20);
}

.btn-light:hover,
.filterbar a:not(.active):hover,
.trade-category-filterbar a:not(.active):hover{
  background:var(--donut-biscuit-hover);
  border-color:var(--donut-biscuit);
  filter:saturate(1.04);
}

.btn-light:focus-visible,
.filterbar a:focus-visible,
.trade-category-filterbar a:focus-visible{
  outline:3px solid var(--donut-biscuit);
  outline-offset:3px;
}

/* v3.7.44 Tabletopia product CTA */
.tabletopia-inline-button img{
  width:4.9rem;
  max-height:1.9rem;
  object-fit:contain;
  flex:0 0 auto;
}
.tabletopia-product-card{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:1.25rem;
  align-items:center;
  background:linear-gradient(135deg,#fff,#eefaff);
  border-color:#b9dcf4;
}
.tabletopia-product-card h2{
  margin:.55rem 0 .45rem;
  color:#042663;
  font-size:clamp(1.75rem,3vw,2.5rem);
  line-height:1;
}
.tabletopia-product-card p{
  color:#5d6b82;
  margin:.3rem 0 1rem;
}
.tabletopia-product-logo{
  background:#fff;
  border:1px solid #d9eafa;
  border-radius:24px;
  padding:1.1rem;
  box-shadow:0 16px 44px rgba(4,38,99,.10);
}
.tabletopia-product-logo img{
  width:100%;
  height:auto;
}
@media(max-width:760px){
  .tabletopia-product-card{
    grid-template-columns:1fr;
  }
  .tabletopia-product-logo{
    max-width:260px;
  }
}

/* v3.7.46 Tabletopia public product placement and button alignment */
.tabletopia-inline-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:.55rem;
  line-height:1.05;
  white-space:normal;
}
.tabletopia-inline-button img{
  width:auto;
  height:1.55rem;
  max-width:4.4rem;
  max-height:1.55rem;
  object-fit:contain;
  flex:0 0 auto;
  margin:0;
}
.tabletopia-sidebar-card{
  margin-top:1rem;
  padding:1rem;
  border:1px solid #b9dcf4;
  border-radius:22px;
  background:linear-gradient(135deg,#ffffff,#effaff);
  box-shadow:0 14px 36px rgba(4,38,99,.08);
  display:grid;
  gap:.75rem;
}
.tabletopia-sidebar-logo{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:.75rem;
  background:#fff;
  border:1px solid #d9eafa;
  border-radius:18px;
}
.tabletopia-sidebar-logo img{
  max-width:210px;
  width:100%;
  height:auto;
  margin:auto;
}
.tabletopia-sidebar-card h3{
  margin:.1rem 0 0;
  color:#042663;
  font-size:1.35rem;
  line-height:1.05;
}
.tabletopia-sidebar-card p{
  margin:0;
  color:#5d6b82;
  font-size:.95rem;
}
.tabletopia-sidebar-button{
  width:100%;
  min-height:3rem;
}
.product-public-buy-box .reassurance + .tabletopia-sidebar-card{
  margin-top:1rem;
}

/* v3.7.46 Public product page polish: lightbox, facts, side chips, videos and sharing */
.public-product-lightbox-trigger{display:block;cursor:zoom-in}.product-image-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:2rem}.product-image-lightbox:target{display:flex}.product-image-lightbox-backdrop{position:absolute;inset:0;background:rgba(2,11,36,.88);backdrop-filter:blur(10px)}.product-image-lightbox-panel{position:relative;z-index:1;width:min(1120px,92vw);max-height:92vh;background:#fff;border-radius:28px;padding:1rem;box-shadow:0 30px 90px rgba(0,0,0,.45);overflow:auto}.product-image-lightbox-panel img{width:100%;height:auto;object-fit:contain;border-radius:20px;max-height:78vh}.product-image-lightbox-panel p{margin:.75rem .35rem 0;color:var(--ink);font-weight:900}.product-image-lightbox-close{position:absolute;right:1.1rem;top:1.1rem;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);font-size:2rem;font-weight:1000;box-shadow:0 10px 30px rgba(0,0,0,.2)}.product-public-facts--icons{grid-template-columns:repeat(2,1fr);gap:.65rem}.product-public-facts--icons div{display:grid;grid-template-columns:34px 1fr;grid-template-areas:"icon dt" "icon dd";align-items:center;text-align:left;padding:.65rem}.product-public-facts--icons .fact-icon{grid-area:icon;width:26px;height:26px;color:var(--donut)}.product-public-facts--icons dt{grid-area:dt}.product-public-facts--icons dd{grid-area:dd}.reassurance--compact{grid-template-columns:repeat(2,1fr);gap:.55rem}.reassurance--compact a,.reassurance--compact>span{background:#fff8ec;border:1px solid #d9b477;border-radius:14px;padding:.52rem .55rem;display:flex;align-items:center;gap:.42rem;text-align:left;font-weight:900;color:var(--ink);font-size:.86rem}.reassurance-icon{width:18px;height:18px;flex:0 0 18px;color:#9b6a21}.product-video-grid{display:grid;gap:1rem}.product-video-card{background:#f8fbff;border:1px solid var(--line);border-radius:22px;overflow:hidden}.product-video-embed{position:relative;aspect-ratio:16/9;background:#020b24}.product-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.product-video-copy{padding:1rem}.product-video-copy h3{margin:.3rem 0;font-size:1.3rem;color:var(--ink)}.product-video-copy p{margin:.35rem 0 0;color:var(--muted)}.video-provider-badge{display:inline-flex;border-radius:999px;background:var(--ink);color:#fff;padding:.22rem .5rem;font-weight:1000;font-size:.72rem;letter-spacing:.06em}.product-share-card{margin-top:1rem;background:linear-gradient(135deg,#fff,#fff8ec);border:1px solid #d9b477;border-radius:22px;padding:1rem;box-shadow:var(--soft)}.product-share-card p{margin:.6rem 0;color:var(--muted)}.product-share-links{display:flex;flex-wrap:wrap;gap:.5rem}.product-share-links a{border:1px solid #cfe0f6;background:#fff;border-radius:999px;padding:.48rem .72rem;font-weight:1000;color:var(--ink)}.public-preorder-meter{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:1rem 0}.public-preorder-meter div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:.7rem;text-align:center}.public-preorder-meter strong{display:block;font-size:1.35rem;color:var(--ink)}.public-preorder-meter span{font-size:.78rem;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.05em}@media(max-width:720px){.product-public-facts--icons,.reassurance--compact,.public-preorder-meter{grid-template-columns:1fr}.product-image-lightbox{padding:.75rem}.product-image-lightbox-panel{width:96vw;border-radius:20px}.product-image-lightbox-close{right:.6rem;top:.6rem}}

/* v3.7.47 Product page sidebar/video/social polish */
.reassurance--compact a,
.reassurance--compact > span{
  background:#fff8ec;
  border-color:#d9b477;
  padding:.55rem .62rem;
  gap:.55rem;
  font-size:.82rem;
  line-height:1.15;
}
.reassurance--compact .reassurance-icon{
  width:30px;
  height:30px;
  flex:0 0 30px;
  color:#9b6a21;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.product-video-section--switcher .section-heading .eyebrow{
  gap:.45rem;
}
.product-video-player-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);
  gap:1rem;
  align-items:start;
}
.product-video-featured{
  background:#f8fbff;
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--soft);
}
.product-video-embed--featured iframe{
  transition:opacity .18s ease;
}
.product-video-copy--featured{
  padding:1rem 1.1rem 1.15rem;
}
.product-video-copy--featured [data-product-video-description]:empty{
  display:none;
}
.product-video-playlist{
  display:grid;
  gap:.65rem;
}
.product-video-choice{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:.7rem;
  align-items:center;
  width:100%;
  border:1px solid #cfe0f6;
  background:#fff;
  color:var(--ink);
  border-radius:18px;
  padding:.75rem;
  text-align:left;
  cursor:pointer;
  box-shadow:0 10px 26px rgba(4,38,99,.08);
}
.product-video-choice:hover,
.product-video-choice.active{
  border-color:#d9b477;
  background:#fff8ec;
}
.product-video-choice-icon{
  width:42px;
  height:42px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--cyan),var(--donut));
  color:var(--ink);
}
.product-video-choice-icon .button-icon{
  width:24px;
  height:24px;
}
.product-video-choice strong{
  display:block;
  font-size:.95rem;
  line-height:1.15;
}
.product-video-choice small{
  display:inline-flex;
  margin-top:.2rem;
  color:var(--muted);
  font-weight:1000;
  letter-spacing:.06em;
}
.product-share-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.product-share-links a.copied{
  background:#e5fff1;
  border-color:#9be4bd;
  color:#064b25;
}
.product-share-hint{
  display:block;
  margin-top:.55rem;
  color:var(--muted);
  line-height:1.35;
}
@media(max-width:860px){
  .product-video-player-layout{
    grid-template-columns:1fr;
  }
}

/* v3.7.48 Product sidebar and video thumbnail polish */
.reassurance--compact a > span,
.reassurance--compact > span > span{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
  text-align:left!important;
  display:inline!important;
}
.reassurance--compact a,
.reassurance--compact > span{
  background:#fff8ec!important;
  border:1px solid #d9b477!important;
  box-shadow:0 10px 24px rgba(155,106,33,.08)!important;
}
.product-video-choice{
  grid-template-columns:96px 1fr;
  padding:.55rem;
  gap:.75rem;
}
.product-video-choice-thumb{
  position:relative;
  display:block;
  width:96px;
  aspect-ratio:16/9;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(135deg,#042663,#04affb);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);
}
.product-video-choice-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.product-video-choice-play{
  position:absolute;
  inset:auto auto .35rem .35rem;
  width:30px;
  height:30px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(4,175,251,.94);
  color:#fff;
  box-shadow:0 8px 18px rgba(2,11,36,.3);
}
.product-video-choice-play .button-icon{
  width:17px;
  height:17px;
}
.product-video-choice-copy{
  min-width:0;
}
@media(max-width:520px){
  .product-video-choice{
    grid-template-columns:82px 1fr;
  }
  .product-video-choice-thumb{
    width:82px;
  }
}

/* v3.7.50 Product video mobile posts */
.product-video-mobile-posts{
  display:none;
}
.product-video-card--mobile-post + .product-video-card--mobile-post{
  margin-top:1rem;
}
@media(max-width:860px){
  .product-video-player-layout--desktop{
    display:none!important;
  }
  .product-video-mobile-posts{
    display:grid;
    gap:1rem;
  }
  .product-video-card--mobile-post{
    background:#f8fbff;
    border:1px solid var(--line);
    border-radius:22px;
    overflow:hidden;
    box-shadow:var(--soft);
  }
}

/* v3.7.50 Central product pre-order feature box */
.product-preorder-feature {
  border:1px solid rgba(255,154,35,.45);
  background:linear-gradient(135deg,#fff7e8 0%,#ffffff 58%,#eefaff 100%);
  box-shadow:0 18px 45px rgba(4,38,99,.12);
}
.product-preorder-feature-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1rem;
}
.product-preorder-feature-head h2 { margin:.35rem 0 .25rem; }
.product-preorder-feature-head strong {
  flex:0 0 auto;
  border-radius:999px;
  padding:.45rem .65rem;
  background:var(--navy,#072a55);
  color:#fff;
  font-size:.78rem;
  text-align:center;
}
.product-preorder-progress { margin:1rem 0; }
.product-preorder-progress-bar {
  height:14px;
  border-radius:999px;
  background:rgba(4,38,99,.12);
  overflow:hidden;
  box-shadow:inset 0 0 0 1px rgba(4,38,99,.08);
}
.product-preorder-progress-bar span {
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--pink,#ff2ec4),var(--cyan,#13b5ea));
}
.product-preorder-progress small {
  display:block;
  margin-top:.4rem;
  color:#4f6485;
  font-weight:800;
}
.product-preorder-meter {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.55rem;
  margin:1rem 0;
}
.product-preorder-meter div {
  border:1px solid rgba(4,38,99,.12);
  border-radius:14px;
  background:#fff;
  padding:.7rem;
}
.product-preorder-meter strong {
  display:block;
  color:var(--navy,#072a55);
  font-size:1.15rem;
}
.product-preorder-meter span {
  display:block;
  margin-top:.2rem;
  color:#4f6485;
  font-size:.78rem;
  font-weight:800;
}
.inline-trade-cart-form { display:inline-flex; margin:0; }
.inline-trade-cart-form .btn { border:0; cursor:pointer; }
.trade-preorder-feature-form p { margin:.25rem 0 0; color:#4f6485; }
@media (max-width: 720px) {
  .product-preorder-feature-head { flex-direction:column; }
  .product-preorder-meter { grid-template-columns:1fr; }
  .inline-trade-cart-form { width:100%; }
  .inline-trade-cart-form .btn { width:100%; justify-content:center; }
}

/* v3.7.51 Public product voting */
.product-vote-card {
  border:1px solid rgba(184,116,34,.45);
  border-radius:22px;
  background:linear-gradient(135deg,#fff8ec 0%,#ffffff 64%,#fff3d9 100%);
  padding:1.25rem;
  box-shadow:0 18px 45px rgba(4,38,99,.10);
}
.product-vote-card h2 {
  margin:.25rem 0 .55rem;
  color:var(--navy,#072a55);
  font-size:1.55rem;
  line-height:1.08;
}
.product-vote-card p { color:#263a59; }
.product-vote-count {
  margin:1rem 0 .8rem;
  color:#111827;
  font-weight:900;
  font-size:1.1rem;
}
.product-vote-count strong {
  display:inline-block;
  margin-right:.35rem;
  font-size:2rem;
  line-height:1;
  color:#111827;
}
.product-vote-form {
  display:grid;
  gap:.8rem;
}
.product-vote-form label:not(.form-consent) {
  display:grid;
  gap:.35rem;
  font-weight:800;
  color:#06183f;
}
.product-vote-form input[type="email"],
.product-vote-form textarea {
  width:100%;
  border:1px solid rgba(4,38,99,.25);
  border-radius:12px;
  padding:.75rem .85rem;
  font:inherit;
  background:#fff;
  color:#06183f;
}
.product-vote-form textarea {
  min-height:145px;
  resize:vertical;
  background:#f7f1e8;
}
.product-vote-form small {
  color:#33435b;
  line-height:1.35;
}
.product-vote-consent {
  align-items:flex-start;
  gap:.55rem;
  font-size:.85rem;
  line-height:1.35;
  color:#33435b;
}
.product-vote-form .btn { justify-content:center; }
.product-vote-published-list {
  display:grid;
  gap:.75rem;
  margin-top:.85rem;
}
.product-vote-published-card {
  border:1px solid rgba(184,116,34,.45);
  border-radius:16px;
  padding:1rem;
  background:#fffaf1;
  box-shadow:0 10px 24px rgba(4,38,99,.08);
}
.product-vote-published-card h3 {
  margin:0 0 .15rem;
  color:#111827;
  font-size:1rem;
}
.product-vote-published-card time {
  display:block;
  color:#111827;
  font-size:.85rem;
  font-weight:800;
  margin-bottom:.4rem;
}
.product-vote-published-card p {
  margin:0;
  color:#111827;
  font-style:italic;
  line-height:1.45;
}

/* v3.7.53 Product vote display polish */
.product-share-card + .product-vote-card {
  margin-top: 1.35rem;
}
.product-vote-feedback-section {
  border-color: rgba(40,190,255,.42);
}
.product-vote-published-scroll {
  display: grid;
  gap: .9rem;
  padding: .25rem .15rem;
}
.product-vote-published-scroll.is-scrollable {
  max-height: 520px;
  overflow-y: auto;
  padding-right: .65rem;
  scrollbar-color: var(--donut,#33c4ff) rgba(8,22,57,.12);
}
.product-vote-published-scroll.is-scrollable::-webkit-scrollbar {
  width: 10px;
}
.product-vote-published-scroll.is-scrollable::-webkit-scrollbar-track {
  background: rgba(8,22,57,.10);
  border-radius: 999px;
}
.product-vote-published-scroll.is-scrollable::-webkit-scrollbar-thumb {
  background: var(--donut,#33c4ff);
  border-radius: 999px;
}
.product-vote-feedback-section .product-vote-published-card {
  border-radius: 16px;
  background: #fffaf1;
}
@media (max-width:720px) {
  .product-share-card + .product-vote-card { margin-top: 1.1rem; }
  .product-vote-published-scroll.is-scrollable { max-height: 440px; }
}

/* v3.7.54 Community channels foundation */
.community-overview-section{padding-bottom:2.5rem}.community-roadmap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.community-roadmap-card{background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--soft);padding:1.25rem}.community-roadmap-card.is-live{background:linear-gradient(135deg,#fff,#e9f9ff);border-color:#9fe7ff}.community-roadmap-status{display:inline-flex;border-radius:999px;background:var(--ink);color:#fff;font-weight:1000;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;padding:.35rem .65rem}.community-roadmap-card h3{font-size:1.5rem;margin:.75rem 0 .4rem;color:var(--ink)}.community-roadmap-card p{margin:0;color:var(--muted)}.community-channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.community-channel-card{position:relative;display:flex;flex-direction:column;gap:.65rem;min-height:230px;background:#fff;border:1px solid #d8e8fb;border-radius:28px;padding:1.25rem;box-shadow:var(--soft);transition:.2s transform,.2s box-shadow,.2s border-color}.community-channel-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--donut)}.community-channel-card.featured{background:linear-gradient(135deg,#fff,#fff8ec);border-color:#efc079}.community-channel-icon{width:62px;height:62px;border-radius:22px;background:linear-gradient(135deg,var(--donut),var(--cyan));display:grid;place-items:center;color:#fff}.community-channel-icon svg{width:34px;height:34px;fill:currentColor}.community-channel-platform{align-self:flex-start;border-radius:999px;background:#edf8ff;color:var(--ink);padding:.28rem .55rem;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:1000}.community-channel-card strong{font-size:1.45rem;line-height:1.02;color:var(--ink)}.community-channel-description{color:var(--muted)}.community-channel-action{margin-top:auto;font-weight:1000;color:var(--ink)}.community-creator-box{background:linear-gradient(135deg,#fff8ec,#fff);border:1px solid #efc079;border-radius:28px;padding:1.35rem}.community-creator-box h3{font-size:1.7rem;margin:0 0 .5rem;color:var(--ink)}@media(max-width:980px){.community-roadmap-grid,.community-channel-grid{grid-template-columns:1fr}.community-channel-card{min-height:auto}}

/* v3.7.55 Content Creator Review Database */
.creator-hero-card{background:linear-gradient(135deg,#fff,#e9f9ff);border:1px solid #bfefff;border-radius:30px;box-shadow:var(--soft);padding:2rem;color:var(--ink);display:flex;flex-direction:column;gap:.8rem}.creator-hero-card span{align-self:flex-start;background:var(--ink);color:#fff;border-radius:999px;padding:.35rem .75rem;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:1000}.creator-hero-card strong{font-size:1.8rem;line-height:1.06}.creator-search-panel{display:grid;grid-template-columns:2fr 1fr 1.4fr auto;gap:1rem;align-items:end;background:#fff;border:1px solid #d8e8fb;border-radius:28px;padding:1rem;box-shadow:var(--soft);margin-bottom:2rem}.creator-search-panel label{display:flex;flex-direction:column;gap:.35rem;font-weight:900;color:var(--ink)}.creator-search-panel input,.creator-search-panel select{border:1px solid #cfe0f1;border-radius:16px;padding:.85rem 1rem;font:inherit}.creator-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem}.creator-card-grid.compact{margin-top:1rem}.creator-card{background:#fff;border:1px solid #d8e8fb;border-radius:30px;box-shadow:var(--soft);padding:1.25rem;display:flex;flex-direction:column;gap:1rem;min-height:330px}.creator-card.featured{background:linear-gradient(135deg,#fff,#fff8ec);border-color:#efc079}.creator-card-head{display:flex;gap:1rem;align-items:center}.creator-logo{width:82px;height:82px;border-radius:24px;object-fit:cover;border:1px solid #dfeaf6;background:#f5fbff}.creator-logo-fallback{display:grid;place-items:center;background:linear-gradient(135deg,var(--donut),var(--cyan));color:#fff;font-weight:1000;font-size:2rem}.creator-card h3{margin:.2rem 0;color:var(--ink);font-size:1.55rem}.creator-card h3 a{color:inherit}.creator-card p{margin:0;color:var(--muted)}.creator-pill{display:inline-flex;border-radius:999px;background:#edf8ff;color:var(--ink);font-size:.72rem;font-weight:1000;text-transform:uppercase;letter-spacing:.08em;padding:.28rem .6rem}.creator-location{font-weight:800;color:#60708a!important}.creator-channel-row{display:flex;flex-wrap:wrap;gap:.45rem}.creator-channel-row a,.creator-channel-column a{display:inline-flex;border-radius:999px;background:#f0f8ff;border:1px solid #d8e8fb;color:var(--ink);font-weight:900;padding:.42rem .7rem}.creator-review-mini-list{border-top:1px solid #e4edf8;padding-top:.85rem;display:flex;flex-direction:column;gap:.55rem}.creator-review-mini-list strong{color:var(--ink)}.creator-review-mini-list a{display:flex;flex-direction:column;background:#f8fcff;border:1px solid #e2eef9;border-radius:18px;padding:.7rem;color:var(--ink);font-weight:900}.creator-review-mini-list a span{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.creator-card-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:.65rem}.creator-empty-state{max-width:760px}.creator-form-layout{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:1.5rem;align-items:start}.creator-form-sidebar{background:#fff;border:1px solid #d8e8fb;border-radius:28px;padding:1.35rem;box-shadow:var(--soft);position:sticky;top:1rem}.creator-form-sidebar h2{margin-top:0;color:var(--ink)}.creator-registration-form .supplier-form-section{margin-bottom:1.25rem}.check-row{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:.65rem;font-weight:800;color:var(--ink)}.check-row input{width:auto!important;margin-top:.25rem}.creator-profile-logo-wrap{background:#fff;border:1px solid #d8e8fb;border-radius:34px;box-shadow:var(--soft);padding:1rem;display:grid;place-items:center;min-height:280px}.creator-profile-logo-wrap img{max-width:260px;max-height:260px;border-radius:30px;object-fit:contain}.creator-profile-logo-fallback{width:220px;height:220px;border-radius:40px;display:grid;place-items:center;background:linear-gradient(135deg,var(--donut),var(--cyan));color:#fff;font-weight:1000;font-size:5rem}.creator-profile-layout{display:grid;grid-template-columns:minmax(250px,330px) 1fr;gap:1.5rem;align-items:start}.creator-profile-sidebar,.creator-about-panel,.creator-review-card{background:#fff;border:1px solid #d8e8fb;border-radius:28px;box-shadow:var(--soft);padding:1.25rem}.creator-channel-column{display:flex;flex-direction:column;gap:.55rem}.creator-profile-location{margin-top:1rem;border-top:1px solid #e5eef8;padding-top:1rem;display:flex;flex-direction:column;gap:.25rem}.creator-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.creator-review-card h3{font-size:1.45rem;line-height:1.1;margin:.65rem 0}.creator-review-card h3 a{color:var(--ink)}.creator-review-game{font-weight:900;color:var(--ink)!important}.community-featured-creators{margin-top:2rem}.community-featured-creators>h3{font-size:1.8rem;color:var(--ink);margin:0 0 1rem}@media(max-width:980px){.creator-search-panel,.creator-card-grid,.creator-form-layout,.creator-profile-layout,.creator-review-grid{grid-template-columns:1fr}.creator-form-sidebar{position:static}.creator-card{min-height:auto}}

/* v3.7.56 Content creator review polish */
.creator-review-grid--rich {
  grid-template-columns: 1fr;
}
.creator-review-card--rich {
  padding: 0;
  overflow: hidden;
}
.creator-review-video-preview {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #061733;
}
.creator-review-video-preview iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.creator-review-card-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(170px, 230px);
  gap: 1rem;
  padding: 1.15rem;
  align-items: stretch;
}
.creator-review-card-copy {
  min-width: 0;
}
.creator-review-meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  align-items: center;
}
.creator-review-meta-row time,
.creator-review-byline {
  color: var(--muted);
  font-weight: 800;
  font-size: .9rem;
}
.creator-review-byline a {
  color: var(--ink);
  font-weight: 1000;
}
.creator-review-action {
  margin-top: .75rem;
  width: fit-content;
}
.creator-review-product-card {
  border: 1px solid #dceaf7;
  border-radius: 22px;
  background: linear-gradient(180deg, #fff, #f5fbff);
  padding: .8rem;
  display: flex;
  flex-direction: column;
  gap: .45rem;
  align-self: stretch;
}
.creator-review-product-card a {
  color: inherit;
  display: flex;
  flex-direction: column;
  gap: .45rem;
}
.creator-review-product-card img,
.creator-review-product-fallback {
  width: 100%;
  aspect-ratio: 1.18 / 1;
  object-fit: cover;
  border-radius: 16px;
  background: #edf8ff;
  border: 1px solid #dbe8f7;
}
.creator-review-product-fallback {
  display: grid;
  place-items: center;
  color: #fff;
  font-weight: 1000;
  background: linear-gradient(135deg, var(--donut), var(--cyan));
}
.creator-review-product-card span {
  color: var(--muted);
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 1000;
}
.creator-review-product-card strong {
  color: var(--ink);
  line-height: 1.1;
}
.creator-review-mini-list a small {
  color: var(--muted);
  font-weight: 800;
  margin-top: .18rem;
}
.creator-review-mini-list a em {
  color: var(--donut);
  font-style: normal;
  font-weight: 1000;
  margin-top: .25rem;
}
.product-creator-review-section {
  margin-top: 1.25rem;
}
.product-creator-review-scroll {
  display: grid;
  gap: 1rem;
}
.product-creator-review-scroll.is-scrollable {
  max-height: 760px;
  overflow-y: auto;
  padding-right: .55rem;
}
.product-creator-review-scroll.is-scrollable::-webkit-scrollbar {
  width: 10px;
}
.product-creator-review-scroll.is-scrollable::-webkit-scrollbar-track {
  background: #edf6ff;
  border-radius: 999px;
}
.product-creator-review-scroll.is-scrollable::-webkit-scrollbar-thumb {
  background: var(--cyan);
  border-radius: 999px;
}
.creator-review-card--product-page .creator-review-card-body {
  grid-template-columns: 1fr;
}
@media(max-width:760px){
  .creator-review-card-body { grid-template-columns: 1fr; }
  .creator-review-product-card { max-width: none; }
}

/* Complete CMS v3.7.59 — Board Game Cafes & Shops locator foundation */
.store-search-panel{grid-template-columns:1.6fr 1fr 1.4fr auto}.store-filter-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.store-filter-toggles .check-row{font-size:.86rem}.store-map-placeholder{display:grid;grid-template-columns:1.2fr 1fr;gap:1rem;align-items:center;background:linear-gradient(135deg,#fff,#e9f9ff);border:1px solid #bfefff;border-radius:28px;box-shadow:var(--soft);padding:1.25rem;margin-bottom:2rem}.store-map-placeholder h3{margin:.3rem 0;color:var(--ink);font-size:1.6rem}.store-map-pin-list{display:flex;flex-wrap:wrap;gap:.5rem}.store-map-pin-list a,.store-badges span{display:inline-flex;border-radius:999px;background:#f0f8ff;border:1px solid #d8e8fb;color:var(--ink);font-weight:900;padding:.42rem .7rem}.store-badges.large{margin:1rem 0}.store-card .creator-review-mini-list span{display:block;background:#f8fcff;border:1px solid #e2eef9;border-radius:16px;padding:.55rem .7rem;color:var(--ink);font-weight:900}.store-detail-list p{margin:.2rem 0 1rem;color:var(--muted)}.store-product-checkboxes{border:1px solid #d8e8fb;border-radius:18px;padding:1rem;margin-top:1rem}.store-product-checkboxes legend{font-weight:1000;color:var(--ink);padding:0 .5rem}.store-profile-image-wrap img{width:100%;height:100%;max-width:320px;max-height:320px;object-fit:cover}.store-map-profile{margin-top:1rem}@media(max-width:980px){.store-search-panel,.store-map-placeholder{grid-template-columns:1fr}.store-filter-toggles{grid-template-columns:1fr}}

/* Store locator OpenStreetMap view - v3.7.66 */
.store-map-heading { margin-top: 2rem; }
.store-osm-shell {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(320px, 0.95fr);
    gap: 1.25rem;
    align-items: stretch;
    margin: 1.25rem 0 2.5rem;
}
.store-osm-map-panel,
.store-osm-side-list {
    background: #fff;
    border: 1px solid rgba(0, 60, 120, 0.12);
    border-radius: 24px;
    box-shadow: 0 16px 38px rgba(0, 25, 75, 0.08);
    overflow: hidden;
}
.store-osm-map {
    min-height: 560px;
    width: 100%;
    background: linear-gradient(135deg, #eaf4ff, #f7fbff);
    z-index: 1;
}
.store-profile-osm-map {
    min-height: 360px;
    width: 100%;
    border-radius: 18px;
    overflow: hidden;
    background: linear-gradient(135deg, #eaf4ff, #f7fbff);
    border: 1px solid rgba(0, 60, 120, 0.12);
    z-index: 1;
}
.store-map-status,
.store-map-credit {
    margin: 0;
    padding: 0.85rem 1rem;
    color: #35506a;
    font-size: 0.94rem;
}
.store-map-credit {
    padding-top: 0;
    font-size: 0.82rem;
    color: #60748a;
}
.store-osm-side-list {
    display: flex;
    flex-direction: column;
    max-height: 680px;
}
.store-osm-side-heading {
    padding: 1.1rem 1.1rem 0.75rem;
    border-bottom: 1px solid rgba(0, 60, 120, 0.1);
}
.store-osm-side-heading h3,
.store-osm-side-heading p { margin: 0.25rem 0 0; }
.store-osm-scroll-list {
    overflow-y: auto;
    padding: 0.9rem;
    display: grid;
    gap: 0.8rem;
}
.store-osm-list-card {
    border: 1px solid rgba(0, 60, 120, 0.1);
    border-radius: 18px;
    padding: 0.9rem;
    background: #f9fcff;
    transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}
.store-osm-list-card.featured { border-color: rgba(0, 132, 255, 0.34); }
.store-osm-list-card.active {
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(0, 83, 170, 0.16);
    border-color: rgba(0, 132, 255, 0.48);
}
.store-osm-list-card.muted { color: #52687f; }
.store-osm-list-card-head {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    align-items: flex-start;
}
.store-osm-list-card h4 {
    margin: 0.15rem 0 0.2rem;
    font-size: 1.02rem;
}
.store-osm-list-card p {
    margin: 0;
    color: #4e657c;
    font-size: 0.92rem;
}
.store-map-focus-button,
.store-map-pending {
    flex: 0 0 auto;
    border: 0;
    border-radius: 999px;
    padding: 0.45rem 0.7rem;
    font-weight: 700;
    font-size: 0.78rem;
}
.store-map-focus-button {
    color: #fff;
    background: #006de5;
    cursor: pointer;
}
.store-map-focus-button:hover,
.store-map-focus-button:focus { background: #0051aa; }
.store-map-pending {
    color: #5f7288;
    background: #e8eef5;
}
.store-badges.compact { margin-top: 0.7rem; gap: 0.35rem; }
.store-badges.compact span { font-size: 0.76rem; }
.store-osm-list-actions {
    margin-top: 0.7rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    font-weight: 700;
    font-size: 0.88rem;
}
.store-osm-list-actions a { color: #005fcb; }
.store-map-popup-flags { font-weight: 700; }
.store-listing-card-heading { margin-top: 2.25rem; }
.leaflet-popup-content p { margin: 0.35rem 0; }
@media (max-width: 960px) {
    .store-osm-shell { grid-template-columns: 1fr; }
    .store-osm-map { min-height: 420px; }
    .store-osm-side-list { max-height: 520px; }
}
@media (max-width: 620px) {
    .store-osm-map { min-height: 340px; }
    .store-osm-list-card-head { flex-direction: column; }
}

/* v3.7.67 — community places, club/event schedules and gallery images */
.store-gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1rem;
}
.store-gallery-grid img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 18px;
  box-shadow: 0 16px 32px rgba(18, 35, 70, 0.12);
}
.store-schedule-mini {
  margin: 0.45rem 0 0;
  color: var(--muted, #5f6c7b);
  font-size: 0.94rem;
}
.store-gallery-fields legend {
  font-weight: 700;
}
.store-gallery-fields p,
.store-gallery-fields small {
  color: var(--muted, #5f6c7b);
}

/* v3.7.68 — community landing page showcase */
.community-showcase-hero .container { align-items: center; }
.community-hero-panel { position: relative; display: grid; gap: 1rem; }
.community-hero-panel img { width: 100%; max-height: 360px; object-fit: cover; border-radius: 30px; box-shadow: var(--shadow); background: #fff; }
.community-hero-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.community-hero-card-grid span { display: grid; gap: .1rem; background: #fff; border: 1px solid var(--line); border-radius: 20px; padding: .85rem 1rem; box-shadow: var(--soft); color: var(--muted); font-weight: 800; }
.community-hero-card-grid strong { color: var(--ink); font-size: 1.7rem; line-height: 1; }
.community-town-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: .75rem; margin: 1.25rem 0 1rem; max-width: 760px; }
.community-town-search label { display: grid; gap: .35rem; font-weight: 1000; color: var(--ink); }
.community-town-search label span { font-size: .9rem; text-transform: uppercase; letter-spacing: .06em; }
.community-town-search input { width: 100%; min-height: 52px; border: 2px solid rgba(8,38,74,.15); border-radius: 999px; padding: .75rem 1.05rem; font: inherit; box-shadow: var(--soft); }
.community-town-search input:focus { outline: 3px solid rgba(29, 174, 236, .24); border-color: var(--cyan); }
.community-feature-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.community-feature-card { background: #fff; border: 1px solid var(--line); border-radius: 28px; box-shadow: var(--soft); padding: 1.25rem; display: flex; flex-direction: column; gap: .65rem; min-height: 300px; }
.community-feature-card.highlight { background: linear-gradient(135deg,#fff,#e9f9ff); border-color: #9fe7ff; }
.community-feature-icon { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 20px; background: linear-gradient(135deg,var(--donut),var(--cyan)); font-size: 1.75rem; }
.community-feature-card h3 { margin: 0; color: var(--ink); font-size: 1.45rem; line-height: 1.05; }
.community-feature-card p { margin: 0; color: var(--muted); }
.community-feature-card .arrow-link { margin-top: auto; }
.community-map-promo { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; align-items: center; }
.community-stat-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin: 1.2rem 0; }
.community-stat-strip span { background: #fff; border: 1px solid #d8e8fb; border-radius: 20px; padding: .8rem; color: var(--muted); font-weight: 800; }
.community-stat-strip strong { display: block; color: var(--ink); font-size: 1.5rem; line-height: 1; }
.community-map-preview { display: grid; grid-template-columns: 1.15fr .85fr; min-height: 390px; background: #fff; border: 1px solid var(--line); border-radius: 32px; box-shadow: var(--shadow); overflow: hidden; }
.community-map-preview-map { position: relative; min-height: 390px; background:
    linear-gradient(90deg, rgba(18,35,70,.08) 1px, transparent 1px),
    linear-gradient(rgba(18,35,70,.08) 1px, transparent 1px),
    radial-gradient(circle at 25% 25%, rgba(29,174,236,.26), transparent 22%),
    radial-gradient(circle at 70% 60%, rgba(255,177,65,.25), transparent 24%),
    #edf8ff;
  background-size: 42px 42px, 42px 42px, auto, auto, auto;
  display: grid; place-items: center; color: var(--ink); font-size: 1.5rem; }
.community-map-preview-list { padding: 1.2rem; display: flex; flex-direction: column; gap: .55rem; background: linear-gradient(180deg,#fff,#fff8ec); }
.community-map-preview-list span { align-self: flex-start; border-radius: 999px; background: var(--ink); color: #fff; padding: .35rem .65rem; font-size: .72rem; font-weight: 1000; text-transform: uppercase; letter-spacing: .08em; }
.community-map-preview-list strong { color: var(--ink); font-size: 1.1rem; }
.community-map-preview-list p { margin: 0; color: var(--muted); }
.map-pin { position: absolute; width: 22px; height: 22px; border-radius: 999px 999px 999px 0; transform: rotate(-45deg); background: var(--donut); box-shadow: 0 12px 24px rgba(18,35,70,.22); }
.map-pin::after { content: ''; position: absolute; inset: 6px; border-radius: 999px; background: #fff; }
.map-pin.one { left: 26%; top: 30%; }
.map-pin.two { left: 56%; top: 20%; background: var(--cyan); }
.map-pin.three { left: 72%; top: 58%; }
.map-pin.four { left: 38%; top: 68%; background: var(--cyan); }
.community-benefit-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.community-benefit-grid article { background: #fff; border: 1px solid var(--line); border-radius: 24px; padding: 1.15rem; box-shadow: var(--soft); }
.community-benefit-grid h3 { margin: 0 0 .4rem; color: var(--ink); font-size: 1.3rem; }
.community-benefit-grid p { margin: 0; color: var(--muted); }
.community-register-cta { margin-top: 1.25rem; display: flex; justify-content: space-between; gap: 1rem; align-items: center; background: linear-gradient(135deg,var(--ink),#113d7a); color: #fff; border-radius: 30px; padding: 1.35rem; box-shadow: var(--shadow); }
.community-register-cta h3 { margin: 0 0 .25rem; color: #fff; font-size: 1.55rem; }
.community-register-cta p { margin: 0; color: rgba(255,255,255,.78); }
.community-place-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.community-place-card { background: #fff; border: 1px solid var(--line); border-radius: 28px; box-shadow: var(--soft); overflow: hidden; display: flex; flex-direction: column; }
.community-place-card > img, .community-place-card-fallback { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; background: linear-gradient(135deg,var(--donut),var(--cyan)); color: #fff; display: grid; place-items: center; font-size: 3rem; font-weight: 1000; }
.community-place-card > div:not(.community-place-card-fallback) { padding: 1rem; display: flex; flex-direction: column; gap: .45rem; }
.community-place-card h3 { margin: 0; color: var(--ink); font-size: 1.35rem; line-height: 1.1; }
.community-place-card p { margin: 0; }
@media (max-width: 1100px) {
  .community-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .community-stat-strip, .community-place-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .community-map-promo, .community-map-preview { grid-template-columns: 1fr; }
  .community-map-preview-map { min-height: 280px; }
  .community-town-search { grid-template-columns: 1fr; }
  .community-benefit-grid { grid-template-columns: 1fr; }
  .community-register-cta { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 620px) {
  .community-feature-grid, .community-stat-strip, .community-place-card-grid, .community-hero-card-grid { grid-template-columns: 1fr; }
  .community-feature-card { min-height: auto; }
}

/* v3.7.69 Community page CMS image support */
.community-cms-card-image { width: 100%; max-height: 190px; object-fit: cover; border-radius: 18px; border: 1px solid var(--line); box-shadow: 0 12px 28px rgba(11,24,43,.08); }
.community-cms-card-image.small { max-height: 135px; margin-bottom: .75rem; }
.community-feature-icon.small { display: inline-flex; margin-bottom: .45rem; }
.community-map-preview.image-preview { display: flex; align-items: stretch; justify-content: stretch; min-height: 330px; overflow: hidden; padding: 0; }
.community-map-preview.image-preview img { width: 100%; height: 100%; min-height: 330px; object-fit: cover; display: block; }

/* v3.7.84 Product public updates */
.product-updates-section .product-update-timeline {
    display: grid;
    gap: 1.25rem;
}
.product-update-card {
    border: 1px solid rgba(20, 35, 60, 0.12);
    border-radius: 22px;
    padding: clamp(1rem, 2vw, 1.5rem);
    background: rgba(255,255,255,0.96);
    box-shadow: 0 16px 36px rgba(10, 20, 40, 0.08);
}
.product-update-card--featured {
    border-width: 2px;
}
.product-update-meta {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-bottom: .65rem;
    color: #64748b;
    font-size: .9rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    font-weight: 700;
}
.product-update-card h3 {
    margin: 0 0 .65rem;
    font-size: clamp(1.25rem, 2vw, 1.7rem);
}
.product-update-summary {
    font-weight: 700;
    color: #10233f;
}
.product-update-copy {
    color: #334155;
    line-height: 1.7;
    margin: .75rem 0 1rem;
}
.product-update-video {
    position: relative;
    aspect-ratio: 16 / 9;
    border-radius: 18px;
    overflow: hidden;
    background: #0f172a;
    margin: 1rem 0;
}
.product-update-video iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.product-update-image-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: .8rem;
    margin: 1rem 0;
}
.product-update-image-grid figure {
    margin: 0;
    border-radius: 16px;
    overflow: hidden;
    background: #f8fafc;
    border: 1px solid rgba(20, 35, 60, 0.08);
}
.product-update-image-grid img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}
.product-update-image-grid figcaption {
    padding: .55rem .7rem;
    color: #475569;
    font-size: .9rem;
}

.product-update-image-grid--count-3,
.product-update-image-grid--count-4 {
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
}
@media (min-width: 760px) {
    .product-update-image-grid--count-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .product-update-image-grid--count-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* v3.7.87 Product update lightbox */
.product-update-lightbox-trigger {
    display: block;
    cursor: zoom-in;
}
.product-update-lightbox-trigger:focus-visible {
    outline: 3px solid var(--donut);
    outline-offset: 3px;
    border-radius: 16px;
}
.product-update-lightbox-modal[hidden] {
    display: none !important;
}
.product-update-lightbox-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
}
.product-update-lightbox-backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(2, 11, 36, 0.88);
    backdrop-filter: blur(8px);
    cursor: zoom-out;
}
.product-update-lightbox-dialog {
    position: relative;
    z-index: 1;
    width: min(1180px, 96vw);
    max-height: 94vh;
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.45);
    padding: 1rem;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: .75rem;
    align-items: center;
}
.product-update-lightbox-figure {
    margin: 0;
    min-width: 0;
}
.product-update-lightbox-figure img {
    width: 100%;
    max-height: 78vh;
    object-fit: contain;
    border-radius: 18px;
    background: #f8fafc;
}
.product-update-lightbox-caption {
    margin-top: .75rem;
    text-align: center;
    color: #334155;
    font-weight: 700;
}
.product-update-lightbox-close,
.product-update-lightbox-nav {
    border: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: var(--ink);
    box-shadow: 0 10px 30px rgba(0,0,0,.18);
}
.product-update-lightbox-close {
    position: absolute;
    top: .75rem;
    right: .75rem;
    width: 44px;
    height: 44px;
    border-radius: 999px;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1;
}
.product-update-lightbox-nav {
    width: 54px;
    height: 54px;
    border-radius: 999px;
    font-size: 2.5rem;
    font-weight: 400;
    line-height: 1;
}
.product-update-lightbox-counter {
    position: absolute;
    left: 50%;
    bottom: 1rem;
    transform: translateX(-50%);
    background: rgba(2, 11, 36, 0.82);
    color: #fff;
    border-radius: 999px;
    padding: .35rem .8rem;
    font-size: .85rem;
    font-weight: 800;
}
body.lightbox-open {
    overflow: hidden;
}
@media (max-width: 760px) {
    .product-update-lightbox-modal {
        padding: .5rem;
    }
    .product-update-lightbox-dialog {
        width: 100%;
        max-height: 96vh;
        border-radius: 18px;
        padding: .75rem;
        grid-template-columns: 1fr;
        gap: .6rem;
    }
    .product-update-lightbox-nav {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 42px;
        height: 42px;
        font-size: 2rem;
        opacity: .96;
    }
    .product-update-lightbox-nav--prev {
        left: .5rem;
    }
    .product-update-lightbox-nav--next {
        right: .5rem;
    }
    .product-update-lightbox-figure img {
        max-height: 72vh;
    }
}

/* v3.7.89 Product update feed/load-more polish */
.product-update-load-more-wrap {
    display: flex;
    justify-content: center;
    margin-top: 1.25rem;
}
.product-update-load-more {
    min-width: 220px;
}
.product-update-card[hidden] {
    display: none !important;
}
.product-update-card--featured {
    position: relative;
}
.product-update-card--featured::before {
    content: "Featured update";
    display: inline-flex;
    margin-bottom: .65rem;
    border-radius: 999px;
    padding: .28rem .65rem;
    background: #fff8ec;
    border: 1px solid #d9b477;
    color: var(--ink);
    font-size: .75rem;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: .06em;
}

/* v3.7.91 Product update feed hotfix */
.product-update-timeline[data-product-update-enhanced="1"] .product-update-card--hidden-by-feed {
    display: none !important;
}
.product-update-timeline[data-product-update-total]::after {
    content: none;
}

/* v3.7.92 Product update feed defensive visibility */
.product-update-card[hidden],
.product-update-card--hidden-by-feed {
    display: none !important;
}
.product-update-feed-count-note {
    font-size: .78rem;
    color: var(--muted);
}

/* CMS rich-text typography */
.rich-content > :first-child{margin-top:0}
.rich-content > :last-child{margin-bottom:0}
.rich-content p{margin:0 0 1rem}
.rich-content h2{margin:1.6rem 0 .7rem}
.rich-content h3{margin:1.35rem 0 .6rem}
.rich-content h4{margin:1.15rem 0 .5rem}
.rich-content ul,.rich-content ol{margin:.5rem 0 1.15rem;padding-left:1.6rem}
.rich-content li+li{margin-top:.3rem}
.rich-content blockquote{margin:1.25rem 0;padding:.55rem 0 .55rem 1.1rem;border-left:4px solid currentColor;opacity:.9}
.rich-content a{text-decoration:underline;text-underline-offset:.15em}
.rich-content .ql-align-center{text-align:center}
.rich-content .ql-align-right{text-align:right}
.rich-content .ql-align-justify{text-align:justify}

.rich-content ol li[data-list="bullet"]{list-style-type:disc}
.rich-content ol li[data-list="ordered"]{list-style-type:decimal}
.rich-content ol li[data-list="bullet"]::marker,.rich-content ol li[data-list="ordered"]::marker{color:currentColor}
