.management-dashboard{display:grid;gap:24px}.management-head{display:flex;align-items:center;justify-content:space-between;padding:28px 30px;border-radius:20px;color:#fff;background:linear-gradient(125deg,#260305,#720a0e)}.management-head h2{font-size:31px;margin:4px 0}.management-head p{margin:0;color:#e8caca}.management-head time{text-align:right;color:#e8caca}.management-head time b{display:block;color:#fff;margin-top:4px}.area-dashboard{display:grid;gap:14px}.area-dashboard-title{display:flex;align-items:center;justify-content:space-between}.area-dashboard-title>div{display:flex;align-items:center;gap:12px}.area-dashboard-title span{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#f5dddd;color:#a81117;font-weight:800}.area-dashboard-title h3{font-size:22px;margin:0}.area-dashboard-title p{margin:2px 0 0;color:var(--muted);font-size:13px}.area-dashboard-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.area-kpi{padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:#fff}.area-kpi small{display:block;color:var(--muted);margin-bottom:8px}.area-kpi strong{font-size:25px}.area-kpi .area-kpi-agreement{display:block;margin-top:4px;color:#1d4f8f;font-size:12px}.area-kpi.danger strong{color:#c21b20}.area-kpi.gold strong{color:#91621f}.area-kpi.green strong{color:#176b50}.area-charts{display:grid;grid-template-columns:1.55fr .8fr;gap:16px}.management-chart{padding-bottom:18px;overflow:hidden}.management-chart .card-head{padding-bottom:8px}.dual-bars{height:225px;display:flex;gap:18px;align-items:end;padding:25px 26px 8px}.dual-bars>div{height:100%;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:7px;min-width:0}.dual-bars .columns{height:175px;display:flex;align-items:end;justify-content:center;gap:5px;width:100%}.dual-bars i{display:block;width:24px;min-height:4px;border-radius:5px 5px 2px 2px;background:#b11218}.dual-bars i.secondary{background:#c9a35d}.dual-bars i.green{background:#237458}.dual-bars span{font-size:11px;font-weight:800;white-space:nowrap}.dual-bars small{text-transform:capitalize;color:var(--muted)}.management-legend{display:flex;gap:14px;font-size:11px;color:var(--muted)}.management-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px;background:#b11218}.management-legend i.secondary{background:#c9a35d}.management-list{display:grid;gap:11px;padding:18px 22px}.management-list>div{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.management-list span{font-size:13px}.management-list b{font-size:14px}.management-list .track{grid-column:1/-1;height:7px;border-radius:10px;background:#eee7e7;overflow:hidden}.management-list .track i{display:block;height:100%;border-radius:10px;background:#b11218}.legal-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.legal-flow>div{position:relative;padding:22px;border-radius:14px;background:#fff;border:1px solid var(--line)}.legal-flow strong{display:block;font-size:30px;margin:8px 0}.legal-flow small{color:var(--muted)}.legal-flow>div:not(:last-child):after{content:'→';position:absolute;right:-12px;top:42%;z-index:1;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#b11218;color:#fff}.area-dashboard.coach-area-admin{--area:#84551e}.area-dashboard.finance-area-admin{--area:#b11218}.area-dashboard.legal-area-admin{--area:#4c3022}@media(max-width:1150px){.area-dashboard-kpis{grid-template-columns:1fr 1fr}.area-charts{grid-template-columns:1fr}}@media(max-width:700px){.management-head{align-items:flex-start;flex-direction:column;gap:15px}.management-head time{text-align:left}.area-dashboard-kpis,.legal-flow{grid-template-columns:1fr}.legal-flow>div:after{display:none}.dual-bars{gap:7px;padding-inline:12px}.dual-bars i{width:16px}}
/* #19.12: sezione Sales e panoramica con cinque riquadri. */
.management-list .management-list-note{grid-column:1/-1;margin-top:-6px;color:var(--muted);font-size:12px}
@media(min-width:1051px){.management-overview[data-tiles="5"]{grid-template-columns:repeat(5,minmax(0,1fr))}}
.legacy-sales-kpi{margin-top:22px}
/* #46: KPI Dashboard riorganizzata: periodo, confronto, grafici mensili con tabella dei numeri.
   Colori delle serie (validati per daltonismo e contrasto sul bianco): s1 rosso, s2 oro, s3 blu, s4 verde. */
.kpi-dashboard{--kpi-s1:#b11218;--kpi-s2:#b47a14;--kpi-s3:#2a6db5;--kpi-s4:#13805a;--kpi-good:#13805a;--kpi-bad:#c21b20;--kpi-grid:#f1e8e8}
.kpi-body{display:grid;gap:26px}
.kpi-toolbar{display:grid;gap:8px;position:sticky;top:0;z-index:5;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.96);backdrop-filter:blur(6px)}
.kpi-periods{display:flex;flex-wrap:wrap;gap:6px}
.kpi-periods button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:7px 13px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.kpi-periods button:hover{border-color:#d7a4a6}
.kpi-periods button[aria-pressed="true"]{background:#720a0e;border-color:#720a0e;color:#fff}
.kpi-periods button:focus-visible,.kpi-anchors a:focus-visible,.kpi-table summary:focus-visible{outline:2px solid #2a6db5;outline-offset:2px}
.kpi-compare{margin:0;color:var(--muted);font-size:12px}
.kpi-compare b{color:var(--ink);text-transform:capitalize}
.kpi-anchors{display:flex;flex-wrap:wrap;gap:12px;font-size:12px}
.kpi-anchors a{color:#a81117;font-weight:700;text-decoration:none}
.kpi-dashboard .area-kpi{display:grid;align-content:start;gap:2px;min-width:0}
.kpi-dashboard .area-kpi small{margin-bottom:6px}
.kpi-dashboard .area-kpi strong{font-size:23px;line-height:1.15;overflow-wrap:anywhere}
.kpi-dashboard .area-kpi>span{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.4}
.kpi-delta{display:inline-block;justify-self:start;margin-top:5px;padding:2px 7px;border-radius:999px;font-size:11px;font-style:normal;font-weight:700;color:var(--muted);background:#f3f1f1}
.kpi-delta.good{color:var(--kpi-good);background:#e3f3ec}
.kpi-delta.bad{color:var(--kpi-bad);background:#fbe6e6}
.management-overview .kpi-delta{margin:0 0 0 4px}
.kpi-charts{grid-template-columns:repeat(2,minmax(0,1fr))}
.kpi-charts>.card{min-width:0}
/* l'ultima scheda di una fila dispari occupa tutta la riga, senza lasciare un vuoto */
.kpi-charts>.card:last-child:nth-child(odd){grid-column:1/-1}
@media(min-width:1151px){.kpi-charts>.kpi-ranking:last-child:nth-child(odd) .management-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}}
.kpi-chart{padding-bottom:12px;overflow:visible}
.kpi-chart .card-head,.kpi-ranking .card-head{padding-bottom:6px;gap:10px;flex-wrap:wrap}
.kpi-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:var(--muted)}
.kpi-legend span{display:flex;align-items:center;gap:5px}
.kpi-legend i{display:inline-block;width:9px;height:9px;border-radius:3px}
.kpi-legend i.s1,.kpi-col-bars i.s1{background:var(--kpi-s1)}
.kpi-legend i.s2,.kpi-col-bars i.s2{background:var(--kpi-s2)}
.kpi-legend i.s3,.kpi-col-bars i.s3{background:var(--kpi-s3)}
.kpi-legend i.s4,.kpi-col-bars i.s4{background:var(--kpi-s4)}
.kpi-plot{position:relative;padding:22px 18px 4px}
.kpi-scale{position:absolute;top:4px;left:18px;font-size:10px;color:var(--muted)}
.kpi-columns{display:flex;align-items:flex-end;gap:4px;height:178px;border-bottom:1px solid #e3d9d9;background:repeating-linear-gradient(to top,transparent 0,transparent 37px,var(--kpi-grid) 37px,var(--kpi-grid) 38px)}
.kpi-col{position:relative;flex:1 1 0;min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px;border-radius:6px;cursor:default;outline:none}
.kpi-col:hover{background:rgba(114,10,14,.05)}
.kpi-col-bars{height:150px;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:2px}
.kpi-col-bars i{display:block;flex:0 1 13px;min-width:3px;border-radius:4px 4px 0 0}
.kpi-col>small{font-size:10px;color:var(--muted);text-transform:capitalize;white-space:nowrap}
.kpi-col.is-out .kpi-col-bars{opacity:.32}
.kpi-col.is-out>small{opacity:.6}
.kpi-col[data-tip]::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);min-width:150px;max-width:230px;padding:9px 11px;border-radius:9px;background:#2b090b;color:#fff;font-size:12px;font-weight:600;line-height:1.45;text-align:left;white-space:pre-line;box-shadow:0 12px 28px rgba(42,7,9,.28);display:none;pointer-events:none;z-index:30}
.kpi-col:first-child[data-tip]::after,.kpi-col:nth-child(2)[data-tip]::after{left:0;transform:none}
.kpi-col:last-child[data-tip]::after,.kpi-col:nth-last-child(2)[data-tip]::after{left:auto;right:0;transform:none}
/* nascosto con display:none, così non allarga la pagina su mobile */
.kpi-col:hover::after{display:block}
.kpi-empty{padding:30px 22px;color:var(--muted);font-size:13px}
.kpi-table{margin:6px 18px 0;font-size:12px}
.kpi-table summary{cursor:pointer;color:#a81117;font-weight:700}
.kpi-table>div{max-height:260px;overflow:auto;margin-top:8px}
.kpi-table table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.kpi-table th,.kpi-table td{padding:5px 8px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
.kpi-table th:first-child,.kpi-table td:first-child{text-align:left;text-transform:capitalize}
.kpi-table tr.in-period td{font-weight:700;background:#fbf4f4}
.management-list .track i.danger{background:#c21b20}
.kpi-note{margin:0;padding:10px 14px;border-radius:10px;background:#fff7e8;color:#6d4a10;font-size:12px}
.kpi-legal-flow{padding:16px}
.kpi-legal-flow>div{padding:16px}
.area-dashboard.tickets-area-admin{--area:#2a6db5}
.area-dashboard.tickets-area-admin .area-dashboard-title span{background:#e2ecf8;color:#2a6db5}
@media(max-width:1150px){.kpi-charts{grid-template-columns:1fr}}
/* Su mobile il riquadro si ancora al grafico, non alla colonna: non esce dai bordi. */
@media(max-width:700px){.kpi-columns{position:relative}.kpi-col{position:static}.kpi-col[data-tip]::after,.kpi-col:first-child[data-tip]::after,.kpi-col:nth-child(2)[data-tip]::after,.kpi-col:last-child[data-tip]::after,.kpi-col:nth-last-child(2)[data-tip]::after{left:4px;right:4px;transform:none;min-width:0;max-width:none;bottom:calc(100% + 4px)}}
@media(max-width:700px){.kpi-toolbar{position:static}.kpi-plot{padding-inline:8px}.kpi-columns{gap:2px}.kpi-col>small{font-size:9px}.kpi-dashboard .area-kpi strong{font-size:21px}}
