/* Correctifs d'interface PM Tracker Server v0.9.4 */
.menu-toggle,.menu-backdrop{display:none}
.ota-badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:700;line-height:1}
.ota-badge.success{background:rgba(18,183,106,.16);color:#6ce9a6;border:1px solid rgba(18,183,106,.35)}
.ota-badge.failed{background:rgba(240,68,56,.16);color:#fda29b;border:1px solid rgba(240,68,56,.35)}
.ota-badge.cancelled{background:rgba(247,144,9,.14);color:#fec84b;border:1px solid rgba(247,144,9,.35)}
.ota-badge.running{background:rgba(46,144,250,.15);color:#84caff;border:1px solid rgba(46,144,250,.35)}
.ota-history-row small{color:#fda29b}
@media(max-width:900px){
  body{overflow-x:hidden}
  .layout{display:block!important;min-height:100vh}
  .layout>aside{position:fixed;z-index:1002;top:0;bottom:0;left:0;width:min(82vw,310px);transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 45px rgba(0,0,0,.35)}
  body.menu-open .layout>aside{transform:translateX(0)}
  .menu-backdrop{display:block;position:fixed;z-index:1001;inset:0;background:rgba(0,0,0,.58);opacity:0;pointer-events:none;transition:opacity .22s ease}
  body.menu-open .menu-backdrop{opacity:1;pointer-events:auto}
  .layout>main{margin-left:0!important;width:100%;min-width:0}
  main>header{position:sticky;top:0;z-index:900;display:flex;align-items:center;gap:12px;padding-left:14px!important;padding-right:14px!important;background:#101828}
  .menu-toggle{display:inline-grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border-radius:10px;font-size:23px}
  main>header>div{min-width:0;flex:1}
  main>header h1{font-size:21px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #serverPill{max-width:40vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .view{padding-left:12px!important;padding-right:12px!important}
  .cards,.grid,.detail-grid,.form-grid{grid-template-columns:1fr!important}
  .panel{min-width:0;overflow-x:auto}
  .event{grid-template-columns:1fr!important;align-items:start!important}
  .event button{width:100%}
  .toolbar{align-items:stretch!important}
  .toolbar label,.toolbar select,.toolbar button{width:100%}
  .fleet-row,.user-row{grid-template-columns:1fr!important}
}

/* Correctif v0.9.4.1 : le menu mobile réutilise réellement la navigation latérale. */
@media(max-width:900px){
  .layout>aside{
    display:flex!important;
    flex-direction:column!important;
    visibility:visible!important;
    opacity:1!important;
    overflow-y:auto!important;
    background:#101828!important;
    color:#fff!important;
  }
  .layout>aside .brand{
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
  }
  .layout>aside nav{
    display:flex!important;
    flex-direction:column!important;
    flex:1 0 auto!important;
    visibility:visible!important;
    opacity:1!important;
    overflow:visible!important;
  }
  .layout>aside nav button{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    min-height:44px!important;
    flex:0 0 auto!important;
    color:inherit!important;
  }
  .layout>aside nav button.admin-only.hidden,
  .layout>aside nav button.hidden{display:none!important}
  .layout>aside .aside-bottom{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    flex:0 0 auto!important;
  }
}
