/* RDN Lombardia NOC - Theme system STEP 1
   Additivo e non distruttivo: non sostituisce style.css, applica override tramite variabili. */

:root {
  --rdn-intensity: 1;
  --rdn-theme-glow-factor: calc(var(--rdn-intensity) * 1);
  --rdn-theme-panel-alpha: .96;
  --rdn-theme-border-alpha: .22;
  --rdn-theme-text: #f8fbff;
  --rdn-theme-text-soft: rgba(220, 240, 255, .72);
  --rdn-theme-bg-a: #06101f;
  --rdn-theme-bg-b: #0b1830;
  --rdn-theme-bg-c: #050b16;
}

html[data-rdn-theme="noc-dark"] {
  color-scheme: dark;
  --rdn-cyan: #67e8f9;
  --rdn-green: #22c55e;
  --rdn-panel: rgba(8, 20, 38, var(--rdn-theme-panel-alpha));
  --rdn-border: rgba(103, 232, 249, calc(.18 + (var(--rdn-intensity) - .75) * .18));
  --rdn-muted: rgba(220, 240, 255, calc(.58 + (var(--rdn-intensity) - .75) * .20));
  --rdn-theme-text: #f8fbff;
  --rdn-theme-text-soft: rgba(220, 240, 255, .74);
  --rdn-theme-bg-a: #06101f;
  --rdn-theme-bg-b: #0b1830;
  --rdn-theme-bg-c: #050b16;
}

html[data-rdn-theme="outdoor-light"] {
  color-scheme: light;
  --rdn-cyan: #005f86;
  --rdn-green: #087a35;
  --rdn-panel: rgba(255, 255, 255, .94);
  --rdn-border: rgba(0, 76, 120, calc(.28 + (var(--rdn-intensity) - .75) * .18));
  --rdn-muted: rgba(18, 45, 65, .78);
  --rdn-theme-text: #061526;
  --rdn-theme-text-soft: rgba(10, 32, 48, .78);
  --rdn-theme-bg-a: #f4fbff;
  --rdn-theme-bg-b: #dcefff;
  --rdn-theme-bg-c: #ffffff;
}

html[data-rdn-theme="outdoor-light"] body {
  color: var(--rdn-theme-text);
  background:
    radial-gradient(circle at 12% 18%, rgba(0, 122, 180, calc(.08 * var(--rdn-intensity))), transparent 30%),
    radial-gradient(circle at 88% 12%, rgba(0, 84, 160, calc(.07 * var(--rdn-intensity))), transparent 34%),
    radial-gradient(circle at 72% 88%, rgba(0, 120, 80, calc(.06 * var(--rdn-intensity))), transparent 34%),
    linear-gradient(135deg, #f7fcff 0%, #e9f6ff 48%, #ffffff 100%);
}

html[data-rdn-theme="outdoor-light"] body::before {
  background-image:
    linear-gradient(rgba(0, 80, 130, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 80, 130, .055) 1px, transparent 1px);
  mask-image: radial-gradient(circle at 50% 18%, black, transparent 82%);
}

html[data-rdn-theme="outdoor-light"] .rdn-navbar {
  background:
    linear-gradient(90deg, rgba(245, 251, 255, .98), rgba(220, 240, 252, .97), rgba(194, 226, 244, .96)) !important;
  border-bottom-color: rgba(0, 90, 145, .30);
  box-shadow: 0 10px 34px rgba(0, 38, 70, .16), inset 0 -1px 0 rgba(0, 40, 80, .06);
}

html[data-rdn-theme="outdoor-light"] .rdn-navbar::after {
  background: linear-gradient(90deg, transparent, rgba(0,95,134,.85), rgba(8,122,53,.48), transparent);
  box-shadow: 0 0 12px rgba(0,95,134,.22);
}

html[data-rdn-theme="outdoor-light"] .rdn-brand::before {
  background:
    radial-gradient(circle at 13% 50%, rgba(0, 95, 134, .18), transparent 44%),
    linear-gradient(90deg, rgba(0, 95, 134, .08), transparent);
}

html[data-rdn-theme="outdoor-light"] .rdn-brand-logo {
  background: rgba(255,255,255,.78);
  border-color: rgba(0,95,134,.34);
  box-shadow: 0 0 0 1px rgba(0,60,90,.08), 0 0 22px rgba(0,95,134,.20), 0 14px 30px rgba(0,40,70,.18);
  filter: drop-shadow(0 0 8px rgba(0,95,134,.16));
}

html[data-rdn-theme="outdoor-light"] .rdn-brand-title,
html[data-rdn-theme="outdoor-light"] .navbar-dark .navbar-nav .nav-link,
html[data-rdn-theme="outdoor-light"] .rdn-user-btn {
  color: #052033 !important;
  text-shadow: none;
}

html[data-rdn-theme="outdoor-light"] .rdn-brand-subtitle,
html[data-rdn-theme="outdoor-light"] .dropdown-item i,
html[data-rdn-theme="outdoor-light"] .rdn-menu-section,
html[data-rdn-theme="outdoor-light"] .rdn-menu-section i {
  color: #005f86;
}

html[data-rdn-theme="outdoor-light"] .navbar-dark .navbar-nav .nav-link:hover,
html[data-rdn-theme="outdoor-light"] .navbar-dark .navbar-nav .nav-link:focus,
html[data-rdn-theme="outdoor-light"] .navbar-dark .navbar-nav .nav-link.active {
  color: #001927 !important;
  background: rgba(0, 95, 134, .10);
  border-color: rgba(0, 95, 134, .22);
  box-shadow: inset 0 0 14px rgba(0, 95, 134, .06);
}

html[data-rdn-theme="outdoor-light"] .dropdown-menu {
  background:
    radial-gradient(circle at 12% 8%, rgba(0,95,134,.10), transparent 34%),
    rgba(255, 255, 255, .98) !important;
  border-color: rgba(0, 80, 130, .22);
  box-shadow: 0 20px 48px rgba(0, 38, 70, .18), 0 0 24px rgba(0,95,134,.08);
}

html[data-rdn-theme="outdoor-light"] .dropdown-item {
  color: #09283d;
}

html[data-rdn-theme="outdoor-light"] .dropdown-item:hover,
html[data-rdn-theme="outdoor-light"] .dropdown-item:focus {
  background: rgba(0, 95, 134, .12);
  color: #001927;
}

html[data-rdn-theme="outdoor-light"] .dropdown-divider {
  border-color: rgba(0, 45, 80, .14);
}

html[data-rdn-theme="outdoor-light"] .rdn-user-btn {
  border-color: rgba(0, 80, 130, .28) !important;
  background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(0,95,134,.08)) !important;
  box-shadow: 0 8px 22px rgba(0,60,100,.10);
}

html[data-rdn-theme="outdoor-light"] .rdn-entity-name {
  color: rgba(7, 33, 52, .72);
  border-left-color: rgba(0, 70, 115, .20);
}

/* Pannello tema dentro menu utente */
.rdn-theme-panel {
  padding: .72rem .78rem .65rem;
  min-width: 280px;
  color: var(--rdn-theme-text, #f8fbff);
}

.rdn-theme-panel-title {
  display: flex;
  align-items: center;
  margin-bottom: .62rem;
  font-size: .76rem;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--rdn-cyan);
}

.rdn-theme-toggle-group {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .5rem;
  margin-bottom: .68rem;
}

.rdn-theme-option {
  min-height: 40px;
  border-radius: 12px;
  border: 1px solid var(--rdn-border);
  background: rgba(255,255,255,.06);
  color: inherit;
  font-weight: 850;
  font-size: .78rem;
  touch-action: manipulation;
}

.rdn-theme-option:hover,
.rdn-theme-option.is-active {
  border-color: var(--rdn-cyan);
  box-shadow: 0 0 calc(14px * var(--rdn-intensity)) rgba(103,232,249,.18);
}

html[data-rdn-theme="outdoor-light"] .rdn-theme-option {
  background: rgba(0,95,134,.06);
  color: #09283d;
}

.rdn-theme-slider-row {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: .55rem;
  align-items: center;
  margin: 0;
  font-size: .78rem;
  font-weight: 800;
  color: var(--rdn-muted);
}

.rdn-theme-slider-row input[type="range"] {
  width: 100%;
  min-width: 110px;
  accent-color: var(--rdn-cyan);
}

.rdn-theme-status {
  margin-top: .52rem;
  font-size: .68rem;
  line-height: 1.25;
  color: var(--rdn-muted);
}

@media (max-width: 991.98px) {
  .rdn-theme-panel { min-width: 100%; }
  .rdn-theme-option { min-height: 46px; }
}

/* RDN Lombardia NOC - Theme system STEP 2
   Correzioni globali conservative: applicate dopo style.css e dopo gli stili inline del base.
   Obiettivo: outdoor leggibile anche sui template con classi hardcoded e slider visibile. */

html[data-rdn-theme="noc-dark"] {
  --rdn-theme-surface: rgba(8, 20, 38, calc(.88 + (var(--rdn-intensity) - .75) * .12));
  --rdn-theme-surface-strong: rgba(5, 14, 28, calc(.94 + (var(--rdn-intensity) - .75) * .06));
  --rdn-theme-surface-soft: rgba(12, 34, 58, calc(.72 + (var(--rdn-intensity) - .75) * .16));
  --rdn-theme-hero-a: rgba(2, 14, 30, calc(.94 + (var(--rdn-intensity) - .75) * .06));
  --rdn-theme-hero-b: rgba(0, 82, 135, calc(.42 + (var(--rdn-intensity) - .75) * .18));
  --rdn-theme-shadow: rgba(0, 0, 0, calc(.30 + (var(--rdn-intensity) - .75) * .18));
  --rdn-theme-glow: rgba(103, 232, 249, calc(.10 + (var(--rdn-intensity) - .75) * .14));
  --rdn-theme-button-bg: #0d6efd;
  --rdn-theme-button-text: #ffffff;
  --rdn-theme-input-bg: rgba(3, 11, 23, .82);
  --rdn-theme-input-text: #f8fbff;
}

html[data-rdn-theme="outdoor-light"] {
  --rdn-theme-surface: rgba(255, 255, 255, calc(.86 + (var(--rdn-intensity) - .75) * .10));
  --rdn-theme-surface-strong: rgba(246, 252, 255, calc(.94 + (var(--rdn-intensity) - .75) * .05));
  --rdn-theme-surface-soft: rgba(218, 237, 248, calc(.74 + (var(--rdn-intensity) - .75) * .16));
  --rdn-theme-hero-a: rgba(235, 248, 255, calc(.94 + (var(--rdn-intensity) - .75) * .05));
  --rdn-theme-hero-b: rgba(176, 219, 244, calc(.74 + (var(--rdn-intensity) - .75) * .16));
  --rdn-theme-shadow: rgba(0, 48, 80, calc(.10 + (var(--rdn-intensity) - .75) * .12));
  --rdn-theme-glow: rgba(0, 112, 170, calc(.06 + (var(--rdn-intensity) - .75) * .12));
  --rdn-theme-button-bg: #005fba;
  --rdn-theme-button-text: #ffffff;
  --rdn-theme-input-bg: rgba(255, 255, 255, .96);
  --rdn-theme-input-text: #061526;
}

html[data-rdn-theme="outdoor-light"] body {
  color: #061526 !important;
}

/* Slider: effetto reale e visibile senza usare filter globale, così Leaflet/canvas non vengono alterati. */
html[data-rdn-theme] .rdn-navbar,
html[data-rdn-theme] .dropdown-menu,
html[data-rdn-theme] .card,
html[data-rdn-theme] .modal-content,
html[data-rdn-theme] .offcanvas,
html[data-rdn-theme] .accordion-item,
html[data-rdn-theme] .list-group-item,
html[data-rdn-theme] .table,
html[data-rdn-theme] [class*="panel"],
html[data-rdn-theme] [class*="Panel"],
html[data-rdn-theme] [class*="card"],
html[data-rdn-theme] [class*="Card"],
html[data-rdn-theme] [class*="box"],
html[data-rdn-theme] [class*="Box"],
html[data-rdn-theme] [class*="shell"],
html[data-rdn-theme] [class*="Shell"],
html[data-rdn-theme] [class*="hero"],
html[data-rdn-theme] [class*="Hero"],
html[data-rdn-theme] [class*="console"],
html[data-rdn-theme] [class*="Console"],
html[data-rdn-theme] [class*="mission"],
html[data-rdn-theme] [class*="Mission"] {
  transition:
    background-color .18s ease,
    background .18s ease,
    color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease,
    opacity .18s ease;
}

/* Outdoor: conversione globale delle aree operative scure senza toccare geometrie, drag/drop, Leaflet pane o canvas. */
html[data-rdn-theme="outdoor-light"] .main-shell,
html[data-rdn-theme="outdoor-light"] main,
html[data-rdn-theme="outdoor-light"] section {
  color: #061526;
}

html[data-rdn-theme="outdoor-light"] .card,
html[data-rdn-theme="outdoor-light"] .modal-content,
html[data-rdn-theme="outdoor-light"] .offcanvas,
html[data-rdn-theme="outdoor-light"] .accordion-item,
html[data-rdn-theme="outdoor-light"] .list-group-item,
html[data-rdn-theme="outdoor-light"] .toast,
html[data-rdn-theme="outdoor-light"] .popover,
html[data-rdn-theme="outdoor-light"] [class*="panel"],
html[data-rdn-theme="outdoor-light"] [class*="Panel"],
html[data-rdn-theme="outdoor-light"] [class*="card"],
html[data-rdn-theme="outdoor-light"] [class*="Card"],
html[data-rdn-theme="outdoor-light"] [class*="box"],
html[data-rdn-theme="outdoor-light"] [class*="Box"],
html[data-rdn-theme="outdoor-light"] [class*="queue"],
html[data-rdn-theme="outdoor-light"] [class*="Queue"],
html[data-rdn-theme="outdoor-light"] [class*="board"],
html[data-rdn-theme="outdoor-light"] [class*="Board"],
html[data-rdn-theme="outdoor-light"] [class*="console"],
html[data-rdn-theme="outdoor-light"] [class*="Console"],
html[data-rdn-theme="outdoor-light"] [class*="shell"],
html[data-rdn-theme="outdoor-light"] [class*="Shell"] {
  color: #061526 !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(0, 118, 178, calc(.08 * var(--rdn-intensity))), transparent 34%),
    linear-gradient(135deg, var(--rdn-theme-surface-strong), var(--rdn-theme-surface)) !important;
  border-color: rgba(0, 83, 128, calc(.24 + (var(--rdn-intensity) - .75) * .16)) !important;
  box-shadow:
    0 16px 38px var(--rdn-theme-shadow),
    inset 0 0 0 1px rgba(255,255,255,.52) !important;
}

/* Hero/banner operativi: chiari, ma ancora "console" e non gestionale piatto. */
html[data-rdn-theme="outdoor-light"] [class*="hero"],
html[data-rdn-theme="outdoor-light"] [class*="Hero"],
html[data-rdn-theme="outdoor-light"] [class*="header"],
html[data-rdn-theme="outdoor-light"] [class*="Header"],
html[data-rdn-theme="outdoor-light"] [class*="jumbotron"],
html[data-rdn-theme="outdoor-light"] [class*="banner"],
html[data-rdn-theme="outdoor-light"] [class*="Banner"] {
  color: #051b2d !important;
  background:
    radial-gradient(circle at 88% 20%, rgba(0, 130, 190, calc(.16 * var(--rdn-intensity))), transparent 35%),
    linear-gradient(135deg, var(--rdn-theme-hero-a), var(--rdn-theme-hero-b)) !important;
  border-color: rgba(0, 95, 134, .24) !important;
  box-shadow: 0 18px 42px rgba(0, 58, 95, calc(.10 + (var(--rdn-intensity) - .75) * .10)) !important;
}

/* Testi: molti template usano text-white/text-light espliciti. In outdoor li rendiamo leggibili. */
html[data-rdn-theme="outdoor-light"] .text-white,
html[data-rdn-theme="outdoor-light"] .text-light,
html[data-rdn-theme="outdoor-light"] h1,
html[data-rdn-theme="outdoor-light"] h2,
html[data-rdn-theme="outdoor-light"] h3,
html[data-rdn-theme="outdoor-light"] h4,
html[data-rdn-theme="outdoor-light"] h5,
html[data-rdn-theme="outdoor-light"] h6,
html[data-rdn-theme="outdoor-light"] .lead,
html[data-rdn-theme="outdoor-light"] [class*="title"],
html[data-rdn-theme="outdoor-light"] [class*="Title"] {
  color: #061526 !important;
  text-shadow: none !important;
}

html[data-rdn-theme="outdoor-light"] .text-muted,
html[data-rdn-theme="outdoor-light"] .text-secondary,
html[data-rdn-theme="outdoor-light"] small,
html[data-rdn-theme="outdoor-light"] [class*="muted"],
html[data-rdn-theme="outdoor-light"] [class*="Muted"],
html[data-rdn-theme="outdoor-light"] [class*="subtitle"],
html[data-rdn-theme="outdoor-light"] [class*="Subtitle"] {
  color: rgba(7, 35, 55, .76) !important;
}

html[data-rdn-theme="outdoor-light"] a:not(.btn):not(.dropdown-item):not(.nav-link) {
  color: #005fba;
}

html[data-rdn-theme="outdoor-light"] .btn-primary,
html[data-rdn-theme="outdoor-light"] .btn-info,
html[data-rdn-theme="outdoor-light"] .btn-outline-info:hover,
html[data-rdn-theme="outdoor-light"] .btn-outline-primary:hover {
  background: linear-gradient(135deg, #006ed1, #005fba) !important;
  border-color: #005fba !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(0, 82, 160, calc(.16 + (var(--rdn-intensity) - .75) * .10)) !important;
}

html[data-rdn-theme="outdoor-light"] .btn-outline-light,
html[data-rdn-theme="outdoor-light"] .btn-outline-info,
html[data-rdn-theme="outdoor-light"] .btn-outline-primary,
html[data-rdn-theme="outdoor-light"] .btn-outline-secondary {
  color: #052033 !important;
  border-color: rgba(0, 76, 120, .52) !important;
  background: rgba(255,255,255,.42) !important;
}

html[data-rdn-theme="outdoor-light"] .badge,
html[data-rdn-theme="outdoor-light"] [class*="badge"],
html[data-rdn-theme="outdoor-light"] [class*="Badge"] {
  text-shadow: none !important;
  box-shadow: 0 7px 18px rgba(0, 40, 75, .10) !important;
}

html[data-rdn-theme="outdoor-light"] .table,
html[data-rdn-theme="outdoor-light"] table {
  color: #061526 !important;
  border-color: rgba(0, 76, 120, .20) !important;
}

html[data-rdn-theme="outdoor-light"] .table thead,
html[data-rdn-theme="outdoor-light"] thead,
html[data-rdn-theme="outdoor-light"] th {
  color: #052033 !important;
  background: rgba(197, 227, 244, .70) !important;
  border-color: rgba(0, 76, 120, .22) !important;
}

html[data-rdn-theme="outdoor-light"] .table tbody tr,
html[data-rdn-theme="outdoor-light"] tbody tr,
html[data-rdn-theme="outdoor-light"] td {
  color: #061526 !important;
  background-color: rgba(255,255,255,.44) !important;
  border-color: rgba(0, 76, 120, .14) !important;
}

html[data-rdn-theme="outdoor-light"] input,
html[data-rdn-theme="outdoor-light"] select,
html[data-rdn-theme="outdoor-light"] textarea,
html[data-rdn-theme="outdoor-light"] .form-control,
html[data-rdn-theme="outdoor-light"] .form-select {
  background: var(--rdn-theme-input-bg) !important;
  color: var(--rdn-theme-input-text) !important;
  border-color: rgba(0, 76, 120, .32) !important;
}

html[data-rdn-theme="outdoor-light"] input::placeholder,
html[data-rdn-theme="outdoor-light"] textarea::placeholder {
  color: rgba(7, 35, 55, .58) !important;
}

/* Leaflet: non cambiamo tile, pane e overlay D-Flight; sistemiamo solo contenitore, popup e controlli. */
html[data-rdn-theme="outdoor-light"] .leaflet-container {
  background: #dcefff !important;
  color: #061526 !important;
}

html[data-rdn-theme="outdoor-light"] .leaflet-control,
html[data-rdn-theme="outdoor-light"] .leaflet-bar a,
html[data-rdn-theme="outdoor-light"] .leaflet-popup-content-wrapper,
html[data-rdn-theme="outdoor-light"] .leaflet-popup-tip {
  color: #061526 !important;
  background: rgba(255,255,255,.96) !important;
  border-color: rgba(0,76,120,.22) !important;
  box-shadow: 0 10px 30px rgba(0,40,80,.18) !important;
}

/* Dark: slider più percepibile anche nel tema NOC attuale. */
html[data-rdn-theme="noc-dark"] .rdn-navbar,
html[data-rdn-theme="noc-dark"] .dropdown-menu,
html[data-rdn-theme="noc-dark"] .card,
html[data-rdn-theme="noc-dark"] [class*="panel"],
html[data-rdn-theme="noc-dark"] [class*="Panel"],
html[data-rdn-theme="noc-dark"] [class*="card"],
html[data-rdn-theme="noc-dark"] [class*="Card"],
html[data-rdn-theme="noc-dark"] [class*="hero"],
html[data-rdn-theme="noc-dark"] [class*="Hero"],
html[data-rdn-theme="noc-dark"] [class*="console"],
html[data-rdn-theme="noc-dark"] [class*="Console"] {
  box-shadow:
    0 14px 42px rgba(0,0,0, calc(.30 + (var(--rdn-intensity) - .75) * .18)),
    0 0 calc(26px * var(--rdn-intensity)) rgba(103,232,249, calc(.035 + (var(--rdn-intensity) - .75) * .055)) !important;
}

/* Menu tema: non deve ereditare override generici dei pannelli. */
html[data-rdn-theme] .rdn-theme-panel {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}


/* STEP 3 readability/high contrast fixes */
html[data-rdn-theme="outdoor-light"]{
  --rdn-outdoor-text:#071826;
  --rdn-outdoor-soft:#31485c;
  --rdn-outdoor-panel:#ffffff;
  --rdn-outdoor-panel-2:#eef7ff;
}

html[data-rdn-theme="outdoor-light"] body{
  filter:brightness(calc(.90 + (var(--rdn-intensity) * .22)));
}

html[data-rdn-theme="outdoor-light"] .container,
html[data-rdn-theme="outdoor-light"] .container-fluid,
html[data-rdn-theme="outdoor-light"] .card,
html[data-rdn-theme="outdoor-light"] .panel,
html[data-rdn-theme="outdoor-light"] [class*="panel"],
html[data-rdn-theme="outdoor-light"] [class*="card"],
html[data-rdn-theme="outdoor-light"] [class*="queue"],
html[data-rdn-theme="outdoor-light"] [class*="hero"],
html[data-rdn-theme="outdoor-light"] [class*="mission"],
html[data-rdn-theme="outdoor-light"] [class*="console"],
html[data-rdn-theme="outdoor-light"] [class*="readiness"],
html[data-rdn-theme="outdoor-light"] [class*="squad"]{
  color:var(--rdn-outdoor-text)!important;
}

html[data-rdn-theme="outdoor-light"] h1,
html[data-rdn-theme="outdoor-light"] h2,
html[data-rdn-theme="outdoor-light"] h3,
html[data-rdn-theme="outdoor-light"] h4,
html[data-rdn-theme="outdoor-light"] h5,
html[data-rdn-theme="outdoor-light"] h6,
html[data-rdn-theme="outdoor-light"] strong,
html[data-rdn-theme="outdoor-light"] .fw-bold{
  color:#04111d!important;
  text-shadow:none!important;
}

html[data-rdn-theme="outdoor-light"] p,
html[data-rdn-theme="outdoor-light"] span,
html[data-rdn-theme="outdoor-light"] small,
html[data-rdn-theme="outdoor-light"] label,
html[data-rdn-theme="outdoor-light"] td,
html[data-rdn-theme="outdoor-light"] th,
html[data-rdn-theme="outdoor-light"] li{
  color:var(--rdn-outdoor-soft)!important;
}

html[data-rdn-theme="outdoor-light"] .btn{
  filter:contrast(calc(1 + ((var(--rdn-intensity) - 1) * .6)));
}

html[data-rdn-theme="outdoor-light"] .table,
html[data-rdn-theme="outdoor-light"] table{
  background:rgba(255,255,255,.82)!important;
}

html[data-rdn-theme="outdoor-light"] .leaflet-container,
html[data-rdn-theme="outdoor-light"] .leaflet-pane,
html[data-rdn-theme="outdoor-light"] canvas{
  filter:none!important;
}

html[data-rdn-theme="outdoor-light"] [class*="badge"],
html[data-rdn-theme="outdoor-light"] [class*="status"],
html[data-rdn-theme="outdoor-light"] [class*="tag"]{
  opacity:1!important;
  font-weight:800!important;
}

html[data-rdn-theme="outdoor-light"] [class*="hero"],
html[data-rdn-theme="outdoor-light"] [class*="card"],
html[data-rdn-theme="outdoor-light"] [class*="panel"],
html[data-rdn-theme="outdoor-light"] [class*="queue"]{
  background:
    linear-gradient(135deg,
      rgba(255,255,255,calc(.92 + ((var(--rdn-intensity) - 1) * .06))),
      rgba(225,243,255,calc(.88 + ((var(--rdn-intensity) - 1) * .08)))
    )!important;
  border-color:rgba(0,90,140,.18)!important;
  box-shadow:
    0 8px 24px rgba(0,45,80,.10),
    0 0 calc(18px * var(--rdn-intensity)) rgba(0,145,255,.08)!important;
}

html[data-rdn-theme="outdoor-light"] .dropdown-menu{
  background:#f9fcff!important;
  color:#04111d!important;
}



/* STEP 4 - Outdoor readability stabilizzata, mappa non sbiadita, toggle mappa leggibili.
   Regole additive: non toccano logiche JS, drag&drop, Leaflet layers o D-Flight geometry. */
html[data-rdn-theme="outdoor-light"] {
  --rdn-outdoor-contrast: calc((var(--rdn-intensity) - .65) / .85);
  --rdn-outdoor-bg: #f3fbff;
  --rdn-outdoor-ink: #061526;
  --rdn-outdoor-ink-2: #213d55;
  --rdn-outdoor-ink-3: #49647a;
  --rdn-outdoor-cyan: #007fa8;
  --rdn-outdoor-blue: #005fba;
  --rdn-outdoor-border: rgba(0, 111, 150, calc(.26 + (.22 * var(--rdn-outdoor-contrast))));
  --rdn-outdoor-panel-bg: rgba(255, 255, 255, calc(.88 + (.08 * var(--rdn-outdoor-contrast))));
  --rdn-outdoor-panel-bg-2: rgba(222, 245, 255, calc(.70 + (.16 * var(--rdn-outdoor-contrast))));
  --rdn-outdoor-shadow: rgba(0, 50, 85, calc(.08 + (.12 * var(--rdn-outdoor-contrast))));
  --rdn-outdoor-glow: rgba(0, 190, 230, calc(.04 + (.16 * var(--rdn-outdoor-contrast))));
}

/* Mai filtrare il body: un filtro sul parent sbiadisce Leaflet, tile, D-Flight, marker e canvas. */
html[data-rdn-theme="outdoor-light"] body {
  filter: none !important;
  color: var(--rdn-outdoor-ink) !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(0, 150, 210, calc(.05 + .05 * var(--rdn-outdoor-contrast))), transparent 30%),
    radial-gradient(circle at 82% 10%, rgba(0, 100, 180, calc(.035 + .045 * var(--rdn-outdoor-contrast))), transparent 34%),
    linear-gradient(135deg, #f6fcff 0%, #e8f6ff 46%, #ffffff 100%) !important;
}

/* Evita che la vecchia regola globale su span/p/li spenga badge, pulsanti e componenti operativi. */
html[data-rdn-theme="outdoor-light"] .btn,
html[data-rdn-theme="outdoor-light"] .btn *,
html[data-rdn-theme="outdoor-light"] button,
html[data-rdn-theme="outdoor-light"] button *,
html[data-rdn-theme="outdoor-light"] .badge,
html[data-rdn-theme="outdoor-light"] .badge *,
html[data-rdn-theme="outdoor-light"] [class*="badge"],
html[data-rdn-theme="outdoor-light"] [class*="badge"] *,
html[data-rdn-theme="outdoor-light"] [class*="Badge"],
html[data-rdn-theme="outdoor-light"] [class*="Badge"] *,
html[data-rdn-theme="outdoor-light"] [class*="pill"],
html[data-rdn-theme="outdoor-light"] [class*="pill"] *,
html[data-rdn-theme="outdoor-light"] [class*="Pill"],
html[data-rdn-theme="outdoor-light"] [class*="Pill"] *,
html[data-rdn-theme="outdoor-light"] [class*="status"],
html[data-rdn-theme="outdoor-light"] [class*="status"] *,
html[data-rdn-theme="outdoor-light"] [class*="Status"],
html[data-rdn-theme="outdoor-light"] [class*="Status"] * {
  opacity: 1 !important;
}

html[data-rdn-theme="outdoor-light"] .btn-primary,
html[data-rdn-theme="outdoor-light"] .btn-info,
html[data-rdn-theme="outdoor-light"] .noc-map-primary-btn {
  color: #fff !important;
  background: linear-gradient(135deg, #0078d4, #005fba) !important;
  border-color: #005fba !important;
  box-shadow: 0 12px 26px rgba(0, 82, 160, calc(.14 + .12 * var(--rdn-outdoor-contrast))) !important;
}

html[data-rdn-theme="outdoor-light"] .btn-outline-light,
html[data-rdn-theme="outdoor-light"] .btn-outline-info,
html[data-rdn-theme="outdoor-light"] .btn-outline-primary,
html[data-rdn-theme="outdoor-light"] .btn-outline-secondary,
html[data-rdn-theme="outdoor-light"] .noc-map-secondary-btn,
html[data-rdn-theme="outdoor-light"] .noc-map-clear-btn {
  color: #062033 !important;
  background: rgba(255, 255, 255, .86) !important;
  border-color: rgba(0, 94, 140, .48) !important;
}

/* Pannelli outdoor: più contrasto, meno bianco piatto, slider realmente visibile tramite bordi/glow/profondità. */
html[data-rdn-theme="outdoor-light"] .card,
html[data-rdn-theme="outdoor-light"] .modal-content,
html[data-rdn-theme="outdoor-light"] .offcanvas,
html[data-rdn-theme="outdoor-light"] .accordion-item,
html[data-rdn-theme="outdoor-light"] .list-group-item,
html[data-rdn-theme="outdoor-light"] .toast,
html[data-rdn-theme="outdoor-light"] .popover,
html[data-rdn-theme="outdoor-light"] [class*="panel"],
html[data-rdn-theme="outdoor-light"] [class*="Panel"],
html[data-rdn-theme="outdoor-light"] [class*="card"],
html[data-rdn-theme="outdoor-light"] [class*="Card"],
html[data-rdn-theme="outdoor-light"] [class*="box"],
html[data-rdn-theme="outdoor-light"] [class*="Box"],
html[data-rdn-theme="outdoor-light"] [class*="queue"],
html[data-rdn-theme="outdoor-light"] [class*="Queue"],
html[data-rdn-theme="outdoor-light"] [class*="board"],
html[data-rdn-theme="outdoor-light"] [class*="Board"],
html[data-rdn-theme="outdoor-light"] [class*="console"],
html[data-rdn-theme="outdoor-light"] [class*="Console"],
html[data-rdn-theme="outdoor-light"] [class*="shell"],
html[data-rdn-theme="outdoor-light"] [class*="Shell"] {
  color: var(--rdn-outdoor-ink) !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(0, 190, 230, calc(.05 + .08 * var(--rdn-outdoor-contrast))), transparent 32%),
    linear-gradient(135deg, var(--rdn-outdoor-panel-bg), var(--rdn-outdoor-panel-bg-2)) !important;
  border-color: var(--rdn-outdoor-border) !important;
  box-shadow:
    0 14px 34px var(--rdn-outdoor-shadow),
    0 0 calc(8px + 22px * var(--rdn-outdoor-contrast)) var(--rdn-outdoor-glow),
    inset 0 0 0 1px rgba(255,255,255,.62) !important;
}

html[data-rdn-theme="outdoor-light"] [class*="hero"],
html[data-rdn-theme="outdoor-light"] [class*="Hero"],
html[data-rdn-theme="outdoor-light"] [class*="banner"],
html[data-rdn-theme="outdoor-light"] [class*="Banner"] {
  background:
    radial-gradient(circle at 90% 18%, rgba(0, 155, 215, calc(.10 + .12 * var(--rdn-outdoor-contrast))), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(206,238,255,.86)) !important;
  color: var(--rdn-outdoor-ink) !important;
}

html[data-rdn-theme="outdoor-light"] h1,
html[data-rdn-theme="outdoor-light"] h2,
html[data-rdn-theme="outdoor-light"] h3,
html[data-rdn-theme="outdoor-light"] h4,
html[data-rdn-theme="outdoor-light"] h5,
html[data-rdn-theme="outdoor-light"] h6,
html[data-rdn-theme="outdoor-light"] .fw-bold,
html[data-rdn-theme="outdoor-light"] strong {
  color: var(--rdn-outdoor-ink) !important;
  text-shadow: none !important;
}

html[data-rdn-theme="outdoor-light"] p,
html[data-rdn-theme="outdoor-light"] label,
html[data-rdn-theme="outdoor-light"] small,
html[data-rdn-theme="outdoor-light"] td,
html[data-rdn-theme="outdoor-light"] th,
html[data-rdn-theme="outdoor-light"] li,
html[data-rdn-theme="outdoor-light"] .text-muted,
html[data-rdn-theme="outdoor-light"] .text-secondary {
  color: var(--rdn-outdoor-ink-2) !important;
}

/* Mantiene i testi dentro badge/pill coerenti, senza slavare stati operativi. */
html[data-rdn-theme="outdoor-light"] .badge,
html[data-rdn-theme="outdoor-light"] .badge *,
html[data-rdn-theme="outdoor-light"] [class*="badge"],
html[data-rdn-theme="outdoor-light"] [class*="Badge"] {
  color: inherit;
  font-weight: 900 !important;
}

/* TABELLE: header e righe leggibili senza grigio slavato. */
html[data-rdn-theme="outdoor-light"] .table,
html[data-rdn-theme="outdoor-light"] table {
  color: var(--rdn-outdoor-ink) !important;
  background: rgba(255,255,255,.90) !important;
  border-color: rgba(0, 94, 140, .22) !important;
}
html[data-rdn-theme="outdoor-light"] .table thead,
html[data-rdn-theme="outdoor-light"] thead,
html[data-rdn-theme="outdoor-light"] th {
  color: #061526 !important;
  background: rgba(204, 234, 248, .92) !important;
  border-color: rgba(0, 94, 140, .26) !important;
}
html[data-rdn-theme="outdoor-light"] .table tbody tr,
html[data-rdn-theme="outdoor-light"] tbody tr,
html[data-rdn-theme="outdoor-light"] td {
  color: var(--rdn-outdoor-ink-2) !important;
  background-color: rgba(255,255,255,.72) !important;
  border-color: rgba(0, 94, 140, .16) !important;
}

/* Leaflet: non alterare mai tile, overlay D-Flight, marker, canvas e pane. */
html[data-rdn-theme="outdoor-light"] .leaflet-container,
html[data-rdn-theme="outdoor-light"] .leaflet-container *,
html[data-rdn-theme="outdoor-light"] .leaflet-pane,
html[data-rdn-theme="outdoor-light"] .leaflet-pane *,
html[data-rdn-theme="outdoor-light"] .leaflet-tile,
html[data-rdn-theme="outdoor-light"] .leaflet-marker-icon,
html[data-rdn-theme="outdoor-light"] .leaflet-marker-shadow,
html[data-rdn-theme="outdoor-light"] .leaflet-overlay-pane svg,
html[data-rdn-theme="outdoor-light"] .leaflet-overlay-pane canvas,
html[data-rdn-theme="outdoor-light"] .noc-dflight-pane,
html[data-rdn-theme="outdoor-light"] .noc-dflight-pane * {
  filter: none !important;
}

html[data-rdn-theme="outdoor-light"] .leaflet-container {
  background: #dcefff !important;
  color: #061526 !important;
}
html[data-rdn-theme="outdoor-light"] .leaflet-control,
html[data-rdn-theme="outdoor-light"] .leaflet-bar a,
html[data-rdn-theme="outdoor-light"] .leaflet-popup-content-wrapper,
html[data-rdn-theme="outdoor-light"] .leaflet-popup-tip {
  color: #061526 !important;
  background: rgba(255,255,255,.97) !important;
  border-color: rgba(0,76,120,.28) !important;
  box-shadow: 0 10px 26px rgba(0,40,80,.18) !important;
}

/* Mappa NOC: filtri/toggle devono mostrare chiaramente ON/OFF. */
html[data-rdn-theme="outdoor-light"] .noc-map-shell {
  color: var(--rdn-outdoor-ink) !important;
}

html[data-rdn-theme="outdoor-light"] .noc-map-control-card,
html[data-rdn-theme="outdoor-light"] .noc-map-control-body,
html[data-rdn-theme="outdoor-light"] .noc-map-legend {
  color: var(--rdn-outdoor-ink) !important;
}

html[data-rdn-theme="outdoor-light"] .noc-layer-toggle {
  position: relative;
  color: #263f55 !important;
  background: linear-gradient(135deg, rgba(238, 246, 251, .92), rgba(226, 236, 244, .88)) !important;
  border: 1px solid rgba(80, 110, 130, .34) !important;
  box-shadow: 0 8px 18px rgba(0, 36, 70, .08) !important;
  opacity: .72 !important;
}

html[data-rdn-theme="outdoor-light"] .noc-layer-toggle::before {
  content: "OFF";
  position: absolute;
  top: 10px;
  right: 62px;
  font-size: .62rem;
  font-weight: 950;
  letter-spacing: .08em;
  color: #5b7182;
}

html[data-rdn-theme="outdoor-light"] .noc-layer-toggle.is-active {
  color: #061526 !important;
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(211,244,255,.94)) !important;
  border-color: rgba(0, 155, 210, .72) !important;
  box-shadow:
    0 10px 22px rgba(0, 80, 130, .13),
    0 0 calc(12px + 18px * var(--rdn-outdoor-contrast)) rgba(0, 210, 255, .20) !important;
  opacity: 1 !important;
}

html[data-rdn-theme="outdoor-light"] .noc-layer-toggle.is-active::before {
  content: "ON";
  color: #007fa8;
}

html[data-rdn-theme="outdoor-light"] .noc-layer-title {
  color: #061526 !important;
  font-weight: 950 !important;
}
html[data-rdn-theme="outdoor-light"] .noc-layer-subtitle {
  color: #34566f !important;
  font-weight: 700 !important;
}
html[data-rdn-theme="outdoor-light"] .noc-layer-toggle:not(.is-active) .noc-layer-title,
html[data-rdn-theme="outdoor-light"] .noc-layer-toggle:not(.is-active) .noc-layer-subtitle {
  color: #5d7181 !important;
}

html[data-rdn-theme="outdoor-light"] .noc-layer-toggle .form-check-input {
  width: 2.8rem;
  height: 1.45rem;
  cursor: pointer;
  background-color: #b7c7d4 !important;
  border-color: rgba(50, 80, 100, .34) !important;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.22) !important;
}
html[data-rdn-theme="outdoor-light"] .noc-layer-toggle .form-check-input:checked {
  background-color: #007fa8 !important;
  border-color: #005f86 !important;
  box-shadow: 0 0 0 .18rem rgba(0, 160, 210, .18), inset 0 1px 3px rgba(0,0,0,.18) !important;
}

html[data-rdn-theme="outdoor-light"] .noc-map-card {
  background: rgba(255,255,255,.92) !important;
  border-color: rgba(0, 111, 150, .35) !important;
  box-shadow: 0 12px 28px rgba(0, 50, 85, .12) !important;
}
html[data-rdn-theme="outdoor-light"] .noc-map-card #map {
  filter: none !important;
  background: #dcefff !important;
}

html[data-rdn-theme="outdoor-light"] .noc-map-kpi,
html[data-rdn-theme="outdoor-light"] .noc-map-weather-kpi-line,
html[data-rdn-theme="outdoor-light"] .noc-map-kpi-small,
html[data-rdn-theme="outdoor-light"] .noc-map-status-text {
  color: var(--rdn-outdoor-ink-2) !important;
}
html[data-rdn-theme="outdoor-light"] .noc-map-kpi-label,
html[data-rdn-theme="outdoor-light"] .noc-map-eyebrow,
html[data-rdn-theme="outdoor-light"] .noc-map-section-kicker {
  color: #00a6c8 !important;
}

/* Slider tema: range più leggibile e più evidente. */
html[data-rdn-theme] .rdn-theme-slider-row input[type="range"] {
  accent-color: var(--rdn-cyan);
}
html[data-rdn-theme="outdoor-light"] .rdn-theme-status,
html[data-rdn-theme="outdoor-light"] .rdn-theme-slider-row,
html[data-rdn-theme="outdoor-light"] .rdn-theme-slider-row span {
  color: #24445c !important;
}

/* =========================================================
   STEP 5 - Outdoor: checkbox destinazioni squadre leggibili
   ---------------------------------------------------------
   Fix mirato per Console SEL / Squadre missione:
   in outdoor i checkbox e le card destinazione erano troppo
   chiari e non si capiva subito cosa fosse selezionato.
   Non tocca JS, drag&drop, Leaflet o logiche operative.
   ========================================================= */
html[data-rdn-theme="outdoor-light"] .sel-team-target-panel {
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(225,248,255,.94)) !important;
  border: 1px solid rgba(0, 143, 190, .42) !important;
  box-shadow:
    0 10px 24px rgba(0, 60, 95, .10),
    inset 0 1px 0 rgba(255,255,255,.86) !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check {
  position: relative;
  display: flex !important;
  gap: .72rem !important;
  align-items: flex-start !important;
  padding: .95rem 1rem !important;
  min-height: 116px;
  border-radius: 16px !important;
  color: #071a2d !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(244,251,255,.92)) !important;
  border: 1px solid rgba(75, 117, 145, .30) !important;
  box-shadow:
    0 6px 14px rgba(0, 40, 70, .055),
    inset 0 1px 0 rgba(255,255,255,.88) !important;
  transition: transform .14s ease, border-color .14s ease, box-shadow .14s ease, background .14s ease;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check:hover {
  transform: translateY(-1px);
  border-color: rgba(0, 142, 190, .58) !important;
  box-shadow:
    0 10px 20px rgba(0, 70, 105, .11),
    0 0 0 3px rgba(0, 185, 220, .08) !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check .form-check-input {
  flex: 0 0 auto;
  width: 1.22rem !important;
  height: 1.22rem !important;
  margin-top: .18rem !important;
  cursor: pointer;
  background-color: #ffffff !important;
  border: 2px solid #8fb0c5 !important;
  box-shadow:
    0 1px 2px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.94) !important;
  opacity: 1 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check .form-check-input:checked {
  background-color: #006ee6 !important;
  border-color: #004eaa !important;
  box-shadow:
    0 0 0 .22rem rgba(0, 120, 255, .22),
    0 0 14px rgba(0, 120, 255, .32) !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check:has(.form-check-input:checked) {
  background:
    linear-gradient(135deg, rgba(229, 247, 255, .98), rgba(198, 237, 255, .96)) !important;
  border: 2px solid #0076d6 !important;
  box-shadow:
    0 11px 24px rgba(0, 88, 145, .16),
    0 0 0 3px rgba(0, 140, 255, .12),
    inset 4px 0 0 #0076d6 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check:has(.form-check-input:checked)::after {
  content: "SELEZIONATO";
  position: absolute;
  top: .62rem;
  right: .72rem;
  padding: .16rem .52rem;
  border-radius: 999px;
  background: #006ee6;
  color: #ffffff;
  font-size: .62rem;
  font-weight: 950;
  letter-spacing: .08em;
  box-shadow: 0 4px 12px rgba(0, 90, 180, .22);
}

html[data-rdn-theme="outdoor-light"] .sel-target-check .fw-bold,
html[data-rdn-theme="outdoor-light"] .sel-target-check .text-light {
  color: #071a2d !important;
  font-weight: 950 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check .text-sel-muted,
html[data-rdn-theme="outdoor-light"] .sel-target-check .small {
  color: #315a74 !important;
  font-weight: 650 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check:has(.form-check-input:checked) .fw-bold,
html[data-rdn-theme="outdoor-light"] .sel-target-check:has(.form-check-input:checked) .text-light {
  color: #002b55 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check:has(.form-check-input:checked) .text-sel-muted,
html[data-rdn-theme="outdoor-light"] .sel-target-check:has(.form-check-input:checked) .small {
  color: #164c70 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check .fa-house-flag,
html[data-rdn-theme="outdoor-light"] .sel-target-check .fa-map-pin,
html[data-rdn-theme="outdoor-light"] .sel-target-check .text-primary,
html[data-rdn-theme="outdoor-light"] .sel-target-check .text-info {
  color: #0076d6 !important;
  filter: drop-shadow(0 1px 2px rgba(0, 80, 140, .16));
}

/* Fallback browser vecchi senza :has(): almeno il checkbox checked resta evidente. */
html[data-rdn-theme="outdoor-light"] .sel-target-check .form-check-input:checked + span {
  color: #002b55 !important;
  font-weight: 850 !important;
}

/* ============================================================
   STEP 6 - Outdoor readability micro-fix
   - rimuove etichetta SELEZIONATO sui target squadra
   - migliora Quick Assign / pool volontari
   - evita label DSS/DSP spezzate o slavature in Outdoor
   ============================================================ */

html[data-rdn-theme="outdoor-light"] .sel-target-check:has(.form-check-input:checked)::after {
  content: none !important;
  display: none !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check {
  gap: .62rem !important;
}

html[data-rdn-theme="outdoor-light"] .sel-target-check:has(.form-check-input:checked) {
  padding-right: .62rem !important;
}

html[data-rdn-theme="outdoor-light"] .sel-volunteer-pool,
html[data-rdn-theme="outdoor-light"] .sel-volunteer-drawer,
html[data-rdn-theme="outdoor-light"] .sel-volunteer-pool-body {
  color: #06182a !important;
}

html[data-rdn-theme="outdoor-light"] .volunteer-chip {
  background:
    linear-gradient(135deg, rgba(236, 249, 255, .98), rgba(207, 235, 248, .96)) !important;
  border-color: rgba(0, 115, 170, .34) !important;
  box-shadow:
    0 14px 34px rgba(3, 74, 112, .18),
    inset 0 1px 0 rgba(255,255,255,.96) !important;
  color: #071a2d !important;
}

html[data-rdn-theme="outdoor-light"] .volunteer-chip .fw-bold,
html[data-rdn-theme="outdoor-light"] .volunteer-chip .sel-person-name-big {
  color: #06182a !important;
  font-weight: 950 !important;
  text-shadow: none !important;
}

html[data-rdn-theme="outdoor-light"] .volunteer-chip .text-sel-muted,
html[data-rdn-theme="outdoor-light"] .volunteer-chip .small {
  color: #2c536d !important;
  font-weight: 650 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-quick-assign-panel {
  background:
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(226, 246, 255, .96)) !important;
  border: 1px solid rgba(0, 145, 190, .34) !important;
  border-radius: 18px !important;
  box-shadow:
    0 8px 22px rgba(3, 74, 112, .14),
    inset 0 1px 0 rgba(255,255,255,.98) !important;
  color: #071a2d !important;
}

html[data-rdn-theme="outdoor-light"] .sel-quick-title {
  color: #06182a !important;
  font-weight: 950 !important;
  letter-spacing: .035em !important;
  text-shadow: none !important;
  line-height: 1.18 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-quick-team-row {
  padding: .48rem 0 !important;
  border-top: 1px solid rgba(9, 83, 125, .14) !important;
}

html[data-rdn-theme="outdoor-light"] .sel-quick-team-row:first-of-type {
  border-top: 0 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-quick-team-name {
  color: #08243a !important;
  font-weight: 950 !important;
  min-width: 72px !important;
  text-shadow: none !important;
}

html[data-rdn-theme="outdoor-light"] .sel-quick-team-name i {
  color: #008ec4 !important;
  filter: none !important;
}

html[data-rdn-theme="outdoor-light"] .sel-quick-btn {
  min-width: 56px !important;
  min-height: 34px !important;
  border-width: 1.5px !important;
  border-radius: 999px !important;
  font-weight: 950 !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
  box-shadow: 0 3px 10px rgba(3, 74, 112, .10) !important;
}

html[data-rdn-theme="outdoor-light"] .sel-quick-btn.btn-outline-info {
  color: #05233a !important;
  background: rgba(255,255,255,.92) !important;
  border-color: #009bd1 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-quick-btn.btn-outline-success {
  color: #006238 !important;
  background: rgba(232,255,244,.95) !important;
  border-color: #00a86a !important;
}

html[data-rdn-theme="outdoor-light"] .sel-team-slot {
  background:
    linear-gradient(135deg, rgba(237, 250, 255, .96), rgba(196, 226, 241, .90)) !important;
  color: #071a2d !important;
  box-shadow:
    0 12px 26px rgba(5, 72, 105, .16),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
}

html[data-rdn-theme="outdoor-light"] .sel-slot-headline {
  align-items: center !important;
  gap: .55rem !important;
}

html[data-rdn-theme="outdoor-light"] .sel-slot-code-big {
  flex: 0 0 auto !important;
  min-width: 62px !important;
  max-width: none !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
  line-height: 1 !important;
  padding: .40rem .64rem !important;
  font-size: .78rem !important;
  text-align: center !important;
  justify-content: center !important;
  color: #06304a !important;
  text-shadow: none !important;
}

html[data-rdn-theme="outdoor-light"] .sel-slot-code-big i {
  flex: 0 0 auto !important;
}

html[data-rdn-theme="outdoor-light"] .sel-slot-label-big {
  color: #23465e !important;
  font-size: .72rem !important;
  font-weight: 950 !important;
  line-height: 1.18 !important;
  text-align: right !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

html[data-rdn-theme="outdoor-light"] .sel-team-person {
  background:
    linear-gradient(135deg, rgba(255,255,255,.78), rgba(223, 239, 248, .78)) !important;
  border-color: rgba(34, 87, 120, .20) !important;
  color: #071a2d !important;
}

html[data-rdn-theme="outdoor-light"] .sel-team-person .text-light,
html[data-rdn-theme="outdoor-light"] .sel-team-person .sel-person-name-big {
  color: #06182a !important;
  font-weight: 950 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-team-person .text-sel-muted,
html[data-rdn-theme="outdoor-light"] .sel-team-person .small {
  color: #315a74 !important;
  font-weight: 650 !important;
}

html[data-rdn-theme="outdoor-light"] .sel-team-person .btn-outline-warning,
html[data-rdn-theme="outdoor-light"] .sel-team-slot .btn-outline-warning {
  color: #735300 !important;
  background: rgba(255, 250, 214, .95) !important;
  border-color: #d9a300 !important;
  font-weight: 900 !important;
  text-shadow: none !important;
}

html[data-rdn-theme="outdoor-light"] .sel-volunteer-readiness-row .badge.bg-dark,
html[data-rdn-theme="outdoor-light"] .sel-team-person .badge.bg-dark {
  background: #17384f !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,.64) !important;
}

@media (max-width: 991.98px) {
  html[data-rdn-theme="outdoor-light"] .sel-slot-headline {
    align-items: flex-start !important;
  }

  html[data-rdn-theme="outdoor-light"] .sel-slot-label-big {
    text-align: left !important;
  }
}

/* ======================================================================
   STEP 7 - Outdoor leggibilità Operativo Voli: tabella squadre / Azione
   Solo tema outdoor: rinforza header tabella, celle, pulsanti azione e
   pulsanti disabilitati senza alterare logiche JS/form/drag&drop.
   ====================================================================== */

html[data-rdn-theme="outdoor-light"] .flight-table-wrap {
  background: rgba(255, 255, 255, .94) !important;
  border-color: rgba(0, 120, 170, .34) !important;
  box-shadow:
    0 18px 42px rgba(3, 42, 62, calc(.10 + (var(--rdn-theme-strength, .85) * .08))),
    inset 0 0 0 1px rgba(255,255,255,.72) !important;
}

html[data-rdn-theme="outdoor-light"] .flight-table {
  --bs-table-bg: transparent !important;
  --bs-table-color: #06182a !important;
  --bs-table-border-color: rgba(22, 78, 99, .20) !important;
  --bs-table-striped-bg: rgba(207, 239, 250, .62) !important;
  --bs-table-striped-color: #06182a !important;
  --bs-table-hover-bg: rgba(178, 226, 244, .72) !important;
  --bs-table-hover-color: #03111f !important;
  color: #06182a !important;
}

html[data-rdn-theme="outdoor-light"] .flight-table thead th {
  color: #07192b !important;
  background:
    linear-gradient(135deg, rgba(198, 232, 246, .98), rgba(169, 216, 236, .96)) !important;
  border-color: rgba(14, 116, 144, .30) !important;
  text-shadow: none !important;
  font-weight: 1000 !important;
  letter-spacing: .14em !important;
  opacity: 1 !important;
}

html[data-rdn-theme="outdoor-light"] .flight-table thead th.text-end,
html[data-rdn-theme="outdoor-light"] .flight-table thead th:last-child {
  color: #021827 !important;
  background:
    linear-gradient(135deg, rgba(184, 228, 246, 1), rgba(141, 204, 232, .98)) !important;
}

html[data-rdn-theme="outdoor-light"] .flight-table tbody tr,
html[data-rdn-theme="outdoor-light"] .flight-table tbody tr:nth-child(even) {
  background: rgba(255, 255, 255, .88) !important;
}

html[data-rdn-theme="outdoor-light"] .flight-table td {
  color: #082033 !important;
  border-color: rgba(22, 78, 99, .18) !important;
  background: transparent !important;
  font-weight: 650 !important;
}

html[data-rdn-theme="outdoor-light"] .flight-table td .fw-bold,
html[data-rdn-theme="outdoor-light"] .flight-table td strong,
html[data-rdn-theme="outdoor-light"] .flight-table td b {
  color: #031425 !important;
  font-weight: 1000 !important;
}

html[data-rdn-theme="outdoor-light"] .flight-table .flight-muted,
html[data-rdn-theme="outdoor-light"] .flight-table .small {
  color: #31546c !important;
  opacity: 1 !important;
  font-weight: 700 !important;
}

html[data-rdn-theme="outdoor-light"] .btn-flight,
html[data-rdn-theme="outdoor-light"] .flight-table .btn-flight {
  color: #042033 !important;
  background:
    linear-gradient(135deg, rgba(217, 247, 255, .98), rgba(174, 228, 248, .98)) !important;
  border: 1px solid rgba(0, 145, 190, .58) !important;
  box-shadow:
    0 8px 18px rgba(6, 95, 135, .12),
    inset 0 0 0 1px rgba(255,255,255,.72) !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

html[data-rdn-theme="outdoor-light"] .btn-flight:hover,
html[data-rdn-theme="outdoor-light"] .flight-table .btn-flight:hover {
  color: #00111f !important;
  border-color: rgba(0, 120, 190, .86) !important;
  background:
    linear-gradient(135deg, rgba(190, 239, 255, 1), rgba(129, 209, 244, 1)) !important;
  transform: translateY(-1px);
}

html[data-rdn-theme="outdoor-light"] .btn-flight:disabled,
html[data-rdn-theme="outdoor-light"] .btn-flight.disabled,
html[data-rdn-theme="outdoor-light"] .flight-table .btn-flight:disabled,
html[data-rdn-theme="outdoor-light"] .flight-table .btn-flight.disabled {
  color: #0c344d !important;
  background:
    linear-gradient(135deg, rgba(225, 235, 241, .98), rgba(198, 217, 227, .98)) !important;
  border-color: rgba(92, 132, 154, .55) !important;
  opacity: .88 !important;
  filter: none !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.65) !important;
}

html[data-rdn-theme="outdoor-light"] .flight-badge.wait {
  color: #3e2d00 !important;
  background: rgba(255, 248, 204, .96) !important;
  border-color: rgba(214, 162, 0, .55) !important;
  text-shadow: none !important;
  box-shadow: 0 8px 18px rgba(214, 162, 0, .10) !important;
}

html[data-rdn-theme="outdoor-light"] .flight-badge.ready,
html[data-rdn-theme="outdoor-light"] .flight-badge.fly,
html[data-rdn-theme="outdoor-light"] .flight-badge.closed {
  text-shadow: none !important;
  opacity: 1 !important;
}

@media (max-width: 991.98px) {
  html[data-rdn-theme="outdoor-light"] .flight-table thead th {
    font-size: .72rem !important;
    letter-spacing: .09em !important;
  }

  html[data-rdn-theme="outdoor-light"] .flight-table td {
    font-size: .94rem !important;
  }
}

/* STEP 9 - Mobile theme menu containment
   Su smartphone il dropdown utente non deve uscire dal viewport: resta dentro il menu collapsed,
   con pannello tema scrollabile e controlli touch-friendly. */
@media (max-width: 991.98px) {
  .rdn-navbar .navbar-collapse {
    overflow: visible;
  }

  .rdn-navbar .navbar-collapse > .d-flex.align-items-center {
    width: 100%;
    align-items: stretch !important;
    justify-content: flex-start !important;
    flex-direction: column;
    gap: .75rem !important;
    padding: .75rem 0 .25rem;
  }

  .rdn-navbar .navbar-collapse > .d-flex.align-items-center > .dropdown,
  .rdn-navbar .navbar-collapse > .d-flex.align-items-center > .dropdown > .rdn-user-btn {
    width: 100%;
  }

  .rdn-navbar .navbar-collapse > .d-flex.align-items-center > .dropdown > .rdn-user-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 48px;
    padding: .72rem .9rem;
    font-size: 1rem;
  }

  .rdn-navbar .navbar-collapse .dropdown-menu.dropdown-menu-end.show,
  .rdn-navbar .navbar-collapse .dropdown-menu.show[data-bs-popper] {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: .55rem 0 0 !important;
  }

  .rdn-navbar .dropdown-menu .rdn-theme-panel {
    min-width: 0 !important;
    width: 100%;
    max-width: 100%;
    padding: .85rem .75rem .7rem;
  }

  .rdn-theme-toggle-group {
    grid-template-columns: 1fr;
  }

  .rdn-theme-option {
    min-height: 50px;
    font-size: .92rem;
  }

  .rdn-theme-slider-row {
    grid-template-columns: 1fr;
    gap: .35rem;
    font-size: .88rem;
  }

  .rdn-theme-slider-row input[type="range"] {
    min-width: 0;
    width: 100%;
    height: 32px;
  }

  .rdn-theme-slider-row span[data-rdn-theme-intensity-label] {
    justify-self: end;
    margin-top: -1.8rem;
  }
}

@media (max-width: 575.98px) {
  .rdn-navbar .container-fluid {
    padding-left: .85rem;
    padding-right: .85rem;
  }

  .rdn-navbar .dropdown-menu .rdn-theme-panel {
    max-height: min(68vh, 520px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .rdn-theme-panel-title {
    white-space: normal;
    line-height: 1.25;
  }
}
