/*
 Theme Name:   SN Thai Herbal Compress
 Theme URI:    https://snthai.fr
 Description:  Thème WordPress standalone — SN Thai Herbal Compress
 Author:       SunnyNico
 Version:      2.0.0
 Text Domain:  sn-thai
*/

/* ═══════════════════════════════════════
   RESET MINIMAL — sans thème parent
═══════════════════════════════════════ */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
img, video { max-width: 100%; height: auto; display: block; }
ul, ol { list-style: none; }
button { cursor: pointer; font-family: inherit; background: none; border: none; }
input, textarea, select { font-family: inherit; font-size: inherit; }
table { border-collapse: collapse; width: 100%; }

/* ── WordPress core ── */
.wp-block-image img { max-width: 100%; }
.alignleft  { float: left; margin: 0 1.5em 1.5em 0; }
.alignright { float: right; margin: 0 0 1.5em 1.5em; }
.aligncenter { display: block; margin: 0 auto 1.5em; }
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden;
  word-wrap: normal;
}

/* ── Lightbox ingrédients (page produit) : scroll bloqué tant qu'ouverte ── */
body.sn-lightbox-open { overflow: hidden; }

/* ── Admin bar ── */
.admin-bar .sn-header { top: 32px; }
@media screen and (max-width: 782px) {
  .admin-bar .sn-header { top: 46px; }
}

/* ═══════════════════════════════════════
   VARIABLES BRANDING SN THAI
═══════════════════════════════════════ */
:root {
  /* Couleurs */
  --sn-gold:        #C4832A;
  --sn-gold-light:  #F5DEB3;
  --sn-gold-pale:   #FFF8ED;
  --sn-brown:       #8B4513;
  --sn-brown-dark:  #5C2D0A;
  --sn-green:       #2E7D5E;
  --sn-green-light: #E1F5EE;
  --sn-cream:       #FBF6EE;
  --sn-cream-dark:  #F0E8D5;
  --sn-text:        #3A2010;

  /* Typographie */
  --font-heading: 'Playfair Display', Georgia, serif;
  --font-body:    system-ui, -apple-system, sans-serif;

  /* Espacements */
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 32px;
  --space-xl: 64px;

  /* Conteneurs */
  --container:    1200px;
  --container-sm: 760px;

  /* Rayons */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;

  /* Transitions */
  --transition: .2s ease;
}

/* ═══════════════════════════════════════
   BASE GLOBALE
═══════════════════════════════════════ */
html { scroll-behavior: smooth; }

body {
  background-color: var(--sn-cream);
  color: var(--sn-text);
  font-family: var(--font-body);
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5 {
  font-family: var(--font-heading);
  color: var(--sn-brown-dark);
  line-height: 1.3;
}

a {
  color: var(--sn-brown);
  transition: color var(--transition);
}
a:hover { color: var(--sn-gold); }

p { margin: 0; }

/* ═══════════════════════════════════════
   PAGES GÉNÉRIQUES (CGV, Mentions légales,
   Politique de confidentialité, etc.)
═══════════════════════════════════════ */
#sn-page {
  max-width: var(--container-sm);
  margin: 0 auto;
  padding: 120px 24px 96px;
}

.sn-page__content h1 {
  font-size: 32px;
  margin-bottom: 28px;
}
.sn-page__content h2 {
  font-size: 21px;
  margin: 40px 0 14px;
}
.sn-page__content h2:first-child { margin-top: 0; }
.sn-page__content h3 {
  font-size: 16px;
  margin: 26px 0 10px;
}
.sn-page__content p {
  margin-bottom: 16px;
  color: var(--sn-text);
}
.sn-page__content ul,
.sn-page__content ol {
  margin: 0 0 16px 22px;
}
.sn-page__content ul { list-style: disc; }
.sn-page__content ol { list-style: decimal; }
.sn-page__content li { margin-bottom: 8px; }
.sn-page__content strong { color: var(--sn-brown-dark); }
.sn-page__content em { font-style: italic; color: #7a6f5f; }

.sn-page__content table {
  margin: 8px 0 24px;
  font-size: 14px;
}
.sn-page__content th,
.sn-page__content td {
  border: 1px solid var(--sn-cream-dark);
  padding: 8px 12px;
  text-align: left;
  vertical-align: top;
}
.sn-page__content th {
  background: var(--sn-cream-dark);
  font-family: var(--font-heading);
}

@media (max-width: 768px) {
  #sn-page { padding: 100px 20px 64px; }
}