:root{
  --lr-bg:#f4f7f5;
  --lr-surface:#ffffff;
  --lr-surface-soft:#f1f5f3;
  --lr-surface-strong:#0b1512;
  --lr-text:#0b0f0e;
  --lr-muted:#66736d;
  --lr-border:#dce5e1;
  --lr-border-soft:#e9eeec;
  --lr-accent:#22e07a;
  --lr-accent-ink:#06110c;
  --lr-shadow:0 18px 50px rgba(7,22,16,.08);
}
body{background:var(--lr-bg)!important;color:var(--lr-text)}
.lr-product-brand{gap:5px!important}
.lr-company-name{color:inherit!important;font-weight:900!important;letter-spacing:-.7px!important}
.lr-product-name{color:inherit!important;font-weight:850!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.lr-company-caption{opacity:.58;color:inherit!important;text-transform:none!important;letter-spacing:0!important}
.lr-product-mark{display:inline-flex!important;width:18px!important;height:18px!important;border-radius:5px!important;background:transparent!important;transform:none!important;overflow:hidden!important}
.lr-product-mark img{display:block;width:100%;height:100%;object-fit:contain}
.topbar{background:#0b1512!important;color:#fff!important;border:1px solid rgba(255,255,255,.05)!important;border-radius:22px!important;padding:18px 22px!important;margin:10px 0 14px!important;box-shadow:0 18px 44px rgba(3,14,10,.16)!important}
.topbar .lr-company-name{color:#fff!important}
.topbar .lr-product-name,.topbar .lr-company-caption,.topbar .muted{color:#b9c8c1!important}
.topbar .btn.secondary{background:rgba(255,255,255,.06)!important;color:#fff!important;border-color:rgba(255,255,255,.15)!important}
.topbar .btn.secondary:hover{background:rgba(34,224,122,.12)!important;border-color:rgba(34,224,122,.4)!important}
.lf-global-nav.lr-navigation{background:#fff!important;border:1px solid var(--lr-border)!important;border-radius:18px!important;box-shadow:0 8px 30px rgba(7,22,16,.04)!important;padding:7px!important;margin-bottom:12px!important}
.lf-global-nav-scroll>a{border-radius:12px!important;color:#53625b!important;font-weight:760!important}
.lf-global-nav-scroll>a:hover{background:#f0f6f3!important;color:#0b1512!important}
.lf-global-nav-scroll>a.active,.lf-global-nav-scroll>a[aria-current="page"]{background:#0b1512!important;color:#fff!important}
.lf-global-nav-scroll>a.active:after,.lf-global-nav-scroll>a[aria-current="page"]:after{background:#22e07a!important}
.lr-nav-more summary{border-radius:12px!important}
.lr-nav-more summary.active{background:#0b1512!important;color:#fff!important}
.lr-nav-panel{border-color:var(--lr-border)!important;border-radius:18px!important;box-shadow:0 22px 60px rgba(7,22,16,.14)!important}
.lf-context-nav{border-color:var(--lr-border)!important;background:#fff!important;border-radius:15px!important}
.lf-context-nav a[aria-current="page"],.lf-context-nav a.active{background:#e7fbef!important;color:#0b5132!important}
html[data-lr-page="manager-planning"] :is(.planning-pro-header,.validation-pro-hero,.absence-pro-hero),
html[data-lr-page="missions"] .tm-heading,
html[data-lr-page^="commerce-"] :is(.commerce-workspace-head,.premium-hero),
html[data-lr-page="commerce-orders"] .po-hero,
html[data-lr-page="commerce-inventory"] .inv-hero{background:linear-gradient(135deg,#07110e,#0b1813 68%,#0d3526)!important}
.login-unified{min-height:100vh!important;padding:48px 22px!important;background:radial-gradient(circle at 18% 12%,rgba(34,224,122,.16),transparent 28%),linear-gradient(145deg,#07110e 0%,#0b1512 45%,#10271f 100%)!important}
.login-unified .login-brand{color:#fff!important;margin-bottom:24px!important}
.login-unified .login-brand .lr-company-name{color:#fff!important;font-size:34px!important}
.login-unified .login-brand .lr-product-name{color:#c9d9d1!important}
.login-unified .login-brand>p{color:#9fb2aa!important;letter-spacing:.05em!important}
.login-unified-card{background:rgba(255,255,255,.98)!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:24px!important;box-shadow:0 30px 80px rgba(0,0,0,.28)!important;padding:28px!important}
.login-unified-card .login-unified-head>span{background:#e8fbef!important;color:#0b5132!important;border-radius:14px!important}
.login-unified-card .btn.primary{background:#0b1512!important;border-color:#0b1512!important;color:#fff!important;min-height:50px!important;border-radius:12px!important;font-weight:850!important}
.login-unified-card .btn.primary:hover{background:#123326!important;border-color:#123326!important}
.login-unified input,.login-unified select{border-color:#ccd9d3!important;border-radius:12px!important;min-height:48px!important}
.login-unified input:focus,.login-unified select:focus{border-color:#22b965!important;box-shadow:0 0 0 3px rgba(34,224,122,.14)!important}
.login-unified-links a{color:#0b5e39!important;font-weight:750!important}
.login-help,.login-security-note{color:#a9bbb3!important}

/* V11.01 — audit mobile global.
   Même logique partout : aucun libellé coupé, moins de bandeaux répétés,
   titres plus courts à l'écran et rails tactiles réellement lisibles. */
:where(.lf-global-nav-scroll,.lf-context-nav,.manager-subnav,.product-nav,.commerce-workspace-nav,.integration-nav,.record-tabs,.tabs,.chips,.stats-period-tabs){scroll-padding-inline:8px}
:where(.lf-global-nav-scroll,.lf-context-nav,.manager-subnav,.product-nav,.commerce-workspace-nav,.integration-nav,.record-tabs,.tabs,.chips) :where(a,button){min-width:0}

@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}

  /* En-tête : identité et action tiennent dans un écran sans gros vide. */
  .topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    gap:10px 12px!important;
    min-height:0!important;
    border-radius:18px!important;
    padding:14px 15px!important;
    margin:6px 0 10px!important;
  }
  .topbar>div:first-child{min-width:0!important}
  .topbar .lr-product-brand{min-width:0!important;gap:4px!important}
  .topbar .lr-company-name{font-size:clamp(23px,7.2vw,30px)!important;line-height:1.02!important;overflow-wrap:anywhere}
  .topbar .lr-company-caption,.topbar .lr-product-name{font-size:11px!important}
  .topbar .muted{margin-top:6px!important;font-size:12px!important;line-height:1.3!important}
  .topbar .topbar-actions{align-self:center!important;justify-self:end!important;display:flex!important;flex-wrap:wrap!important;gap:6px!important;max-width:125px!important}
  .topbar .topbar-actions form{margin:0!important}
  .topbar .topbar-actions .btn{min-height:40px!important;padding:8px 11px!important;border-radius:11px!important;font-size:12px!important;white-space:nowrap!important}

  /* Navigation principale : l'onglet actif commence proprement à gauche. */
  .lf-global-nav.lr-navigation{gap:4px!important;padding:5px!important;border-radius:15px!important;margin-bottom:9px!important}
  .lr-navigation .lf-global-nav-scroll{
    min-width:0!important;
    gap:5px!important;
    padding:3px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    mask-image:none!important;
    -webkit-mask-image:none!important;
    scrollbar-width:none;
  }
  .lr-navigation .lf-global-nav-scroll::-webkit-scrollbar{display:none}
  .lf-global-nav-scroll>a{scroll-snap-align:start;flex:0 0 auto!important;min-height:40px!important;padding:9px 11px!important;font-size:11px!important;white-space:nowrap!important}
  .lr-navigation .lr-nav-more summary{min-height:40px!important;padding:8px 10px!important;font-size:11px!important;white-space:nowrap!important;max-width:none!important}
  .lr-navigation .lr-nav-panel{max-width:calc(100vw - 20px)!important;right:-2px!important;padding:13px!important}

  /* Tous les sous-menus utilisent le même comportement tactile. */
  :where(.lf-context-nav,.manager-subnav,.product-nav,.commerce-workspace-nav,.integration-nav,.record-tabs,.tabs,.chips){
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none!important;
    scroll-snap-type:x proximity;
  }
  :where(.lf-context-nav,.manager-subnav,.product-nav,.commerce-workspace-nav,.integration-nav,.record-tabs,.tabs,.chips)::-webkit-scrollbar{display:none}
  :where(.lf-context-nav,.manager-subnav,.product-nav,.commerce-workspace-nav,.integration-nav,.record-tabs,.tabs,.chips)>:where(a,button){flex:0 0 auto!important;scroll-snap-align:start;white-space:nowrap!important}

  /* Commerce : le vrai dashboard possède déjà son hero, on ne le répète pas. */
  html[data-lr-page="commerce-stats"] .commerce-workspace-head,
  html[data-lr-page="commerce-rankings"] .commerce-workspace-head{display:none!important}
  html[data-lr-page="commerce-stats"] .commerce-workspace-nav,
  html[data-lr-page="commerce-rankings"] .commerce-workspace-nav{margin-top:0!important}
  .commerce-workspace-head{padding:13px 14px!important;border-radius:16px!important;margin-bottom:9px!important}
  .commerce-workspace-head h1{font-size:clamp(25px,7vw,32px)!important;line-height:1.02!important;margin:3px 0 5px!important}
  .commerce-workspace-head p{font-size:12px!important;line-height:1.35!important;margin-bottom:0!important}
  .commerce-workspace-actions{gap:6px!important;margin-top:10px!important}
  .commerce-workspace-actions .btn{min-height:40px!important;padding:8px 11px!important;font-size:11px!important}
  .commerce-workspace-nav{margin-bottom:9px!important;padding:5px!important;gap:5px!important}
  .commerce-workspace-nav a{padding:9px 11px!important;font-size:11px!important}

  /* Pilotage : les cinq périodes tiennent réellement dans le hero mobile. */
  .stats-pro-hero{padding:17px 15px!important;border-radius:18px!important;gap:12px!important;margin-bottom:9px!important}
  .stats-pro-hero h1{font-size:clamp(31px,9vw,40px)!important;line-height:1!important;margin:4px 0 7px!important}
  .stats-pro-hero p{font-size:11px!important;line-height:1.35!important;margin:0!important}
  .stats-period-tabs{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:4px!important;
    width:100%!important;
    max-width:none!important;
    overflow:visible!important;
    padding:4px!important;
  }
  .stats-period-tabs a{min-width:0!important;padding:8px 3px!important;font-size:10px!important;line-height:1.1!important;text-align:center!important;white-space:nowrap!important;border-radius:9px!important}
  .stats-scope-bar{padding:9px 10px!important;border-radius:13px!important;gap:7px!important}
  .stats-scope-bar label{min-width:0!important;width:100%!important}
  .stats-scope-bar select{width:100%!important;min-width:0!important}
  .stats-freshness{gap:5px!important;flex-wrap:wrap!important}

  /* Les autres gros bandeaux suivent la même densité. */
  :where(.planning-pro-header,.validation-pro-hero,.absence-pro-hero,.tm-heading,.premium-hero,.po-hero,.inv-hero,.system-hero,.activity-hero,.product-hero){
    padding:15px!important;
    border-radius:17px!important;
    margin-bottom:9px!important;
  }
  :where(.planning-pro-header,.validation-pro-hero,.absence-pro-hero,.tm-heading,.premium-hero,.po-hero,.inv-hero,.system-hero,.activity-hero,.product-hero) :where(h1,h2){
    font-size:clamp(25px,7.5vw,34px)!important;
    line-height:1.03!important;
    overflow-wrap:anywhere;
  }
  :where(.planning-pro-header,.validation-pro-hero,.absence-pro-hero,.tm-heading,.premium-hero,.po-hero,.inv-hero,.system-hero,.activity-hero,.product-hero) p{font-size:12px!important;line-height:1.4!important}

  /* Titres, formulaires et tableaux ne doivent plus pousser la page hors écran. */
  .section-title-row,.toolbar,.actions,.filters,.filter-row{min-width:0!important;max-width:100%!important;flex-wrap:wrap!important}
  .section-title-row>div,.toolbar>*,.actions>*{min-width:0}
  .section-title-row :where(h1,h2,h3){overflow-wrap:anywhere}
  .table-wrap{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  :where(input,select,textarea,button,.btn){max-width:100%}
}

@media(max-width:360px){
  .topbar{grid-template-columns:1fr!important}
  .topbar .topbar-actions{justify-self:start!important;max-width:none!important}
  .stats-period-tabs a{font-size:9px!important;padding-inline:2px!important}
}

@media(max-width:700px){
  .login-unified{padding:30px 15px!important}
  .login-unified-card{border-radius:20px!important;padding:22px!important}
  .login-unified .login-brand .lr-company-name{font-size:29px!important}
}
@media print{.topbar{background:#fff!important;color:#000!important;box-shadow:none!important}}



/* Company identity also remains readable on the sign-in screen. */
@media screen{
 html body .login-unified{background:#f4f6f7!important}
 html body .login-unified .login-brand,html body .login-unified .login-brand .lr-company-name{color:#111!important}
 html body .login-unified :is(.login-brand>p,.login-help,.login-security-note){color:#53616a!important}
 html body .login-unified .login-unified-card{border:0!important;border-radius:10px!important;box-shadow:0 4px 18px #142b3810!important}
}
