/* Shared geometry for every public module. Keep page-specific CSS visual only. */
:where(.products-page,.shop-page,.y-lb,.punishment-noir,.profile-page,.support-page,.rules-page,.legal-page){
  width:100%!important;
  max-width:var(--shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.products-stack,
.products-referral{
  max-width:none!important;
}

@media (max-width:760px){
  :where(.products-page,.shop-page,.y-lb,.punishment-noir,.profile-page,.support-page,.rules-page,.legal-page){
    width:100%!important;
  }
}
/* Project announcement directly below the main navigation. */
.site-announcement{position:relative;z-index:20;border-bottom:1px solid #201f18;background:#050505;color:#f5f5f5}.site-announcement__inner{width:min(1180px,calc(100% - 32px));min-height:58px;margin:0 auto;display:flex;align-items:center;gap:14px;padding:10px 0}.site-announcement__mark{flex:none;padding:5px 8px;border:1px solid rgba(214,255,85,.34);border-radius:6px;color:#d6ff55;font:700 .62rem/1 var(--font);letter-spacing:.1em}.site-announcement__inner>div{min-width:0;display:flex;align-items:baseline;gap:10px}.site-announcement strong{font-size:.78rem}.site-announcement p{margin:0;color:#aaa;font-size:.72rem;line-height:1.45}.site-announcement a{margin-left:auto;flex:none;color:#f1f1f1;font-size:.7rem;font-weight:650;text-decoration:none}.site-announcement a span{margin-left:5px;color:#d6ff55;transition:transform .18s ease;display:inline-block}.site-announcement a:hover span{transform:translateX(3px)}
@media(max-width:720px){.site-announcement__inner{align-items:flex-start;flex-wrap:wrap;padding:12px 0}.site-announcement__inner>div{display:block;flex:1}.site-announcement p{margin-top:3px}.site-announcement a{width:100%;margin-left:0;padding-left:63px}}
