:root{
  --t-bg:#080c12;
  --t-bg-2:#0d131c;
  --t-panel:#111923;
  --t-panel-2:#151f2b;
  --t-panel-soft:#0f1722;
  --t-line:rgba(183,202,169,.13);
  --t-line-strong:rgba(183,202,169,.24);
  --t-text:#ecf2e8;
  --t-muted:#8e9b8a;
  --t-accent:#a6bb83;
  --t-accent-2:#c2d59e;
  --t-blue:#70a0bd;
  --t-amber:#d9a441;
  --t-danger:#d96b6b;
  --t-green:#85b477;
  --t-sidebar:258px;
  --t-radius:12px;
  --t-shadow:0 22px 60px rgba(0,0,0,.28);
}

body.ui-modern{
  margin:0!important;
  min-height:100vh;
  background:
    radial-gradient(circle at 72% 2%,rgba(112,160,189,.08),transparent 30%),
    radial-gradient(circle at 2% 94%,rgba(166,187,131,.06),transparent 27%),
    var(--t-bg)!important;
  color:var(--t-text)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  overflow-x:hidden;
}

body.ui-modern::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(166,187,131,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(166,187,131,.014) 1px,transparent 1px);
  background-size:38px 38px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 85%);
  z-index:0;
}

.ui-modern *{scrollbar-color:#364334 #0b1119;scrollbar-width:thin}
.ui-modern a{color:#b8d29a}
.ui-modern a:hover{color:#d8e8c5}

.tactical-shell{min-height:100vh;position:relative;z-index:1}
.tactical-sidebar{
  position:fixed;inset:0 auto 0 0;width:var(--t-sidebar);z-index:1040;
  display:flex;flex-direction:column;
  background:linear-gradient(180deg,#0d131b 0%,#0a0f16 100%);
  border-right:1px solid var(--t-line);
  box-shadow:12px 0 38px rgba(0,0,0,.18);
}
.tactical-brand{padding:22px 18px 18px;border-bottom:1px solid var(--t-line)}
.tactical-brand a{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--t-text)}
.brand-emblem{width:42px;height:42px;border:1px solid rgba(166,187,131,.28);background:rgba(166,187,131,.08);display:grid;place-items:center;border-radius:10px;color:var(--t-accent);font-size:1.12rem;box-shadow:inset 0 0 24px rgba(166,187,131,.035)}
.tactical-brand strong{display:block;font-size:.96rem;letter-spacing:.055em;text-transform:uppercase;line-height:1.1}
.tactical-brand small{display:block;margin-top:5px;font-size:.62rem;letter-spacing:.19em;color:#758170;font-weight:800}
.tactical-nav{padding:14px 10px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;flex:1}
.tactical-nav-link{display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:9px;text-decoration:none!important;color:#8f9b8d!important;font-size:.9rem;font-weight:700;border:1px solid transparent;transition:.16s ease}
.tactical-nav-link i{font-size:1.03rem;width:21px;text-align:center;color:#6d7b6b}
.tactical-nav-link:hover{background:rgba(255,255,255,.035);color:#e3eadf!important;border-color:rgba(255,255,255,.04)}
.tactical-nav-link.active{background:linear-gradient(90deg,rgba(166,187,131,.13),rgba(166,187,131,.035));color:#e9f0e5!important;border-color:rgba(166,187,131,.18);box-shadow:inset 2px 0 0 var(--t-accent)}
.tactical-nav-link.active i{color:var(--t-accent)}
.tactical-sidebar-footer{padding:12px;border-top:1px solid var(--t-line);background:rgba(0,0,0,.1)}
.ui-switch-label{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#6f7d6c;font-weight:900;margin:0 0 7px 3px}
.ui-switch-label i{margin-right:5px}
.tactical-theme-select{width:100%!important;min-width:0!important;margin-bottom:12px;background:#0b1118!important;border-color:var(--t-line)!important;color:#cdd7c9!important;border-radius:8px!important;font-size:.76rem!important}
.tactical-user{display:grid;grid-template-columns:36px minmax(0,1fr) 30px;gap:9px;align-items:center;padding:10px 7px 3px}
.user-avatar{width:36px;height:36px;border-radius:9px;background:rgba(112,160,189,.12);border:1px solid rgba(112,160,189,.2);display:grid;place-items:center;font-weight:900;color:#a6c5d7}
.user-meta{min-width:0}.user-meta strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.78rem;color:#d9e0d6}.user-meta small{display:block;color:#667364;font-size:.59rem;letter-spacing:.12em;font-weight:900;margin-top:2px}
.logout-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;color:#7f8a7c!important}.logout-icon:hover{background:rgba(217,107,107,.1);color:#e88787!important}

.tactical-content{margin-left:var(--t-sidebar);min-height:100vh}
.tactical-topbar{position:sticky;top:0;z-index:1030;height:72px;padding:0 26px;display:flex;align-items:center;gap:14px;background:rgba(8,12,18,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--t-line)}
.sidebar-toggle{display:none;width:38px;height:38px;border-radius:9px;border:1px solid var(--t-line);background:#101720;color:#d8e0d3;font-size:1.2rem}
.topbar-title{display:flex;flex-direction:column;line-height:1.13}.topbar-title strong{font-size:1.08rem;letter-spacing:-.015em;color:#eef3eb}.topbar-kicker{font-size:.59rem;letter-spacing:.18em;color:#647060;font-weight:900;margin-bottom:4px}
.topbar-actions{margin-left:auto}.status-dot-wrap{display:inline-flex;align-items:center;gap:7px;color:#798677;font-size:.66rem;font-weight:900;letter-spacing:.11em}.status-dot{width:7px;height:7px;border-radius:50%;background:#79b86b;box-shadow:0 0 10px rgba(121,184,107,.55)}
.tactical-main{padding:24px 28px 44px;max-width:1480px;margin:0 auto}

/* Bootstrap surfaces */
.ui-modern .card,
.ui-modern .modal-content,
.ui-modern .home-card,
.ui-modern .panel,
.ui-modern .content-card,
.ui-modern .section-card,
.ui-modern .operation-card,
.ui-modern .member-card,
.ui-modern .training-card,
.ui-modern .briefing-card{
  background:linear-gradient(180deg,rgba(20,29,40,.96),rgba(14,22,31,.96))!important;
  color:var(--t-text)!important;
  border:1px solid var(--t-line)!important;
  border-radius:var(--t-radius)!important;
  box-shadow:var(--t-shadow)!important;
}
.ui-modern .card-header,.ui-modern .card-footer,.ui-modern .home-card-header{background:rgba(255,255,255,.018)!important;border-color:var(--t-line)!important;color:var(--t-text)!important}
.ui-modern .card h1,.ui-modern .card h2,.ui-modern .card h3,.ui-modern .card h4,.ui-modern .card h5,.ui-modern .card h6,
.ui-modern .home-card h1,.ui-modern .home-card h2,.ui-modern .home-card h3,
.ui-modern h1,.ui-modern h2,.ui-modern h3,.ui-modern h4,.ui-modern h5,.ui-modern h6{color:#edf2e9!important}
.ui-modern .muted,.ui-modern .text-muted,.ui-modern .mission-meta,.ui-modern .stat-label,.ui-modern .empty-state{color:var(--t-muted)!important}
.ui-modern hr{border-color:var(--t-line)!important;opacity:1}

.ui-modern .form-control,.ui-modern .form-select,.ui-modern textarea,.ui-modern .input-group-text{
  background:#0b121a!important;color:#e8eee5!important;border-color:rgba(166,187,131,.17)!important;border-radius:8px!important;
}
.ui-modern .form-control:focus,.ui-modern .form-select:focus,.ui-modern textarea:focus{border-color:rgba(166,187,131,.48)!important;box-shadow:0 0 0 .18rem rgba(166,187,131,.08)!important;background:#0d151e!important}
.ui-modern .form-control::placeholder,.ui-modern textarea::placeholder{color:#536053!important}
.ui-modern .form-label{color:#9fb489!important;font-size:.68rem!important;letter-spacing:.09em!important;font-weight:900!important}
.ui-modern .form-check-input{background-color:#0b121a;border-color:#596556}.ui-modern .form-check-input:checked{background-color:#829967;border-color:#829967}

.ui-modern .btn{border-radius:8px!important;font-weight:800!important;letter-spacing:.005em;box-shadow:none!important}
.ui-modern .btn-primary{background:#758b5d!important;border-color:#839a69!important;color:#071007!important}.ui-modern .btn-primary:hover{background:#8ca46f!important;border-color:#9bb57b!important}
.ui-modern .btn-secondary{background:#293342!important;border-color:#3a4656!important;color:#e1e7de!important}
.ui-modern .btn-soft,.ui-modern .btn-outline-light{background:rgba(255,255,255,.025)!important;border-color:var(--t-line-strong)!important;color:#cbd4c7!important}.ui-modern .btn-soft:hover,.ui-modern .btn-outline-light:hover{background:rgba(166,187,131,.08)!important;color:#eff4ec!important;border-color:rgba(166,187,131,.32)!important}
.ui-modern .btn-danger{background:#7b3f43!important;border-color:#915158!important}.ui-modern .btn-warning{background:#9c7833!important;border-color:#b18b40!important;color:#111!important}.ui-modern .btn-success{background:#52794d!important;border-color:#628e5b!important}

.ui-modern .table,.ui-modern table{--bs-table-bg:transparent!important;--bs-table-color:#dfe6dc!important;--bs-table-border-color:var(--t-line)!important;color:#dfe6dc!important}
.ui-modern .table thead th,.ui-modern table thead th,.ui-modern .home-table thead th{background:#0d151e!important;color:#879584!important;border-color:var(--t-line)!important;font-size:.68rem!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.ui-modern .table tbody td,.ui-modern table tbody td,.ui-modern .home-table tbody td{background:rgba(255,255,255,.006)!important;color:#dce4d9!important;border-color:var(--t-line)!important}
.ui-modern .table tbody tr:hover td,.ui-modern table tbody tr:hover td,.ui-modern .home-table tbody tr:hover td{background:rgba(166,187,131,.035)!important}

.ui-modern .modal-header,.ui-modern .modal-footer{border-color:var(--t-line)!important}.ui-modern .btn-close{filter:invert(1) grayscale(1)}
.ui-modern .dropdown-menu{background:#111a24!important;border-color:var(--t-line)!important;box-shadow:0 18px 45px rgba(0,0,0,.35)}.ui-modern .dropdown-item{color:#cfd8cb}.ui-modern .dropdown-item:hover{background:rgba(166,187,131,.08);color:#eff4ec}
.ui-modern .nav-tabs{border-color:var(--t-line)!important}.ui-modern .nav-tabs .nav-link{color:#899685!important;border-color:transparent!important}.ui-modern .nav-tabs .nav-link.active{background:#141e29!important;color:#dfe9da!important;border-color:var(--t-line) var(--t-line) #141e29!important}
.ui-modern .alert{border-radius:9px!important;background:#141d26!important;border:1px solid var(--t-line)!important;color:#dce5d8!important}.ui-modern .alert-success{border-left:3px solid var(--t-green)!important}.ui-modern .alert-danger{border-left:3px solid var(--t-danger)!important}.ui-modern .alert-warning{border-left:3px solid var(--t-amber)!important}.ui-modern .alert-info{border-left:3px solid var(--t-blue)!important}
.ui-modern .badge{border-radius:6px!important;letter-spacing:.02em}

/* Existing light dashboard re-skin */
.ui-modern .home-page{max-width:none!important}
.ui-modern .home-hero{background:linear-gradient(130deg,rgba(166,187,131,.10),rgba(112,160,189,.035)),#111923!important;border:1px solid var(--t-line)!important;border-radius:var(--t-radius)!important;color:var(--t-text)!important;box-shadow:var(--t-shadow)!important;padding:24px!important}
.ui-modern .home-hero h1{color:#eef3eb!important;font-size:1.8rem!important;letter-spacing:-.035em!important}.ui-modern .home-hero p{color:var(--t-muted)!important}.ui-modern .home-chip{background:rgba(166,187,131,.08)!important;color:#b9cd9f!important;border-color:rgba(166,187,131,.20)!important;border-radius:6px!important;text-transform:uppercase;font-size:.65rem!important;letter-spacing:.08em}
.ui-modern .stat-card{background:linear-gradient(180deg,#131d28,#0f1720)!important;border:1px solid var(--t-line)!important;border-radius:var(--t-radius)!important;box-shadow:0 15px 40px rgba(0,0,0,.2)!important;color:var(--t-text)!important}.ui-modern .stat-card:hover{transform:translateY(-2px)!important;border-color:var(--t-line-strong)!important}.ui-modern .stat-value{color:#edf2e9!important}.ui-modern .stat-icon{border-radius:9px!important;background:rgba(166,187,131,.07)!important;border-color:rgba(166,187,131,.13)!important;color:#9eb284!important}
.ui-modern .date-pill,.ui-modern .status-pill,.ui-modern .badge-soft,.ui-modern .pill{background:rgba(112,160,189,.08)!important;color:#9fc0d2!important;border-color:rgba(112,160,189,.19)!important;border-radius:6px!important}
.ui-modern .mission-title{color:#e8eee4!important}

/* Aggressive neutralization for inline light-theme styles */
.ui-modern [style*="background: #ffffff"],.ui-modern [style*="background:#ffffff"],.ui-modern [style*="background: white"],.ui-modern [style*="background:white"]{background:#121b25!important}
.ui-modern [style*="color: #0f172a"],.ui-modern [style*="color:#0f172a"]{color:#e7eee3!important}
.ui-modern [style*="color: #64748b"],.ui-modern [style*="color:#64748b"]{color:#8f9c8b!important}
.ui-modern [style*="border-color: #e2e8f0"],.ui-modern [style*="border-color:#e2e8f0"]{border-color:var(--t-line)!important}

/* Common custom classes from Bagoly pages */
.ui-modern .page-hero,.ui-modern .section-hero,.ui-modern .ops-hero,.ui-modern .briefing-hero,.ui-modern .attendance-hero,.ui-modern .members-hero,.ui-modern .training-hero,.ui-modern .admin-hero{
  background:linear-gradient(135deg,rgba(166,187,131,.09),rgba(112,160,189,.03)),#121b25!important;
  border-color:var(--t-line)!important;color:var(--t-text)!important;border-radius:var(--t-radius)!important;box-shadow:var(--t-shadow)!important;
}
.ui-modern .calendar-wrap,.ui-modern .calendar-card,.ui-modern .day-card,.ui-modern .member-row,.ui-modern .briefing-section,.ui-modern .plan-card,.ui-modern .aar-card,.ui-modern .doc-card{
  background:#111a24!important;color:#dfe7dc!important;border-color:var(--t-line)!important;box-shadow:none!important;
}
.ui-modern .bg-white,.ui-modern .bg-light{background:#121b25!important}.ui-modern .text-dark{color:#e7eee3!important}.ui-modern .border{border-color:var(--t-line)!important}

/* Operation images/cards */
.ui-modern img{max-width:100%}.ui-modern .operation-image,.ui-modern .mission-image{border-radius:9px!important;border:1px solid var(--t-line)!important}

/* Login */
.ui-modern .tactical-main>.card[style*="max-width:560px"]{margin-top:min(10vh,90px)!important;padding:38px!important;background:linear-gradient(160deg,rgba(166,187,131,.07),rgba(112,160,189,.03)),#111923!important}
.ui-modern .tactical-main>.card[style*="max-width:560px"] h1:before{content:"◆";display:block;font-size:.8rem;color:var(--t-accent);margin-bottom:14px;opacity:.8}

.sidebar-backdrop{display:none}
@media (max-width:991.98px){
  .tactical-sidebar{transform:translateX(-100%);transition:transform .22s ease}.tactical-content{margin-left:0}.sidebar-toggle{display:grid;place-items:center}.ui-modern.sidebar-open .tactical-sidebar{transform:translateX(0)}.ui-modern.sidebar-open .sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:1035;backdrop-filter:blur(2px)}.tactical-topbar{padding:0 16px}.tactical-main{padding:18px 14px 34px}
}
@media (max-width:575.98px){
  .tactical-topbar{height:64px}.topbar-kicker{display:none}.topbar-title strong{font-size:.96rem}.status-dot-wrap{font-size:.58rem}.tactical-main{padding:14px 10px 28px}.ui-modern .card{border-radius:10px!important}.ui-modern .home-hero{padding:18px!important}.ui-modern .home-hero h1{font-size:1.45rem!important}.ui-modern .table-responsive{border-radius:9px}
}

/* ==========================================================
   Bagoly Modern Tactical 1.1
   Complete dark-surface normalization + responsive hardening
   ========================================================== */

/* Never allow legacy light panels to bleed into the tactical theme. */
.ui-modern .att-card,
.ui-modern .att-card-header,
.ui-modern .att-card-body,
.ui-modern .brief-card,
.ui-modern .brief-card-header,
.ui-modern .brief-card-body,
.ui-modern .brief-section,
.ui-modern .brief-section-head,
.ui-modern .brief-section-body,
.ui-modern .cal-card,
.ui-modern .cal-card-header,
.ui-modern .cal-day,
.ui-modern .cal-event,
.ui-modern .mobile-op,
.ui-modern .members-card,
.ui-modern .members-card-header,
.ui-modern .members-card-body,
.ui-modern .member-card,
.ui-modern .rank-editor,
.ui-modern .ops-card,
.ui-modern .ops-card-header,
.ui-modern .ops-card-body,
.ui-modern .upload-zone,
.ui-modern .sp-panel,
.ui-modern .sp-panel-header,
.ui-modern .sp-panel-body,
.ui-modern .squad-card,
.ui-modern .row-box,
.ui-modern .sync-card,
.ui-modern .sync-card-header,
.ui-modern .sync-card-body,
.ui-modern .sync-action,
.ui-modern .sync-warning,
.ui-modern .home-card,
.ui-modern .home-card-header,
.ui-modern .home-card-body,
.ui-modern .empty-state {
  background:linear-gradient(180deg,#131d28 0%,#0f1721 100%)!important;
  border-color:var(--t-line)!important;
  color:var(--t-text)!important;
  box-shadow:0 16px 42px rgba(0,0,0,.22)!important;
}

/* Headers can be subtly separated but never light. */
.ui-modern .att-card-header,
.ui-modern .brief-card-header,
.ui-modern .cal-card-header,
.ui-modern .members-card-header,
.ui-modern .ops-card-header,
.ui-modern .sp-panel-header,
.ui-modern .sync-card-header,
.ui-modern .home-card-header,
.ui-modern .brief-section-head {
  background:#121b25!important;
  border-bottom-color:var(--t-line)!important;
}

/* Legacy text colors: force readable contrast. */
.ui-modern .att-card h1,.ui-modern .att-card h2,.ui-modern .att-card h3,.ui-modern .att-card h4,
.ui-modern .brief-card h1,.ui-modern .brief-card h2,.ui-modern .brief-card h3,.ui-modern .brief-card h4,
.ui-modern .cal-card h1,.ui-modern .cal-card h2,.ui-modern .cal-card h3,.ui-modern .cal-card h4,
.ui-modern .members-card h1,.ui-modern .members-card h2,.ui-modern .members-card h3,.ui-modern .members-card h4,
.ui-modern .ops-card h1,.ui-modern .ops-card h2,.ui-modern .ops-card h3,.ui-modern .ops-card h4,
.ui-modern .sp-panel h1,.ui-modern .sp-panel h2,.ui-modern .sp-panel h3,.ui-modern .sp-panel h4,
.ui-modern .sync-card h1,.ui-modern .sync-card h2,.ui-modern .sync-card h3,.ui-modern .sync-card h4,
.ui-modern .brief-section-title,.ui-modern .member-name,.ui-modern .mission-title,.ui-modern .mobile-op-title {
  color:#eef4eb!important;
}

.ui-modern .att-muted,
.ui-modern .brief-muted,
.ui-modern .cal-muted,
.ui-modern .members-muted,
.ui-modern .ops-muted,
.ui-modern .member-sub,
.ui-modern .brief-section-hint,
.ui-modern .mobile-op-meta,
.ui-modern .mission-meta,
.ui-modern .updated-text {
  color:#97a692!important;
}

.ui-modern .att-label,
.ui-modern .brief-label,
.ui-modern .members-label,
.ui-modern .ops-label,
.ui-modern .form-label {
  color:#a9c18f!important;
}

/* Inputs nested in custom legacy cards. */
.ui-modern .att-card .form-control,
.ui-modern .att-card .form-select,
.ui-modern .brief-card .form-control,
.ui-modern .brief-card .form-select,
.ui-modern .members-card .form-control,
.ui-modern .members-card .form-select,
.ui-modern .ops-card .form-control,
.ui-modern .ops-card .form-select,
.ui-modern .sp-panel .form-control,
.ui-modern .sp-panel .form-select,
.ui-modern .sync-card .form-control,
.ui-modern .sync-card .form-select {
  background:#091119!important;
  color:#edf3ea!important;
  border-color:rgba(166,187,131,.20)!important;
}

.ui-modern .att-card .form-control::placeholder,
.ui-modern .brief-card .form-control::placeholder,
.ui-modern .members-card .form-control::placeholder,
.ui-modern .ops-card .form-control::placeholder,
.ui-modern .sp-panel .form-control::placeholder {
  color:#657362!important;
  opacity:1!important;
}

/* Chips and status elements stay dark while preserving meaning. */
.ui-modern .att-chip,
.ui-modern .brief-chip,
.ui-modern .cal-chip,
.ui-modern .members-chip,
.ui-modern .ops-chip,
.ui-modern .sp-chip,
.ui-modern .sync-chip,
.ui-modern .home-chip {
  background:rgba(133,180,119,.10)!important;
  color:#b9d8ae!important;
  border-color:rgba(133,180,119,.25)!important;
}
.ui-modern .status-going{background:rgba(133,180,119,.12)!important;color:#b8d8ad!important;border-color:rgba(133,180,119,.28)!important}
.ui-modern .status-maybe{background:rgba(217,164,65,.12)!important;color:#e7c780!important;border-color:rgba(217,164,65,.28)!important}
.ui-modern .status-not-going{background:rgba(217,107,107,.12)!important;color:#e6a0a0!important;border-color:rgba(217,107,107,.28)!important}

/* Calendar cells and disabled/empty states. */
.ui-modern .cal-day.is-empty,
.ui-modern .cal-day.is-disabled,
.ui-modern .is-disabled,
.ui-modern .module-disabled-note {
  background:#0b121a!important;
  color:#667363!important;
}
.ui-modern .cal-day.is-today{outline:1px solid rgba(166,187,131,.42)!important;background:rgba(166,187,131,.07)!important}

/* Explicitly neutralize common inline legacy colors, including rgba whites. */
.ui-modern [style*="#fff" i],
.ui-modern [style*="#f8fafc" i],
.ui-modern [style*="#f1f5f9" i],
.ui-modern [style*="#f0fdf4" i],
.ui-modern [style*="rgb(255, 255, 255)" i],
.ui-modern [style*="rgba(248, 250, 252" i] {
  background-color:#121b25!important;
  background-image:none!important;
}
.ui-modern [style*="#0f172a" i],
.ui-modern [style*="#111827" i],
.ui-modern [style*="#1e293b" i] {color:#edf3ea!important}
.ui-modern [style*="#64748b" i],
.ui-modern [style*="#475569" i] {color:#98a695!important}

/* Alerts: readable on dark backgrounds. */
.ui-modern .alert{border-color:var(--t-line)!important;color:#e7eee3!important;background:#121b25!important}
.ui-modern .alert-success{background:rgba(82,121,77,.18)!important;border-color:rgba(98,142,91,.35)!important;color:#c9e4c4!important}
.ui-modern .alert-danger{background:rgba(123,63,67,.20)!important;border-color:rgba(145,81,88,.38)!important;color:#efc0c2!important}
.ui-modern .alert-warning{background:rgba(156,120,51,.18)!important;border-color:rgba(177,139,64,.35)!important;color:#efd99e!important}
.ui-modern .alert-info{background:rgba(112,160,189,.14)!important;border-color:rgba(112,160,189,.32)!important;color:#bdd4e1!important}

/* Mobile-first hardening for Modern Tactical. */
@media (max-width: 991.98px){
  .ui-modern .tactical-sidebar{width:min(86vw,300px)}
  .ui-modern .tactical-main{max-width:100%;overflow:hidden}
  .ui-modern .att-page,.ui-modern .brief-page,.ui-modern .cal-page,.ui-modern .members-page,.ui-modern .ops-page,.ui-modern .sp-page,.ui-modern .sync-page,.ui-modern .home-page{width:100%;max-width:100%}
  .ui-modern .table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .ui-modern table{min-width:680px}
}

@media (max-width: 767.98px){
  .ui-modern .tactical-main{padding:14px 10px 26px!important}
  .ui-modern .att-hero,.ui-modern .brief-hero,.ui-modern .cal-hero,.ui-modern .members-hero,.ui-modern .ops-hero,.ui-modern .sp-hero,.ui-modern .sync-hero,.ui-modern .home-hero{padding:18px!important;border-radius:12px!important}
  .ui-modern .att-card,.ui-modern .brief-card,.ui-modern .cal-card,.ui-modern .members-card,.ui-modern .ops-card,.ui-modern .sp-panel,.ui-modern .sync-card,.ui-modern .home-card{border-radius:11px!important}
  .ui-modern .att-card-header,.ui-modern .att-card-body,
  .ui-modern .brief-card-header,.ui-modern .brief-card-body,
  .ui-modern .cal-card-header,.ui-modern .members-card-header,.ui-modern .members-card-body,
  .ui-modern .ops-card-header,.ui-modern .ops-card-body,
  .ui-modern .sp-panel-header,.ui-modern .sp-panel-body,
  .ui-modern .sync-card-header,.ui-modern .sync-card-body,
  .ui-modern .home-card-header,.ui-modern .home-card-body{padding:14px!important}
  .ui-modern .stat-grid,.ui-modern .member-grid,.ui-modern .brief-op-grid,.ui-modern .module-grid{grid-template-columns:1fr!important}
  .ui-modern .form-control,.ui-modern .form-select,.ui-modern textarea{font-size:16px!important}
  .ui-modern .btn-modern,.ui-modern .btn{white-space:normal}
  .ui-modern .rank-editor,.ui-modern .sync-actions{flex-direction:column!important;align-items:stretch!important}
  .ui-modern .rank-editor>* ,.ui-modern .sync-actions>*{width:100%!important;max-width:100%!important}
}

@media (max-width: 575.98px){
  .ui-modern .tactical-topbar{padding:0 10px!important}
  .ui-modern .topbar-actions .status-dot-wrap{display:none}
  .ui-modern .att-hero h1,.ui-modern .brief-hero h1,.ui-modern .cal-hero h1,.ui-modern .members-hero h1,.ui-modern .ops-hero h1,.ui-modern .sp-hero h1,.ui-modern .sync-hero h1,.ui-modern .home-hero h1{font-size:1.55rem!important}
  .ui-modern .stat-card{padding:12px!important}
}

/* ==========================================================
   Bagoly Modern Tactical 1.2 - Hadrend full dark normalization
   ========================================================== */
.ui-modern .sp-hero {
  background:linear-gradient(135deg,rgba(133,180,119,.10),rgba(112,160,189,.04)),#111a24!important;
  border-color:var(--t-line)!important;
  color:#edf3ea!important;
  box-shadow:0 18px 50px rgba(0,0,0,.26)!important;
}
.ui-modern .sp-hero h1 { color:#f1f5ee!important; }
.ui-modern .sp-hero p { color:#9aa797!important; }
.ui-modern .sp-chip {
  background:rgba(133,180,119,.10)!important;
  color:#b8d7ad!important;
  border-color:rgba(133,180,119,.25)!important;
}

.ui-modern .module-toggle {
  background:linear-gradient(180deg,#141e29,#101821)!important;
  border-color:rgba(166,187,131,.16)!important;
  color:#e8eee5!important;
  box-shadow:none!important;
}
.ui-modern .module-toggle:hover {
  background:linear-gradient(180deg,#17232f,#121c26)!important;
  border-color:rgba(166,187,131,.32)!important;
}
.ui-modern .module-toggle strong { color:#eef4eb!important; }
.ui-modern .module-toggle span { color:#99a695!important; }
.ui-modern .module-toggle input[type="checkbox"] {
  accent-color:#86a86d!important;
}

.ui-modern .module-disabled-note {
  background:rgba(184,137,52,.11)!important;
  border-color:rgba(211,165,76,.27)!important;
  color:#dcc184!important;
}

.ui-modern .sp-panel,
.ui-modern .row-box,
.ui-modern .squad-card {
  background:linear-gradient(180deg,#131d28,#0f1721)!important;
  border-color:var(--t-line)!important;
  color:#e7eee3!important;
  box-shadow:0 14px 34px rgba(0,0,0,.20)!important;
}
.ui-modern .sp-panel-header,
.ui-modern .squad-head {
  background:#121b25!important;
  border-color:var(--t-line)!important;
  color:#edf3ea!important;
}
.ui-modern .sp-panel-header h1,
.ui-modern .sp-panel-header h2,
.ui-modern .sp-panel-header h3,
.ui-modern .sp-panel-header h4,
.ui-modern .squad-head h1,
.ui-modern .squad-head h2,
.ui-modern .squad-head h3,
.ui-modern .squad-head h4 { color:#eef4eb!important; }

.ui-modern .btn-soft {
  background:rgba(112,160,189,.09)!important;
  border-color:rgba(112,160,189,.24)!important;
  color:#b4cfdd!important;
}
.ui-modern .btn-soft:hover {
  background:rgba(112,160,189,.16)!important;
  border-color:rgba(112,160,189,.38)!important;
  color:#d6e6ee!important;
}
.ui-modern .remove-btn {
  background:rgba(217,107,107,.12)!important;
  color:#e5a0a0!important;
}

/* Bootstrap / browser controls inside Hadrend */
.ui-modern .sp-page .form-check-input {
  background-color:#091119!important;
  border-color:rgba(166,187,131,.28)!important;
}
.ui-modern .sp-page .form-check-input:checked {
  background-color:#76975f!important;
  border-color:#8cab72!important;
}
.ui-modern .sp-page .form-control,
.ui-modern .sp-page .form-select,
.ui-modern .sp-page textarea {
  background:#091119!important;
  color:#edf3ea!important;
  border-color:rgba(166,187,131,.20)!important;
}
.ui-modern .sp-page .form-control::placeholder,
.ui-modern .sp-page textarea::placeholder { color:#657362!important;opacity:1!important; }
.ui-modern .sp-page .form-text,
.ui-modern .sp-page .text-muted { color:#899687!important; }
.ui-modern .sp-page .form-label { color:#a9c18f!important; }

/* No pure/light surface may survive inside the Hadrend page in Modern Tactical. */
.ui-modern .sp-page [class*="card"],
.ui-modern .sp-page [class*="panel"],
.ui-modern .sp-page [class*="box"] {
  border-color:var(--t-line)!important;
}

@media (max-width:767.98px){
  .ui-modern .sp-hero{padding:18px!important;border-radius:12px!important}
  .ui-modern .sp-hero .d-flex{align-items:flex-start!important;gap:14px!important}
  .ui-modern .sp-hero .btn{width:100%!important;margin-top:10px!important}
  .ui-modern .module-grid{grid-template-columns:1fr!important}
  .ui-modern .module-toggle{padding:13px!important;border-radius:10px!important}
  .ui-modern .sp-panel-body{padding:14px!important}
}


/* ==========================================================
   Bagoly Modern Tactical 1.3 - Attendance clarity pass
   No white surfaces + compact responsive attendee cards
   ========================================================== */
.ui-modern .att-page .att-card {
  background:rgba(15,23,33,.78)!important;
  border:1px solid rgba(166,187,131,.14)!important;
  box-shadow:0 14px 40px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(10px);
}
.ui-modern .att-page .att-card-header {
  background:rgba(18,27,37,.72)!important;
  border-bottom:1px solid rgba(166,187,131,.13)!important;
}
.ui-modern .att-page .att-card-body {
  background:transparent!important;
}

/* Attendance list: intentionally transparent, never snow-white. */
.ui-modern .att-page .table-responsive {
  background:transparent!important;
  border:0!important;
  border-radius:0 0 12px 12px!important;
  overflow:hidden;
}
.ui-modern .att-page .att-table {
  --bs-table-bg:transparent!important;
  --bs-table-color:#dce5d9!important;
  --bs-table-border-color:rgba(166,187,131,.10)!important;
  background:transparent!important;
  color:#dce5d9!important;
  margin:0!important;
}
.ui-modern .att-page .att-table > :not(caption) > * > * {
  background:transparent!important;
  color:#dce5d9!important;
  border-color:rgba(166,187,131,.10)!important;
  box-shadow:none!important;
}
.ui-modern .att-page .att-table thead th {
  background:rgba(8,15,22,.72)!important;
  color:#879b82!important;
  border-bottom:1px solid rgba(166,187,131,.15)!important;
}
.ui-modern .att-page .att-table tbody tr {
  background:transparent!important;
  transition:background .15s ease;
}
.ui-modern .att-page .att-table tbody tr:nth-child(even) {
  background:rgba(255,255,255,.012)!important;
}
.ui-modern .att-page .att-table tbody td {
  background:transparent!important;
  color:#cfd9cc!important;
}
.ui-modern .att-page .att-table tbody tr:hover td {
  background:rgba(166,187,131,.045)!important;
}
.ui-modern .att-page .member-name {
  color:#edf3ea!important;
}
.ui-modern .att-page .att-table td:nth-child(3),
.ui-modern .att-page .att-table td:nth-child(4) {
  color:#b9c5b7!important;
}
.ui-modern .att-page .status-going {
  background:rgba(98,142,91,.13)!important;
  color:#b9d8b1!important;
  border-color:rgba(98,142,91,.30)!important;
}
.ui-modern .att-page .status-maybe {
  background:rgba(177,139,64,.13)!important;
  color:#e4c987!important;
  border-color:rgba(177,139,64,.30)!important;
}
.ui-modern .att-page .status-not-going {
  background:rgba(145,81,88,.14)!important;
  color:#e6a7aa!important;
  border-color:rgba(145,81,88,.31)!important;
}

/* Cleaner hierarchy: selection + own signup stay compact. */
.ui-modern .att-page .att-card-header h3 {
  color:#eef4eb!important;
  letter-spacing:-.025em;
}
.ui-modern .att-page .att-muted {color:#8f9d8c!important}
.ui-modern .att-page .att-label {color:#9fb887!important}
.ui-modern .att-page .form-control,
.ui-modern .att-page .form-select {
  background:rgba(7,14,21,.72)!important;
  border-color:rgba(166,187,131,.17)!important;
  color:#e8eee5!important;
}

/* Mobile: attendee table becomes readable cards instead of a wide scroller. */
@media (max-width:767.98px){
  .ui-modern .att-page .table-responsive{overflow:visible!important;border-radius:0!important}
  .ui-modern .att-page .att-table{display:block!important;min-width:0!important;width:100%!important;padding:10px!important}
  .ui-modern .att-page .att-table thead{display:none!important}
  .ui-modern .att-page .att-table tbody{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important}
  .ui-modern .att-page .att-table tbody tr{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    padding:10px 13px!important;
    border:1px solid rgba(166,187,131,.13)!important;
    border-radius:10px!important;
    background:rgba(12,20,29,.74)!important;
  }
  .ui-modern .att-page .att-table tbody tr:nth-child(even){background:rgba(14,23,32,.82)!important}
  .ui-modern .att-page .att-table tbody td{
    display:grid!important;
    grid-template-columns:minmax(105px,36%) 1fr!important;
    gap:12px!important;
    align-items:center!important;
    padding:8px 0!important;
    border:0!important;
    border-bottom:1px solid rgba(166,187,131,.08)!important;
    min-width:0!important;
  }
  .ui-modern .att-page .att-table tbody td:last-child{border-bottom:0!important}
  .ui-modern .att-page .att-table tbody td::before{
    content:attr(data-label);
    color:#71816e!important;
    font-size:.66rem!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
    font-weight:900!important;
  }
  .ui-modern .att-page .member-name{font-size:.95rem!important;overflow-wrap:anywhere}
  .ui-modern .att-page .status-badge{justify-self:start}
}
