.store-page {
  padding-bottom: 132px;
}

.store-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.store-header h2 {
  margin: 2px 0 0;
}

.store-manage {
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.16);
  border-radius: 12px;
  color: var(--gm-violet-300);
  background: rgb(var(--gm-violet-600-rgb) / 0.2);
  font-weight:700;
}

.store-balance {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  margin-bottom: 14px;
  color: var(--gm-ink-300);
}

.store-balance strong {
  color: var(--gm-ink-50);
  font-size: 20px;
}

.store-categories {
  display: flex;
  gap: 8px;
  margin: 0 -16px 14px;
  padding: 0 16px 4px;
  overflow-x: auto;
  scrollbar-width: none;
}

.store-categories::-webkit-scrollbar {
  display: none;
}

.store-category-chip {
  flex: 0 0 auto;
  min-height: 40px;
  padding: 0 15px;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.14);
  border-radius: 999px;
  color: var(--gm-ink-200);
  background: rgb(var(--gm-ink-800-rgb) / 0.88);
  font-weight:700;
}

.store-category-chip.active {
  color: var(--gm-ink-50);
  border-color: var(--gm-violet-400);
  background: linear-gradient(135deg, rgb(var(--gm-violet-600-rgb) / 0.72), rgb(var(--gm-violet-400-rgb) / 0.54));
  box-shadow: 0 0 20px rgb(var(--gm-violet-400-rgb) / 0.121);
}

.store-state {
  padding: 24px;
  text-align: center;
  color: var(--gm-ink-300);
}

.store-products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.store-product {
  position: relative;
  min-width: 0;
  padding: 10px;
  overflow: hidden;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.13);
  border-radius: 20px;
  color: var(--gm-ink-50);
  text-align: left;
  background: linear-gradient(165deg, rgb(var(--gm-ink-750-rgb) / 0.98), rgb(var(--gm-ink-850-rgb) / 0.98));
  box-shadow: 0 14px 32px rgb(var(--gm-ink-950-rgb) / 0.16);
}

.store-product.is-sold-out {
  opacity: .68;
}

.store-product-image {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.16);
  border-radius: 16px;
  background: radial-gradient(circle at 50% 45%, rgb(var(--gm-violet-500-rgb) / 0.2), rgb(var(--gm-ink-900-rgb) / 0.9) 70%);
}

.store-product-image img {
  width: 88%;
  height: 88%;
  object-fit: contain;
}

.store-product-fallback {
  font-size: 48px;
}

.store-stock {
  position: absolute;
  z-index: 3;
  top: 8px;
  left: 8px;
  min-width: 32px;
  padding: 5px 8px;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.28);
  border-radius: 999px;
  color: var(--gm-ink-50);
  text-align: center;
  background: rgb(var(--gm-ink-900-rgb) / 0.82);
  backdrop-filter: blur(8px);
  font-size: 12px;
  font-weight:700;
}

.store-discount-coupon {
  position: absolute;
  z-index: 4;
  top: 15px;
  right: -29px;
  left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 112px;
  min-width: 0;
  height: 30px;
  padding: 0 24px;
  overflow: hidden;
  border: 0;
  border-top: 1px solid rgb(var(--gm-ink-50-rgb) / 0.44);
  border-bottom: 1px solid rgb(var(--gm-violet-700-rgb) / 0.72);
  border-radius: 0;
  color: var(--gm-ink-50);
  text-align: center;
  background: linear-gradient(105deg, var(--gm-violet-600) 0%, var(--gm-violet-500) 55%, var(--gm-red-500) 100%);
  box-shadow: 0 8px 20px rgb(var(--gm-violet-500-rgb) / 0.209), inset 0 1px rgb(var(--gm-ink-50-rgb) / 0.16);
  transform: rotate(45deg);
  transform-origin: center;
  font-size: 14px;
  font-weight:700;
  letter-spacing: -.025em;
  line-height: 1;
  text-shadow: 0 1px 3px rgb(var(--gm-violet-900-rgb) / 0.303);
  white-space: nowrap;
  pointer-events: none;
}

.store-detail-image .store-discount-coupon {
  top: 18px;
  right: -27px;
  width: 122px;
  height: 32px;
  font-size: 15px;
}

.store-product-copy {
  display: grid;
  gap: 4px;
  padding: 9px 2px 2px;
}

.store-product-copy strong {
  min-height: 38px;
  overflow: hidden;
  font-size: 14px;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.store-price-row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px;
}

.store-price-row b {
  color: var(--gm-violet-300);
  font-size: 17px;
}

.store-price-row del {
  color: var(--gm-ink-300);
  font-size: 12px;
}

.store-discount-timer {
  display: block;
  min-height: 17px;
  color: var(--gm-red-400);
  font-size: 11px;
  font-weight:700;
}

.store-detail-image {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  max-width: 100%;
  min-height: clamp(190px, 31dvh, 270px);
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.16);
  border-radius: 20px;
  background: radial-gradient(circle, rgb(var(--gm-violet-500-rgb) / 0.22), rgb(var(--gm-ink-850-rgb) / 0.92) 70%);
}

.store-backdrop {
  z-index: 75;
}

.store-sheet {
  width: min(100%, 700px);
  max-height: min(88dvh, 820px);
  overflow-y: auto;
}

.store-sheet-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  gap: 12px;
}

.store-detail-image img {
  display: block;
  min-width: 0;
  width: min(64%, 250px);
  height: auto;
  max-width: calc(100% - 16px);
  max-height: min(30dvh, 250px);
  object-fit: contain;
  object-position: center;
  image-rendering: auto;
  filter: none;
  opacity: 1;
  transform: none;
}

.store-detail-copy {
  color: var(--gm-ink-200);
  line-height: 1.55;
}

.store-detail-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.store-detail-meta div,
.store-purchase-total {
  padding: 11px;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.11);
  border-radius: 12px;
  background: rgb(var(--gm-ink-750-rgb) / 0.72);
}

.store-detail-meta small,
.store-detail-meta strong {
  display: block;
}

.store-detail-meta small {
  margin-bottom: 3px;
  color: var(--gm-ink-300);
}

.store-purchase-total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 17px;
}

.store-purchase-total strong {
  color: var(--gm-violet-300);
  font-size: 20px;
}
.store-detail-discount{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 13px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.16);border-radius:16px;background:linear-gradient(120deg,rgb(var(--gm-violet-700-rgb) / 0.2),rgb(var(--gm-red-500-rgb) / 0.1))}.store-detail-discount>span{display:grid;min-width:48px;height:34px;place-items:center;border-radius:8px;color:var(--gm-ink-50);background:linear-gradient(135deg,var(--gm-violet-600),var(--gm-red-500));font-weight:700}.store-detail-discount div{display:grid;gap:2px}.store-detail-discount small{color:var(--gm-red-400)}.store-detail-discount del{color:var(--gm-ink-300)}.store-quantity-block{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.11);border-radius:16px;background:rgb(var(--gm-ink-750-rgb) / 0.72)}.store-quantity-block>span{color:var(--gm-ink-200);font-weight:700}.store-quantity-picker{display:grid;grid-template-columns:42px 58px 42px;align-items:center;overflow:hidden;border:1px solid var(--gm-ink-500);border-radius:12px;background:var(--gm-ink-800)}.store-quantity-picker button{height:42px;border:0;color:var(--gm-violet-300);background:rgb(var(--gm-violet-500-rgb) / 0.12);font-size:22px}.store-quantity-picker input{width:58px;height:42px;padding:0;border:0;border-inline:1px solid var(--gm-ink-500);outline:0;color:var(--gm-ink-50);background:transparent;text-align:center;font:inherit;font-weight:700;-moz-appearance:textfield}.store-quantity-picker input::-webkit-inner-spin-button,.store-quantity-picker input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}

.store-manager {
  display: grid;
  gap: 16px;
}

.store-manager-card {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.12);
  border-radius: 16px;
  background: rgb(var(--gm-ink-800-rgb) / 0.82);
}

.store-manager-card h3 {
  margin: 0;
  color: var(--gm-violet-300);
}

.store-manager-inline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.store-manager-inline input,
.store-manager-card input,
.store-manager-card select {
  width: 100%;
  min-height: 44px;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.15);
  border-radius: 12px;
  color: var(--gm-ink-50);
  background: rgb(var(--gm-ink-850-rgb) / 0.9);
}

.store-manager-list {
  display: grid;
  gap: 8px;
}

.store-manager-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.10);
  border-radius: 12px;
}

.store-manager-row small {
  color: var(--gm-ink-300);
}

.store-manager-row-actions {
  display: flex;
  gap: 6px;
}

.store-manager-row button,
.store-manager-inline button {
  min-height: 38px;
  padding: 0 11px;
  border: 1px solid rgb(var(--gm-ink-50-rgb) / 0.16);
  border-radius: 12px;
  color: var(--gm-violet-300);
  background: rgb(var(--gm-violet-600-rgb) / 0.2);
  font-weight:700;
}

.store-manager-row button.danger {
  color: var(--gm-red-400);
  border-color: rgb(var(--gm-red-500-rgb) / 0.42);
  background: rgb(var(--gm-gold-800-rgb) / 0.18);
}

.store-duration-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.store-manager-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

@media (min-width: 720px) {
  .store-products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 360px) {
  .store-products {
    gap: 7px;
  }

  .store-product {
    padding: 7px;
  }
}

/* Premium storefront and compact owner catalog. */
.store-balance{position:relative;min-height:82px;overflow:hidden;padding:16px 18px;border-color:rgb(var(--gm-ink-50-rgb) / 0.14);background:linear-gradient(120deg,var(--gm-ink-800),var(--gm-ink-800))}
.store-balance-copy{position:relative;z-index:2;display:grid;gap:5px}.store-balance img{position:absolute;right:-8px;width:130px;height:90px;object-fit:contain;filter:drop-shadow(0 10px 15px rgb(var(--gm-violet-600-rgb) / 0.165))}
.store-search{display:flex;align-items:center;gap:9px;min-height:48px;margin-bottom:13px;padding:0 13px;border:1px solid var(--gm-ink-600);border-radius:16px;color:var(--gm-ink-300);background:var(--gm-ink-800)}.store-search input{width:100%;padding:13px 0;border:0;outline:0;color:var(--gm-ink-50);background:transparent;font:inherit}
.store-featured{margin-bottom:13px}.store-featured>button{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 130px;align-items:center;gap:8px;width:100%;min-height:142px;padding:18px;overflow:hidden;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.16);border-radius:24px;color:var(--gm-ink-50);background:radial-gradient(circle at 85% 45%,rgb(var(--gm-violet-500-rgb) / 0.3),transparent 42%),linear-gradient(135deg,var(--gm-ink-750),var(--gm-ink-800));text-align:left;box-shadow:0 18px 38px rgb(var(--gm-ink-950-rgb) / 0.22)}.store-featured-copy{position:relative;z-index:2;display:grid;gap:6px;min-width:0}.store-featured-copy>small{color:var(--gm-violet-400);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.store-featured-copy>strong{font-size:20px;line-height:1.1}.store-featured-copy>span{display:-webkit-box;max-width:240px;overflow:hidden;color:var(--gm-ink-200);font-size:10px;line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical}.store-featured-copy>b{color:var(--gm-violet-300);font-size:11px}.store-featured-copy i{font-style:normal}.store-featured-price{position:relative;z-index:2;display:grid;align-self:end;justify-items:end;gap:3px}.store-featured-price strong{color:var(--gm-violet-300);font-size:17px}.store-featured-price del{color:var(--gm-ink-300);font-size:10px}.store-featured-price small{color:var(--gm-red-400);font-size:8px}.store-featured-image{position:relative;z-index:1;display:grid;width:130px;height:112px;place-items:center}.store-featured-image img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 12px 15px rgb(var(--gm-ink-950-rgb) / 0.28))}
.store-filter-row{display:flex;align-items:center;gap:7px;margin-bottom:9px;overflow-x:auto;scrollbar-width:none}.store-filter{flex:0 0 auto;min-height:36px;padding:0 12px;border:1px solid var(--gm-ink-500);border-radius:999px;color:var(--gm-ink-300);background:var(--gm-ink-800);font-size:10px;font-weight:700}.store-filter.active{border-color:var(--gm-violet-500);color:var(--gm-ink-50);background:var(--gm-violet-800)}.store-sort{margin-left:auto}.store-sort select{min-height:36px;padding:0 26px 0 9px;border:1px solid var(--gm-ink-500);border-radius:999px;color:var(--gm-violet-300);background:var(--gm-ink-800);font-size:10px}.store-categories{margin-bottom:11px}.store-product{padding:7px;border-radius:16px}.store-product-image{border-radius:12px}.store-product-copy{padding:8px 3px 3px}.store-product-copy strong{min-height:auto;font-size:12px}.store-price-row b{font-size:15px}.store-discount-timer{font-size:9px}
.store-manager.premium{gap:12px}.store-manager-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.store-manager-summary>div,.store-manager-summary>button{display:grid;gap:3px;min-width:0;padding:10px 7px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.08);border-radius:12px;color:var(--gm-ink-50);background:rgb(var(--gm-ink-50-rgb) / 0.03);text-align:center}.store-manager-summary small{color:var(--gm-ink-300);font-size:8px}.store-manager-summary strong{font-size:14px}.store-manager-summary button strong{color:var(--gm-violet-300);font-size:10px}.store-manager-feature{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.14);border-radius:16px;background:linear-gradient(130deg,rgb(var(--gm-violet-700-rgb) / 0.22),rgb(var(--gm-ink-800-rgb) / 0.88))}.store-manager-feature>span{display:grid;width:58px;height:58px;place-items:center;border-radius:12px;background:rgb(var(--gm-violet-500-rgb) / 0.12);font-size:24px}.store-manager-feature img{max-width:100%;max-height:100%;object-fit:contain}.store-manager-feature>div{display:grid;gap:2px;min-width:0}.store-manager-feature small,.store-manager-feature p{margin:0;color:var(--gm-ink-300);font-size:9px}.store-manager-feature strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.store-manager-feature button,.store-catalog-manager header button{min-height:37px;padding:0 10px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.16);border-radius:12px;color:var(--gm-violet-300);background:rgb(var(--gm-violet-700-rgb) / 0.18);font-weight:700}.store-catalog-manager{display:grid;gap:10px}.store-catalog-manager>header{display:flex;align-items:center;justify-content:space-between}.store-catalog-manager h3{margin:0}.store-catalog-manager header small{color:var(--gm-ink-300);font-size:9px}.store-manager-search{margin:0}.store-manager-list.sortable{gap:6px}.store-manager-product{display:grid;grid-template-columns:25px 46px minmax(0,1fr) 34px auto;align-items:center;gap:7px;padding:7px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.075);border-radius:12px;background:rgb(var(--gm-ink-50-rgb) / 0.025);transition:.15s}.store-manager-product.is-dragging{z-index:4;border-color:var(--gm-violet-500);background:var(--gm-ink-700);box-shadow:0 12px 28px rgb(var(--gm-ink-950-rgb) / 0.38);transform:scale(1.02)}.store-drag-handle{height:42px;border:0;color:var(--gm-ink-300);background:transparent;font-size:17px;touch-action:none;cursor:grab}.store-manager-thumb{display:grid;width:46px;height:46px;place-items:center;border-radius:8px;background:radial-gradient(circle,rgb(var(--gm-violet-600-rgb) / 0.18),transparent 72%)}.store-manager-thumb img{max-width:100%;max-height:100%;object-fit:contain}.store-manager-copy{display:grid;gap:3px;min-width:0}.store-manager-copy strong,.store-manager-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.store-manager-copy small{color:var(--gm-ink-300);font-size:9px}.store-edit-icon{width:34px;height:34px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.10);border-radius:8px;color:var(--gm-violet-400);background:rgb(var(--gm-violet-600-rgb) / 0.12)}.store-visibility{position:relative;display:block;width:38px;height:22px}.store-visibility input{position:absolute;opacity:0}.store-visibility span{position:absolute;inset:0;border-radius:999px;background:var(--gm-ink-500);transition:.18s}.store-visibility span::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--gm-ink-50);transition:.18s}.store-visibility input:checked+span{background:linear-gradient(135deg,var(--gm-violet-600),var(--gm-violet-500))}.store-visibility input:checked+span::after{transform:translateX(16px)}.store-feature-picker{display:grid;gap:7px}.store-feature-picker button{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.08);border-radius:12px;color:var(--gm-ink-50);background:rgb(var(--gm-ink-50-rgb) / 0.03);text-align:left}.store-feature-picker button.active{border-color:var(--gm-violet-500);background:rgb(var(--gm-violet-600-rgb) / 0.15)}.store-feature-picker img{width:46px;height:46px;object-fit:contain}.store-feature-picker span{display:grid}.store-feature-picker small{color:var(--gm-ink-300)}.store-feature-picker b{color:var(--gm-violet-300);font-size:10px}.store-editor-delete{min-height:42px;border:1px solid rgb(var(--gm-red-500-rgb) / 0.28);border-radius:12px;color:var(--gm-red-400);background:rgb(var(--gm-gold-800-rgb) / 0.13)}
@media(max-width:500px){.store-featured>button{grid-template-columns:minmax(0,1fr) 105px;padding:14px}.store-featured-price{grid-column:1/2;grid-row:2}.store-featured-image{grid-column:2;grid-row:1/3;width:105px;height:105px}.store-manager-summary{grid-template-columns:repeat(2,1fr)}.store-manager-feature{grid-template-columns:48px minmax(0,1fr) auto}.store-manager-feature>span{width:48px;height:48px}}

/* Final responsive storefront: safe gutters and complete content. */
.store-page{min-width:0;padding-inline:4px;padding-bottom:calc(150px + env(safe-area-inset-bottom))}
.store-page>*,.store-header>*,.store-product-copy,.store-featured-copy{min-width:0;max-width:100%}
.store-balance img{right:10px;width:116px;height:82px}.store-balance-copy{max-width:62%}
.store-search svg,.store-manager-search svg,.store-featured-copy svg,.store-manager-summary svg,.store-drag-handle svg,.store-edit-icon svg{display:block;flex:0 0 auto;width:19px;height:19px}.store-search svg{color:var(--gm-ink-300)}.store-search input{min-width:0}
.store-filter-row,.store-categories{width:100%;max-width:100%;margin-inline:0;padding-inline:0;padding-bottom:4px;scroll-padding-inline:0;overscroll-behavior-inline:contain}.store-filter-row::after,.store-categories::after{content:"";flex:0 0 1px}.store-sort{flex:0 0 auto}
.store-featured>button{grid-template-columns:minmax(0,1fr) minmax(92px,25%);min-height:154px;padding:16px}.store-featured-copy>small::before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:var(--gm-violet-400);box-shadow:0 0 10px rgb(var(--gm-violet-400-rgb) / 0.55)}.store-featured-copy>span{display:block;max-width:none;overflow:visible;-webkit-line-clamp:unset}.store-featured-copy>b{display:flex;align-items:center;gap:3px}.store-featured-copy>b svg{width:14px;height:14px}.store-featured-price{grid-column:1;grid-row:2;justify-items:start}.store-featured-image{grid-column:2;grid-row:1/3;width:100%;height:122px;overflow:hidden}.store-featured-image img{width:100%;height:100%;object-fit:contain}
.store-product{display:flex;min-height:100%;flex-direction:column;overflow:hidden}.store-product-image img{display:block;width:calc(100% - 8px);height:calc(100% - 8px);max-width:384px;max-height:384px;object-fit:contain;object-position:center;image-rendering:auto;filter:none;opacity:1;transform:none}.store-product-copy{flex:1;align-content:start}.store-product-copy strong{display:block;min-height:0;overflow:visible;font-size:12px;line-height:1.3;white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:unset}.store-discount-timer{white-space:normal;overflow-wrap:anywhere}
.store-product-image.is-image-error::after,.store-detail-image.is-image-error::after,.store-featured-image.is-image-error::after,.store-manager-thumb.is-image-error::after{content:"Изображение\A не загружено";display:grid;place-items:center;width:100%;height:100%;padding:5px;color:var(--gm-ink-300);font-size:9px;line-height:1.25;text-align:center;white-space:pre-line}
.store-sheet{width:min(calc(100% - 8px),700px);padding-inline:16px}.store-sheet-body{min-width:0}.store-manager-card{min-width:0;padding:13px}.store-manager-inline{min-width:0}.store-manager-inline>*{min-width:0}.store-manager-row{min-width:0}.store-manager-row>span:first-child{min-width:0}.store-manager-row strong{display:block;overflow-wrap:anywhere}.store-manager-row-actions{min-width:0}
.store-manager-summary>button strong{display:flex;align-items:center;justify-content:center;gap:2px}.store-manager-summary svg{width:13px;height:13px}.store-manager-feature{min-width:0}.store-manager-feature strong{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.store-manager-feature button{white-space:normal}
.store-catalog-manager>header{gap:10px}.store-catalog-manager>header>div{min-width:0}.store-catalog-manager header small{display:block;line-height:1.3}.store-catalog-manager header button{flex:0 0 auto;white-space:normal}.store-manager-product{min-width:0}.store-drag-handle,.store-edit-icon{display:grid;place-items:center;padding:0}.store-drag-handle svg{width:22px;height:22px}.store-edit-icon svg{width:17px;height:17px}.store-manager-copy strong,.store-manager-copy small{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.25}
@media(max-width:520px){
  .store-manager-inline{grid-template-columns:1fr}.store-manager-inline button{width:100%}
  .store-manager-row{grid-template-columns:1fr;align-items:stretch;padding:11px}.store-manager-row-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.store-manager-row button{min-width:0;padding:7px 8px;white-space:normal;line-height:1.2}
  .store-catalog-manager>header{align-items:flex-start}.store-catalog-manager header button{max-width:42%;padding:7px 9px;line-height:1.2}
}
@media(max-width:390px){
  .store-page{padding-inline:2px}.store-header{gap:9px}.store-manage{padding-inline:10px}.store-balance{padding-inline:14px}.store-balance img{right:6px;width:104px}
  .store-featured>button{grid-template-columns:minmax(0,1fr) 92px;padding:13px}.store-featured-image{width:92px;height:110px}.store-featured-copy>strong{font-size:18px}.store-featured-price strong{font-size:16px}
  .store-products{gap:8px}.store-product{padding:6px}.store-stock{top:6px;left:6px;padding:4px 6px}.store-product-copy{padding-inline:2px}.store-price-row b{font-size:14px}
  .store-manager-product{grid-template-columns:24px 42px minmax(0,1fr) 32px auto;gap:5px}.store-manager-thumb{width:42px;height:42px}.store-visibility{width:34px}.store-visibility input:checked+span::after{transform:translateX(12px)}
}
@media(max-width:340px){
  .store-featured>button{grid-template-columns:minmax(0,1fr) 78px}.store-featured-image{width:78px;height:96px}.store-featured-copy>span{font-size:9px}.store-manager-product{grid-template-columns:22px 38px minmax(0,1fr) 31px}.store-manager-thumb{width:38px;height:38px}.store-visibility{grid-column:3/-1;justify-self:end}.store-catalog-manager header small{font-size:8px}
}

/* Product editor: compact sections, touch-safe switches and live price guard. */
.store-product-editor{gap:12px;padding:0;border:0;background:transparent}
.store-editor-section{display:grid;gap:10px;padding:13px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.10);border-radius:16px;background:linear-gradient(145deg,rgb(var(--gm-ink-750-rgb) / 0.96),rgb(var(--gm-ink-800-rgb) / 0.96));box-shadow:inset 0 1px rgb(var(--gm-ink-50-rgb) / 0.025)}
.store-editor-section>h3{margin:0 0 1px;color:var(--gm-ink-100);font-size:13px}
.store-editor-discount-grid{display:grid;grid-template-columns:minmax(110px,.55fr) minmax(0,1fr);align-items:end;gap:10px}
.store-editor-hint{margin:-3px 0 0;color:var(--gm-ink-300);font-size:10px;line-height:1.4}.store-editor-hint.is-error{color:var(--gm-red-400)}
.store-editor-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:9px 11px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.09);border-radius:12px;background:rgb(var(--gm-ink-850-rgb) / 0.62);cursor:pointer}
.store-editor-switch>span{display:grid;gap:3px;min-width:0}.store-editor-switch strong{font-size:12px}.store-editor-switch small{color:var(--gm-ink-300);font-size:9px}.store-editor-switch input{position:absolute!important;width:1px!important;height:1px!important;opacity:0}.store-editor-switch i{position:relative;flex:0 0 42px;width:42px;height:24px;border-radius:999px;background:var(--gm-ink-500);transition:.18s}.store-editor-switch i::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--gm-ink-100);transition:.18s}.store-editor-switch input:checked+i{background:linear-gradient(135deg,var(--gm-violet-600),var(--gm-violet-500));box-shadow:0 0 18px rgb(var(--gm-violet-500-rgb) / 0.138)}.store-editor-switch input:checked+i::after{transform:translateX(18px)}
.store-price-preview{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 10px;padding:11px 12px;border:1px solid rgb(var(--gm-ink-50-rgb) / 0.13);border-radius:12px;background:linear-gradient(120deg,rgb(var(--gm-violet-700-rgb) / 0.18),rgb(var(--gm-ink-800-rgb) / 0.74))}.store-price-preview span{color:var(--gm-ink-300);font-size:10px}.store-price-preview strong{grid-row:1/3;grid-column:2;color:var(--gm-violet-300);font-size:18px}.store-price-preview small{color:var(--gm-violet-400);font-size:9px}
.store-product-editor .store-manager-actions{position:sticky;z-index:4;bottom:-1px;padding:9px 0 2px;background:linear-gradient(180deg,transparent,var(--gm-ink-800) 28%)}
@media(max-width:480px){.store-editor-discount-grid{grid-template-columns:1fr}.store-product-editor .store-duration-grid{gap:6px}.store-product-editor .store-duration-grid input{padding-inline:8px}.store-editor-section{padding:11px}}

/* Store dialogs stay above the shared navigation and keep primary actions visible. */
.store-backdrop {
  z-index: 130;
}

body.store-modal-open {
  overflow: hidden;
}

body.store-modal-open #toast {
  z-index: 140;
}

.store-sheet {
  display: flex;
  min-height: 0;
  max-height: min(calc(100dvh - 16px), 820px);
  flex-direction: column;
  overflow: hidden;
  padding-bottom: 0;
}

.store-sheet > .sheet-handle,
.store-sheet > .sheet-heading,
.store-sheet > .store-sheet-footer {
  flex: 0 0 auto;
}

.store-sheet-body {
  flex: 1 1 auto;
  min-height: 0;
  padding-bottom: 14px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.store-sheet-footer {
  position: relative;
  z-index: 3;
  margin-inline: -14px;
  padding: 10px 14px max(12px, env(safe-area-inset-bottom));
  border-top: 1px solid rgb(var(--gm-ink-50-rgb) / 0.10);
  background: linear-gradient(180deg, rgb(var(--gm-ink-800-rgb) / 0.96), var(--gm-ink-800) 34%);
  box-shadow: 0 -12px 28px rgb(var(--gm-ink-950-rgb) / 0.2);
}

.store-sheet-footer .button {
  display: grid;
  width: 100%;
  min-height: 52px;
  place-items: center;
  border-radius: 12px;
  font-weight:700;
}

/* Product details reflow with the user's font size instead of squeezing
   headings, discount text and quantity controls into fixed-width columns. */
.store-product-sheet {
  container-type: inline-size;
}

.store-product-sheet > .sheet-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
}

.store-product-sheet > .sheet-heading > div,
.store-product-sheet .store-sheet-body > *,
.store-product-sheet .store-detail-meta > div {
  min-width: 0;
  max-width: 100%;
}

.store-product-sheet > .sheet-heading h2,
.store-product-sheet .store-detail-copy,
.store-product-sheet .store-detail-meta,
.store-product-sheet .store-detail-discount,
.store-product-sheet .store-quantity-block > span {
  overflow-wrap: anywhere;
}

.store-product-sheet [data-store-close] {
  min-width: 44px;
  min-height: 44px;
}

.store-product-sheet .store-detail-meta {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 8rem), 1fr));
}

.store-product-sheet .store-detail-discount {
  display: flex;
  flex-wrap: wrap;
}

.store-product-sheet .store-detail-discount > span {
  flex: 0 0 auto;
  height: auto;
  min-height: 34px;
  max-width: 100%;
  padding: 3px 8px;
}

.store-product-sheet .store-detail-discount > div {
  flex: 1 1 8rem;
  min-width: 0;
  max-width: 100%;
}

.store-product-sheet .store-detail-discount > del {
  min-width: 0;
  max-width: 100%;
}

.store-product-sheet .store-quantity-block,
.store-product-sheet .store-purchase-total {
  flex-wrap: wrap;
  gap: 10px 12px;
}

.store-product-sheet .store-quantity-picker {
  flex: 0 1 auto;
  max-width: 100%;
  grid-template-columns: 44px minmax(0, 58px) 44px;
}

.store-product-sheet .store-quantity-picker button,
.store-product-sheet .store-quantity-picker input {
  min-width: 0;
  height: max(44px, 1.6em);
}

.store-product-sheet .store-quantity-picker input {
  width: 100%;
}

.store-product-sheet .store-purchase-total > strong {
  min-width: 0;
  max-width: 100%;
}

@container (max-width: 12rem) {
  .store-product-sheet > .sheet-heading {
    gap: 4px;
  }

  .store-product-sheet > .sheet-heading > div {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .store-product-sheet [data-store-close] {
    grid-column: 2;
    grid-row: 1;
  }

  .store-product-sheet .store-quantity-block {
    padding-inline: 6px;
  }
}

@media (max-height: 640px) {
  .store-detail-image { min-height: 160px; }
  .store-detail-image img { width: min(60%, 204px); max-height: 144px; }
  .store-sheet { max-height: calc(100dvh - 24px); }
}
