/* ============================================================
   FREA eSIM — "UNICORN" DARK THEME
   Caricato dopo main.css/custom.css. Disattivabile rimuovendo
   il <link> in layouts/app.blade.php
   ============================================================ */
@import url("https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,500..800&family=Hanken+Grotesk:wght@400;500;600;700&display=swap");

/* ============================================================
   RIMAPPATURA ALLA FONTE — ribalta i token neutri del tema in
   modalità scura. Questo rende coerente TUTTO il sito (anche le
   pagine non personalizzate) evitando bianco-su-bianco e nero-su-nero.
   ============================================================ */
:root{
  /* superfici "bianche" del tema -> scure */
  --white: 210 28% 11% !important;
  /* "nero" del tema (testi/icone scure) -> chiaro */
  --black: 160 16% 96% !important;
  /* testo corpo e titoli */
  --body-color: 160 8% 72% !important;
  --heading-color: 160 18% 96% !important;
  /* sfondi pagina e sezioni */
  --body-bg: 210 33% 6% !important;
  --section-bg: 210 30% 9% !important;
  /* bordi */
  --border-color: 210 16% 20% !important;
  /* scala di grigi: i "grigi scuri" (testo) diventano chiari... */
  --gray: 160 8% 72% !important;
  --gray-d-100: 160 8% 78% !important;
  --gray-d-200: 160 10% 83% !important;
  --gray-d-300: 160 12% 88% !important;
  --gray-d-400: 160 14% 92% !important;
  --gray-d-500: 160 18% 96% !important;
  /* ...e i "grigi chiari" (sfondi/bordi) diventano scuri */
  --gray-l-100: 160 6% 62% !important;
  --gray-l-200: 210 12% 32% !important;
  --gray-l-300: 210 16% 22% !important;
  --gray-l-400: 210 22% 15% !important;
  --gray-l-500: 210 30% 9% !important;
}

:root{
  --heading-font:"Bricolage Grotesque","Hanken Grotesk",sans-serif;
  --body-font:"Hanken Grotesk",-apple-system,sans-serif;
  --u-bg:#060B12; --u-bg2:#0A1320; --u-ink:#F2F7F5; --u-mut:#9DB0AC;
  --u-mint:#39E6A8; --u-mint2:#5FF0C2; --u-cyan:#3BC7F5; --u-violet:#8B7BFF;
  --u-line:rgba(255,255,255,.09); --u-glass:rgba(255,255,255,.05);
  --u-r:20px; --u-ease:cubic-bezier(.22,1,.36,1);
  --u-shadow:0 24px 70px -28px rgba(0,0,0,.8);
}

/* ---------- Base scura globale ---------- */
html{scroll-behavior:smooth;overflow-x:clip}
body{background:var(--u-bg) !important;color:var(--u-ink) !important;font-family:var(--body-font);-webkit-font-smoothing:antialiased;overflow-x:clip;position:relative}
h1,h2,h3,h4,h5,h6{font-family:var(--heading-font);color:var(--u-ink);letter-spacing:-.025em}
p,span,li,td,th,label,small,div{color-scheme:dark}
img,svg,video{max-width:100%;height:auto}
.preloader{display:none !important}
[data-aos]{transition-duration:.5s !important}
@media (prefers-reduced-motion:reduce){[data-aos]{transition:none !important;transform:none !important;opacity:1 !important}}
::selection{background:rgba(57,230,168,.3)}

/* aurora + dots su tutto il sito */
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
   radial-gradient(520px 520px at 8% -6%, rgba(31,185,133,.35), transparent 70%),
   radial-gradient(460px 460px at 96% 8%, rgba(44,123,240,.30), transparent 70%),
   radial-gradient(440px 440px at 50% 96%, rgba(122,92,255,.26), transparent 70%);
  filter:blur(20px)}
body::after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;
  -webkit-mask-image:radial-gradient(circle at 50% 25%,#000,transparent 80%);mask-image:radial-gradient(circle at 50% 25%,#000,transparent 80%)}
body > *{position:relative;z-index:1}

/* sezioni trasparenti per far vedere l'aurora */
section, .section-bg, .bg--white, .bg-white, .gray-bg, [class*="section"]{background-color:transparent !important}

.fm-grad, .grad{background:linear-gradient(110deg,var(--u-mint),var(--u-cyan) 55%,var(--u-violet));-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- Header vetro scuro ---------- */
.header{background:rgba(6,11,18,.6) !important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--u-line);box-shadow:none !important}
.header.active, .header-active{background:rgba(6,11,18,.85) !important}
.nav-link, .nav-menu__link{color:var(--u-mut) !important;font-weight:500}
.nav-link:hover, .nav-menu__link:hover{color:var(--u-ink) !important}

@media (max-width:991px){
  #header-collapse, .nav-menu{background:#0A1320 !important;border:1px solid var(--u-line);border-radius:var(--u-r);padding:.75rem 1rem;margin-top:.75rem;box-shadow:var(--u-shadow)}
  #header-collapse .nav-link{padding-block:.8rem;font-size:1.02rem}
}

/* ---------- Bottoni ---------- */
.btn--base{background:linear-gradient(100deg,var(--u-mint),var(--u-mint2)) !important;color:#04231A !important;border:0 !important;border-radius:999px !important;font-weight:700;box-shadow:0 8px 30px -10px rgba(57,230,168,.6);transition:transform .25s var(--u-ease),box-shadow .25s var(--u-ease)}
.btn--base:hover{transform:translateY(-2px);box-shadow:0 14px 40px -10px rgba(57,230,168,.8);color:#04231A !important}
.btn-outline--base, .btn--outline{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;color:var(--u-ink) !important;border-radius:999px !important;backdrop-filter:blur(8px)}
.btn-outline--base:hover{border-color:var(--u-mint) !important;color:var(--u-mint) !important}
a:focus-visible,button:focus-visible{outline:2px solid var(--u-mint);outline-offset:2px;border-radius:8px}

/* ---------- HERO ---------- */
.fm-hero{position:relative;text-align:center;padding:clamp(72px,11vh,120px) 0 64px !important;background:transparent !important}
.fm-eyebrow{display:inline-flex;align-items:center;gap:.5rem;background:var(--u-glass);border:1px solid var(--u-line);color:var(--u-mint2);font-weight:600;font-size:.85rem;padding:.45rem 1.1rem;border-radius:999px;margin-bottom:24px}
.fm-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--u-mint);box-shadow:0 0 10px var(--u-mint);animation:fmpulse 1.8s infinite}
@keyframes fmpulse{50%{opacity:.4}}
.fm-hero .banner-content__title{font-size:clamp(2.8rem,7.2vw,5.4rem);font-weight:800;line-height:1.03;margin-bottom:20px;color:var(--u-ink)}
.fm-hero__desc{font-size:clamp(1.05rem,2vw,1.28rem);color:var(--u-mut) !important;max-width:560px;margin:0 auto 2.2rem !important}

.fm-hero__search{max-width:580px;margin:0 auto !important;text-align:left}
.fm-hero__search .search-box-field{display:flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.07);border:1px solid var(--u-line);border-radius:999px;padding:9px 9px 9px 26px;backdrop-filter:blur(10px);transition:border-color .2s,box-shadow .2s}
.fm-hero__search .search-box-field:focus-within{border-color:var(--u-mint);box-shadow:0 0 0 4px rgba(57,230,168,.18)}
.fm-hero__search .search-box-field__input{flex:1;border:0 !important;outline:0;background:transparent !important;box-shadow:none !important;font-size:1.05rem;padding-block:.85rem;color:var(--u-ink) !important}
.fm-hero__search .search-box-field__input::placeholder{color:var(--u-mut)}
.fm-search-btn{flex:none;padding:.8rem 1.6rem !important}
.fm-hero__search .search-box-field__icon{display:none}
.search-box-result{background:#0A1320;border:1px solid var(--u-line);border-radius:var(--u-r);box-shadow:var(--u-shadow)}
.search-box-result a, .search-box-list a{color:var(--u-ink)}

ul.fm-hero__badges{list-style:none;display:flex !important;flex-wrap:wrap !important;justify-content:center !important;align-items:center;gap:.55rem 1.8rem;margin:1.8rem 0 0;padding:0;color:var(--u-mut) !important;font-weight:500;font-size:.93rem;width:100%}
ul.fm-hero__badges li{display:inline-flex !important;align-items:center;gap:.4rem;white-space:nowrap}
ul.fm-hero__badges i{color:var(--u-mint)}

/* carta eSIM fluttuante */
.fm-herocard{max-width:380px;margin:56px auto 0;position:relative}
.fm-esimcard{position:relative;background:linear-gradient(135deg,rgba(57,230,168,.18),rgba(139,123,255,.14));border:1px solid var(--u-line);border-radius:26px;padding:26px;backdrop-filter:blur(14px);box-shadow:var(--u-shadow);transform:rotate(-3deg);transition:transform .4s var(--u-ease);text-align:left}
.fm-herocard:hover .fm-esimcard{transform:rotate(0)}
.fm-esimcard__chip{display:block;width:46px;height:34px;border-radius:8px;background:linear-gradient(135deg,#D9C26A,#A98A2E);margin-bottom:22px}
.fm-esimcard__row{display:flex;justify-content:space-between;align-items:flex-end}
.fm-esimcard__lbl{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--u-mut)}
.fm-esimcard__big{display:block;font-family:var(--heading-font);font-size:1.5rem;font-weight:700;color:var(--u-ink)}
.fm-esimcard__big--sm{font-size:1.05rem}
.fm-esimcard__glow{position:absolute;inset:auto 0 -28px;height:56px;background:var(--u-mint);filter:blur(48px);opacity:.4;border-radius:50%}

/* ---------- Titoli sezione ---------- */
.section-heading{max-width:600px;margin-inline:auto;margin-bottom:2.8rem !important;text-align:center}
.section-heading.style-left{text-align:center !important}
.section-heading__title{font-size:clamp(2rem,4vw,3rem);color:var(--u-ink)}
.section-heading__desc{color:var(--u-mut) !important}
.my-60{margin-block:90px !important}
.my-80,.my-120{margin-block:100px !important}

/* ---------- Tab a segmenti ---------- */
.esim-plan-tab{display:flex !important;width:fit-content;max-width:100%;margin-inline:auto !important;margin-bottom:30px !important;gap:4px;background:var(--u-glass) !important;border:1px solid var(--u-line) !important;padding:5px !important;border-radius:999px !important;overflow-x:auto;scrollbar-width:none;backdrop-filter:blur(8px)}
.esim-plan-tab::-webkit-scrollbar{display:none}
.esim-plan-tab__btn{border:0 !important;background:transparent !important;padding:.6rem 1.35rem !important;border-radius:999px !important;font-weight:600;font-size:.94rem;white-space:nowrap;color:var(--u-mut) !important;transition:all .25s var(--u-ease)}
.esim-plan-tab__btn.active{background:rgba(255,255,255,.1) !important;color:var(--u-ink) !important}

/* ---------- Destinazioni: tessere immagine ---------- */
.esim-plan-card{display:flex;flex-direction:column;justify-content:flex-end;position:relative;aspect-ratio:3/4;border:1px solid var(--u-line) !important;border-radius:var(--u-r) !important;padding:18px !important;overflow:hidden;color:var(--u-ink);transition:transform .4s var(--u-ease),box-shadow .4s var(--u-ease)}
.esim-plan-card::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(135deg,#1b4332,#2d6a4f)}
.esim-plan-card::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 32%,rgba(4,9,14,.9))}
.esim-plan-card:nth-child(8n+2)::before{background:linear-gradient(135deg,#3a2618,#7d4f2a)}
.esim-plan-card:nth-child(8n+3)::before{background:linear-gradient(135deg,#1d2b53,#3b5bdb)}
.esim-plan-card:nth-child(8n+4)::before{background:linear-gradient(135deg,#4a1d3f,#9d4edd)}
.esim-plan-card:nth-child(8n+5)::before{background:linear-gradient(135deg,#1d3a4a,#2596be)}
.esim-plan-card:nth-child(8n+6)::before{background:linear-gradient(135deg,#4a3a1d,#c9a227)}
.esim-plan-card:nth-child(8n+7)::before{background:linear-gradient(135deg,#1d4a3a,#2bbe96)}
.esim-plan-card:nth-child(8n+8)::before{background:linear-gradient(135deg,#3a1d2b,#be2c63)}
.esim-plan-card:hover{transform:translateY(-6px) scale(1.01);box-shadow:var(--u-shadow)}
.esim-plan-card__img,.country-code-avatar{position:absolute;top:14px;left:14px;z-index:2;width:40px !important;height:40px !important;border-radius:50% !important;border:2px solid rgba(255,255,255,.6);object-fit:cover}
.esim-plan-card__content{position:relative;z-index:2}
.esim-plan-card__title{font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:2px}
.esim-plan-card__price{font-size:.9rem;color:var(--u-mint2) !important;font-weight:600}

/* card regionali/globali (2) coerenti */
.esim-plan-card2{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;border-radius:var(--u-r) !important;backdrop-filter:blur(8px);transition:transform .3s var(--u-ease),box-shadow .3s}
.esim-plan-card2:hover{transform:translateY(-4px);box-shadow:var(--u-shadow)}
.esim-plan-card2 *{color:var(--u-ink)}

/* ---------- Come funziona: passi numerati glass ---------- */
.how-it-works .row > .col-lg-6:first-child{width:100%}
.how-it-works .row > .col-lg-6:last-child{display:none}
.how-it-works-tab{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:fmstep}
.how-it-works-tab-item{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;border-radius:var(--u-r) !important;padding:32px 26px !important;cursor:default !important;box-shadow:none !important;backdrop-filter:blur(8px)}
.how-it-works-tab-item__icon{display:none !important}
.how-it-works-tab-item::before{counter-increment:fmstep;content:"0" counter(fmstep);font-family:var(--heading-font);font-size:3rem;font-weight:800;line-height:1;background:linear-gradient(120deg,var(--u-mint),var(--u-cyan));-webkit-background-clip:text;background-clip:text;color:transparent;display:block;margin-bottom:12px}
.how-it-works-tab-item__title{font-size:1.25rem;color:var(--u-ink);margin-bottom:6px}
.how-it-works-tab-item__desc{color:var(--u-mut) !important;font-size:.96rem}
@media (max-width:860px){.how-it-works-tab{grid-template-columns:1fr}}

/* ---------- Contatori / stats ---------- */
.counter-item, .about-counter, .counter-section__item{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;border-radius:var(--u-r) !important;backdrop-filter:blur(8px)}
.odometer, .counter-item__number{font-family:var(--heading-font) !important;color:var(--u-ink)}

/* ---------- FAQ ---------- */
.custom--accordion .accordion-item{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;border-radius:16px !important;overflow:hidden;box-shadow:none !important;margin-bottom:10px;backdrop-filter:blur(6px)}
.custom--accordion .accordion-button{background:transparent !important;color:var(--u-ink) !important;font-weight:600;box-shadow:none !important;padding:20px 24px}
.custom--accordion .accordion-button::after{filter:invert(1) brightness(1.5)}
.custom--accordion .accordion-body, .custom--accordion .accordion-body *{color:var(--u-mut) !important}

/* ---------- Card generiche pubbliche ---------- */
.service-card,.blog-section__item,.testimonial-section__item{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;border-radius:var(--u-r) !important;backdrop-filter:blur(8px);box-shadow:none}
.service-card *,.blog-section__item *,.testimonial-section__item *{color:var(--u-ink)}
.service-card:hover,.blog-section__item:hover{transform:translateY(-4px);box-shadow:var(--u-shadow)}

/* ---------- PAGINA ACQUISTO ---------- */
.choose-plan-item{display:block;background:var(--u-glass) !important;border:1.5px solid var(--u-line) !important;border-radius:var(--u-r) !important;padding:1.15rem 1.25rem !important;cursor:pointer;backdrop-filter:blur(8px);transition:all .2s var(--u-ease)}
.choose-plan-item *{color:var(--u-ink)}
.choose-plan-item:hover{border-color:rgba(57,230,168,.5) !important}
.choose-plan-item:has(input:checked){border-color:var(--u-mint) !important;box-shadow:0 0 0 3px rgba(57,230,168,.25);background:linear-gradient(180deg,rgba(57,230,168,.12),var(--u-glass)) !important}
.choose-plan-item__capacity{font-size:1.35rem;font-weight:700}
.choose-plan-item__price{font-size:1.5rem;font-weight:800;font-variant-numeric:tabular-nums}
.choose-plan-item__validity{color:var(--u-mut) !important}
.choose-plan-item__input{width:22px;height:22px;border:2px solid rgba(255,255,255,.3);border-radius:50%;display:inline-block;position:relative;flex:none;transition:all .2s}
.choose-plan-item:has(input:checked) .choose-plan-item__input{border-color:var(--u-mint);background:var(--u-mint);box-shadow:inset 0 0 0 4px #0A1320}
@media (min-width:992px){.choose-plan-sidebar{position:sticky;top:96px}}
.choose-plan-sidebar{background:#0A1320 !important;border:1px solid var(--u-line);border-radius:var(--u-r);box-shadow:var(--u-shadow);overflow:hidden}
.choose-plan-sidebar *{color:var(--u-ink)}
.choose-plan-sidebar .btn--base{width:100%;padding-block:1rem;font-size:1.05rem}

/* ---------- Componenti app (dashboard/auth) — base leggibile ---------- */
.card,.box,.dashboard-card,.widget,.custom--card,.account-wrapper,.modal-content,.dropdown-menu{background:#0A1320 !important;border:1px solid var(--u-line) !important;color:var(--u-ink) !important}
.card *,.box *,.dashboard-card *,.custom--card *{color:inherit}
.form--control,.form-control,.form-select,input,select,textarea{background:rgba(255,255,255,.05) !important;border:1px solid var(--u-line) !important;color:var(--u-ink) !important}
.form--control::placeholder,input::placeholder,textarea::placeholder{color:var(--u-mut)}
.form--label,.form-label,label{color:var(--u-ink)}
.table,.table td,.table th{color:var(--u-ink) !important;border-color:var(--u-line) !important}
.table thead{background:rgba(255,255,255,.04)}
.dropdown-menu a{color:var(--u-ink)}
.dropdown-menu a:hover{background:rgba(255,255,255,.06)}
@media (max-width:767px){.table-responsive{-webkit-overflow-scrolling:touch}}

/* ---------- Footer ---------- */
.footer-area__shape,.footer-area__image,.footer-area__shape-left,.footer-area__shape-right{display:none !important}
.footer-area{background:transparent !important;border-top:1px solid var(--u-line);padding-top:56px}
.footer-area *, .footer-item__desc, .footer-menu__link{color:var(--u-mut) !important}
.footer-item__title{color:var(--u-ink) !important}
.footer-menu__link:hover, .footer-area a:hover{color:var(--u-ink) !important}

.social-list__link{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;color:var(--u-ink) !important}
.social-list__link:hover{background:var(--u-mint) !important;color:#04231A !important;border-color:var(--u-mint) !important}

/* ---------- Cookie ---------- */
.cookies-card{background:rgba(10,19,32,.92) !important;border:1px solid var(--u-line);border-radius:var(--u-r);box-shadow:var(--u-shadow);backdrop-filter:blur(14px)}
.cookies-card,.cookies-card *{color:var(--u-ink) !important}
.cookies-card__icon{background:var(--u-mint) !important;color:#04231A !important}

/* ---------- Mobile ---------- */
@media (max-width:575px){
  .container{padding-inline:18px}
  .fm-hero{padding:54px 0 48px !important}
  .fm-hero .banner-content__title{font-size:2.35rem}
  .fm-hero__desc{font-size:1rem}
  .fm-search-btn{padding:.7rem 1.1rem !important;font-size:.9rem}
  ul.fm-hero__badges{gap:.45rem 1rem;font-size:.84rem}
  .fm-herocard{margin-top:42px}
  .esim-plan-tab{justify-content:flex-start !important}
  .section-heading__title{font-size:1.9rem}
  .how-it-works-tab-item{padding:26px 22px !important}
  .my-60,.my-80,.my-120{margin-block:64px !important}
}
img{content-visibility:auto}

/* ============================================================
   FIX AREA RISERVATA (dashboard, sidebar, tabelle, alert)
   ============================================================ */

/* --- Sidebar dashboard in vetro scuro --- */
.offcanvas-sidebar,
.offcanvas-sidebar--dashboard,
.offcanvas-sidebar__body,
.offcanvas-sidebar__header{
  background:#0A1320 !important;
  border-color:var(--u-line) !important;
}
.offcanvas-sidebar{border:1px solid var(--u-line) !important;border-radius:var(--u-r) !important}
.user-profile, .user-profile *{color:var(--u-ink) !important}
.offcanvas-sidebar-menu__label{color:var(--u-mut) !important;text-transform:uppercase;letter-spacing:.08em;font-size:.74rem}
.offcanvas-sidebar-menu__link{color:var(--u-mut) !important;border-radius:10px;transition:background .2s,color .2s}
.offcanvas-sidebar-menu__link:hover{color:var(--u-ink) !important;background:rgba(255,255,255,.05)}
.offcanvas-sidebar-menu__item.active .offcanvas-sidebar-menu__link,
.offcanvas-sidebar-menu__item .offcanvas-sidebar-menu__link.active{color:var(--u-mint) !important;background:rgba(57,230,168,.1)}
.offcanvas-sidebar-menu__link.text--danger{color:#FF6B6B !important}

/* --- Banner/alert in alto --- */
.alert{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;border-radius:var(--u-r) !important;backdrop-filter:blur(8px)}
.alert, .alert *, .alert__title, .alert__desc{color:var(--u-ink) !important}
.alert--warning{border-color:rgba(217,194,106,.4) !important}
.alert--info{border-color:rgba(59,199,245,.4) !important}
.alert--danger{border-color:rgba(255,107,107,.4) !important}
.alert__icon{color:var(--u-mint) !important}

/* --- Stat cards dashboard --- */
.dashboard-widget{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;border-radius:var(--u-r) !important;backdrop-filter:blur(8px)}
.dashboard-widget__label, .dashboard-widget__title{color:var(--u-ink) !important}
.dashboard-widget__label{color:var(--u-mut) !important}

/* --- Tabelle: testo leggibile + intestazione --- */
.table--custom, .table{color:var(--u-ink) !important}
.table--custom thead, .table--custom thead th, .table--custom th{
  background:rgba(255,255,255,.05) !important;color:var(--u-mut) !important;border-color:var(--u-line) !important;
}
.table--custom td, .table--custom tr, .table--custom tbody td{
  color:var(--u-ink) !important;border-color:var(--u-line) !important;background:transparent !important;
}
.table--custom td *{color:var(--u-ink)}
/* preserva importi rossi/verdi e badge */
.text--danger, td .text--danger, .table .text--danger{color:#FF6B6B !important}
.text--success, td .text--success, .table .text--success{color:var(--u-mint) !important}

/* --- Bottoni scuri del tema --- */
.btn--dark{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;color:var(--u-ink) !important;border-radius:999px !important}
.btn--dark:hover{background:rgba(255,255,255,.1) !important;color:var(--u-ink) !important}

/* --- Recuperi di leggibilità generici --- */
.text--dark, .text-dark, .text--title{color:var(--u-ink) !important}
.text--muted, .text-muted, .text--small.text--muted{color:var(--u-mut) !important}
.notice{background:var(--u-glass) !important;border:1px solid var(--u-line) !important;color:var(--u-ink) !important}
.badge--warning{color:#04231A !important}

/* card riepilogo profilo/altre nel pannello */
.dashboard-card, .custom--card, .card{background:#0A1320 !important;border:1px solid var(--u-line) !important}
.card-header, .card-footer{background:rgba(255,255,255,.03) !important;border-color:var(--u-line) !important;color:var(--u-ink) !important}

/* --- Sicurezze finali dopo la rimappatura --- */
/* testo volutamente bianco su sfondi colorati: deve restare chiaro */
.text--white, .text-white{color:#F2F7F5 !important}
/* link generici leggibili */
a{color:inherit}
a:hover{color:hsl(var(--u-mint, 152 79% 56%))}
.text--base{color:var(--u-mint) !important}
/* modali e dropdown coerenti */
.modal-content, .dropdown-menu, .offcanvas{background:#0A1320 !important;border:1px solid var(--u-line) !important}
.modal-header, .modal-footer{border-color:var(--u-line) !important}
/* pulsanti chiari del tema che diventerebbero illeggibili */
.btn--light, .btn-light{background:var(--u-glass) !important;color:var(--u-ink) !important;border:1px solid var(--u-line) !important}
/* paginazione */
.pagination .page-link{background:var(--u-glass) !important;border-color:var(--u-line) !important;color:var(--u-ink) !important}
.pagination .active .page-link{background:var(--u-mint) !important;color:#04231A !important;border-color:var(--u-mint) !important}
