/* ===================================================================
   help.css — styles de la page Documentation & Aide (help.html)
   Fichier 100% autonome (ne dépend pas de styles.css) afin de pouvoir
   être remplacé / modifié indépendamment de l'appli principale.
   Reprend la même identité visuelle que Swooow Studio : Space Grotesk
   pour les titres, Inter pour le corps, JetBrains Mono pour les
   repères techniques, accent or, coins carrés, thèmes clair/sombre.
=================================================================== */

:root{
  --bg:#f3f3f6; --panel:#ffffff; --panel2:#eceef1;
  --ink:#17171a; --muted:#6b6e76; --dim:#8a8d93; --hair:rgba(20,20,24,0.14);
  --accent:#B8860F; --accent-soft:#FBF2DC; --accent-ink:#6B4E00;
  --line:rgba(20,20,24,0.14);
  --shadow-md:0 6px 20px rgba(23,23,26,0.09), 0 2px 6px rgba(23,23,26,0.05);
}
:root[data-theme="dark"]{
  --bg:#101013; --panel:#18181c; --panel2:#212127;
  --ink:#f1f1f3; --muted:#9a9da6; --dim:#9a9da6; --hair:rgba(255,255,255,0.13);
  --accent:#D9A62A; --accent-soft:rgba(217,166,42,0.16); --accent-ink:#E9C468;
  --line:rgba(255,255,255,0.13);
  --shadow-md:0 10px 26px rgba(0,0,0,0.4);
  color-scheme:dark;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--bg);color:var(--ink);font-family:'Inter',sans-serif;
  line-height:1.6;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;}
button{font:inherit;}
.mono{font-family:'JetBrains Mono',monospace;}

/* -------------------- langue -------------------- */
[data-lang="fr"] .lang-en{display:none !important;}
[data-lang="en"] .lang-fr{display:none !important;}

/* -------------------- topbar -------------------- */
.helpTop{
  position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:14px;
  padding:14px 24px;background:var(--panel);border-bottom:1px solid var(--hair);
}
.helpBrand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);}
.helpBrand img{width:30px;height:30px;}
.helpBrand span{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:16px;letter-spacing:-0.01em;}
.helpTopSpacer{flex:1;}
.helpBackBtn{
  display:flex;align-items:center;gap:6px;background:transparent;color:var(--muted);
  border:1px solid var(--hair);padding:9px 14px;font-family:'JetBrains Mono',monospace;
  font-size:11px;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;text-decoration:none;
}
.helpBackBtn:hover{border-color:var(--ink);color:var(--ink);}
.pillSwitch{display:flex;border:1px solid var(--hair);}
.pillSwitch button{
  background:transparent;border:none;color:var(--muted);padding:9px 13px;
  font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.05em;cursor:pointer;
}
.pillSwitch button.is-active{background:var(--ink);color:var(--panel);}
.iconSquareBtn{
  width:38px;height:38px;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  background:transparent;border:1px solid var(--hair);color:var(--ink);cursor:pointer;font-size:15px;
}
.iconSquareBtn:hover{border-color:var(--ink);}
.themeIconMoon{display:none;}
[data-theme="dark"] .themeIconSun{display:none;}
[data-theme="dark"] .themeIconMoon{display:inline;}

/* -------------------- hero -------------------- */
.helpHero{
  max-width:920px;margin:0 auto;padding:64px 24px 40px;text-align:left;
}
.helpEyebrow{
  display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;
  font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink);
  background:var(--accent-soft);padding:8px 14px;margin-bottom:22px;
}
.helpHero h1{
  font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:44px;line-height:1.12;
  letter-spacing:-0.02em;margin:0 0 18px;max-width:720px;
}
.helpHero h1 em{color:var(--accent);font-style:normal;}
.helpHero p{font-size:17px;color:var(--muted);max-width:600px;margin:0;}

/* -------------------- barre de sommaire -------------------- */
.helpToc{
  max-width:920px;margin:0 auto;padding:0 24px 48px;display:flex;flex-wrap:wrap;gap:10px;
}
.helpToc a{
  font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.04em;text-transform:uppercase;
  border:1px solid var(--hair);padding:9px 14px;text-decoration:none;color:var(--muted);
}
.helpToc a:hover{border-color:var(--accent);color:var(--accent-ink);}

/* -------------------- sections génériques -------------------- */
.helpSection{max-width:920px;margin:0 auto;padding:56px 24px;border-top:1px solid var(--hair);}
.helpSection:first-of-type{border-top:none;}
.helpSectionHead{display:flex;align-items:baseline;gap:16px;margin-bottom:28px;}
.helpSectionNum{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--accent);}
.helpSectionHead h2{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:26px;margin:0;letter-spacing:-0.01em;}
.helpProse p{font-size:15.5px;color:var(--muted);max-width:720px;}
.helpProse strong{color:var(--ink);}
.helpChips{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.helpChip{
  border:1px solid var(--hair);padding:8px 14px;font-family:'JetBrains Mono',monospace;
  font-size:11.5px;color:var(--muted);
}

/* -------------------- rail des étapes -------------------- */
.stepRail{position:relative;}
.stepRail::before{
  content:"";position:absolute;top:0;bottom:0;left:23px;width:1px;background:var(--hair);
}
.stepItem{position:relative;display:grid;grid-template-columns:auto 1fr;gap:28px;padding-bottom:52px;}
.stepItem:last-child{padding-bottom:0;}
.stepNum{
  position:relative;z-index:1;width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;
  justify-content:center;background:var(--panel);border:1px solid var(--hair);
  font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:16px;color:var(--accent);
}
.stepBody{display:grid;grid-template-columns:1fr 1.15fr;gap:28px;align-items:start;}
.stepText h3{font-family:'Space Grotesk',sans-serif;font-size:18px;font-weight:600;margin:0 0 8px;letter-spacing:-0.005em;}
.stepText p{font-size:14.5px;color:var(--muted);margin:0;}
.stepShot{
  border:1px solid var(--hair);background:var(--panel2);overflow:hidden;cursor:zoom-in;
  box-shadow:var(--shadow-md);
}
.stepShot img{width:100%;height:auto;display:block;transition:transform .3s ease;}
.stepShot:hover img{transform:scale(1.02);}

@media (max-width: 760px){
  .stepBody{grid-template-columns:1fr;}
  .stepItem{grid-template-columns:auto 1fr;gap:16px;}
  .stepRail::before{left:19px;}
  .stepNum{width:40px;height:40px;font-size:14px;}
}

/* -------------------- lightbox -------------------- */
.lightbox{
  position:fixed;inset:0;background:rgba(6,6,8,0.9);display:none;align-items:center;justify-content:center;
  z-index:999;padding:32px;
}
.lightbox.open{display:flex;}
.lightbox img{max-width:min(880px,92vw);max-height:88vh;box-shadow:0 20px 60px rgba(0,0,0,0.5);}
.lightboxClose{
  position:absolute;top:20px;right:24px;width:40px;height:40px;background:transparent;
  border:1px solid rgba(255,255,255,0.25);color:#fff;font-size:18px;cursor:pointer;
}

/* -------------------- code / TavCode -------------------- */
.codeBlock{
  background:#0c0c0f;color:#e6e6ea;border:1px solid var(--hair);padding:18px 20px;
  font-family:'JetBrains Mono',monospace;font-size:12.5px;line-height:1.7;overflow-x:auto;
  white-space:pre;
}
.codeBlock .kw{color:#D9A62A;}
.codeLegend{margin-top:18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px 24px;}
.codeLegend div{font-size:13px;color:var(--muted);}
.codeLegend code{font-family:'JetBrains Mono',monospace;color:var(--ink);background:var(--panel2);padding:1px 6px;}

/* -------------------- astuces -------------------- */
.tipGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;}
.tipCard{border:1px solid var(--hair);padding:20px;background:var(--panel);}
.tipCard .tipIcon{font-size:18px;color:var(--accent);margin-bottom:10px;display:block;}
.tipCard h4{font-family:'Space Grotesk',sans-serif;font-size:14.5px;margin:0 0 6px;font-weight:600;}
.tipCard p{font-size:13.5px;color:var(--muted);margin:0;}

/* -------------------- FAQ -------------------- */
.faqItem{border-bottom:1px solid var(--hair);}
.faqItem:first-child{border-top:1px solid var(--hair);}
.faqQ{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:transparent;border:none;text-align:left;padding:18px 4px;cursor:pointer;color:var(--ink);
}
.faqQ span:first-child{font-family:'Space Grotesk',sans-serif;font-size:15px;font-weight:600;}
.faqPlus{font-family:'JetBrains Mono',monospace;color:var(--accent);flex-shrink:0;transition:transform .15s ease;}
.faqItem.open .faqPlus{transform:rotate(45deg);}
.faqA{max-height:0;overflow:hidden;transition:max-height .2s ease;}
.faqItem.open .faqA{max-height:220px;}
.faqA p{font-size:14px;color:var(--muted);margin:0 4px 18px;max-width:680px;}

/* -------------------- réseaux -------------------- */
.socialGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;}
.socialCard{
  display:flex;align-items:center;gap:14px;border:1px solid var(--hair);padding:16px 18px;
  text-decoration:none;color:var(--ink);background:var(--panel);transition:border-color .15s ease;
}
.socialCard:hover{border-color:var(--accent);}
.socialIcon{
  width:38px;height:38px;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  background:var(--accent-soft);color:var(--accent-ink);font-size:16px;
}
.socialName{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:14.5px;}
.socialHandle{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);}

/* -------------------- footer -------------------- */
.helpFooter{
  max-width:920px;margin:0 auto;padding:40px 24px 64px;border-top:1px solid var(--hair);
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;
}
.helpFooter p{font-size:12.5px;color:var(--dim);margin:0;font-family:'JetBrains Mono',monospace;}
.helpFooter a{color:var(--muted);text-decoration:none;}
.helpFooter a:hover{color:var(--ink);}

@media (max-width:600px){
  .helpHero h1{font-size:32px;}
  .helpSectionHead h2{font-size:21px;}
  .helpTop{padding:12px 16px;gap:8px;}
  .helpBackBtn span{display:none;}
}
