/* SOLUX SOGCES 2.0.276 — socle commun Web / Mobile, sans modifier les données */
:root{--sogces-navy:#123354;--sogces-teal:#0c9e9b;--sogces-radius:10px;--sogces-gap:12px}
html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}
body{max-width:100%;overflow-x:hidden}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{touch-action:manipulation}
:where(button,a,input,select,textarea):focus-visible{outline:3px solid #0b92c4;outline-offset:2px}
:where(.card,.panel,.tile,.tuile,.dashboard-card,.stat-card){min-width:0}
:where(.grid,.tiles,.tuiles,.cards,.dashboard-grid){min-width:0}
:where(table){border-collapse:collapse}
:where(.modal,.dialog,[role="dialog"]){max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}
:where(img,svg,video){max-width:100%}
@media(max-width:768px){
  :where(.content,.main-content,.page-content,.gestion-content,main){min-width:0;max-width:100%}
  :where(.modal,.dialog,[role="dialog"]){width:min(100%,560px);margin-inline:auto}
  :where(.form-row,.form-grid){min-width:0}
  :where(input,select,textarea){max-width:100%;min-width:0}
  :where(.table-responsive,.table-wrap,.table-container){overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media(max-width:420px){
  :where(.tiles,.tuiles,.dashboard-grid){gap:8px}
  :where(.tile,.tuile,.dashboard-card){min-width:0}
}
@media print{nav,.mobile-nav,.mobile-bottom-nav,.sidebar,.mobile-menu-toggle{display:none!important}body{overflow:visible!important}}
