/* Chiarezza: uno schema unico per le pagine, la pagina Oggi divisa in fasce, righe dei KR più leggibili e
   sfondi tranquilli. Caricato per ultimo: ritocca disposizione e colori, non cambia i dati mostrati. */

/* Sfondo: un solo tono calmo al posto delle quattro macchie di colore. */
:root{
 --glass-backdrop:linear-gradient(180deg,#f4f7f5 0%,#eef3f0 100%);
 --clarity-ink:#1f3a32;
 --clarity-soft:#5f6f67;
 --clarity-rule:#dfe7e2;
 --clarity-track:#e4ebe6;
}
:root[data-theme=dark]{
 --glass-backdrop:linear-gradient(180deg,#0d1729 0%,#0a1322 100%);
 --clarity-ink:#e5edf9;
 --clarity-soft:#a9b6c8;
 --clarity-rule:rgba(160,190,240,.18);
 --clarity-track:rgba(160,190,240,.16);
}

/* Intestazione comune: titolo e frase a sinistra, azioni a destra, filtri sulla riga sotto. */
.page-head{align-items:flex-start;margin-bottom:16px}
.page-head>div:first-child{min-width:0;flex:1 1 auto}
.page-head .subtitle{max-width:68ch;font-size:16px;line-height:1.55;color:var(--clarity-soft)}
.page-head .head-actions{flex:0 0 auto;justify-content:flex-end;align-items:center}
.head-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 28px;padding:12px 0;border-top:1px solid var(--clarity-rule);border-bottom:1px solid var(--clarity-rule)}
.head-filters select,.head-filters select.period{width:auto!important;max-width:240px!important;margin:0}
.head-filters .calendar-option{margin:0}

/* Pagina Oggi: tre fasce, ciascuna con il suo titolo. */
.today-zone{margin-top:40px}
.head-filters+.today-zone{margin-top:8px}
.zone-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;padding-bottom:10px;border-bottom:2px solid var(--clarity-ink)}
.zone-head h2{margin:0;font-size:22px;line-height:1.25;letter-spacing:-.3px;color:var(--clarity-ink)}
.zone-head h2 small{font-size:15px;font-weight:500;color:var(--clarity-soft);margin-left:4px}
.zone-head p{margin:4px 0 0;color:var(--clarity-soft);font-size:15px}
.today-zone>.metrics,.today-zone>.chart-grid,.today-zone>.today-grid,.today-zone>.card,.today-zone>section,.today-zone>.annual-direction{margin-bottom:18px}
.today-zone .filter-bar{margin-bottom:14px}
.today-zone .filter-bar .head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}

/* Il ciclo in corso: una riga, non un riquadro. */
.today-zone .cycle-panel{padding:12px 18px}
.today-zone .cycle-panel .eyebrow{display:none}
.today-zone .cycle-panel h2{font-size:16px;margin:0}
.today-zone .cycle-panel .card-head{margin:0;align-items:center}
.today-zone .cycle-panel .card-head p{margin:2px 0 0;font-size:14px}

/* Riquadri ancora vuoti: una riga tratteggiata con l'azione, al posto di un blocco grande. */
.slim-empty{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px;padding:12px 18px;border:1px dashed #c9d6ce;border-radius:12px;background:transparent!important;box-shadow:none!important;color:var(--clarity-soft)}
.slim-empty p{margin:0;font-size:15px;line-height:1.5}
.slim-empty strong{color:var(--clarity-ink);margin-right:6px}
[data-theme=dark] .slim-empty{border-color:var(--clarity-rule)}

/* Numeri del periodo: niente icone decorative, una barra sotto il valore. */
.metric .metric-icon,.metric>.pie{display:none}
.metric{display:block}
.metric .progress-bar{display:block;width:100%;margin-top:12px}

/* Barra di avanzamento. */
.progress-bar{display:inline-block;position:relative;width:96px;height:6px;flex:0 0 auto;border-radius:99px;background:var(--clarity-track);overflow:hidden;vertical-align:middle}
.progress-bar>span{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:#4f8f6c}
.progress-bar.full>span{background:var(--green)}
[data-theme=dark] .progress-bar>span{background:#7fc29b}

/* Riga del Key Result: nome, valore da aggiornare, barra e percentuale, punteggio discreto, dettagli. */
.kr-row{gap:14px}
.kr-row .kr-title{flex:1 1 220px;min-width:0;color:var(--clarity-ink)}
.kr-row .kr-percent{min-width:40px;text-align:right;font-weight:600;color:var(--clarity-ink)}
.kr-row>.pill.gray-pill{background:transparent;border:1px solid var(--clarity-rule);color:var(--clarity-soft);font-size:13px;padding:2px 6px}
.kr-initiatives summary{color:var(--clarity-soft)!important;font-weight:500!important;font-size:14px}
.kr-initiatives summary:hover{color:var(--green)!important}

/* Obiettivi chiusi in Oggi: la scheda resta compatta finché non la apri. */
.objective-card.is-closed .objective-top{padding-bottom:16px}

/* Assistente AI: una riga in fondo, non un blocco. */
.ai-teaser.ai-line{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:40px;padding:16px 20px}
.ai-teaser.ai-line p{flex:1 1 300px;margin:0;font-size:15px;line-height:1.5}
.ai-teaser.ai-line .sparkle{position:static;font-size:20px;opacity:1;color:var(--green)}

@media(max-width:760px){
 .head-filters{margin-bottom:20px}
 .head-filters select,.head-filters select.period{flex:1 1 140px;max-width:none!important;font-size:14px}
 .zone-head{flex-direction:column;align-items:flex-start}
 .zone-head h2{font-size:20px}
 .today-zone{margin-top:32px}
 .progress-bar{width:72px}
}

/* Riga «Direzione a 12 mesi» ancora vuota: testo leggibile su sfondo chiaro. */
.annual-direction-empty.slim-empty p{margin:0;color:var(--clarity-soft)}
.annual-direction-empty.slim-empty .btn{background:#fff;border-color:var(--clarity-rule);color:var(--green)}

/* Direzione aziendale: avanzamento in alto a destra, accanto al titolo. */
.company-direction{position:relative;padding-right:96px}
.company-direction .company-direction-pie{position:absolute;top:22px;right:24px;margin:0}
.company-direction ul{margin:10px 0 0}

/* Avanzamento dell'obiettivo: barra e percentuale affiancate. */
.objective-progress{display:flex;align-items:center;gap:10px}
.objective-progress .progress-bar{width:110px}

/* Pulsante per aprire l'obiettivo: più grande e più visibile. */
.objective-toggle{width:34px;height:34px;font-size:16px;color:var(--green);border-color:#c9d6ce}
.objective-toggle:hover{background:#eaf2ed}
@media(max-width:760px){
 .company-direction{padding-right:20px}
 .company-direction .company-direction-pie{position:static;margin:6px 0 10px}
 .objective-progress .progress-bar{width:72px}
}

/* Iniziative e attività del KR: una riga breve attaccata al KR, non una fascia a sé. */
.kr-row{border-bottom:0}
.kr-initiatives{padding-top:0;padding-bottom:10px}
.kr-initiatives summary{margin-bottom:0}
.kr-initiatives details[open] summary{margin-bottom:10px}
.ai-teaser.ai-line p{max-width:none;color:var(--clarity-soft)}

/* Riquadri di Oggi senza voci: il messaggio non occupa mezzo schermo. */
.today-card .empty{padding:18px 0;min-height:0}

/* Vision: fascia scura in cima alla Mappa; in Oggi una versione compatta. */
.strategy-band{margin:0 0 22px;padding:22px 26px;border-radius:14px;background:#1d4a3d;color:#eef6f1;box-shadow:0 10px 26px -18px rgba(18,52,42,.6)}
.strategy-band-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.strategy-band h2{margin:0;font-size:14px;font-weight:600;letter-spacing:.2px;color:#a9d6bd}
.strategy-band blockquote{margin:10px 0 0;font-size:21px;line-height:1.45;font-weight:600;letter-spacing:-.2px;color:#fff;max-width:70ch}
.strategy-band .hint{color:#cfe3d7;margin:10px 0 0}
.strategy-band .strategy-edit{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.strategy-band .strategy-edit:hover{background:rgba(255,255,255,.1)}
.strategy-values{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0;list-style:none}
.strategy-values li{padding:4px 10px;border-radius:99px;background:rgba(255,255,255,.12);color:#eef6f1;font-size:14px}
.strategy-band.compact{padding:14px 18px;margin-bottom:18px}
.strategy-band.compact blockquote{font-size:17px;margin-top:6px}
.strategy-band.compact .strategy-values{margin-top:10px}

/* Aree strategiche: una scheda per area, con obiettivi e KPI collegati. */
.strategy-areas-section{margin:0 0 26px}
.strategy-areas-section .section-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}
.strategy-areas-section .section-head h2{margin:0;font-size:20px}
.strategy-areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.strategy-area{padding:16px 18px;border-radius:12px;background:var(--glass-bg);border:1px solid var(--clarity-rule);border-top:4px solid #4f8f6c}
.strategy-area header{display:flex;justify-content:space-between;align-items:center;gap:10px}
.strategy-area h3{margin:0;font-size:17px;color:var(--clarity-ink)}
.strategy-area-score{display:flex;align-items:center;gap:8px}
.strategy-area-score .progress-bar{width:64px}
.strategy-area-desc{margin:6px 0 0;font-size:14px;line-height:1.5;color:var(--clarity-soft)}
.strategy-area h4{margin:14px 0 6px;font-size:13px;font-weight:600;color:var(--clarity-soft)}
.strategy-area h4 small{font-weight:500}
.strategy-list{margin:0;padding:0;list-style:none}
.strategy-list li{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--clarity-rule);font-size:14px}
.strategy-goal-title{flex:1 1 auto;min-width:0;color:var(--clarity-ink)}
.strategy-list b{min-width:36px;text-align:right}
.strategy-area .hint{font-size:14px;margin:0}

/* Finestra di modifica: una riga per area. */
.strategy-form-title{margin:18px 0 4px;font-size:16px}
.strategy-area-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:10px;align-items:end;margin:0 0 10px;padding:0;border:0}
.strategy-area-row .field{margin:0}
@media(max-width:760px){
 .strategy-band blockquote{font-size:18px}
 .strategy-area-row{grid-template-columns:1fr;padding-bottom:10px;border-bottom:1px solid var(--clarity-rule)}
}
.strategy-list .pill{flex:0 0 auto;white-space:nowrap}

/* Grafico dell'andamento del KR, nella finestra «Dettagli». */
.kr-chart{margin:10px 0 16px;padding:12px 14px 10px;border:1px solid var(--clarity-rule);border-radius:12px;background:var(--glass-well,rgba(255,255,255,.5))}
.kr-chart svg{display:block;width:100%;height:auto;overflow:visible}
.kr-chart text{font-size:11px;fill:var(--clarity-soft)}
.kr-chart-grid{stroke:var(--clarity-rule);stroke-dasharray:3 4}
.kr-chart-ref{stroke:#b9c7be;stroke-width:1.6;stroke-dasharray:6 5}
.kr-chart-line{fill:none;stroke:#6f8f7c;stroke-width:2.2;stroke-linejoin:round}
.kr-chart-today{stroke:var(--clarity-soft);stroke-width:1;opacity:.5}
.kr-chart .kr-chart-today-label{font-size:10px}
.kr-dot{stroke:#fff;stroke-width:2}
.kr-dot-track{fill:#4f8f6c}.kr-dot-done{fill:#205b4b}.kr-dot-watch{fill:#d89646}.kr-dot-risk{fill:#c66b60}.kr-dot-none{fill:#9aa8a0}
.kr-chart figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;margin-top:8px;font-size:13px;line-height:1.45;color:var(--clarity-soft)}
.kr-chart-legend{display:flex;flex-wrap:wrap;gap:4px 12px}
.kr-chart-legend span{display:inline-flex;align-items:center;gap:5px;color:var(--clarity-soft)}
.kr-chart-legend span::before{content:'';width:9px;height:9px;border-radius:50%;background:var(--dot,#9aa8a0)}
.kr-chart-legend .kr-dot-track{--dot:#4f8f6c}.kr-chart-legend .kr-dot-watch{--dot:#d89646}.kr-chart-legend .kr-dot-risk{--dot:#c66b60}
.kr-chart-legend .kr-chart-ref-key::before{width:14px;height:0;border-radius:0;border-top:2px dashed #b9c7be;background:none}

/* Viste rapide della pagina Obiettivi. */
.objective-views{display:flex;flex-wrap:wrap;gap:6px}
.objective-view{padding:7px 12px;border:1px solid var(--clarity-rule);border-radius:99px;background:transparent;color:var(--clarity-ink);font:inherit;font-size:14px;cursor:pointer}
.objective-view small{margin-left:2px;color:var(--clarity-soft);font-weight:600}
.objective-view:hover{background:#eaf2ed}
.objective-view.active{background:var(--green);border-color:var(--green);color:#fff}
.objective-view.active small{color:#cfe7d8}
.objective-view:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.toolbar:has(.objective-views){flex-wrap:wrap;row-gap:10px}

/* Attività: l'avviso sul tempo dedicato agli OKR è una riga discreta, non un riquadro colorato. */
.okr-time-note{max-width:none;margin:0 0 18px;padding:10px 14px;border:0;border-left:3px solid #c9d6ce;border-radius:0;background:transparent;color:var(--clarity-soft);font-size:14px;line-height:1.55}
.okr-time-note strong{color:var(--clarity-ink);font-weight:600}

/* Bacheca: colonne con titolo normale e conteggio a pastiglia, schede più compatte e leggibili. */
.board-column h2{text-transform:none;letter-spacing:0;font-size:15px;font-weight:600;color:var(--clarity-ink);align-items:center}
.board-column h2 span{min-width:24px;padding:1px 8px;border-radius:99px;background:var(--clarity-track);color:var(--clarity-soft);font-size:13px;text-align:center}
.task-card{padding:14px 15px;border-left-width:3px}
.task-card h3{margin:8px 0 6px;font-size:16px;line-height:1.4;font-weight:600;color:var(--clarity-ink)}
.task-card p{margin:0 0 4px;font-size:13px;line-height:1.45;color:var(--clarity-soft)}
.task-card p.overdue{font-weight:600}
.task-card .task-discussion{margin-top:8px;padding-top:8px;border-top:1px dashed var(--clarity-rule);font-size:12px}
.task-card-bottom{margin-top:10px;padding-top:10px}

/* KPI e indicatori di salute: i riquadri del riepilogo sono pulsanti che filtrano le schede. */
.metric-views .map-stat{font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.metric-views .map-stat:hover{border-color:#9cbcaa}
.metric-views .map-stat.active{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}
.metric-views .map-stat:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.head-filters .order-switch,.head-filters [role=group]{margin:0}
