/* WiFiCraft equipment shop: dark item displays, light readable product details. */
.store-page { background:#f0f5f9; }
.catalog-main { padding-top:20px; }
.catalog-main > .store-back { margin-bottom:20px; }
.catalog-heading {
  position:relative;isolation:isolate;overflow:hidden;
  display:grid;grid-template-columns:1fr auto;column-gap:30px;
  text-align:left;padding:30px 38px;border:1px solid #224151;
  border-radius:24px;background:#0c1d2a;color:#fff;
  box-shadow:0 16px 35px -24px #102e5166;margin-bottom:34px;
}
.catalog-heading:before {
  content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;
  background:radial-gradient(ellipse at 95% 10%,#079cc63b,transparent 58%),
    linear-gradient(125deg,transparent 60%,#1b526522);
}
.catalog-heading:after {
  content:"";position:absolute;z-index:-1;right:7%;top:-65px;width:300px;height:300px;
  transform:rotate(-22deg);pointer-events:none;opacity:.2;
  background-image:linear-gradient(#65dafa33 1px,transparent 1px),linear-gradient(90deg,#65dafa33 1px,transparent 1px);
  background-size:32px 32px;mask-image:radial-gradient(ellipse,#000,transparent 72%);
}
.catalog-heading > .store-badge {
  grid-column:1;justify-self:start;background:#16c6e812;border-color:#4edbf02b;
  color:#6ae5f3;font-size:9px;padding:7px 12px;letter-spacing:2px;
}
.catalog-heading h1 { grid-column:1;font-size:48px;letter-spacing:-1px;margin:13px 0 8px; }
.catalog-heading p { grid-column:1;color:#9eb7c9;font-size:13px; }
.catalog-tabs { grid-column:2;grid-row:1 / 4;align-self:center;margin:0;padding:5px;background:#06152270;border-color:#bcefff1a;box-shadow:none; }
.catalog-tabs button { color:#94b4c7;padding:13px 25px;font-size:11px; }
.catalog-tabs button[aria-selected=true] { background:#36d1ed;box-shadow:0 4px 18px #00c9ef25;color:#062737; }
.catalog-group { margin-top:34px; }
.catalog-group h2 { font-size:22px;letter-spacing:-.4px;text-transform:none;border:0;padding-bottom:0;margin-bottom:19px;gap:12px; }
.catalog-group h2:before { content:"";width:5px;height:20px;border-radius:3px;background:#10badb;align-self:center;box-shadow:5px 0 0 #10badb12; }
.catalog-group h2 small { font-size:12px;color:#8398aa; }
.bundle-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.product-grid { gap:20px; }
.product-grid .product-card {
  position:relative;padding:0;border:1px solid #dbe5ec;border-radius:19px;overflow:hidden;
  box-shadow:0 4px 15px #13374a06;transition:transform .22s,box-shadow .22s,border-color .22s;
}
.product-grid .product-card:hover { transform:translateY(-6px);border-color:#75d5e7;box-shadow:0 14px 28px #103c5215; }
.product-grid .product-art {
  position:relative;isolation:isolate;height:162px;margin:10px 10px 0;
  border-radius:12px;background:#0c2231;overflow:hidden;
}
.product-grid .product-art:before {
  content:"";position:absolute;inset:0;z-index:-1;
  background:radial-gradient(ellipse at 50% 75%,#07bae236,transparent 63%),
    linear-gradient(#629bb00b 1px,transparent 1px),linear-gradient(90deg,#629bb00b 1px,transparent 1px);
  background-size:auto,25px 25px,25px 25px;
}
.product-grid .product-art:after {
  content:"";position:absolute;bottom:17px;left:28%;width:44%;height:12px;border-radius:50%;
  background:#14d6f32b;filter:blur(10px);transition:opacity .2s,transform .2s;
}
.product-grid .product-art img { position:relative;z-index:1;width:104px;height:104px;filter:drop-shadow(0 14px 8px #0008); }
.product-grid .product-card:hover .product-art img { transform:translateY(-7px) rotate(-4deg) scale(1.04); }
.product-grid .product-card:hover .product-art:after { transform:scale(1.2);opacity:.7; }
.product-grid .product-card h3 {
  text-align:left;justify-content:flex-start;margin:19px 20px 14px;
  min-height:42px;letter-spacing:-.15px;font-size:12px;line-height:1.6;color:#183a53;
}
.product-grid .product-purchase {
  display:flex;align-items:center;gap:12px;justify-content:space-between;
  margin:0 20px 20px;padding:16px 0 0;border:0;border-top:1px solid #e7edf1;
  border-radius:0;background:transparent;margin-top:auto;text-align:left;
}
.product-grid .product-purchase > strong { margin:0;white-space:nowrap;font-size:27px;letter-spacing:-.8px; }
.product-grid .product-purchase small { color:#8a9eab;font-size:10px;letter-spacing:0; }
.product-grid .buy-link { width:auto;min-width:98px;padding:12px 13px;border-radius:9px;background:#e4f7fc;color:#087b9c;gap:10px;letter-spacing:.3px;font-size:10px; }
.product-grid .buy-link:hover { background:#28c7e8;color:#062b3b;filter:none; }
.bundle-grid .product-art { height:195px; }
.bundle-grid .product-art img { width:125px;height:125px; }
.bundle-grid .product-art:before { background:radial-gradient(ellipse at 50% 65%,#bd813f32,transparent 60%),linear-gradient(#7795a70c 1px,transparent 1px),linear-gradient(90deg,#7795a70c 1px,transparent 1px);background-size:auto,27px 27px,27px 27px; }
.bundle-grid .product-art:after { background:#f3b85a25; }
.bundle-grid .product-card h3 { font-size:14px;min-height:23px;margin-top:20px; }
.bundle-grid .buy-link { background:#28c7e8;color:#063044;min-width:116px; }
.bundle-grid .buy-link:hover { background:#78e4f5; }
.item-category {
  position:absolute;top:13px;left:13px;z-index:2;
  display:inline-flex;align-items:center;gap:6px;color:#a8c2d2;
  font-size:8px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;
}
.item-category:before { content:"";width:4px;height:4px;background:#35d1eb;box-shadow:0 0 9px #25b9df; }
.bundle-grid .item-category { color:#dfc8a0; }
.bundle-grid .item-category:before { background:#e9ba66;box-shadow:0 0 9px #e9ba6670; }
.rank-card { box-shadow:0 4px 16px #193e5209; }
.rank-card .product-art { background:linear-gradient(150deg,#f8fcff,var(--tint)); }
.catalog-group .comparison-title { text-transform:none; }
.catalog-group .comparison-title:before { display:none; }
.store-select .catalog-heading { max-width:900px;margin-left:auto;margin-right:auto; }
.store-select .catalog-heading h1 { font-size:42px; }
.server-tile { background:#fff;box-shadow:0 5px 20px #16466408; }
.server-tile:hover { border-color:#85d7e8; }
.checkout-heading h1 { font-size:31px;letter-spacing:-.8px; }
.checkout-heading .store-badge { background:#e5f7fc;color:#1188a9;border-color:#c9eaf3; }
.checkout-grid { gap:25px; }
.checkout-aside .summary-panel { background:radial-gradient(ellipse at 0 100%,#08688455,transparent 70%),#0c2231;border-color:#244252;box-shadow:0 14px 30px -20px #102f4b66; }
.checkout-aside .summary-art { background:#04162270;border:1px solid #b5ebff12; }
.checkout-aside .summary-panel h2 { color:#f2faff; }
.checkout-aside .summary-panel span { color:#86aabb; }
.checkout-aside .summary-panel strong { color:#5cdbed; }
.checkout-aside .description-panel { border-color:#dbe6ed;box-shadow:none; }
.purchase-form { padding:25px;background:#fff;border:1px solid #dbe6ed;border-radius:18px;box-shadow:0 5px 25px #18445a06; }
.checkout-total { border-top-style:dashed; }
.checkout-submit { background:#20bedf;border-radius:10px;min-height:49px;box-shadow:0 6px 18px #07a3d31a; }
.checkout-submit:hover { background:#4ed4ed; }
.payment-option > span { background:#f7fafc;border-color:#dce7ee; }
.payment-option input:checked + span { background:#eaf9fc;border-color:#20bfdc;box-shadow:0 0 0 2px #20bfdc0c; }
@media (max-width:1150px) {
  .catalog-heading { padding:27px 30px; }
  .product-grid .product-card h3 { margin-left:16px;margin-right:16px;font-size:11px; }
  .product-grid .product-purchase { margin-left:16px;margin-right:16px;gap:8px; }
  .product-grid .product-purchase > strong { font-size:25px; }
  .product-grid .buy-link { min-width:86px;padding:11px; }
  .bundle-grid .product-card h3 { font-size:12px; }
  .bundle-grid .product-art { height:180px; }
  .bundle-grid .buy-link { min-width:95px; }
}
@media (max-width:850px) {
  .catalog-heading { padding:26px;grid-template-columns:1fr; }
  .catalog-heading h1 { font-size:43px; }
  .catalog-tabs { grid-row:4;grid-column:1;justify-self:start;margin-top:22px; }
  .bundle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bundle-grid .product-art { height:180px; }
  .product-grid .product-card h3 { font-size:12px; }
  .bundle-grid .product-card h3 { min-height:39px; }
  .purchase-form { padding:23px; }
  .checkout-aside .summary-panel { height:100%; }
}
@media (max-width:550px) {
  .catalog-heading { border-radius:18px;padding:24px 22px;margin-bottom:28px; }
  .catalog-heading h1 { font-size:37px; }
  .catalog-heading p { font-size:11px;line-height:1.7; }
  .catalog-heading > .store-badge { font-size:8px; }
  .catalog-tabs button { padding:11px 25px;font-size:10px; }
  .catalog-group h2 { font-size:21px;gap:8px;margin-bottom:15px; }
  .catalog-group h2 small { font-size:10px; }
  .product-grid { gap:12px; }
  .product-grid .product-card { border-radius:15px; }
  .product-grid .product-art { margin:7px 7px 0;height:133px;border-radius:9px; }
  .product-grid .product-art img { width:81px;height:81px;margin-top:10px; }
  .product-grid .product-card h3 { margin:13px 12px 10px;font-size:10px;min-height:47px; }
  .product-grid .product-purchase { flex-direction:column;align-items:stretch;gap:10px;margin:0 12px 13px;padding-top:12px; }
  .product-grid .product-purchase > strong { font-size:25px; }
  .product-grid .buy-link { min-width:0;width:100%;padding:11px 9px;justify-content:space-between;font-size:9px; }
  .item-category { font-size:7px;letter-spacing:1px;top:11px;left:10px; }
  .bundle-grid .product-art { height:145px; }
  .bundle-grid .product-art img { width:94px;height:94px; }
  .bundle-grid .product-card h3 { font-size:10px;min-height:47px; }
  .store-select .catalog-heading h1 { font-size:32px; }
  .checkout-heading h1 { font-size:25px;line-height:1.35; }
  .purchase-form { padding:20px 17px;border-radius:15px; }
  .checkout-consent { font-size:10px; }
  .payment-option > span { padding:11px;gap:8px; }
  .payment-option svg { width:18px;height:18px; }
  .payment-option small { font-size:8px; }
}
@media (prefers-reduced-motion:reduce) {
  .product-grid .product-card:hover,.product-grid .product-card:hover .product-art img,.product-grid .product-card:hover .product-art:after { transform:none; }
}
