/*
Theme Name: Sans Complication Gazette
Author: Seobooster
Version: 1.0.0
Text Domain: sc-gazette
*/

/* ===== Polices auto-hébergées (P-086) — voir assets/fonts/README.txt ===== */

/* ===== Fondations — palette claire ===== */
:root{
  --fond:#faf6f1;
  --carte:#ffffff;
  --pastel:#f1e4d6;
  --encre:#221b16;
  --accent:#c9121d;
  --accent-fonce:#8f0c14;
  --accent-texte:#ffffff;
  --sombre:#1b1411;
  --sombre-texte:#fbf3ec;
  --ligne:color-mix(in srgb,var(--encre) 16%,transparent);
  --rayon:6px;
  --rayon-p:4px;
  --serif:"Zilla Slab",Georgia,"Times New Roman",serif;
  --sans:"Mulish","Segoe UI",system-ui,-apple-system,sans-serif;
  color-scheme:light dark;
}
/* ===== Fondations — palette sombre (Mathias travaille en sombre, P-351) ===== */
@media(prefers-color-scheme:dark){
  :root{
    --fond:#17120f;
    --carte:#221b16;
    --pastel:#2b221b;
    --encre:#f3e9de;
    --accent:#ff5a4d;
    --accent-fonce:#ff8a7e;
    --accent-texte:#17120f;
    --sombre:#0e0b09;
    --sombre-texte:#fbf3ec;
    --ligne:color-mix(in srgb,var(--encre) 22%,transparent);
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--fond);color:var(--encre);font:16px/1.68 var(--sans);-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
button{cursor:pointer;background:none}
img{display:block;max-width:100%;height:auto}
svg{max-width:100%;display:block}
figure{margin:0}
p{margin:0 0 16px}
h1,h2,h3{font-family:var(--serif);line-height:1.12;font-weight:700;margin:0;letter-spacing:-.005em;text-wrap:balance;overflow-wrap:anywhere}
h1{font-size:clamp(32px,4.6vw,56px)}
h2{font-size:clamp(22px,2.4vw,30px)}
h3{font-size:19px;font-weight:700}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
[hidden]{display:none!important}
.accent-word{color:var(--accent);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}
.eyebrow{display:inline-block;font:800 13px/1.4 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--accent-fonce)}
.skip{position:fixed;top:-100px;left:16px;z-index:200;background:var(--encre);color:var(--fond);padding:12px 18px;border-radius:0 0 8px 8px}
.skip:focus{top:0}
.site-frame{max-width:1280px;margin:0 auto;padding:0 32px}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--encre);color:var(--fond);padding:13px 22px;border-radius:var(--rayon-p);font:800 13px/1 var(--sans);letter-spacing:.02em;border:2px solid var(--encre)}
.btn:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-texte);text-decoration:none}
.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--accent-texte)}
.btn-accent:hover{background:var(--encre);border-color:var(--encre);color:var(--fond)}
.btn-ghost{background:transparent;color:var(--encre)}
.btn-ghost:hover{background:var(--encre);color:var(--fond)}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
main .site-frame,header .site-frame,footer .site-frame{padding-left:32px;padding-right:32px}

/* ===== En-tête : barre utilitaire → logo centré → nav sous double filet ===== */
.site-header{background:var(--fond);border-bottom:3px solid var(--encre)}
.sc-topbar{background:var(--sombre);color:var(--sombre-texte)}
.sc-topbar .site-frame{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:9px;padding-bottom:9px}
.sc-topbar-date{font:700 12px/1 var(--sans);letter-spacing:.04em;text-transform:capitalize;opacity:.9}
.sc-topbar-search{display:flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--sombre-texte) 12%,transparent);border-radius:999px;padding:5px 6px 5px 14px}
.sc-topbar-search input{border:0;background:none;width:140px;font-size:12px;color:var(--sombre-texte)}
.sc-topbar-search input::placeholder{color:color-mix(in srgb,var(--sombre-texte) 70%,transparent)}
.sc-topbar-search button{width:26px;height:26px;border-radius:999px;background:var(--accent);color:var(--accent-texte);display:grid;place-items:center;font-size:12px}
.sc-brand-row{display:flex;justify-content:center;padding:26px 0 14px}
.logo{display:flex;flex-direction:column;align-items:center;gap:8px;font-family:var(--serif);font-weight:700;font-size:26px;text-align:center}
.logo svg{width:40px;height:40px;color:var(--encre);flex-shrink:0}
.logo small{display:block;font-family:var(--sans);font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-fonce);margin-top:2px}
.sc-nav{border-top:1px solid var(--ligne)}
.sc-nav-in{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;padding:14px 0}
.sc-nav-in a{white-space:nowrap;flex-shrink:0;font:800 13px/1 var(--sans);letter-spacing:.03em;text-transform:uppercase;padding:8px 14px;border-radius:999px}
.sc-nav-in a:hover,.sc-nav-in a[aria-current]{background:var(--pastel);text-decoration:none}

/* ===== Accueil : une ===== */
.sc-hero{padding:30px 0 0}
.sc-hero-photo{border:1px solid var(--ligne);border-radius:var(--rayon);overflow:hidden;background:var(--pastel)}
.sc-hero-photo img{width:100%;height:420px;object-fit:cover}
.sc-card-repli{display:flex;align-items:center;justify-content:center;height:200px;background:var(--pastel);font:800 44px var(--serif);color:var(--accent-fonce)}
.sc-hero-copy{display:grid;grid-template-columns:1.3fr .7fr;gap:44px;align-items:end;border-bottom:3px solid var(--encre);padding:26px 0 34px}
.sc-hero-text h1{margin:10px 0 0}
.sc-hero-aside p{font-size:16px;color:color-mix(in srgb,var(--encre) 85%,transparent);margin-bottom:18px}

/* ===== Cartes ===== */
.sc-selection{padding:52px 0}
.sc-selection-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:26px;padding-top:6px}
.sc-selection-head h2{border-bottom:3px solid var(--accent);padding-bottom:10px;display:inline-block}
.sc-selection-head>a{font:800 13px var(--sans);letter-spacing:.03em;text-transform:uppercase}
.sc-story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.sc-card{background:var(--carte);border:1px solid var(--ligne);border-top:3px solid var(--accent);border-radius:var(--rayon-p);overflow:hidden}
.sc-card a{display:block}
.sc-card img{height:190px;width:100%;object-fit:cover}
.sc-card h3{padding:0 20px;margin:8px 0 18px}
.sc-card-meta{display:block;padding:18px 20px 0;font:800 12px var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--accent-fonce)}
.sc-card p{padding:0 20px 20px;margin:0;font-size:14px;color:color-mix(in srgb,var(--encre) 78%,transparent)}
.sc-story{display:flex;flex-direction:column;background:var(--carte);border:1px solid var(--ligne);border-radius:var(--rayon-p);padding:22px}
.sc-story h3{margin:10px 0 16px}
.sc-readlink{margin-top:auto;font:800 13px var(--sans);color:var(--accent-fonce)}

/* Grille en escalier pour les sections de rubrique */
.sc-section-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.sc-section-grid .sc-card-first{grid-column:span 2;grid-row:span 2}
.sc-section-grid .sc-card-first img{height:100%;min-height:260px}

/* ===== Rubriques : jetons en défilement horizontal (pas de pastilles rondes) ===== */
.sc-rubriques{padding:8px 0 52px}
.sc-rubriques-scroll{display:flex;gap:14px;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:thin}
.sc-chip{flex:0 0 auto;display:flex;align-items:center;gap:10px;background:var(--carte);border:1px solid var(--ligne);border-radius:999px;padding:9px 18px 9px 9px}
.sc-chip:hover{border-color:var(--accent);text-decoration:none}
.sc-chip-mark{width:30px;height:30px;border-radius:999px;background:var(--pastel);display:grid;place-items:center;font:800 14px var(--serif);color:var(--accent-fonce);flex-shrink:0}
.sc-chip-mark img{width:100%;height:100%;border-radius:999px;object-fit:cover}
.sc-chip-name{font:800 13px var(--sans);letter-spacing:.01em;white-space:nowrap}

/* ===== Bandeau de repères (chiffres à filets, pas de fond sombre) ===== */
.sc-reperes{background:var(--pastel);border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne)}
.sc-reperes-grille{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;padding:40px 0}
.sc-reperes-grille>div{padding:0 18px;border-left:1px solid var(--ligne)}
.sc-reperes-grille>div:first-child{border-left:0}
.sc-reperes-grille b{display:block;font:700 clamp(28px,3.6vw,46px)/1 var(--serif);color:var(--accent-fonce)}
.sc-reperes-grille span{display:block;margin-top:10px;font:700 13px/1.5 var(--sans);letter-spacing:.02em;color:color-mix(in srgb,var(--encre) 78%,transparent)}

/* ===== Fil chronologique, numéroté ===== */
.sc-fil{padding:56px 0}
.sc-fil ol{list-style:none;margin:0;padding:0;max-width:820px}
.sc-fil li{display:flex;gap:18px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--ligne)}
.sc-fil li b{flex:0 0 30px;font:800 13px var(--sans);color:var(--accent-fonce)}
.sc-fil li a{flex:1;font:700 16px/1.4 var(--serif)}
.sc-fil li time{flex:0 0 auto;font:600 13px var(--sans);color:color-mix(in srgb,var(--encre) 62%,transparent)}

/* ===== Sections de rubrique ===== */
.mag-section{padding:52px 0}
.mag-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:28px;border-top:3px solid var(--encre);padding-top:24px}
.mag-section-head h2 a{color:inherit}
.mag-section-head>a{font:800 13px var(--sans);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}

/* ===== Bandeau de contact (mailto/page, jamais de formulaire) ===== */
.sc-contact-band{margin:20px 0 64px;padding:44px;border:1px solid var(--ligne);border-radius:var(--rayon);background:var(--carte);display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.sc-contact-band h2{max-width:520px;margin-top:6px}

/* ===== Archives / recherche / pages génériques ===== */
.sc-page-heading{padding:48px 0 32px}
.sc-page-heading h1{margin:12px 0}
.sc-page-heading p{max-width:640px;font-size:16px;color:color-mix(in srgb,var(--encre) 82%,transparent)}
.sc-archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-bottom:48px}
.sc-results{padding-bottom:48px}
.sc-results>a{display:block;background:var(--carte);border:1px solid var(--ligne);border-left:3px solid var(--accent);padding:18px 22px;margin-bottom:14px}
.sc-search-form{display:flex;gap:12px;max-width:540px;margin:0 0 34px}
.sc-search-form input{flex:1;min-width:0;padding:13px 16px;border-radius:var(--rayon-p);border:1px solid var(--ligne);background:var(--carte);font-size:16px}
.sc-pagination{display:flex;gap:8px;padding:26px 0 58px;flex-wrap:wrap}
.sc-pagination span,.sc-pagination a{display:grid;place-items:center;min-width:38px;height:38px;border:1px solid var(--ligne);font:800 13px var(--sans)}
.sc-pagination a:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-texte);text-decoration:none}
.sc-pagination .current{background:var(--encre);border-color:var(--encre);color:var(--fond)}
.sc-prose-page{max-width:720px;margin:0 auto;padding-bottom:56px}
.sc-prose-page h2{font-size:24px;margin:32px 0 14px}

/* ===== Article : titre pleine largeur, image large, colonne de lecture étroite ===== */
.sc-article-head{padding:44px 0 30px;text-align:center}
.sc-fil-ariane{font:700 12px var(--sans);margin-bottom:16px;color:color-mix(in srgb,var(--encre) 68%,transparent)}
.sc-fil-ariane a{text-decoration:underline;text-underline-offset:3px}
.sc-article-head h1{margin:10px auto 0;max-width:840px}
.chapo{font-size:17px;max-width:640px;margin:16px auto 0;color:color-mix(in srgb,var(--encre) 85%,transparent)}
.sc-article-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-top:20px;font:700 13px var(--sans);color:color-mix(in srgb,var(--encre) 70%,transparent)}
.sc-article-photo{border:1px solid var(--ligne);border-radius:var(--rayon);overflow:hidden;margin-bottom:8px}
.sc-article-photo img{width:100%;max-height:460px;object-fit:cover}
.sc-reading{padding:40px 0 64px}
.sc-reading .reading{max-width:700px;margin:0 auto}
.mobile-toc{background:var(--pastel);border-radius:var(--rayon-p);padding:16px 20px;margin:0 0 30px}
.mobile-toc summary{font:800 13px var(--sans);letter-spacing:.02em;text-transform:uppercase;cursor:pointer}
.mobile-toc ol{list-style:none;margin:14px 0 0;padding:0}
.mobile-toc li{padding:8px 0;border-top:1px solid var(--ligne);font-size:14px}
.prose{font-size:17px;line-height:1.82;overflow-wrap:anywhere}
.prose p{margin:0 0 20px}
.prose h2{font-size:26px;margin:36px 0 16px;scroll-margin-top:90px;border-bottom:2px solid var(--ligne);padding-bottom:10px}
.prose h3{font-size:20px;margin:26px 0 12px;scroll-margin-top:90px}
.prose a{text-decoration:underline;text-underline-offset:3px;color:var(--accent-fonce)}
.prose ul,.prose ol{padding-left:22px}
.prose li{margin:8px 0}
.prose blockquote{margin:26px 0;padding:18px 22px;background:var(--pastel);border-radius:0 var(--rayon-p) var(--rayon-p) 0;border-left:4px solid var(--accent)}
.prose img{border-radius:var(--rayon-p)}
.author{display:flex;gap:16px;align-items:flex-start;padding:24px;margin:40px 0 0;background:var(--pastel);border-radius:var(--rayon)}
.sb-avatar{width:58px;height:58px;border-radius:50%;object-fit:cover;flex-shrink:0}
.author p{margin:0;font-size:14px;line-height:1.7}
.sc-suite{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0 8px}
.prose .sb-sources{border-top:1px solid var(--ligne);margin-top:32px;padding-top:12px}
.prose .sb-sources p{font-size:14px;line-height:1.7}
.sb-table-scroll{overflow-x:auto}

/* ===== Pied de page (rangée unique, clair) ===== */
.sc-footer{margin-top:46px;background:var(--carte);border-top:3px solid var(--encre);padding:44px 0 0}
.sc-footer-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.sc-footer .logo{flex-direction:row;text-align:left;font-size:19px}
.sc-footer .logo svg{width:30px;height:30px}
.sc-footer .logo small{margin-top:0}
.sc-footer-nav{display:flex;flex-wrap:wrap;gap:6px}
.sc-footer-nav a{font:700 13px var(--sans);padding:8px 12px;border-radius:999px}
.sc-footer-nav a:hover{background:var(--pastel);text-decoration:none}
.sc-footer-baseline{max-width:640px;font-size:14px;color:color-mix(in srgb,var(--encre) 72%,transparent);margin:24px 0 0}
.sc-footer-bottom{border-top:1px solid var(--ligne);margin-top:28px;padding:18px 0 118px;font-size:13px;color:color-mix(in srgb,var(--encre) 60%,transparent)}

/* ===== Nav mobile fixe ===== */
.sc-mobile-nav{display:none}
.sc-toast{position:fixed;bottom:86px;left:50%;transform:translateX(-50%);background:var(--encre);color:var(--fond);padding:10px 18px;border-radius:999px;font-size:14px;z-index:80}
.sc-progress{position:fixed;top:0;left:0;height:3px;background:var(--accent);z-index:90;width:0}

/* ===== Responsive ===== */
@media(max-width:1100px){
  .site-frame{padding:0 22px}
  main .site-frame,header .site-frame,footer .site-frame{padding-left:22px;padding-right:22px}
  .sc-hero-photo img{height:300px}
  .sc-hero-copy{grid-template-columns:1fr;gap:18px;align-items:start}
  .sc-story-grid{grid-template-columns:repeat(2,1fr)}
  .sc-section-grid{grid-template-columns:repeat(2,1fr)}
  .sc-section-grid .sc-card-first{grid-column:span 2;grid-row:auto}
  .sc-section-grid .sc-card-first img{min-height:220px}
  .sc-reperes-grille{grid-template-columns:repeat(2,1fr);row-gap:28px}
  .sc-reperes-grille>div:nth-child(2n){border-left:1px solid var(--ligne)}
  .sc-reperes-grille>div:nth-child(odd){border-left:0}
}
@media(max-width:680px){
  body{font-size:15px}
  .sc-topbar-search{display:none}
  .sc-nav-in{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:10px}
  .sc-hero-photo img{height:230px}
  .sc-story-grid{grid-template-columns:1fr}
  .sc-section-grid{grid-template-columns:1fr}
  .sc-section-grid .sc-card-first{grid-column:auto}
  .sc-reperes-grille{grid-template-columns:1fr 1fr;gap:24px 16px}
  .sc-reperes-grille b{font-size:28px}
  .sc-archive-grid{grid-template-columns:1fr}
  .sc-article-photo img{height:210px}
  .sc-footer-row{flex-direction:column;align-items:flex-start}
  .sc-contact-band{flex-direction:column;align-items:flex-start;padding:28px 22px}
  .sc-mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--carte);border-top:1px solid var(--ligne);padding:6px 8px calc(6px + env(safe-area-inset-bottom))}
  .sc-mobile-nav a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;min-height:48px;font-size:13px;text-align:center;line-height:1.1}
  .sc-mobile-nav svg{width:20px;height:20px}
  .sc-footer-bottom{padding-bottom:118px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
