/* Product entry and parameter dialog inherit the active storefront palette. */
.public-storefront [hidden] { display: none !important; }
.public-storefront .product-studio-launch-inline {
  display: flex; align-items: center; gap: 24px; margin: 20px 0;
  padding: 20px 0; border-block: 1px solid color-mix(in srgb, var(--store-text) 15%, transparent);
}
.public-storefront .product-studio-launch-inline .storefront-button {
  flex: 0 0 auto; min-width: 124px; min-height: 44px; padding: 12px 20px;
  border: 1px solid var(--store-accent); border-radius: 7px;
  background: transparent; color: var(--store-text); font: 600 14px/1.2 system-ui, sans-serif;
}
.public-storefront .product-studio-launch-inline .storefront-button:hover {
  background: color-mix(in srgb, var(--store-accent) 12%, var(--store-bg));
}
.public-storefront .product-studio-launch-inline small { font: 400 15px/1.5 system-ui, sans-serif; color: var(--store-muted); }
.public-storefront .storefront-studio-options-dialog { font: 400 15px/1.5 system-ui, sans-serif; }
.public-storefront .storefront-studio-options-group {
  border: 1px solid color-mix(in srgb, var(--store-text) 16%, transparent);
  border-radius: 8px; margin: 12px 0; padding: 0 14px;
}
.public-storefront .storefront-studio-options-values { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.public-storefront .storefront-studio-options-values.is-list { grid-template-columns: 1fr; }
.public-storefront .storefront-studio-options-value { padding: 4px; border-radius: 8px; text-align: center; font-size: 13px; }
.public-storefront .storefront-studio-options-value-media { aspect-ratio: 1; border-radius: 7px; }
.public-storefront .storefront-studio-options-value:has(input:checked)::after {
  content: '✓'; position: absolute; right: 9px; top: 9px; padding: 2px 6px;
  background: var(--store-surface); color: var(--store-text); border-radius: 50%; font-size: 18px;
}
.public-storefront .storefront-studio-options-value:has(input:focus-visible) { outline: 2px solid var(--store-accent); outline-offset: 3px; }
.public-storefront .storefront-studio-options-confirm {
  border: 1px solid var(--store-accent); background: var(--store-surface); color: var(--store-text);
}
.public-storefront .storefront-studio-options-confirm:hover { background: color-mix(in srgb, var(--store-accent) 16%, var(--store-surface)); }
.public-storefront .storefront-footer-company-name {
  display: block; font: inherit; font-size: 16px; font-weight: 400;
  line-height: 1.5; letter-spacing: normal; overflow-wrap: anywhere;
}
@media (min-width: 1101px) {
  .public-storefront .storefront-header nav[data-storefront-navigation] {
    justify-content: center; align-content: center; min-width: 0;
    column-gap: clamp(12px, 1.5vw, 24px); row-gap: 4px; flex-wrap: wrap;
  }
  .public-storefront .storefront-header nav[data-storefront-navigation] > .storefront-nav-category,
  .public-storefront .storefront-header nav[data-storefront-navigation] > .storefront-nav-link { flex: 0 0 auto; width: auto; }
  .public-storefront .storefront-header nav[data-storefront-navigation] > .storefront-nav-category > a,
  .public-storefront .storefront-header nav[data-storefront-navigation] > .storefront-nav-link {
    font-size: 12px; letter-spacing: .04em; line-height: 1.4; white-space: nowrap; max-width: none;
  }
}
@media (max-width: 700px) {
  .public-storefront .product-studio-launch-inline { gap: 14px; }
  .public-storefront .storefront-studio-options-values { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
