/* SOLUX SOGCES v2.0.275 — ajustements partagés web/mobile, sans données fictives. */
:root{--sogces-focus:#087f91}
.app-shell,.workspace,.view,.panel{min-width:0}
button,a,input,select,textarea{touch-action:manipulation}
:where(button,a,input,select,textarea):focus-visible{outline:3px solid var(--sogces-focus);outline-offset:2px}
@media(max-width:820px){
 html,body{max-width:100%;overflow-x:clip}
 .workspace,.view:not(.hidden){width:100%;max-width:100%;box-sizing:border-box}
 .view:not(.hidden) :is(.panel,.pagehead,.centre-cards,.dash-grid,.portal-grid){min-width:0;max-width:100%;box-sizing:border-box}
 .view:not(.hidden) :is(input,select,textarea){font-size:16px}
 .view:not(.hidden) :is(.table-wrap,.cap-scroll){overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 .mobile-bottom{padding-bottom:max(4px,env(safe-area-inset-bottom,0px))}
 .app-shell>.sidebar{padding-bottom:env(safe-area-inset-bottom,0px)}
 .view:not(.hidden) img{max-width:100%;height:auto}
}
@media(max-width:480px){
 .centre-cards,.all-modules-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .capture-tile,.module-launch{min-width:0;overflow-wrap:anywhere}
 .view:not(.hidden) :is(.form-grid,.compact-form){grid-template-columns:1fr!important}
 .view:not(.hidden) :is(.form-grid,.compact-form) .wide{grid-column:1/-1!important}
}
@media print{.mobile-bottom,.solux-mobile-shade,.hamb{display:none!important}.app-shell>.sidebar{display:none!important}.workspace{width:100%!important;margin:0!important}.table-wrap{overflow:visible!important}}
