/* ML UREL — Thème global V7.12 — 2026-10-05
   Harmonisation graphique globale uniquement. Aucun comportement métier. */
:root{
  --mlg-blue:#0d5aa7;
  --mlg-blue-strong:#0b4b91;
  --mlg-blue-active:#0875d8;
  --mlg-navy:#0b2f63;
  --mlg-text:#17385f;
  --mlg-muted:#667b96;
  --mlg-bg:#f5f7fb;
  --mlg-surface:#ffffff;
  --mlg-border:#d8e3ef;
  --mlg-border-soft:#e6ecf4;
  --mlg-success:#159464;
  --mlg-danger:#ea4335;
  --mlg-warning:#e9952d;
  --mlg-shadow:0 8px 24px rgba(18,53,91,.055);
  --mlg-shadow-soft:0 2px 8px rgba(18,53,91,.04);
  --mlg-radius:14px;
  --mlg-radius-sm:9px;
}

html,body,#root,#app{background:var(--mlg-bg)!important;color:var(--mlg-text)!important}
body,#app,.topnav-layout{font-family:"IBM Plex Sans","Segoe UI",Arial,sans-serif!important}

/* ===== En-tête ===== */
.top-app-header{
  min-height:68px!important;height:68px!important;background:#fff!important;
  border-bottom:1px solid var(--mlg-border-soft)!important;
  box-shadow:none!important;padding:0 28px!important;gap:18px!important;
}
.top-brand{min-width:180px!important;gap:11px!important;padding-right:20px!important;border-right:1px solid #dce5ef!important}
.top-brand img{height:48px!important;width:auto!important;max-width:82px!important;object-fit:contain!important}
.top-brand strong{font-size:17px!important;font-weight:800!important;color:var(--mlg-navy)!important;letter-spacing:-.02em!important}
.top-brand span{font-size:9px!important;color:var(--mlg-muted)!important;margin-top:4px!important}
.top-title-block{min-width:260px!important;padding-left:0!important}
.top-title-block strong{font-size:18px!important;font-weight:800!important;color:var(--mlg-navy)!important;letter-spacing:-.02em!important}
.top-title-block span{font-size:9px!important;color:var(--mlg-muted)!important;margin-top:5px!important}
.top-actions{gap:8px!important}
.top-action-btn,.top-logout-btn{width:36px!important;height:36px!important;border-radius:10px!important;background:#fff!important;border:1px solid var(--mlg-border)!important;color:#0d5ead!important;box-shadow:none!important}
.top-action-btn:hover,.top-logout-btn:hover{background:#f4f8fd!important;border-color:#b9cde5!important}
.top-user-box{background:transparent!important;border:0!important;border-radius:0!important;padding:0 6px!important;gap:8px!important;color:var(--mlg-text)!important}
.top-user-box .ubadge{width:35px!important;height:35px!important;border-radius:10px!important;background:#edf4fc!important;border:1px solid #d6e2f0!important;color:#1859a1!important}
.top-user-box strong{font-size:10px!important;color:#17365e!important}.top-user-box span{font-size:8px!important;color:#6c7e95!important}

/* Grand logo institutionnel déjà positionné par le thème V7 : on garde son centrage */
.ml-header-center-logo,.top-center-brand,.top-maroc-logo{filter:none!important}

/* ===== Navigation ===== */
.top-main-nav{height:42px!important;min-height:42px!important;background:var(--mlg-blue-strong)!important;border:0!important;padding-left:14px!important;box-shadow:none!important}
.top-nav-tab,.top-direct-menu{height:42px!important;padding:0 22px!important;border:0!important;border-right:1px solid rgba(255,255,255,.12)!important;border-radius:0!important;background:transparent!important;color:#fff!important;font-size:10.5px!important;font-weight:750!important;gap:8px!important}
.top-nav-tab:hover,.top-direct-menu:hover{background:rgba(255,255,255,.08)!important}
.top-nav-tab.active,.top-nav-tab.expanded,.top-direct-menu.active{background:var(--mlg-blue-active)!important;color:#fff!important}
.top-sub-nav{height:38px!important;min-height:38px!important;background:#fff!important;border-bottom:1px solid var(--mlg-border)!important;box-shadow:0 2px 5px rgba(23,54,92,.035)!important}
.top-sub-nav-inner{padding:0 25px!important;gap:4px!important}
.top-sub-nav a{height:38px!important;padding:0 12px!important;color:#183b66!important;font-size:9.5px!important;font-weight:600!important;border-radius:0!important;position:relative!important}
.top-sub-nav a.active{color:#086dd8!important;background:transparent!important}
.top-sub-nav a.active:after{content:""!important;position:absolute!important;left:8px!important;right:8px!important;bottom:0!important;height:2px!important;border-radius:2px!important;background:#1475ed!important}

/* ===== Barre contexte globale ===== */
.top-context-strip{
  width:min(1600px,calc(100% - 48px))!important;min-height:56px!important;height:auto!important;
  margin:12px auto 0!important;padding:7px 13px!important;background:#fff!important;
  border:1px solid var(--mlg-border)!important;border-radius:13px!important;
  box-shadow:var(--mlg-shadow-soft)!important;color:var(--mlg-muted)!important;gap:14px!important;
}
.top-context-strip>span{font-size:9px!important;white-space:nowrap!important}.top-context-strip>span b{font-weight:500!important;color:#60738e!important}
.top-sync-state{margin-left:auto!important;color:#16865d!important}.top-sync-state i{background:#159464!important}
.ml-global-context-controls{gap:9px!important;align-items:flex-end!important}
.ml-global-context-controls label>span,.ml-global-context-urel>span{font-size:8px!important;font-weight:500!important;color:#60738e!important;margin-bottom:3px!important}
.ml-global-context-controls select,.ml-global-context-urel select{
  height:34px!important;min-height:34px!important;border:1px solid #cdd9e8!important;border-radius:8px!important;
  background:#fff!important;color:#173963!important;padding:0 28px 0 11px!important;font-size:10px!important;font-weight:650!important;
  box-shadow:none!important;outline:none!important;
}
.ml-global-context-controls select:focus,.ml-global-context-urel select:focus{border-color:#6faaf2!important;box-shadow:0 0 0 3px rgba(18,111,224,.08)!important}
.ml-global-context-refresh{width:34px!important;height:34px!important;border-radius:8px!important;border:1px solid var(--mlg-border)!important;background:#fff!important;color:#1167cc!important;font-size:16px!important}
.ml-global-context-refresh:hover{background:#f5f9fe!important}

/* ===== Zone de contenu ===== */
.top-content,.content{background:var(--mlg-bg)!important}
.top-content{width:min(1600px,calc(100% - 48px))!important;max-width:1600px!important;margin:0 auto!important;padding:20px 0 32px!important}
.mhdr,.price-dashboard-main-head,.dg-v5-heading,.pc-dg-head{margin-bottom:16px!important}
.mtitle,.fe-main-title,.dg-v5-heading h1,.price-dashboard-main-head h1,.pilotage-page h1,.ops-page h1{color:var(--mlg-navy)!important;font-weight:800!important;letter-spacing:-.025em!important}
.mtitle{font-size:22px!important}.msub{font-size:10px!important;color:var(--mlg-muted)!important;margin-top:5px!important}

/* ===== Surfaces / cartes ===== */
.card,.kcard,.pilotage-card,.pilotage-table-card,.pilotage-kpi,.dg-global-panel,.dg-exec-card,.dg-overview-panel,.dg-monography-card,.dg-v5-chart,.dg-v5-monographie,.price-dash-panel,.price-category-mini,.price-category-analysis-table-panel,.ops-form-card,.ru-kpi,.pc-dg-panel{
  background:#fff!important;border:1px solid var(--mlg-border)!important;border-radius:var(--mlg-radius)!important;box-shadow:var(--mlg-shadow)!important;
}
.card,.kcard{overflow:hidden!important}
.ch,.pilotage-card-head,.dg-global-panel-head{background:#fff!important;border-bottom:1px solid var(--mlg-border-soft)!important}
.ct,.pilotage-card-title,.dg-card-title,.dg-global-panel-head strong,.panel-title{color:var(--mlg-navy)!important;font-weight:800!important}
.cb{padding:15px!important}

/* KPI — conserver les couleurs sémantiques, harmoniser la structure */
.kgrid,.pilotage-kpis,.ru-kpi-grid,.dg-synth-kpi-grid{gap:12px!important}
.kcard{border-left:1px solid var(--mlg-border)!important;padding:15px!important}
.klbl,.pilotage-kpi-label,.ru-kpi-title{color:#16365f!important;font-weight:750!important}
.kval,.pilotage-kpi-value,.ru-kpi-value-row strong{color:#0b4588!important;font-weight:850!important;letter-spacing:-.03em!important}
.pilotage-kpi{border-radius:14px!important;background:#fff!important;min-height:116px!important;padding:14px!important}
.pilotage-kpi:nth-child(n){background:#fff!important;border-color:var(--mlg-border)!important}
.pilotage-kpi-icon,.dg-card-icon,.price-dash-kpi-icon,.ru-kpi-icon{background:#edf5ff!important;color:#0f72e8!important;border:0!important;border-radius:11px!important}

/* ===== Contrôles / formulaires ===== */
select,input[type=text],input[type=number],input[type=date],input[type=password],input[type=time],input[type=email],textarea,
.pilotage-field input,.pilotage-field select,.ops-page input,.ops-page select,.ops-page textarea{
  border:1px solid #cdd9e8!important;border-radius:var(--mlg-radius-sm)!important;background:#fff!important;color:#173963!important;
  box-shadow:none!important;outline:none!important;
}
select:focus,input:focus,textarea:focus,.pilotage-field input:focus,.pilotage-field select:focus{border-color:#6faaf2!important;box-shadow:0 0 0 3px rgba(18,111,224,.08)!important}
.flbl,.pilotage-field label,.ops-page label{color:#586e8a!important;font-weight:700!important}
.cbar,.pilotage-toolbar,.ru-comparison-controls,.price-main-filter-row,.dg-global-filters{
  background:#fff!important;border:1px solid var(--mlg-border)!important;border-radius:12px!important;box-shadow:var(--mlg-shadow-soft)!important;
}

/* ===== Boutons ===== */
.btn,.pilotage-add,.pilotage-export,.pilotage-clear-filters,.dg-refresh-btn{border-radius:8px!important;font-weight:700!important;box-shadow:none!important}
.btn-p,.pilotage-add{background:#0f70e6!important;border-color:#0f70e6!important;color:#fff!important}.btn-p:hover,.pilotage-add:hover{background:#095fc8!important}
.btn-s,.pilotage-export,.pilotage-clear-filters{background:#fff!important;border:1px solid #cdd9e8!important;color:#17365e!important}.btn-s:hover,.pilotage-export:hover,.pilotage-clear-filters:hover{background:#f5f8fc!important}
.btn-d{background:#e44b43!important}.btn-w{background:#e79729!important}

/* ===== Tableaux ===== */
.twrap,.pilotage-table-card,.price-dash-table-panel,.price-category-analysis-table-panel,.dg-global-table-wrap,.dg-performance-table-wrap{
  border:1px solid var(--mlg-border)!important;border-radius:13px!important;background:#fff!important;box-shadow:var(--mlg-shadow-soft)!important;overflow:hidden!important;
}
.twrap{overflow:auto!important}
table,.pilotage-table,.dg-performance-table,.price-category-analysis-table{background:#fff!important;color:#17365e!important}
thead th,.pilotage-table th,.dg-performance-table th,.price-category-analysis-table th{
  background:#f8fafc!important;color:#536985!important;font-weight:800!important;border-bottom:1px solid var(--mlg-border)!important;
}
tbody td,.pilotage-table td,.dg-performance-table td{border-bottom:1px solid #e6edf5!important}
tbody tr:hover td,.pilotage-table tbody tr:hover td{background:#f8fbff!important}

/* Badges IA : lait bleu / viande orange */
.pilotage-pill.lait,.pilotage-pill.is-lait,.badge.lait,[data-type="lait"] .pilotage-pill{background:#e7f1ff!important;color:#0c67d6!important;border-color:#c9dffc!important}
.pilotage-pill.viande,.pilotage-pill.is-viande,.badge.viande,[data-type="viande"] .pilotage-pill{background:#fff1e6!important;color:#d96a12!important;border-color:#f4ceb0!important}

/* ===== Onglets ===== */
.fe-tab,.pilotage-table-tab,.pilotage-view-tab{border-radius:8px!important;border:1px solid #d5dfec!important;background:#fff!important;color:#244364!important}
.fe-tab.on,.pilotage-table-tab.active,.pilotage-view-tab.active{background:#0f70e6!important;border-color:#0f70e6!important;color:#fff!important}

/* ===== Drawer / Canvas / Modales ===== */
.pilotage-overlay{background:rgba(15,38,70,.10)!important;backdrop-filter:blur(1px)!important}
.pilotage-drawer{width:min(980px,52vw)!important;max-width:96vw!important;background:#fff!important;border-left:1px solid var(--mlg-border)!important;box-shadow:-14px 0 36px rgba(12,42,77,.14)!important}
.pilotage-drawer-head{background:#fff!important;border-bottom:1px solid var(--mlg-border-soft)!important;padding:17px 20px!important}
.pilotage-drawer-title{font-size:18px!important;color:var(--mlg-navy)!important;font-weight:800!important}.pilotage-drawer-sub{font-size:10px!important;color:var(--mlg-muted)!important}
.pilotage-drawer-body{padding:16px 20px!important;background:#fbfcfe!important}.pilotage-drawer-footer{padding:13px 18px!important;border-top:1px solid var(--mlg-border)!important;background:#fff!important}
.pilotage-form-section{background:#fff!important;border:1px solid var(--mlg-border)!important;border-radius:13px!important;padding:14px!important;box-shadow:0 2px 7px rgba(19,52,88,.03)!important}
.export-modal,.mfa-card{border-radius:16px!important;border:1px solid var(--mlg-border)!important;box-shadow:0 24px 60px rgba(12,42,77,.20)!important}
.export-modal-header{border-bottom:1px solid var(--mlg-border-soft)!important}.export-modal-footer{border-top:1px solid var(--mlg-border-soft)!important}

/* ===== Alertes / états ===== */
.badge,.pilotage-period-ok,.ru-period-sync-state{border-radius:999px!important;font-weight:750!important}
.info{background:#eef5ff!important;border-color:#cadffc!important;color:#155ba4!important}.alertbox{border-radius:11px!important}

/* ===== Login ===== */
#login{background:linear-gradient(145deg,#eef4fb 0%,#f8fafc 52%,#edf3fa 100%)!important}
#login .lcard{border-radius:18px!important;border:1px solid #d8e3ef!important;box-shadow:0 24px 65px rgba(11,47,99,.16)!important}
#login .lbtn{background:#0f70e6!important;border-radius:9px!important}

/* ===== Scrollbars ===== */
*{scrollbar-width:thin;scrollbar-color:#b7cbe2 #eef3f8}
*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:#eef3f8}*::-webkit-scrollbar-thumb{background:#b7cbe2;border-radius:999px;border:2px solid #eef3f8}

/* ===== Responsive ===== */
@media(max-width:1300px){
  .top-content,.top-context-strip{width:calc(100% - 28px)!important}
  .top-app-header{padding:0 14px!important}.top-brand{min-width:160px!important}.top-title-block{min-width:190px!important}
}
@media(max-width:900px){
  .top-app-header{height:auto!important;min-height:62px!important;padding:7px 10px!important}.top-title-block{display:none!important}.top-brand{border-right:0!important;min-width:0!important}.top-brand img{height:43px!important}
  .top-user-box>div:last-child{display:none!important}.top-main-nav{padding-left:0!important}.top-nav-tab,.top-direct-menu{padding:0 13px!important}
  .top-context-strip{width:calc(100% - 16px)!important;margin-top:8px!important;overflow-x:auto!important;flex-wrap:nowrap!important}
  .top-content{width:calc(100% - 16px)!important;padding-top:14px!important}
  .pilotage-drawer{width:min(680px,94vw)!important}
}
@media(max-width:700px){
  .top-actions .top-action-btn{display:none!important}.top-brand strong{font-size:15px!important}
  .top-sub-nav-inner{padding:0 6px!important}.top-sub-nav a{padding:0 9px!important}
  .pilotage-drawer{width:100vw!important;max-width:100vw!important}
  .pilotage-form-grid,.fg,.fg2{grid-template-columns:1fr!important}
}
