/* Scoped Bootstrap Bridge for bw-member templates (No Bootstrap CSS required) */
/* Scope: only affects elements inside .bw-member-container to avoid theme conflicts */

/* Container */
.bw-member-container.container,
.bw-member-container.container-fluid,
.bw-member-container .container,
.bw-member-container .container-fluid { max-width: 1200px; margin: 0 auto; padding: 0 15px; }


/* Grid */
.bw-member-container .row { display: flex; flex-wrap: wrap; margin-left: -15px; margin-right: -15px; }
.bw-member-container [class^="col-"],
.bw-member-container [class*=" col-"] { position: relative; width: 100%; padding-left: 15px; padding-right: 15px; }

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
  .bw-member-container .col-sm-1 { max-width: 8.3333%; flex: 0 0 8.3333%; }
  .bw-member-container .col-sm-2 { max-width: 16.6667%; flex: 0 0 16.6667%; }
  .bw-member-container .col-sm-3 { max-width: 25%; flex: 0 0 25%; }
  .bw-member-container .col-sm-4 { max-width: 33.3333%; flex: 0 0 33.3333%; }
  .bw-member-container .col-sm-5 { max-width: 41.6667%; flex: 0 0 41.6667%; }
  .bw-member-container .col-sm-6 { max-width: 50%; flex: 0 0 50%; }
  .bw-member-container .col-sm-7 { max-width: 58.3333%; flex: 0 0 58.3333%; }
  .bw-member-container .col-sm-8 { max-width: 66.6667%; flex: 0 0 66.6667%; }
  .bw-member-container .col-sm-9 { max-width: 75%; flex: 0 0 75%; }
  .bw-member-container .col-sm-10 { max-width: 83.3333%; flex: 0 0 83.3333%; }
  .bw-member-container .col-sm-11 { max-width: 91.6667%; flex: 0 0 91.6667%; }
  .bw-member-container .col-sm-12 { max-width: 100%; flex: 0 0 100%; }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
  .bw-member-container .col-md-1 { max-width: 8.3333%; flex: 0 0 8.3333%; }
  .bw-member-container .col-md-2 { max-width: 16.6667%; flex: 0 0 16.6667%; }
  .bw-member-container .col-md-3 { max-width: 25%; flex: 0 0 25%; }
  .bw-member-container .col-md-4 { max-width: 33.3333%; flex: 0 0 33.3333%; }
  .bw-member-container .col-md-5 { max-width: 41.6667%; flex: 0 0 41.6667%; }
  .bw-member-container .col-md-6 { max-width: 50%; flex: 0 0 50%; }
  .bw-member-container .col-md-7 { max-width: 58.3333%; flex: 0 0 58.3333%; }
  .bw-member-container .col-md-8 { max-width: 66.6667%; flex: 0 0 66.6667%; }
  .bw-member-container .col-md-9 { max-width: 75%; flex: 0 0 75%; }
  .bw-member-container .col-md-10 { max-width: 83.3333%; flex: 0 0 83.3333%; }
  .bw-member-container .col-md-11 { max-width: 91.6667%; flex: 0 0 91.6667%; }
  .bw-member-container .col-md-12 { max-width: 100%; flex: 0 0 100%; }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
  .bw-member-container .col-lg-1 { max-width: 8.3333%; flex: 0 0 8.3333%; }
  .bw-member-container .col-lg-2 { max-width: 16.6667%; flex: 0 0 16.6667%; }
  .bw-member-container .col-lg-3 { max-width: 25%; flex: 0 0 25%; }
  .bw-member-container .col-lg-4 { max-width: 33.3333%; flex: 0 0 33.3333%; }
  .bw-member-container .col-lg-5 { max-width: 41.6667%; flex: 0 0 41.6667%; }
  .bw-member-container .col-lg-6 { max-width: 50%; flex: 0 0 50%; }
  .bw-member-container .col-lg-7 { max-width: 58.3333%; flex: 0 0 58.3333%; }
  .bw-member-container .col-lg-8 { max-width: 66.6667%; flex: 0 0 66.6667%; }
  .bw-member-container .col-lg-9 { max-width: 75%; flex: 0 0 75%; }
  .bw-member-container .col-lg-10 { max-width: 83.3333%; flex: 0 0 83.3333%; }
  .bw-member-container .col-lg-11 { max-width: 91.6667%; flex: 0 0 91.6667%; }
  .bw-member-container .col-lg-12 { max-width: 100%; flex: 0 0 100%; }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
  .bw-member-container .col-xl-1 { max-width: 8.3333%; flex: 0 0 8.3333%; }
  .bw-member-container .col-xl-2 { max-width: 16.6667%; flex: 0 0 16.6667%; }
  .bw-member-container .col-xl-3 { max-width: 25%; flex: 0 0 25%; }
  .bw-member-container .col-xl-4 { max-width: 33.3333%; flex: 0 0 33.3333%; }
  .bw-member-container .col-xl-5 { max-width: 41.6667%; flex: 0 0 41.6667%; }
  .bw-member-container .col-xl-6 { max-width: 50%; flex: 0 0 50%; }
  .bw-member-container .col-xl-7 { max-width: 58.3333%; flex: 0 0 58.3333%; }
  .bw-member-container .col-xl-8 { max-width: 66.6667%; flex: 0 0 66.6667%; }
  .bw-member-container .col-xl-9 { max-width: 75%; flex: 0 0 75%; }
  .bw-member-container .col-xl-10 { max-width: 83.3333%; flex: 0 0 83.3333%; }
  .bw-member-container .col-xl-11 { max-width: 91.6667%; flex: 0 0 91.6667%; }
  .bw-member-container .col-xl-12 { max-width: 100%; flex: 0 0 100%; }
}

/* Flex + Utilities */
.bw-member-container .align-self-start { align-self: flex-start !important; }
.bw-member-container .align-self-center { align-self: center !important; }
.bw-member-container .align-self-end { align-self: flex-end !important; }
.bw-member-container .justify-content-start { justify-content: flex-start !important; }
.bw-member-container .justify-content-end { justify-content: flex-end !important; }
.bw-member-container .justify-content-center { justify-content: center !important; }
.bw-member-container .justify-content-between { justify-content: space-between !important; }
.bw-member-container .justify-content-around { justify-content: space-around !important; }
.bw-member-container .justify-content-evenly { justify-content: space-evenly !important; }
.bw-member-container .align-items-center { align-items: center !important; }
.bw-member-container .text-start { text-align: left !important; }
.bw-member-container .text-center { text-align: center !important; }
.bw-member-container .text-end { text-align: right !important; }
.bw-member-container .mx-auto { margin-left: auto !important; margin-right: auto !important; }
.bw-member-container .ms-auto { margin-left: auto !important; }
.bw-member-container .me-auto { margin-right: auto !important; }
.bw-member-container .d-none { display: none !important; }
.bw-member-container .d-block { display: block !important; }
.bw-member-container .d-inline { display: inline !important; }
.bw-member-container .d-inline-block { display: inline-block !important; }
.bw-member-container .d-flex { display: flex !important; }

/* Buttons */
.bw-member-container .btn { display: inline-block; font-weight: 400; text-align: center; cursor: pointer; border: 1px solid transparent; padding: 0.375rem 0.75rem; font-size: 1rem; line-height: 1.5; border-radius: 0.25rem; text-decoration: none; transition: all 0.15s ease-in-out; }
.bw-member-container .btn:hover { text-decoration: none; }
.bw-member-container .btn-primary { color: #fff; background-color: #007bff; border-color: #007bff; }
.bw-member-container .btn-primary:hover { background-color: #0069d9; border-color: #0062cc; }
.bw-member-container .btn-secondary { color: #fff; background-color: #6c757d; border-color: #6c757d; }
.bw-member-container .btn-secondary:hover { background-color: #5a6268; border-color: #545b62; }
.bw-member-container .btn-success { color: #fff; background-color: #28a745; border-color: #28a745; }
.bw-member-container .btn-danger { color: #fff; background-color: #dc3545; border-color: #dc3545; }
.bw-member-container .btn-warning { color: #212529; background-color: #ffc107; border-color: #ffc107; }
.bw-member-container .btn-info { color: #fff; background-color: #17a2b8; border-color: #17a2b8; }
.bw-member-container .btn-light { color: #212529; background-color: #f8f9fa; border-color: #f8f9fa; }
.bw-member-container .btn-dark { color: #fff; background-color: #343a40; border-color: #343a40; }
.bw-member-container .btn-sm { padding: 0.25rem 0.5rem; font-size: 0.875rem; line-height: 1.5; border-radius: 0.2rem; }
.bw-member-container .btn-lg { padding: 0.5rem 1rem; font-size: 1.25rem; line-height: 1.5; border-radius: 0.3rem; }
.bw-member-container .btn-block { display: block; width: 100%; }

/* Forms */
.bw-member-container .form-label { display: inline-block; margin-bottom: 0.5rem; font-weight: 500; }
.bw-member-container .form-control,
.bw-member-container .form-select { display: block; width: 100%; height: calc(1.5em + 0.75rem + 2px); padding: 0.375rem 0.75rem; font-size: 1rem; line-height: 1.5; color: #495057; border: 1px solid #ced4da; border-radius: 0.25rem; transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
.bw-member-container .form-control:focus,
.bw-member-container .form-select:focus { border-color: #80bdff; outline: 0; box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
.bw-member-container .form-text { color: #6c757d; font-size: 0.875rem; }
.bw-member-container .form-check { position: relative; display: block; padding-right: 1.5rem; }
.bw-member-container .form-check-input:checked { background-color: #007bff; border-color: #007bff; }
.bw-member-container .form-check-label { margin-bottom: 0; }

/* Cards */
.bw-member-container .card { border: 1px solid rgba(0,0,0,.125); border-radius: 0.375rem; margin-bottom: 1.5rem; background-color: #fff; box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,.075); }
.bw-member-container .card-header { background-color: #f8f9fa; border-bottom: 1px solid #dee2e6; padding: 0.75rem 1rem; }
.bw-member-container .card-body { padding: 1rem; }

/* List Group */
.bw-member-container .list-group { display: block; border-radius: 0.25rem; }
.bw-member-container .list-group-item { display: block; padding: 0.5rem 0.75rem; border: 1px solid #dee2e6; background-color: #fff; color: inherit; }
.bw-member-container .list-group-item-action { cursor: pointer; }
.bw-member-container .list-group-item.active { background-color: #007bff; border-color: #007bff; color: #fff; }

/* Badges */
.bw-member-container .badge { display: inline-block; padding: 0.35em 0.65em; font-size: 0.75em; font-weight: 700; line-height: 1; color: #fff; text-align: center; white-space: nowrap; vertical-align: baseline; border-radius: 0.25rem; }
.bw-member-container .bg-primary { background-color: #007bff !important; }
.bw-member-container .bg-success { background-color: #28a745 !important; }
.bw-member-container .bg-danger { background-color: #dc3545 !important; }
.bw-member-container .bg-warning { background-color: #ffc107 !important; color: #212529; }

/* Alerts */
.alert { position: relative; padding: 0.75rem 1rem; border: 1px solid #dee2e6; border-radius: 0.25rem; background-color: #f8f9fa; margin-bottom: 1rem; }
/* Variants */
.alert-primary { color: #084298; background-color: #cfe2ff; border-color: #b6d4fe; }
.alert-secondary { color: #41464b; background-color: #e2e3e5; border-color: #d3d6d8; }
.alert-success { color: #0f5132; background-color: #d1e7dd; border-color: #badbcc; }
.alert-info { color: #055160; background-color: #cff4fc; border-color: #b6effb; }
.alert-warning { color: #664d03; background-color: #fff3cd; border-color: #ffecb5; }
.alert-danger { color: #842029; background-color: #f8d7da; border-color: #f5c2c7; }
.alert-light { color: #636464; background-color: #fefefe; border-color: #fdfdfe; }
.alert-dark { color: #141619; background-color: #d3d3d4; border-color: #bcbebf; }
/* Dismissible + close button */
.alert-dismissible { padding-right: 3rem; }
/* Ensure close button is positioned at the top-right of dismissible alerts */
.alert-dismissible .btn-close { position: absolute; top: .5rem; right: .75rem; }
/* Close button icon (Bootstrap-like) within BW Member container */
.btn-close {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: .25rem;
  line-height: 1;
  color: inherit;
  background: transparent;
  border: 0;
  border-radius: .375rem;
  opacity: .5;
}
.btn-close::before {
  content: "\00d7"; /* multiplication sign × */
  display: inline-block;
  font-size: 1.25rem;
  font-weight: 700;
}
.btn-close:hover { opacity: .75; background-color: transparent!important;}
.btn-close:focus {
  outline: 0;
  box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
  opacity: 1;
}
.btn-close:disabled { opacity: .25; }
.btn-close:hover { opacity: .75; }
/* Fade helper */
.bw-member-container .fade { transition: opacity .15s linear; }
.bw-member-container .fade.show { opacity: 1; }

/* Tabs */
.bw-member-container .tab-content .tab-pane { display: none; }
.bw-member-container .tab-content .tab-pane.active,
.bw-member-container .tab-content .tab-pane.show { display: block; }

/* Typography */
.bw-member-container .text-muted{color:#6c757d!important}
.bw-member-container .text-dark{color:#212529!important}
.bw-member-container .text-light{color:#f8f9fa!important}
.bw-member-container .text-body{color:#212529!important}
.bw-member-container .small{font-size:.875rem}
.bw-member-container .rounded-circle{border-radius:50%!important}

/* ===== Spacing utilities (Bootstrap-compatible) scoped to .bw-member-container ===== */
.bw-member-container .m-0{margin:0!important}
.bw-member-container .m-1{margin:.25rem!important}
.bw-member-container .m-2{margin:.5rem!important}
.bw-member-container .m-3{margin:1rem!important}
.bw-member-container .m-4{margin:1.5rem!important}
.bw-member-container .m-5{margin:3rem!important}

.bw-member-container .mt-0{margin-top:0!important}
.bw-member-container .mt-1{margin-top:.25rem!important}
.bw-member-container .mt-2{margin-top:.5rem!important}
.bw-member-container .mt-3{margin-top:1rem!important}
.bw-member-container .mt-4{margin-top:1.5rem!important}
.bw-member-container .mt-5{margin-top:3rem!important}

.bw-member-container .mb-0{margin-bottom:0!important}
.bw-member-container .mb-1{margin-bottom:.25rem!important}
.bw-member-container .mb-2{margin-bottom:.5rem!important}
.bw-member-container .mb-3{margin-bottom:1rem!important}
.bw-member-container .mb-4{margin-bottom:1.5rem!important}
.bw-member-container .mb-5{margin-bottom:3rem!important}

/* Bootstrap v5 logical margin */
.bw-member-container .ms-0{margin-left:0!important}
.bw-member-container .ms-1{margin-left:.25rem!important}
.bw-member-container .ms-2{margin-left:.5rem!important}
.bw-member-container .ms-3{margin-left:1rem!important}
.bw-member-container .ms-4{margin-left:1.5rem!important}
.bw-member-container .ms-5{margin-left:3rem!important}

.bw-member-container .me-0{margin-right:0!important}
.bw-member-container .me-1{margin-right:.25rem!important}
.bw-member-container .me-2{margin-right:.5rem!important}
.bw-member-container .me-3{margin-right:1rem!important}
.bw-member-container .me-4{margin-right:1.5rem!important}
.bw-member-container .me-5{margin-right:3rem!important}

.bw-member-container .mx-0{margin-left:0!important;margin-right:0!important}
.bw-member-container .mx-1{margin-left:.25rem!important;margin-right:.25rem!important}
.bw-member-container .mx-2{margin-left:.5rem!important;margin-right:.5rem!important}
.bw-member-container .mx-3{margin-left:1rem!important;margin-right:1rem!important}
.bw-member-container .mx-4{margin-left:1.5rem!important;margin-right:1.5rem!important}
.bw-member-container .mx-5{margin-left:3rem!important;margin-right:3rem!important}

.bw-member-container .my-0{margin-top:0!important;margin-bottom:0!important}
.bw-member-container .my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}
.bw-member-container .my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}
.bw-member-container .my-3{margin-top:1rem!important;margin-bottom:1rem!important}
.bw-member-container .my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}
.bw-member-container .my-5{margin-top:3rem!important;margin-bottom:3rem!important}

/* Bootstrap v4 aliases for compatibility */
.bw-member-container .ml-0{margin-left:0!important}
.bw-member-container .ml-1{margin-left:.25rem!important}
.bw-member-container .ml-2{margin-left:.5rem!important}
.bw-member-container .ml-3{margin-left:1rem!important}
.bw-member-container .ml-4{margin-left:1.5rem!important}
.bw-member-container .ml-5{margin-left:3rem!important}

.bw-member-container .mr-0{margin-right:0!important}
.bw-member-container .mr-1{margin-right:.25rem!important}
.bw-member-container .mr-2{margin-right:.5rem!important}
.bw-member-container .mr-3{margin-right:1rem!important}
.bw-member-container .mr-4{margin-right:1.5rem!important}
.bw-member-container .mr-5{margin-right:3rem!important}

/* Padding utilities */
.bw-member-container .p-0{padding:0!important}
.bw-member-container .p-1{padding:.25rem!important}
.bw-member-container .p-2{padding:.5rem!important}
.bw-member-container .p-3{padding:1rem!important}
.bw-member-container .p-4{padding:1.5rem!important}
.bw-member-container .p-5{padding:3rem!important}

.bw-member-container .pt-0{padding-top:0!important}
.bw-member-container .pt-1{padding-top:.25rem!important}
.bw-member-container .pt-2{padding-top:.5rem!important}
.bw-member-container .pt-3{padding-top:1rem!important}
.bw-member-container .pt-4{padding-top:1.5rem!important}
.bw-member-container .pt-5{padding-top:3rem!important}

.bw-member-container .pb-0{padding-bottom:0!important}
.bw-member-container .pb-1{padding-bottom:.25rem!important}
.bw-member-container .pb-2{padding-bottom:.5rem!important}
.bw-member-container .pb-3{padding-bottom:1rem!important}
.bw-member-container .pb-4{padding-bottom:1.5rem!important}
.bw-member-container .pb-5{padding-bottom:3rem!important}

.bw-member-container .ps-0{padding-left:0!important}
.bw-member-container .ps-1{padding-left:.25rem!important}
.bw-member-container .ps-2{padding-left:.5rem!important}
.bw-member-container .ps-3{padding-left:1rem!important}
.bw-member-container .ps-4{padding-left:1.5rem!important}
.bw-member-container .ps-5{padding-left:3rem!important}

.bw-member-container .pe-0{padding-right:0!important}
.bw-member-container .pe-1{padding-right:.25rem!important}
.bw-member-container .pe-2{padding-right:.5rem!important}
.bw-member-container .pe-3{padding-right:1rem!important}
.bw-member-container .pe-4{padding-right:1.5rem!important}
.bw-member-container .pe-5{padding-right:3rem!important}

.bw-member-container .px-0{padding-left:0!important;padding-right:0!important}
.bw-member-container .px-1{padding-left:.25rem!important;padding-right:.25rem!important}
.bw-member-container .px-2{padding-left:.5rem!important;padding-right:.5rem!important}
.bw-member-container .px-3{padding-left:1rem!important;padding-right:1rem!important}
.bw-member-container .px-4{padding-left:1.5rem!important;padding-right:1.5rem!important}
.bw-member-container .px-5{padding-left:3rem!important;padding-right:3rem!important}

.bw-member-container .py-0{padding-top:0!important;padding-bottom:0!important}
.bw-member-container .py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}
.bw-member-container .py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}
.bw-member-container .py-3{padding-top:1rem!important;padding-bottom:1rem!important}
.bw-member-container .py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}
.bw-member-container .py-5{padding-top:3rem!important;padding-bottom:3rem!important}

/* Bootstrap v4 padding aliases */
.bw-member-container .pl-0{padding-left:0!important}
.bw-member-container .pl-1{padding-left:.25rem!important}
.bw-member-container .pl-2{padding-left:.5rem!important}
.bw-member-container .pl-3{padding-left:1rem!important}
.bw-member-container .pl-4{padding-left:1.5rem!important}
.bw-member-container .pl-5{padding-left:3rem!important}

.bw-member-container .pr-0{padding-right:0!important}
.bw-member-container .pr-1{padding-right:.25rem!important}
.bw-member-container .pr-2{padding-right:.5rem!important}
.bw-member-container .pr-3{padding-right:1rem!important}
.bw-member-container .pr-4{padding-right:1.5rem!important}
.bw-member-container .pr-5{padding-right:3rem!important}

/* Grid helpers */
.bw-member-container .d-grid{display:grid!important}
.bw-member-container .gap-0{gap:0!important}
.bw-member-container .gap-1{gap:.25rem!important}
.bw-member-container .gap-2{gap:.5rem!important}
.bw-member-container .gap-3{gap:1rem!important}
.bw-member-container .gap-4{gap:1.5rem!important}
.bw-member-container .gap-5{gap:3rem!important}

/* More rounded variants */
.bw-member-container .rounded-0{border-radius:0!important}
.bw-member-container .rounded-1{border-radius:.2rem!important}
.bw-member-container .rounded-2{border-radius:.25rem!important}
.bw-member-container .rounded-3{border-radius:.3rem!important}

/* Text secondary + fw-bold */
.bw-member-container .text-secondary{color:#6c757d!important}
.bw-member-container .fw-bold{font-weight:700!important}
/* Text color utilities */
.bw-member-container .text-primary{color:#0d6efd!important}
.bw-member-container .text-success{color:#198754!important}
.bw-member-container .text-info{color:#0dcaf0!important}
.bw-member-container .text-warning{color:#ffc107!important}

/* Outline button variants */
.bw-member-container .btn-outline-secondary{color:#6c757d;border:1px solid #6c757d;background:transparent}
.bw-member-container .btn-outline-secondary:hover{color:#fff;background:#6c757d;border-color:#6c757d}
.bw-member-container .btn-outline-success{color:#198754;border:1px solid #198754;background:transparent}
.bw-member-container .btn-outline-success:hover{color:#fff;background:#198754;border-color:#198754}
.bw-member-container .btn-outline-danger{color:#dc3545;border:1px solid #dc3545;background:transparent}
.bw-member-container .btn-outline-danger:hover{color:#fff;background:#dc3545;border-color:#dc3545}
.bw-member-container .btn-outline-warning{color:#ffc107;border:1px solid #ffc107;background:transparent}
.bw-member-container .btn-outline-warning:hover{color:#212529;background:#ffc107;border-color:#ffc107}
.bw-member-container .btn-outline-info{color:#0dcaf0;border:1px solid #0dcaf0;background:transparent}
.bw-member-container .btn-outline-info:hover{color:#000;background:#0dcaf0;border-color:#0dcaf0}
.bw-member-container .btn-outline-light{color:#f8f9fa;border:1px solid #f8f9fa;background:transparent}
.bw-member-container .btn-outline-light:hover{color:#212529;background:#f8f9fa;border-color:#f8f9fa}
.bw-member-container .btn-outline-dark{color:#343a40;border:1px solid #343a40;background:transparent}
.bw-member-container .btn-outline-dark:hover{color:#fff;background:#343a40;border-color:#343a40}
.bw-member-container .btn-outline-primary{color:#0d6efd;border:1px solid #0d6efd;background:transparent}
.bw-member-container .btn-outline-primary:hover{color:#fff;background:#0d6efd;border-color:#0d6efd}

/* Nav tabs + pills (minimal styles) */
.bw-member-container .nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:1rem;list-style:none}
.bw-member-container .nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem;padding:.5rem .75rem;color:#0d6efd}
.bw-member-container .nav-tabs{border-bottom:1px solid #dee2e6}
.bw-member-container .nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}
.bw-member-container .nav-pills .nav-link{border-radius:.25rem;color:#0d6efd;padding:.5rem .75rem}
.bw-member-container .nav-pills .nav-link.active{color:#fff;background-color:#0d6efd}

/* Input group (basic) */
.bw-member-container .input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}
.bw-member-container .input-group>.form-control{flex:1 1 auto}
.bw-member-container .input-group-text{display:flex;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}

/* Table hover */
.bw-member-container .table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}

/* Img thumbnail */
.bw-member-container .img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}

/* List group flush */
.bw-member-container .list-group-flush .list-group-item{border-left:0;border-right:0;border-radius:0}

/* Text color utilities (continued) */
.bw-member-container .text-danger{color:#dc3545!important}
.bw-member-container .font-weight-bold{font-weight:700!important}

/* Card footer + title */
.bw-member-container .card-footer{background-color:#f8f9fa;border-top:1px solid #dee2e6;padding:.75rem 1rem}
.bw-member-container .card-title{margin-bottom:.5rem;font-weight:500}

/* Shadows */
.bw-member-container .shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}


/* Flex switch minimal layout */
.bw-member-container .form-switch{padding-left:2.5rem}
.bw-member-container .form-switch .form-check-input{width:2.25rem;height:1.25rem;margin-left:-2.5rem;border-radius:1.25rem;position:relative}
.bw-member-container .form-switch .form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}
.bw-member-container .form-switch .form-check-input{appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid #ced4da;transition:.15s ease-in-out}
.bw-member-container .form-switch .form-check-input::after{content:"";position:absolute;top:50%;left:.15rem;width:.95rem;height:.95rem;border-radius:50%;background-color:#fff;border:1px solid #ced4da;transform:translateY(-50%);transition:.15s ease-in-out}
.bw-member-container .form-switch .form-check-input:checked::after{left:1.15rem;border-color:#0d6efd}
/* Badge v4 aliases (compat) */
.bw-member-container .badge-primary{background-color:#0d6efd!important;color:#fff!important}
.bw-member-container .badge-secondary{background-color:#6c757d!important;color:#fff!important}
.bw-member-container .badge-success{background-color:#198754!important;color:#fff!important}
.bw-member-container .badge-danger{background-color:#dc3545!important;color:#fff!important}
.bw-member-container .badge-warning{background-color:#ffc107!important;color:#212529!important}
.bw-member-container .badge-info{background-color:#0dcaf0!important;color:#000!important}
.bw-member-container .badge-light{background-color:#f8f9fa!important;color:#212529!important}
.bw-member-container .badge-dark{background-color:#343a40!important;color:#fff!important}

/* Form validation utilities (Bootstrap-like) scoped to .bw-member-container */
.bw-member-container .form-control.is-invalid,
.bw-member-container .form-select.is-invalid{border-color:#dc3545!important}
.bw-member-container .form-control.is-invalid:focus,
.bw-member-container .form-select.is-invalid:focus{border-color:#dc3545!important;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)!important;outline:0}

.bw-member-container .form-control.is-valid,
.bw-member-container .form-select.is-valid{border-color:#198754!important}
.bw-member-container .form-control.is-valid:focus,
.bw-member-container .form-select.is-valid:focus{border-color:#198754!important;box-shadow:0 0 0 .2rem rgba(25,135,84,.25)!important;outline:0}

/* Feedback messages */
.bw-member-container .invalid-feedback,
.bw-member-container .valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875rem}
.bw-member-container .invalid-feedback{color:#dc3545}
.bw-member-container .valid-feedback{color:#198754}

/* Show feedback next to controls when invalid/valid */
.bw-member-container .form-control.is-invalid~.invalid-feedback,
.bw-member-container .form-select.is-invalid~.invalid-feedback,
.bw-member-container .form-check-input.is-invalid~.invalid-feedback{display:block}

.bw-member-container .form-control.is-valid~.valid-feedback,
.bw-member-container .form-select.is-valid~.valid-feedback,
.bw-member-container .form-check-input.is-valid~.valid-feedback{display:block}

/* Native constraint validation (was-validated) */
.bw-member-container .was-validated .form-control:invalid,
.bw-member-container .was-validated .form-select:invalid{border-color:#dc3545!important}
.bw-member-container .was-validated .form-control:invalid:focus,
.bw-member-container .was-validated .form-select:invalid:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)!important}
.bw-member-container .was-validated .form-control:valid,
.bw-member-container .was-validated .form-select:valid{border-color:#198754!important}
.bw-member-container .was-validated .form-control:valid:focus,
.bw-member-container .was-validated .form-select:valid:focus{box-shadow:0 0 0 .2rem rgba(25,135,84,.25)!important}

.bw-member-container .was-validated .form-control:invalid~.invalid-feedback,
.bw-member-container .was-validated .form-select:invalid~.invalid-feedback,
.bw-member-container .was-validated .form-check-input:invalid~.invalid-feedback{display:block}
.bw-member-container .was-validated .form-control:valid~.valid-feedback,
.bw-member-container .was-validated .form-select:valid~.valid-feedback,
.bw-member-container .was-validated .form-check-input:valid~.valid-feedback{display:block}

/* Form-check inputs */
.bw-member-container .form-check-input.is-invalid{border-color:#dc3545!important}
.bw-member-container .form-check-input.is-valid{border-color:#198754!important}

/* Tooltips for validation */
.bw-member-container .invalid-tooltip,
.bw-member-container .valid-tooltip{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;border-radius:.25rem}
.bw-member-container .invalid-tooltip{background-color:rgba(220,53,69,.9)}
.bw-member-container .valid-tooltip{background-color:rgba(25,135,84,.9)}

/* Show tooltips when invalid/valid */
.bw-member-container .form-control.is-invalid~.invalid-tooltip,
.bw-member-container .form-select.is-invalid~.invalid-tooltip,
.bw-member-container .was-validated .form-control:invalid~.invalid-tooltip,
.bw-member-container .was-validated .form-select:invalid~.invalid-tooltip{display:block}

.bw-member-container .form-control.is-valid~.valid-tooltip,
.bw-member-container .form-select.is-valid~.valid-tooltip,
.bw-member-container .was-validated .form-control:valid~.valid-tooltip,
.bw-member-container .was-validated .form-select:valid~.valid-tooltip{display:block}

/* Helper: wrapper that positions validation tooltips */
.bw-member-container .has-validation{position:relative}

/* Checkbox sizing and alignment for register form */
.bw-member-container .form-check {
  display: flex;
  align-items: center;
}

.bw-member-container .form-check .form-check-input {
  width: 1.25rem;
  height: 1.25rem;
  margin: 0 0.5rem 0 0;
  vertical-align: middle;
  accent-color: #0d6efd; /* enhance visual when checked */
}

.bw-member-container .form-check .form-check-label {
  margin: 0;
  line-height: 1.5;
  cursor: pointer;
}

/* ===== Bootstrap Modal Styles ===== */
/* Modal backdrop */
.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1055;
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}

.modal.fade {
  transition: opacity 0.15s linear;
}

.modal.show {
  display: block !important;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.5;
}

/* Modal dialog */
.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}

.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}

.modal.show .modal-dialog {
  transform: none;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}

.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: -webkit-min-content;
  height: -moz-min-content;
  height: min-content;
  content: "";
}

/* Modal content */
.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.5);
}

/* Modal header */
.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}

.modal-header::before {
  display: table;
  content: " ";
}

.modal-header::after {
  display: table;
  content: " ";
  clear: both;
}

.modal-title {
  margin: 0;
  line-height: 1.42857143;
}

/* Modal body */
.modal-body {
  position: relative;
  padding: 15px;
}

.modal-body p{
  margin: 0;
  font-size: 14px;
  line-height: 1.42857143;
  color: #333;
}

/* Modal footer */
.modal-footer {
  display: flex;
  flex-wrap: wrap;
  flex-shrink: 0;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}

.modal-footer > * {
  margin: 0.25rem;
}


/* Close button for modal */
.modal-header .close {
  -webkit-appearance: none;
  margin: 0;
  padding: 0;
  cursor: pointer;
  background: 0 0;
  border: 0;
  float: right;
  font-size: 21px;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .2;
}

/* Responsive modal sizes */
@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
  
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
  }
}

@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}

/* Modal size variants */
.modal-sm {
  max-width: 300px;
}

/* Scrollable modal */
.modal-dialog-scrollable {
  height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
  max-height: 100%;
  overflow: hidden;
}

.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

@media (min-width: 576px) {
  .modal-dialog-scrollable {
    height: calc(100% - 3.5rem);
  }
}