/*
Theme Name: DoingBuzz Sprint 2.2 Final
Theme URI: https://doingbuzz.com/
Author: DoingBuzz
Description: Thème actualités ultra-fluide, mobile-first, SEO-first. Mode Clair/Sombre/Auto avec préférence Clair par défaut.
Version: 2.2.0
Text Domain: doingbuzz
*/

/* =====================================================
   DoingBuzz UI System — v1.2.0
   Objectif: design premium + lisible + performant
   ===================================================== */

:root{
  /* Brand */
  --dbz-brand:#F58220;           /* Orange DoingBuzz */
  --dbz-brand-blue:#2E6CF6;      /* Bleu DoingBuzz */

  /* Typography */
  --dbz-font: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  --dbz-radius: 18px;

  /* Light (default) */
  --dbz-bg: #ffffff;
  --dbz-soft: #F5F7FB;
  --dbz-card: #ffffff;
  --dbz-ink: #0f172a;
  --dbz-muted: #64748b;
  --dbz-border: rgba(15,23,42,.10);
  --dbz-shadow: 0 10px 28px rgba(15,23,42,.06);
  --dbz-shadow-2: 0 18px 48px rgba(15,23,42,.10);

  /* Focus */
  --dbz-focus: rgba(46,108,246,.32);
}

html[data-theme="dark"], body[data-theme="dark"], body.theme-dark, html.theme-dark, body[data-km-theme="dark"]{
  --dbz-bg: #060B16;
  --dbz-soft: #0B1226;
  --dbz-card: rgba(255,255,255,.04);
  --dbz-ink: #e5e7eb;
  --dbz-muted: rgba(229,231,235,.72);
  --dbz-border: rgba(255,255,255,.10);
  --dbz-shadow: 0 18px 50px rgba(0,0,0,.40);
  --dbz-shadow-2: 0 26px 70px rgba(0,0,0,.55);
  --dbz-focus: rgba(245,130,32,.28);
}

/* Auto mode (if attribute removed) */
@media (prefers-color-scheme:dark){
  :root[data-theme="auto"],
  :root:not([data-theme]){
    --dbz-bg: #060B16;
    --dbz-soft: #0B1226;
    --dbz-card: rgba(255,255,255,.04);
    --dbz-ink: #e5e7eb;
    --dbz-muted: rgba(229,231,235,.72);
    --dbz-border: rgba(255,255,255,.10);
    --dbz-shadow: 0 18px 50px rgba(0,0,0,.40);
    --dbz-shadow-2: 0 26px 70px rgba(0,0,0,.55);
    --dbz-focus: rgba(245,130,32,.28);
  }
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{
  margin:0;
  font-family: var(--dbz-font);
  color: var(--dbz-ink);
  background: var(--dbz-bg);
  overflow-x:hidden;
}

a{color:inherit}
a:hover{text-decoration:none}

::selection{background:rgba(245,130,32,.25)}

img{max-width:100%;height:auto}

/* Avoid iOS zoom on focus */
input, select, textarea{font-size:16px}

/* Global container helpers */
.dbz-container{width:min(1240px, calc(100% - 40px));margin-inline:auto}

/* Generic card */
.dbz-card{
  background: var(--dbz-card);
  border:1px solid var(--dbz-border);
  border-radius: var(--dbz-radius);
  box-shadow: var(--dbz-shadow);
}

/* Hover lift (light, cheap) */
.dbz-lift{transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease}
.dbz-lift:hover{transform:translateY(-2px);box-shadow:var(--dbz-shadow-2)}

/* Aspect ratios */
.ratio-16x9{position:relative;aspect-ratio:16/9;overflow:hidden}
.ratio-1x1{position:relative;aspect-ratio:1/1;overflow:hidden}

/* Image zoom (GPU-friendly) */
.dbz-zoom-wrap{position:relative;overflow:hidden}
.dbz-zoom-img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.01);transition:transform .35s ease}
.dbz-zoom-wrap:hover .dbz-zoom-img{transform:scale(1.06)}

/* Reveal */
.dbz-reveal{opacity:0;transform:translateY(10px);transition:opacity .35s ease, transform .35s ease}
.dbz-reveal.is-inview{opacity:1;transform:translateY(0)}

@media (prefers-reduced-motion:reduce){
  .dbz-reveal{opacity:1;transform:none;transition:none}
  .dbz-zoom-img{transition:none}
  .dbz-lift{transition:none}
}

/* Links, badges */
.dbz-pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 10px;border-radius:999px;
  border:1px solid var(--dbz-border);
  background: color-mix(in srgb, var(--dbz-card) 92%, var(--dbz-brand) 8%);
  font-weight:800;
  font-size:13px;
}

.dbz-btn{
  display:inline-flex;align-items:center;justify-content:center;
  gap:8px;
  padding:10px 14px;border-radius:14px;
  border:1px solid rgba(245,130,32,.35);
  background: linear-gradient(180deg, rgba(245,130,32,.96), rgba(245,130,32,.84));
  color:#111827;
  font-weight:900;
  text-decoration:none;
  box-shadow: 0 12px 28px rgba(245,130,32,.22);
}
.dbz-btn:hover{filter:saturate(1.05)}

/* Content visibility boosts (safe) */
.dbz2, .dbz-latest-posts, .eco-list-section{content-visibility:auto;contain-intrinsic-size:800px}

/* Tiny utilities */
.dbz-muted{color:var(--dbz-muted)}
.dbz-border{border:1px solid var(--dbz-border)}



/* ===== v1.3.1 SAFE readability ===== */
html[data-theme="dark"] body, body[data-theme="dark"], body.theme-dark, html.theme-dark body, body[data-km-theme="dark"]{color:var(--dbz-ink);background:var(--dbz-bg)}
html[data-theme="dark"] a, body[data-theme="dark"] a, body.theme-dark a, html.theme-dark a, body[data-km-theme="dark"] a{color:inherit}


/* DoingBuzz v1.4.0 — category readability polish */
:root{--dbz-cat-pill-bg:rgba(255,255,255,.12);}
html[data-theme="dark"] .category-hero .cat-sub,
body[data-theme="dark"] .category-hero .cat-sub,
body.theme-dark .category-hero .cat-sub{color:#eaf2ff!important;opacity:1;}
html[data-theme="dark"] .category-hero .cat-desc,
body[data-theme="dark"] .category-hero .cat-desc,
body.theme-dark .category-hero .cat-desc{color:#dbeafe!important;}
.category-hero .cat-title{letter-spacing:-.02em;}
.category-hero .cat-meta{row-gap:8px;}
.cat-row .cat-excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}


/* =====================================================
   DoingBuzz v1.5.0 — extra polish
   ===================================================== */
.footer-doingbuzz .partners-section{display:none!important}
.footer-doingbuzz a{ text-decoration:none; }
.footer-doingbuzz a:hover{ color:#F58220; }
