/* Composants modernes partagés (cartes d actualités, pages éditoriales, contact…) — chargé sur toutes les pages, après theme.css. */
:root{--yi-navy:#17204f;--yi-indigo:#3f51b5;--yi-gold:#ffc94e;--yi-line:#e7e9f2;--yi-muted:#5b6382}

/* Pastilles des catégories */
.yi-cats{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:6px 0 26px}
.yi-cats a{display:inline-flex;align-items:center;padding:7px 16px;border-radius:999px;border:1px solid var(--yi-line);background:#fff;color:var(--yi-navy)!important;font-weight:600;font-size:.88rem;line-height:1.2;text-decoration:none!important;transition:background .15s,border-color .15s}
.yi-cats a:hover{border-color:var(--yi-indigo)}
.yi-cats a.is-on{background:var(--yi-navy);border-color:var(--yi-navy);color:#fff!important}

/* En-tête de liste (catégorie, mot-clé, auteur) */
.yi-list-head{text-align:center;margin:0 0 26px}
.yi-list-head__kicker{margin:0 0 4px;color:#b8860b;font-size:.74rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.yi-list-head__title{margin:0;font-family:'Playfair Display',Georgia,serif;font-weight:600;font-size:clamp(1.7rem,3.4vw,2.4rem);color:var(--yi-navy);line-height:1.15}
.yi-list-head__count{margin:6px 0 0;color:var(--yi-muted);font-size:.92rem}

/* Grille de cartes : hauteurs égales */
.yi-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:26px;margin:0 0 34px;align-items:stretch}
.yi-cards--featured{grid-template-columns:1fr;margin-bottom:26px}
.yi-cards__empty{grid-column:1/-1;padding:28px;border:1px dashed var(--yi-line);border-radius:18px;text-align:center;color:var(--yi-muted);background:#fff}
.yi-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--yi-line);border-radius:20px;overflow:hidden;box-shadow:0 18px 40px -30px rgba(23,32,79,.45);transition:box-shadow .2s ease,transform .2s ease}
.yi-card:hover{box-shadow:0 24px 46px -28px rgba(23,32,79,.55);transform:translateY(-2px)}
.yi-card__media{position:relative;display:block;aspect-ratio:16/9;background:linear-gradient(135deg,#1d2a6b,#3f51b5);overflow:hidden}
.yi-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.yi-card:hover .yi-card__media img{transform:scale(1.04)}
.yi-card__media.is-cover img{object-position:center 40%}
.yi-card__date{position:absolute;left:14px;top:14px;padding:5px 11px;border-radius:999px;background:var(--yi-gold);color:var(--yi-navy);font-size:.76rem;font-weight:700;box-shadow:0 6px 14px -8px rgba(0,0,0,.45)}
.yi-card__pin{position:absolute;right:14px;top:14px;padding:5px 11px;border-radius:999px;background:var(--yi-navy);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.yi-card__body{display:flex;flex-direction:column;flex:1 1 auto;padding:20px 22px 18px}
.yi-card__cats{margin:0 0 8px;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.yi-card__cats a{color:var(--yi-indigo)!important;text-decoration:none!important}
.yi-card__title{margin:0 0 10px!important;font-family:'Playfair Display',Georgia,serif;font-weight:600;font-size:1.2rem!important;line-height:1.3!important;color:var(--yi-navy)}
.yi-card__title a{color:inherit!important;text-decoration:none!important}
.yi-card__title a:hover{color:var(--yi-indigo)!important}
.yi-card__ex{margin:0 0 14px;color:var(--yi-muted);font-size:.9rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.yi-card__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid var(--yi-line);font-size:.84rem}
.yi-card__reads{display:inline-flex;align-items:center;gap:6px;color:var(--yi-muted);white-space:nowrap}
.yi-card__more{display:inline-flex;align-items:center;gap:6px;color:var(--yi-indigo)!important;font-weight:700;text-decoration:none!important;white-space:nowrap}
.yi-card__more:hover{color:var(--yi-navy)!important}
.yi-card svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.yi-card--big{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.yi-card--big .yi-card__media{aspect-ratio:auto;min-height:320px}
.yi-card--big .yi-card__body{padding:32px 34px}
.yi-card--big .yi-card__title{font-size:1.75rem!important}
.yi-card--big .yi-card__ex{-webkit-line-clamp:5;font-size:.98rem}
@media (max-width:760px){.yi-card--big{display:flex}.yi-card--big .yi-card__media{min-height:0;aspect-ratio:16/9}.yi-card--big .yi-card__body{padding:20px 22px 18px}.yi-card--big .yi-card__title{font-size:1.3rem!important}}
@media (max-width:420px){.yi-cards{grid-template-columns:1fr;gap:18px}.yi-cats{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;margin-bottom:18px}.yi-cats a{flex:none}}
@media (prefers-reduced-motion:reduce){.yi-card,.yi-card__media img{transition:none}.yi-card:hover{transform:none}.yi-card:hover .yi-card__media img{transform:none}}
/* Neutralise les styles hérités du thème sur les cartes */
.yi-cards .yi-card,.yi-cards--featured .yi-card{padding:0!important;margin:0!important;float:none!important;width:auto!important}
.yi-card__media{margin:0!important;padding:0!important;line-height:0}
.yi-card__media img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;border-radius:0!important;object-fit:cover}
.yi-card__date,.yi-card__pin{line-height:1.2;z-index:1}
.yi-cats{justify-content:center!important;text-align:center}
.yi-list-head{text-align:center!important}
.yi-cats{display:flex!important;margin:4px 0 28px!important;padding:0!important}

/* Fournitures scolaires (liste du logiciel de gestion, filtre par classe) */
.yi-fourn__intro{color:#3c4466;font-size:1rem;line-height:1.6;margin:0 0 18px}
.yi-fourn__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 20px}
.yi-fourn__tabs{display:inline-flex;gap:4px;padding:4px;border-radius:14px;background:#eef0f7;border:1px solid var(--yi-line)}
.yi-fourn__tabs input{position:absolute;opacity:0;pointer-events:none}
.yi-fourn__tabs label{margin:0!important;padding:9px 20px;border-radius:10px;font-weight:700;font-size:.95rem;color:var(--yi-navy);cursor:pointer;transition:background .15s,color .15s}
.yi-fourn__tabs label:hover{background:#fff}
.yi-fourn__tabs input:checked+label{background:var(--c);color:#fff;box-shadow:0 6px 14px -8px var(--c)}
.yi-fourn__tabs input:focus-visible+label{outline:2px solid var(--yi-indigo);outline-offset:2px}
.yi-fourn__print{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:1px solid var(--yi-line);background:#fff;color:var(--yi-navy)!important;font-weight:600;font-size:.9rem;text-decoration:none!important}
.yi-fourn__print svg,.yi-conv svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.yi-fourn__panel{display:none}
.yi-fourn__head{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--yi-muted);font-size:.9rem}
.yi-fourn__head span{font-family:'Playfair Display',Georgia,serif;font-size:1.5rem;font-weight:600;color:var(--c)}
.yi-fourn__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.yi-fourn__card{background:#fff;border:1px solid var(--yi-line);border-top:4px solid var(--c);border-radius:16px;padding:16px 18px;box-shadow:0 14px 30px -26px rgba(23,32,79,.5);break-inside:avoid}
.yi-fourn__card h3{margin:0 0 10px!important;font-size:1rem!important;font-weight:700;color:var(--yi-navy);letter-spacing:.01em}
.yi-fourn__card ul{margin:0;padding:0 0 0 18px}
.yi-fourn__card li{margin:0 0 5px;line-height:1.45;color:#3c4466;font-size:.92rem}
.yi-fourn__card li::marker{color:var(--c)}
@media (max-width:520px){.yi-fourn__tabs{display:flex;width:100%}.yi-fourn__tabs label{flex:1 1 0;text-align:center;padding:9px 6px}.yi-fourn__print{width:100%;justify-content:center}}
@media print{.yi-fourn__bar,.yi-share,header,footer,nav{display:none!important}.yi-fourn__grid{display:block;columns:2}.yi-fourn__card{box-shadow:none;margin:0 0 10px}}

/* Convention de stage */
.yi-conv__intro{color:#3c4466;font-size:1rem;line-height:1.6;margin:0 0 20px}
.yi-conv__actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:0 0 24px}
.yi-conv__act{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;border:1px solid var(--yi-line);background:#fff;color:var(--yi-navy)!important;text-decoration:none!important;box-shadow:0 14px 30px -26px rgba(23,32,79,.5);transition:transform .15s,box-shadow .15s}
.yi-conv__act:hover{transform:translateY(-2px);box-shadow:0 20px 36px -26px rgba(23,32,79,.6)}
.yi-conv__act svg{width:26px;height:26px;padding:10px;border-radius:12px;background:#eef0f7;color:var(--yi-indigo);box-sizing:content-box}
.yi-conv__act span{display:flex;flex-direction:column;gap:2px}
.yi-conv__act small{color:var(--yi-muted);font-size:.84rem;font-weight:400}
.yi-conv__act--main{background:var(--yi-navy);border-color:var(--yi-navy);color:#fff!important}
.yi-conv__act--main small{color:#c9cee6}
.yi-conv__act--main svg{background:var(--yi-gold);color:var(--yi-navy)}
.yi-conv__steps{counter-reset:s;list-style:none;margin:0 0 26px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.yi-conv__steps li{counter-increment:s;position:relative;padding:14px 16px 14px 54px;border-radius:14px;background:#f6f7fb;color:#3c4466;font-size:.92rem;line-height:1.45}
.yi-conv__steps li::before{content:counter(s);position:absolute;left:14px;top:14px;width:28px;height:28px;border-radius:50%;background:var(--yi-gold);color:var(--yi-navy);font-weight:800;display:grid;place-items:center;font-size:.9rem}
.yi-conv__steps strong{color:var(--yi-navy)}
.yi-conv__act svg{width:24px!important;height:24px!important;min-width:24px;padding:11px!important}.yi-fourn__tabs{max-width:100%;box-sizing:border-box}.yi-fourn{overflow-wrap:anywhere}
.yi-fourn__tabs{position:relative}.yi-fourn__tabs input{left:0;top:0;width:1px;height:1px;margin:0}

/* Impression des fournitures : uniquement la liste de la classe choisie, sur UNE page A4 */
@media print{
  @page{size:A4 portrait;margin:9mm}
  body *{visibility:hidden!important}
  .yi-fourn,.yi-fourn *{visibility:visible!important}
  .yi-fourn{position:absolute!important;left:0;top:0;width:100%;margin:0;padding:0;font-size:8.4pt;color:#000}
  .yi-fourn__intro,.yi-fourn__bar{display:none!important}
  .yi-fourn__head{margin:0 0 2.5mm!important;font-size:8pt;color:#333;border-bottom:.4mm solid var(--c);padding-bottom:1.5mm}
  .yi-fourn__head::before{content:"Fournitures scolaires — Lycée Talmudique · ";font-weight:700;color:#17204f;font-size:10pt}
  .yi-fourn__head span{font-size:13pt!important}
  .yi-fourn__grid{display:block!important;columns:3;column-gap:4mm}
  .yi-fourn__card{display:block;break-inside:avoid;page-break-inside:avoid;margin:0 0 2.5mm!important;padding:1.6mm 2.2mm!important;border:.25mm solid #c9cdd8!important;border-top:.8mm solid var(--c)!important;border-radius:2mm!important;box-shadow:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .yi-fourn__card h3{font-size:8.8pt!important;margin:0 0 .8mm!important;line-height:1.2!important}
  .yi-fourn__card ul{padding-left:3.4mm!important;margin:0!important}
  .yi-fourn__card li{font-size:7.9pt!important;line-height:1.22!important;margin:0 0 .35mm!important;color:#111!important}
}
@media print{
  .yi-fourn__grid{column-gap:5mm}
  .yi-fourn__card{padding:2.2mm 3mm!important;margin:0 0 3.5mm!important}
  .yi-fourn__card h3{font-size:10.2pt!important;margin:0 0 1.2mm!important}
  .yi-fourn__card li{font-size:9.2pt!important;line-height:1.3!important;margin:0 0 .6mm!important}
  .yi-fourn__head{font-size:9pt;margin:0 0 4mm!important}
  .yi-fourn__head::before{font-size:12pt}
  .yi-fourn__head span{font-size:16pt!important}
}
