:root{--primary:#1769e0;--primary2:#38a4ff;--nav1:#0d1830;--nav2:#172c54;--bg:#f2f5fa;--surface:#fff;--surface2:#f7f9fc;--text:#162033;--muted:#6f7d93;--line:#e1e7f0;--green:#11865e;--red:#d33a48;--orange:#d97806;--purple:#7151d8;--shadow:0 12px 34px rgba(29,51,84,.09);--radius:16px}
[data-theme=violet]{--primary:#7548d8;--primary2:#b05cff;--nav1:#22143e;--nav2:#43276e}[data-theme=vert]{--primary:#087f5b;--primary2:#26b887;--nav1:#0b3028;--nav2:#125344}[data-theme=orange]{--primary:#da6512;--primary2:#f5a623;--nav1:#3a1e0d;--nav2:#693714}[data-theme=multi]{--primary:#5b56e8;--primary2:#ee4f9b;--nav1:#151638;--nav2:#3a245f}
[data-dark="1"]{--bg:#0c1220;--surface:#141d2d;--surface2:#192437;--text:#eaf0fa;--muted:#9eabc0;--line:#26344a;--shadow:0 12px 34px rgba(0,0,0,.25)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 Inter,"Segoe UI",Arial,sans-serif;transition:background .25s,color .25s}a{color:inherit}aside{position:fixed;inset:0 auto 0 0;width:256px;background:linear-gradient(175deg,var(--nav1),var(--nav2));color:#fff;padding:21px 15px;display:flex;flex-direction:column;z-index:20;box-shadow:8px 0 30px #08122918}.logo{display:flex;gap:12px;align-items:center;font-weight:850;letter-spacing:.9px;padding:0 8px 22px}.logo img{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:13px;padding:3px;box-shadow:0 4px 18px #0003}.logo small{display:block;font-size:9px;color:#acbdd8;margin-top:2px;letter-spacing:.5px}nav{display:grid;gap:4px;overflow:auto}nav a{display:flex;align-items:center;gap:10px;color:#c8d3e6;text-decoration:none;padding:10px 12px;border-radius:10px;transition:.2s}nav a i{display:grid;place-items:center;width:23px;font-style:normal;font-size:17px}nav a:hover,nav a.active{background:#ffffff17;color:#fff;transform:translateX(2px)}nav a.active{box-shadow:inset 3px 0 var(--primary2)}.userbox{margin-top:auto;border-top:1px solid #ffffff20;padding:16px 7px 0;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,var(--primary),var(--primary2))}.userbox strong,.userbox small{display:block}.userbox small{color:#aebbd0;font-size:10px}.userbox>a{text-decoration:none;color:#bdd3f5;font-size:20px}.content{margin-left:256px;padding:25px 31px;max-width:1900px;min-height:100vh}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px}h1,h2,p{margin-top:0}h1{font-size:25px;margin-bottom:3px;letter-spacing:-.4px}h2{font-size:18px;margin-bottom:6px}header p,.muted{color:var(--muted)}.header-tools,.toolbar{display:flex;align-items:center;gap:10px}.theme-picker{display:flex;gap:6px;padding:7px 9px;background:var(--surface);border:1px solid var(--line);border-radius:25px;box-shadow:var(--shadow)}.dot{width:17px;height:17px;padding:0;border:2px solid transparent;border-radius:50%}.dot.selected{outline:2px solid var(--text);outline-offset:2px}.dot.blue{background:#1769e0}.dot.purple{background:#7548d8}.dot.green{background:#07815b}.dot.orange{background:#e06b14}.dot.multi{background:conic-gradient(#1769e0,#8d4cdb,#ed4b91,#f3a21b,#16a36d,#1769e0)}.icon-btn{width:39px;height:39px;padding:0;border-radius:50%;background:var(--surface);color:var(--text);border:1px solid var(--line);font-size:19px}.live{background:#e3f7ef;color:var(--green);padding:8px 12px;border-radius:20px;font-weight:750;white-space:nowrap}.live i{display:inline-block;width:8px;height:8px;background:#22b882;border-radius:50%;margin-right:6px;box-shadow:0 0 0 5px #22b88220}.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--primary),var(--primary2));color:#fff;padding:25px 29px;border-radius:20px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 15px 38px color-mix(in srgb,var(--primary) 28%,transparent)}[data-theme=multi] .hero,[data-theme=multi] button:not(.dot):not(.icon-btn),[data-theme=multi] .btn:not(.secondary):not(.danger):not(.light){background:linear-gradient(120deg,#426ee9,#7950d8 45%,#ed4e98)}.hero:after{content:"";position:absolute;width:240px;height:240px;border:50px solid #ffffff12;border-radius:50%;right:11%;top:-120px}.hero h2{font-size:27px;margin:4px 0}.hero p{margin:0;opacity:.85}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:850}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:16px}.cards article,.panel,.status{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.cards article{padding:18px;display:flex;gap:14px;align-items:center}.card-icon{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;font-size:20px;background:#e9efff;color:#285fd5}.card-icon.green{background:#e3f7ef;color:var(--green)}.card-icon.orange{background:#fff0dc;color:var(--orange)}.card-icon.purple{background:#eee9ff;color:var(--purple)}.cards small{display:block;color:var(--muted);margin-bottom:3px}.cards b{font-size:22px}.status-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:15px 0}.status{padding:14px 15px;text-decoration:none;border-top:3px solid;transition:.2s}.status:hover{transform:translateY(-3px)}.status b{font-size:22px;display:block}.status span{color:var(--muted)}.status em{display:block;font-size:10px;font-style:normal;color:var(--primary);margin-top:6px}.status.negative{border-color:var(--red)}.status.rupture{border-color:#7b2331}.status.critical{border-color:var(--orange)}.status.high{border-color:var(--purple)}.status.ok{border-color:var(--green)}.panel{padding:20px;margin-top:17px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-title h2{margin-bottom:2px}.panel-title p{margin-bottom:0}.table-wrap{overflow:auto;margin-top:14px;max-height:66vh;border-radius:10px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;background:var(--surface)}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);background:var(--surface2);position:sticky;top:0;padding:11px;border-bottom:1px solid var(--line);z-index:1}td{padding:10px 11px;border-bottom:1px solid var(--line);white-space:nowrap}tbody tr:hover{background:color-mix(in srgb,var(--primary) 4%,var(--surface))}.num{text-align:right;font-variant-numeric:tabular-nums}.strong{font-weight:800}.sub{display:block;color:var(--muted);font-size:10px}.badge{display:inline-block;border-radius:20px;padding:5px 9px;font-size:9px;font-weight:850;letter-spacing:.3px;background:var(--surface2)}.badge.negatif{background:#fde7e9;color:#b82231}.badge.rupture{background:#f2e7ea;color:#6f1d2b}.badge.seuil_critique,.badge.date_invalide,.badge.date_suspecte,.badge.date_manquante,.badge.tonnage_invalide,.badge.a_verifier{background:#fff0d9;color:#a25600}.badge.stock_eleve{background:#eee9ff;color:#5f3dc4}.badge.disponible,.badge.ok{background:#e5f7ef;color:#087852}.badge.role,.badge.auto,.badge.manuel{background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary)}.form-panel{max-width:1050px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.quick-form{display:grid;grid-template-columns:repeat(4,1fr) auto auto;gap:12px;align-items:end;margin:18px 0;padding:16px;background:var(--surface2);border:1px solid var(--line);border-radius:13px}.user-form{grid-template-columns:repeat(4,1fr);}.user-form button{align-self:end}label{display:grid;gap:6px;font-weight:650;color:var(--muted)}.span2{grid-column:span 2}input,select,textarea{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:9px;padding:10px 11px;font:inherit}textarea{min-height:78px;resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid color-mix(in srgb,var(--primary) 16%,transparent);border-color:var(--primary)}button,.btn{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:9px;padding:10px 16px;background:var(--primary);color:#fff;font-weight:750;cursor:pointer;text-decoration:none;font:inherit}.btn.secondary{background:var(--surface2);color:var(--text);border:1px solid var(--line)}.btn.danger,.danger{background:var(--red);color:#fff}.btn.light{background:#fff;color:var(--primary);position:relative;z-index:1}.actions{text-align:right;display:flex;justify-content:flex-end;gap:8px}.inline{display:inline}.row-actions{display:flex;gap:6px}.mini{width:31px;height:31px;padding:0;border-radius:8px;display:inline-grid;place-items:center;text-decoration:none;font-size:15px}.mini.edit{color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.mini.delete{background:#fde7e9;color:#b82231}.mini-add{padding:7px 11px}.actions-col{width:85px}.check{display:flex;flex-direction:row;align-items:center;gap:7px}.check input{width:auto}.search{max-width:280px}.toolbar form{display:flex;gap:7px}.alert{border-radius:10px;padding:12px 14px;background:#e5f7ef;color:#087852;margin-bottom:15px;border:1px solid #bce9d5}.alert.danger{background:#fde7e9;color:#b82231;border-color:#f5c8ce}.split{display:grid;grid-template-columns:330px 1fr;gap:17px}.split .panel{margin-top:0}.list-search{max-width:none;margin-top:15px}.entity-list{display:grid;margin-top:10px;max-height:70vh;overflow:auto}.entity-list a{padding:10px;border-bottom:1px solid var(--line);text-decoration:none;border-radius:8px}.entity-list a:hover,.entity-list a.active{background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)}.entity-list span,.entity-list small{display:block}.entity-list small{color:var(--muted);font-size:10px}.empty-state{min-height:380px;display:grid;place-content:center;text-align:center;color:var(--muted)}.empty-state b{font-size:45px;color:var(--primary)}footer{display:flex;align-items:center;gap:10px;margin:28px 0 0;padding:17px;color:var(--muted);border-top:1px solid var(--line);font-size:11px}footer img{width:40px;height:40px;object-fit:contain;background:#fff;border-radius:8px}footer strong,footer span{display:block}
.login-body{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--primary2) 40%,transparent),transparent 34%),linear-gradient(140deg,var(--nav1),var(--nav2));}.login-layout{width:min(1020px,95vw);display:grid;grid-template-columns:1.15fr .85fr;min-height:610px;border-radius:26px;overflow:hidden;box-shadow:0 28px 80px #0007}.login-brand{padding:58px;color:#fff;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 72%,transparent),color-mix(in srgb,var(--primary2) 40%,transparent));backdrop-filter:blur(10px)}.login-brand img{width:155px;max-height:125px;object-fit:contain;background:#fff;border-radius:20px;padding:8px;margin-bottom:30px}.login-brand h1{font-size:36px;max-width:500px;margin:8px 0 15px}.login-brand>p{font-size:17px;opacity:.86;max-width:500px}.company-lines{display:grid;gap:8px;margin-top:35px;color:#ffffffc9}.login-card{width:min(430px,94vw);background:var(--surface);padding:48px 38px;display:flex;flex-direction:column;justify-content:center}.login-card .login-top{display:flex;justify-content:space-between;align-items:center}.login-top img{width:92px;height:75px;object-fit:contain}.login-card h1{font-size:28px;margin:22px 0 4px}.login-card form{display:grid;gap:16px;margin-top:24px}.login-card button{margin-top:4px}.secure-note{text-align:center;color:var(--muted);margin-top:24px}
@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}.status-grid{grid-template-columns:repeat(3,1fr)}.split{grid-template-columns:280px 1fr}.quick-form{grid-template-columns:repeat(2,1fr)}}@media(max-width:820px){aside{position:static;width:auto;min-height:auto}nav{grid-template-columns:repeat(2,1fr)}.userbox{margin-top:15px}.content{margin:0;padding:18px}.login-layout{grid-template-columns:1fr}.login-brand{display:none}.login-card{min-height:580px;margin:auto}.header-tools{flex-wrap:wrap;justify-content:flex-end}.split{grid-template-columns:1fr}.list-panel{max-height:400px}.detail-panel{margin-top:0!important}}@media(max-width:600px){.cards,.status-grid,.form-grid,.quick-form{grid-template-columns:1fr}.span2{grid-column:auto}nav{grid-template-columns:1fr 1fr}.content{padding:12px}.panel{padding:13px}header{align-items:flex-start}.theme-picker{display:none}.live{display:none}.hero{display:block}.hero .btn{margin-top:16px}.toolbar{align-items:stretch;flex-direction:column}.toolbar form{display:flex}.panel-title{align-items:flex-start}.table-wrap{max-height:none}.login-card{padding:30px 24px}}

/* Visuels minerais et logistique minière */
.hero{background-image:linear-gradient(90deg,color-mix(in srgb,var(--primary) 92%,#07152e),color-mix(in srgb,var(--primary) 58%,transparent) 52%,transparent 82%),url(hero_minerais.png);background-size:cover;background-position:center;padding:32px 29px;min-height:168px}
[data-theme=multi] .hero{background-image:linear-gradient(90deg,rgba(36,37,105,.95),rgba(118,59,153,.54) 55%,transparent 84%),url(hero_minerais.png)}
.hero>div{position:relative;z-index:1;max-width:580px}.hero p{opacity:.92}
.login-brand{background-image:linear-gradient(110deg,rgba(7,20,48,.94),rgba(18,43,88,.76)),url(hero_minerais.png);background-size:cover;background-position:center}

/* Recherche intégrée aux listes déroulantes */
.searchable-select{display:block;position:relative;width:100%}.searchable-source{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}
.searchable-select .select-search{padding-right:42px;background-image:linear-gradient(45deg,transparent 48%,var(--muted) 49%,var(--muted) 55%,transparent 56%);background-size:8px 8px;background-repeat:no-repeat;background-position:calc(100% - 17px) 15px;cursor:text}
.searchable-select.open .select-search{border-color:var(--primary);outline:3px solid color-mix(in srgb,var(--primary) 16%,transparent);background-image:linear-gradient(135deg,transparent 48%,var(--primary) 49%,var(--primary) 55%,transparent 56%)}
.searchable-select .select-search::placeholder{color:var(--muted)}
.select-dropdown{display:none;position:absolute;z-index:50;top:calc(100% + 4px);left:0;right:0;max-height:320px;overflow:auto;padding:5px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 16px 40px #0003}.searchable-select.open .select-dropdown{display:block}.select-option{display:block;width:100%;padding:9px 10px;text-align:left;background:transparent!important;color:var(--text)!important;border-radius:7px;font-weight:500}.select-option:hover,.select-option:focus,.select-option.selected{background:color-mix(in srgb,var(--primary) 12%,var(--surface))!important;color:var(--primary)!important;outline:0}.select-empty{display:block;padding:12px;color:var(--muted);text-align:center}
.form-actions-top{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;padding:0 0 13px;margin-bottom:2px;border-bottom:1px solid var(--line)}
.quick-form .form-actions-top{grid-column:1/-1}
.form-actions-top .save-top{min-width:190px}
.manifest-filter-form{display:grid;grid-template-columns:minmax(165px,220px) minmax(165px,220px) minmax(260px,1fr) auto auto;gap:12px;align-items:end;margin-top:18px;padding:15px;background:var(--surface2);border:1px solid var(--line);border-radius:13px}.manifest-filter-form .search{max-width:none}.empty-list{text-align:center!important;color:var(--muted);padding:28px!important}.manifestes-title{align-items:flex-start}

@media(max-width:600px){
  .searchable-select{width:100%}
  .form-actions-top{justify-content:stretch}
  .form-actions-top>*{flex:1}
  .form-actions-top .save-top{min-width:0}
}
@media(max-width:900px){.manifest-filter-form{grid-template-columns:1fr 1fr}.manifest-filter-form .manifest-search-label{grid-column:1/-1}}
@media(max-width:600px){.manifest-filter-form{grid-template-columns:1fr}.manifest-filter-form .manifest-search-label{grid-column:auto}.manifest-filter-form .btn,.manifest-filter-form button{width:100%}}

/* Rapports, exports et signataires */
.print-head{display:flex;align-items:center;gap:16px;padding:18px 22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.print-head img{width:72px;height:72px;object-fit:contain}.print-head strong,.print-head span{color:var(--muted)}.print-head h2{margin:3px 0;text-transform:uppercase}
.report-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:13px;margin-top:17px}.report-actions{grid-column:1/-1;display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.btn.export{background:var(--green)}.secondary-print{background:var(--surface2);color:var(--text);border:1px solid var(--line)}
.period-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-top:16px}.period-form label{min-width:190px}.dashboard-print-period{display:none;text-align:center;font-weight:750;margin:12px 0}.company-detail-link{color:var(--primary);text-decoration:none}.company-detail-link:hover{text-decoration:underline}.company-details{scroll-margin-top:15px}
.dashboard-print-first-page{display:none}.dashboard-print-head{display:flex;align-items:center;gap:16px;border-bottom:2px solid #1f2937;padding-bottom:12px}.dashboard-print-head img{width:70px;height:70px;object-fit:contain}.dashboard-print-head strong,.dashboard-print-head span{display:block;color:#4b5563}.dashboard-print-head h2{margin:2px 0;font-size:18px}.dashboard-print-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.dashboard-print-totals article{padding:14px;text-align:center;border:1px solid #aeb7c4;border-radius:8px}.dashboard-print-totals small{display:block;text-transform:uppercase;letter-spacing:.7px;color:#536174}.dashboard-print-totals strong{display:block;margin-top:4px;font-size:21px;font-variant-numeric:tabular-nums}.dashboard-print-totals .negative-value{color:#b42332}.dashboard-print-chart{border:1px solid #bdc5d0;border-radius:8px;padding:12px 16px}.dashboard-print-chart h3{text-align:center;margin:0 0 4px;font-size:15px}.dashboard-print-chart svg{display:block;width:100%;height:270px}.chart-axis{stroke:#4b5563;stroke-width:2}.chart-entry{fill:#13845f}.chart-exit{fill:#df751c}.chart-balance{fill:#6f4bd8}.chart-value{font-size:14px;font-weight:800;fill:#111827}.chart-label{font-size:14px;font-weight:700;fill:#374151}.dashboard-print-note{text-align:center;margin:11px 0 0;color:#596579;font-size:10px}
.dashboard-clickable-cards article{cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}.dashboard-clickable-cards article:hover,.dashboard-clickable-cards article:focus{transform:translateY(-3px);border-color:color-mix(in srgb,var(--primary) 45%,var(--line));box-shadow:0 16px 38px color-mix(in srgb,var(--primary) 15%,transparent);outline:0}.dashboard-clickable-cards em{display:block;margin-top:5px;color:var(--primary);font-size:10px;font-style:normal}.status{width:100%;text-align:left;color:var(--text);cursor:pointer;font-family:inherit}.status:focus{outline:3px solid color-mix(in srgb,var(--primary) 20%,transparent)}
body.modal-open{overflow:hidden}.dashboard-modal{display:none;position:fixed;inset:0;z-index:100}.dashboard-modal.open{display:grid;place-items:center;padding:24px}.dashboard-modal-backdrop{position:absolute;inset:0;background:rgba(4,11,25,.72);backdrop-filter:blur(4px)}.dashboard-modal-dialog{position:relative;width:min(1080px,96vw);max-height:90vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 90px #0008;overflow:hidden}.dashboard-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line);margin:0}.dashboard-modal-header h2{margin:0 0 3px}.dashboard-modal-header p{margin:0;color:var(--muted)}.dashboard-modal-close{width:40px;height:40px;padding:0;border-radius:50%;background:var(--surface2);color:var(--text);border:1px solid var(--line);font-size:25px;line-height:1}.dashboard-modal-summary{display:flex;justify-content:space-between;gap:12px;padding:12px 22px;background:var(--surface2);color:var(--muted)}.dashboard-modal-summary strong{color:var(--text)}.dashboard-modal-dialog .table-wrap{margin:0;border:0;border-radius:0;max-height:none;flex:1}.dashboard-modal-footer{display:flex;justify-content:flex-end;margin:0;padding:13px 22px;border-top:1px solid var(--line)}
@media(max-width:600px){.dashboard-modal.open{padding:8px}.dashboard-modal-dialog{width:100%;max-height:96vh;border-radius:14px}.dashboard-modal-header,.dashboard-modal-summary,.dashboard-modal-footer{padding-left:13px;padding-right:13px}.dashboard-modal-summary{display:block}.dashboard-modal-summary span{display:block;margin-top:3px}}
.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.report-grid .panel{min-width:0}.report-grid .table-wrap{max-height:520px}.compact{max-height:430px}.text-danger{color:var(--red)!important}.report-signatures{margin-top:28px;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.report-signatures>p{text-align:right}.report-signatures>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;direction:rtl}.report-signatures article{text-align:center;display:flex;flex-direction:column;min-height:140px;direction:ltr}.report-signatures .signataire-nom{min-height:42px;text-decoration:underline}.report-signatures .signataire-fonction{min-height:42px}.signature-space{flex:1}.signature-form{max-width:1000px}
@media(max-width:1100px){.report-filter-grid{grid-template-columns:repeat(2,1fr)}.report-grid{grid-template-columns:1fr}}
@media(max-width:600px){.report-filter-grid{grid-template-columns:1fr}.report-actions{justify-content:stretch}.report-actions>*{flex:1}.report-signatures>div{grid-template-columns:1fr}.print-head img{width:54px;height:54px}}
@media print{@page{size:A4 landscape;margin:10mm}body{background:#fff;color:#111;font-size:10px}aside,.no-print,main>header,main>footer,.form-actions-top{display:none!important}.content{margin:0;padding:0;max-width:none}.dashboard-print-period{display:block}.hero{min-height:auto;background:#fff!important;color:#111;padding:10px;border:0;border-bottom:2px solid #222;border-radius:0;box-shadow:none}.print-head{display:flex;box-shadow:none;border:0;border-bottom:2px solid #222;border-radius:0;padding:0 0 10px}.print-head img{width:58px;height:58px}.cards{grid-template-columns:repeat(4,1fr);gap:6px}.cards article,.panel,.report-signatures{box-shadow:none;border:1px solid #bbb;border-radius:5px;break-inside:avoid}.cards article{padding:8px}.cards b{font-size:15px}.report-grid{grid-template-columns:1fr 1fr;gap:7px}.panel{padding:9px;margin-top:8px}.table-wrap{overflow:visible;max-height:none!important;border:0}th{position:static;background:#eee;color:#111}th,td{padding:4px 5px;white-space:normal}.report-signatures{margin-top:10px}.report-signatures>div{grid-template-columns:repeat(3,minmax(0,1fr))!important}.report-signatures article{min-height:95px}.badge{border:1px solid #999;background:#fff!important;color:#111!important}.print-head h2{font-size:16px}}
@media print{body[data-print-target] .report-printable,body[data-print-target] .report-cards{display:none!important}body[data-print-target="report-societes"] #report-societes,body[data-print-target="report-mensuel"] #report-mensuel,body[data-print-target="report-details"] #report-details{display:block!important}}

/* Numérotation et personnalisation des colonnes */
.row-number-column{width:54px;min-width:54px;text-align:center!important;font-weight:800;color:var(--muted);font-variant-numeric:tabular-nums}.column-hidden{display:none!important}.table-column-tools{position:relative;display:flex;justify-content:flex-end;margin:13px 0 -7px}.columns-toggle{padding:7px 12px;font-size:12px}.columns-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:45;width:min(390px,92vw);padding:13px;background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:0 18px 50px #0004}.columns-menu-title{display:grid;gap:2px;padding:2px 3px 10px;border-bottom:1px solid var(--line)}.columns-menu-title small{color:var(--muted)}.columns-list{display:grid;gap:5px;max-height:330px;overflow:auto;padding:9px 0}.column-option{display:grid;grid-template-columns:24px 1fr 31px 31px;align-items:center;gap:5px;padding:6px;background:var(--surface2);border:1px solid var(--line);border-radius:9px}.column-option.dragging{opacity:.45}.column-option label{display:flex;grid-template-columns:none;align-items:center;gap:8px;color:var(--text);min-width:0}.column-option label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-option input{width:auto}.column-option button{width:31px;height:29px;padding:0;background:var(--surface);color:var(--text);border:1px solid var(--line)}.drag-handle{cursor:grab;text-align:center;color:var(--muted);font-weight:900}.columns-reset{width:100%;padding:8px;background:var(--surface2);color:var(--text);border:1px solid var(--line)}

@media print{
  @page{size:A4 landscape;margin:12mm 10mm 16mm;@bottom-center{content:"Page " counter(page) " sur " counter(pages);font-size:9pt;color:#555}}
  thead{display:table-header-group}tfoot{display:table-footer-group}tr{break-inside:avoid;page-break-inside:avoid}.row-number-column{width:9mm;min-width:9mm}.column-hidden{display:none!important}
  body[data-page="dashboard"] .hero,body[data-page="dashboard"] .dashboard-print-period,body[data-page="dashboard"] .dashboard-clickable-cards,body[data-page="dashboard"] .status-grid,body[data-page="dashboard"] .dashboard-modal{display:none!important}
  body[data-page="dashboard"] .dashboard-print-first-page{display:block!important;min-height:170mm;break-after:page;page-break-after:always}
  body[data-page="dashboard"] #situation{margin-top:0}
}
