.loading-screen{position:fixed;inset:0;z-index:1000;display:grid;place-content:center;justify-items:center;gap:18px;background:radial-gradient(ellipse at 50% 45%,#211b0d 0,#0b0a07 44%,#030303 100%);transition:opacity .45s ease,visibility .45s ease}
.loading-screen.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.loading-logo{width:min(48vw,210px);height:210px;object-fit:contain;filter:drop-shadow(0 0 18px #d9a72d58)}
.loading-progress{width:min(68vw,230px);height:8px;overflow:hidden;border:1px solid #96741f;border-radius:99px;background:#15130d}
.loading-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#a87912,#ffcf38,#ffdf77);box-shadow:0 0 12px #e7b932a8;animation:loading-progress 2.4s ease-out forwards}
.loading-screen p{margin:0;color:#c8c0a9;font-size:12px}
.reference-promo{min-height:270px;border:1px solid #423719;border-radius:12px;background:#0b0b09;box-shadow:0 12px 34px #0009}
.price-pending{font-size:13px;color:var(--gold-light)}
.category-page{max-width:850px;margin:0 auto}
.category-page .section-head{align-items:center}
.category-page .page-title{margin:2px 0}
.category-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.category-tile{position:relative;aspect-ratio:1.7;overflow:hidden;padding:0;border:1px solid #454032;border-radius:10px;background:#10100d;color:#fff;text-align:left;cursor:pointer}
.category-tile img{width:100%;height:100%;object-fit:cover;opacity:.74;transition:transform .25s ease,opacity .25s ease}
.category-tile:after{position:absolute;inset:35% 0 0;content:'';background:linear-gradient(transparent,#000d)}
.category-tile>span:last-child{position:absolute;z-index:2;left:13px;bottom:9px;font:600 20px/1.1 var(--display)}
.category-tile-empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--gold);font-size:46px}
.category-tile-empty+span{z-index:2}
@keyframes loading-progress{to{width:100%}}
@media(max-width:800px){
  .reference-promo{min-height:0;aspect-ratio:2.03}
  .product-grid{grid-template-columns:1fr;gap:7px}
  .product-card{display:grid;grid-template-columns:92px minmax(0,1fr);min-height:104px;overflow:hidden;border:1px solid #35332c;border-radius:11px;background:#090a0b}
  .product-image{height:104px;background:#12120f}
  .product-image img{padding:7px;object-fit:contain}
  .product-info{min-width:0;padding:9px 10px}
  .product-name{font-size:17px}
  .product-detail{font-size:10px}
  .product-bottom{align-items:center}
  .add-button{width:30px;height:30px;flex:none;border-radius:8px}
  .category-page .section-head{padding-bottom:14px}
  .category-tiles{gap:8px}
  .category-tile{aspect-ratio:1.35}
  .category-tile>span:last-child{left:10px;bottom:8px;font-size:17px}
}
@media(max-width:420px){
  .loading-logo{height:185px}
  .category-tile{aspect-ratio:1.22}
  .category-tile>span:last-child{font-size:15px}
  .product-card{grid-template-columns:82px minmax(0,1fr);min-height:98px}
  .product-image{height:98px}
  .product-info{padding:8px}
  .product-bottom .stock-label{font-size:9px}
}
@media(prefers-reduced-motion:reduce){
  .loading-screen,.category-tile img{transition:none}
  .loading-progress span{animation-duration:.01ms}
}
