
:root{--sbw:236px;--sbbg:var(--sidebar);--sbtx:var(--sidebar-text);--sbmu:#6B7280;--sbon:#1F2937;--grn:var(--brand);--grnd:var(--brand-hover);--chip:var(--ink);--chip-text:#fff}
body.sbon{font-family:var(--font-ui)}
#sb,#mtop,#qtabs{font-family:var(--font-ui)}
#sb{position:fixed;left:0;top:0;bottom:0;width:var(--sbw);background:var(--sbbg);color:var(--sbtx);display:flex;flex-direction:column;padding:18px 12px 14px;z-index:45;overflow-y:auto}
#sb .sbbrand{display:flex;align-items:center;gap:14px;padding:4px 8px 22px}
#sb .sbmark{flex:none;width:34px;height:34px;display:block}
#sb .sbmark svg{width:34px;height:34px;display:block}
.sewm{font-family:var(--font-brand);letter-spacing:-.02em;line-height:1;white-space:nowrap;color:#fff}
.sewm span{font-weight:500}.sewm b{font-weight:800}
#sb .sbbrand .sewm{display:block;font-size:18px;margin-bottom:4px}
#sb .sbbrand small{display:block;color:#9ca3af;font-size:12px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}
#sb h4{margin:18px 10px 6px;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--sbmu)}
#sb button{display:flex;align-items:center;gap:11px;width:100%;border:0;background:none;color:var(--sbtx);font:500 14px/1 var(--font-ui);padding:10px 10px;border-radius:7px;cursor:pointer;text-align:left}
#sb button svg{flex:none;width:17px;height:17px;opacity:.85}
#sb button:hover{background:#1a2230;color:#fff}
#sb button.on{background:var(--sbon);color:#fff;font-weight:600}
#sb button:focus-visible{outline:2px solid #60a5fa;outline-offset:1px}
#sb .sbfoot{margin-top:auto;padding-top:12px;border-top:1px solid #1f2937}
body.sbon main{max-width:none!important;margin:0 0 0 var(--sbw)!important;padding:28px 36px 40px!important;min-height:100vh}
body.sbon main>div:not(#hm):not(#qtabs){max-width:1180px}
body.sbon .seg.tools[data-mvrow="tabs"]{display:none!important}
body.sbon:not(.qv) .top{display:none!important}
body.sbon .top{margin:-28px -36px 0!important;padding:10px 36px!important;background:var(--card)!important;color:var(--ink)!important;border-bottom:1px solid var(--line)!important;box-shadow:none!important}
body.sbon .top h1{display:none}
body.sbon .top .btn{background:var(--surface)!important;color:var(--ink)!important;border:1px solid var(--line-strong)!important;border-radius:7px!important;box-shadow:none!important}
body.sbon .top .btn.pri{background:var(--grn)!important;border-color:var(--grn)!important;color:#fff!important}
body.sbon .top .btn:disabled{opacity:.45}
body.sbon .top #sv{color:var(--mut)!important}
#qtabs{display:none;align-items:center;gap:6px;flex-wrap:wrap;margin:14px 0 18px}
body.qv #qtabs{display:flex}
#qtabs .qtn{font-weight:700;font-size:17px;margin-right:14px;color:var(--ink)}
#qtabs button{border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:500 14px var(--font-ui);padding:8px 14px;border-radius:999px;cursor:pointer}
#qtabs button.on{background:var(--chip);border-color:var(--chip);color:#fff}
#mtop{display:none}
#sbx{display:none}
@media (max-width:899px){
 #sb{z-index:70;transform:translateX(-100%);visibility:hidden;transition:transform .2s ease,visibility .2s}
 body.sbopen #sb{transform:none;visibility:visible;box-shadow:0 0 40px rgba(0,0,0,.35)}
 body.sbopen #sbx{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:65}
 #mtop{display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:50;background:var(--sbbg);color:#fff;padding:10px 16px;margin:-16px -16px 16px!important}
 #mtop button{border:0;background:none;color:#fff;padding:6px;cursor:pointer;display:grid;place-items:center}
 #mtop svg{width:22px;height:22px}
 #mtop .mtbrand{display:flex;align-items:center;gap:10px}
 #mtop .mtbrand svg{width:24px;height:24px;display:block}
 #mtop .sewm{font-size:15px}
 body.sbon main{margin:0!important;padding:16px!important}
 body.sbon .top{margin:-16px -16px 0!important;padding:8px 16px!important;position:static!important}
 body.sbon.qv #mtop{margin-bottom:0!important}
}
@media print{#sb,#sbx,#mtop,#qtabs{display:none!important}body.sbon main{margin:0!important;padding:0!important}}

/* ---------- Tableau de bord ---------- */
#hm.db{max-width:1180px;margin:0;color:var(--ink);font-family:var(--font-ui)}
#hm.db *{box-sizing:border-box}
#hm.db .dbtop{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}
#hm.db .dbtop small{display:block;color:var(--mut);font-size:13px;margin-bottom:4px}
#hm.db .dbtop h1{font:700 26px/1.15 var(--font-brand);letter-spacing:-.01em;margin:0}
#hm.db .dbs{position:relative;flex:0 1 360px}
#hm.db .dbs svg{position:absolute;left:14px;top:50%;width:17px;height:17px;transform:translateY(-50%);color:var(--mut);pointer-events:none}
#hm.db .dbs input{width:100%;height:44px;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:0 14px 0 40px;font:14px var(--font-ui);color:var(--ink)}
#hm.db .dbc{background:var(--card);border:1px solid var(--line);border-radius:14px}
#hm.db .dbnew{padding:26px 28px 24px;margin-bottom:22px}
#hm.db .dbk{color:var(--brand-text);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin:0 0 6px}
#hm.db .dbnew h2{font:700 20px/1.2 var(--font-brand);letter-spacing:-.01em;margin:0 0 16px}
#hm.db textarea{width:100%;min-height:96px;resize:vertical;border:1px solid var(--line);border-radius:10px;background:var(--bg);padding:14px 16px;font:15px/1.5 var(--font-ui);color:var(--ink)}
#hm.db .dbrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}
#hm.db .chip{border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:500 14px var(--font-ui);height:38px;padding:0 15px;border-radius:999px;cursor:pointer}
#hm.db .chip.on{background:var(--chip);border-color:var(--chip);color:#fff;font-weight:600}
#hm.db .segm{display:inline-flex;background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:3px;gap:2px}
#hm.db .segm button{border:0;background:none;color:var(--mut);font:500 13px var(--font-ui);padding:8px 14px;border-radius:7px;cursor:pointer}
#hm.db .segm button.on{background:var(--card);color:var(--ink);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.08)}
#hm.db .dbact{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:20px;padding-top:18px}
#hm.db .obtn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:500 14px var(--font-ui);height:42px;padding:0 16px;border-radius:9px;cursor:pointer}
#hm.db .obtn svg{width:16px;height:16px}
#hm.db .obtn.rec{border-color:#dc2626;color:#dc2626}
#hm.db .dbsp{flex:1}
#hm.db .lnk{border:0;background:none;color:var(--ink);text-decoration:underline;text-underline-offset:3px;font:14px var(--font-ui);cursor:pointer;padding:6px}
#hm.db .gbtn{display:inline-flex;align-items:center;gap:10px;border:0;background:var(--grn);color:#fff;font:600 15px var(--font-ui);height:46px;padding:0 22px;border-radius:9px;cursor:pointer}
#hm.db .gbtn:hover{background:var(--grnd)}
#hm.db .gbtn svg{width:17px;height:17px}
#hm.db .dbmsg{margin:10px 0 0;font-size:13px;color:#b45309;min-height:1px}
#hm.db .dbfiles{font-size:13px;color:var(--mut)}
#hm.db .dbgrid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:22px;align-items:start}
#hm.db .dbrec{overflow:hidden}
#hm.db .dbrh{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:20px 22px 14px}
#hm.db .dbrh h3,#hm.db .side h3{font:600 17px var(--font-ui);margin:0}
#hm.db .tabs{display:flex;gap:4px;flex-wrap:wrap}
#hm.db .tabs button{border:0;background:none;color:var(--ink);font:500 13px var(--font-ui);padding:7px 12px;border-radius:7px;cursor:pointer}
#hm.db .tabs button.on{background:var(--chip);color:#fff;font-weight:600}
#hm.db table{width:100%;min-width:0;border-collapse:collapse}
#hm.db th{font:600 11.5px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--mut);text-align:left;padding:12px 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
#hm.db td{padding:13px 22px;border-bottom:1px solid var(--line);vertical-align:middle;font-size:14px}
#hm.db tr.rr{cursor:pointer}
#hm.db tr.rr:hover td{background:var(--soft)}
#hm.db td b{display:block;font-weight:600}
#hm.db td small{display:block;color:var(--mut);font-size:13px;margin-top:2px}
#hm.db .r{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
#hm.db td.tot{font-weight:700}
#hm.db td.mod{color:var(--mut);text-align:right;white-space:nowrap}
#hm.db .bd{display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:#F3F4F6;color:#4B5563;white-space:nowrap}
#hm.db .bd.env{background:#E0ECFF;color:#1D4ED8}
#hm.db .bd.rel{background:#FDEEDD;color:#92400E}
#hm.db .bd.sig{background:#DCF3E6;color:#166534}
#hm.db .bd.ref{background:#FDE2E2;color:#B91C1C}
#hm.db .dbempty{padding:22px;color:var(--mut);font-size:14px}
#hm.db .dball{display:block;border:0;background:none;color:var(--brand-text);font:600 14px var(--font-ui);padding:16px 22px;cursor:pointer;text-align:left}
#hm.db .side{display:flex;flex-direction:column;gap:22px}
#hm.db .side .dbc{padding:20px}
#hm.db .side h5{font:600 12px var(--font-ui);letter-spacing:.09em;text-transform:uppercase;color:var(--mut);margin:0 0 14px}
#hm.db .rep{display:flex;align-items:center;gap:16px;margin-bottom:16px}
#hm.db .repdoc{flex:none;width:62px;height:80px;border:1px solid var(--line);border-radius:5px;background:#fff;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.08)}
#hm.db .repdoc i{display:block;height:13px;background:#f4ec34}
#hm.db .repdoc u{display:block;height:3px;background:#d1d5db;margin:7px 8px 0;border-radius:2px;text-decoration:none}
#hm.db .rep b{display:block;font-size:17px;font-weight:600}
#hm.db .rep small{color:var(--mut);font-size:14px}
#hm.db .cbtn{width:100%;height:44px;border:0;border-radius:9px;background:var(--chip);color:#fff;font:600 14px var(--font-ui);cursor:pointer}
#hm.db .tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#hm.db .tile{display:flex;flex-direction:column;align-items:flex-start;gap:14px;border:1px solid var(--line);background:var(--card);border-radius:11px;padding:16px;cursor:pointer;color:var(--ink);font:600 14px var(--font-ui);text-align:left}
#hm.db .tile svg{width:20px;height:20px;color:var(--brand-text)}
#hm.db .tile:hover,#hm.db .obtn:hover,#hm.db .chip:not(.on):hover{border-color:var(--ink)}
@media (max-width:1100px){#hm.db .dbgrid{grid-template-columns:1fr}}
@media (max-width:640px){#hm.db .dbnew{padding:18px}#hm.db th:nth-child(4),#hm.db td:nth-child(4){display:none}#hm.db th,#hm.db td{padding-left:14px;padding-right:14px}#hm.db .gbtn{width:100%;justify-content:center}#hm.db .dbsp{display:none}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--chip:#e5e7eb;--chip-text:#111827}:root:not([data-theme="light"]) #hm.db .chip.on,:root:not([data-theme="light"]) #hm.db .tabs button.on,:root:not([data-theme="light"]) #hm.db .cbtn,:root:not([data-theme="light"]) #qtabs button.on{color:#111827}}
:root[data-theme="dark"]{--chip:#e5e7eb;--chip-text:#111827}:root[data-theme="dark"] #hm.db .chip.on,:root[data-theme="dark"] #hm.db .tabs button.on,:root[data-theme="dark"] #hm.db .cbtn,:root[data-theme="dark"] #qtabs button.on{color:#111827}

/* v198 : un seul bouton vert par écran (charte, section 5). Les autres actions deviennent des boutons secondaires. */
body.sbon:not([data-view="own"]) .top .btn.pri,
#ia .btn.pri:is([data-a="pqask"],[data-a="plan"],[data-a="pds"],[data-a="iac"]),
#own .btn.pri:is([data-a="cgauto"],[data-a="om+"]),
#lst .btn.pri:is([data-a="est"],[data-a="new"]),
#nv .btn.pri:is([for="nvimp"],[data-nv="cp"],[data-nv="newq"]),
#bud .btn.pri:is([data-a="bpa"],[data-a="tradd"]),
#pu #pucp.btn.pri{background:var(--surface)!important;color:var(--ink)!important;border:1px solid var(--line-strong)!important;box-shadow:none!important;filter:none!important}
body.sbon:not([data-view="own"]) .top .btn.pri:hover,
#ia .btn.pri:is([data-a="pqask"],[data-a="plan"],[data-a="pds"],[data-a="iac"]):hover,
#own .btn.pri:is([data-a="cgauto"],[data-a="om+"]):hover,
#lst .btn.pri:is([data-a="est"],[data-a="new"]):hover,
#nv .btn.pri:is([for="nvimp"],[data-nv="cp"],[data-nv="newq"]):hover,
#bud .btn.pri:is([data-a="bpa"],[data-a="tradd"]):hover,
#pu #pucp.btn.pri:hover{background:var(--soft)!important}
/* onglets et choix sélectionnés : ardoise, comme les puces du tableau de bord */
.seg button.on:not(.pri){background:var(--chip);border-color:var(--chip);color:var(--chip-text)}

/* Bloc « Nouvelle soumission » déplacé en haut du Générateur IA */
#iabox{margin-bottom:18px;font-family:var(--font-ui);color:var(--ink)}#iabox *{box-sizing:border-box}
#iabox .dbc{background:var(--card);border:1px solid var(--line);border-radius:14px}
#iabox .dbnew{padding:26px 28px 24px;margin-bottom:22px}
#iabox .dbk{color:var(--brand-text);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin:0 0 6px}
#iabox .dbnew h2{font:700 20px/1.2 var(--font-brand);letter-spacing:-.01em;margin:0 0 16px}
#iabox textarea{width:100%;min-height:96px;resize:vertical;border:1px solid var(--line);border-radius:10px;background:var(--bg);padding:14px 16px;font:15px/1.5 var(--font-ui);color:var(--ink)}
#iabox .dbrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}
#iabox .chip{border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:500 14px var(--font-ui);height:38px;padding:0 15px;border-radius:999px;cursor:pointer}
#iabox .chip.on{background:var(--chip);border-color:var(--chip);color:#fff;font-weight:600}
#iabox .segm{display:inline-flex;background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:3px;gap:2px}
#iabox .segm button{border:0;background:none;color:var(--mut);font:500 13px var(--font-ui);padding:8px 14px;border-radius:7px;cursor:pointer}
#iabox .segm button.on{background:var(--card);color:var(--ink);font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.08)}
#iabox .dbact{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:20px;padding-top:18px}
#iabox .obtn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:500 14px var(--font-ui);height:42px;padding:0 16px;border-radius:9px;cursor:pointer}
#iabox .obtn svg{width:16px;height:16px}
#iabox .obtn.rec{border-color:#dc2626;color:#dc2626}
#iabox .dbsp{flex:1}
#iabox .lnk{border:0;background:none;color:var(--ink);text-decoration:underline;text-underline-offset:3px;font:14px var(--font-ui);cursor:pointer;padding:6px}
#iabox .gbtn{display:inline-flex;align-items:center;gap:10px;border:0;background:var(--grn);color:#fff;font:600 15px var(--font-ui);height:46px;padding:0 22px;border-radius:9px;cursor:pointer}
#iabox .gbtn:hover{background:var(--grnd)}
#iabox .gbtn svg{width:17px;height:17px}
#iabox .dbmsg{margin:10px 0 0;font-size:13px;color:#b45309;min-height:1px}
#iabox .dbfiles{font-size:13px;color:var(--mut)}
#iabox .tabs button.on{background:var(--chip);color:#fff;font-weight:600}
#iabox .side .dbc{padding:20px}
#iabox .cbtn{width:100%;height:44px;border:0;border-radius:9px;background:var(--chip);color:#fff;font:600 14px var(--font-ui);cursor:pointer}
#iabox .tile:hover,#iabox .obtn:hover,#iabox .chip:not(.on):hover{border-color:var(--ink)}
#iabox .dbnew{padding:18px}
#iabox .gbtn{width:100%;justify-content:center}
#iabox .dbsp{display:none}
:root:not([data-theme="light"]) #iabox .chip.on,:root:not([data-theme="light"]) #iabox .tabs button.on,:root:not([data-theme="light"]) #iabox .cbtn,:root:not([data-theme="light"]) #qtabs button.on{color:#111827}
:root[data-theme="dark"] #iabox .chip.on,:root[data-theme="dark"] #iabox .tabs button.on,:root[data-theme="dark"] #iabox .cbtn,:root[data-theme="dark"] #qtabs button.on{color:#111827}
@media (max-width:640px){#iabox .dbnew{padding:18px}#iabox .gbtn{width:100%;justify-content:center}#iabox .dbsp{display:none}}
#qtabs button.on,#iabox .chip.on{color:var(--chip-text,#fff)!important}

#iabox.drop .dbnew{outline:3px dashed var(--brand);outline-offset:4px}

#ia #iabox .btn.pri[data-a="plan"],#ia #iabox .btn.pri[data-a="plan"]:hover{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}

/* ===== Thème Fondation La Base : charbon et rouge (couleurs du logo) ===== */
:root{--brand:#B3121B;--brand-hover:#8E0E15;--brand-text:#A3111A;--brand-tint:#FBE9EA;--ink:#16181D;--muted:#4A4F57;--line:#E4E4E0;--line-strong:#9AA0A6;--surface:#FFFFFF;--ground:#F3F3F1;--sidebar:#17191D;--sidebar-text:#D1D5DB;--soft:#F0F0ED;--chip:#2A2E35;--grn:var(--brand);--grnd:var(--brand-hover)}
body{background:var(--ground)}
#sb{background:linear-gradient(180deg,#1B1E23 0%,#141619 100%);border-right:1px solid #262A30}
#sb .sbmark.sblogo{width:44px;height:28px;flex:none;border-radius:5px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.08)}
#sb .sbmark.sblogo img{width:100%;height:100%;object-fit:cover;display:block}
#sb button.on{background:rgba(179,18,27,.18);color:#fff;box-shadow:inset 3px 0 0 var(--brand)}
#sb button:hover{background:rgba(255,255,255,.06)}
.card{border-radius:12px;border-color:var(--line);box-shadow:0 1px 2px rgba(16,18,22,.04),0 2px 8px rgba(16,18,22,.04)}
.card .ch{font-family:var(--font-brand);letter-spacing:-.01em}
.btn{border-radius:8px;font-family:var(--font-ui);font-weight:500}
.btn.pri{background:var(--brand);border-color:var(--brand);color:#fff}
.btn.pri:hover{background:var(--brand-hover);border-color:var(--brand-hover)}
input,select,textarea{border-radius:8px}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(179,18,27,.25);outline-offset:0;border-color:var(--brand)}
#qtabs button.on{background:var(--chip);border-color:var(--chip)}
#iabox .dbnew{border-top:4px solid var(--brand)}
#iabox .dbk{color:var(--brand-text)}
.kpi b{font-family:var(--font-brand)}
::selection{background:rgba(179,18,27,.18)}
#sb .sbbrand{gap:10px}#sb .sbbrand .sewm{font-size:16px}
.page .tot .big,.page .tot [data-r="tot"]{color:#fff!important}

#lbback{display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;font-weight:600}
#lbback[hidden]{display:none!important}
