/* Template A — Minimal: spacious retail grid */
.theme-minimal {
  --tm-primary: var(--primary, #1b6b4a);
  --tm-bg: #f7faf8;
  --tm-ink: #15241c;
  --tm-muted: #5f7268;
  --tm-surface: #ffffff;
  --tm-line: #d5e2db;
  font-family: "VazirmatnLocal", Tahoma, sans-serif;
  background: linear-gradient(180deg, #eef6f1 0%, var(--tm-bg) 40%);
  color: var(--tm-ink);
  min-height: 100vh;
}
.theme-minimal .tm-header {
  display: flex; justify-content: space-between; align-items: center;
  padding: 1.75rem 2rem; gap: 1rem; flex-wrap: wrap;
  border-bottom: 1px solid var(--tm-line); background: rgba(255,255,255,.8);
}
.theme-minimal .tm-brand { display: flex; align-items: center; gap: .75rem; text-decoration: none; color: var(--tm-ink); }
.theme-minimal .tm-brand img { height: 2.5rem; width: auto; }
.theme-minimal .tm-brand-name { font-size: 1.5rem; font-weight: 700; letter-spacing: -.02em; }
.theme-minimal .tm-nav { display: flex; gap: 1.25rem; }
.theme-minimal .tm-nav a { color: var(--tm-muted); text-decoration: none; }
.theme-minimal .tm-nav a:hover { color: var(--tm-primary); }
.theme-minimal .tm-main { max-width: 68rem; margin: 0 auto; padding: 2rem 1.5rem 3rem; }
.theme-minimal .tm-hero {
  display: grid; gap: 1.5rem; margin-bottom: 2.5rem;
  grid-template-columns: 1.2fr .8fr; align-items: center;
}
.theme-minimal .tm-hero-copy h1 { font-size: clamp(1.8rem, 4vw, 2.6rem); margin: 0 0 .75rem; font-weight: 700; }
.theme-minimal .tm-hero-copy p { color: var(--tm-muted); margin: 0 0 1.25rem; max-width: 28rem; }
.theme-minimal .tm-hero-media {
  min-height: 14rem; background: #dfece5; border: 1px solid var(--tm-line);
  display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.theme-minimal .tm-hero-media img { width: 100%; height: 100%; object-fit: cover; min-height: 14rem; }
.theme-minimal .tm-promo {
  padding: .85rem 1rem; border: 1px dashed var(--tm-line); color: var(--tm-muted);
  margin-bottom: 2rem; font-size: .95rem;
}
.theme-minimal .tm-grid {
  list-style: none; padding: 0; margin: 0;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr)); gap: 1.25rem;
}
.theme-minimal .tm-card {
  background: var(--tm-surface); border: 1px solid var(--tm-line); text-decoration: none; color: inherit;
  display: flex; flex-direction: column; min-height: 14rem;
}
.theme-minimal .tm-card-photo {
  aspect-ratio: 1 / 1; background: #e8f0eb; display: flex; align-items: center; justify-content: center;
  color: var(--tm-muted); font-size: .85rem; width: 100%; object-fit: cover;
}
.theme-minimal .tm-card-body { padding: 1rem; flex: 1; }
.theme-minimal .tm-card strong { display: block; margin-bottom: .35rem; }
.theme-minimal .tm-price { color: var(--tm-primary); font-weight: 700; }
.theme-minimal .tm-btn {
  display: inline-block; background: var(--tm-primary); color: #fff; border: none;
  padding: .7rem 1.2rem; font: inherit; cursor: pointer; text-decoration: none;
}
.theme-minimal .tm-footer { max-width: 68rem; margin: 0 auto; padding: 1rem 1.5rem 2rem; color: var(--tm-muted); font-size: .85rem; }
.theme-minimal .tm-preview-banner {
  background: #fff3cd; color: #7a5a00; text-align: center; padding: .4rem; font-size: .85rem;
}
.theme-minimal .tm-chips { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0; }
.theme-minimal .tm-chips a { border: 1px solid var(--tm-line); padding: .35rem .7rem; background: #fff; color: inherit; text-decoration: none; }
.theme-minimal .tm-table { width: 100%; border-collapse: collapse; background: #fff; }
.theme-minimal .tm-table th, .theme-minimal .tm-table td { border: 1px solid var(--tm-line); padding: .6rem; text-align: right; }
.theme-minimal .tm-form { display: grid; gap: .5rem; max-width: 28rem; }
.theme-minimal input, .theme-minimal select, .theme-minimal textarea {
  font: inherit; padding: .55rem; border: 1px solid var(--tm-line); width: 100%;
}
.theme-minimal .empty, .theme-minimal .muted { color: var(--tm-muted); }
.theme-minimal .tm-pay-methods { border: 1px solid var(--tm-line); padding: .75rem; display: grid; gap: .45rem; }
.theme-minimal .tm-pay-option { display: flex; gap: .5rem; align-items: flex-start; }
.theme-minimal .tm-pay-banner { border: 1px solid var(--tm-line); padding: 1rem; margin: 1rem 0; background: #fff; }
.theme-minimal .tm-tone-ok { border-color: #1b6b4a; background: #f0faf5; }
.theme-minimal .tm-tone-fail { border-color: #a33; background: #fff5f5; }
.theme-minimal .tm-tone-pending, .theme-minimal .tm-tone-warn { border-color: #b8860b; background: #fffbeb; }
.theme-minimal .tm-tone-ready { border-color: var(--tm-primary); }
.theme-minimal .tm-central-note { font-size: .85rem; }
.theme-minimal .tm-qty-form { display: flex; flex-wrap: wrap; gap: .35rem; align-items: center; }
.theme-minimal .tm-qty-form input[type="number"] { width: 4.5rem; }
.theme-minimal .sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.theme-minimal #ai-assistant-mount { min-height: 0; }
@media (max-width: 720px) {
  .theme-minimal .tm-hero { grid-template-columns: 1fr; }
  .theme-minimal .tm-header { padding: 1rem; }
  .theme-minimal .tm-form { max-width: none; }
}
