/* Flotta AIS – stile Ittica360 */
.dfc-app,.dfc-blocco{
  --f-ink:#0b1a24;--f-ink2:#12293a;--f-sea:#1d4a5c;--f-teal:#0b666b;--f-aqua:#4fb7b3;--f-gold:#d9a548;
  --f-text:#1c2b35;--f-muted:#5b6b76;--f-line:rgba(11,26,36,.12);
  --f-f:var(--t-f,"Instrument Sans","Public Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif);
  font-family:var(--f-f);color:var(--f-text)}
.dfc-app *{box-sizing:border-box}
.dfc-blocco{padding:28px;border:1px solid var(--f-line);border-radius:16px;background:#fff;text-align:center}
.dfc-blocco h3{margin:0 0 6px;color:var(--f-ink)}
.dfc-btn{display:inline-block;padding:10px 22px;border-radius:999px;background:linear-gradient(135deg,#e8bd66,#d9a548 50%,#b9862e);color:var(--f-ink)!important;font-weight:700;text-decoration:none!important}

.dfc-app{border:1px solid var(--f-line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 18px 40px -28px rgba(11,26,36,.55)}
.dfc-barra{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;padding:14px 18px;color:#fff;
  background:radial-gradient(600px 120px at 10% 0%,rgba(79,183,179,.2),transparent 70%),linear-gradient(180deg,var(--f-ink),var(--f-ink2))}
.dfc-cont{display:flex;align-items:baseline;gap:7px}
.dfc-cont b{font:800 28px/1 var(--t-fd,"Big Shoulders Display","Arial Narrow",sans-serif);color:var(--f-gold)}
.dfc-cont span{font-size:13px;color:#cfdde3}
.dfc-filtri{margin-left:auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:14px}
.dfc-filtri label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.dfc-agg{font-size:12.5px;color:#9fb6c0}

.dfc-corpo{display:flex;flex-wrap:wrap}
.dfc-mappa{flex:999 1 520px;min-width:0;height:var(--dfc-h,640px);background:#aad3df}
.dfc-lato{flex:1 1 260px;max-width:100%;height:var(--dfc-h,640px);display:flex;flex-direction:column;border-left:1px solid var(--f-line);background:#fbfaf6}
.dfc-lato input[type=search]{margin:12px;padding:9px 12px;border:1px solid var(--f-line);border-radius:10px;font:inherit;font-size:14px;background:#fff}
.dfc-lista{list-style:none;margin:0;padding:0 8px;overflow:auto;flex:1}
.dfc-lista li{margin:0}
.dfc-app .dfc-lista button{all:unset;box-sizing:border-box;display:grid;grid-template-columns:12px 1fr;gap:2px 10px;align-items:center;width:100%;padding:8px 10px;border-radius:10px;cursor:pointer}
.dfc-lista button:hover,.dfc-lista button.dfc-attiva{background:#eef5f4}
.dfc-lista button:focus-visible{outline:3px solid var(--f-gold)}
.dfc-nome{font-weight:600;font-size:14.5px;color:var(--f-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dfc-lista small{grid-column:2;font-size:12px;color:var(--f-muted)}
.dfc-vuoto{padding:16px 10px;font-size:14px;color:var(--f-muted)}
.dfc-legenda{display:grid;gap:5px;padding:12px 16px;border-top:1px solid var(--f-line);font-size:12.5px;color:var(--f-muted)}
.dfc-legenda span{display:flex;align-items:center;gap:8px}
.dfc-pt{display:inline-block;width:11px;height:11px;border-radius:50%;flex:none}
.dfc-pt.dfc-c-pesca{background:var(--f-gold)}
.dfc-pt.dfc-c-moto{background:var(--f-teal)}
.dfc-pt.dfc-c-ferma{background:#7b8a94}
.dfc-pt.dfc-c-vecchia{background:#c9d1d6}
.dfc-nota{margin:0;padding:10px 18px;font-size:12px;color:var(--f-muted);border-top:1px solid var(--f-line);background:#fff}

/* Barche sulla mappa */
.dfc-barca{background:none;border:0}
.dfc-barca svg{display:block;transition:transform .4s ease;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.45))}
.dfc-barca path,.dfc-barca circle{stroke:#0b1a24;stroke-width:1.4}
.dfc-c-pesca path,.dfc-c-pesca circle{fill:#d9a548}
.dfc-c-moto path,.dfc-c-moto circle{fill:#4fb7b3}
.dfc-c-ferma path,.dfc-c-ferma circle{fill:#b7c2c9}
.dfc-c-vecchia{opacity:.5}
.dfc-c-vecchia path,.dfc-c-vecchia circle{fill:#e3e8eb}
.dfc-barca.dfc-flotta path,.dfc-barca.dfc-flotta circle{stroke:#fff;stroke-width:2}
.dfc-barca.dfc-sel svg{filter:drop-shadow(0 0 4px #d9a548) drop-shadow(0 0 2px #0b1a24)}
.dfc-pop{font-family:var(--f-f);font-size:13.5px;line-height:1.5;color:var(--f-text)}
.dfc-pop b{font-size:15px;color:var(--f-ink)}
.dfc-tag{display:inline-block;margin-left:4px;padding:1px 7px;border-radius:999px;background:#0b1a24;color:#d9a548;font-size:11px;font-weight:700}

@media (max-width:760px){
  .dfc-mappa{height:min(var(--dfc-h,640px),62vh)}
  .dfc-lato{border-left:0;border-top:1px solid var(--f-line);height:340px;flex-basis:100%}
  .dfc-filtri{margin-left:0}
}
