/* ==========================================================
   UI KIT PIXEL-ART (mecha pack) — font Pixeloid + bottoni/pannelli 9-slice
   Fonte asset: img/fonts/*, img/ui/kit/*
   I bottoni usano `border-image` (9-slice) con `image-rendering:pixelated`:
   restano nitidi a qualsiasi larghezza del testo.
   ================================================---------- */

/* --- Font pixel (serviti come .ttf same-origin, cacheable) --- */
@font-face{
    font-family:'Pixeloid';
    src:url('../img/fonts/PixeloidSans.ttf') format('truetype');
    font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
    font-family:'Pixeloid';
    src:url('../img/fonts/PixeloidSans-Bold.ttf') format('truetype');
    font-weight:700; font-style:normal; font-display:swap;
}
@font-face{
    font-family:'Pixeloid Mono';
    src:url('../img/fonts/PixeloidMono.ttf') format('truetype');
    font-weight:400; font-style:normal; font-display:swap;
}

/* ==========================================================
   BOTTONE PIXEL — .ui-btn (forma B3: rettangolo + mensola)
   Varianti colore: .is-blue(default) .is-cyan .is-gold .is-red .is-green
   Stati: :hover (bordo brillante) · :active (premuto)
   `--k` = scala pixel (quanto è grosso il bordo pixel-art).
   ================================================---------- */
.ui-btn{
    --k:3;
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    box-sizing:border-box;
    font-family:'Pixeloid', var(--font-titoli); font-weight:700;
    font-size:.82rem; letter-spacing:1px; text-transform:uppercase;
    color:#eafcff; text-shadow:0 1px 0 rgba(0,0,0,.6);
    cursor:pointer; -webkit-user-select:none; user-select:none;
    padding:2px 14px; min-height:calc(16px * var(--k));
    background:transparent;
    /* 9-slice B3: slice top3 right5 bottom6 left5, spessori = slice * k */
    border-style:solid;
    border-width:calc(3px*var(--k)) calc(5px*var(--k)) calc(6px*var(--k)) calc(5px*var(--k));
    border-image:url('../img/ui/kit/btn/b3-blue-idle.png') 3 5 6 5 fill stretch;
    image-rendering:pixelated;
    transition:filter .12s ease, transform .08s ease;
}
.ui-btn:hover{ border-image-source:url('../img/ui/kit/btn/b3-blue-hover.png'); filter:brightness(1.06); }
.ui-btn:active{ border-image-source:url('../img/ui/kit/btn/b3-blue-pressed.png'); transform:translateY(1px); }
.ui-btn:disabled,.ui-btn[disabled]{ filter:grayscale(.6) brightness(.6); cursor:not-allowed; }

/* varianti colore (border-image swap per stato) */
.ui-btn.is-cyan { border-image-source:url('../img/ui/kit/btn/b3-cyan-idle.png'); }
.ui-btn.is-cyan:hover { border-image-source:url('../img/ui/kit/btn/b3-cyan-hover.png'); }
.ui-btn.is-cyan:active{ border-image-source:url('../img/ui/kit/btn/b3-cyan-pressed.png'); }
.ui-btn.is-gold { border-image-source:url('../img/ui/kit/btn/b3-gold-idle.png'); color:#fff6df; }
.ui-btn.is-gold:hover { border-image-source:url('../img/ui/kit/btn/b3-gold-hover.png'); }
.ui-btn.is-gold:active{ border-image-source:url('../img/ui/kit/btn/b3-gold-pressed.png'); }
.ui-btn.is-red { border-image-source:url('../img/ui/kit/btn/b3-red-idle.png'); color:#ffe6ec; }
.ui-btn.is-red:hover { border-image-source:url('../img/ui/kit/btn/b3-red-hover.png'); }
.ui-btn.is-red:active{ border-image-source:url('../img/ui/kit/btn/b3-red-pressed.png'); }
.ui-btn.is-green { border-image-source:url('../img/ui/kit/btn/b3-green-idle.png'); color:#e4ffee; }
.ui-btn.is-green:hover { border-image-source:url('../img/ui/kit/btn/b3-green-hover.png'); }
.ui-btn.is-green:active{ border-image-source:url('../img/ui/kit/btn/b3-green-pressed.png'); }

/* larghezza piena (colonne azioni) */
.ui-btn.is-block{ display:flex; width:100%; }

/* --- Variante HERO (forma B4 esagonale/chamfer) per le CTA principali --- */
.ui-btn.is-hero{
    --k:4;
    font-size:1rem; letter-spacing:2px;
    border-width:calc(2px*var(--k)) calc(8px*var(--k)) calc(5px*var(--k)) calc(8px*var(--k));
    border-image:url('../img/ui/kit/btn/b4-blue-idle.png') 2 8 5 8 fill stretch;
}
.ui-btn.is-hero:hover{ border-image-source:url('../img/ui/kit/btn/b4-blue-hover.png'); }
.ui-btn.is-hero:active{ border-image-source:url('../img/ui/kit/btn/b4-blue-pressed.png'); }
.ui-btn.is-hero.is-cyan { border-image-source:url('../img/ui/kit/btn/b4-cyan-idle.png'); }
.ui-btn.is-hero.is-cyan:hover { border-image-source:url('../img/ui/kit/btn/b4-cyan-hover.png'); }
.ui-btn.is-hero.is-cyan:active{ border-image-source:url('../img/ui/kit/btn/b4-cyan-pressed.png'); }
.ui-btn.is-hero.is-gold { border-image-source:url('../img/ui/kit/btn/b4-gold-idle.png'); }
.ui-btn.is-hero.is-gold:hover { border-image-source:url('../img/ui/kit/btn/b4-gold-hover.png'); }
.ui-btn.is-hero.is-gold:active{ border-image-source:url('../img/ui/kit/btn/b4-gold-pressed.png'); }
.ui-btn.is-hero.is-red { border-image-source:url('../img/ui/kit/btn/b4-red-idle.png'); }
.ui-btn.is-hero.is-red:hover { border-image-source:url('../img/ui/kit/btn/b4-red-hover.png'); }
.ui-btn.is-hero.is-red:active{ border-image-source:url('../img/ui/kit/btn/b4-red-pressed.png'); }
.ui-btn.is-hero.is-green { border-image-source:url('../img/ui/kit/btn/b4-green-idle.png'); }
.ui-btn.is-hero.is-green:hover { border-image-source:url('../img/ui/kit/btn/b4-green-hover.png'); }
.ui-btn.is-hero.is-green:active{ border-image-source:url('../img/ui/kit/btn/b4-green-pressed.png'); }

/* ==========================================================
   ICONE 16×16 del kit (mono, tintabili via background)
   Uso: <i class="ui-ico ico-shield"></i>
   ================================================---------- */
.ui-ico{
    display:inline-block; width:1.1em; height:1.1em; vertical-align:-2px;
    background:currentColor;
    -webkit-mask:var(--ico) center/contain no-repeat; mask:var(--ico) center/contain no-repeat;
    image-rendering:pixelated;
}
.ico-shield{ --ico:url('../img/ui/kit/icon/Shield.png'); }
.ico-heart{ --ico:url('../img/ui/kit/icon/Heart.png'); }
.ico-energy{ --ico:url('../img/ui/kit/icon/Lightning_or_Energy.png'); }
.ico-gear{ --ico:url('../img/ui/kit/icon/Gear.png'); }
.ico-wrench{ --ico:url('../img/ui/kit/icon/Wrench.png'); }
.ico-back{ --ico:url('../img/ui/kit/icon/Back.png'); }
.ico-check{ --ico:url('../img/ui/kit/icon/Check_or_Confirm.png'); }
.ico-play{ --ico:url('../img/ui/kit/icon/Play_or_Go.png'); }
.ico-x{ --ico:url('../img/ui/kit/icon/x.png'); }
.ico-help{ --ico:url('../img/ui/kit/icon/Question_Mark.png'); }

/* ==========================================================
   PIXEL FRAMES — i box/cornici del gioco diventano pannelli pixel
   del kit (border-image 9-slice, angoli tagliati TL/BR come prima).
   ui-kit.css è caricato per ULTIMO → questi override vincono.
   ================================================---------- */
/* Cornici pixel SOLO sulle card interne (zone, classi) e sui modali.
   Hub escluso (minimal). Le PAGINE overlay (sotto) non hanno riquadro. */
.frame:not(.hub-stats):not(.hub-big):not(.hub-tile){
    /* Niente più cornice pixel ciano: bordo sottile neutro e angoli morbidi.
       La cornice a 9-slice dava a ogni riquadro un contorno blu acceso che
       "gridava" più del contenuto. */
    border:1px solid rgba(150,168,182,.20) !important;
    border-radius:var(--r-3) !important;
    background:rgba(9,17,27,.55) !important;
    clip-path:none !important;
    filter:none;
}
.frame:not(.hub-stats):not(.hub-big):not(.hub-tile)::before{ display:none !important; }

/* PAGINE OVERLAY: niente riquadro blu → a schermo intero (contenuto sul velo scuro) */
#view-combat, #view-equip, #view-missions, #view-cyberwear, #view-boss,
#view-world, #view-social, #view-mercato, #view-spedizioni, #view-impostazioni{
    padding:0 !important;
}
.cbt-card, .eq-card, .ms-card, .cy-card, .bs-card, .wd-card, .mk-card, .hub-card, .hud-navbar, .sp-card, .im-card{
    border:none !important; background:transparent !important; clip-path:none !important;
    box-shadow:none !important; max-width:620px;
    padding:calc(10px + env(safe-area-inset-top)) 14px calc(16px + env(safe-area-inset-bottom)) !important;
}
.cbt-card::before, .eq-card::before, .ms-card::before, .cy-card::before,
.bs-card::before, .wd-card::before, .mk-card::before, .hub-card::before, .hud-navbar::before,
.cbt-card::after, .eq-card::after, .ms-card::after, .cy-card::after,
.bs-card::after, .wd-card::after, .mk-card::after, .hub-card::after, .hud-navbar::after{
    display:none !important;
}
/* varianti colore del frame */
.frame.fr-gold{ border-image-source:url('../img/ui/kit/frame/frame-gold.png') !important; }
.frame.fr-dim{ border-image-source:url('../img/ui/kit/frame/frame-dim.png') !important; }
.frame.fr-red{ border-image-source:url('../img/ui/kit/frame/frame-red.png') !important; }
.frame:active{ transform:translateY(1px); }
.hub-tiles{ grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
.hc-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
.hc-job{ border-width:7px !important; }

/* ==========================================================
   HUB — bottoni stile MINIMAL (1px, fill scuro, niente glow) con un
   TOCCO d'accento ciano. Lo sfondo epico fa il "catchy".
   ================================================---------- */
.hub-big, .hub-tile{
    background:rgba(9,17,27,.60) !important;
    border:1px solid rgba(150,168,182,.20) !important;
    border-radius:var(--r-3) !important;
    clip-path:none !important; filter:none !important; box-shadow:none !important;
    transition:border-color .14s ease, background .14s ease, transform .08s ease !important;
}
.hub-big::before, .hub-tile::before{ display:none !important; }   /* via il fill/gloss della cornice */
.hub-big{ padding:14px 16px !important; }
.hub-big:hover, .hub-tile:hover{ border-color:rgba(190,205,215,.34) !important; background:rgba(15,27,41,.72) !important; }
.hub-big:active, .hub-tile:active{ transform:translateY(1px); }
/* icona col tocco d'accento, testo pulito senza glow */
.hub-big .hb-ic{ color:var(--accent-2) !important; opacity:.85; filter:none !important; }
.hub-big .hb-chev{ color:#5f7d8f !important; filter:none !important; }
.hub-big .gtxt{ text-shadow:none !important; }
.hub-tile .ht-ic{ color:var(--accent-2) !important; opacity:.82; filter:none !important; }
.hub-tile .ht-lab{ color:#cfe0ea !important; text-shadow:none !important; }
/* riconfig: secondario minimal */
.hub-reconf{
    background:rgba(9,17,27,.5) !important; border:1px solid rgba(150,168,182,.18) !important;
    border-radius:var(--r-3) !important;   /* è una riga dell'Hub, non un comando: stesso raggio di SCONTRI/ESPLORA */
    clip-path:none !important; box-shadow:none !important; color:#bcd6e4 !important; text-shadow:none !important;
}
.hub-reconf:hover{ border-color:rgba(190,205,215,.32) !important; background:rgba(15,27,41,.62) !important; }
/* selezionato (1° tap): accento sobrio, niente glitch pieno */
.hub-big.selected, .hub-tile.selected{ border-color:rgba(220,232,240,.5) !important; background:rgba(16,34,50,.8) !important; animation:none !important; }
.hub-big.selected .gtxt, .hub-tile.selected .ht-lab{ color:#fff !important; }
/* pannello stats: minimal anche lui (coerenza col resto); il cerchio boss resta il focal point */
.hub-stats{ background:rgba(9,17,27,.6) !important; border:1px solid rgba(150,168,182,.20) !important;
    border-radius:var(--r-3) !important;
    clip-path:none !important; filter:none !important; box-shadow:none !important; }
.hub-stats::before{ display:none !important; }

/* ==========================================================
   CTA / AZIONI — STILE UNICO in tutta l'app: fondo scuro sobrio, bordo 1px
   SQUADRATO, ACCENTO a sinistra (come l'Hub). Colore-accento per INTENTO
   (verde=conferma, rosso=pericolo, oro=economia, rosa=pet). Il testo resta su
   fondo scuro → sempre leggibile (fix abilità rosse). ESCLUSI: RIMUOVI
   (.slot-rm) e i bottoni ASSETTI (.lo-save/.lo-load/.lo-del) — mantengono lo
   stile originale dell'Officina; il combattimento (bottoni pixel); tab e card.
   ================================================---------- */
.ms-seleziona, .ms-ripeti, .ms-torna, .ms-taglia, .ms-explore,
.mk-buy, .mk-reroll, .bs-assalta, .bs-ritira,
.cy-toggle, .cy-pet, .cy-titolo, .cy-skill-btn,
.eq-smonta-bulk, .it-equip, .it-smonta, .it-riroll, .it-potenzia, .it-mirato, .it-mira-stat,
.hc-evo-btn, .hc-evo-cambia, .hc-prova-btn, .hc-act,
.ct-build, .ct-up, .ct-rep, .cs-recluta, .cs-congeda, .cs-attacca, .cs-report,
.sc-btn, .sc-mini, .sc-lascia, .lg-btn,
.wd-estrai, .wd-recap-ok, .wd-ev-op, .wd-ev-ok,
.in-avvia, .in-off-avvia, .pk-lancia, .pk-pl, .pk-mn,
.sp-lancia, .sp-dur, .sp-mn, .sp-pl, .sp-riscuoti, .sp-recap-ok,
.im-lang, .im-fs, .im-dev, .im-musica, .im-sfx,
.nk-btn, .btn-pannello, .tut-ok, .stag-ok, .sto-next, .rp-ok, .se-save,
.tv-modal-btn, .tv-install-go{
    background:rgba(9,17,27,.62) !important;
    border:1px solid rgba(150,168,182,.22) !important;
    /* L'accento a sinistra resta SOLO dove dice qualcosa (verde=conferma,
       rosso=pericolo, oro=economia, più sotto): il ciano di default era
       decorazione e basta. */
    border-image:none !important;
    border-radius:0 !important;   /* i PULSANTI restano squadrati: si smussano i riquadri, non i comandi */
    clip-path:none !important; box-shadow:none !important; filter:none !important; text-shadow:none !important;
    color:#e8eef3 !important;
    transition:border-color .14s ease, background .14s ease, transform .08s ease !important;
}
.ms-seleziona:hover:not(:disabled), .ms-ripeti:hover:not(:disabled), .ms-torna:hover, .ms-taglia:hover:not(:disabled),
.ms-explore:hover:hover, .mk-buy:hover:not(:disabled), .mk-reroll:hover:not(:disabled),
.bs-assalta:hover:not(:disabled), .bs-ritira:hover:not(:disabled),
.cy-toggle:hover, .cy-pet:hover, .cy-titolo:hover, .cy-skill-btn:hover:not(:disabled),
.eq-smonta-bulk:hover, .it-equip:hover, .it-smonta:hover, .it-riroll:hover:not(:disabled), .it-potenzia:hover:not(:disabled),
.it-mirato:hover, .it-mira-stat:hover,
.hc-evo-btn:hover:not(:disabled), .hc-evo-cambia:hover, .hc-prova-btn:hover, .hc-act:hover,
.ct-build:hover:not(:disabled), .ct-up:hover:not(:disabled), .ct-rep:hover:not(:disabled),
.cs-recluta:hover:not(:disabled), .cs-congeda:hover:not(:disabled), .cs-attacca:hover:not(:disabled), .cs-report:hover,
.sc-btn:hover, .sc-mini:hover, .sc-lascia:hover, .lg-btn:hover,
.wd-estrai:hover, .wd-recap-ok:hover, .wd-ev-op:hover:not(:disabled), .wd-ev-ok:hover,
.in-avvia:hover:not(:disabled), .in-off-avvia:hover:not(:disabled), .pk-lancia:hover:not(:disabled), .pk-pl:hover, .pk-mn:hover,
.sp-lancia:hover:not(:disabled), .sp-dur:hover, .sp-mn:hover:not(:disabled), .sp-pl:hover:not(:disabled), .sp-riscuoti:hover, .sp-recap-ok:hover,
.im-lang:hover, .im-fs:hover, .im-dev:hover, .im-musica:hover, .im-sfx:hover,
.nk-btn:hover, .btn-pannello:hover, .tut-ok:hover, .stag-ok:hover, .sto-next:hover, .rp-ok:hover, .se-save:hover:not(:disabled),
.tv-modal-btn:hover, .tv-install-go:hover{
    border-color:rgba(150,205,235,.5) !important; background:rgba(15,27,41,.8) !important;
}
.ms-seleziona:active, .ms-ripeti:active, .ms-torna:active, .ms-taglia:active, .ms-explore:active:active,
.mk-buy:active, .mk-reroll:active, .bs-assalta:active, .bs-ritira:active,
.cy-toggle:active, .cy-pet:active, .cy-titolo:active, .cy-skill-btn:active,
.eq-smonta-bulk:active, .it-equip:active, .it-smonta:active, .it-riroll:active, .it-potenzia:active, .it-mirato:active, .it-mira-stat:active,
.hc-evo-btn:active, .hc-evo-cambia:active, .hc-prova-btn:active, .hc-act:active,
.ct-build:active, .ct-up:active, .ct-rep:active, .cs-recluta:active, .cs-congeda:active, .cs-attacca:active, .cs-report:active,
.sc-btn:active, .sc-mini:active, .sc-lascia:active, .lg-btn:active,
.wd-estrai:active, .wd-recap-ok:active, .wd-ev-op:active, .wd-ev-ok:active,
.in-avvia:active, .in-off-avvia:active, .pk-lancia:active, .pk-pl:active, .pk-mn:active,
.sp-lancia:active, .sp-dur:active, .sp-mn:active, .sp-pl:active, .sp-riscuoti:active, .sp-recap-ok:active,
.im-lang:active, .im-fs:active, .im-dev:active, .im-musica:active, .im-sfx:active,
.nk-btn:active, .btn-pannello:active, .tut-ok:active, .stag-ok:active, .sto-next:active, .rp-ok:active, .se-save:active,
.tv-modal-btn:active, .tv-install-go:active{ transform:translateY(1px); }
.ms-seleziona:disabled, .ms-taglia:disabled, .mk-buy:disabled, .mk-reroll:disabled, .bs-assalta:disabled, .bs-ritira:disabled,
.cy-skill-btn:disabled, .it-riroll:disabled, .it-potenzia:disabled, .ct-build:disabled, .ct-up:disabled, .ct-rep:disabled,
.cs-recluta:disabled, .cs-congeda:disabled, .cs-attacca:disabled, .hc-evo-btn:disabled, .wd-ev-op:disabled,
.in-avvia:disabled, .in-off-avvia:disabled, .pk-lancia:disabled, .se-save:disabled,
.sp-lancia:disabled, .sp-mn:disabled, .sp-pl:disabled{ opacity:.4 !important; cursor:not-allowed; }

/* accento per INTENTO (colore del bordo sinistro) + testo tintato dove serve */
.it-equip, .ct-build, .cs-recluta, .wd-recap-ok, .wd-ev-ok, .in-avvia, .in-off-avvia,
.pk-lancia, .tut-ok, .stag-ok, .sto-next, .rp-ok, .se-save, .hc-prova-btn, .hc-evo-btn, .hc-act,
.sp-lancia, .sp-recap-ok, .ms-explore{ border-left-width:3px !important; border-left-color:var(--successo) !important; }
.it-smonta, .eq-smonta-bulk, .bs-assalta, .cs-attacca, .sc-lascia{
    border-left-width:3px !important; border-left-color:var(--pericolo) !important; color:#ffd7df !important;
}
.mk-reroll, .it-riroll, .it-potenzia, .ct-up, .ms-ripeti, .wd-estrai, .sp-riscuoti{ border-left-width:3px !important; border-left-color:var(--oro) !important; }
.bs-ritira, .ms-torna, .cs-congeda, .tv-modal-btn.fr-dim{ border-left-width:3px !important; border-left-color:rgba(120,150,175,.55) !important; }
.tv-modal-btn.fr-red{ border-left-width:3px !important; border-left-color:var(--pericolo) !important; }

/* STATI on/off (Cyberware): accento + TESTO tintato leggibile su fondo scuro
   (fix: prima il rosso "off" si confondeva col fondo bluastro della card). */
.cy-toggle.on{ border-left-width:3px !important; border-left-color:var(--successo) !important; color:#c9ffe0 !important; }
.cy-toggle.off{ border-left-width:3px !important; border-left-color:var(--pericolo) !important; color:#ffc2cf !important; }
.cy-pet.on, .cy-titolo.on{ border-left-width:3px !important; border-left-color:var(--pet) !important; color:#ffd0f6 !important; }
.cy-pet.off, .cy-titolo.off{ border-color:rgba(150,168,182,.22) !important; color:#e8eef3 !important; }

/* BOTTONI-ICONA (chiudi/indietro): quadrati minimal, hover rossastro */
.eq-close, .cy-close, .ms-close, .ct-x, .ct-detail-x, .wd-close, .bs-close, .in-x, .hc-x, .mx-x, .se-x,
.sc-close, .sc-back, .ms-back, .tv-modal-x, .tv-install-x, .hc-back, .sp-close, .im-close{
    background:rgba(9,17,27,.6) !important;
    border:1px solid rgba(120,150,175,.26) !important;
    border-image:none !important; clip-path:none !important; box-shadow:none !important; filter:none !important; text-shadow:none !important;
    color:#cfe0ea !important;
    transition:border-color .14s ease, background .14s ease, transform .08s ease !important;
}
.eq-close:hover, .cy-close:hover, .ms-close:hover, .ct-x:hover, .ct-detail-x:hover, .wd-close:hover, .bs-close:hover,
.in-x:hover, .hc-x:hover, .mx-x:hover, .se-x:hover, .sc-close:hover, .sc-back:hover, .ms-back:hover,
.tv-modal-x:hover, .tv-install-x:hover, .hc-back:hover, .sp-close:hover, .im-close:hover{ border-color:rgba(210,95,115,.6) !important; color:#ffd0d8 !important; }
.eq-close:active, .cy-close:active, .ms-close:active, .ct-x:active, .ct-detail-x:active, .wd-close:active, .bs-close:active,
.in-x:active, .hc-x:active, .mx-x:active, .se-x:active, .sc-close:active, .sc-back:active, .ms-back:active,
.tv-modal-x:active, .tv-install-x:active, .hc-back:active, .sp-close:active, .im-close:active{ transform:translateY(1px); }

/* ==========================================================
   BOTTONI PIXEL — SOLO nel combattimento. Il resto dell'app usa i
   bottoni minimal (sopra); le cornici pixel delle card interne restano.
   ================================================---------- */
.cbt-btn, .cbt-continua{
    --kb:3;
    background:transparent !important;
    border-style:solid; border-color:transparent;
    border-width:calc(3px*var(--kb)) calc(5px*var(--kb)) calc(6px*var(--kb)) calc(5px*var(--kb));
    border-image:url('../img/ui/kit/btn/b3-blue-idle.png') 3 5 6 5 fill stretch;
    image-rendering:pixelated;
    clip-path:none !important;
    box-shadow:none !important;
    transition:filter .12s ease, transform .08s ease;
}
.cbt-continua{ border-image-source:url('../img/ui/kit/btn/b3-green-idle.png'); }
.cbt-btn:hover:not(:disabled){ border-image-source:url('../img/ui/kit/btn/b3-blue-hover.png'); filter:brightness(1.08); }
.cbt-continua:hover{ border-image-source:url('../img/ui/kit/btn/b3-green-hover.png'); filter:brightness(1.06); }
.cbt-btn:active:not(:disabled), .cbt-continua:active{ transform:translateY(1px); filter:brightness(.96); }
.cbt-btn:disabled{ filter:grayscale(.55) brightness(.6); }
/* lista nemici: stile card professionale in css/missions.css (.ms-enemy ridisegnato) */

/* ==========================================================
   TIPOGRAFIA — titoli in CINZEL (maiuscoletti naturali), testo in BARLOW
   minuscolo. Il pixel font resta dov'è un segno voluto: i NUMERI dell'HUD di
   combattimento e le griglie del mondo. Su paragrafi interi stancava.
   ================================================---------- */
body, button, input, select, textarea{ font-family:var(--font-main); letter-spacing:0; }

/* Titoli di pagina e di sezione */
.hud-title, .hs-who > span, .eq-title, .ms-title, .cy-title, .bs-title,
.mk-titolo, .sp-title, .im-title, .ct-title, .in-titolo, .sc-title, .wd-title,
.mx-title, .hc-title, .cm-tit, .sto-title, .tut-titolo, .nk-titolo, .lg-tit,
.sk-nome, .rc-tit, .stag-tit, .ms-name, .it-nome, .mk-off-nm, h1, h2, h3{
    font-family:var(--font-titoli);
    font-weight:600;
    letter-spacing:.5px;
    text-transform:none;   /* Cinzel fa già i maiuscoletti da sé */
}

/* Etichette: il MAIUSCOLO resta un accento, non la regola */
/* Etichette compatte (tile dell'Hub, categorie, filtri): il MAIUSCOLO resta un
   accento, non la regola. In Barlow, perché il serif in corpo piccolo e tutto
   maiuscolo diventa illeggibile. */
.hub-tile .ht-lab, .hb-lab, .eq-cat-nm, .rc-rar, .mx-cap-head,
.ms-zone-lab, .it-tipo, .mk-off-tipo{
    font-family:var(--font-main) !important;
    text-transform:uppercase;
    letter-spacing:1.1px;
    font-weight:600;
    text-shadow:0 1px 2px rgba(0,0,0,.6) !important;
}

/* Numeri: tabellari, così le colonne non ballano a ogni tick */
.hs-cred, .sk-hud, .sk-log b, .wd-dist, .sp-timer, .bs-hp, .in-prog{
    font-variant-numeric:tabular-nums;
}

/* Pulsanti: leggibili, non urlati */
.ui-btn{ font-family:var(--font-main) !important; letter-spacing:.6px; }

/* --- Titoli di sezione: etichette sobrie, non insegne al neon --- */
.eq-section-title, .cy-section, .sp-section, .im-sec, .sc-sezione,
.ct-sezione, .in-sezione, .mx-sez{
    font-family:var(--font-main) !important;
    font-size:.7rem !important;
    font-weight:600 !important;
    letter-spacing:1.6px !important;
    text-transform:uppercase !important;
    color:rgba(206,220,230,.62) !important;
    text-shadow:none !important;
}

/* --- Slot e righe: bordo neutro morbido al posto del tratteggio ciano --- */
.eq-slot, .lo-slot{
    border:1px solid rgba(150,168,182,.20) !important;
    border-radius:var(--r-2) !important;
    background:rgba(9,17,27,.5) !important;
}
.eq-slot:hover, .lo-slot:hover{ border-color:rgba(190,205,215,.32) !important; }
.lo-slot.vuoto{ border-style:solid !important; }

/* --- Card, righe di lista e pannelli: angoli morbidi ovunque --- */
.it-card, .eq-tile, .ms-enemy, .ms-zone, .mk-off, .sp-riga, .sp-pick, .im-opz,
.ct-edificio, .in-pianeta, .sc-gilda-row, .rc-riga, .cy-card-imp, .bs-riga{
    border-radius:var(--r-2) !important;
}

/* --- Badge e chip: angoli morbidi al posto dei tagli obliqui --- */
.ms-zone-badge, .ms-tag, .ms-lock, .ms-diff, .hs-badge, .stag-badge, .rc-rar,
.sk-chip, .in-tier, .sp-tag{
    clip-path:none !important;
    border-radius:var(--r-1) !important;
}

/* --- Titoli senza aloni: il glow al neon su un serif fa "insegna", non gioco.
   Restano gli accenti luminosi dove sono informazione (barre, stati). --- */
.hud-title, .eq-title, .ms-title, .cy-title, .bs-title, .mk-titolo, .sp-title,
.im-title, .ct-title, .in-titolo, .sc-title, .wd-title, .mx-title, .hc-title,
.ms-name, .ms-zone-page .ms-title{
    text-shadow:0 1px 2px rgba(0,0,0,.55) !important;
}

/* --- Testi secondari sopra l'arte: un filo più chiari e con un'ombra corta,
   altrimenti il minuscolo sottile sparisce sulle zone luminose dello sfondo. --- */
.mk-hint, .ms-hint, .sp-hint, .eq-hint, .cy-hint, .im-opz-s, .wd-hint,
.mk-nota, .ms-nota, .sp-riepilogo, .eq-vuoto, .mk-vuoto{
    color:rgba(214,226,235,.78) !important;
    text-shadow:0 1px 3px rgba(0,0,0,.75) !important;
}
