/* Toni Naturale 3.4 — tema, contraste e acabamento responsivo. */
html { color-scheme: light; }
html[data-theme="dark"] { color-scheme: dark; }

.site-header,
.catalog-header { color: #fff; }
.catalog-header.site-header--overlay {
  background: linear-gradient(180deg, rgba(6, 27, 19, .94), rgba(6, 27, 19, .38) 68%, transparent);
}
.site-header.is-scrolled,
.catalog-header.site-header--overlay.is-scrolled {
  background: rgba(12, 44, 32, .98);
  color: #fff;
  box-shadow: 0 14px 40px rgba(7, 27, 19, .25);
  backdrop-filter: blur(14px);
}
.site-header.is-scrolled .desktop-nav a,
.site-header.is-scrolled .menu-toggle { color: #fff; }
.site-header.is-scrolled .menu-toggle { border-color: rgba(255,255,255,.32); background: rgba(255,255,255,.1); }

.theme-toggle {
  display: inline-flex;
  min-width: 42px;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 12px;
  background: rgba(255,255,255,.1);
  color: inherit;
  padding: 8px 11px;
  font: inherit;
  font-size: .78rem;
  font-weight: 850;
}
.theme-toggle:hover { background: rgba(255,255,255,.18); }
.theme-toggle [data-theme-icon] { font-size: 1.08rem; line-height: 1; }
.theme-toggle--admin { margin-left: auto; }
.login-card .theme-toggle--admin { position: absolute; top: 18px; right: 18px; color: #fff; background: rgba(18,61,43,.88); }
.login-card { position: relative; }

.button--orange,
.button--header,
.product-card__image > span,
.story-grid__image span { color: #17211b; }
.terms-box { margin-top: 20px; border: 1px solid var(--line); border-radius: 24px; background: var(--paper); padding: clamp(22px, 4vw, 34px); }
.form-section__heading--compact { margin-bottom: 18px; }
.terms-details { overflow: hidden; margin-bottom: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--cream); }
.terms-details summary { padding: 16px 18px; color: var(--green-900); font-weight: 850; cursor: pointer; }
.terms-details > div { border-top: 1px solid var(--line); padding: 18px; }
.terms-details p { margin: 0 0 10px; color: var(--ink-soft); font-size: .9rem; }
.terms-details p:last-child { margin-bottom: 0; }
.consent-choice { display: flex; flex-wrap: wrap; gap: 12px 22px; margin: 18px 0 0; border: 1px solid var(--line); border-radius: 16px; padding: 17px; }
.consent-choice legend { padding: 0 6px; color: var(--green-900); font-size: .88rem; font-weight: 850; }
.consent-choice label { display: inline-flex; align-items: center; gap: 8px; }
.admin-inline-form { display: grid; min-width: 230px; gap: 7px; }
.admin-inline-form .input { min-height: 38px; padding: 8px 10px; font-size: .78rem; }
.admin-inline-form .button { min-height: 36px; padding: 8px 11px; font-size: .75rem; }
.admin-inline-form .check-line { font-size: .72rem; }
.admin-table .actions-cell { min-width: 245px; }

html[data-theme="dark"] {
  --green-950: #071b12;
  --green-900: #d4e7d8;
  --green-800: #acd0b4;
  --green-700: #7fbd8c;
  --green-600: #66ad76;
  --cream: #0d1711;
  --cream-deep: #142219;
  --paper: #15231a;
  --white: #f7fbf8;
  --ink: #edf5ef;
  --ink-soft: #b4c4b8;
  --line: #2b4032;
  --shadow-soft: 0 16px 42px rgba(0,0,0,.22);
  --shadow: 0 28px 80px rgba(0,0,0,.34);
  --catalog-green-950: #071b12;
  --catalog-green-900: #d4e7d8;
  --catalog-green-800: #9ac6a4;
  --catalog-leaf-light: #36583d;
  --catalog-cream: #0d1711;
  --catalog-paper: #15231a;
  --catalog-ink: #edf5ef;
  --catalog-muted: #b4c4b8;
  --catalog-line: rgba(212,231,216,.16);
}
html[data-theme="dark"] body,
html[data-theme="dark"] .catalog-home,
html[data-theme="dark"] .catalog-page,
html[data-theme="dark"] .product-page { background: var(--cream); color: var(--ink); }
html[data-theme="dark"] .catalog-fold--story,
html[data-theme="dark"] .catalog-contact { background: var(--paper); }
html[data-theme="dark"] .catalog-card,
html[data-theme="dark"] .category-showcase-card,
html[data-theme="dark"] .category-section,
html[data-theme="dark"] .product-detail--simple .product-detail__summary,
html[data-theme="dark"] .cart-item,
html[data-theme="dark"] .cart-summary,
html[data-theme="dark"] .cart-empty,
html[data-theme="dark"] .nutrition-card,
html[data-theme="dark"] .product-copy article,
html[data-theme="dark"] .account-form,
html[data-theme="dark"] .form-section,
html[data-theme="dark"] .student-card,
html[data-theme="dark"] .choice-option,
html[data-theme="dark"] .terms-box { background: var(--paper); border-color: var(--line); color: var(--ink); }
html[data-theme="dark"] .input,
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea { background: #0e1b13; border-color: #36503d; color: var(--ink); }
html[data-theme="dark"] .input::placeholder,
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder { color: #7f9485; }
html[data-theme="dark"] .admin-body { background: #09130d; color: var(--ink); }
html[data-theme="dark"] .admin-panel,
html[data-theme="dark"] .metric-card,
html[data-theme="dark"] .settings-card,
html[data-theme="dark"] .login-card,
html[data-theme="dark"] .admin-details { background: #142219; border-color: #2b4032; color: var(--ink); }
html[data-theme="dark"] .admin-details { background: #101c14; }
html[data-theme="dark"] .detail-list { border-color: #2b4032; background: #2b4032; }
html[data-theme="dark"] .detail-list > div,
html[data-theme="dark"] .student-admin-card { background: #101c14; border-color: #2b4032; }
html[data-theme="dark"] .metric-card--attention { background: #2a2415; border-color: #735d28; }
html[data-theme="dark"] .admin-table th,
html[data-theme="dark"] .admin-table td,
html[data-theme="dark"] .server-facts div,
html[data-theme="dark"] .account-timeline li { border-color: #2b4032; }
html[data-theme="dark"] .badge { background: #263b2c; color: #d7eadb; }
html[data-theme="dark"] .badge--warning { background: #4a3b16; color: #ffe39a; }
html[data-theme="dark"] .badge--success { background: #183e28; color: #bde8c7; }
html[data-theme="dark"] .badge--danger { background: #4a211d; color: #ffc6bd; }
html[data-theme="dark"] .product-ingredients { background: rgba(154,198,164,.1); }

@media (max-width: 1180px) {
  .theme-toggle [data-theme-label] { display: none; }
  .theme-toggle { min-width: 42px; padding-inline: 9px; }
}
@media (max-width: 780px) {
  .catalog-header.site-header--overlay { background: rgba(12,44,32,.98); }
  .theme-toggle { order: 2; }
  .cart-link { order: 1; margin-left: auto; }
  .menu-toggle { order: 3; }
  .admin-topbar__inner { position: relative; padding-right: 52px; }
  .admin-topbar .theme-toggle--admin { position: absolute; top: 13px; right: 0; }
  .consent-choice { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 430px) {
  .brand { width: 54px; flex-basis: 54px; }
  .brand img { width: 54px; height: 54px; }
  .cart-link { padding: 9px 11px; font-size: .72rem; }
  .site-header__inner { gap: 7px; }
}
