/* Calendrier manga et anime
   Règle : une couleur = un sens.
   - Encre (noir) et jaune d'imprimerie : la structure et la marque (en-tête, aujourd'hui, surlignages).
   - Une couleur par éditeur (bleu Glénat, rouge Kana, vert Pika, violet Ki-oon, magenta Akata, et une couleur pour chacun des autres éditeurs) : uniquement pour reconnaître l'éditeur.
   - Les jours de la semaine n'ont pas de couleur.
   Polices du système : aucune requête vers un tiers. */
/* Polices du site, hébergées ici (aucune requête vers un tiers) : Dela Gothic One pour les titres, Zen Kaku Gothic New pour le texte. Licence SIL OFL. */
@font-face{font-family:"Dela Gothic One";src:url(/fonts/dela-400.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Zen Kaku Gothic New";src:url(/fonts/zen-400.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Zen Kaku Gothic New";src:url(/fonts/zen-700.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Zen Kaku Gothic New";src:url(/fonts/zen-900.woff) format("woff");font-weight:800 900;font-style:normal;font-display:swap}
:root{
  --paper:#fbfaf6;--panel:#fff;--ink:#111;--edge:#111;--muted:#5b5b5b;--line:#e6e3da;
  --brand:#ffd21f;--on-brand:#111;--mark:rgba(255,210,31,.7);
  --link:#111;--dot:rgba(17,17,17,.2);--shadow:#111;
  --c-glenat:#0a4fd6;--c-kana:#c93408;--c-pika:#08804a;--c-ki-oon:#7a24c9;--c-akata:#c4177d;--c-autre:#5f6672;--c-delcourt:#0e7c86;--c-soleil:#b8860b;--c-kaze:#5c7f1a;--c-kurokawa:#3b3f4a;--c-meian:#8d5524;--c-mangetsu:#a61e4d;--c-panini-manga:#c92a2a;
  --t-glenat:#0a4fd6;--t-kana:#c93408;--t-pika:#08804a;--t-ki-oon:#7a24c9;--t-akata:#c4177d;--t-autre:#5f6672;--t-delcourt:#0e7c86;--t-soleil:#b8860b;--t-kaze:#5c7f1a;--t-kurokawa:#3b3f4a;--t-meian:#8d5524;--t-mangetsu:#a61e4d;--t-panini-manga:#c92a2a;
  --foot:#111;--on-foot:#d8d8d8;
  --sans:"Zen Kaku Gothic New",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --display:"Dela Gothic One","Zen Kaku Gothic New",ui-sans-serif,system-ui,sans-serif;
  --serif:Charter,"Iowan Old Style","Palatino Linotype",Georgia,serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#0f0f10;--panel:#19191b;--ink:#f6f4ee;--edge:#f6f4ee;--muted:#a8a8a8;--line:#2c2c2f;
  --mark:rgba(255,210,31,.35);--link:#f6f4ee;--dot:rgba(17,17,17,.25);--shadow:#000;
  --t-glenat:#6c9bff;--t-kana:#ff8059;--t-pika:#3fd18a;--t-ki-oon:#b987f5;--t-akata:#ff7ac2;--t-autre:#a9b0bc;--t-delcourt:#4fd0da;--t-soleil:#f2c14e;--t-kaze:#a5d46a;--t-kurokawa:#c4c9d4;--t-meian:#e0a46c;--t-mangetsu:#f783ac;--t-panini-manga:#ff8787;
  --foot:#070708;--on-foot:#c8c8c8;
}}
:root[data-theme="dark"]{
  --paper:#0f0f10;--panel:#19191b;--ink:#f6f4ee;--edge:#f6f4ee;--muted:#a8a8a8;--line:#2c2c2f;
  --mark:rgba(255,210,31,.35);--link:#f6f4ee;--dot:rgba(17,17,17,.25);--shadow:#000;
  --t-glenat:#6c9bff;--t-kana:#ff8059;--t-pika:#3fd18a;--t-ki-oon:#b987f5;--t-akata:#ff7ac2;--t-autre:#a9b0bc;--t-delcourt:#4fd0da;--t-soleil:#f2c14e;--t-kaze:#a5d46a;--t-kurokawa:#c4c9d4;--t-meian:#e0a46c;--t-mangetsu:#f783ac;--t-panini-manga:#ff8787;
  --foot:#070708;--on-foot:#c8c8c8;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans);font-synthesis:none}
::selection{background:var(--brand);color:#111}
a{color:var(--link);text-underline-offset:.15em;text-decoration-thickness:2px;text-decoration-color:var(--brand)}
a:hover{background:var(--mark)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.sr,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:8px;top:8px;z-index:20;background:var(--panel);padding:8px 12px;border:2px solid var(--edge)}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}

/* Jours */
/* (les classes wd-N restent dans le HTML, sans couleur) */

/* En-tête jaune, trame de points sur la droite */
.site-header{position:relative;background:var(--brand);color:var(--on-brand);border-bottom:3px solid #111;overflow:hidden}
.site-header::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(rgba(21,17,43,.2) 1.5px,transparent 2px) 0 0/9px 9px;-webkit-mask-image:linear-gradient(90deg,transparent 35%,#000);mask-image:linear-gradient(90deg,transparent 35%,#000)}
.hbar{position:relative;display:flex;flex-wrap:wrap;gap:6px 24px;align-items:center;justify-content:space-between;padding-top:8px;padding-bottom:8px}
.brand{display:flex;align-items:center;gap:10px;padding:6px 0;font-family:var(--display);font-weight:400;letter-spacing:0;font-size:1.1rem;color:#111;text-decoration:none}
.mark{width:24px;height:24px;border:3px solid #111;background:#fff radial-gradient(circle,#111 0 4px,transparent 4.5px);flex:none;transform:rotate(-6deg)}
nav{display:flex;flex-wrap:wrap;gap:4px}
nav a{padding:6px 12px;border:2px solid transparent;border-radius:2px;color:#111;text-decoration:none;font-weight:750}
nav a[aria-current]{background:#111;color:var(--brand)}
main.wrap{padding-top:36px;padding-bottom:72px}

/* Typographie */
h1{font-family:var(--display);font-size:clamp(1.65rem,4.6vw,2.55rem);line-height:1.18;letter-spacing:-.01em;font-weight:400;margin:0 0 14px}
h2{display:inline-block;font-family:var(--display);font-size:1.2rem;line-height:1.3;letter-spacing:0;font-weight:400;margin:40px 0 14px;box-shadow:inset 0 -.42em 0 var(--mark)}
h3{font-size:1.05rem;font-weight:750;margin:24px 0 8px}
.chip-day{box-shadow:none;background:var(--ink);color:var(--paper);border:2px solid var(--ink);padding:2px 14px;margin:28px 0 12px;font-size:1.1rem;letter-spacing:-.01em;border-radius:2px}
h2.chip-day{font-size:1.1rem;margin-top:36px}
.lead{font-size:1.1rem;color:var(--muted);max-width:42rem;margin:0 0 24px}
.muted{color:var(--muted)}
.more{margin:14px 0 0}
.empty{margin:0;padding:16px;border:2px dashed var(--edge);color:var(--muted);max-width:40rem}
.now{margin-left:8px;padding:2px 8px;background:var(--brand);color:#111;font-size:.8rem;font-weight:800;vertical-align:.12em}

/* Cases */
.panel{background:var(--panel);border:2px solid var(--edge);border-radius:2px}
ul.list,ul.strip,ul.articles,ul.shelf{list-style:none;margin:0;padding:0}

/* Semaine (accueil) */
.week-head{max-width:46rem}
.strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding-right:5px;padding-bottom:5px}
.day-panel{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--panel);border:2px solid var(--edge);border-radius:2px;min-height:140px}
.d-head{display:flex;flex-direction:column;margin:-12px -12px 6px;padding:10px 12px 8px;border-bottom:2px solid var(--edge)}
.d-wd{font-size:.88rem;font-weight:700}
.d-num{font-family:var(--display);font-size:2.1rem;line-height:1.1;font-weight:400;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.d-line{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:.92rem;color:var(--ink);text-decoration:none}
.d-line b{font-size:1.2rem;font-variant-numeric:tabular-nums}
a.d-line:hover{text-decoration:underline}
.d-line.none{color:var(--muted)}
.day-panel.today{background:var(--brand);color:#111;border-color:#111;box-shadow:5px 5px 0 var(--shadow)}
.today .d-head{border-bottom-color:#111;background-image:radial-gradient(var(--dot) 1.5px,transparent 2px);background-size:7px 7px}
.today .d-line,.today .d-line.none,.today .d-head{color:#111}
.dots{display:inline-flex;gap:3px;margin-left:auto}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--pc,var(--c-autre))}
.chip .dot{margin-right:2px;border-color:transparent}

/* Éditeurs */
.p-glenat{--pc:var(--c-glenat);--pt:var(--t-glenat)}.p-kana{--pc:var(--c-kana);--pt:var(--t-kana)}.p-pika{--pc:var(--c-pika);--pt:var(--t-pika)}.p-ki-oon{--pc:var(--c-ki-oon);--pt:var(--t-ki-oon)}.p-akata{--pc:var(--c-akata);--pt:var(--t-akata)}.p-delcourt{--pc:var(--c-delcourt);--pt:var(--t-delcourt)}.p-soleil{--pc:var(--c-soleil);--pt:var(--t-soleil)}.p-kaze{--pc:var(--c-kaze);--pt:var(--t-kaze)}.p-kurokawa{--pc:var(--c-kurokawa);--pt:var(--t-kurokawa)}.p-meian{--pc:var(--c-meian);--pt:var(--t-meian)}.p-mangetsu{--pc:var(--c-mangetsu);--pt:var(--t-mangetsu)}.p-panini-manga{--pc:var(--c-panini-manga);--pt:var(--t-panini-manga)}.p-autre{--pc:var(--c-autre);--pt:var(--t-autre)}

/* Deux colonnes */
.two{display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:start}

/* Listes de sorties */
.rel{position:relative;padding:12px 14px 12px 12px;border-left:7px solid var(--pc,var(--c-autre));border-bottom:1px solid var(--line)}
.list>li:last-child{border-bottom:0}
.rel-title strong{font-weight:800}
.tome{font-weight:600}
.ed{color:var(--muted);font-size:.92em}
.ed::before{content:"· "}
.meta{display:flex;flex-wrap:wrap;gap:2px 14px;align-items:center;margin-top:3px;font-size:.88rem;color:var(--muted)}
.meta .pub{color:var(--pt,var(--muted));font-weight:800}
.meta time{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}
.notes{margin:4px 0 0;font-size:.9rem;color:var(--muted)}
.rel.past .rel-title{opacity:.62}
.badge{padding:0 7px;font-size:.78rem;font-weight:800;border-radius:2px}
.s-confirme{border:1.5px solid var(--edge);color:var(--ink)}
.s-reporte{background:var(--brand);color:#111;border:1.5px solid #111}
.s-new{background:#111;color:var(--brand);border:1.5px solid #111;white-space:nowrap}
.s-annule{background:var(--ink);color:var(--paper);text-decoration:line-through}

/* Suivre */
.follow{position:absolute;z-index:1;right:10px;top:10px;min-height:32px;padding:2px 12px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit;font-size:.85rem;font-weight:750;cursor:pointer}
.follow[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
/* Tous les boutons : même geste, l'autocollant qui se décolle */
.follow,.chip,.own,nav a,.jump{transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease,color .12s ease}
@media (hover:hover){
  .follow:hover,.chip:hover,.own:hover{background:var(--brand);color:#111;border-color:#111;transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--ink)}
  .follow:hover .n,.chip:hover .n{color:#111}
  .follow[aria-pressed=true]:hover,.chip[aria-pressed=true]:hover,.own[aria-pressed=true]:hover{background:var(--panel);color:var(--ink);border-color:var(--ink)}
  .chip[aria-pressed=true]:hover .n{color:var(--ink)}
  nav a:not([aria-current]):hover{background:#fff;border-color:#111;transform:translate(-2px,-2px);box-shadow:3px 3px 0 #111}
  .jump:not(.today):hover{background:var(--brand);color:#111;transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--ink)}
  .jump.today:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--shadow)}
}
.follow:active,.chip:active,.own:active,nav a:active,.jump:active{transform:translate(1px,1px);box-shadow:none}
@media (prefers-reduced-motion:reduce){.follow,.chip,.own,nav a,.jump{transition:none}}
.rel .rel-title,.rel .meta{padding-right:84px}
.follow-chips{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.follow-chips .n{margin-left:8px}
.budget{margin:-4px 0 10px;font-weight:800;font-variant-numeric:tabular-nums}
.transfer{margin-top:32px}
.transfer summary{cursor:pointer;font-weight:700}
.transfer textarea{display:block;width:100%;max-width:560px;margin:8px 0;padding:8px 12px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit;font-size:.9rem}

/* Épisodes */
.eps li.ep-row{display:grid;grid-template-columns:4.6rem minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:10px 14px;border-bottom:1px solid var(--line)}
.eps li.ep-row.has-thumb{grid-template-columns:96px 4.4rem minmax(0,1fr) auto;gap:12px 16px;align-items:center}
.ep-cover{display:block;width:96px;height:144px;box-shadow:3px 3px 0 var(--shadow)}
.ep-row time{white-space:nowrap;font-weight:800;font-variant-numeric:tabular-nums}
.ep-row .ep{font-size:.88rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;justify-content:flex-end;max-width:15rem}
.ep-row .t{min-width:0;overflow-wrap:anywhere}
.ep-row a{color:var(--ink);text-decoration-color:var(--line)}
.ep-row a:hover{color:var(--ink)}

/* Filtres */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
input[type=search]{flex:1 1 220px;max-width:340px;min-height:42px;padding:8px 12px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit}
.chip{min-height:42px;padding:6px 14px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}
.chip .n{color:var(--muted);font-weight:500;font-variant-numeric:tabular-nums}
.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.chip[aria-pressed=true] .n{color:inherit;opacity:.8}

/* Calendrier du mois */
.cal{width:100%;max-width:600px;table-layout:fixed;border-collapse:separate;border-spacing:4px;margin:0 0 8px -4px}
.cal th{color:var(--muted);border-bottom:2px solid var(--edge);font-size:.8rem;font-weight:800;padding:3px 0;text-align:center;text-transform:uppercase;letter-spacing:.04em}
.cal td{height:64px;vertical-align:top;padding:0;background:var(--panel);border:2px solid var(--line);border-radius:2px;font-variant-numeric:tabular-nums}
.cal td.blank{background:transparent;border-color:transparent}
.cal td>.dn,.cal td>a{display:block;height:100%;padding:4px 6px}
.cal td>.dn{color:var(--muted);font-size:.9rem}
.cal td>a{color:var(--ink);text-decoration:none;position:relative}
.cal td:has(>a){border-color:var(--edge)}
.cal td:has(>a) .dn{color:var(--ink)}
.cal td:has(>a):hover{background:var(--mark)}
.cal .dn{font-weight:800}
.cal .cnt{position:absolute;right:6px;top:4px;font-size:.82rem;font-weight:800;color:var(--ink)}
.cal .dots{position:absolute;left:6px;bottom:6px;margin:0;flex-wrap:wrap;max-width:calc(100% - 12px)}
.cal td.past>a,.cal td.past>.dn{opacity:.55}
.cal td.today{background:var(--brand);border-color:#111;box-shadow:3px 3px 0 var(--shadow)}
.cal td.today .dn,.cal td.today .cnt{color:#111}
.month h2{margin-top:44px}
.daygroup h3{scroll-margin-top:16px}

/* Navigation par jour (anime) */
.jumps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0 0 20px}
.jump{display:flex;flex-direction:column;padding:8px 10px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);text-decoration:none}
.jump .d-wd{font-size:.82rem}
.jump .d-num{font-size:1.6rem}
.jump .cnt{font-size:.82rem;font-weight:700}
.jump.today{background:var(--brand);color:#111;border-color:#111;box-shadow:4px 4px 0 var(--shadow)}
.jump:focus-visible{background:var(--mark)}
.day{scroll-margin-top:16px}

/* Couvertures : étagère de l'accueil et lignes de liste */
.cover{background:var(--line) radial-gradient(var(--edge) 1px,transparent 1.5px) 0 0/7px 7px;border:2px solid var(--edge);border-radius:2px;overflow:hidden}
.cover-img{display:block;width:100%;height:100%;object-fit:cover}
.cover-img[hidden]{display:none}
.has-cover{display:grid;grid-template-columns:96px minmax(0,1fr);gap:0 16px;align-items:start}
.has-cover .cover{width:96px;height:144px;box-shadow:3px 3px 0 var(--shadow)}
#suivi-app .has-cover .rel-main{min-width:0}
#suivi-app .rel .rel-title,#suivi-app .rel .meta{padding-right:0}
.shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:26px 18px}
.tile{display:flex;flex-direction:column;gap:10px;min-width:0}
.tile-cover{display:block;text-decoration:none}
.tile .cover{aspect-ratio:2/3;width:100%;box-shadow:5px 5px 0 var(--shadow);border-bottom:6px solid var(--pc,var(--edge))}
.tile-cover:hover .cover{outline:3px solid var(--brand);outline-offset:2px}
.tile-body{display:flex;flex-direction:column;align-items:flex-start;gap:4px;font-size:.95rem;line-height:1.3}
.tile-body strong{font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tile-date{padding:1px 8px;background:var(--panel);color:var(--ink);border:2px solid var(--edge);border-radius:2px;font-size:.85rem;font-weight:800}
.tile .pub{color:var(--pt);font-weight:800;font-size:.85rem}
.tile .follow{position:static;margin-top:4px}

/* Articles */
.articles li{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.articles time{font-variant-numeric:tabular-nums;font-size:.92rem;padding-top:2px}
.articles a{font-weight:800;font-size:1.05rem;color:var(--ink);text-decoration-color:var(--brand);text-decoration-thickness:3px}
.articles a:hover{color:var(--ink)}
.post{max-width:40rem;font-family:var(--serif);font-size:1.12rem;line-height:1.7}
.post h3{font-family:var(--sans)}
.post li{margin:.35em 0}
.post ul{padding-left:1.2em}
code{background:var(--line);padding:1px 5px;font-size:.9em}

/* Pied de page */
.site-footer{background:var(--foot);color:var(--on-foot);border-top:3px solid var(--brand);padding:22px 0 30px;font-size:.9rem}
.site-footer p{margin:6px 0}
.site-footer a{color:var(--brand)}
.site-footer p+p a{margin-right:18px}

/* Écrans étroits */
@media (max-width:860px){
  .strip{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(140px,40vw);overflow-x:auto;scroll-snap-type:x proximity;margin-right:-20px;padding-right:20px;padding-bottom:12px}
  .day-panel{scroll-snap-align:start}
  .two{grid-template-columns:minmax(0,1fr)}
  .jumps{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:minmax(70px,1fr);overflow-x:auto;padding-bottom:6px}
  .shelf{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:132px;overflow-x:auto;scroll-snap-type:x proximity;margin-right:-20px;padding:0 20px 14px 0}
  .tile{scroll-snap-align:start}
}
@media (max-width:520px){
  .wrap{padding:0 16px}
  main.wrap{padding-top:24px}
  .shelf{margin-right:-16px}
  .eps li.ep-row{grid-template-columns:3.8rem minmax(0,1fr)}
  .ep-row .ep{grid-column:2}
  .eps li.ep-row.has-thumb{grid-template-columns:72px 3.9rem minmax(0,1fr);gap:4px 12px;align-items:start}
  .eps li.ep-row.has-thumb .ep{grid-column:3}
  .ep-cover{width:72px;height:108px}
      .articles li{grid-template-columns:minmax(0,1fr);gap:0}
  .cal{border-spacing:2px;margin-left:-2px}
  .cal td{height:54px}
  .cal .dots{display:none}
  .chip{padding:6px 10px}
  .has-cover{grid-template-columns:72px minmax(0,1fr);gap:0 12px}
  .has-cover .cover{width:72px;height:108px}
  .hbar{padding-top:6px;padding-bottom:6px}
  nav a{padding:5px 9px}
}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

/* nouveautés depuis la dernière visite + mise à jour */
.updated{margin:.2rem 0 0;font-size:.85rem}
.since{margin:1rem 0 1.4rem;padding:.9rem 1.1rem;background:var(--brand);color:#111;border:2px solid #111;box-shadow:4px 4px 0 var(--shadow)}
.since ul{margin:.4rem 0;padding-left:1.1rem}
.since a{color:#111;font-weight:700}
.since[hidden]{display:none}

/* vues : par jour / par éditeur / par série */
.views{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 20px}
.view-alt .month{display:none}
.altview .chip-day .now{background:var(--brand);color:#111;padding:0 8px;margin-left:8px;border-radius:2px;font-size:.8rem}
.altview .chip-day[class*=p-]{background:var(--pc);border-color:var(--pc);color:#fff}

/* Page anime : grille d'affiches */
ul.acards{list-style:none;margin:0;padding:0 6px 6px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:26px 18px}
.acard{display:flex;flex-direction:column;gap:10px;min-width:0}
.acard-cover{display:block;text-decoration:none}
.acard-cover:hover{background:none}
.acard .cover{aspect-ratio:2/3;width:100%;box-shadow:5px 5px 0 var(--shadow)}
.acard-cover:hover .cover{outline:3px solid var(--brand);outline-offset:2px}
.acard-body{display:flex;flex-direction:column;align-items:flex-start;gap:4px;font-size:.95rem;line-height:1.3}
.acard-body strong{font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.acard-time{padding:1px 8px;background:var(--ink);color:var(--paper);border-radius:2px;font-size:.85rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
@media (max-width:520px){ul.acards{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}}

/* pages par mois et par série */
.slink{color:inherit;text-decoration:none}
.slink:hover{text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:3px;background:none}
a.chip{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:var(--ink)}
a.chip:hover{background:var(--brand)}
.chiprow{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0}
.legendrow{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 4px;font-size:.92rem;font-weight:700}
.legend{display:inline-flex;align-items:center;gap:6px}
.series-head{display:flex;gap:24px;align-items:flex-start;flex-wrap:wrap}
.series-head>div:not(.cover){flex:1 1 320px;min-width:0}
.series-cover{width:160px;height:240px;flex:none;box-shadow:5px 5px 0 var(--shadow)}
.follow-static{position:static}
.azgroup h2{margin-top:28px}
ul.azlist{list-style:none;margin:0;padding:0;columns:2 260px;column-gap:32px}
.azlist li{break-inside:avoid;padding:5px 0;border-bottom:1px solid var(--line);display:flex;align-items:baseline;gap:8px}
.azlist a{font-weight:700;color:var(--ink)}
.azlist .dot{flex:none;transform:translateY(1px)}
@media (max-width:520px){.series-cover{width:120px;height:180px}}

/* ma collection */
.own{min-height:26px;padding:0 10px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit;font-size:.8rem;font-weight:750;cursor:pointer}
.own[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.rel.is-owned .rel-title{opacity:.55}
.coll{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 14px;max-width:34rem}
.coll[hidden]{display:none}
.coll-l{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.coll input{width:5.2rem;min-height:38px;padding:4px 10px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit}
.coll-msg{color:var(--muted);font-size:.92rem}
.coll-edit .coll-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:8px 0;border-bottom:1px solid var(--line)}
.coll-edit .coll{padding:0;max-width:none}
.coll-row>strong{min-width:12rem}

/* grilles : index des séries et tomes d'une série */
ul.sgrid,ul.vgrid{list-style:none;margin:0;padding:0 6px 6px 0;display:grid;gap:24px 16px}
ul.sgrid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
ul.vgrid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.scard{min-width:0}
.scard-link{display:flex;flex-direction:column;gap:8px;color:var(--ink);text-decoration:none;font-size:.92rem;line-height:1.25}
.scard-link:hover{background:none}
.scard-link strong{font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.scard .cover{aspect-ratio:2/3;width:100%;box-shadow:4px 4px 0 var(--shadow);border-bottom:5px solid var(--pc,var(--edge))}
.scard-link:hover .cover{outline:3px solid var(--brand);outline-offset:2px}
.scard:not(:has(.cover)){border:2px solid var(--edge);border-left:7px solid var(--pc,var(--edge));padding:10px}
.vol{border:0;padding:0;position:static}
.vol.past .tile-body strong{opacity:.7}
.vol .cover{aspect-ratio:2/3;width:100%;box-shadow:4px 4px 0 var(--shadow);border-bottom:5px solid var(--pc,var(--edge))}
.vol .ed{margin:0;font-size:.85rem}
.vol .ed::before{content:""}
.vol .own{margin-top:2px}
.azlist{display:none}

.streams{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.ep-row .streams{margin:0;display:inline-flex}
a.stream{padding:0 7px;border:1.5px solid var(--ink);border-radius:2px;font-size:.78rem;font-weight:700;text-decoration:none;color:var(--ink);background:var(--paper)}
@media (hover:hover){a.stream:hover{background:var(--brand);box-shadow:2px 2px 0 var(--shadow)}}

.jump-today{margin-left:auto;background:var(--brand)}
.chip-day.flash{animation:flash 1.4s ease-out}
@keyframes flash{0%,35%{outline:4px solid var(--brand);outline-offset:3px}100%{outline:4px solid transparent;outline-offset:3px}}
@media (prefers-reduced-motion:reduce){.chip-day.flash{animation:none;outline:4px solid var(--brand);outline-offset:3px}}

a.stream{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:34px;height:26px;padding:0 7px;border:2px solid var(--ink);border-radius:4px;font-size:.78rem;font-weight:800;line-height:1;letter-spacing:.02em}
a.stream svg{flex:none}
/* Couleurs des plateformes (fond + texte lisible) */
a.stream{border-color:var(--ink)}
a.stream.s-crunchyroll{background:#f47521;color:#111}
a.stream.s-adn{background:#0b78d0;color:#fff}
a.stream.s-netflix{background:#e50914;color:#fff}
a.stream.s-prime-video{background:#00a8e1;color:#111}
a.stream.s-disney{background:#113ccf;color:#fff}
a.stream.s-wakanim{background:#e5194f;color:#fff}
@media (hover:hover){a.stream[class*="s-"]:hover{filter:brightness(1.1);box-shadow:2px 2px 0 var(--shadow);transform:translate(-1px,-1px)}}

.dot.sp-crunchyroll{background:#f47521}.dot.sp-adn{background:#0b78d0}.dot.sp-netflix{background:#e50914}.dot.sp-prime-video{background:#00a8e1}.dot.sp-disney{background:#113ccf}.dot.sp-wakanim{background:#e5194f}.dot.sp-aucune{background:#9aa0aa}

/* Recherche globale */
.tools{display:flex;gap:8px;margin-left:auto}
.srch-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:2px solid #111;border-radius:4px;background:#fbfaf6;color:#111;cursor:pointer}
@media (hover:hover){.srch-btn:hover,.theme-btn:hover{background:#111;color:var(--brand);transform:translate(-2px,-2px);box-shadow:3px 3px 0 #111}}
.srch-btn:active{transform:translate(1px,1px);box-shadow:none}
.srch-box{position:fixed;inset:0;z-index:50;display:flex;justify-content:center;align-items:flex-start;padding:8vh 16px 16px;background:rgba(17,17,17,.55)}
.srch-box[hidden]{display:none}
body.srch-open{overflow:hidden}
.srch-panel{width:min(640px,100%);max-height:80vh;display:flex;flex-direction:column;background:var(--panel);color:var(--ink);border:3px solid var(--edge);box-shadow:8px 8px 0 var(--ink)}
.srch-input{font:inherit;font-size:1.1rem;padding:14px 16px;border:0;border-bottom:3px solid var(--edge);background:transparent;color:inherit;outline:none}
.srch-list{list-style:none;margin:0;padding:6px;overflow:auto}
.srch-group{padding:10px 10px 4px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.srch-row a{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:9px 10px;color:inherit;text-decoration:none;border-radius:3px}
.srch-row a.on,.srch-row a:hover{background:var(--brand);color:#111}
.srch-sub{font-size:.85rem;opacity:.75;white-space:nowrap}
.srch-empty{padding:16px 12px;color:var(--muted)}
.srch-hint{margin:0;padding:8px 14px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}
.srch-panel input.srch-input{flex:none;max-width:none;width:100%;min-height:0;border:0;border-bottom:3px solid var(--edge);border-radius:0;-webkit-appearance:none;appearance:none;outline:none}
.srch-panel input.srch-input:focus-visible{outline:none;background:var(--paper)}

.theme-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:2px solid #111;border-radius:4px;background:#fbfaf6;color:#111;cursor:pointer}
.theme-btn:active{transform:translate(1px,1px);box-shadow:none}
.theme-btn .moon{display:none}
:root[data-theme="dark"] .theme-btn .sun{display:none}:root[data-theme="dark"] .theme-btn .moon{display:inline}
.suggest{margin:6px 0 18px}.suggest h2{margin-top:0}

.site-header .hbar{row-gap:2px}
.site-header nav{order:3;flex-basis:100%}

a.bridge{display:inline-block;margin:4px 0 0 .5rem;font-size:.82rem;font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:3px;text-underline-offset:2px}
.acard-body a.bridge{margin:4px 0 0}
.bridge-box{margin:0 0 14px;padding:10px 14px;font-size:.95rem;line-height:1.9}
.bridge-box .streams{display:inline-flex;margin:0 0 0 .5rem;vertical-align:middle}

.adapt{margin:6px 0 0;font-size:.9rem;line-height:1.9}
.adapt .streams{display:inline-flex;margin:0 0 0 .5rem;vertical-align:middle}
.bridge-box .adapt{margin:0}.bridge-box .adapt + .adapt{margin-top:4px}
a.stream-more{font-size:.82rem;font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:3px;text-underline-offset:2px}

.nl-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:10px 0 18px}
.nl-form input[type=email]{flex:1 1 240px;max-width:340px;min-height:42px;padding:8px 12px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit}
.chip-go{background:var(--brand);color:#111;font-weight:800}
.nl-legal{flex-basis:100%;margin:0;font-size:.85rem}
.nl-legal input{margin-right:6px}
.nl-home{padding:16px 18px;margin:28px 0}.nl-home h2{margin-top:0}.nl-home p{margin:.3em 0}
.nl-preview{padding:6px 20px 16px;max-width:660px}
.nl-admin{margin:22px 0}.nl-admin textarea{width:100%;font:12px/1.4 ui-monospace,Menlo,Consolas,monospace;background:var(--panel);color:var(--ink);border:2px solid var(--edge);padding:8px}

/* Rétention : Pour toi, animes suivis, collection, partage, installation */
.pour-toi{margin:0 0 22px}.pour-toi h2{margin:0 0 8px}
.pour-toi .list{margin:0}.pour-toi .more{margin:10px 0 0}
.p-anime{--pc:var(--ink);--pt:var(--ink)}
.chip.afollow{margin-left:.5rem;min-height:26px;padding:0 10px;font-size:.82rem}
.acard-body .afollow{margin:6px 0 0}
.share-in{padding:12px 16px;margin:0 0 18px;border-left:8px solid var(--brand)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0 0 14px}
.stat{display:flex;flex-direction:column;padding:10px 14px;border:2px solid var(--edge);background:var(--panel);box-shadow:4px 4px 0 var(--shadow)}
.stat b{font-family:var(--display);font-size:1.7rem;line-height:1.15;font-weight:400}.stat span{font-size:.9rem;color:var(--muted)}
ul.prog{list-style:none;margin:0 0 6px;padding:0}
ul.prog li{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,200px) 4.5rem;gap:12px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line)}
ul.prog a{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pbar{display:block;height:12px;border:2px solid var(--edge);background:var(--panel)}
.pbar i{display:block;height:100%;background:var(--brand)}
.install{position:fixed;left:12px;right:12px;bottom:12px;z-index:40;display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;max-width:560px;margin:0 auto;padding:12px 14px;background:var(--panel);color:var(--ink);border:3px solid var(--edge);box-shadow:6px 6px 0 var(--ink)}
.install p{flex:1 1 220px;margin:0;font-size:.95rem}
@media (max-width:520px){ul.prog li{grid-template-columns:minmax(0,1fr) 4.5rem}ul.prog .pbar{grid-column:1/-1;order:3}}

.rel-cover{display:block;width:fit-content;height:fit-content;background:none!important}
.rel-cover:hover{background:none}
.rel-cover:hover .cover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--shadow)}

.rep label{display:block;font-weight:750;margin:16px 0 6px}
.rep input[type=text],.rep textarea{width:100%;max-width:640px;font:inherit;color:var(--ink);background:var(--panel);border:2px solid var(--edge);border-radius:2px;padding:10px 12px}
.rep-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.rep-btns .btn{display:inline-block;padding:9px 14px;font:inherit;font-weight:750;color:var(--ink);background:var(--panel);border:2px solid var(--edge);border-radius:2px;box-shadow:3px 3px 0 var(--shadow);text-decoration:none;cursor:pointer}
.rep-btns .btn:active{transform:translate(1px,1px);box-shadow:none}

.vus-ranges{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 6px}
.vus-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0 4px}
.vus-form input[type=number]{width:5.5rem}
.vus-form input[type=text]{flex:1 1 240px;max-width:420px}
.vus-form input{font:inherit;color:var(--ink);background:var(--panel);border:2px solid var(--edge);border-radius:2px;padding:6px 10px}
.vus-err{color:var(--ink);font-weight:700;flex-basis:100%}
.vus-err:empty{display:none}
.vus-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.vus-list>li{padding:14px 16px}

.watch{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}
a.stream.stream-lg{height:44px;min-width:0;padding:0 18px;font-size:1rem;gap:8px}
.ep-cover-link{display:block;width:fit-content;background:none!important;text-decoration:none}
.ep-cover-link:hover .ep-cover{outline:3px solid var(--brand);outline-offset:2px}
.acard-body strong a{color:inherit;text-decoration:none;background:none}
.acard-body strong a:hover{text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:3px}
.series-head .afollow{margin-right:10px}

@media (max-width:520px){nav a{padding:5px 8px;font-size:.92rem}}

/* Boutons d'achat : même style que les plateformes de streaming, couleurs de marque approximatives */
.shops{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}
.shops-l{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-right:2px}
.shops-lg{margin:12px 0}
a.stream.shop{gap:5px;padding:0 9px}
a.stream.s-goodies{background:var(--panel);color:var(--ink);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);max-width:100%;white-space:normal;height:auto;min-height:44px;padding-top:6px;padding-bottom:6px;text-align:left}
a.stream.s-amazon{background:#ff9900;color:#111}
a.stream.s-cultura{background:#0d5aa7;color:#fff}
a.stream.s-bdfugue{background:#2b2b2b;color:#fff}
.tile-body strong a{color:inherit;text-decoration:none;background:none}
.tile-body strong a:hover{text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:3px}
.tile-body .shops{margin-top:6px}
.affil-note{font-size:.88rem;margin-top:18px}

/* Tuiles de l'accueil : une rangée = des lignes communes (sous-grille), tout est aligné d'une tuile à l'autre */
.shelf .tile-aligned{display:grid;grid-template-rows:subgrid;grid-row:span 6;row-gap:6px;align-items:start;justify-items:start}
.tile-aligned .tile-body{display:contents}
.tile-aligned .t-cover{grid-row:1;width:100%}
.tile-aligned .t-title{grid-row:2;display:flex;flex-direction:column;gap:2px;min-width:0;width:100%;font-size:.95rem;line-height:1.3}
.tile-aligned .t-date{grid-row:3}
.tile-aligned .t-pub{grid-row:4}
.tile-aligned .t-follow{grid-row:5;min-height:42px}
.tile-aligned .t-shops{grid-row:6;width:100%}
.tile-aligned .t-title strong{font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tile-aligned .t-title .tome{color:var(--muted);font-size:.9rem}
@media (max-width:860px){.shelf{grid-template-rows:repeat(6,auto)}}
/* Boutons d'achat compacts (une seule ligne) */
.shops-sm{flex-wrap:nowrap;gap:3px;margin-top:0;width:100%}
a.stream.shop-sm,.shops-sm a.stream{flex:1 1 0;min-width:0;padding:0 2px;height:24px;font-size:.68rem;letter-spacing:0;gap:0}
.tile-body .shops-sm{margin-top:6px}
.tile-aligned .t-shops .shops-sm{margin-top:0}

/* « Nouvelle série » en surimpression sur la jaquette */
.tile-cover{position:relative}
.cover-flag{position:absolute;left:6px;top:6px;z-index:2;padding:2px 8px;background:var(--brand);color:#111;border:2px solid #111;border-radius:2px;font-size:.74rem;font-weight:800;line-height:1.3;box-shadow:2px 2px 0 #111;pointer-events:none}

/* Page anime : lignes comme la page manga */
.anime-row{--pc:var(--ink)}
.rel .afollow{position:absolute;z-index:1;right:10px;top:10px;margin:0;min-height:32px;padding:2px 12px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit;font-size:.85rem;font-weight:750;cursor:pointer}
.rel .afollow[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.anime-row .rel-title strong a{color:inherit;text-decoration:none;background:none}
.anime-row .rel-title strong a:hover{text-decoration:underline;text-decoration-color:var(--brand);text-decoration-thickness:3px}
.anime-row .meta time{padding:1px 8px;background:var(--ink);color:var(--paper);border-radius:2px;font-weight:800}
.anime-row .meta .bridge{margin:0}
.anime-row .shops{margin-top:8px}

/* Résumé du tome sur la page série */
.synopsis{max-width:62ch;margin:18px 0 6px;padding:14px 18px;border:2px solid var(--edge);border-left:8px solid var(--brand);background:var(--panel);box-shadow:4px 4px 0 var(--shadow)}
.synopsis h2{margin:0 0 6px;font-size:1rem}
.synopsis p{margin:0;line-height:1.55}
.synopsis .syn-src{margin-top:8px;font-size:.82rem}

/* Images dans les articles : vignette à gauche, texte à droite */
.post img.art-img{display:block;width:90px;height:auto;aspect-ratio:2/3;object-fit:cover;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--shadow);background:var(--panel)}
.post ul>li.art-item{display:grid;grid-template-columns:90px minmax(0,1fr);gap:0 16px;align-items:start;list-style:none;margin:0 0 18px}
.post ul:has(>li.art-item){padding-left:0}
.post li.art-item>a{display:block;width:fit-content;background:none}
.post li.art-item>a:hover img{outline:3px solid var(--brand);outline-offset:2px}
@media (max-width:520px){.post ul>li.art-item{grid-template-columns:64px minmax(0,1fr);gap:0 12px}.post img.art-img{width:64px}}

/* État des données */
.notice{padding:10px 14px;border:2px solid var(--ink);border-radius:2px;background:var(--panel);margin:10px 0 16px}
.notice.warn{background:#fff3c4;color:#111;box-shadow:3px 3px 0 var(--ink)}
.tbl-wrap{overflow-x:auto;margin:8px 0 20px}
.status-table{width:100%;border-collapse:collapse;border:2px solid var(--ink);background:var(--panel)}
.status-table th,.status-table td{padding:8px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.status-table thead th{background:var(--ink);color:var(--paper);font-size:.85rem}
.status-table small{display:block;color:var(--muted);font-weight:400;font-size:.8rem}
.badge{display:inline-block;padding:1px 9px;border:2px solid var(--ink);border-radius:20px;font-size:.78rem;font-weight:800}
.b-ok{background:#c7f2d4;color:#111}.b-warn{background:#ffe08a;color:#111}.b-bad{background:#ffb3a6;color:#111}
.checks{padding-left:1.1em}.checks>li{margin:8px 0}.checks ul{margin:4px 0 0}

/* Types d'articles */
.kind{display:inline-block;padding:0 8px;border:2px solid var(--ink);border-radius:20px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;margin-right:6px;vertical-align:middle;color:#111}
.k-quotidien{background:#cfe8ff}.k-hebdo{background:#ffe08a}.k-mensuel{background:#d9c7ff}.k-changements{background:#ffb3a6}.k-dossier{background:#ffd2ec}.k-redac{background:#c7f2d4}
.kind-nav{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 20px}
.kind-nav a{padding:6px 12px;border:2px solid var(--ink);background:var(--panel);color:var(--ink);font-weight:800;text-decoration:none;border-radius:2px}
.kind-nav a:hover{box-shadow:3px 3px 0 var(--ink)}
.art-sec{margin:0 0 28px}.art-sec h2{margin-bottom:2px}
details.older{margin-top:8px}details.older summary{cursor:pointer;font-weight:800}

.home-search{display:flex;gap:8px;margin:12px 0;max-width:560px}
.home-search input{flex:1;min-width:0;padding:10px 12px;border:2px solid var(--ink);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit}

.home-search .btn{min-height:44px;padding:2px 16px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit;font-weight:750;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease}
@media (hover:hover){.home-search .btn:hover{background:var(--brand);color:#111;border-color:#111;transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--ink)}}
.home-search .btn:active{transform:translate(1px,1px);box-shadow:none}
.srch-prev{display:flex;gap:12px;align-items:center;padding:10px 14px;border-top:1px solid var(--line);background:var(--paper)}
.srch-prev[hidden]{display:none}
.srch-prev img{width:48px;height:72px;object-fit:cover;border:2px solid var(--edge);flex:none}
.srch-prev div{display:flex;flex-direction:column;gap:2px;min-width:0}
.srch-prev span{font-size:.85rem;color:var(--muted)}
.srch-prev .srch-x{color:var(--ink)}
.res-row{display:flex;gap:12px;align-items:flex-start}
.res-row img{width:48px;height:72px;object-fit:cover;border:2px solid var(--edge);flex:none}
.res-row .notes{margin:2px 0 0}

.coll-row select{font:inherit;padding:4px 8px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink)}
.coll-row>a{min-width:12rem;font-weight:700}

.facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin:8px 0 2px;padding:0}
.facts div{display:flex;flex-direction:column}
.facts dt{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.facts dd{margin:0;font-weight:700}
.facts-src{margin:2px 0 10px;font-size:.8rem}
.fsep{align-self:center;margin-left:6px}

.partage-canvas{display:block;width:min(100%,420px);height:auto;border:3px solid var(--edge);box-shadow:6px 6px 0 var(--shadow);margin:14px 0}
.p-lab{display:flex;flex-direction:column;gap:2px;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.p-lab select{font:inherit;font-size:1rem;font-weight:700;text-transform:none;letter-spacing:0;padding:6px 8px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink)}
#partage-app textarea{width:100%;max-width:640px;font:inherit;padding:8px;border:2px solid var(--edge);background:var(--panel);color:var(--ink)}

/* Audit : stabilité de la mise en page et cibles tactiles */
.tools{min-width:84px;min-height:38px;justify-content:flex-end}
.filters[hidden],.views[hidden]{display:flex;visibility:hidden}
.meta a{display:inline-block;padding:2px 0;min-height:24px;line-height:20px}

.related{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:.4rem}
.related li{padding:.35rem 0;border-bottom:1px solid var(--line,#ddd)}

/* Carrousel « Si tu aimes » : défilement horizontal, glisser au doigt ou à la molette */
.carousel{overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;margin:0 0 1.2rem;padding-bottom:8px}
.carousel:focus-visible{outline:3px solid var(--brand);outline-offset:2px}
ul.sgrid.carousel-track{display:flex;gap:16px;width:max-content;padding:0 6px 6px 0}
.carousel-track .scard{flex:0 0 130px;scroll-snap-align:start}
@media(min-width:700px){.carousel-track .scard{flex-basis:150px}}

/* Statut par tome */
.tst{min-height:26px;max-width:9.5rem;padding:0 4px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit;font-size:.8rem;font-weight:750;cursor:pointer}
.tst[hidden]{display:none}
.rel.tm-p{box-shadow:inset 4px 0 0 var(--brand)}
.rel.tm-l .rel-title strong{opacity:.65}
.vol .tst{margin-top:2px}

/* Dates estimées / confirmées et historique */
.s-estime{border:1.5px dashed var(--edge);color:var(--ink)}
details.history{margin:1.2rem 0}
details.history summary{cursor:pointer;font-weight:800}
ul.hist{list-style:none;margin:.6rem 0;padding:0;display:grid;gap:.45rem}
ul.hist li{padding:.35rem 0;border-bottom:1px solid var(--line)}

/* Actions « Je l'ai » + statut : colonne alignée à gauche du bouton Suivre */
.rel-acts{display:flex;gap:8px;align-items:center;margin-top:8px}
.rel-acts .own{min-width:76px;min-height:32px}
.rel-acts .tst{width:122px;min-height:32px}
@media(min-width:760px){
  .rel-acts{position:absolute;z-index:1;top:10px;right:92px;margin:0}
  .rel-main>.rel-title,.rel>.rel-main .rel-title{padding-right:0}
  .rel:has(.rel-acts) .rel-title{padding-right:300px}
}

/* Accueil : tuiles de jours cliquables, blocs « du jour » en carrousel */
.d-link{color:inherit;text-decoration:none;display:flex;flex-direction:column}
.d-link::after{content:"";position:absolute;inset:0;z-index:0} /* toute la tuile devient cliquable */
.day-panel{position:relative}
a.d-line{position:relative;z-index:1}
.day-panel:hover{box-shadow:4px 4px 0 var(--shadow)}
.d-link:focus-visible::after{outline:3px solid var(--brand);outline-offset:-3px}
.two.stack{display:block}
.two.stack>div+div{margin-top:1.5rem}
ul.hscroll{list-style:none;margin:0;padding:0 6px 12px 0;display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
ul.hscroll:focus-visible{outline:3px solid var(--brand);outline-offset:2px}
ul.hscroll>li{flex:0 0 140px;scroll-snap-align:start;min-width:0}
@media(min-width:760px){ul.hscroll>li{flex-basis:155px}}
ul.hscroll .tile-cover{display:block}
ul.hscroll .cover{aspect-ratio:2/3;width:100%;box-shadow:4px 4px 0 var(--shadow)}
ul.hscroll .tile-body{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-size:.9rem}
ul.hscroll .t-title strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
ul.hscroll .t-shops{margin-top:2px}
ul.hscroll .tile-body>*{align-self:flex-start;margin-left:0;margin-right:0}
ul.hscroll .tile-body .follow,ul.hscroll .tile-body .afollow{margin-top:4px}

/* Accueil : raccourcis et sélections */
.chiprow{display:flex;flex-wrap:wrap;gap:8px}
@media(max-width:900px){
  .hbar nav{flex:1 0 100%;order:3;display:flex;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px 2px}
  .hbar nav::-webkit-scrollbar{display:none}
  .hbar nav a{flex:0 0 auto}
}

/* Ma collection */
.cstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:10px;margin:1rem 0}
.cstat{background:var(--panel);color:var(--ink);border:2px solid var(--edge);border-radius:2px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.cstat dt{font-size:.85rem;font-weight:700;color:var(--muted)}.cstat dd{margin:0;font-family:var(--display);font-size:1.9rem;line-height:1.1;color:var(--ink)}
.cstat .muted{font-size:.82rem}
.ctools{display:flex;flex-wrap:wrap;gap:8px;margin:.5rem 0}.ctools input{flex:1 1 14rem;min-width:0}
.ctools select{min-height:42px;padding:6px 10px;border:2px solid var(--edge);border-radius:2px;background:var(--panel);color:var(--ink);font:inherit}
.clist{list-style:none;margin:1rem 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:12px}
.cseries{display:flex;gap:12px;border:2px solid var(--edge);border-radius:2px;padding:12px;background:var(--panel);color:var(--ink)}
.cseries .rel-cover{flex:0 0 60px}.cs-main{min-width:0;flex:1}.cs-main h3{margin:0 0 2px;font-size:1.05rem}.cs-main p{margin:4px 0}
.cs-main .muted{color:var(--muted)}
.cbar{height:10px;border:2px solid var(--edge);background:var(--paper);overflow:hidden;margin:8px 0}.cbar i{display:block;height:100%;background:var(--brand)}
.cvols{list-style:none;margin:6px 0 0;padding:0}.cvol{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:6px 0;border-top:1px solid var(--line)}
.cdet summary,.transfer summary{cursor:pointer;font-weight:700;color:var(--ink)}.transfer{margin:1.5rem 0}
.empty-coll{padding:16px}

/* Filtres regroupés sous un sélecteur */
.fdet{position:relative}
.fdet>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;border:2px solid var(--edge);background:var(--panel);color:var(--ink);padding:9px 14px;border-radius:8px;font-weight:700}
.fdet>summary::-webkit-details-marker{display:none}
.fdet>summary::after{content:"▾"}
.fdet[open]>summary::after{content:"▴"}
.fpanel{position:absolute;z-index:20;top:calc(100% + 6px);left:0;width:min(34rem,calc(100vw - 32px));background:var(--panel);border:2px solid var(--edge);border-radius:10px;padding:12px;box-shadow:4px 4px 0 var(--shadow);max-height:70vh;overflow:auto}
.fgrp{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}.fgrp:last-child{margin:0}.fgrp .fsep{flex:0 0 100%;margin:0 0 2px;font-weight:700}

/* Boutons des articles (liens « Calendrier manga · Page de la série ») */
.art-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;font-family:var(--sans)}
.post .art-acts a.chip{min-height:34px;padding:4px 12px;font-size:.88rem;font-weight:800;background:var(--panel);box-shadow:3px 3px 0 var(--shadow);text-decoration:none}
.post .art-acts a.chip:hover{background:var(--brand);color:#111}
.post .art-acts a.chip:first-child::before{content:"▸";margin-right:2px}
/* Filtres : le panneau reste dans l'écran sur mobile */
.filters{position:relative}
@media (max-width:700px){.fdet{position:static}.fpanel{left:0;right:0;width:auto;max-width:100%}}
/* Mobile : « Suivre » est en haut à droite, la ligne « Je l'ai » + statut lui laisse la place */
@media(max-width:759px){
  .rel:has(.rel-acts) .rel-acts{padding-right:96px;flex-wrap:nowrap}
  .rel-acts .own{min-width:0;padding:0 8px;flex:0 0 auto}
  .rel-acts .tst{width:auto;flex:1 1 0;min-width:0}
}

/* Carrousels de l'accueil : tuiles de même hauteur, titre sur deux lignes réservées, boutons de streaming alignés en bas */
ul.hscroll>li{display:flex;flex-direction:column}
ul.hscroll>li>.tile-body{flex:1 1 auto}
ul.hscroll .t-title{min-height:calc(3 * 1.3em)}
ul.hscroll .t-title .tome{display:block;color:var(--muted);font-size:.9rem}
ul.hscroll .t-shops{margin-top:auto;width:100%;align-self:stretch}
ul.hscroll .tile-body>.t-shops{padding-top:4px}

/* Longues listes (calendrier, mois, séries) : le navigateur ne dessine que ce qui est proche de l'écran */
.list>.rel,.daygroup,.scard{content-visibility:auto;contain-intrinsic-size:auto 160px}

/* Catalogue : liste des tomes d'une série */
.cat-vols{list-style:none;margin:0 0 1.2rem;padding:0}
.cat-vols li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:10px 14px;border-bottom:1px solid var(--line)}
.cat-vols .cv-t{font-weight:800;min-width:5.5em}
.cat-vols .cv-m{flex:1 1 12em}

/* Couverture absente : le titre prend la place, l'image le recouvre quand elle existe */
.cover:has(>.ph){position:relative}
.cover>.ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:8px;text-align:center;font-weight:800;font-size:.85rem;line-height:1.2;color:var(--ink);background:var(--paper,var(--line));overflow:hidden;overflow-wrap:anywhere}
.cover>.ph+.cover-img{position:relative}
.cat-car{align-items:flex-start}.vcard{display:flex;flex-direction:column;gap:5px;font-size:.88rem;line-height:1.25}.vcard .cover{aspect-ratio:2/3;width:100%}.vcard .muted{font-size:.74rem;overflow-wrap:anywhere}.vcard .shops-sm a.stream{height:20px;font-size:.62rem}.vcard .cv-ed summary{font-size:.78rem}.vcard .cv-e{display:flex;flex-direction:column;gap:3px;padding:6px 0;border-top:1px solid var(--line)}.cat-vols .cv-ed{flex:1 1 100%}
.cat-vols .cv-ed summary{cursor:pointer;font-weight:700;font-size:.9rem}
.cat-vols .cv-ed ul{list-style:none;margin:6px 0 0;padding:0}
.cat-vols .cv-ed li{border-bottom:0;padding:6px 0 6px 12px;border-left:3px solid var(--line)}
.monthjump{margin:0 0 12px}.sel{appearance:none;-webkit-appearance:none;min-height:42px;padding:6px 38px 6px 14px;border:2px solid var(--edge);border-radius:2px;background:var(--panel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23888' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center;color:var(--ink);font:inherit;font-weight:700;cursor:pointer;color-scheme:light dark}
:root[data-theme="dark"] .sel{color-scheme:dark}:root[data-theme="light"] .sel{color-scheme:light}
.sel:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.sel option{background:var(--panel);color:var(--ink);font-weight:500}
.monthjump label{color:var(--muted);margin-right:6px}
.vnc{border:2px solid var(--edge);padding:10px}.vnc>strong{font-size:1.05rem}
