/* Compléments à admin.css (feuille du prototype) pour la version en production */
.alert-box.ok{ border-color:#c5dcc5; background:var(--ok-tint); }
.alert-box.ok svg{ color:var(--ok); }
.alert-box.ok .d{ color:#2f5a37; }
.alert-box .d a{ font-weight:600; }
table.refs{ min-width:0; }
table.refs th{ cursor:default; }
table.refs td.url{ font-size:12.5px; word-break:break-all; max-width:520px; }
table.refs td.url a{ color:var(--ink-soft); }
table.refs .row-actions{ opacity:1; }
.indent-1{ padding-left:22px !important; } .indent-2{ padding-left:44px !important; } .indent-3{ padding-left:66px !important; } .indent-4{ padding-left:88px !important; }
.inline-form{ display:inline-flex; gap:6px; align-items:center; }
.inline-form input[type=text]{ width:110px; padding:6px 9px; font-family:var(--font-mono); font-size:12.5px; }
.mono-input{ font-family:var(--font-mono) !important; }
.summary-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin-bottom:20px; }
.sect{ margin-bottom:14px; }
.sect > summary{ list-style:none; cursor:pointer; display:flex; gap:10px; align-items:center; padding:14px 18px; font-weight:600; font-size:14.5px; }
.sect > summary::-webkit-details-marker{ display:none; }
.sect > summary .pill{ margin-left:auto; }
.sect[open] > summary{ border-bottom:1px solid var(--line); }
.sect .inner{ max-height:520px; overflow:auto; }
.sticky-foot{ position:sticky; bottom:0; background:var(--white); border-top:1px solid var(--line); padding:14px 18px; display:flex; gap:12px; align-items:center; justify-content:flex-end; border-radius:0 0 var(--radius-l) var(--radius-l); }
.diff-old{ color:var(--bad); text-decoration:line-through; }
.diff-new{ color:var(--ok); font-weight:600; }
.help{ font-size:12.5px; color:var(--ink-faint); }
.kv{ display:grid; grid-template-columns:160px 1fr; gap:8px 16px; font-size:13.5px; }
.kv dt{ color:var(--ink-faint); }
.kv dd{ margin:0; }
textarea.urls{ font-family:var(--font-mono); font-size:12.5px; min-height:160px; white-space:pre; }
.sidebar-nav .nav-link svg{ width:18px; height:18px; }
.topbar .btn svg{ width:15px; height:15px; }
@media (max-width:1180px){ .summary-grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:620px){ .summary-grid{ grid-template-columns:1fr 1fr; } .kv{ grid-template-columns:1fr; } }
.pager{ align-items:center; }
.pager a{ min-width:30px; height:30px; padding:0 6px; border-radius:6px; border:1px solid var(--line-strong); background:var(--white); font-size:12.5px; font-weight:600; color:var(--ink-soft); display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
.pager a.active{ background:var(--forest); color:#fff; border-color:var(--forest); }
.pager a:hover:not(.active){ background:var(--paper-dim); }
.topbar-search input[type=search]{ padding-left:36px; }
.table-toolbar .search-mini input[type=search]{ padding-left:32px; }
td.mono, .mono.text-muted{ white-space:nowrap; }

/* ---------- Éditeur d'article ---------- */
.ed-bar{ display:flex; flex-wrap:wrap; gap:4px; padding:6px; border:1.5px solid var(--line-strong, #c9c0a6); border-bottom:none; border-radius:9px 9px 0 0; background:var(--paper-dim, #efe9db); }
.ed-bar button{ border:1px solid transparent; background:transparent; padding:5px 10px; border-radius:6px; font-size:13px; cursor:pointer; color:inherit; }
.ed-bar button:hover{ background:#fff; border-color:var(--line, #ddd6c2); }
.ed-zone{ min-height:360px; max-height:70vh; overflow:auto; padding:16px 18px; border:1.5px solid var(--line-strong, #c9c0a6); border-radius:0 0 9px 9px; background:#fff; font-size:15px; line-height:1.65; outline:none; }
.ed-zone:focus{ border-color:var(--forest, #33503f); }
.ed-zone h2{ font-size:19px; margin:1.2em 0 .4em; }
.ed-zone p{ margin:0 0 .8em; }
.ed-zone blockquote{ margin:.8em 0; padding-left:14px; border-left:3px solid var(--moss, #7c9270); font-style:italic; }
.ed-zone a{ color:var(--forest, #33503f); text-decoration:underline; }
label.check{ display:flex; gap:8px; align-items:center; font-weight:400; cursor:pointer; }

/* ---------- espace auteur ---------- */
.ea-grid{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; align-items:start; }
.ea-bars .bar-row{ grid-template-columns:minmax(0,1.3fr) minmax(0,1.6fr) 56px; }
.ea-bars .bar-row .lbl{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:500; }
.ea-bars .bar-row .lbl a{ text-decoration:none; }
.ea-bars .bar-row .n{ color:var(--ink-soft); }
.ea-kv{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; }
.ea-kv .v{ display:block; font-family:var(--font-display); font-size:26px; font-weight:600; color:var(--forest); }
.ea-kv .k{ display:block; font-size:12.5px; color:var(--ink-soft); }
.ea-rub{ padding:14px 0; border-top:1px solid var(--line); }
.ea-rub:first-of-type{ border-top:0; }
.ea-rub-head{ display:flex; gap:10px; align-items:baseline; flex-wrap:wrap; margin-bottom:8px; }
.ea-rub input[type=text]{ width:100%; }
.ea-ex{ margin:8px 0 0; padding-left:18px; font-size:12.5px; color:var(--ink-soft); display:grid; gap:3px; }
.ea-ex a{ color:var(--ink-soft); }
.ea-save{ position:sticky; bottom:0; display:flex; gap:14px; align-items:center; padding:12px 16px; background:var(--white); border:1px solid var(--line); border-radius:12px; box-shadow:0 -4px 18px rgba(0,0,0,.06); }
@media (max-width:1100px){ .espace-auteur .stat-grid{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:900px){ .ea-grid{ grid-template-columns:minmax(0,1fr); } }
@media (max-width:560px){ .espace-auteur .stat-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); } .ea-bars .bar-row{ grid-template-columns:minmax(0,1fr) 56px; } .ea-bars .bar-track{ grid-column:1 / -1; grid-row:2; } }
.ea-bars .bar-track, .ea-bars .bar-fill{ display:block; }

/* ---------- documentation ---------- */
.doc-layout{ display:grid; grid-template-columns:250px minmax(0,1fr); gap:18px; align-items:start; }
.doc-toc{ position:sticky; top:16px; }
.doc-toc ol{ margin:0; padding-left:20px; display:grid; gap:7px; font-size:13.5px; }
.doc-toc a{ text-decoration:none; color:var(--ink); }
.doc-toc a:hover{ color:var(--forest); text-decoration:underline; }
.doc-main{ display:grid; gap:16px; min-width:0; }
.doc-sec{ scroll-margin-top:16px; }
.doc-prose{ font-size:14px; line-height:1.6; color:var(--ink); }
.doc-prose h3{ font-size:15px; margin:20px 0 6px; }
.doc-prose h3:first-child{ margin-top:0; }
.doc-prose p{ margin:0 0 10px; }
.doc-prose ul, .doc-prose ol{ margin:0 0 10px; padding-left:20px; display:grid; gap:5px; }
.doc-prose ul{ list-style:disc; }
.doc-prose code{ font-family:var(--font-mono); font-size:12.5px; background:var(--paper-dim); padding:1px 5px; border-radius:4px; overflow-wrap:anywhere; }
.doc-prose table.refs th{ width:190px; text-align:left; vertical-align:top; font-weight:600; font-size:13px; white-space:normal; }
.doc-prose table.refs td{ font-size:13.5px; vertical-align:top; }
.doc-etat{ margin-bottom:18px; }
.doc-version{ display:grid; grid-template-columns:110px minmax(0,1fr); gap:12px; padding:12px 0; border-top:1px solid var(--line); }
.doc-version:first-child{ border-top:0; padding-top:0; }
.doc-version ul{ margin-top:6px; }
.doc-date{ font-family:var(--font-mono); font-size:12.5px; color:var(--ink-soft); padding-top:2px; }
.doc-add{ display:grid; gap:8px; padding-bottom:14px; border-bottom:1px solid var(--line); }
.doc-add textarea, .doc-edit textarea{ width:100%; }
.doc-todo{ display:flex; gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }
.doc-todo:last-child{ border-bottom:0; }
.doc-todo.prio-1{ box-shadow:inset 3px 0 0 var(--bad); padding-left:10px; }
.doc-todo.fait .doc-todo-txt{ text-decoration:line-through; color:var(--ink-faint); }
.doc-todo-body{ flex:1; min-width:0; }
.doc-todo-txt{ font-size:14px; margin-bottom:4px; overflow-wrap:anywhere; }
.doc-box{ width:22px; height:22px; border:1.5px solid var(--line-strong); border-radius:6px; background:var(--white); display:grid; place-items:center; cursor:pointer; padding:0; color:var(--ok); margin-top:1px; }
.doc-box:hover{ border-color:var(--forest); }
.doc-box svg{ width:14px; height:14px; }
.doc-edit summary{ font-size:12px; color:var(--ink-faint); cursor:pointer; margin-top:4px; display:inline-block; }
.doc-edit form{ margin-top:8px; }
.doc-masque{ display:none !important; }
@media (max-width:900px){ .doc-layout{ grid-template-columns:minmax(0,1fr); } .doc-toc{ position:static; } .doc-prose table.refs th{ width:120px; } .doc-version{ grid-template-columns:minmax(0,1fr); gap:4px; } }
.doc-main{ grid-template-columns:minmax(0,1fr); }
.doc-prose table.refs{ table-layout:fixed; width:100%; }
@media (max-width:900px){ .io-grid{ grid-template-columns:minmax(0,1fr) !important; } .io-card{ min-width:0; } .io-card pre{ max-width:100%; } }
