/* Blood365 V336 — Global Responsive 100% Screen Fit */
:root{
  --bl205-gap:clamp(10px,1.25vw,20px);
  --bl205-page-pad:clamp(12px,1.8vw,28px);
  --bl205-radius:clamp(12px,1.25vw,20px);
}
html{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;}
body.blood365-ui{width:100%;max-width:100vw;min-width:0;overflow-x:hidden!important;}
body.blood365-ui *{min-width:0;}
img,svg,video,canvas,iframe{max-width:100%;height:auto;}
.layout{width:100%!important;max-width:100vw!important;min-width:0!important;overflow:visible!important;}
.layout>.content,.layout>main.content,main.content,.content{
  flex:1 1 0!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  padding-left:var(--bl205-page-pad)!important;
  padding-right:var(--bl205-page-pad)!important;
  overflow-x:hidden!important;
}
.card,.dash-card,.stat-card,.stat,.panel,.box,.widget,.table-wrap,.form-card{
  max-width:100%!important;
  min-width:0!important;
  overflow-wrap:anywhere;
}
.grid,.row,.kpis,.form-grid,.dashboard-grid,.bl365-kpi-grid,.workflow-grid{
  width:100%;max-width:100%;min-width:0;
  gap:var(--bl205-gap)!important;
}
input,select,textarea,button,.input,.btn{max-width:100%;}
textarea{resize:vertical;}
.table-wrap,.table-responsive,[class*="table-wrap"]{
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch;
}
table{max-width:100%;}
th,td{overflow-wrap:anywhere;word-break:normal;}
.page-head{width:100%;max-width:100%;flex-wrap:wrap;}
.actions,.bl365-actions,.row-actions,.one-line-actions,.table-actions-one-line{max-width:100%;}
.bl365-topbar-main{
  width:100%;max-width:100vw;gap:clamp(6px,1vw,14px)!important;
  padding-left:clamp(8px,1.5vw,22px)!important;
  padding-right:clamp(8px,1.5vw,22px)!important;
}
.bl365-logo-main{flex:0 1 220px;min-width:120px;max-width:220px;}
.bl365-logo-main img{width:100%;max-width:200px;height:auto;}
.bl365-search{flex:1 1 280px;min-width:160px;max-width:720px;}
.bl365-profile-box{max-width:230px;min-width:0;}
.bl365-profile-box>div{min-width:0;}
.bl365-profile-box b,.bl365-profile-box span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bl365-sidebar-main,.client-sidebar,.admin-sidebar{max-width:min(270px,88vw)!important;}

/* Fluid layouts used by newer tenant/admin modules. */
.bl143,.bl319-page,.bl320-page,.bl321-page,.bl322-page,
.admin-dashboard,.client-dashboard,.dashboard-page,.page-shell{
  width:100%!important;max-width:100%!important;min-width:0!important;
}
.bl143 .stats-row,.bl143 .hero,.bl143 .hero-stats,.bl143 .bags-row,
.bl143 .quick-grid,.bl143 .features{
  width:100%;max-width:100%;min-width:0;
}
.modal,.modal-dialog,.dialog,.popup,.drawer{max-width:100vw!important;}
.modal-content,.dialog-content,.popup-content{
  max-width:calc(100vw - 24px)!important;max-height:calc(100vh - 24px)!important;
  overflow:auto!important;
}

@media (max-width:1440px){
  .layout>.content,.layout>main.content,main.content,.content{
    padding-left:clamp(14px,1.5vw,22px)!important;
    padding-right:clamp(14px,1.5vw,22px)!important;
  }
  .bl143 .stats-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .bl143 .bags-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .bl143 .quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}

@media (max-width:1200px){
  .bl365-clock{display:none!important;}
  .bl365-profile-box>div{display:none!important;}
  .bl365-profile-box{flex:0 0 42px!important;width:42px!important;padding:0!important;justify-content:center!important;}
  .grid-4,.kpis,.bl365-kpi-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .grid-3,.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

@media (max-width:1050px){
  .bl365-search{flex-basis:190px!important;}
  .bl143 .hero{grid-template-columns:1fr!important;}
  .bl143 .hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .bl143 .stats-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .bl143 .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

@media (max-width:900px){
  body.blood365-ui{padding-top:0;}
  .bl365-topbar-main{position:sticky!important;top:0!important;min-height:62px!important;height:auto!important;flex-wrap:nowrap!important;z-index:1200!important;}
  .bl365-logo-main{flex:0 1 155px!important;width:auto!important;min-width:110px!important;}
  .bl365-logo-main img{max-width:145px!important;}
  .bl365-search,.bl365-profile-box,.bl365-clock{display:none!important;}
  .bl365-top-spacer{display:block;flex:1 1 auto;}
  .bl365-circle{flex:0 0 36px;width:36px!important;height:36px!important;}
  .bl365-logout{padding:8px 10px!important;font-size:12px!important;}
  .layout{display:block!important;min-height:calc(100vh - 62px)!important;}
  .bl365-sidebar-main,.client-sidebar,.admin-sidebar{
    position:fixed!important;
    left:0!important;top:62px!important;bottom:0!important;
    width:min(310px,88vw)!important;max-width:88vw!important;min-width:0!important;
    height:calc(100vh - 62px)!important;min-height:0!important;
    transform:translateX(-105%);transition:transform .22s ease;
    z-index:1150!important;overflow-y:auto!important;
    box-shadow:18px 0 45px rgba(15,23,42,.25)!important;
  }
  body.bl365-mobile-sidebar-open .bl365-sidebar-main,
  body.bl365-mobile-sidebar-open .client-sidebar,
  body.bl365-mobile-sidebar-open .admin-sidebar{transform:translateX(0);}
  body.bl365-mobile-sidebar-open{overflow:hidden!important;}
  .bl365-responsive-overlay{display:none;position:fixed;inset:62px 0 0;background:rgba(15,23,42,.42);z-index:1100;}
  body.bl365-mobile-sidebar-open .bl365-responsive-overlay{display:block;}
  .layout>.content,.layout>main.content,main.content,.content{
    width:100%!important;max-width:100vw!important;margin:0!important;
    padding:14px 12px 118px!important;overflow-x:hidden!important;
  }
  .bl143 .hero-stats,.bl143 .stats-row,.bl143 .bags-row,
  .bl143 .quick-grid,.bl143 .features{grid-template-columns:1fr!important;}
  .grid-2,.grid-3,.grid-4,.kpis,.row,.form-grid,.form-grid.three,
  .bl365-kpi-grid,.bl365-kpi-grid.five,.workflow-grid,.dashboard-grid{
    grid-template-columns:1fr!important;
  }
  .page-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;}
  .page-head h1{font-size:clamp(22px,6vw,28px)!important;line-height:1.15;}
  .page-head .actions,.page-head .bl365-actions{width:100%;}
  .actions>.btn,.bl365-actions>.btn{flex:1 1 auto;}
  .card,.dash-card,.stat-card,.stat,.panel,.box{padding:clamp(14px,4vw,20px)!important;border-radius:var(--bl205-radius)!important;}
  .table-actions-one-line,.row-actions,.one-line-actions{flex-wrap:wrap!important;white-space:normal!important;}
  .table-actions-one-line form,.row-actions form,.one-line-actions form{flex-wrap:wrap!important;width:100%;}
  .row-actions select,.one-line-actions select{width:100%!important;min-width:0!important;}
  .bl365-sidebar-collapsed .bl365-sidebar-main{width:min(310px,88vw)!important;padding:12px 10px 78px!important;}
  .bl365-sidebar-collapsed .bl365-nav-title,
  .bl365-sidebar-collapsed .bl365-nav-link b,
  .bl365-sidebar-collapsed .bl365-nav-link em{display:initial!important;}
  .bl365-sidebar-collapsed .bl365-nav-link{justify-content:flex-start!important;padding:0 12px!important;}
  .bl365-footer-strip{left:0!important;width:100%!important;max-width:100vw!important;}
}

@media (max-width:560px){
  .bl365-topbar-main{padding:8px!important;}
  .bl365-logo-main{max-width:125px!important;}
  .bl365-logo-main img{max-width:120px!important;}
  .bl365-circle:not(.bl365-notify){display:none!important;}
  .bl365-logout{font-size:0!important;width:36px;height:36px;padding:0!important;border-radius:50%!important;}
  .bl365-logout:after{content:'↪';font-size:18px;}
  th,td{padding:10px 9px!important;font-size:12px!important;}
  .btn{min-height:40px;padding:9px 12px!important;font-size:13px;}
  .form-grid,.form-grid.three{gap:10px!important;}
  .card-header,.section-head,.toolbar,.filters,.filter-row{flex-wrap:wrap!important;}
  .actions,.bl365-actions,.row-actions,.one-line-actions{width:100%;}
  .actions .btn,.bl365-actions .btn{flex:1 1 100%;width:100%;}
}

@media print{
  .bl365-responsive-overlay{display:none!important;}
  html,body{overflow:visible!important;width:auto!important;max-width:none!important;}
}
