/* Socle d’interface V29 : recherche, mobile et garde-fous de débordement. */

html{max-width:100%;}
body{max-width:100%;overflow-x:clip;}
img,svg,video,canvas{max-width:100%;height:auto;}
button,input,select,textarea{font:inherit;}
:focus-visible{outline:2px solid var(--gs-brand-red,#c41230);outline-offset:3px;}

.gs-search-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.88);}
.gs-search-modal[hidden]{display:none;}
.gs-search-modal-dialog{width:min(560px,100%);padding:2rem;border:1px solid #2a2a2a;border-radius:10px;background:#141414;box-shadow:0 24px 64px rgba(0,0,0,.46);}
.gs-search-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;}
.gs-search-modal-head h2{margin:0;color:#fff;font-size:clamp(1.35rem,4vw,1.8rem);line-height:1.15;}
.gs-search-modal-close{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:#202020;color:#fff;font-size:25px;line-height:1;cursor:pointer;}
.gs-search-modal-dialog form{display:flex;gap:10px;}
.gs-search-modal-dialog .gs-search-input{min-width:0;flex:1;}
@media(max-width:600px){
 .gs-search-modal{align-items:flex-start;padding-top:14vh;}
 .gs-search-modal-dialog{padding:1rem;}
 .gs-search-modal-dialog form{flex-direction:column;}
 .gs-search-modal-dialog .gs-search-submit{width:100%;}
}

/* Le défilement vertical reste prioritaire sur les rails tactiles. */
@media(max-width:900px){
 [data-gs-scroll-track]{touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;}
}
