.data-analysis-title{align-items:flex-start}.data-analysis-title>div{max-width:850px}
.data-analysis-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px;border:1px solid #d8e3f1;border-radius:16px;background:#f7faff;margin-bottom:16px}.data-analysis-hero h2{margin:4px 0}.data-analysis-actions{display:flex;gap:10px;flex-wrap:wrap}
.data-analysis-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:16px}.data-analysis-cards article{display:grid;gap:5px;padding:16px;border:1px solid #d8e3f1;border-radius:14px;background:#fff}.data-analysis-cards small{color:#647a96;font-weight:750}.data-analysis-cards strong{font-size:24px;color:#113764}.data-analysis-cards span{font-size:12px;color:#6b7d95}
.data-analysis-share{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:15px 17px;border:1px solid #a9d5ba;border-radius:14px;background:#f0faf4;margin-bottom:16px}.data-analysis-share p{margin:5px 0 0;color:#557067;max-width:850px}.data-analysis-share>span{font-size:11px;color:#52715f;word-break:break-all}
.data-analysis-section{margin-bottom:16px;padding:16px}.data-analysis-section h3,.data-analysis-grid h3{margin-top:0;color:#153b68}
.data-analysis-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.data-analysis-grid article{padding:16px}
.data-analysis-mini-list{display:grid;gap:7px}.data-analysis-mini-list span{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #edf2f8;padding:5px 0}.data-analysis-mini-list em{font-style:normal;color:#526983}
.data-analysis-table-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px}.data-analysis-table-head h3{margin-bottom:3px}.data-analysis-table-head p{margin:0;color:#6b7d95}.data-analysis-filters{display:flex;gap:8px;min-width:min(600px,60%)}.data-analysis-filters input{flex:1}.data-analysis-filters select{min-width:150px}
.analysis-state{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}.analysis-state.completo{background:#e6f6ec;color:#22653b}.analysis-state.parziale{background:#fff4d6;color:#825b00}.analysis-state.insufficiente{background:#fde9e6;color:#92372c}
.data-analysis-empty{padding:28px;display:grid;gap:12px;justify-items:start}.data-analysis-empty h3,.data-analysis-empty p{margin:0}.data-analysis-section table small{display:block;color:#6b7d95;margin-top:3px;max-width:420px;white-space:normal}
@media(max-width:1100px){.data-analysis-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.data-analysis-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-analysis-table-head{align-items:stretch;flex-direction:column}.data-analysis-filters{min-width:0;width:100%}}
@media(max-width:700px){.data-analysis-hero,.data-analysis-share{align-items:stretch;flex-direction:column}.data-analysis-cards,.data-analysis-grid{grid-template-columns:1fr}.data-analysis-actions>*{width:100%}.data-analysis-filters{flex-direction:column}}
@media print{.data-analysis-actions,.data-analysis-filters,#data-analysis-refresh{display:none!important}}
.data-analysis-progress{margin-bottom:16px;padding:18px;border-color:#b8cbe2;background:#f8fbff}.data-analysis-progress-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end}.data-analysis-progress-head>div{display:grid;gap:4px}.data-analysis-progress-head small{font-weight:800;color:#657d9a;text-transform:uppercase;letter-spacing:.04em}.data-analysis-progress-head strong{font-size:17px;color:#173d69}.data-analysis-progress-head>b{font-size:24px;color:#123a68}.data-analysis-progress-track{height:14px;margin:14px 0 9px;border-radius:999px;background:#dce7f3;overflow:hidden;box-shadow:inset 0 1px 2px #15395f24}.data-analysis-progress-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1f66ae,#2f8bc9);transition:width .28s ease}.data-analysis-progress-foot{display:flex;justify-content:space-between;gap:16px;color:#647a96;font-size:11px}.data-analysis-progress.complete{border-color:#a9d5ba;background:#f0faf4}.data-analysis-progress.complete .data-analysis-progress-track>span{background:#2c8a54}
@media(max-width:700px){.data-analysis-progress-foot{flex-direction:column;gap:4px}.data-analysis-progress-head{align-items:center}}
.data-analysis-macro{padding:18px;margin-bottom:16px;border-color:#c8d8ea;background:#fbfdff}.data-analysis-macro-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.data-analysis-macro-head h3{margin:3px 0 7px;color:#153b68}.data-analysis-macro-head p{margin:0;max-width:900px}.data-analysis-macro-head>strong{white-space:nowrap;padding:7px 11px;border-radius:999px;background:#eef5fc;color:#244f7c}.data-analysis-macro-catalog{display:flex;gap:12px;align-items:baseline;margin:14px 0 10px;padding:9px 11px;border-radius:10px;background:#f3f7fc}.data-analysis-macro-catalog span{font-size:11px;color:#647a96}.data-analysis-macro table select{min-width:280px;width:100%}.data-analysis-macro-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:12px}.data-analysis-macro-actions p{margin:0}.data-analysis-macro-actions>div{display:flex;align-items:center;gap:12px}.data-analysis-macro-actions span{max-width:420px}
@media(max-width:800px){.data-analysis-macro-head,.data-analysis-macro-actions,.data-analysis-macro-catalog{align-items:stretch;flex-direction:column}.data-analysis-macro table select{min-width:220px}.data-analysis-macro-actions>div{justify-content:space-between}}
@media print{.data-analysis-macro-actions{display:none!important}}
.data-analysis-macro-stats{display:flex;flex-direction:column;align-items:flex-end;gap:5px;white-space:nowrap}.data-analysis-macro-stats strong{padding:7px 11px;border-radius:999px;background:#eef5fc;color:#244f7c}.data-analysis-macro-stats span{font-size:11px;color:#647a96}.data-analysis-activity-editor{min-width:390px}.data-analysis-activity-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.data-analysis-activity-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 7px 5px 9px;border:1px solid #cbd8e7;border-radius:999px;background:#f7fafD;max-width:100%}.data-analysis-activity-chip span{font-size:12px;line-height:1.25;overflow-wrap:anywhere}.data-analysis-activity-chip em{font-style:normal;color:#7a8797}.data-analysis-activity-chip button{border:0;background:transparent;padding:0 3px;min-width:auto;line-height:1;font-size:18px;color:#5c6f84;cursor:pointer}.data-analysis-activity-chip.conflict{border-color:#d88b8b;background:#fff4f4}.data-analysis-activity-chip.inactive{opacity:.78}.data-analysis-activity-editor select{min-width:260px;width:100%;max-width:520px}.data-analysis-macro-conflict{margin:10px 0}.data-analysis-macro table td:last-child{min-width:420px}
@media(max-width:800px){.data-analysis-macro-stats{align-items:flex-start;white-space:normal}.data-analysis-activity-editor{min-width:300px}.data-analysis-macro table td:last-child{min-width:330px}}

/* 3.55.5 — nomi cantieri, GENERICO e mansioni */
.analysis-site-name{display:block;max-width:290px;margin-top:2px;font-size:12px;font-weight:650;color:#3f5f82;white-space:normal;line-height:1.25}
.data-analysis-generic-row{background:#fbf8ef}.data-analysis-generic-row td:first-child strong{color:#705b17}.data-analysis-generic-row td:nth-child(2) small{display:block;margin-top:4px;color:#7b6a36;max-width:520px}
.data-analysis-role-chip{background:#f5f8fc}.data-analysis-role-chip small{font-size:10px;color:#6b7d95}.data-analysis-role-unassigned{margin-top:12px;padding:10px 12px;border-radius:10px;background:#f7f9fc;color:#63758a;font-size:12px}
.data-analysis-role-summary{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.data-analysis-role-summary span{padding:6px 9px;border-radius:999px;background:#eef5fc;color:#244f7c;font-size:11px;font-weight:700}

/* 3.70.3 — Analisi dati riorganizzata per percorso e caricamento a richiesta */
.data-analysis-workflow{margin:0 0 18px;padding:14px 16px 12px;position:sticky;top:0;z-index:5;background:rgba(255,255,255,.97);backdrop-filter:blur(8px)}
.data-analysis-workflow-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:10px}.data-analysis-workflow-head small{display:block;font-weight:800;color:#647a96;text-transform:uppercase;letter-spacing:.055em}.data-analysis-workflow-head p{margin:3px 0 0;color:#6b7d95;font-size:12px;max-width:900px}
.data-analysis-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.data-analysis-tabs button{min-width:0;display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:9px 10px;border:1px solid #d7e1ee;background:#f7f9fc;color:#38526f;border-radius:10px;box-shadow:none;text-align:left}.data-analysis-tabs button>span{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:50%;background:#e5edf7;color:#4f6680;font-size:11px;font-weight:850}.data-analysis-tabs button>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.data-analysis-tabs button:hover{background:#eef4fb}.data-analysis-tabs button.active{border-color:#8eb4e3;background:#eaf3ff;color:#123d6b}.data-analysis-tabs button.active>span{background:#1f66ae;color:#fff}.data-analysis-tab-description{display:flex;gap:8px;align-items:baseline;margin-top:9px;min-height:18px;color:#667a92;font-size:12px}.data-analysis-tab-description strong{color:#1d3f68}.data-analysis-workspace{min-height:180px}.data-analysis-panel{min-width:0}.data-analysis-panel>.data-analysis-loading{padding:24px 4px}.data-analysis-panel#data-analysis-temporal{margin-top:0}.data-analysis-panel#data-analysis-model-lab>.model-lab-head:first-child,.data-analysis-panel#data-analysis-prediction>*:first-child{margin-top:0}
@media(max-width:1120px){.data-analysis-workflow{position:static}.data-analysis-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.data-analysis-tabs{grid-template-columns:1fr}.data-analysis-tab-description{display:grid;gap:2px}}
@media print{.data-analysis-workflow{display:none!important}}

/* 3.77.21 — diagnostica attività storiche usate nei cantieri */
.data-analysis-mapping-alert{display:grid;gap:5px;margin:10px 0;padding:9px 11px;border:1px solid #f0c879;border-radius:9px;background:#fff9ea;color:#6b4d12}.data-analysis-mapping-alert strong{font-size:12px}.data-analysis-mapping-alert span{font-size:11px;line-height:1.45;color:#7b6130}
/* 3.77.24 — bonifica qualifiche personale in Analisi > Mappature */
.data-analysis-personnel-tools{display:grid;grid-template-columns:minmax(260px,1fr) minmax(210px,300px) auto;gap:10px;align-items:center;margin:14px 0 10px}.data-analysis-personnel-tools input,.data-analysis-personnel-tools select{min-height:38px}.data-analysis-personnel-tools>span{font-size:12px;color:#647a96;white-space:nowrap}.data-analysis-personnel-table{max-height:520px;overflow:auto}.data-analysis-personnel-table thead th{position:sticky;top:0;z-index:2;background:#f7faff}.data-analysis-personnel-table td:first-child strong,.data-analysis-personnel-table td:first-child small{display:block}.data-analysis-personnel-table td:first-child small{margin-top:3px;color:#7a8797}.data-analysis-personnel-table tr.data-analysis-personnel-missing td{background:#fff0f0;border-color:#f3c7c7}.data-analysis-personnel-table tr.data-analysis-personnel-missing:hover td{background:#ffe8e8}.data-analysis-personnel-table tr.data-analysis-personnel-dirty td{box-shadow:inset 0 -2px 0 #eab308}.data-analysis-personnel-qualification{display:grid;gap:3px;min-width:280px}.data-analysis-personnel-qualification input{width:100%;min-height:36px}.data-analysis-personnel-qualification.missing input{border-color:#dc2626;background:#fffafa;box-shadow:0 0 0 1px rgba(220,38,38,.08)}.data-analysis-personnel-qualification span{min-height:14px;font-size:10px;font-weight:700;color:#b91c1c}.data-analysis-work-type{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;background:#eef3f8;color:#425a74;font-size:11px;font-weight:700;white-space:nowrap}.data-analysis-work-type.i{background:#eef6ff;color:#24507e}.data-analysis-work-type.c{background:#fef3c7;color:#854d0e}.data-analysis-work-type.m{background:#ecfdf5;color:#166534}.danger-text{color:#b91c1c!important;font-weight:700}
@media(max-width:800px){.data-analysis-personnel-tools{grid-template-columns:1fr}.data-analysis-personnel-qualification{min-width:220px}.data-analysis-personnel-table{max-height:65vh}}

/* BUILDY 3.83.0 — Backtest previsioni */
.prediction-backtest-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.prediction-backtest-head h3{margin:.2rem 0 .45rem}
.prediction-backtest-run{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.prediction-backtest-run label{display:grid;gap:5px;font-size:.82rem;color:#64748b;font-weight:700}
.prediction-backtest-run select{min-width:105px}
.prediction-backtest-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}
.prediction-backtest-cards .card{display:grid;gap:5px;min-height:105px}
.prediction-backtest-cards small{font-size:.72rem;text-transform:uppercase;letter-spacing:.035em;color:#64748b;font-weight:800}
.prediction-backtest-cards strong{font-size:1.45rem;color:#163b6d}
.prediction-backtest-cards span{font-size:.82rem;color:#64748b}
.prediction-backtest-note{display:flex;gap:12px;align-items:flex-start;border-radius:12px;padding:12px 14px;margin:12px 0;background:#fff7df;border:1px solid #f2c75c}
.prediction-backtest-note span{color:#725b18}
.prediction-backtest-progress{display:grid;gap:12px}
.prediction-backtest-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.prediction-backtest-progress-head div{display:grid;gap:3px}.prediction-backtest-progress-head small{color:#64748b;font-weight:700}.prediction-backtest-progress-head strong{color:#163b6d}
.prediction-backtest-track{height:10px;border-radius:99px;background:#e7edf5;overflow:hidden}.prediction-backtest-track span{display:block;height:100%;background:#1f6fec;transition:width .25s ease}
#data-analysis-backtest .table-wrap{max-height:430px;overflow:auto}
#data-analysis-backtest table small{color:#64748b}
@media(max-width:900px){.prediction-backtest-head{display:grid}.prediction-backtest-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.prediction-backtest-cards{grid-template-columns:1fr}.prediction-backtest-run{display:grid}.prediction-backtest-run button,.prediction-backtest-run select{width:100%}}

/* 4.03.2 · responsabilità a checkbox: la tabella resta compatta */
.data-analysis-personnel-table td:nth-child(5){min-width:250px;overflow:visible}.data-analysis-personnel-table .org-responsibility-picker{min-width:230px}.data-analysis-personnel-table .org-responsibility-trigger{min-height:36px;padding:7px 9px;font-size:12px}.data-analysis-personnel-table .org-responsibility-menu{width:min(390px,70vw)}
