/* v351 — Magazine BizVa (/magazine/ et /magazine/nN/) — s'ajoute à astuces.css */
.mg-cover{position:relative;display:block;aspect-ratio:3/4;border-radius:14px;overflow:hidden;background:var(--esp);box-shadow:0 12px 30px rgba(38,28,23,.18)}
.mg-cover img{width:100%;height:100%;object-fit:cover;display:block}
/* Couverture générée quand l'édition n'a pas d'image */
.mg-gen{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:8% 9%;color:#fff;
  background:radial-gradient(120% 80% at 90% 0%,rgba(255,191,0,.28),transparent 60%),linear-gradient(160deg,#3a2a21,#261c17 60%)}
.mg-gen .mh{font-weight:800;letter-spacing:-.5px;line-height:1;font-size:clamp(18px,2.6vw,30px)}
.mg-gen .mh small{display:block;font-size:.42em;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-top:6px;font-weight:700}
.mg-gen .nb{font-weight:800;font-size:clamp(44px,7vw,92px);line-height:.9;color:var(--gold)}
.mg-gen .tt{font-weight:700;font-size:clamp(13px,1.5vw,18px);line-height:1.25}
.mg-gen .kente{height:6px;border-radius:3px;background:repeating-linear-gradient(90deg,var(--gold) 0 14px,#b0452f 14px 22px,#2f6b51 22px 34px,#261c17 34px 38px)}
.mg-badge{position:absolute;top:10px;left:10px;min-height:26px;padding:3px 10px;border-radius:99px;background:var(--gold);color:var(--esp);font-size:12px;font-weight:800}
.mg-price{display:inline-flex;align-items:center;min-height:28px;padding:2px 12px;border-radius:99px;background:var(--soft);color:var(--esp);font-size:13px;font-weight:700}
.mg-price.free{background:#e3f1ea;color:var(--ok)}

/* Dernier numéro */
.mg-last{margin-top:28px;display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:44px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px}
.mg-last h2{margin:0;font-size:clamp(24px,2.8vw,34px);font-weight:800;line-height:1.15;letter-spacing:-.8px}
.mg-last h2 a{color:var(--esp);text-decoration:none}.mg-last h2 a:hover{color:var(--pri)}
.mg-in{display:flex;flex-direction:column;gap:14px}
.mg-kick{font-size:13px;font-weight:700;color:var(--pri);letter-spacing:.3px}
.mg-sum{margin:0;font-size:15px;line-height:1.65;color:var(--mut);white-space:pre-line}
.mg-toc{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;border-top:1px solid var(--line)}
.mg-toc li{padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;display:flex;gap:12px;align-items:baseline}
.mg-toc li span{font-weight:800;color:var(--gold);min-width:22px;font-size:13px}
.mg-toc-h{font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--mut);margin:6px 0 -6px}
.mg-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:4px}

/* Tous les numéros */
.mg-grid{padding-top:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.mg-card{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--esp)}
.mg-card .mg-cover{transition:transform .15s,box-shadow .15s}
.mg-card:hover .mg-cover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(38,28,23,.24)}
.mg-card b{font-size:15px;line-height:1.3}.mg-card small{font-size:12px;color:var(--mut);font-weight:600}
.mg-card:hover b{color:var(--pri)}

/* Page d'une édition */
.mg-ed{padding-top:22px;display:grid;grid-template-columns:minmax(240px,380px) 1fr;gap:48px;align-items:start}
.mg-ed h1{margin:0;font-size:clamp(28px,3.4vw,42px);font-weight:800;letter-spacing:-1px;line-height:1.12}
.mg-box{margin-top:6px;padding:24px;border-radius:18px;border:2px solid var(--line);background:#fff;display:flex;flex-direction:column;gap:14px}
.mg-box h2{margin:0;font-size:18px;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:12px}
.mg-box label{font-size:13px;font-weight:600;color:var(--esp);display:flex;flex-direction:column;gap:6px}
.mg-box input[type=tel],.mg-box input[type=email]{min-height:48px;border-radius:10px;border:2px solid var(--line);padding:0 14px;font:15px 'Poppins',sans-serif;color:var(--esp);background:#fff}
.mg-box input:focus{outline:0;border-color:var(--pri)}
.mg-net{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:0;margin:0;padding:0}
.mg-net legend{font-size:13px;font-weight:600;margin-bottom:6px;padding:0}
.mg-net label{flex-direction:row;align-items:center;gap:10px;min-height:52px;padding:0 14px;border-radius:12px;border:2px solid var(--line);cursor:pointer;font-size:14px;font-weight:700}
.mg-net input{accent-color:var(--pri);width:18px;height:18px}
.mg-net label:has(input:checked){border-color:var(--pri);background:var(--soft)}
.mg-note{margin:0;font-size:12px;color:var(--mut);line-height:1.5}
.mg-wait{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:14px;background:var(--soft)}
.mg-wait b{display:block;font-size:15px}.mg-wait p{margin:4px 0 0;font-size:13px;color:var(--mut);line-height:1.5}
.mg-spin{width:26px;height:26px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--pri);flex-shrink:0;animation:mgspin 1s linear infinite}
@keyframes mgspin{to{transform:rotate(360deg)}}
.mg-done{padding:18px;border-radius:14px;background:#e3f1ea;display:flex;flex-direction:column;gap:10px}
.mg-done b{color:var(--ok);font-size:16px}.mg-done p{margin:0;font-size:13px;color:var(--esp)}
.mg-other{padding-top:48px}
[hidden]{display:none!important}

@media (max-width:1000px){
  .mg-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mg-last,.mg-ed{grid-template-columns:minmax(0,1fr);gap:28px}
  .mg-last .mg-cover,.mg-ed .mg-cover{max-width:300px}
}
@media (max-width:640px){
  .mg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .mg-last{padding:20px;border-radius:18px}
  .mg-last .mg-cover,.mg-ed .mg-cover{max-width:240px;margin:0 auto;width:100%}
  .mg-box{padding:18px}
}
@media (prefers-reduced-motion:reduce){.mg-card .mg-cover{transition:none}.mg-spin{animation:none}}
.mg-card .mg-price{align-self:flex-start}
@media (max-width:640px){.mg-box .bz-btn.big{align-self:stretch}}
