/* Investor relations (22/10/2026): stessa interfaccia di Public Affairs (tbp-public-affairs.css); qui solo ciò che cambia. */

/* Imbuto a 8 gradini: l'ultimo («Hanno detto no») in bordeaux, i due prima in verde come in Public Affairs. */
.tbp-ir .tbp-ir__imbuto { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.tbp-ir .tbp-pa__gradino:nth-child(4) b, .tbp-ir .tbp-pa__gradino:nth-child(5) b { color: var(--tbp-d-link, #145E3F); }
.tbp-ir .tbp-pa__gradino:nth-child(6) b, .tbp-ir .tbp-pa__gradino:nth-child(7) b,
.tbp-ir .tbp-pa__gradino-mini:nth-child(6) b, .tbp-ir .tbp-pa__gradino-mini:nth-child(7) b { color: var(--tbp-d-link, #1f8a4c); }
.tbp-ir .tbp-pa__gradino:nth-child(6)::before { display: block; }
.tbp-ir .tbp-pa__gradino:nth-child(8) b, .tbp-ir .tbp-pa__gradino-mini:nth-child(8) b { color: var(--tbp-d-danger-text, #c42a22); }
.tbp-ir .tbp-pa__gradino:nth-child(8)::before { display: none; }
.tbp-ir .tbp-pa__gradino-mini:nth-child(4) b, .tbp-ir .tbp-pa__gradino-mini:nth-child(5) b { color: var(--tbp-d-link, #145E3F); }
.tbp-ir .tbp-pa__gradino-nome { font-size: 14px; }

/* Round: una riga di testo e la barra verde degli impegni. */
.tbp-ir__round { margin-top: 12px; display: grid; gap: 8px; max-width: 760px; }
.tbp-ir__round-testo { font-size: 14px; color: var(--pa-muted); }
.tbp-ir__round-testo b { color: var(--tbp-d-link, #145E3F); margin-right: 6px; }
.tbp-ir__barra { height: 10px; border-radius: 5px; }

/* Mappa: fondo bianco come Public Affairs, paesi colorati, numeri in pastiglie bianche al centro del paese. */
.tbp-ir .tbp-pa__mappa, .tbp-ir .tbp-pa__mappa.leaflet-container { background: var(--tbp-d-surface, #ffffff); }
.tbp-ir__num { width: 0 !important; height: 0 !important; overflow: visible; pointer-events: none; }
.tbp-ir__num span { position: absolute; transform: translate(-50%, -50%); display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; padding: 3px 8px; border-radius: 999px; background: var(--tbp-d-surface, #fff); color: var(--tbp-d-text, #0f2a1d); font: 600 12px/1.1 var(--tbp-font, sans-serif); box-shadow: 0 1px 3px rgba(0, 0, 0, .22); }
.tbp-ir__num span b { font: 800 13px/1 var(--tbp-font-titoli, var(--tbp-font, sans-serif)); color: var(--tbp-d-link, #145E3F); font-variant-numeric: tabular-nums; }
.tbp-ir__num span em { font-style: normal; }
.tbp-ir__num.is-scelto span { background: #145E3F; color: #fff; }
.tbp-ir__num.is-scelto span b { color: #fff; }
.tbp-ir__num-segno { display: inline-grid; place-items: center; width: 18px; height: 18px; border-radius: 999px; background: #fff; box-shadow: 0 0 0 1px rgba(8, 72, 40, .25); font: 800 11px/1 var(--tbp-font, sans-serif); font-style: normal; color: var(--tbp-d-link, #145E3F); }

/* Riquadro «Fuori dall'Europa» dentro la mappa, in basso a sinistra: un bottone per paese, si sceglie come sulla mappa. */
.tbp-ir__fuori { position: absolute; left: 12px; bottom: 12px; z-index: 801; display: grid; gap: 2px; min-width: 190px; padding: 10px; border-radius: 14px; background: var(--tbp-d-surface, rgba(255, 255, 255, .96)); box-shadow: 0 1px 4px rgba(0, 0, 0, .16); }
.tbp-ir__fuori p { margin: 0 0 4px 4px; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--pa-muted); }
html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-ir__fuori button { display: flex !important; align-items: center !important; gap: 8px !important; width: 100% !important; min-height: 32px !important; height: auto !important; padding: 5px 8px !important; margin: 0 !important; border: 0 !important; border-radius: 10px !important; background: transparent !important; box-shadow: none !important; color: var(--pa-ink) !important; font: 600 14px/1.2 var(--tbp-font, sans-serif) !important; text-transform: none !important; letter-spacing: 0 !important; text-align: left !important; cursor: pointer; }
html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-ir__fuori button:hover { background: rgba(8, 72, 40, .07) !important; }
html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-ir__fuori button.is-attivo { background: var(--tbp-d-raised, #e3ede7) !important; color: var(--tbp-d-link, #145E3F) !important; font-weight: 800 !important; }
.tbp-ir__fuori button b { margin-left: auto; font-variant-numeric: tabular-nums; color: var(--tbp-d-link, #145E3F); }

/* Loghi degli investitori: quadrati con angoli morbidi, perché molti sono icone d'app. */
.tbp-ir__logo { border-radius: 6px; }
.tbp-ir__logo.tbp-pa__stemma--vuoto { border-radius: 6px; }
.tbp-ir__logo.tbp-pa__stemma--grande { border-radius: 12px; }
.tbp-ir__loghi { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.tbp-ir__loghi > span { display: inline-flex; }
.tbp-ir__loghi em { font-style: normal; font-size: 13px; font-weight: 700; color: var(--pa-muted); margin-left: 2px; }
.tbp-ir__logo--scheda { width: 30px; height: 30px; }
.tbp-ir__logo--scheda.tbp-pa__stemma--vuoto { font-size: 11px; }
.tbp-pa__scheda .tbp-ir__loghi { margin-bottom: 12px; }

/* Schede per area: fino a 5 per riga come le province. */
.tbp-ir__schede { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
@media (min-width: 1100px) { .tbp-ir .tbp-ir__schede { grid-template-columns: repeat(5, minmax(0, 1fr)); } }

/* Elenco completo: tutta la larghezza, nomi con logo e link. */
.tbp-ir__tabella { max-height: none; }
.tbp-ir__tabella a { color: var(--tbp-d-link, #145E3F); font-weight: 700; text-decoration: none; }
.tbp-ir__tabella a:hover { text-decoration: underline; }
.tbp-ir__senza { color: var(--pa-muted); font-size: 13px; }
.tbp-ir .tbp-pa__tabella--lato td:first-child .tbp-pa__con-stemma > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 190px; }
.tbp-ir .tbp-pa__tabella--lato td:nth-child(2) { color: var(--pa-muted); font-size: 13px; }
.tbp-ir .tbp-pa__mossa li button span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

@media (max-width: 1023px) {
	.tbp-ir .tbp-ir__imbuto { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.tbp-ir .tbp-pa__gradino:nth-child(5)::before { display: none; }
}
@media (max-width: 549px) {
	.tbp-ir .tbp-ir__imbuto { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.tbp-ir .tbp-pa__gradino:first-child { grid-column: auto; }
	.tbp-ir__fuori { min-width: 0; left: 8px; bottom: 8px; padding: 8px; }
}

/* Telefono (CEO 22/10): ogni investitore dell'elenco completo diventa una scheda, niente tabella da scorrere di lato. */
@media (max-width: 760px) {
	.tbp-ir__tabella { overflow: visible; border: 0; background: transparent; }
	.tbp-ir__tabella table, .tbp-ir__tabella tbody, .tbp-ir__tabella tr, .tbp-ir__tabella td { display: block; width: 100%; box-sizing: border-box; }
	.tbp-ir__tabella thead { display: none; }
	.tbp-ir__tabella tr { background: var(--tbp-d-surface, #fff); border: 1px solid var(--pa-linea); border-radius: 14px; padding: 12px 14px; margin: 0 0 10px; }
	.tbp-ir__tabella td { border: 0 !important; padding: 3px 0 !important; display: grid !important; grid-template-columns: 64px minmax(0, 1fr); gap: 8px; font-size: 14px; overflow-wrap: anywhere; }
	.tbp-ir__tabella td::before { content: attr(data-l); font-size: 12px; font-weight: 700; color: var(--pa-muted); }
	.tbp-ir__tabella td.c-nome { display: block !important; font-size: 16px; font-weight: 800; padding-bottom: 6px !important; }
	.tbp-ir__tabella td.c-nome::before { content: none; }
	html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-pa__tabella td:nth-child(3), html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-pa__tabella th:nth-child(3) { display: grid !important; }
}
@media (max-width: 549px) {
	html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-pa__tabella--lato td:nth-child(3), html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-pa__tabella--lato th:nth-child(3) { display: table-cell !important; }
}

.tbp-ir__punto--individuato { background: #dcd8cc; } .tbp-ir__punto--solo_modulo { background: #e3b520; } .tbp-ir__punto--contattato { background: #FFD301; }
.tbp-ir__punto--risposto { background: #7fb3e6; } .tbp-ir__punto--chiamata { background: #3a7bd5; } .tbp-ir__punto--nda { background: #5b4bc4; }
.tbp-ir__punto--offerta { background: #1f8a4c; } .tbp-ir__punto--investito { background: #145e3f; } .tbp-ir__punto--no { background: #d6322a; } .tbp-ir__punto--no_fit { background: #a7a49a; }

html[data-tbp-theme="dark"] .tbp-ir .tbp-pa__mappa, html[data-tbp-theme="dark"] .tbp-ir .tbp-pa__mappa.leaflet-container { background: var(--tbp-d-raised, #1b201d); }
html[data-tbp-theme="dark"] .tbp-ir__fuori { background: var(--tbp-d-bg, rgba(15, 21, 18, .95)); }
html[data-tbp-theme="dark"] .tbp-ir__tabella tr { background: var(--tbp-d-bg, #0f1512); }
html[data-tbp-theme="dark"] .tbp-ir__round-testo b, html[data-tbp-theme="dark"] .tbp-ir__tabella a, html[data-tbp-theme="dark"] .tbp-ir__fuori button b { color: var(--tbp-d-link, #9bdbb5); }

/* 22/10 pomeriggio (CEO: «qua da sistemare»): fuori Europa sotto la mappa, non sopra; stati in colonna; elenco a lato
   con il paese sotto il nome e la data corta, così nessuna colonna viene tagliata. */
.tbp-ir__fuori { position: static; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; min-width: 0; margin-top: 10px; padding: 0; background: transparent; box-shadow: none; border-radius: 0; }
.tbp-ir__fuori p { margin: 0 6px 0 0; }
html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-ir__fuori button { width: auto !important; background: var(--tbp-d-raised, #f4f2ec) !important; padding: 5px 10px !important; }
html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-ir__fuori button.is-attivo { background: var(--tbp-d-raised, #e3ede7) !important; }
.tbp-ir__fuori button b { margin-left: 4px; }
.tbp-pa__comandi #tbp-ir-stati { flex-direction: column; flex-wrap: nowrap; }
html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-pa .tbp-pa__comandi #tbp-ir-stati .tbp-pa__chip { width: 100% !important; justify-content: flex-start !important; height: auto !important; min-height: 34px !important; padding: 6px 10px !important; text-align: left !important; line-height: 1.25 !important; }
.tbp-pa__comandi #tbp-ir-stati .tbp-pa__chip-n { margin-left: auto; }
@media (max-width: 1023px) {
	.tbp-pa__comandi #tbp-ir-stati { flex-direction: row; flex-wrap: wrap; }
	html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-pa .tbp-pa__comandi #tbp-ir-stati .tbp-pa__chip { width: auto !important; }
}
.tbp-ir__lista { table-layout: fixed; }
.tbp-ir__lista th:nth-child(1) { width: auto; }
.tbp-ir__lista th:nth-child(2) { width: 52px; }
.tbp-ir__lista th:nth-child(3) { width: 58px; }
.tbp-ir__lista td { vertical-align: middle; }
.tbp-ir .tbp-ir__lista td:first-child .tbp-pa__con-stemma { display: flex; width: 100%; }
.tbp-ir .tbp-ir__lista td:first-child .tbp-pa__con-stemma > span.tbp-ir__lista-nome { display: grid; min-width: 0; max-width: none; white-space: normal; overflow: visible; line-height: 1.2; }
.tbp-ir__lista-nome { overflow-wrap: anywhere; }
.tbp-ir__lista-nome small { font-size: 12px; font-weight: 500; color: var(--pa-muted); }
.tbp-ir__lista td:nth-child(2) { text-align: center; }
.tbp-ir__lista td:nth-child(3), .tbp-ir__lista th:nth-child(3) { font-variant-numeric: tabular-nums; white-space: nowrap; }
html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-ir__lista td:nth-child(3), html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-ir__lista th:nth-child(3) { display: table-cell !important; }
html[data-tbp-theme="dark"] .tbp-ir .tbp-ir__fuori button { background: var(--tbp-d-surface, #16241c) !important; }

/* Prossime mosse su una riga sola (CEO 22/10). */
.tbp-ir .tbp-pa__mosse { grid-template-columns: repeat(var(--mosse, 4), minmax(0, 1fr)); align-items: start; }
.tbp-ir .tbp-pa__mossa li button em { overflow: hidden; text-overflow: ellipsis; max-width: 150px; }
@media (max-width: 1100px) { .tbp-ir .tbp-pa__mosse { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .tbp-ir .tbp-pa__mosse { grid-template-columns: minmax(0, 1fr); } }
/* La rosa dei venti resta sull'altezza della mappa, non sulla fila «Fuori dall'Europa» sotto. */
.tbp-ir .tbp-pa__bussola { bottom: auto; height: min(80vh, 780px); }
@media (max-width: 1023px) { .tbp-ir .tbp-pa__bussola { height: min(60vh, 560px); } }
html.tbp-pa-presenta .tbp-ir .tbp-pa__bussola { height: min(80vh, 900px); }
/* Prossime mosse: la seconda informazione (data, email) va sotto il nome, così il nome non si taglia. */
html:not(#tbp-pa-a):not(#tbp-pa-b) .tbp-ir .tbp-pa__mossa li button { grid-template-columns: 22px minmax(0, 1fr) !important; row-gap: 1px !important; align-items: center !important; }
.tbp-ir .tbp-pa__mossa li button em { grid-column: 2; max-width: none; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tbp-ir .tbp-pa__mossa li button > .tbp-pa__stemma { grid-row: 1 / span 2; }
/* Business angel (persone): iniziali in un tondo verde, niente foto. */
.tbp-ir__logo--persona, .tbp-ir__logo--persona.tbp-pa__stemma--vuoto { border-radius: 50%; background: #145E3F; color: #fff; }
.tbp-ir__fuori[hidden] { display: none !important; }
/* Pastiglie per area nella vista del mondo: si toccano per ingrandire. */
.tbp-ir__num--area { pointer-events: auto; cursor: pointer; }
.tbp-ir__num--area span { padding: 5px 11px; font-size: 13px; }
.tbp-ir__num--area span b { font-size: 15px; }
