/* Promesse d’entrée et exemple fictif de résultat. */
.promesse{margin:-26px 0 30px;font:15px/1.6 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink2)}
.promesse strong{color:var(--ink);font-weight:600}
.promesse .demo-open{display:inline;margin:0 0 0 2px;padding:0;background:none;border:0;border-radius:0;color:var(--acc2);font:600 15px/1.6 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.promesse .demo-open:hover{background:none;color:var(--ink)}
.promesse .demo-open:focus-visible{outline:2px solid var(--acc2);outline-offset:3px;border-radius:2px}
.promesse .demo-open[hidden]{display:none}
dialog.demo{width:min(760px,calc(100% - 24px));max-height:calc(100% - 24px);margin:auto;padding:0;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);overflow:auto;overscroll-behavior:contain;box-shadow:0 18px 50px rgba(28,18,9,.28)}
dialog.demo::backdrop{background:rgba(28,18,9,.55)}
.demo .demo-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 28px 0}
.demo .demo-badge{display:inline-block;margin:0 0 8px;padding:3px 9px;border:1px solid var(--warn);border-radius:3px;color:var(--warn);font:600 11.5px/1.3 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:.07em;text-transform:uppercase}
.demo h2{margin:0;font:600 24px/1.25 Sp,'Iowan Old Style',Georgia,serif;letter-spacing:-.01em}
.demo button.demo-x{flex:0 0 auto;margin:0;padding:4px 12px 6px;background:transparent;color:var(--ink2);border:1px solid var(--line);border-radius:4px;font:400 24px/1 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.demo button.demo-x:hover{background:var(--card);color:var(--ink)}
.demo .demo-intro{margin:14px 28px 18px;font:15px/1.6 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink2)}
.demo .demo-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 28px 18px}
.demo .demo-tabs button{margin:0;padding:10px 12px;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:4px;font:600 14px/1.35 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;text-align:left;white-space:normal}
.demo .demo-tabs button:hover{background:#fbf6ec}
.demo .demo-tabs button[aria-selected=true]{background:var(--ink);color:var(--lin);border-color:var(--ink)}
.demo .demo-tabs button:focus-visible,.demo .demo-panel:focus-visible,.demo .demo-foot button:focus-visible,.demo button.demo-x:focus-visible,.demo .demo-pdf a:focus-visible{outline:2px solid var(--acc2);outline-offset:2px}
.demo .demo-panel{padding:0 28px}
.demo .demo-panel[hidden]{display:none}
.demo .demo-profil{margin:0 0 14px;font:14.5px/1.55 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink2)}
.demo .demo-profil strong{color:var(--ink)}
.demo .demo-pre{position:relative;margin:0 0 14px;padding:26px 28px 20px}
.demo .demo-pre .demo-ribbon{position:absolute;top:0;right:0;margin:0;padding:4px 10px;background:var(--warn);color:#fff;border-radius:0 3px 0 3px;font:600 11px/1.3 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:.07em;text-transform:uppercase}
.demo .demo-pre .titre{font-size:22px;margin-right:96px}
.demo .demo-pre .demo-kp{margin-bottom:8px}
.demo .demo-pre .lim{margin-bottom:0}
.demo .demo-suite,.demo .demo-pdf{margin:0 0 10px;font:14px/1.55 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink2)}
.demo .demo-pdf a{color:var(--acc2);font-weight:600;text-underline-offset:3px}
.demo .demo-foot{padding:10px 28px 26px}
.demo .demo-foot button{margin:0;padding:12px 20px;background:var(--ink);color:var(--lin);border:0;border-radius:4px;font:600 15px/1.3 Px,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
.demo .demo-foot button:hover{background:#2c1d10}
@media(max-width:560px){
 .promesse{margin:-30px 0 26px;font-size:14.5px}
 .promesse .demo-open{font-size:14.5px}
 dialog.demo{width:calc(100% - 16px);max-height:calc(100% - 16px)}
 .demo .demo-head{padding:18px 16px 0}
 .demo h2{font-size:21px}
 .demo .demo-intro{margin:12px 16px 14px;font-size:14.5px}
 .demo .demo-tabs{grid-template-columns:1fr;gap:6px;margin:0 16px 14px}
 .demo .demo-tabs button{padding:9px 12px}
 .demo .demo-panel{padding:0 16px}
 .demo .demo-pre{padding:34px 18px 18px}
 .demo .demo-pre .titre{font-size:20px;margin-right:0}
 .demo .demo-foot{padding:8px 16px 20px}
 .demo .demo-foot button{width:100%}
}
@media print{.promesse .demo-open,dialog.demo{display:none!important}}
