/* style.css — sobre, bleu, tableaux + accordéons */
:root { --blue:#004080; --text:#222; --bg:#fefefe; --line:#e5e7eb; --muted:#64748b;}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font:16px/1.6 -apple-system,Segoe UI,Roboto,Arial,Helvetica,"Noto Sans",sans-serif}
header{background:var(--blue);color:#fff;padding:1rem;text-align:center}
header h1{margin:0;font-size:1.75rem}
header .back{color:#bfdbfe}
main{max-width:1100px;margin:1.25rem auto;padding:0 1rem}
details{background:#fff;border:1px solid var(--line);border-radius:8px;margin:0 0 .75rem 0;overflow:hidden}
summary{list-style:none;cursor:pointer;padding:0}
summary::-webkit-details-marker{display:none}
.summary-inner{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#f8fafc;border-bottom:1px solid var(--line)}
.summary-title{font-weight:600;color:var(--blue)}
.chev{margin-left:auto;transition:transform .2s ease}
details[open] .chev{transform:rotate(90deg)}
.chapter{margin:.5rem 1rem 1rem;border:1px dashed var(--line);border-radius:8px;overflow:hidden}
.chapter summary .summary-inner{background:#fff}
.chapter .summary-title{color:#1f2937}
.resbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.75rem;border-top:1px solid var(--line);background:#fafafa}
.btn{display:inline-block;padding:.35rem .65rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--blue);font-weight:600}
.btn:hover{background:#f1f5f9}
.panel{display:none;border:1px solid var(--line);border-radius:10px;padding:.6rem;background:#fff;margin:.5rem 0}
.panel.open{display:block}
.panel .row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
select{padding:.35rem .5rem;border:1px solid var(--line);border-radius:8px;background:#fff}
label{font-weight:600;color:#334155}
table{width:100%;border-collapse:collapse;margin:.25rem 0 1rem;background:#fff}
thead th{background:#f3f4f6;border-bottom:2px solid var(--line);text-align:left;padding:.5rem .6rem}
td{border-bottom:1px solid var(--line);padding:.5rem .6rem;vertical-align:top}
tbody tr:hover{background:#f9fafb}
.badge{font-size:.8rem;color:#fff;background:var(--blue);border-radius:999px;padding:.15rem .5rem}
footer{max-width:1100px;margin:2rem auto 3rem;padding:0 1rem;color:#666;text-align:center;font-size:.9rem}
.hint{font-size:.85rem;color:#475569}
