/* R112 — profundidade discreta (aprovada pelo Raul em 21/10/2026, após a auditoria do Gemini).
   Mantém a linguagem editorial: cantos só suavizados, sombras curtas e quentes, nada de degradê
   ou vidro sobre preço e quantidade. A home sazonal (season-*) não muda. */
body.storefront {
  --radius-soft:6px;
  --shadow-photo:0 1px 2px rgb(18 60 46 / 6%), 0 14px 28px -16px rgb(18 60 46 / 30%);
  --shadow-photo-hover:0 2px 4px rgb(18 60 46 / 8%), 0 22px 40px -18px rgb(18 60 46 / 38%);
  --shadow-press:0 1px 0 rgb(255 255 255 / 14%) inset, 0 8px 18px -10px rgb(7 91 98 / 70%);
}

/* Fotos dos cards: canto suave e sombra em repouso (visível no celular, sem depender de mouse). */
.storefront .pds-document-photo {
  border-radius:var(--radius-soft); box-shadow:var(--shadow-photo);
  transition:box-shadow var(--motion-base) var(--ease-out);
}
@media (hover:hover) { .storefront .pds-document-photo:hover { box-shadow:var(--shadow-photo-hover); } }
.storefront .pds-document-card .pds-card-action { border-radius:4px; }

/* Botões cheios: leve volume e resposta ao toque. */
.storefront .button:not(.button-outline):not(.button-whatsapp-outline) {
  border-radius:4px; box-shadow:var(--shadow-press);
  transition:transform 90ms var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), background var(--motion-fast);
}
.storefront .button:not(.button-outline):not(.button-whatsapp-outline):not(:disabled):not([disabled]):active {
  transform:translateY(1px); box-shadow:0 1px 3px rgb(7 91 98 / 35%) inset;
}
.storefront .button-outline, .storefront .pds-model-contacts .button { border-radius:4px; }
.storefront .button:focus-visible, .storefront .pds-card-action:focus-visible, .storefront .pds-filter-toggle:focus-visible {
  outline:2px solid var(--gold); outline-offset:3px;
}
.storefront .site-footer .button { box-shadow:none; }

/* Busca e filtros do catálogo: uma superfície própria, sólida (é formulário, não vitrine). */
.storefront .pds-document-filters {
  padding:16px 18px; background:#fff; border:1px solid rgb(7 91 98 / 12%);
  border-radius:var(--radius-soft); box-shadow:0 10px 28px -20px rgb(18 60 46 / 35%);
}
.storefront .pds-document-filters input, .storefront .pds-document-filters select { border-radius:4px; }
.pds-filter-toggle { display:none; }
@media (max-width:700px) {
  .storefront .pds-collection-page>h1 { font-size:32px; margin-bottom:6px; }
  .storefront .pds-document-filters.has-filter-toggle { grid-template-columns:1fr 1fr; padding:12px; margin:12px 0 10px; }
  .storefront .pds-document-filters.has-filter-toggle .pds-filter-toggle {
    display:block; min-height:48px; padding:10px 12px; border:1px solid var(--forest); border-radius:4px;
    background:#fff; color:var(--forest); font:600 14px/1.2 var(--font-interface); cursor:pointer;
  }
  .storefront .pds-document-filters.has-filter-toggle>.button { grid-column:auto; order:11; }
  .storefront .pds-document-filters.has-filter-toggle .pds-filter-toggle { order:10; }
  .storefront .pds-document-filters.has-filter-toggle label:nth-of-type(4) { grid-column:1/-1; }
  .storefront .pds-document-filters.is-collapsed label:not(:first-child) { display:none; }
  .storefront .pds-document-filters.is-collapsed ~ .pds-filter-help { display:none; }
}

/* Grade por tamanho: canto suave e linha acesa quando o tamanho já tem quantidade. */
.storefront .pds-size-stepper { border-radius:4px; overflow:hidden; transition:background var(--motion-fast), border-color var(--motion-fast); }
.storefront .pds-size-item.is-chosen .pds-size-stepper { background:var(--campaign); border-color:var(--forest); }
.storefront .pds-size-item.is-chosen .pds-size-stepper input { background:transparent; font-weight:700; color:var(--forest); }
.storefront .pds-size-item>label { transition:color var(--motion-fast); }
.storefront .pds-size-item.is-chosen>label::after {
  content:"✓"; display:inline-block; margin-left:8px; color:var(--forest); font-weight:700;
}

@media (prefers-reduced-motion:reduce) {
  .storefront .button, .storefront .pds-document-photo, .storefront .pds-size-stepper { transition:none; }
  .storefront .button:active { transform:none !important; }
}

/* R114 (pedido do diretor): detalhes do modelo em destaque e escolha liso/estampado/misturado. */
.storefront .pds-model-details { margin:18px 0; padding:14px 16px; background:#fff; border-left:3px solid var(--gold); border-radius:4px; }
.storefront .pds-model-details h2 { margin:0 0 6px; font:600 15px/1.3 var(--font-interface); color:var(--forest); }
.storefront .pds-model-details p { margin:0; }
.storefront .pds-print-choice { margin:0 0 14px; padding:0; border:0; }
.storefront .pds-print-choice legend { margin-bottom:8px; font-weight:600; color:var(--forest); }
.storefront .pds-print-choice label { display:flex; align-items:center; gap:10px; min-height:44px; padding:6px 12px; margin:0 0 6px; border:1px solid var(--line); border-radius:4px; background:#fff; cursor:pointer; }
.storefront .pds-print-choice label:has(input:checked) { border-color:var(--forest); background:var(--campaign); font-weight:600; }
.storefront .pds-print-choice input { width:18px; height:18px; accent-color:var(--forest); }
.storefront .pds-minimum-alert { margin:16px 0; padding:16px; background:#fff8df; border:1px solid var(--gold); border-radius:6px; color:var(--forest); }
.storefront .pds-minimum-alert p { margin:6px 0 12px; }
/* R114: com todos os segmentos na home, nomes longos ("Sungas adulto e infantil") cabem em até 2 linhas. */
@media (max-width:700px) { .storefront .campaign-collection>span { font-size:20px; line-height:1.15; } }
