/* Banque360: responsive containment without hiding business columns or actions. */
.bank-pages .bank-main,.bank-pages .enterprise-page-content,.bank-pages .card,.bank-pages .card-body,.bank-pages .row>*{min-width:0}
.bank-pages .bank-main{box-sizing:border-box}
.bank-pages .bank-session-details{min-width:0;overflow-wrap:anywhere}
.bank-pages .bank-page-heading,.bank-pages .bank-section-intro{flex-wrap:wrap;gap:12px}
.bank-pages .bank-nav{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.bank-pages .bank-nav>a{flex-shrink:0}
.bank-pages [data-b360-table-scroll]{max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain}
.bank-pages [data-b360-table-scroll]:focus-visible{outline:3px solid #2577a9;outline-offset:2px}
.bank-pages .enterprise-page-content .btn{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-top:0;min-height:40px;white-space:normal}
.bank-pages .enterprise-page-content :is(input:not([type=checkbox]):not([type=radio]),select,textarea){max-width:100%;min-width:0}
.bank-pages .enterprise-page-content :is(h1,h2,h3,p,dd,.badge){overflow-wrap:anywhere}
.bank-pages .enterprise-page-content .badge{white-space:normal}
.b360-guide-mobile{display:none}
.b360-guide-symbols{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
@media(max-width:1024px){
 .bank-pages .bank-header-inner{padding-left:20px;padding-right:20px}
 .bank-pages .bank-identity{flex-wrap:wrap;gap:16px}
 .bank-pages .bank-session{max-width:100%;margin-left:0}
 .bank-pages .b360-layout,.bank-pages .home-content-grid{grid-template-columns:minmax(0,1fr)!important}
 .bank-pages .bank-user-filter-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
 #b360-guide-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}
 #b360-guide-dialog[open]{display:flex;flex-direction:column;height:calc(100vh - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}
 #b360-guide-dialog .b360-guide-header,#b360-guide-dialog .b360-guide-tabs,#b360-guide-dialog .b360-tour-bar,#b360-guide-dialog .b360-guide-footer{flex-shrink:0}
 #b360-guide-dialog>[role=tabpanel]{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;overflow-x:hidden}
 #b360-guide-dialog .b360-map-scroll{display:none}
 #b360-guide-dialog .b360-guide-mobile{display:block;padding:20px 18px}
 #b360-guide-dialog .b360-guide-header{gap:10px;padding:12px 14px}
 #b360-guide-dialog .b360-guide-tabs{gap:6px;padding:10px 14px}
 #b360-guide-dialog .b360-guide-tabs button{flex:1 1 130px;min-height:40px;padding:8px 10px;border-radius:6px}
 #b360-guide-dialog .b360-guide-header button,#b360-guide-dialog .b360-guide-footer button{min-height:44px}
 .b360-guide-mobile ol{list-style:none;padding:0;margin:0;display:grid;gap:14px}
 .b360-guide-mobile li{position:relative;padding:16px;border:1px solid #d8e2e9;border-radius:8px;background:#fff;display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:14px}
 .b360-guide-mobile li+li:before{content:'↓';position:absolute;top:-19px;left:calc(50% - 7px);font-size:20px;color:#145b82;line-height:22px;background:white}
 .b360-guide-mobile svg{width:54px;height:54px;fill:none;stroke:#36556c;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
 .b360-guide-mobile h3{font-size:16px;line-height:1.4;margin:0 0 5px;color:#17365b;font-weight:600}
 .b360-guide-mobile p{font-size:13px;line-height:1.65;margin:0;overflow-wrap:anywhere;color:#52677e}
 .b360-guide-mobile .b360-guide-note{margin-top:18px;padding-top:14px;border-top:1px solid #e3eaf0}
 .b360-guide-mobile .b360-guide-focus{background:#f2f7fa;border-color:#145b82}
}
@media(max-width:640px){
 .bank-pages .bank-main{width:100%;margin:0;padding:18px 14px}
 .bank-pages .bank-header-inner{padding:14px}
 .bank-pages .bank-brand img{max-width:76px;height:auto}
 .bank-pages .bank-session{width:100%;flex-wrap:wrap;gap:10px}
 .bank-pages .bank-session-details{flex:1 1 150px}
 .bank-pages .bank-nav{display:flex;flex-wrap:wrap;gap:4px;overflow:visible}
 .bank-pages .bank-nav>a{padding:10px 8px;min-height:44px;font-size:13px}
 .bank-pages .bank-page-heading h1,.bank-pages .bank-section-intro h1{font-size:24px}
 .bank-pages .bank-user-filter-grid,.bank-pages .types-grid,.bank-pages .auth-parameters{grid-template-columns:minmax(0,1fr)!important}
 .bank-pages .enterprise-page-content .d-flex{flex-wrap:wrap}
 .bank-pages .enterprise-page-content .d-flex>.form-control,.bank-pages .enterprise-page-content .d-flex>.form-select{flex:1 1 100%;width:100%!important;min-width:0!important}
 .bank-pages .enterprise-page-content .card-body{padding:16px}
 .bank-pages .enterprise-page-content .btn{min-height:44px}
 .bank-pages .enterprise-page-content :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px;min-width:0!important;max-width:100%!important}
 .bank-pages .enterprise-page-content .sticky-top{position:static!important}
 .bank-pages .modal-dialog{margin:10px;max-width:calc(100vw - 20px)}
 .bank-pages .modal-body{overflow:auto;max-height:75vh;max-height:75dvh}
 #b360-guide-dialog .b360-tour-bar{gap:8px;padding-left:14px;padding-right:14px}
}
@media(max-width:400px){#b360-guide-title{font-size:15px}.b360-guide-mobile li{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:14px}.b360-guide-mobile svg{width:42px;height:42px}}
