/**
 * vikz : vocabulaire de classes wrap de la fiche, tags groupés, impression.
 * Repris de design/system/vikz.css. Le plugin wrap préfixe chaque classe : <WRAP vikz-x> donne .wrap_vikz-x
 */
/* sous-titre technique : désignation complète */
.wrap_vikz-subtitle{max-width:var(--measure);margin:0 0 var(--s4)}
.wrap_vikz-subtitle p{margin:0;font:400 var(--fs-base)/1.45 var(--f-mono);color:var(--ink-2);letter-spacing:-0.01em;hyphens:none}

/* badges */
.wrap_vikz-badges{margin:0 0 var(--s5)}
.wrap_vikz-badges>p{display:flex;flex-wrap:wrap;gap:var(--s2);margin:0}
.wrap_vikz-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px 3px;border:1px solid var(--rule);font:700 var(--fs-xs)/1 var(--f-display);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--ink-2);white-space:nowrap}
.wrap_vikz-badge a{color:inherit;text-decoration:none}
.wrap_vikz-badge:has(a):hover{border-color:currentColor}
.wrap_vikz-badge:is(.wrap_vikz-militaire,.wrap_vikz-industriel,.wrap_vikz-civil)::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.wrap_vikz-militaire{--use:var(--use-militaire)}
.wrap_vikz-industriel{--use:var(--use-industriel)}
.wrap_vikz-civil{--use:var(--use-civil)}
.wrap_vikz-badge.wrap_vikz-militaire,.wrap_vikz-badge.wrap_vikz-industriel,.wrap_vikz-badge.wrap_vikz-civil{color:var(--use);border-color:var(--use)}
.wrap_vikz-badge.wrap_vikz-status-todo{color:var(--status-todo);border:1px dotted var(--status-todo)}
.wrap_vikz-badge.wrap_vikz-status-encours{color:var(--status-encours);border:1px dashed var(--status-encours)}
.wrap_vikz-badge.wrap_vikz-status-complet{color:var(--status-complet);border-color:var(--status-complet)}
.wrap_vikz-badge.wrap_vikz-status-complet::before{content:"✓"}

/* bandeau fiche incomplète */
div.wrap_vikz-status-todo{max-width:var(--measure);margin:0 0 var(--s5);padding:var(--s2) 0;border-top:1px dotted var(--status-todo);border-bottom:1px dotted var(--status-todo);color:var(--ink-2);font:var(--fs-s)/1.4 var(--f-display)}
div.wrap_vikz-status-todo p{margin:0}
div.wrap_vikz-status-todo p::before{content:"Fiche à compléter";font-weight:700;text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--status-todo);margin-right:var(--s3)}

/* infobox */
.wrap_vikz-infobox{float:right;clear:right;width:var(--rail);margin:0 0 var(--s6) var(--s7);background:var(--paper-2);border-top:3px solid var(--ink);padding:0 var(--s4) var(--s3);font-size:var(--fs-m)}
.wrap_vikz-infobox>p{margin:0 calc(-1*var(--s4)) var(--s3)}
.wrap_vikz-infobox>p:has(.media){margin-bottom:var(--s3)}
.wrap_vikz-infobox a.media,.wrap_vikz-infobox figure{display:block;margin:0}
.wrap_vikz-infobox img,.wrap_vikz-infobox .ph{display:block;width:100%;height:auto}
.wrap_vikz-infobox figcaption{padding:var(--s2) var(--s4) 0;font:var(--fs-s)/1.35 var(--f-display);color:var(--ink-2)}
.wrap_vikz-infobox div.table{margin:0}
.wrap_vikz-infobox table{width:100%;border-collapse:collapse;margin:0}
.wrap_vikz-infobox tr+tr{border-top:1px solid var(--rule)}
.wrap_vikz-infobox th{width:42%;padding:9px var(--s3) 8px 0;text-align:left;vertical-align:baseline;font:700 var(--fs-xs)/1.3 var(--f-display);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--ink-3)}
.wrap_vikz-infobox td{padding:7px 0;vertical-align:baseline;line-height:1.4;font-variant-numeric:tabular-nums}
.wrap_vikz-infobox h3{margin:var(--s4) 0 0;font:700 var(--fs-xs)/1 var(--f-display);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--ink)}
/* sans photo : même colonne, le tableau commence directement */
.wrap_vikz-infobox:not(:has(img,.ph)){padding-top:var(--s1)}

/* parenté */
.wrap_vikz-lineage{margin-top:var(--s2);border-top:2px solid var(--ink)}
.wrap_vikz-lineage table{width:100%;border-collapse:collapse}
.wrap_vikz-lineage th{font:700 var(--fs-xs)/1.3 var(--f-display);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--ink-3);text-align:left;padding:9px var(--s3) 8px 0;width:42%;vertical-align:baseline;white-space:nowrap}
.wrap_vikz-lineage td{padding:7px 0;font:700 var(--fs-m)/1.4 var(--f-display);vertical-align:baseline}
.wrap_vikz-lineage td a{text-decoration-color:var(--rule)}
.wrap_vikz-lineage tr+tr{border-top:1px solid var(--rule)}
.wrap_vikz-lineage .arrow{font-family:var(--f-mono);color:var(--accent);margin-right:4px}

/* données techniques */
.wrap_vikz-specs{clear:both;columns:2 21rem;column-gap:var(--s7);margin:var(--s4) 0 var(--s5)}
.wrap_vikz-specs div.table{break-inside:avoid;margin:0 0 var(--s5);overflow-x:auto}
.wrap_vikz-specs table{width:100%;border-collapse:collapse;font:var(--fs-m)/1.35 var(--f-display)}
.wrap_vikz-specs tr.row0 th{padding:0 0 6px;text-align:left;border-bottom:2px solid var(--ink);font:700 var(--fs-s)/1.2 var(--f-display);text-transform:uppercase;letter-spacing:var(--track-caps);cursor:pointer;user-select:none}
.wrap_vikz-specs tr.row0 th::after{content:"−";float:right;font-family:var(--f-mono);color:var(--ink-3)}
.wrap_vikz-specs .is-collapsed tr.row0 th::after{content:"+ " attr(data-rows)}
.wrap_vikz-specs .is-collapsed tr:not(.row0){display:none}
.wrap_vikz-specs td{padding:6px 0 5px;border-bottom:1px solid var(--rule);vertical-align:baseline;line-height:1.35}
.wrap_vikz-specs td.col0{padding-right:var(--s3);color:var(--ink-2)}
.wrap_vikz-specs td.col1{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700;padding-right:6px}
.wrap_vikz-specs td.col2{width:1%;white-space:nowrap;font-size:var(--fs-s);color:var(--ink-3)}
.wrap_vikz-specs td small,.wrap_vikz-specs td .wrap_note{display:block;font:var(--fs-xs)/1.3 var(--f-display);color:var(--ink-3);font-weight:400}
.wrap_vikz-specs td.col1:only-of-type,.wrap_vikz-specs td[colspan]{text-align:left;white-space:normal;font-weight:400}

/* galerie */
.wrap_vikz-gallery{clear:both;margin:var(--s4) 0 var(--s5)}
.wrap_vikz-gallery>p{display:grid;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:var(--s5) var(--s4);max-width:none;margin:0}
.wrap_vikz-gallery>p:has(>:nth-child(10)){grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:var(--s3)}
.wrap_vikz-gallery>p:has(>:only-child){grid-template-columns:minmax(0,34rem)}
.wrap_vikz-gallery figure{margin:0;min-width:0}
.wrap_vikz-gallery a.media{display:block}
.wrap_vikz-gallery img,.wrap_vikz-gallery .ph{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.wrap_vikz-gallery a.media:hover :is(img,.ph){outline:2px solid var(--accent);outline-offset:2px}
.wrap_vikz-gallery figcaption{margin-top:6px;font:var(--fs-s)/1.35 var(--f-display);color:var(--ink-2)}
.wrap_vikz-gallery>p:has(>:nth-child(10)) figcaption{display:none}

/* sources */
.wrap_vikz-sources{font-size:var(--fs-s);line-height:1.5;color:var(--ink-2)}
.wrap_vikz-sources ol{list-style:none;counter-reset:src;padding:0;max-width:var(--measure)}
.wrap_vikz-sources li{counter-increment:src;display:grid;grid-template-columns:2.25em 1fr;margin:0 0 var(--s2)}
.wrap_vikz-sources li::before{content:"[" counter(src) "]";font:var(--fs-xs)/1.9 var(--f-mono);color:var(--ink-3)}
.wrap_vikz-sources li .li{margin:0}
.wrap_vikz-sources em{color:var(--ink)}

/* tableaux génériques DokuWiki */
.page div.table{overflow-x:auto;margin:0 0 var(--s5)}
:where(.page table.inline){border-collapse:collapse;font-size:var(--fs-m);min-width:min(100%,var(--measure))}
:where(.page table.inline) th{text-align:left;padding:6px var(--s4) 6px 0;border-bottom:2px solid var(--ink);font:700 var(--fs-s)/1.2 var(--f-display);text-transform:uppercase;letter-spacing:var(--track-caps)}
:where(.page table.inline) td{padding:6px var(--s4) 6px 0;border-bottom:1px solid var(--rule);vertical-align:baseline;font-variant-numeric:tabular-nums}
:where(.wrap_vikz-infobox,.wrap_vikz-lineage) table.inline{min-width:0}
:where(.wrap_vikz-infobox,.wrap_vikz-lineage) :is(th,td){border-bottom:0}

/* tags regroupés par préfixe (sortie du plugin tag, regroupée par script.js) */
.vikz-tags{clear:both;margin-top:var(--s7);padding-top:var(--s3);border-top:2px solid var(--ink)}
.vikz-tags h2.vikz-tags-title{margin:0 0 var(--s4);padding:0;border:0;font:700 var(--fs-s)/1 var(--f-display);text-transform:uppercase;letter-spacing:var(--track-caps)}
.vikz-tags dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:var(--s3) var(--s5);margin:0;max-width:none}
.vikz-tags dl>div{display:grid;grid-template-columns:7.5rem 1fr;gap:var(--s2);align-items:baseline;padding-bottom:var(--s2);border-bottom:1px solid var(--rule)}
.vikz-tags dt{font:700 var(--fs-xs)/1.3 var(--f-display);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--ink-3)}
.vikz-tags dd{margin:0;font:var(--fs-m)/1.4 var(--f-display)}
.vikz-tags dd a{text-decoration-color:var(--rule)}
.vikz-tags dd a+a::before{content:", ";color:var(--ink-3);text-decoration:none;display:inline-block;white-space:pre}

/* dataentry : masqué dans la fiche (sert la frise) */
.dataplugin_entry{display:none}

/* colonne trop étroite pour texte + infobox : l'infobox passe au-dessus du texte */
@container content (max-width:52rem){
.wrap_vikz-infobox{float:none;width:auto;max-width:var(--measure);margin:0 0 var(--s6)}
.wrap_vikz-infobox:has(img,.ph){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);column-gap:var(--s4)}
.wrap_vikz-infobox:has(img,.ph)>p:first-child{grid-row:span 2;margin:0 0 var(--s3) calc(-1*var(--s4))}
}
@container content (max-width:34rem){
.wrap_vikz-infobox:has(img,.ph){display:block}
.wrap_vikz-infobox:has(img,.ph)>p:first-child{margin:0 calc(-1*var(--s4)) var(--s3)}
}
/* mobile */
@media (max-width:800px){
.wrap_vikz-infobox{float:none;width:auto;margin:0 0 var(--s5)}
.wrap_vikz-infobox>p{margin:0 calc(-1*var(--s4)) var(--s3)}
.wrap_vikz-specs{columns:1}
.wrap_vikz-gallery>p{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}
.wrap_vikz-gallery>p:has(>:nth-child(10)){grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.vikz-tags dl>div{grid-template-columns:7rem 1fr}
}

/* impression (→ print.css) */
@media print{
#dokuwiki__header,.breadcrumbs,#dokuwiki__pagetools,.vikz-toc,#dokuwiki__footer,.wrap_vikz-gallery,.page h2:has(+.level2 .wrap_vikz-gallery),.dokuwiki a.wikilink2::after{display:none!important}
body{background:#fff;color:#000;font-size:10.5pt}
.wrapper,.wrapper.hasToc{display:block;padding:0}
.wrap_vikz-infobox{float:none;width:auto;margin:0 0 12pt;background:none;border-top:2pt solid #000;display:grid;grid-template-columns:38% 1fr;gap:0 12pt}
.wrap_vikz-infobox>p{margin:0;grid-row:span 3}
.wrap_vikz-specs .is-collapsed tr{display:table-row!important}
.dokuwiki a.urlextern::after{content:" (" attr(href) ")";font-size:8pt}
.page h2{break-after:avoid}
}
