/* La Juste Tasse : ardoise de comptoir. Fond ardoise, texte à la craie, étiquettes kraft, fiches sur papier. */
:root{--bg:#1f2623;--bg2:#27302c;--bg3:#313c37;--deep:#161b19;--chalk:#f2eee3;--dim:#cdc9bc;--kraft:#e0b072;--kraft-l:#f3c98c;--paper:#f1e6cf;--paper2:#fbf6ea;--ink:#2a1f14;--ink2:#52443a;--line:#8b968f;--err:#ffb4a2;--focus:#ffd98f;--serif:"Rockwell","American Typewriter","Roboto Slab","Zilla Slab",Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--chalk);font:400 17px/1.6 var(--sans);overflow-wrap:break-word}
a{color:var(--kraft-l);text-underline-offset:3px}
a:hover{color:#fff}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.toolbox :focus-visible,.paper :focus-visible,.checklist :focus-visible,.callout :focus-visible,.result :focus-visible{outline-color:#0b3d91}
.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:8px;top:-60px;background:var(--kraft);color:#1b1710;padding:10px 16px;font-weight:700;z-index:50;text-decoration:none}
.skip:focus{top:8px}
h1,h2,h3{font-family:var(--serif);line-height:1.15;font-weight:700;margin:0}
h1{font-size:clamp(2rem,5.4vw,3.4rem);letter-spacing:-.01em}
h2{font-size:clamp(1.4rem,3vw,1.8rem);margin:0 0 14px}
h3{font-size:1.15rem;margin:22px 0 8px}
mark{background:transparent;color:var(--kraft)}
p{margin:0 0 14px}
/* En-tête */
.top{border-bottom:3px double var(--line);background:var(--bg)}
.top-in{max-width:1120px;margin:0 auto;padding:12px 20px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px}
.logo{display:inline-flex;align-items:center;gap:10px;color:var(--chalk);text-decoration:none;font-family:var(--serif);font-weight:700;font-size:1.4rem}
.logo em{font-style:normal;color:var(--kraft)}
.logo:hover{color:#fff}
.top nav{display:flex;flex-wrap:wrap;align-items:center;gap:2px 20px;min-width:0}
.top nav a,.top summary{color:var(--chalk);text-decoration:none;font-weight:600;padding:10px 2px;border-bottom:2px dotted transparent;display:inline-block;cursor:pointer}
.top nav a:hover,.top summary:hover{border-bottom-color:var(--kraft)}
details.menu{position:relative}
.menu summary{list-style:none}
.menu summary::-webkit-details-marker{display:none}
.menu summary::after{content:" ▾"}
.menu[open] summary::after{content:" ▴"}
.menu-panel{flex-basis:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:6px 0 10px}
.menu-panel a{display:block}
/* Pages */
main{max-width:1120px;margin:0 auto;padding:0 20px 56px}
main>*{min-width:0}
.sec{margin:44px 0}
.sec>h2,.prose>h2{padding-bottom:8px;border-bottom:2px dashed var(--line)}
.sec.alt{background:var(--bg2);padding:24px;border:2px dashed var(--line)}
.note{color:var(--dim)}
.rnote{color:var(--ink2);font-size:.95rem;font-style:italic}
/* Hero d'accueil */
.board{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;margin:28px 0 0;padding:28px;background:var(--bg2);border:5px double var(--line)}
.board-main,.slate{min-width:0}
.board h1{margin:12px 0 14px}
.lead{max-width:62ch;color:var(--dim);font-size:1.1rem}
.pill{display:inline-block;margin:0;padding:3px 12px;border:2px dashed var(--kraft);color:var(--kraft-l);font-weight:700;font-size:.92rem}
.board-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}
.slate{background:var(--deep);border:3px solid #8a6f4a;padding:20px 22px;align-self:start}
.slate h2{color:var(--kraft);font-size:1.3rem;border:0;margin-bottom:6px;padding:0}
.leaders{list-style:none;margin:0;padding:0}
.leaders a{display:flex;align-items:baseline;gap:8px;padding:10px 0;color:var(--chalk);text-decoration:none}
.leaders a:hover span{text-decoration:underline;text-decoration-color:var(--kraft)}
.leaders span{flex:0 1 auto;min-width:0}
u{flex:1 1 14px;min-width:12px;text-decoration:none;border-bottom:2px dotted var(--line);transform:translateY(-4px)}
.leaders i{font-style:normal}
.slate-foot{margin:8px 0 0;font-size:.95rem}
/* Boutons */
.btn{display:inline-block;background:var(--kraft);color:#1b1710;border:2px solid var(--kraft);padding:11px 22px;min-height:44px;font:700 1rem var(--sans);text-decoration:none;border-radius:3px;box-shadow:3px 3px 0 #0e1210;cursor:pointer}
.btn:hover{background:var(--kraft-l);border-color:var(--kraft-l);color:#1b1710}
.btn.alt{background:transparent;color:var(--chalk);border-color:var(--chalk)}
.btn.alt:hover{background:var(--chalk);color:#1b1710}
.btn.small{padding:8px 14px;font-size:.95rem}
.toolbox .btn.alt,.paper .btn.alt,.result .btn.alt{color:var(--ink);border-color:var(--ink)}
.linkbtn{background:none;border:0;padding:8px 4px;color:var(--kraft-l);text-decoration:underline;font:inherit;cursor:pointer;min-height:44px}
.linkbtn:hover{color:#fff}
/* Carte des catégories : lignes avec points de conduite */
.menu-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px}
.menu-list li{min-width:0}
.cat{display:flex;align-items:baseline;gap:8px;padding:11px 4px 11px 12px;color:var(--chalk);text-decoration:none;border-left:6px solid var(--c,var(--kraft));margin:6px 0;background:var(--bg2)}
.cat:hover{background:var(--bg3)}
.cat i{font-style:normal}
.cat b{font-family:var(--serif);min-width:0}
.cat span{color:var(--dim);font-size:.92rem;white-space:nowrap}
/* Tickets (outils, guides, menus) */
.tk-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:16px}
.tk-grid>li{min-width:0;display:flex}
.tk{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 14px;align-content:start;width:100%;padding:16px;background:var(--bg2);border:2px solid var(--line);border-left:8px solid var(--c,var(--kraft));color:var(--chalk);text-decoration:none}
.tk:hover{background:var(--bg3);border-color:var(--kraft);border-left-color:var(--c,var(--kraft))}
.tk i{grid-row:span 2;font-style:normal;font-size:2rem;line-height:1.1}
.tk b{font-family:var(--serif);font-size:1.05rem;line-height:1.25;overflow-wrap:break-word}
.tk span{color:var(--dim);font-size:.93rem;grid-column:2}
/* En-tête de page intérieure */
.band{margin:28px 0 8px;padding:22px 24px;background:var(--bg2);border-left:10px solid var(--c,var(--kraft));border-top:2px dashed var(--line);border-bottom:2px dashed var(--line)}
.band h1{margin:6px 0 12px}
.band .lead{margin-bottom:12px}
.crumbs{margin:0 0 6px;color:var(--dim);font-size:.93rem}
.crumbs a{color:var(--dim)}
.crumbs i{margin:0 7px;font-style:normal}
.count{margin:0 0 10px;color:var(--chalk)}
.count b{color:var(--kraft)}
.byline{display:flex;align-items:center;gap:10px;margin:8px 0 0;color:var(--dim);font-size:.92rem}
.byline img{border-radius:50%;border:2px solid var(--kraft);flex:none}
.byline a{color:var(--kraft-l)}
.portrait{display:block;border-radius:50%;border:3px solid var(--kraft);margin:8px 0 14px}
/* Annuaire */
.grid.sites,.grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:12px}
.grid>li{position:relative;min-width:0;display:flex}
.site{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:10px;align-items:center;width:100%;padding:12px 14px;background:var(--bg2);border:2px dashed var(--line);border-left:8px solid var(--c,var(--kraft));color:var(--chalk);text-decoration:none}
.site:hover{background:var(--bg3);border-color:var(--kraft);border-left-color:var(--c,var(--kraft))}
.site i{grid-row:span 2;font-style:normal;font-size:1.6rem}
.site b{overflow-wrap:anywhere;font-size:1rem}
.site span{color:var(--dim);font-size:.85rem;overflow-wrap:break-word}
.has-fav .site{padding-right:54px}
.fav{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:46px;height:46px;background:transparent;border:0;color:var(--kraft);font-size:1.5rem;cursor:pointer}
.fav:hover{color:#fff}
.finder{margin:12px 0 18px}
.finder-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;align-items:end;max-width:560px}
.finder-row label{grid-column:1/-1;font-weight:700}
.finder-clear{background:transparent;border:2px solid var(--line);color:var(--chalk);min-width:46px;min-height:46px;font-size:1.1rem;cursor:pointer}
.finder-count{color:var(--dim);margin:8px 0 0;min-height:1.6em}
.chips{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chips button{background:transparent;border:2px solid var(--line);color:var(--chalk);padding:8px 12px;min-height:44px;font:inherit;font-size:.95rem;cursor:pointer;border-left:6px solid var(--c,var(--line))}
.chips button:hover{border-color:var(--kraft)}
.chips button[aria-pressed="true"]{background:var(--kraft);color:#1b1710;border-color:var(--kraft)}
.favbox{margin:0 0 22px;padding:16px 18px;border:2px solid var(--kraft);background:var(--bg2)}
.favbox h2{font-size:1.3rem;border:0;padding:0}
.favbox-actions{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0}
.empty{text-align:center;padding:32px 20px;border:2px dashed var(--line);color:var(--dim)}
/* Formulaires */
input,select,textarea,button{font-family:inherit}
input[type=text],input[type=number],input[type=date],input[type=time],input[type=search],select,textarea{width:100%;min-width:0;min-height:46px;padding:10px 12px;background:var(--deep);color:var(--chalk);border:2px solid var(--line);border-radius:3px;font-size:1rem}
textarea{min-height:0;resize:vertical}
input[type=range]{width:100%;min-height:36px;accent-color:var(--kraft)}
.field{display:grid;gap:5px;min-width:0;align-content:start}
.field label,label{font-weight:700}
.toolbox{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;margin:24px 0 8px;align-items:start}
.toolbox>*{min-width:0}
.toolbox form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px 16px;padding:22px;background:var(--paper);color:var(--ink);border:3px solid #8a6f4a;box-shadow:5px 5px 0 #0e1210}
.toolbox form>*{min-width:0}
.toolbox form button.swap{align-self:end;justify-self:start;min-height:46px;padding:8px 14px;background:transparent;border:2px solid var(--ink);color:var(--ink);font-weight:700;cursor:pointer}
.toolbox input[type=text],.toolbox input[type=number],.toolbox input[type=date],.toolbox input[type=time],.toolbox select,.toolbox textarea{background:#fffaf0;color:var(--ink);border:2px solid #5b4b3a}
.toolbox label{color:var(--ink)}
.result-col{min-width:0}
.result{background:var(--paper2);color:var(--ink);border:2px dashed #7a6a58;padding:18px 20px;min-height:90px;box-shadow:5px 5px 0 #0e1210}
.result p{margin:0 0 10px}
.res{margin:0}
.res>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 16px;padding:8px 0;border-bottom:1px dotted #8f7f6b}
.res dt{font-weight:600;min-width:0}
.res dd{margin:0;font-family:var(--mono);text-align:right;min-width:0;overflow-wrap:anywhere}
.res .main{background:#f0d9a8;margin:4px -10px;padding:10px;border-bottom:0}
.res .main dd{font-weight:700;font-size:1.1rem}
.conv-main{font-family:var(--serif);font-size:1.3rem;font-weight:700;overflow-wrap:anywhere}
.err{color:#8a1c0c;font-weight:700}
.atelier .err,.matrix .err,.prose .err{color:var(--err)}
.result .err{color:#8a1c0c}
.status{color:var(--dim);min-height:1.5em}
.fallback{padding:14px;border:2px dashed var(--kraft);color:var(--kraft-l)}
.controls{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:14px 0}
.controls label{margin-right:4px}
.controls select{width:auto;min-width:110px}
.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px 16px;margin:12px 0}
.form-row>*{min-width:0}
/* Texte courant */
.prose{max-width:780px;margin:36px 0}
.prose.wide{max-width:none}
.prose h2{margin-top:36px}
.prose h2:first-child{margin-top:0}
.prose ul,.prose ol{padding-left:1.3rem}
.prose li{margin-bottom:6px}
.intro{font-size:1.15rem;color:var(--chalk);border-left:4px solid var(--kraft);padding-left:16px}
.faq details{border:2px dashed var(--line);padding:0 16px;margin:0 0 10px}
.faq summary{cursor:pointer;font-family:var(--serif);font-weight:700;padding:12px 0;min-height:44px}
.faq p{color:var(--chalk);margin:0 0 14px}
.chiplist,.plain{list-style:none;padding:0!important;margin:0 0 16px;display:flex;flex-wrap:wrap;gap:8px}
.chiplist a{display:inline-block;padding:7px 12px;border:2px dashed var(--kraft);color:var(--chalk);text-decoration:none}
.chiplist a:hover{background:var(--bg3);color:#fff}
.plain{display:block}
.plain li{margin:4px 0}
.checklist{background:var(--paper);color:var(--ink);padding:16px 20px;border:3px solid #8a6f4a;margin:0 0 14px}
.checklist ul{list-style:none;margin:0;padding:0!important}
.checklist li{position:relative;padding-left:30px;margin:8px 0}
.checklist li::before{content:"";position:absolute;left:2px;top:.3em;width:16px;height:16px;border:2px solid var(--ink)}
.callout{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:18px 22px;background:var(--kraft);color:#1b1710;border:3px solid #8a6f4a;margin:26px 0}
.callout p{margin:0;font-weight:700;min-width:0}
.callout .btn{background:#1b1710;color:#f2eee3;border-color:#1b1710;box-shadow:none}
.callout .btn:hover{background:#000;color:#fff}
.embedbox{border:2px dashed var(--line);padding:16px 18px}
.embedbox textarea{font-family:var(--mono);font-size:.9rem;background:var(--deep);color:var(--chalk)}
.embedbox .btn{margin-top:10px}
.example{border:2px dashed var(--line);padding:16px 18px;margin:0 0 14px;background:var(--bg2)}
.example ul{margin:0 0 14px}
.example .result{box-shadow:none}
.guide-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 14px}
.guide-nav a{display:block;padding:14px 16px;border:2px dashed var(--line);color:var(--chalk);text-decoration:none;font-family:var(--serif);font-weight:700}
.guide-nav a:hover{border-color:var(--kraft);background:var(--bg2)}
.guide-nav span{display:block;color:var(--dim);font:400 .85rem var(--sans)}
.links{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:12px}
.links a{display:grid;padding:12px 14px;border:2px dashed var(--line);color:var(--chalk);text-decoration:none;overflow-wrap:anywhere}
.links a span{color:var(--dim);font-size:.9rem}
dl.facts{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:8px 20px}
dl.facts dt{font-weight:700;color:var(--kraft-l)}
dl.facts dd{margin:0;overflow-wrap:anywhere}
.crit-list{display:block}
dl.crit-list dd{margin:0 0 12px}
/* Fiches */
.modele-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;margin:24px 0}
.modele-grid>*{min-width:0}
.modele-form{display:grid;gap:12px;align-content:start;padding:20px;background:var(--paper);color:var(--ink);border:3px solid #8a6f4a}
.modele-form label{color:var(--ink)}
.modele-form input,.modele-form select,.modele-form textarea{background:#fffaf0;color:var(--ink);border:2px solid #5b4b3a}
.modele-form :focus-visible{outline-color:#0b3d91}
.paper{background:#fffdf6;color:#111;padding:26px;min-height:320px;font:16px/1.55 Georgia,"Times New Roman",serif;border:1px solid #cbbf9f;box-shadow:5px 5px 0 #0e1210;overflow-wrap:anywhere}
.paper p{margin:0 0 .35em}
.dl-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
/* Calendrier */
.months{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,215px),1fr));gap:16px;margin:16px 0 24px}
.month{position:relative;min-width:0;background:var(--bg2);border:2px dashed var(--line);padding:10px}
.month table{width:100%;border-collapse:collapse;text-align:center;font-size:.85rem}
.month caption{font-family:var(--serif);font-weight:700;text-align:left;padding:2px 2px 6px}
.month th,.month td{padding:3px 0}
.month th{color:var(--dim);font-weight:600}
.month abbr{text-decoration:none}
td.mk span{display:inline-block;min-width:1.7em;padding:1px 3px;background:var(--kraft);color:#1b1710;font-weight:700}
.tablewrap{overflow-x:auto;max-width:100%;position:relative;margin:0 0 16px}
.evlist{width:100%;min-width:480px;border-collapse:collapse;text-align:left}
.tablewrap .evlist{margin:0}
.evlist th,.evlist td{padding:9px 12px;border-bottom:1px dashed var(--line);vertical-align:top}
.evlist thead th{background:var(--bg2);border-bottom:2px solid var(--line)}
.evlist tbody th{font-weight:700}
.evlist caption{text-align:left}
/* Ateliers */
.atelier{margin:24px 0}
.atelier>[data-live]{display:grid;gap:14px}
.atelier [data-live]>*{min-width:0}
.timer-face{background:var(--deep);border:3px double var(--kraft);padding:16px 20px;text-align:center}
.timer-step{margin:0;font-family:var(--serif);font-size:1.2rem;color:var(--kraft-l);min-height:1.6em}
.timer-clock{margin:0;font:700 clamp(2.6rem,12vw,4.4rem)/1.1 var(--mono);color:var(--chalk)}
.timer-total{margin:0;color:var(--dim)}
.steps-list{padding-left:1.4rem;margin:0}
.steps-list li.now{color:var(--kraft-l);font-weight:700}
.steps-list li.past{color:var(--dim);text-decoration:line-through}
canvas{display:block;max-width:100%;height:auto;border:2px dashed var(--line);background:#fff}
.axes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:10px 18px}
.leaders-out{margin:0;padding:16px;background:var(--deep);border:2px dashed var(--line);font:1rem/1.5 var(--mono);overflow-x:auto;max-width:100%;position:relative;white-space:pre}
.atelier .result{margin:0}
/* Matrice de décision */
.matrix{margin:24px 0}
.matrix [data-live]{display:grid;gap:14px}
.matrix-top,.names,.scores{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px 16px}
.matrix-top>*,.names>*,.scores>*{min-width:0}
.crit{border:2px dashed var(--line);padding:14px 16px;margin:0 0 14px;display:grid;gap:10px;min-width:0}
.crit legend{font-family:var(--serif);font-weight:700;padding:0 8px;color:var(--kraft-l)}
.help{color:var(--dim);margin:0}
.ranking{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ranking li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px 14px;align-items:center}
.ranking .bar{grid-column:1/-1;height:12px;background:#d9ccb0;border:1px solid #7a6a58}
.ranking .bar i{display:block;height:100%;background:#8a5a1d}
.ranking .rk{font:700 1.2rem var(--mono)}
.verdict{margin:12px 0 0;font-weight:600}
[data-matrix] .result{padding:16px 18px}
/* Pied de page */
.foot{margin-top:40px;background:var(--deep);border-top:5px double var(--line)}
.foot-grid{max-width:1120px;margin:0 auto;padding:34px 20px 10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:26px}
.foot-grid>*{min-width:0}
.foot-about p{color:var(--dim);margin-top:10px;font-size:.95rem}
.foot-h{font-family:var(--serif);font-size:1.05rem;color:var(--kraft);margin:0 0 10px;padding:0;border:0}
.foot ul{list-style:none;margin:0;padding:0}
.foot li{margin:0}
.foot li a{display:inline-block;padding:5px 0;color:var(--chalk);overflow-wrap:anywhere}
.foot-bottom{max-width:1120px;margin:0 auto;padding:10px 20px 28px;color:var(--dim);font-size:.9rem;border-top:2px dashed #3d4843}
.foot-bottom p{margin:12px 0 0}
/* Pages intégrables */
body.embed{background:var(--bg)}
.embed-wrap{max-width:640px;margin:0 auto;padding:16px}
.embed-wrap h1{font-size:1.5rem;margin-bottom:12px}
.embed .toolbox{grid-template-columns:minmax(0,1fr);margin-top:8px}
.embed-credit{margin:14px 0 0;font-size:.9rem}
/* Adaptation */
@media (min-width:760px){
  .menu-panel{position:absolute;right:0;top:100%;z-index:30;min-width:240px;flex-basis:auto;grid-template-columns:minmax(0,1fr);background:var(--bg2);border:2px solid var(--kraft);padding:8px 16px;box-shadow:5px 5px 0 #0e1210}
}
@media (max-width:759px){
  details.menu[open]{flex-basis:100%}
}
@media (max-width:900px){
  .board,.toolbox,.modele-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:700px){
  body{font-size:16.5px}
  .menu-list{grid-template-columns:minmax(0,1fr)}
  .guide-nav{grid-template-columns:minmax(0,1fr)}
  dl.facts{grid-template-columns:minmax(0,1fr);gap:2px 0}
  dl.facts dd{margin-bottom:10px}
  .board{padding:20px 16px;border-width:4px}
  .band{padding:18px 16px}
  .sec.alt{padding:16px}
  .toolbox form,.modele-form{padding:16px}
  .cat span{white-space:normal}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{
  .top,.foot,.modele-form,.band,.dl-actions,.crumbs,.skip,.sec,.prose,.toolbox,.matrix{display:none!important}
  body.modele{background:#fff;color:#000}
  body.modele main{padding:0}
  body.modele .modele-grid{display:block;margin:0}
  body.modele .paper{border:0;box-shadow:none;padding:0}
  body.modele .modele-side h2{display:none}
}


/* ===== kit commun : export, filtre, outils liés, impression, grandes listes ===== */
.kit-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.9rem 0 0}
.kit-actions button{font:inherit;font-weight:700;font-size:.95rem;cursor:pointer;padding:.45rem .85rem;min-height:44px;border:2px solid currentColor;border-radius:.6rem;background:transparent;color:inherit}
.kit-actions button:hover{text-decoration:underline}
.kit-status{font-size:.9rem;min-height:1.2em}
.kit-filter{margin:0 0 1.2rem}
.kit-filter label{display:block;font-weight:700;margin-bottom:.35rem}
.kit-filter input{font:inherit;width:100%;max-width:32rem;padding:.6rem .8rem;min-height:44px;border:2px solid #222;border-radius:.6rem;background:#fff;color:#111}
.kit-count{margin:.4rem 0 0;font-size:.92rem;min-height:1.2em}
.kit-related{margin:2.2rem 0 1rem;padding:1rem 1.2rem;border:2px solid currentColor;border-radius:.8rem}
.kit-related h2{font-size:1.15rem;margin:0 0 .7rem}
.kit-related ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:.4rem .8rem}
.kit-related li{min-width:0}
.kit-related a{display:block;padding:.35rem .1rem;overflow-wrap:break-word}
ul:has(> li:nth-child(40)) > li{content-visibility:auto;contain-intrinsic-size:auto 100px}
@media print{
  body.kit-printing *{visibility:hidden!important}
  body.kit-printing .kit-print-target,body.kit-printing .kit-print-target *{visibility:visible!important}
  body.kit-printing .kit-print-target{position:absolute!important;left:0;top:0;width:100%;color:#000!important;background:#fff!important;box-shadow:none!important}
}
