/* Red + Black Modern Theme — professional responsive polish */
:root{
  --rb-bg:#07080b;
  --rb-bg2:#0e1118;
  --rb-panel:#11131b;
  --rb-panel2:#171a24;
  --rb-line:rgba(255,255,255,.09);
  --rb-line-red:rgba(239,68,68,.34);
  --rb-text:#f8fafc;
  --rb-muted:#9ca3af;
  --rb-red:#ef4444;
  --rb-red2:#b91c1c;
  --rb-orange:#f97316;
  --rb-glow:0 18px 50px rgba(185,28,28,.22);
  --rb-soft:0 12px 34px rgba(0,0,0,.34);
}
html{scroll-behavior:smooth;}
body{background:radial-gradient(circle at 12% 0%,rgba(239,68,68,.16),transparent 28%),radial-gradient(circle at 92% 8%,rgba(249,115,22,.10),transparent 24%),linear-gradient(180deg,var(--rb-bg),#090a0f 45%,var(--rb-bg2)) !important;color:var(--rb-text) !important;}
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 80%);}
.public-layer, body > div:not(.drawer-overlay):not(.public-bottom-nav){position:relative;z-index:1;}
a,button,input,select,textarea{transition:all .18s ease;}
input,select,textarea{color:var(--rb-text) !important;background:#0c0f16 !important;border-color:var(--rb-line) !important;outline:none !important;}
input::placeholder,textarea::placeholder{color:#6b7280 !important;}
input:focus,select:focus,textarea:focus{border-color:rgba(239,68,68,.58) !important;box-shadow:0 0 0 4px rgba(239,68,68,.10) !important;}
select option{background:#0c0f16 !important;color:#f8fafc !important;}
.glass,.soft-card,.premium-card,.panel,.panel-card,.public-filter-card,.animated-border,.pro-card,section.bg-white,div.bg-white{background:linear-gradient(180deg,rgba(23,26,36,.96),rgba(13,16,24,.96)) !important;border:1px solid var(--rb-line) !important;box-shadow:var(--rb-soft) !important;color:var(--rb-text) !important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);}
.public-navbar,.glass.sticky,header,.topbar,.navbar{background:rgba(9,10,15,.92) !important;border-bottom:1px solid var(--rb-line-red) !important;box-shadow:0 12px 34px rgba(0,0,0,.28) !important;backdrop-filter:blur(14px) !important;-webkit-backdrop-filter:blur(14px) !important;}
.drawer{background:linear-gradient(180deg,#0d0f16,#090a0f) !important;border-right:1px solid var(--rb-line-red) !important;box-shadow:20px 0 60px rgba(0,0,0,.46) !important;}
.drawer-overlay{background:rgba(0,0,0,.72) !important;backdrop-filter:blur(4px) !important;}
nav a,.nav-item,.platform-link,.chip{border-radius:16px;}
nav a:hover,.platform-link:hover,.chip:hover{background:rgba(239,68,68,.10) !important;color:#fff !important;}
.text-accent,.text-emerald-300,.text-green-400,.text-cyan-300,.text-orange-300{color:#f87171 !important;}
.bg-accent,.bg-emerald-500,.bg-green-500,.bg-cyan-500,.bg-orange-500,.bg-blue-500{background:linear-gradient(135deg,var(--rb-red),var(--rb-red2)) !important;color:#fff !important;}
button[type="submit"],.btn,.button,.primary-btn,.pay-btn,.checkout-btn{box-shadow:0 14px 32px rgba(239,68,68,.22) !important;}
button[type="submit"]:hover,.btn:hover,.button:hover{filter:brightness(1.08);transform:translateY(-1px);}
/* Public product cards */
.product-card{background:linear-gradient(180deg,#171923,#0f121a) !important;border:1px solid rgba(255,255,255,.08) !important;box-shadow:0 10px 28px rgba(0,0,0,.28) !important;border-radius:16px !important;overflow:hidden;animation:rbFadeUp .45s ease both;}
.product-card:hover{transform:translateY(-3px) scale(1.01) !important;border-color:rgba(239,68,68,.34) !important;box-shadow:0 18px 42px rgba(185,28,28,.24) !important;}
.product-img{filter:saturate(1.08) contrast(1.03);}
.platform-badge-card{background:linear-gradient(135deg,#ef4444,#991b1b) !important;border:1px solid rgba(255,255,255,.18) !important;box-shadow:0 8px 22px rgba(239,68,68,.24) !important;}
.category-logo-chip{box-shadow:0 10px 24px rgba(0,0,0,.34) !important;border-color:rgba(255,255,255,.85) !important;}
/* Flash sale compact */
.flash-strip{background:linear-gradient(145deg,#14151d,#090a0f) !important;border:1px solid rgba(239,68,68,.20) !important;box-shadow:0 18px 48px rgba(185,28,28,.18) !important;border-radius:22px !important;}
.flash-badge{background:linear-gradient(135deg,#ef4444,#991b1b) !important;color:#fff !important;box-shadow:0 12px 28px rgba(239,68,68,.24) !important;}
.flash-card{min-width:176px !important;max-width:176px !important;background:linear-gradient(180deg,#181b25,#0f1118) !important;border:1px solid rgba(255,255,255,.09) !important;border-radius:18px !important;padding:10px !important;box-shadow:0 12px 30px rgba(0,0,0,.28) !important;}
.flash-card:hover{border-color:rgba(239,68,68,.36) !important;box-shadow:0 18px 42px rgba(185,28,28,.22) !important;}
.flash-thumb{width:58px !important;height:58px !important;border-radius:14px !important;}
.flash-card .text-slate-900,.flash-card .text-slate-500,.flash-card .text-slate-400{color:#f8fafc !important;}
.flash-card .text-orange-600{color:#f87171 !important;font-size:16px !important;}
.flash-sale-timer{background:linear-gradient(135deg,#ef4444,#7f1d1d) !important;font-size:11px !important;padding:6px 10px !important;border-radius:14px !important;}
/* Bottom nav */
.public-bottom-nav{background:rgba(7,8,11,.94) !important;border-top:1px solid rgba(239,68,68,.24) !important;box-shadow:0 -16px 44px rgba(0,0,0,.42) !important;}
.public-bottom-nav .nav-shell{max-width:520px !important;padding:6px 8px 8px !important;}
.public-bottom-nav .nav-item{font-size:10.5px !important;border-radius:14px !important;color:#9ca3af !important;padding:8px 4px 7px !important;}
.public-bottom-nav .nav-item i{font-size:18px !important;}
.public-bottom-nav .nav-item.active{color:#f87171 !important;background:rgba(239,68,68,.13) !important;box-shadow:inset 0 0 0 1px rgba(239,68,68,.28) !important;}
.public-bottom-nav .nav-item.active::before{background:#ef4444 !important;width:22px !important;height:2px !important;}
.public-bottom-nav .badge{background:#ef4444 !important;}
.public-nav-spacer{height:72px !important;}
/* Checkout / variant / payment details */
.variant-btn > div,.paylabel,.detail-row,.notif-card{background:linear-gradient(180deg,#151822,#0f1118) !important;border-color:var(--rb-line) !important;color:var(--rb-text) !important;}
.variant-btn input:checked + div,.payopt input:checked + .paylabel{background:rgba(239,68,68,.14) !important;border-color:rgba(239,68,68,.55) !important;box-shadow:0 0 0 3px rgba(239,68,68,.10) !important;}
/* Admin tables/cards */
table{border-color:var(--rb-line) !important;}
th{color:#fca5a5 !important;}td{color:#e5e7eb !important;}
tr:hover{background:rgba(239,68,68,.06) !important;}
.rounded-2xl,.rounded-3xl,.rounded-\[28px\],.rounded-\[26px\],.rounded-\[24px\]{border-radius:20px !important;}
/* Polished animations */
@keyframes rbFadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes rbGlow{0%,100%{box-shadow:0 0 0 rgba(239,68,68,0)}50%{box-shadow:0 0 30px rgba(239,68,68,.18)}}
.fade-up,.fade-in-up,.panel-card,.premium-card,.glass{animation:rbFadeUp .45s ease both;}
.pulse-glow{animation:rbGlow 2.8s ease-in-out infinite !important;}
/* Mobile sizes */
@media(max-width:640px){
  body{font-size:14px;}
  .max-w-7xl,.max-w-4xl,.max-w-3xl{padding-left:10px !important;padding-right:10px !important;}
  .flash-card{min-width:162px !important;max-width:162px !important;}
  .flash-thumb{width:52px !important;height:52px !important;}
  #productGrid{gap:7px !important;}
  .product-card{border-radius:14px !important;}
  .product-card .font-semibold{font-size:12px !important;}
  .product-card .text-\[11px\],.product-card .text-xs{font-size:10.5px !important;}
  .public-navbar .px-3{padding-left:.55rem !important;padding-right:.55rem !important;}
  .public-bottom-nav .nav-shell{max-width:100% !important;}
}

/* Theme-aware fallback for public pages that load only this stylesheet */
html[data-store-theme="light"]{
  --rb-bg:#f3f6fb;--rb-bg2:#edf3f8;--rb-panel:#ffffff;--rb-panel2:#f8fafc;
  --rb-line:rgba(15,23,42,.12);--rb-text:#0f172a;--rb-muted:#475569;--rb-soft:0 12px 30px rgba(15,23,42,.10);
}
html[data-store-theme="dark"]{
  --rb-bg:#07080b;--rb-bg2:#0e1118;--rb-panel:#11131b;--rb-panel2:#171a24;
  --rb-line:rgba(255,255,255,.09);--rb-text:#f8fafc;--rb-muted:#a8b2c1;--rb-soft:0 12px 34px rgba(0,0,0,.34);
}
html[data-store-theme="light"] body{background:linear-gradient(180deg,#f7f9fc,#edf3f8)!important;color:#0f172a!important}
html[data-store-theme="dark"] body{background:radial-gradient(circle at 12% 0%,rgba(239,68,68,.16),transparent 28%),linear-gradient(180deg,#07080b,#0e1118)!important;color:#f8fafc!important}
html[data-store-theme="light"] :where(.glass,.soft-card,.premium-card,.panel,.panel-card,.public-filter-card,.animated-border,.pro-card,.public-navbar,header,.topbar,.navbar){background:#fff!important;color:#0f172a!important;border-color:rgba(15,23,42,.12)!important;box-shadow:0 12px 30px rgba(15,23,42,.10)!important}
html[data-store-theme="dark"] :where(.glass,.soft-card,.premium-card,.panel,.panel-card,.public-filter-card,.animated-border,.pro-card,.public-navbar,header,.topbar,.navbar){background:#11131b!important;color:#f8fafc!important;border-color:rgba(255,255,255,.09)!important}
html[data-store-theme="light"] :where(.text-white,.text-gray-100,.text-gray-200,.text-gray-300,.text-slate-100,.text-slate-200,.text-slate-300){color:#0f172a!important}
html[data-store-theme="light"] :where(.text-gray-400,.text-gray-500,.text-slate-400,.text-slate-500){color:#475569!important}
html[data-store-theme="dark"] :where(.text-black,.text-gray-900,.text-gray-800,.text-gray-700,.text-slate-900,.text-slate-800,.text-slate-700){color:#f8fafc!important}
html[data-store-theme="light"] :where(input,select,textarea){background:#fff!important;color:#0f172a!important;border-color:rgba(15,23,42,.14)!important}
html[data-store-theme="dark"] :where(input,select,textarea){background:#0c0f16!important;color:#f8fafc!important;border-color:rgba(255,255,255,.10)!important}
