/**
 * BWA Attach Mode CSS Bundle
 * CSS Load Order (non-negotiable):
 *   1. Bootstrap 5 CSS
 *   2. Site theme (if any)
 *   3. Tailwind utilities (no preflight)
 *   4. BWA attach scoped styles
 *
 * Generated: 2026-01-07T14:23:49.640Z
 */

/* WARNING: Bootstrap 5 CSS not found */

/* ================================================
   3b. BWA Unified Shadow Design System (Scoped to .bwa-attach)
   Non-destructive: All selectors prefixed with .bwa-attach
   ================================================ */
/* ========================================
   BWA Unified Shadow Design System
   Bootstrap 5 Compatible Shadows with Design Tokens
   ======================================== */

/* ========================================
   Shadow Design Tokens
   ======================================== */
:root {
  /* Shadow Scale (BS5 Compatible) */
  --bwa-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05);
  --bwa-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bwa-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bwa-shadow-md: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bwa-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bwa-shadow-xl: 0 1.5rem 4rem rgba(0, 0, 0, 0.2);
  --bwa-shadow-hover: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.2);
  --bwa-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bwa-shadow-none: none;

  /* Colored Shadows */
  --bwa-shadow-primary: 0 0.5rem 1.5rem rgba(3, 2, 19, 0.25);
  --bwa-shadow-primary-sm: 0 0.25rem 0.75rem rgba(3, 2, 19, 0.15);

  /* Border Radius Scale */
  --bwa-radius-sm: 0.25rem;
  --bwa-radius: var(--radius, 0.625rem);
  --bwa-radius-md: 0.5rem;
  --bwa-radius-lg: 0.75rem;
  --bwa-radius-xl: 1rem;
  --bwa-radius-2xl: 1.5rem;
  --bwa-radius-full: 9999px;

  /* Transitions */
  --bwa-transition-fast: all 0.15s ease-in-out;
  --bwa-transition: all 0.2s ease-in-out;
  --bwa-transition-slow: all 0.3s ease-in-out;

  /* Focus Ring */
  --bwa-focus-ring: 0 0 0 0.25rem rgba(3, 2, 19, 0.25);
  --bwa-focus-ring-primary: 0 0 0 0.25rem rgba(91, 33, 182, 0.25);
}

/* Dark Mode Theme Variables */
.bwa-attach.dark {
  --bwa-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.2);
  --bwa-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.3);
  --bwa-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.4);
  --bwa-shadow-md: 0 0.5rem 1rem rgba(0, 0, 0, 0.4);
  --bwa-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.5);
  --bwa-shadow-xl: 0 1.5rem 4rem rgba(0, 0, 0, 0.6);
  --bwa-shadow-hover: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.5);
}

/* ========================================
   Shadow Utility Classes
   ======================================== */
.bwa-attach .bwa-shadow-xs { box-shadow: var(--bwa-shadow-xs) !important; }
.bwa-attach .bwa-shadow-sm { box-shadow: var(--bwa-shadow-sm) !important; }
.bwa-attach .bwa-shadow { box-shadow: var(--bwa-shadow) !important; }
.bwa-attach .bwa-shadow-md { box-shadow: var(--bwa-shadow-md) !important; }
.bwa-attach .bwa-shadow-lg { box-shadow: var(--bwa-shadow-lg) !important; }
.bwa-attach .bwa-shadow-xl { box-shadow: var(--bwa-shadow-xl) !important; }
.bwa-attach .bwa-shadow-none { box-shadow: none !important; }
.bwa-attach .bwa-shadow-inset { box-shadow: var(--bwa-shadow-inset) !important; }

/* Hover shadow utilities */
.bwa-attach .bwa-shadow-hover:hover { box-shadow: var(--bwa-shadow-hover) !important; }
.bwa-attach .bwa-shadow-lift:hover {
  box-shadow: var(--bwa-shadow-lg) !important;
  transform: translateY(-2px);
}

/* ========================================
   Card Components (BWA-SPECIFIC ONLY)
   Only styles elements with explicit BWA classes or inside .bwa-module
   ======================================== */
.bwa-attach .bwa-card,
.bwa-attach [data-slot="card"],
.bwa-attach .bwa-module fieldset {
  background-color: var(--card, #fff);
  border: 1px solid var(--border, rgba(0, 0, 0, 0.1));
  border-radius: var(--bwa-radius-lg);
  box-shadow: var(--bwa-shadow-sm);
  transition: var(--bwa-transition);
}

.bwa-attach .bwa-card:hover,
.bwa-attach [data-slot="card"]:hover {
  box-shadow: var(--bwa-shadow);
}

.bwa-attach .bwa-card-elevated {
  box-shadow: var(--bwa-shadow);
}

.bwa-attach .bwa-card-elevated:hover {
  box-shadow: var(--bwa-shadow-lg);
  transform: translateY(-2px);
}

/* Card header (BWA-SPECIFIC ONLY) */
.bwa-attach .bwa-card-header,
.bwa-attach .bwa-module legend {
  background-color: var(--muted, #ececf0);
  border-bottom: 1px solid var(--border, rgba(0, 0, 0, 0.1));
  padding: 1rem 1.25rem;
  margin: -1px -1px 1rem -1px;
  border-radius: var(--bwa-radius-lg) var(--bwa-radius-lg) 0 0;
  font-weight: var(--font-weight-medium, 500);
}

/* ========================================
   Button Components (BWA-SPECIFIC ONLY)
   Only styles elements with explicit BWA classes or inside .bwa-module
   ======================================== */
.bwa-attach .bwa-btn,
.bwa-attach [data-slot="button"],
.bwa-attach .bwa-module button[type="submit"],
.bwa-attach .bwa-module input[type="submit"],
.bwa-attach .bwa-module input[type="button"] {
  border-radius: var(--bwa-radius);
  box-shadow: var(--bwa-shadow-xs);
  transition: var(--bwa-transition);
  font-weight: var(--font-weight-medium, 500);
}

.bwa-attach .bwa-btn:hover,
.bwa-attach [data-slot="button"]:hover,
.bwa-attach .bwa-module button[type="submit"]:hover,
.bwa-attach .bwa-module input[type="submit"]:hover,
.bwa-attach .bwa-module input[type="button"]:hover {
  box-shadow: var(--bwa-shadow-sm);
  transform: translateY(-1px);
}

.bwa-attach .bwa-btn:active,
.bwa-attach .bwa-module button[type="submit"]:active,
.bwa-attach .bwa-module input[type="submit"]:active {
  box-shadow: var(--bwa-shadow-xs);
  transform: translateY(0);
}

.bwa-attach .bwa-btn:focus,
.bwa-attach .bwa-module button[type="submit"]:focus,
.bwa-attach .bwa-module input[type="submit"]:focus {
  box-shadow: var(--bwa-focus-ring);
  outline: none;
}

/* ========================================
   Input Components (BWA-SPECIFIC ONLY)
   Only styles elements with explicit BWA classes or inside .bwa-module
   ======================================== */
.bwa-attach .bwa-input,
.bwa-attach [data-slot="input"],
.bwa-attach .bwa-module input[type="text"],
.bwa-attach .bwa-module input[type="email"],
.bwa-attach .bwa-module input[type="password"],
.bwa-attach .bwa-module input[type="tel"],
.bwa-attach .bwa-module input[type="number"],
.bwa-attach .bwa-module input[type="search"],
.bwa-attach .bwa-module input[type="url"],
.bwa-attach .bwa-module input[type="date"],
.bwa-attach .bwa-module textarea,
.bwa-attach .bwa-module select {
  border-radius: var(--bwa-radius);
  border: 1px solid var(--border, rgba(0, 0, 0, 0.1));
  transition: var(--bwa-transition-fast);
}

.bwa-attach .bwa-input:focus,
.bwa-attach [data-slot="input"]:focus,
.bwa-attach .bwa-module input:focus,
.bwa-attach .bwa-module textarea:focus,
.bwa-attach .bwa-module select:focus {
  border-color: var(--primary, #5b21b6);
  box-shadow: var(--bwa-focus-ring-primary);
  outline: none;
}

/* ========================================
   Border Radius Utilities
   ======================================== */
.bwa-attach .bwa-rounded-sm { border-radius: var(--bwa-radius-sm) !important; }
.bwa-attach .bwa-rounded { border-radius: var(--bwa-radius) !important; }
.bwa-attach .bwa-rounded-md { border-radius: var(--bwa-radius-md) !important; }
.bwa-attach .bwa-rounded-lg { border-radius: var(--bwa-radius-lg) !important; }
.bwa-attach .bwa-rounded-xl { border-radius: var(--bwa-radius-xl) !important; }
.bwa-attach .bwa-rounded-2xl { border-radius: var(--bwa-radius-2xl) !important; }
.bwa-attach .bwa-rounded-full { border-radius: var(--bwa-radius-full) !important; }

/* ========================================
   Transition Utilities
   ======================================== */
.bwa-attach .bwa-transition-fast { transition: var(--bwa-transition-fast) !important; }
.bwa-attach .bwa-transition { transition: var(--bwa-transition) !important; }
.bwa-attach .bwa-transition-slow { transition: var(--bwa-transition-slow) !important; }


/* ================================================
   4. BWA Attach Scoped Styles (Universal Mappings)
   ================================================ */

/* ================================================
   BWA Attach Mode - Universal Style Mappings
   Scope: .bwa-attach wrapper (non-destructive)
   ================================================ */

/* Single-column layout baseline (works even if no grid exists) */
.bwa-attach .bwa-panel {
  max-width: 480px;
  margin: 0 auto;
  padding: 2rem 1.25rem;
  border-radius: .75rem;
  box-shadow: var(--bs-box-shadow-lg, 0 1rem 3rem rgba(0,0,0,.175));
  background: var(--bs-body-bg, #fff);
}

/* Form controls → Bootstrap look (no class required) */
.bwa-attach input[type="text"],
.bwa-attach input[type="email"],
.bwa-attach input[type="password"],
.bwa-attach input[type="tel"],
.bwa-attach input[type="search"],
.bwa-attach input[type="number"],
.bwa-attach input[type="url"],
.bwa-attach input[type="date"],
.bwa-attach input[type="time"],
.bwa-attach select,
.bwa-attach textarea {
  display: block;
  width: 100%;
  padding: .5rem .75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color, #212529);
  background-color: var(--bs-body-bg, #fff);
  background-clip: padding-box;
  border: 1px solid var(--bs-border-color, #dee2e6);
  border-radius: .375rem;
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.bwa-attach input:focus,
.bwa-attach select:focus,
.bwa-attach textarea:focus {
  color: var(--bs-body-color, #212529);
  background-color: var(--bs-body-bg, #fff);
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
}

/* Submit buttons → Bootstrap primary button look */
.bwa-attach button[type="submit"],
.bwa-attach input[type="submit"],
.bwa-attach .bwa-submit {
  display: block;
  width: 100%;
  padding: .625rem 1rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  text-decoration: none;
  background-color: var(--bs-primary, #0d6efd);
  border: 1px solid var(--bs-primary, #0d6efd);
  border-radius: .5rem;
  cursor: pointer;
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.bwa-attach button[type="submit"]:hover,
.bwa-attach input[type="submit"]:hover,
.bwa-attach .bwa-submit:hover {
  color: #fff;
  background-color: #0b5ed7;
  border-color: #0a58ca;
}

.bwa-attach button[type="submit"]:focus,
.bwa-attach input[type="submit"]:focus,
.bwa-attach .bwa-submit:focus {
  outline: 0;
  box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .5);
}

/* Vertical rhythm - tidy spacing */
.bwa-attach .form-group,
.bwa-attach .field,
.bwa-attach .bwa-field,
.bwa-attach label + input,
.bwa-attach label + select,
.bwa-attach label + textarea {
  margin-bottom: .75rem;
}

.bwa-attach label {
  display: inline-block;
  margin-bottom: .5rem;
  font-weight: 500;
}

/* Checkbox and Radio styling */
.bwa-attach input[type="checkbox"],
.bwa-attach input[type="radio"] {
  width: auto;
  margin-right: .5rem;
}

.bwa-attach .form-check {
  display: block;
  margin-bottom: .75rem;
  padding-left: 1.5em;
}

.bwa-attach .form-check-input {
  float: left;
  margin-left: -1.5em;
}

.bwa-attach .form-check-label {
  font-weight: 400;
}

/* Validation feedback */
.bwa-attach .invalid-feedback,
.bwa-attach .error-message {
  display: block;
  margin-top: .25rem;
  font-size: .875em;
  color: var(--bs-danger, #dc3545);
}

.bwa-attach .valid-feedback,
.bwa-attach .success-message {
  display: block;
  margin-top: .25rem;
  font-size: .875em;
  color: var(--bs-success, #198754);
}

/* Two-column opt-in layout (CSS Grid, no DOM rewrite needed) */
.bwa-attach[data-bwa-layout="2col"] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .bwa-attach[data-bwa-layout="2col"] {
    grid-template-columns: 1fr;
  }
}

/* Hero/Banner images in two-column layout */
.bwa-attach[data-bwa-layout="2col"] img {
  width: 100%;
  height: auto;
  border-radius: .75rem;
}

/* Card-style wrapper for login/forms */
.bwa-attach .bwa-card {
  background: var(--bs-body-bg, #fff);
  border: 1px solid var(--bs-border-color, #dee2e6);
  border-radius: .75rem;
  padding: 2rem;
  box-shadow: var(--bs-box-shadow, 0 .5rem 1rem rgba(0,0,0,.15));
}

/* Alert/notification styling */
.bwa-attach .alert,
.bwa-attach .notification {
  padding: 1rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: .375rem;
}

.bwa-attach .alert-success,
.bwa-attach .notification-success {
  color: #0f5132;
  background-color: #d1e7dd;
  border-color: #badbcc;
}

.bwa-attach .alert-danger,
.bwa-attach .alert-error,
.bwa-attach .notification-error {
  color: #842029;
  background-color: #f8d7da;
  border-color: #f5c2c7;
}

.bwa-attach .alert-info,
.bwa-attach .notification-info {
  color: #055160;
  background-color: #cff4fc;
  border-color: #b6effb;
}

/* Loading states */
.bwa-attach .loading,
.bwa-attach [data-loading="true"] {
  opacity: 0.6;
  pointer-events: none;
}

/* Disabled states */
.bwa-attach input:disabled,
.bwa-attach select:disabled,
.bwa-attach textarea:disabled,
.bwa-attach button:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

/* Remember me checkbox styling */
.bwa-attach .remember-me {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}

.bwa-attach .remember-me input[type="checkbox"] {
  margin-right: .5rem;
}

/* Forgot password link */
.bwa-attach .forgot-password {
  display: block;
  text-align: right;
  margin-bottom: 1rem;
  font-size: .875rem;
}

/* ================================================
   End BWA Attach Mode Styles
   ================================================ */

/* FontAwesome Icon Hiding Rules (Scoped to .bwa-attach) */
/* These icons will be replaced with Lucide icons via JavaScript */
/* FontAwesome Icon Hiding Rules */
.bwa-attach .fa-solid.fa-envelope,
.bwa-attach .fa-regular.fa-envelope,
.bwa-attach .fa-light.fa-envelope,
.bwa-attach .fa-brands.fa-envelope,
.bwa-attach .fas.fa-envelope,
.bwa-attach .far.fa-envelope,
.bwa-attach .fal.fa-envelope,
.bwa-attach .fab.fa-envelope {
  display: none !important;
}

.bwa-attach .fa-solid.fa-trash,
.bwa-attach .fa-regular.fa-trash,
.bwa-attach .fa-light.fa-trash,
.bwa-attach .fa-brands.fa-trash,
.bwa-attach .fas.fa-trash,
.bwa-attach .far.fa-trash,
.bwa-attach .fal.fa-trash,
.bwa-attach .fab.fa-trash {
  display: none !important;
}

.bwa-attach .fa-solid.fa-circle-info,
.bwa-attach .fa-regular.fa-circle-info,
.bwa-attach .fa-light.fa-circle-info,
.bwa-attach .fa-brands.fa-circle-info,
.bwa-attach .fas.fa-circle-info,
.bwa-attach .far.fa-circle-info,
.bwa-attach .fal.fa-circle-info,
.bwa-attach .fab.fa-circle-info {
  display: none !important;
}

.bwa-attach .fa-solid.fa-circle-user,
.bwa-attach .fa-regular.fa-circle-user,
.bwa-attach .fa-light.fa-circle-user,
.bwa-attach .fa-brands.fa-circle-user,
.bwa-attach .fas.fa-circle-user,
.bwa-attach .far.fa-circle-user,
.bwa-attach .fal.fa-circle-user,
.bwa-attach .fab.fa-circle-user {
  display: none !important;
}

.bwa-attach .fa-solid.fa-message-sms,
.bwa-attach .fa-regular.fa-message-sms,
.bwa-attach .fa-light.fa-message-sms,
.bwa-attach .fa-brands.fa-message-sms,
.bwa-attach .fas.fa-message-sms,
.bwa-attach .far.fa-message-sms,
.bwa-attach .fal.fa-message-sms,
.bwa-attach .fab.fa-message-sms {
  display: none !important;
}
/* Attached component indicator (dev mode) */
[data-bwa-attached] {
  /* Components with attached behavior */
}




/* =========================================
   THEME OVERRIDES – Solid Colors + Vars
   ========================================= */

:root {
   
    /* SHADES */
    --green10: color-mix(in srgb, var(--green) 10%, transparent);
    --green20: color-mix(in srgb, var(--green) 20%, transparent);
    --green30: color-mix(in srgb, var(--green) 30%, transparent);
    --green50: color-mix(in srgb, var(--green) 50%, transparent);
    --green60: color-mix(in srgb, var(--green) 60%, transparent);
    --green70: color-mix(in srgb, var(--green) 70%, transparent);
    --green90: color-mix(in srgb, var(--green) 90%, transparent);
    --orange10: color-mix(in srgb, var(--orange) 10%, transparent);
    --orange20: color-mix(in srgb, var(--orange) 20%, transparent);
    --orange30: color-mix(in srgb, var(--orange) 30%, transparent);
    --orange40: color-mix(in srgb, var(--orange) 40%, transparent);
    --orange50: color-mix(in srgb, var(--orange) 50%, transparent);
    --orange60: color-mix(in srgb, var(--orange) 60%, transparent);
    --orange70: color-mix(in srgb, var(--orange) 70%, transparent);
    --orange90: color-mix(in srgb, var(--orange) 90%, transparent);
    --purple10: color-mix(in srgb, var(--purple) 10%, transparent);
    --purple20: color-mix(in srgb, var(--purple) 20%, transparent);
    --purple30: color-mix(in srgb, var(--purple) 30%, transparent);
    --purple50: color-mix(in srgb, var(--purple) 50%, transparent);
    --purple60: color-mix(in srgb, var(--purple) 60%, transparent);
    --purple70: color-mix(in srgb, var(--purple) 70%, transparent);
    --purple90: color-mix(in srgb, var(--purple) 90%, transparent);
}

/* -------- Remove Gradients Globally -------- */
[class*="bg-"],
[class*="gradient"],
button,
.btn,
.card,
.alert {
    background-image: none !important;
}

/* -------- Replace Common Static Colors -------- */

/* Reds → Orange */
[style*="#dc2626"],
[style*="#ef4444"],
[style*="#f87171"],
.text-red-500,
.bg-red-500 {
    color: var(--orange) !important;
    background-color: var(--orange) !important;
}

/* Greens → Primary Green */
[style*="#16a34a"],
[style*="#22c55e"],
.text-green-500,
.bg-green-500 {
    color: var(--green) !important;
    background-color: var(--green) !important;
}

/* Purples / Dark */
[style*="#7c3aed"],
.text-purple-500,
.bg-purple-500 {
    color: var(--purple) !important;
    background-color: var(--purple) !important;
}

/* Grays */
[style*="#111827"],
[style*="#1f2937"],
[style*="#374151"] {
    color: var(--dark) !important;
}

[style*="#e5e7eb"],
[style*="#d1d5db"] {
    background-color: var(--dark-light) !important;
}

/* Body Defaults */
body {
    font-family: var(--font) !important;
    background-color: var(--totalBG) !important;
    color: var(--dark) !important;
}
