/* Restaunet — couche responsive globale, chargée après les styles des pages */
html,body{width:100%;max-width:100%;overflow-x:hidden}main,header,footer,nav,section,article,aside,form,fieldset{max-width:100%}img,svg,video,canvas{max-width:100%}input,select,textarea{max-width:100%}
@media(max-width:768px){
  .dashboard-body .dash-sidebar,
  .dashboard-body .dash-overlay,
  .dashboard-body .sidebar-toggle{display:none!important}
  :root{--mobile-gutter:14px;--navbar-h:58px}
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body{width:100%;min-width:0;overscroll-behavior-x:none}
  body *{min-width:0}
  input,select,textarea{width:100%;font-size:16px!important}
  button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
  button,.btn,[class*="btn-"]{touch-action:manipulation}
  .container,.app-navbar .nav-container,.app-footer .footer-inner{width:100%;max-width:100%;padding-left:var(--mobile-gutter);padding-right:var(--mobile-gutter)}
  .app-navbar{height:var(--navbar-h)}
  .app-navbar .nav-container{gap:10px}
  .nav-logo .logo-text{font-size:1rem}
  .nav-toggle-btn{width:42px;height:42px;align-items:center;justify-content:center;margin-left:auto}
  .mobile-menu{top:var(--navbar-h);max-height:calc(100dvh - var(--navbar-h));overflow-y:auto;padding:12px var(--mobile-gutter) calc(18px + env(safe-area-inset-bottom,0px))}
  .page-body{padding-top:var(--navbar-h);padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}
  .dash-layout,.dash-main,.dash-content,.dash-body,.stock-dash-content,.fin-page,.emp-page,.svc-page,.set-page,.cmd-page,.menu-page{width:100%;max-width:100%;min-width:0}
  .dash-content,.dash-body{overflow-x:hidden}
  .page-header,.dash-header,.cmd-page-header,.emp-page-header,.svc-page-header,.fin-page-header,.set-page-header,.stock-head{flex-wrap:wrap;align-items:flex-start;gap:12px}
  .page-header>*,.dash-header>*,.cmd-page-header>*,.emp-page-header>*,.svc-page-header>*,.fin-page-header>*,.set-page-header>*,.stock-head>*{max-width:100%}
  .header-actions,.head-actions,.page-actions,.cmd-actions,.emp-actions,.svc-actions,.fin-actions{display:flex;flex-wrap:wrap;width:100%;gap:8px}
  .header-actions>* ,.head-actions>* ,.page-actions>*{flex:1 1 auto}
  .cash-subnav,.team-subnav{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .cash-subnav::-webkit-scrollbar,.team-subnav::-webkit-scrollbar{display:none}
  .cash-subnav a,.team-subnav a{flex:0 0 auto}
  .table-wrap,.fin-table-wrap,[class*="table-wrap"],div[style*="overflow-x:auto"]{width:100%;max-width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse}
  table th,table td{white-space:nowrap}
  .modal,.emp-modal-backdrop,[class*="modal-backdrop"]{padding:10px!important;align-items:flex-end}
  .modal-card,.emp-modal,[class*="modal-card"]{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 20px)!important;border-radius:18px 18px 12px 12px!important;overflow-y:auto!important}
  .modal .grid,.set-grid-2,.set-grid-3,.emp-grid-2,.emp-grid-3,.cmd-form-grid,.cmd-form-grid--3{grid-template-columns:1fr!important}
  .flash-container{top:calc(var(--navbar-h) + 8px);left:10px;right:10px;width:auto;max-width:none}
  .notif-dropdown{position:fixed;top:calc(var(--navbar-h) + 6px);left:10px;right:10px;width:auto;max-width:none}
  .app-footer{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}
  .app-footer .footer-links{justify-content:center;gap:14px}
  .mbn{height:calc(64px + env(safe-area-inset-bottom,0px));padding-left:4px;padding-right:4px}
  .mbn-item{min-width:0}.mbn-item span:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .pp-dropdown{position:fixed;left:10px;right:10px;top:calc(var(--navbar-h) + 8px);width:auto;min-width:0;max-height:55dvh}
}
@media(max-width:480px){
  :root{--mobile-gutter:12px}
  h1{overflow-wrap:anywhere}
  .kpi-grid,.stats,.fin-summary,.an-kpi-grid{grid-template-columns:1fr!important}
  .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .card,.panel,.fin-card,.emp-card,.svc-card{max-width:100%}
}
/* Écran de prise de commande : comportement application sur téléphone */
@media(max-width:768px){
  .pos-topbar{position:sticky!important;top:0!important;height:auto!important;min-height:58px;padding:9px 10px!important;flex-wrap:wrap;gap:8px;z-index:1000}
  .pos-topbar .pos-divider{display:none}
  .pos-title{flex:1 1 auto}
  .pos-field{flex:1 1 140px}
  .pos-select{width:100%;min-width:0}
  .pos-body{position:relative!important;inset:auto!important;top:0!important;width:100%;height:auto!important;min-height:calc(100dvh - 58px);overflow:visible!important}
  .pos-articles-panel{width:100%;height:auto!important;min-height:55dvh;overflow:visible}
  .pos-products{overflow:visible!important}
  .pos-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:12px!important;gap:10px!important}
  .pos-cart{width:100%!important;height:auto!important;min-height:45dvh;max-height:none;border-left:0!important;border-top:1px solid var(--border)}
  .pos-toast{width:calc(100% - 24px);white-space:normal;text-align:center}
}
@media(max-width:380px){.pos-grid{grid-template-columns:1fr!important}}
/* En-tête interne compact : commandes, menu et gestion des boissons */
@media(max-width:768px){
  .dashboard-body .dash-topbar{
    width:100%;
    height:60px;
    min-height:60px;
    padding:8px 12px;
    gap:8px;
    flex-wrap:nowrap;
    overflow:visible;
  }
  .dashboard-body .topbar-left{
    flex:1 1 auto;
    min-width:0;
    gap:8px;
    overflow:hidden;
  }
  .dashboard-body .sidebar-toggle{
    width:40px;
    height:40px;
    flex:0 0 40px;
  }
  .dashboard-body .topbar-greeting{
    flex:1 1 auto;
    min-width:0;
    overflow:hidden;
  }
  .dashboard-body .topbar-greeting h1{
    display:block;
    max-width:100%;
    margin:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:.88rem;
    line-height:1.25;
  }
  .dashboard-body .topbar-greeting p{display:none}
  .dashboard-body .topbar-right{
    flex:0 0 auto;
    min-width:auto;
    gap:6px;
  }
  .dashboard-body .topbar-right .user-menu{display:none}
  .dashboard-body .topbar-right .notif-bell-button{
    width:40px;
    height:40px;
  }
  .dashboard-body .cmd-add-btn--commande{
    min-width:0;
    height:40px;
    padding:0 11px;
    border-radius:9px;
    gap:5px;
    white-space:nowrap;
    font-size:.72rem;
    line-height:1;
  }
  .dashboard-body .cmd-add-btn--commande svg{width:15px;height:15px;flex:0 0 15px}
}
@media(max-width:420px){
  .dashboard-body .dash-topbar{padding-left:8px;padding-right:8px;gap:5px}
  .dashboard-body .topbar-left{gap:5px}
  .dashboard-body .sidebar-toggle{width:38px;height:38px;flex-basis:38px}
  .dashboard-body .topbar-greeting h1{font-size:.8rem}
  .dashboard-body .topbar-right{gap:3px}
  .dashboard-body .topbar-right .notif-bell-button{width:38px;height:38px}
  .dashboard-body .cmd-add-btn--commande{
    width:40px;
    min-width:40px;
    padding:0;
    justify-content:center;
    font-size:0;
  }
  .dashboard-body .cmd-add-btn--commande svg{width:18px;height:18px;flex-basis:18px}
}
/* Navigation mobile interne : topbar et barre inférieure, sans sidebar latéral. */
@media(max-width:768px){

  /* Empêche tout texte de topbar de pousser les actions hors écran. */
  .dashboard-body .dash-topbar{min-width:0;overflow:hidden}
  .dashboard-body .topbar-left{min-width:0;max-width:100%;overflow:hidden}
  .dashboard-body .topbar-greeting{min-width:0;max-width:100%}
  .dashboard-body .topbar-greeting h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .dashboard-body .topbar-right{max-width:52%;overflow:visible}
  .dashboard-body .topbar-right>a,
  .dashboard-body .topbar-right>button{max-width:100%}
}
@media(max-width:560px){
  .dashboard-body .cmd-add-btn--commande{width:40px;min-width:40px;padding:0;justify-content:center;font-size:0}
  .dashboard-body .cmd-add-btn--commande svg{width:18px;height:18px;flex-basis:18px}
  .dashboard-body .topbar-right{max-width:96px}
}