@font-face{font-family:LocalSans;src:local('Inter'),local('Aptos'),local('Helvetica Neue');font-display:swap}
:root{--brand:#f47b20;--ink:#222b30;--muted:#647078;--line:#e1e6e8;--paper:#f5f7f8;--green:#23715a;--orange-dark:#a34809;--sidebar:#192328;font-family:LocalSans,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.45}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a{touch-action:manipulation}button{border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #b9550d;outline-offset:3px}input,textarea,select{max-width:100%;color:var(--ink)}.icon{flex-shrink:0;vertical-align:middle}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:16px}.skip:focus{top:10px}.layout{--side:236px}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--side);background:var(--sidebar);color:#c3cdd1;padding:28px 16px 16px;display:flex;flex-direction:column;z-index:30;overflow:auto}.brand{display:flex;justify-content:space-between;align-items:center;padding:0 14px}.wordmark{font-size:43px;line-height:1;font-weight:900;letter-spacing:-2px;color:var(--brand)}.wordmark>span{font-size:12px;letter-spacing:0;vertical-align:top}.product-label{font-size:11px;letter-spacing:2.8px;padding:10px 14px 26px;color:#e1e7ea;font-weight:600}.workspace{border:1px solid #364248;border-radius:9px;padding:11px;display:flex;gap:10px;align-items:center;margin-bottom:23px}.workspace-symbol{font-size:13px;background:#38444a;padding:6px;border-radius:5px;color:#fff}.workspace strong,.user strong{font-size:14px;color:#f3f6f7;display:block}.workspace small,.user small{font-size:12px;color:#a7b5bc;display:block;margin-top:2px}.nav-label{font-size:11px;letter-spacing:1.5px;color:#93a4ad;margin:14px 14px 10px;font-weight:600}.nav-item{display:flex;align-items:center;width:100%;min-height:46px;gap:12px;padding:10px 13px;border-radius:7px;text-align:left;font-size:14px;white-space:nowrap;margin:3px 0}.nav-item.active{background:var(--brand);color:#172329;font-weight:700}.nav-item:not(.active){color:#aab8c0}.nav-item b{font-size:12px;margin-left:auto;padding:1px 6px;background:#ffffff40;border-radius:4px}.nav-item small{margin-left:auto;font-size:10px;color:#aab8c0}.sidebar-bottom{margin-top:auto;padding-top:40px}.user{border-top:1px solid #344147;margin-top:14px;padding:22px 7px 0;display:flex;gap:10px;align-items:center}.avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#e8ece6;color:#4e6446;font-weight:600;font-size:11px;flex-shrink:0}.avatar.blue{background:#e5eef6;color:#42627a}.avatar.purple{background:#eee7f1;color:#795581}.avatar.small{width:29px;height:29px}.demo-dot{width:7px;height:7px;background:var(--brand);border-radius:50%;margin-left:auto}.main-shell{margin-left:var(--side);min-height:100vh;display:flex;flex-direction:column}.topbar{height:69px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;font-size:13px;color:var(--muted)}.topbar>div{display:flex;align-items:center;gap:18px}.topbar strong{font-weight:500;color:var(--ink)}.slash{color:#b1bbc0;margin:0 13px}.icon-button{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px}.icon-button:hover{background:#e8edef}.divider{height:20px;width:1px;background:var(--line)}.demo-strip{min-height:45px;padding:8px 38px;background:#fff4e9;border-bottom:1px solid #f0dfce;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#805127;font-size:12px}.demo-strip b{font-size:10px;letter-spacing:1px;background:#f8dec5;padding:3px 6px;border-radius:4px;margin-right:8px;color:#743b0d}.demo-strip>div{display:flex;align-items:center;gap:16px}.demo-strip button{display:flex;align-items:center;gap:6px;padding:2px 0;font-size:12px}.demo-strip .icon{width:14px;height:14px}.demo-strip select{border:0;background:transparent;font-size:12px;color:#805127;min-height:28px}main{width:100%;max-width:1650px;margin:0 auto;padding:34px 38px 24px;flex:1}main:focus{outline:none}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--muted)}h1,h2,h3,p{margin:0}h1{font-size:37px;letter-spacing:-1.1px;line-height:1.2;font-weight:650;margin:7px 0 8px}.heading-dot{color:var(--brand)}.page-heading p{font-size:14px;color:var(--muted)}.primary,.secondary{min-height:43px;display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:10px 17px;border-radius:7px;font-size:14px;font-weight:600}.primary{background:var(--brand);color:#1f292e;border:1px solid #e7731b;box-shadow:0 2px 3px #d8661915}.primary:hover{background:#ec7117}.secondary{border:1px solid #cbd3d7;background:white}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:33px}.stat{background:white;border:1px solid var(--line);border-radius:10px;text-align:left;padding:17px 19px;transition:border-color .15s}.stat:hover,.stat.selected{border-color:#ee994f}.stat>div{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:#526069;align-items:center}.stat .icon{color:#839099;width:18px}.stat:nth-child(2) .icon{color:#bd651f}.stat:nth-child(3) .icon{color:#b77b32}.stat:nth-child(4) .icon{color:var(--green)}.stat strong{display:block;font-size:32px;font-weight:600;letter-spacing:-1px;margin:8px 0 2px}.stat small{font-size:11px;color:var(--muted)}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.section-heading h2{font-size:19px;font-weight:600;display:flex;gap:10px;align-items:center}.section-heading h2 span{background:#e6ebed;color:#52616b;border-radius:5px;padding:1px 7px;font-size:12px}.muted{color:var(--muted);font-size:12px}.filter-tabs{display:flex;gap:22px;border-bottom:1px solid #dce2e5;margin-bottom:20px;overflow:auto}.filter-tabs button{white-space:nowrap;font-size:13px;color:#5d6b74;min-height:43px;padding:0 1px 12px;border-bottom:2px solid transparent;display:flex;align-items:center;gap:8px}.filter-tabs button span{background:#e8edef;border-radius:4px;font-size:10px;padding:2px 5px}.filter-tabs button.selected{color:#a74b08;border-color:var(--brand);font-weight:600}.filter-tabs button.selected span{background:#fae2cf;color:#a74b08}.filters{display:flex;gap:10px}.filters select{width:100%;height:43px;background:white;border:1px solid #dce2e5;border-radius:7px;padding:0 30px 0 12px;font-size:12px}.search{display:flex;align-items:center;gap:10px;background:white;border:1px solid #dce2e5;border-radius:7px;padding:0 13px;flex:1;min-width:140px;color:#859199}.search input{width:100%;min-width:0;height:41px;border:0;outline:none;background:transparent;font-size:13px}.search:focus-within{outline:2px solid #b9550d}.search input:focus-visible{outline:none}.search .icon{width:18px}.results-meta{display:flex;justify-content:space-between;align-items:center;margin:17px 0 14px;color:var(--muted);font-size:12px;gap:12px}.results-meta>div{display:flex;gap:14px;align-items:center}.results-meta select{border:0;background:transparent;font-size:12px;color:#4c5b64;max-width:190px}.text-button{font-size:12px;color:#935024;padding:6px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card{display:flex;flex-direction:column;min-width:0;background:white;border:1px solid #dfe5e8;border-radius:11px;box-shadow:0 2px 3px #23343d03;transition:box-shadow .2s,transform .2s,border-color .2s;padding:19px 19px 0;overflow:hidden}.project-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #2638400c;border-color:#e7ab7f}.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:15px}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:5px;font-size:11px;padding:4px 7px;font-weight:600;white-space:nowrap}.badge>span{width:5px;height:5px;background:currentColor;border-radius:50%}.scheduled{background:#edf3fc;color:#376396}.working{background:#fff2e6;color:#a45b1d}.installed{background:#e8f4ed;color:#277252}.stalled{background:#eef0f2;color:#64717a}.churn{background:#fbecec;color:#a44242}.flash{font-size:11px;color:#926020;display:inline-flex;gap:3px;align-items:center}.flash .icon{width:13px;height:13px}.project-id{font-size:11px;color:#6c7a83}.project-card h3{font-size:18px;line-height:1.4;letter-spacing:-.3px;font-weight:600;overflow-wrap:anywhere;min-height:51px;margin-bottom:8px}.location{font-size:12px;color:#5f6d76;display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-bottom:18px}.location .icon{width:14px;height:14px}.location>span{color:#7c8790}.card-date{display:flex;align-items:center;background:#f6f8f9;border-radius:6px;padding:10px;gap:9px;margin-top:auto;min-height:58px}.card-date>.icon{color:#71838e;width:17px}.card-date small{display:block;font-size:10px;color:#687680}.card-date strong{font-size:13px;font-weight:550}.card-date>span{font-size:10px;margin-left:auto;color:#9b581e;white-space:nowrap}.card-date.urgent{background:#fff6ed}.card-date.urgent>.icon{color:#bd6c2e}.card-progress{padding:19px 0 16px}.card-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#647078;gap:5px;margin-bottom:9px}.card-progress strong{font-size:12px;color:#2e3c43}.card-progress strong small{font-size:10px;font-weight:400;color:#6f7b82}.segments{display:flex;gap:4px}.segments span{height:5px;border-radius:2px;background:#e8edef;flex:1}.segments .done{background:var(--brand)}.complete .segments .done{background:#3e8a6b}.step-labels{display:flex;gap:5px;justify-content:space-between;margin-top:8px;font-size:9px;color:#76838b}.step-labels .done{color:#56656e}.missing{display:flex;gap:7px;align-items:flex-start;font-size:11px;min-height:54px;padding:12px 0;border-top:1px dashed #e4e8ea}.missing>.icon{width:14px;height:14px;margin-top:1px}.missing small{display:block;font-size:10px;margin-top:3px;color:#737d84}.attention{color:#a66621}.ready{color:#317454}.card-bottom{display:flex;align-items:center;gap:8px;padding:12px 0;border-top:1px solid #edf0f2;font-size:12px;color:#52626c}.card-bottom>.icon{margin-left:auto;width:15px;color:#9ca7ad}.card-bottom .avatar{width:25px;height:25px;font-size:9px}.page-footer{display:flex;justify-content:space-between;gap:20px;padding:23px 38px;color:#7b8790;font-size:11px}.empty{grid-column:1/-1;text-align:center;background:white;border:1px dashed #cdd7dc;border-radius:12px;padding:70px 20px}.empty>.icon{width:30px;height:30px;color:#9aa8b0}.empty h3{margin:12px 0 6px}.empty p{color:var(--muted);margin-bottom:22px}.back-link{display:flex;align-items:center;gap:8px;font-size:13px;color:#67757e;margin-bottom:24px;padding:0;min-height:30px}.back-link .icon{width:16px}.detail-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px}.detail-heading>div{min-width:0}.detail-heading h1{font-size:31px;max-width:780px;overflow-wrap:anywhere;line-height:1.25;margin:12px 0}.detail-status{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.detail-heading p{font-size:13px;display:flex;gap:8px;align-items:center;color:#687780;flex-wrap:wrap}.detail-heading p .icon{width:15px}.detail-heading>.primary{flex-shrink:0}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px}.detail-main,.detail-side{display:flex;flex-direction:column;gap:20px;min-width:0}.panel{background:white;border:1px solid var(--line);border-radius:10px;padding:23px}.panel-title{display:flex;align-items:center;gap:12px;margin-bottom:23px}.panel-title h2{font-size:17px;font-weight:600}.panel-title p{font-size:12px;color:var(--muted);margin-top:3px}.panel-title>.icon{margin-left:auto;color:#8e9ba3}.section-icon{display:flex;align-items:center;justify-content:center;background:#f0f3f4;width:35px;height:35px;border-radius:8px;color:#667882}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px}.fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field>span{font-size:12px;color:#65747d}.field input,.field select,.field textarea{font-size:14px;width:100%;min-width:0;border:1px solid #d4dde1;background:#fff;border-radius:6px;padding:10px;min-height:42px}.field input[readonly],.field textarea[readonly],.field select:disabled{color:#263840;background:#f8fafb;border-color:#edf0f2;opacity:1;-webkit-text-fill-color:#263840}.field textarea{resize:vertical;line-height:1.6}.wide{grid-column:1/-1}.field-hint{font-size:11px;color:#6d7b83;margin-top:16px;line-height:1.7}.priority-check{display:flex;align-items:center;gap:8px;font-size:13px}.priority-check .icon{width:16px;color:#aa6b31}input[type=checkbox]{accent-color:#ae5312;width:19px;height:19px;flex-shrink:0}.big-progress{display:flex;align-items:center;justify-content:space-between;margin:12px 0 16px}.big-progress>strong{font-size:54px;font-weight:500;letter-spacing:-2px}.big-progress strong small{font-size:26px;color:#82919a;margin-left:3px}.big-progress>span{font-size:12px;color:#6c7b84}.checklist{display:flex;flex-direction:column;margin-top:20px}.check-row{display:flex;gap:12px;align-items:flex-start;padding:15px 0;border-bottom:1px solid #edf0f2;cursor:pointer}.check-row:last-child{border-bottom:0}.check-row input{margin:1px 0 0}.check-row strong{font-size:13px;font-weight:550;display:block}.check-row small{font-size:11px;color:#6d7b83;display:block;margin-top:5px;line-height:1.6}.check-row small.good{color:#34755b}.check-row small.warn{color:#a56122}.detail-side .panel-title{margin-bottom:0}.local-note{display:flex;gap:10px;font-size:12px;color:#667780;padding:0 10px}.local-note small{font-size:11px;color:#7e8b93}.local-note .icon{color:#609479;width:17px}.technical summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:14px;font-weight:500;list-style:none}.technical[open] summary{margin-bottom:25px}.technical[open] summary .icon{transform:rotate(90deg)}.save-bar{position:sticky;bottom:14px;margin-top:25px;background:#fff;box-shadow:0 3px 24px #1b303522;border:1px solid #d4dee3;border-radius:10px;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:15px 20px;z-index:10}.save-bar>span{font-size:13px;font-weight:600}.save-bar small{font-size:11px;color:#6c7c85;display:block;font-weight:400;margin-top:3px}.save-bar>div{display:flex;gap:10px}.info-banner{padding:12px 16px;background:#eaf2f9;border-radius:8px;color:#3c6583;font-size:13px;margin-bottom:20px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#203b31;color:#fff;padding:14px 22px;border-radius:9px;box-shadow:0 8px 28px #15282a30;font-size:14px;z-index:100;max-width:calc(100vw - 30px);transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}#toast.error{background:#893d31}.collapsed{--side:76px}.collapsed .sidebar{padding-left:11px;padding-right:11px}.collapsed .brand{padding:0}.collapsed .wordmark{font-size:25px;letter-spacing:-1px}.collapsed .wordmark>span{display:none}.collapsed .product-label,.collapsed .workspace,.collapsed .nav-label,.collapsed .nav-item>span,.collapsed .nav-item>b,.collapsed .nav-item>small,.collapsed .user>div,.collapsed .demo-dot{display:none}.collapsed nav:first-of-type{margin-top:40px}.collapsed .nav-item{justify-content:center;padding:12px}.collapsed .user{padding-left:0;justify-content:center}.backdrop,.sidebar-close{display:none}
@media(min-width:1550px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{padding:24px 24px 0}.project-card h3{font-size:20px}.project-card .location{font-size:14px}.badge{font-size:12px}.card-date strong{font-size:15px}.card-progress>div:first-child{font-size:13px}.step-labels{font-size:11px}.missing{font-size:13px}.missing small{font-size:12px}.card-bottom{font-size:14px}.stat>div{font-size:15px}.stat small{font-size:12px}}
@media(max-width:1200px){.layout{--side:208px}.collapsed{--side:76px}main{padding:28px 25px}.topbar,.demo-strip{padding-left:25px;padding-right:25px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:15px 13px}.stat>div{font-size:12px}.stat small{font-size:10px}.detail-grid{grid-template-columns:minmax(0,1fr) 280px;gap:18px}.panel{padding:19px}.fields.three{grid-template-columns:1fr}.filters{flex-wrap:wrap}.search{flex-basis:100%}.filters>label:not(.search){flex:1}.nav-item{gap:8px;padding-left:9px;font-size:13px}.nav-item small{font-size:9px}.demo-strip{flex-wrap:wrap}.fields{gap:15px}.detail-heading h1{font-size:28px}}
@media(max-width:960px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat strong{font-size:30px}.stat>div{font-size:14px}.stat small{font-size:12px}.detail-grid{grid-template-columns:1fr}.detail-side{grid-row:1;display:grid;grid-template-columns:1fr 1fr;gap:15px}.local-note{display:none}.detail-heading{align-items:flex-start;flex-direction:column}.detail-heading h1{font-size:28px}.detail-side .panel{padding:18px}.big-progress>strong{font-size:42px}.check-row strong{font-size:12px}.check-row small{font-size:11px}.filter-tabs{gap:17px}.filter-tabs button{font-size:12px}}
@media(max-width:760px){.layout,.collapsed{--side:0px}.sidebar,.collapsed .sidebar{width:260px;padding:24px 16px;transform:translateX(-100%);transition:transform .2s}.mobile-open .sidebar{transform:translateX(0)}.mobile-open .backdrop{display:block;position:fixed;inset:0;background:#12252b70;z-index:29}.sidebar-close{display:inline-flex;color:white}.sidebar-close:hover{background:#38484f}.collapsed .wordmark{font-size:43px}.collapsed .product-label,.collapsed .workspace,.collapsed .nav-label,.collapsed .nav-item>span,.collapsed .nav-item>small,.collapsed .user>div{display:revert}.collapsed .workspace{display:flex}.collapsed .nav-item{justify-content:flex-start}.topbar{height:58px;padding:0 17px}.topbar>div{gap:10px}.top-meta{font-size:12px}.demo-strip{padding:10px 18px;gap:8px;font-size:11px}.demo-strip>div{justify-content:space-between;width:100%}.demo-strip select{font-size:12px}.demo-strip button{min-height:30px}.demo-strip button span{display:inline}main{padding:26px 18px 20px}.page-heading{gap:15px;align-items:flex-start;margin-bottom:24px}.eyebrow{font-size:9px;letter-spacing:1.2px}h1{font-size:31px}.page-heading p{font-size:12px;max-width:190px}.page-heading .primary{font-size:12px;padding:10px 12px;margin-top:20px}.page-heading .primary .icon{width:16px}.stats{gap:10px;margin-bottom:27px}.stat{padding:13px}.stat>div{font-size:12px}.stat small{font-size:10px}.stat strong{font-size:29px}.stat .icon{width:16px}.section-heading h2{font-size:17px}.section-heading>.muted{font-size:10px}.filter-tabs{gap:21px;margin-bottom:16px}.filter-tabs button{font-size:13px}.filters{gap:8px}.filters>label:not(.search){flex-basis:calc(50% - 8px)}.filters>label:last-child{flex-basis:100%}.filters select,.search input{font-size:16px}.results-meta{font-size:11px;align-items:flex-start}.results-meta>div{gap:8px;flex-wrap:wrap;justify-content:flex-end}.results-meta select{font-size:11px;max-width:145px}.text-button{font-size:11px;padding:0}.cards{grid-template-columns:1fr;gap:15px}.project-card{padding:20px 20px 0}.project-card h3{font-size:20px;min-height:0;margin-bottom:10px}.card-top{margin-bottom:17px}.badge{font-size:12px}.location{font-size:14px;margin-bottom:19px}.card-date{padding:12px}.card-date small{font-size:12px}.card-date strong{font-size:15px}.card-date>span{font-size:12px}.card-progress>div:first-child{font-size:13px}.card-progress strong{font-size:14px}.step-labels{font-size:11px}.missing{font-size:13px;padding:14px 0;min-height:63px}.missing small{font-size:11px}.card-bottom{padding:15px 0;font-size:13px}.card-bottom .avatar{width:29px;height:29px;font-size:10px}.project-id{font-size:12px}.flash{font-size:12px}.page-footer{padding:20px 18px;font-size:10px}.detail-heading h1{font-size:29px}.detail-heading p{font-size:14px}.detail-grid{gap:18px}.detail-side{display:flex;gap:18px}.detail-side .panel,.panel{padding:21px}.big-progress>strong{font-size:54px}.check-row strong{font-size:15px}.check-row small{font-size:12px}.fields{grid-template-columns:1fr;gap:18px}.field>span{font-size:14px}.field input,.field select,.field textarea{font-size:16px;padding:12px}.field-hint{font-size:12px}.panel-title h2{font-size:18px}.panel-title p{font-size:12px}.save-bar{bottom:8px;padding:12px;gap:8px;flex-wrap:wrap}.save-bar>span{font-size:12px}.save-bar>div{width:100%}.save-bar button{flex:1;min-height:46px}.back-link{font-size:14px}.detail-heading>.primary{font-size:14px;min-height:44px}.check-row{min-height:65px}.check-row input{width:22px;height:22px}.sidebar .nav-item{font-size:14px}.sidebar .nav-item small{font-size:10px}.filters select{min-height:45px}.search input{height:45px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.project-card:hover{transform:none}}
/* Gerarchia tipografica: contenuti operativi leggibili anche su desktop. */
.nav-item{font-size:14px}.nav-item small{font-size:10px}.stat>div{font-size:14px;min-height:40px}.stat small{font-size:12px}.stat strong{margin-top:2px}.stat{padding-top:13px;padding-bottom:13px}.page-heading{margin-bottom:23px}.stats{margin-bottom:26px}.filter-tabs button,.filters select,.search input{font-size:14px}.results-meta,.results-meta select,.text-button{font-size:12px}.badge{font-size:12px}.project-card h3{font-size:20px}.location{font-size:14px}.card-date small{font-size:12px}.card-date strong{font-size:14px}.card-date>span{font-size:12px}.card-progress>div:first-child{font-size:13px}.card-progress strong{font-size:14px}.step-labels{font-size:11px}.missing{font-size:13px}.missing small{font-size:12px}.card-bottom{font-size:14px}.field>span{font-size:14px}.panel-title p{font-size:13px}.check-row strong{font-size:14px}.check-row small,.field-hint{font-size:12px}.anagraph-note{font-size:12px;color:#8d5b30;margin-bottom:11px}.project-card.complete .missing small{color:#657c70}
@media(max-width:1200px){.nav-item{font-size:13px}.nav-item small{display:none}.stat>div{font-size:13px}.stat small{font-size:11px}.card-progress>div:first-child{font-size:12px}}
@media(max-width:760px){.stat>div{font-size:12px}.stat small{font-size:11px}.filters select,.search input{font-size:16px}.filter-tabs button{font-size:13px}.card-progress>div:first-child{font-size:13px}.field input,.field select,.field textarea{font-size:16px}.check-row strong{font-size:15px}.results-meta{flex-wrap:wrap}.results-meta>div{margin-left:auto}.nav-item{font-size:14px}.nav-item small{display:initial}}
@media(max-width:760px){.stat{padding:10px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;min-height:77px}.stat>div{min-height:0;font-size:12px}.stat .icon,.stat small{display:none}.stat strong{font-size:27px;margin:0}.stats{margin-bottom:24px}.page-heading{margin-bottom:20px}}
.check-row input,.priority-check input{appearance:none;border:1.5px solid #98a6ae;border-radius:4px;background:white;display:inline-grid;place-content:center;opacity:1}.check-row input:checked,.priority-check input:checked{background:#b75814;border-color:#b75814}.check-row input:checked:after,.priority-check input:checked:after{content:'✓';font-family:Arial,sans-serif;font-size:14px;font-weight:bold;line-height:1;color:white}.check-row:has(input:disabled){cursor:default}
/* Revisione 2 — panoramica compatta accanto al titolo. */
.compact-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:26px;align-items:center;margin:2px 0 34px}.compact-heading h1{margin:0}.project-overview{display:flex;align-items:center;justify-content:flex-start;gap:0;min-width:0}.overview-item{min-width:88px;padding:3px 18px;text-align:left;border-left:1px solid #dce3e7;position:relative}.overview-item strong{font-size:25px;font-weight:600;line-height:1.2;letter-spacing:-.6px;display:block}.overview-item>span{font-size:12px;color:#647078;display:block;margin-top:5px;white-space:nowrap}.overview-item:hover{background:#edf1f3;border-radius:4px}.overview-item.selected strong{color:#a74b08}.overview-item.selected:after{content:'';height:2px;background:var(--brand);position:absolute;bottom:-8px;left:18px;right:18px}.compact-heading .primary{white-space:nowrap}.frozen-label{font-size:11px;background:#eaf0f4;color:#506c7f;padding:2px 7px;margin-left:5px;border-radius:4px}#forecast-help{font-size:12px;color:#647580}.field input:disabled{background:#eef2f5;border-color:#e1e7eb;color:#60727d;opacity:1;-webkit-text-fill-color:#60727d}.menu-flow{display:flex;align-items:stretch;gap:7px;margin-bottom:24px}.menu-flow>span{flex:1;border-bottom:3px solid #e6ebee;padding:9px 4px;font-size:12px;color:#6e7b83;text-align:center}.menu-flow>span.current{border-color:var(--brand);color:#9c5018;background:#fff5eb;font-weight:600}.menu-help{font-size:13px;color:#647078;align-self:center;padding-top:22px}
@media(max-width:1350px){.compact-heading{grid-template-columns:auto auto;gap:23px}.compact-heading>.primary{grid-row:1;grid-column:2;justify-self:end}.project-overview{grid-column:1/-1;grid-row:2}.overview-item{padding-left:20px;padding-right:28px}.overview-item:first-child{padding-left:0;border-left:0}.overview-item:first-child.selected:after{left:0}.compact-heading{margin-bottom:32px}}
@media(max-width:760px){.compact-heading{gap:22px 12px}.compact-heading .primary{margin:0;font-size:12px;padding:10px}.project-overview{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%}.overview-item{min-width:0;padding:2px 8px}.overview-item strong{font-size:23px}.overview-item>span{font-size:11px}.overview-item.selected:after{left:8px;right:8px}.compact-heading h1{font-size:31px}.menu-flow{display:grid;grid-template-columns:1fr 1fr}.menu-flow>span{font-size:13px}.menu-help{padding-top:0}.frozen-label{display:inline-block}.hardware-help{margin-bottom:4px}}
/* Percorsi di avanzamento distinti e coerenti. */
.advancement{padding:0 26px;margin-bottom:24px}.advancement-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.advancement-heading h2{font-size:21px;font-weight:600}.advancement-heading p{font-size:13px;color:var(--muted);margin-top:5px}.advancement-heading .secondary{white-space:nowrap}.advancement-row{display:grid;grid-template-columns:210px minmax(0,1fr);gap:26px;padding:23px 0;border-bottom:1px solid #e8edef}.advancement-label{display:flex;align-items:flex-start;gap:11px;padding-top:3px}.advancement-label h3{font-size:15px;font-weight:600}.row-summary{font-size:12px;color:#63767f;display:block;margin-top:5px}.advancement-controls{min-width:0}.status-track{display:flex;gap:6px}.stage{flex:1;min-width:0;text-align:left;padding:4px 5px 7px;border-radius:6px;color:#718089;min-height:58px}.stage .track-line{display:block;height:6px;background:#e3e9ed;border-radius:4px;margin-bottom:10px}.stage-name{display:block;font-size:12px;overflow-wrap:anywhere;line-height:1.4}.stage small{display:block;font-size:11px;margin-top:4px;color:#697b85}.stage.passed .track-line{background:#e9b287}.stage.current .track-line{background:var(--brand)}.stage.current{background:#fff3e8;color:#954b14;font-weight:600}.stage.checked .track-line{background:#3c8669}.stage.checked{background:#f0f7f3;color:#2f6f56}.stage.passed{color:#775b47}.stage:not(:disabled):hover{background:#eef3f5;outline:1px solid #b6c5ce}.stage:disabled{opacity:1;cursor:default}.progress-description{font-size:12px;color:#61737e;margin:10px 5px 0;line-height:1.6}.alternative-route{display:flex;gap:10px;align-items:center;margin:8px 5px 0}.alternative-route>span{font-size:11px;color:#7a8790}.route-choice{display:inline-flex;gap:6px;align-items:center;padding:7px 11px;border:1px solid #dae3e7;border-radius:6px;font-size:12px;color:#657780;text-align:left}.route-choice .icon{display:none;width:14px;height:14px}.route-choice.selected{background:#edf6f1;border-color:#8cbea4;color:#286a4e}.route-choice.selected .icon{display:block}.route-choice:not(:disabled):hover{border-color:#799d8b}.progress-warning{display:flex;align-items:flex-start;gap:7px;margin:10px 5px 0;padding:9px 11px;background:#fff2e6;color:#975017;border-radius:6px;font-size:12px;line-height:1.6}.progress-warning .icon{width:15px;height:15px;margin-top:2px}.csx-notes{padding:18px 0}.csx-notes summary{font-size:13px;cursor:pointer;color:#627580}.csx-notes[open] .field{margin-top:16px}.information-layout{display:block}.information-layout .detail-main{display:grid;grid-template-columns:1.35fr 1fr;align-items:start}.information-layout .detail-main>.panel:first-child{grid-row:span 2}.information-layout .detail-main>.panel:nth-child(2),.information-layout .detail-main>.panel:nth-child(3){grid-column:2}.information-layout .detail-main .fields{grid-template-columns:1fr 1fr}
@media(max-width:1100px){.advancement-row{grid-template-columns:170px minmax(0,1fr);gap:15px}.advancement{padding:0 20px}.advancement-label{gap:8px}.advancement-label .section-icon{display:none}.information-layout .detail-main{display:flex}.advancement-heading{align-items:flex-start}.advancement-heading p{max-width:430px}.stage-name{font-size:12px}}
@media(max-width:760px){.advancement{padding:0 16px}.advancement-heading{padding:20px 0;flex-direction:column;gap:14px}.advancement-heading h2{font-size:20px}.advancement-heading .secondary{min-height:44px}.advancement-row{grid-template-columns:1fr;gap:13px;padding:20px 0}.advancement-label .section-icon{display:flex;width:30px;height:30px}.advancement-label{align-items:center}.advancement-label h3{font-size:16px}.advancement-label>div{display:flex;gap:7px;align-items:baseline;flex-wrap:wrap}.row-summary{font-size:12px;margin:0}.status-track{gap:3px}.stage{padding:5px 3px 8px}.stage-name{font-size:12px}.stage small{font-size:11px}.progress-description{font-size:12px;margin-left:3px;margin-right:3px}.route-choice{min-height:44px;font-size:12px}.alternative-route{margin-left:3px}.information-layout .detail-main .fields{grid-template-columns:1fr}.check-track .stage-name{font-size:12px}.progress-warning{margin-left:0;margin-right:0}}
/* Dettaglio compatto: informazioni a sinistra, avanzamenti a destra. */
.information-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px 22px;align-items:start}.information-layout .detail-main{display:contents}.information-layout .detail-main>.panel:first-child{grid-column:1;grid-row:1}.information-layout .detail-main>.panel:nth-child(2){grid-column:1;grid-row:2}.information-layout .detail-main>.panel:nth-child(3){grid-column:1;grid-row:3}.information-layout>.advancement{grid-column:2;grid-row:1/4;margin:0;padding:0 20px}.advancement-heading{padding:18px 0;gap:10px}.advancement-heading h2{font-size:18px}.advancement-heading p{font-size:12px}.advancement-heading .secondary{padding:7px 10px;min-height:36px;font-size:12px}.advancement-heading .icon{width:15px}.advancement-row{display:block;padding:15px 0}.advancement-label{display:flex;gap:8px;align-items:center;padding:0;margin-bottom:10px}.advancement-label h3{font-size:14px;flex:1}.advancement-label .row-summary{font-size:12px;margin:0;white-space:nowrap}.progress-info{position:relative;flex-shrink:0}.progress-info>summary{list-style:none;width:22px;height:22px;border:1px solid #d7e1e6;color:#697d88;border-radius:50%;text-align:center;font:italic 13px/20px Georgia,serif;cursor:pointer}.progress-info>summary::-webkit-details-marker{display:none}.progress-info[open]>summary{background:#eaf0f4}.progress-info p{position:absolute;right:0;top:24px;width:260px;max-width:calc(100vw - 70px);padding:13px;background:#243640;color:white;box-shadow:0 5px 22px #1c303425;border-radius:7px;z-index:15;font-size:12px;line-height:1.6}.check-track{gap:5px}.check-track .stage{min-height:54px;padding:4px 4px 6px}.check-track .stage .track-line{height:4px;margin-bottom:7px}.check-track .stage-name{font-size:12px}.check-track .stage small{font-size:10px}.compact-state{position:relative}.compact-state>summary{display:grid;grid-template-columns:1fr auto;gap:9px;padding:10px 12px;list-style:none;border:1px solid #e0e7eb;background:#f8fafb;border-radius:7px;cursor:pointer}.compact-state>summary::-webkit-details-marker{display:none}.compact-state>summary:hover{border-color:#bccbd3}.compact-current{font-size:13px;font-weight:500}.compact-state>summary>.icon{width:15px;height:15px;transform:rotate(90deg);color:#7d8f98}.compact-state[open]>summary>.icon{transform:rotate(-90deg)}.mini-status{grid-column:1/-1;display:flex;gap:4px}.mini-status>span{height:4px;background:#e3eaed;border-radius:2px;flex:1}.mini-status>span.filled{background:var(--brand)}.mini-status.alternate>span{background:#43836a}.state-options{position:absolute;left:0;right:0;top:calc(100% + 5px);padding:5px;background:white;border:1px solid #d9e3e8;box-shadow:0 8px 25px #1e39401c;border-radius:8px;z-index:12}.state-options>button{display:flex;align-items:center;gap:7px;width:100%;text-align:left;padding:9px;border-radius:5px;font-size:13px;flex-wrap:wrap;min-height:38px}.state-options>button[aria-pressed=true]{background:#fff1e6;color:#914811}.state-options>button:not(:disabled):hover{background:#edf3f6}.state-options .icon,.option-space{width:14px;height:14px}.state-options small{font-size:10px;color:#657c86;display:block}.choice-hint{padding:8px 10px}.progress-warning{font-size:11px;padding:8px;margin:9px 0 0;line-height:1.5}.csx-notes{padding:14px 0}.information-layout .panel-title{margin-bottom:17px}.information-layout .panel{padding:20px}.information-layout .fields{gap:14px}.information-layout .field-hint{margin-top:11px;font-size:11px}.information-layout .field>span{font-size:12px}.information-layout .field input,.information-layout .field select{min-height:39px;padding:8px 10px}.detail-heading{margin-bottom:22px}.back-link{margin-bottom:15px}
@media(max-width:1100px){.information-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.advancement-heading{flex-direction:row;align-items:center}.information-layout>.advancement{padding:0 16px}.advancement-heading h2{font-size:17px}.information-layout .detail-main .fields{grid-template-columns:1fr 1fr}.advancement-label .row-summary{font-size:11px}}
@media(max-width:760px){.information-layout{grid-template-columns:1fr;gap:16px}.information-layout .detail-main>.panel:first-child{grid-column:1;grid-row:1}.information-layout>.advancement{grid-column:1;grid-row:2;padding:0 18px}.information-layout .detail-main>.panel:nth-child(2){grid-column:1;grid-row:3}.information-layout .detail-main>.panel:nth-child(3){grid-column:1;grid-row:4}.information-layout .detail-main .fields{grid-template-columns:1fr}.information-layout .field>span{font-size:14px}.information-layout .field input,.information-layout .field select{min-height:44px;font-size:16px;padding:10px}.advancement-heading .secondary{min-height:42px}.advancement-label h3{font-size:15px}.compact-current{font-size:14px}.state-options>button{font-size:14px;min-height:44px}.check-track .stage{min-height:61px}.check-track .stage small{font-size:11px}.information-layout .field-hint{font-size:12px}.progress-warning{font-size:12px}}
/* Card progetto: riferimenti fissi, tinta di stato e quattro letture operative. */
.compact-project{--state-rgb:193,107,39;--state-ink:#965019;--state-line:#e7c19f;padding:16px 17px 0;background:linear-gradient(145deg,rgba(var(--state-rgb),.115),rgba(var(--state-rgb),.025) 42%,#fff 75%);background-color:white;border:1px solid #dae3e7;border-top:3px solid var(--state-line);border-radius:10px;box-shadow:0 2px 5px #24384004}.compact-project.tone-scheduled{--state-rgb:65,126,188;--state-ink:#386b9c;--state-line:#98bce0}.compact-project.tone-installed{--state-rgb:48,139,92;--state-ink:#2d7051;--state-line:#8bc0a5}.compact-project.tone-churn{--state-rgb:192,68,68;--state-ink:#a33f42;--state-line:#da979a}.compact-project.tone-prechurn{--state-rgb:171,113,44;--state-ink:#8a5b24;--state-line:#d7b27d}.compact-project.tone-stalled{--state-rgb:107,114,136;--state-ink:#5f677a;--state-line:#a9afbf}.badge.prechurn{background:#f6ecdb;color:#8a5b24}.compact-project:hover{border-color:var(--state-line);box-shadow:0 6px 20px rgba(var(--state-rgb),.12);transform:translateY(-2px)}.compact-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.reference-number{font-size:13px;font-weight:700;letter-spacing:.2px;color:var(--state-ink);font-variant-numeric:tabular-nums}.compact-card-top .badge{font-size:12px;padding:3px 7px;white-space:normal}.compact-project h3{font-size:18px;line-height:1.35;min-height:49px;margin:0 0 5px;letter-spacing:-.3px}.compact-project .location{font-size:13px;margin-bottom:12px;gap:5px;color:#566b76}.compact-project .location>span{color:#71818b}.compact-date{display:flex;align-items:center;gap:8px;padding:9px 0;border-top:1px solid #e1e7ea;border-bottom:1px solid #e1e7ea;min-height:44px;margin-top:auto}.compact-date>.icon{width:15px;height:15px;color:#72818b}.compact-date>div{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.compact-date>div>span{font-size:12px;color:#667780}.compact-date strong{font-size:13px;font-weight:550}.due-tag{font-size:11px;color:#8c521f;background:#fff0de;border-radius:4px;padding:2px 5px;margin-left:auto;white-space:nowrap}.compact-date.near-date>.icon{color:#ad661d}.card-tracks{padding:10px 0 8px;display:flex;flex-direction:column;gap:9px}.card-track-row{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;row-gap:5px;align-items:center}.track-caption{font-size:13px;display:flex;align-items:center;gap:7px;color:#4d626d}.track-caption>.icon{width:14px;height:14px;color:#7b8d97}.card-track-row>strong{font-size:12px;font-weight:550;color:#354c58;text-align:right}.card-track-row>strong small{font-size:11px;font-weight:400;color:#6b7c86}.card-track{display:flex;gap:3px;grid-column:1/-1;margin-left:21px}.card-track>span{flex:1;border-radius:3px;height:3px;background:#e3e9ec}.card-track>span.filled{background:#cf8c51}.card-track-row.is-ready>strong{color:#317457}.card-track-row.is-ready .card-track>span.filled{background:#4c9375}.compact-alert,.compact-clear{display:flex;gap:6px;font-size:11px;line-height:1.5;min-height:29px;padding:7px 0 9px}.compact-alert{color:#946124}.compact-alert>.icon{width:13px;height:13px;margin-top:2px}.compact-clear{color:#35785b}.compact-gaps{font-size:11px;line-height:1.5;color:#8a663a;padding:0 0 8px}.card-people{display:grid;grid-template-columns:1.1fr 1fr;gap:10px;border-top:1px solid #e2e8eb;padding:11px 0 13px}.project-technician{display:flex;align-items:center;gap:7px;min-width:0}.card-people .avatar{width:27px;height:27px;font-size:10px}.card-people small{display:block;font-size:10px;color:#71828d;margin-bottom:1px}.card-people strong{display:block;font-size:12px;line-height:1.4;font-weight:500;color:#344e5b;overflow-wrap:anywhere}.project-vendor{border-left:1px solid #e1e7eb;padding-left:10px;min-width:0}
@media(min-width:1550px){.compact-project{padding:17px 19px 0}.compact-project h3{font-size:19px}.compact-project .location{font-size:14px}.card-track-row>strong,.track-caption{font-size:14px}.card-people strong{font-size:13px}.card-people small,.compact-alert,.compact-clear,.compact-gaps{font-size:12px}}
@media(max-width:760px){.compact-project{padding:16px 17px 0}.compact-project h3{font-size:19px;min-height:0;margin-bottom:7px}.compact-project .location{font-size:14px}.card-track-row>strong,.track-caption{font-size:13px}.compact-alert,.compact-clear,.compact-gaps{font-size:12px}.card-people strong{font-size:13px}.card-people small{font-size:11px}.compact-date strong{font-size:14px}.compact-date>div>span{font-size:12px}}

/* Monitoraggio totale e consultazione separata dei non attivi. */
.overview-item:hover{background:transparent;border-radius:0}.overview-item{cursor:default}.overview-item:first-child strong{color:#a74b08}.project-archive{margin-top:36px;border-top:1px solid #d5dfe4;padding-top:22px}.project-archive>summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;padding:12px 0;color:#344e5b}.project-archive>summary::-webkit-details-marker{display:none}.project-archive>summary>.icon{width:18px;transition:transform .15s}.project-archive[open]>summary>.icon{transform:rotate(90deg)}.project-archive>summary strong{font-size:18px;font-weight:600}.project-archive>summary small{display:block;margin-top:6px;font-size:13px;color:#6c7e88}.project-archive>summary:focus-visible{outline:2px solid #a74b08;outline-offset:4px;border-radius:6px}#archive-count{display:inline-block;font-size:12px;background:#e5ebee;padding:3px 7px;border-radius:4px;margin-left:6px}.archive-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:14px 0 20px}.archive-toolbar p{font-size:13px;color:#6c7e88;margin:0}.archive-toolbar select{padding:10px;border:1px solid #d5dfe4;background:white;border-radius:7px;color:#344e5b}.archive-content{padding-bottom:8px}@media(max-width:760px){.archive-toolbar{align-items:stretch;flex-direction:column}.archive-toolbar select{width:100%}.project-archive>summary strong{font-size:17px}}

/* Console informativa e toolbar unica. */
.overview-active strong{color:#376396}.overview-completed strong{color:#277252}.overview-churn strong{color:#a44242}.overview-pre-churn strong{color:#8a5b24}.overview-stalled strong{color:#64717a}.projects-section>.filters{display:grid;grid-template-columns:minmax(240px,2fr) repeat(3,minmax(130px,1fr));gap:10px;align-items:center}.projects-section>.filters>label{min-width:0}.projects-section>.filters>.search{grid-column:1;min-width:0}.projects-section>.filters>.text-button{justify-self:end}.archive-content{padding-top:18px}.overview-item{min-width:78px;padding-left:14px;padding-right:14px}@media(max-width:1200px){.projects-section>.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.projects-section>.filters>.search{grid-column:1/-1}}@media(max-width:760px){.project-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 0}.overview-item{padding:2px 14px;min-width:0}.overview-item:nth-child(3n+1){border-left:0;padding-left:0}.projects-section>.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-section>.filters>.text-button{justify-self:start;min-height:40px}.projects-section>.filters select{font-size:13px;padding-left:9px}.projects-section>.filters>.search input{font-size:16px}}

/* Toolbar compatta: una riga desktop, nessuna cella vuota. */
.projects-section>.filters{grid-template-columns:minmax(180px,1fr) minmax(125px,.65fr) minmax(125px,.65fr) minmax(120px,.6fr) minmax(155px,.75fr) auto;gap:8px}.projects-section>.filters>.search{grid-column:auto}.projects-section>.filters select{font-size:13px;padding-left:10px;padding-right:22px}.projects-section>.filters>.text-button{white-space:nowrap;padding:8px 4px}@media(min-width:761px) and (max-width:1100px){.projects-section>.filters{grid-template-columns:minmax(0,1.2fr) repeat(4,minmax(0,1fr)) auto;gap:5px}.projects-section>.filters select{font-size:11px;padding-left:5px;padding-right:15px}.projects-section>.filters>.search{padding:0 7px;gap:5px}.projects-section>.filters>.search input{font-size:12px}.projects-section>.filters>.text-button{font-size:11px}}@media(max-width:760px){.projects-section>.filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.projects-section>.filters>.search{grid-column:1/-1}.projects-section>.filters select{font-size:13px}.projects-section>.filters>.text-button{grid-column:1/-1;justify-self:end;min-height:32px}}

/* Reset integrato nella toolbar. */
.filter-reset{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border:1px solid #dce2e5;border-radius:7px;background:white;color:#78502e;flex-shrink:0}.filter-reset .icon{width:18px;height:18px}.filter-reset:hover:not(:disabled){background:#fff3e7;border-color:#e5aa79}.filter-reset:disabled{color:#a4b0b7;background:#f1f4f5;border-color:#e1e7ea;cursor:default}@media(max-width:760px){.projects-section>.filters>.filter-reset{grid-column:1/-1;justify-self:end}}

.sort-control{position:relative;min-width:0}.sort-trigger{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:43px;background:white;border:1px solid #dce2e5;border-radius:7px;font-size:13px}.sort-trigger .icon{width:17px;height:17px}.sort-trigger:hover,.sort-trigger[aria-expanded=true]{background:#fff4ea;border-color:#e5aa79}.sort-options{position:absolute;top:calc(100% + 7px);right:0;width:238px;padding:7px;background:white;border:1px solid #dce2e5;border-radius:9px;box-shadow:0 8px 28px #20374422;z-index:20}.sort-options[hidden]{display:none}.sort-options p{font-size:11px;color:#70818b;padding:7px 10px}.sort-options button{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;width:100%;text-align:left;font-size:13px;border-radius:5px}.sort-options button:hover{background:#f2f5f7}.sort-options button[aria-pressed=true]{background:#fff1e5;color:#9a4d12}.sort-options .icon{width:16px;height:16px}.projects-section>.filters{grid-template-columns:minmax(180px,1fr) minmax(125px,.65fr) minmax(125px,.65fr) minmax(120px,.6fr) 105px auto}@media(min-width:761px) and (max-width:1100px){.projects-section>.filters{grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr)) 85px auto}}@media(max-width:760px){.projects-section>.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.sort-options{width:min(238px,calc(100vw - 36px))}}

/* Interazioni condivise: arancione tenue come il pulsante Ordina. */
.search,.filters select,.field input,.field select,.field textarea,.sort-trigger,.filter-reset,.compact-state>summary,.stage{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
.search:hover,.search:focus-within,.filters select:hover,.filters select:focus,.filters select.has-selection,.field input:not([readonly]):not(:disabled):hover,.field select:not(:disabled):hover,.field textarea:not([readonly]):hover,.field input:not([readonly]):not(:disabled):focus,.field select:not(:disabled):focus,.field textarea:not([readonly]):focus,.compact-state>summary:hover,.compact-state[open]>summary,.stage:not(:disabled):hover,.stage:not(:disabled):focus-visible{background-color:#fff4ea;border-color:#e5aa79}
.search:focus-within,.filters select:focus-visible,.field input:not([readonly]):focus-visible,.field select:not(:disabled):focus-visible,.field textarea:not([readonly]):focus-visible,.sort-trigger:focus-visible,.filter-reset:focus-visible,.compact-state>summary:focus-visible,.stage:not(:disabled):focus-visible{outline:2px solid #df8a46;outline-offset:2px;box-shadow:0 0 0 4px #f47b2010}
.filters select.has-selection{color:#9a4d12}.search:focus-within .icon,.search:hover .icon{color:#b96324}.sort-trigger,.filter-reset:not(:disabled):hover{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
@media(prefers-reduced-motion:reduce){.search,.filters select,.field input,.field select,.field textarea,.sort-trigger,.filter-reset,.compact-state>summary,.stage{transition:none}}

/* Same popover surface and options as Ordina, including open menus. */
.select-control{display:block;position:relative;min-width:0;width:100%}.select-control>select[hidden]{display:none!important}.select-trigger{justify-content:space-between;padding:0 12px;text-align:left;color:#222b30;font-weight:400;gap:8px}.select-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.select-trigger>.icon{width:13px;height:13px;transform:rotate(90deg)}.select-trigger.has-selection{background:#fff4ea;border-color:#e5aa79;color:#9a4d12}.select-options{display:block;left:0;right:auto;width:max(100%,238px);max-width:calc(100vw - 36px);max-height:320px;overflow-y:auto}.select-title{display:block;font-size:11px;color:#70818b;padding:7px 10px}.select-options button{min-height:39px}.select-trigger:disabled{background:#f8fafb;color:#65747d;border-color:#edf0f2;cursor:default}.field .select-trigger{height:42px;font-size:14px}.demo-strip .select-control{width:180px}.demo-strip .select-trigger{height:32px;font-size:12px}.demo-strip .select-options{z-index:40}.filters>label{position:relative}.filters>label:focus-within{z-index:25}.field:focus-within{position:relative;z-index:25}.select-trigger:focus-visible{outline:2px solid #df8a46;outline-offset:2px;box-shadow:0 0 0 4px #f47b2010}@media(max-width:760px){.filters>label:nth-child(odd) .select-options{left:auto;right:0}.field .select-trigger{height:46px;font-size:16px}}

/* Focus sobrio per i campi di immissione: un solo bordo, senza anello. */
.search:focus-within{outline:none;box-shadow:none;border-color:#e5aa79;background-color:#fff4ea}
.search input:focus,.search input:focus-visible{outline:none;box-shadow:none}
.field input:not([readonly]):not(:disabled):focus,.field input:not([readonly]):not(:disabled):focus-visible,.field textarea:not([readonly]):focus,.field textarea:not([readonly]):focus-visible{outline:none;box-shadow:none;border-color:#e5aa79;background-color:#fff4ea}

.calendar-control{display:block;position:relative;width:100%;min-width:0}.calendar-control input{padding-right:42px}.calendar-control input::-webkit-calendar-picker-indicator{display:none}.calendar-trigger{position:absolute;right:4px;top:3px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:5px;color:#687e8a}.calendar-trigger .icon{width:17px;height:17px}.calendar-trigger:hover:not(:disabled){background:#ffead8;color:#ac591c}.calendar-trigger:disabled{color:#9eabb3}.calendar-popover{display:block;position:absolute;top:calc(100% + 7px);left:0;width:290px;max-width:calc(100vw - 36px);padding:12px;background:white;border:1px solid #dce2e5;border-radius:10px;box-shadow:0 8px 28px #20374422;z-index:30}.calendar-popover[hidden]{display:none}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.calendar-heading button{min-height:34px;min-width:34px;border-radius:6px;font-size:23px}.calendar-heading .calendar-caption{font-size:14px;font-weight:600;text-transform:capitalize}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-grid button{height:34px;font-size:13px;border-radius:6px}.calendar-weekday{text-align:center;font-size:11px;color:#7d8b94;padding:4px 0 8px}.calendar-grid button[aria-pressed=true]{background:#fff0e2;color:#a34e0d;font-weight:700;box-shadow:inset 0 0 0 1px #e7a674}.calendar-grid button[aria-current=date]{text-decoration:underline;text-underline-offset:5px}.calendar-popover button:hover{background:#fff4ea;color:#a34e0d}.calendar-popover button:focus-visible{outline:2px solid #df8a46;outline-offset:0}.calendar-footer{display:flex;justify-content:space-between;border-top:1px solid #edf0f2;margin-top:10px;padding-top:8px}.calendar-footer button{font-size:12px;color:#9a571e;padding:7px 9px;border-radius:5px}.month-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.month-grid button{height:42px;text-transform:capitalize}@media(min-width:761px){.fields>.field:nth-child(even) .calendar-popover{left:auto;right:0}}@media(max-width:760px){.calendar-trigger{top:6px}.calendar-grid button{height:36px}}

.time-popover{width:240px}.time-title{display:block;font-size:13px;font-weight:600;color:#405763;margin:3px 5px 12px}.time-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.time-column{display:block;min-width:0}.time-label{display:block;text-align:center;font-size:11px;color:#71828d;margin-bottom:7px}.time-values{display:block;position:relative;max-height:178px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;border:1px solid #edf0f2;border-radius:7px;padding:4px}.time-values button{display:block;width:100%;min-height:35px;border-radius:5px;font-size:14px;font-variant-numeric:tabular-nums}.time-values button[aria-pressed=true]{background:#fff0e2;color:#a34e0d;font-weight:600}.calendar-footer .time-confirm{background:#fff0e2;color:#9a4d12;font-weight:600}.calendar-footer .time-confirm:disabled{background:#f3f5f6;color:#9aa7ae;cursor:default}

.time-slots{display:grid;position:relative;grid-template-columns:1fr 1fr;gap:5px;max-height:225px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:3px}.time-slots button{min-height:37px;border-radius:6px;font-size:14px;font-variant-numeric:tabular-nums}.time-slots button[aria-pressed=true]{background:#fff0e2;color:#a34e0d;font-weight:600}

/* Intestazione dettaglio leggibile e metadati sulla stessa riga. */
.back-link{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 12px;margin:0 0 18px;background:white;border:1px solid #ccd7dd;border-radius:7px;color:#3b5360;font-size:13px;font-weight:550}.back-link:hover{background:#fff4ea;border-color:#e5aa79;color:#98521c}.back-link .icon{width:17px;height:17px}.detail-meta{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-top:10px}.detail-location{display:inline-flex;align-items:center;flex-wrap:wrap;gap:7px;color:#607580;font-size:13px}.detail-location .icon{width:15px;height:15px}.detail-meta .detail-status{display:flex;align-items:center;gap:10px;margin:0}.detail-heading h1{margin-top:0}

/* Stato del progetto: colore semantico e gerarchia distinta. */
.project-state-control{--status-bg:#fff2e6;--status-border:#ddb58f;--status-ink:#965019}.project-state-control.state-scheduled{--status-bg:#edf3fc;--status-border:#9dbbdf;--status-ink:#376396}.project-state-control.state-installed{--status-bg:#e8f4ed;--status-border:#92bea5;--status-ink:#277252}.project-state-control.state-churn{--status-bg:#fbecec;--status-border:#dba1a1;--status-ink:#a44242}.project-state-control.state-prechurn{--status-bg:#f6ecdb;--status-border:#d7b27d;--status-ink:#8a5b24}.project-state-control.state-stalled{--status-bg:#eef0f2;--status-border:#a9afbf;--status-ink:#5f677a}.project-state-field>span:first-child{font-weight:650;color:#3f535e}.field .project-state-control>.select-trigger,.field .project-state-control>.select-trigger:disabled{background:var(--status-bg);border:1px solid var(--status-border);border-left:4px solid var(--status-ink);color:var(--status-ink);font-weight:650;opacity:1}.project-state-control>.select-trigger>span{display:flex;align-items:center;gap:8px}.project-state-control>.select-trigger>span:before{content:'';display:block;width:6px;height:6px;flex-shrink:0;border-radius:50%;background:currentColor}.field .project-state-control>.select-trigger:hover:not(:disabled){box-shadow:0 2px 8px #2037440c;filter:brightness(.98)}

/* Colonne del dettaglio allineate in alto e in basso. */
@media(min-width:761px){.information-layout{align-items:stretch;grid-template-rows:auto auto}.information-layout>.advancement{grid-row:1/3;align-self:stretch;display:flex;flex-direction:column}.information-layout>.advancement>.advancement-row{flex:1}.information-layout .detail-main>.panel{align-self:stretch}.information-layout .field-hint:empty{display:none}}

.advancement-heading{align-items:center;justify-content:flex-start;gap:12px}.advancement-heading>.section-icon{flex-shrink:0}.advancement-heading>.section-icon>.icon{width:20px;height:20px;margin:0;color:inherit}

/* La scheda ha già il proprio padding: niente doppio spazio sopra il titolo. */
.information-layout>.advancement>.advancement-heading{padding-top:0}

.information-layout>.advancement{padding:20px}

/* Mobile: reset accanto a Ordina, senza una riga isolata. */
@media(max-width:760px){.projects-section>.filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 43px}.projects-section>.filters>.search{grid-column:1/-1}.projects-section>.filters>label:nth-child(2){grid-column:1;grid-row:2}.projects-section>.filters>label:nth-child(3){grid-column:2/4;grid-row:2}.projects-section>.filters>label:nth-child(4){grid-column:1;grid-row:3}.projects-section>.filters>.sort-control{grid-column:2;grid-row:3}.projects-section>.filters>.filter-reset{grid-column:3;grid-row:3;justify-self:stretch}}
/* Dashboard demo */
.dash-toolbar{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:14px;align-items:end;margin:26px 0}.dash-toolbar .field>span{font-size:12px}.dash-toolbar input{height:43px}.dash-month-heading{display:flex;justify-content:space-between;align-items:center;margin:26px 0 14px;gap:12px}.dash-month-heading h2{font-size:21px;text-transform:capitalize}.dash-month-heading>span{font-size:13px;color:#60727d}.dash-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dash-kpi{background:white;border:1px solid #dce4e8;border-top:3px solid currentColor;border-radius:10px;padding:20px;text-align:left;display:flex;flex-direction:column;gap:8px;transition:box-shadow .18s}.dash-actual{color:#277252}.dash-planned{color:#376396}.dash-forecast{color:#aa5d1d}.dash-kpi>span:first-child{font-size:14px;font-weight:600}.dash-kpi>strong{font-size:39px;line-height:1.2}.dash-kpi small{font-size:12px;color:#6c7e88}.dash-link{font-size:12px;margin-top:6px}.dash-kpi:hover,.dash-kpi[aria-pressed=true]{box-shadow:0 4px 18px #263c4512;border-color:currentColor}.dash-charts{display:grid;grid-template-columns:1.35fr 1fr;gap:20px;margin-top:22px}.dash-panel-heading h2{font-size:17px;font-weight:600}.dash-panel-heading p{font-size:12px;color:#6c7e88;margin-top:5px}.dash-legend{display:flex;gap:15px;flex-wrap:wrap;font-size:11px;margin:20px 0}.dash-legend i{display:inline-block;width:8px;height:8px;background:currentColor;border-radius:2px;margin-right:5px}.dash-bar-row{display:grid;grid-template-columns:125px minmax(0,1fr) 25px;gap:14px;align-items:center;width:100%;padding:13px 8px;border-radius:6px;font-size:12px;text-align:left}.dash-bar-row.selected,.dash-bar-row:hover,.dash-team-row:hover{background:#f1f5f7}.dash-bar-row svg,.dash-team-row svg{width:100%;height:18px;background:#f0f3f5;border-radius:4px}.dash-fill-actual{fill:#4c9375}.dash-fill-planned{fill:#80a9d1}.dash-fill-forecast{fill:#e2a265}.dash-team-bars{margin-top:20px}.dash-team-row{display:grid;grid-template-columns:1fr auto;gap:10px;width:100%;text-align:left;font-size:13px;padding:13px 8px;border-radius:6px}.dash-team-row svg{grid-column:1/-1}.dash-attention{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.dash-attention>button{display:flex;align-items:center;gap:16px;text-align:left;border:1px solid #dce4e8;background:#edf1f3;border-radius:9px;padding:17px 20px}.dash-attention strong{font-size:25px;color:#5b6e79}.dash-attention span{font-size:13px;font-weight:600}.dash-attention small{display:block;font-size:11px;font-weight:400;color:#6c7e88;margin-top:4px}.dash-attention b{margin-left:auto}.dash-results .dash-panel-heading{display:flex;justify-content:space-between;gap:15px;align-items:center}.dash-project-list{margin-top:16px}.dash-project-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;align-items:center;gap:14px;padding:16px 8px;border-top:1px solid #e5ebee;font-size:12px}.dash-project-row:hover{background:#fff6ee}.dash-project-name small{display:block;color:#71828c;margin-bottom:4px}.dash-project-name strong{font-size:14px;overflow-wrap:anywhere}.dash-footnote{font-size:12px;color:#6c7e88;margin-top:20px;line-height:1.7}.dash-empty{padding:30px 0;color:#6c7e88;font-size:14px}@media(max-width:1000px){.dash-charts{grid-template-columns:1fr}.dash-project-row{grid-template-columns:2fr 1fr 1fr}.dash-toolbar{grid-template-columns:1fr 1fr}}@media(max-width:760px){.dash-kpis{gap:10px}.dash-kpi{padding:12px}.dash-kpi>strong{font-size:30px}.dash-kpi>span:first-child{font-size:12px}.dash-kpi small{font-size:11px}.dash-month-heading{align-items:flex-start;flex-direction:column}.dash-attention{grid-template-columns:1fr;gap:10px}.dash-bar-row{grid-template-columns:90px minmax(0,1fr) 20px;gap:8px;font-size:11px}.dash-project-row{grid-template-columns:1fr 1fr}.dash-project-name{grid-column:1/-1}.dash-results .dash-panel-heading{align-items:flex-start;flex-direction:column}.dash-toolbar{gap:12px}.dash-kpis{grid-template-columns:1fr}.dash-kpi{display:grid;grid-template-columns:1fr auto}.dash-kpi>strong{grid-column:2;grid-row:1/4}.dash-kpi small,.dash-link{grid-column:1}.dash-footnote{font-size:11px}}
.fiscal-section,.fiscal-target{margin:24px 0}.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.portfolio-stat{text-align:left;display:flex;flex-direction:column;gap:8px;padding:16px;background:white;border:1px solid #dce4e8;border-radius:9px}.portfolio-stat>span{font-size:12px;color:#627783}.portfolio-stat strong{font-size:26px}.portfolio-stat small{font-size:11px;color:#75858e}.portfolio-stat:hover{border-color:#d6a577;background:#fffbf7}.tone-installed strong{color:#277252}.tone-churn strong{color:#a44242}.tone-backlog strong{color:#376396}.tone-pre strong,.tone-missing strong{color:#9c642c}.fiscal-target-stats{display:flex;flex-wrap:wrap;gap:25px;margin:20px 0}.fiscal-target-stats>span{font-size:12px;color:#647984;flex:1;min-width:110px}.fiscal-target-stats strong{display:block;font-size:22px;color:#304955;margin-top:7px}.fiscal-compare{display:flex;flex-direction:column;gap:8px;min-width:0}.fiscal-compare>span{font-size:12px;font-weight:600}.fiscal-compare svg{width:100%;height:64px;background:linear-gradient(#f5f7f8 1px,transparent 1px);border-radius:3px}.fiscal-compare small{font-size:10px;color:#6f8089}.fiscal-target>.fiscal-compare{max-width:600px;margin:20px 0}.fiscal-fill-target{fill:#aab5bd}.fiscal-target-color{color:#7a8994}.target-editor{margin-top:20px;border-top:1px solid #e3e9ec;padding-top:16px}.target-editor summary{font-size:13px;color:#98501b;cursor:pointer}.target-editor p{font-size:12px;margin:12px 0;color:#687d89}.target-fields{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}.target-fields label{font-size:12px;color:#526874}.target-fields input{display:block;width:100%;padding:9px;border:1px solid #d7e0e5;border-radius:6px;margin-top:6px;background:white}.quarter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.quarter-card{display:flex;flex-direction:column;gap:12px;text-align:left;padding:17px;border:1px solid #dbe4e8;background:white;border-radius:9px;font-size:12px}.quarter-card.selected{background:#fff4ea;border-color:#e6b58d}.quarter-card>strong{font-size:25px}.quarter-card small{font-size:11px;color:#6c808c;font-weight:400}.quarter-card>span:first-child small{display:block;margin-top:4px}.annual-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.annual-month{text-align:left;padding:12px 8px;border:1px solid #e7ecef;border-radius:7px}.annual-month.selected{border-color:#e6b58d;background:#fff7f0}.fiscal-table-wrap{overflow:auto;margin-top:20px}.fiscal-table{border-collapse:collapse;width:100%;font-size:12px}.fiscal-table th,.fiscal-table td{padding:12px 10px;border-bottom:1px solid #e5ebee;text-align:right;white-space:nowrap}.fiscal-table th:first-child{text-align:left}.fiscal-table thead th{color:#667d89;font-weight:500;background:#f7f9fa}.fiscal-table tfoot{background:#f1f5f7;font-weight:600}.fiscal-number{color:#3c6583;padding:5px 8px;border-radius:5px;text-decoration:underline;text-underline-offset:3px;font-weight:600}.fiscal-number:hover{background:#fff0e4;color:#9c541f}@media(max-width:1100px){.annual-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.target-fields{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.portfolio-grid,.quarter-grid,.annual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.target-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.fiscal-target-stats{gap:16px}.fiscal-target-stats strong{font-size:19px}.fiscal-section>.dash-panel-heading h2{font-size:17px}.portfolio-stat{padding:12px}.portfolio-stat strong{font-size:23px}}

.dash-title-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.dash-view-switch{display:flex;gap:4px;padding:4px;border:1px solid #dce4e8;border-radius:10px;background:#eaf0f3}.dash-view-switch button{padding:8px 20px;border-radius:7px;color:#617480;font-size:13px;transition:background .18s,color .18s,box-shadow .18s}.dash-view-switch button[aria-pressed=true]{background:#fff3e7;color:#a25216;box-shadow:0 1px 5px #20374415}.dash-month-nav{display:flex;align-items:end;gap:7px;min-width:0}.dash-month-nav .field{min-width:0;flex:1}.dash-month-nav>button{padding:0;min-width:30px;height:43px;font-size:23px}.dash-fy-label{display:flex;flex-direction:column;gap:10px;font-size:12px;color:#617480}.dash-fy-label strong{font-size:15px;color:#344b58}.dash-distribution{margin:24px 0}.dash-toolbar{grid-template-columns:minmax(280px,1.3fr) 1fr 1fr auto}@media(max-width:1000px){.dash-toolbar{grid-template-columns:1fr 1fr}.dash-month-nav,.dash-fy-label{grid-column:1/-1}}@media(max-width:760px){.dash-title-row{gap:14px}.dash-view-switch button{padding:8px 15px}}

.fy-chart-scroll{overflow-x:auto;padding-top:22px}.fy-chart{display:grid;grid-template-columns:repeat(12,minmax(56px,1fr));min-width:720px;gap:10px}.fy-chart-month{display:flex;flex-direction:column;gap:12px;min-width:0;text-align:center}.fy-bars{height:210px;display:flex;align-items:flex-end;gap:3px;border-bottom:1px solid #dce4e8;background:repeating-linear-gradient(to top,transparent 0,transparent 68px,#edf1f4 69px,#edf1f4 70px)}.fy-bar{display:block;position:relative;flex:1;min-height:1px;border-radius:4px 4px 0 0}.fy-bar small{position:absolute;bottom:calc(100% + 5px);left:50%;transform:translateX(-50%);font-size:9px;color:#617480}.fy-target{background:#c8cdd3}.fy-forecast{background:linear-gradient(#59bd79,#a7dfb9)}.fy-actual{background:linear-gradient(#f47b20,#ffc296)}.fy-month-label{font-size:12px;color:#74838e;text-transform:capitalize}.fy-chart-month.selected .fy-month-label{color:#c25d11;font-weight:700}.fy-chart-month:hover{background:#fff7f0}.fy-chart-month:focus-visible{outline:2px solid #df8a46;outline-offset:2px}.fy-chart-scroll+.dash-footnote{margin-top:20px}

.fy-legend-actual{color:#df6a16}.fy-legend-forecast{color:#3f9c5d}

.fy-bars{display:block;width:100%;height:235px}.fy-bars text{font-size:9px;fill:#617480}.fy-fill-target{fill:#c8cdd3}.fy-fill-forecast{fill:#69c187}.fy-fill-actual{fill:#f47b20}.dash-kpis+.panel{margin-top:24px}

/* Dashboard analitica: colori comuni a mese, FY e quarter. */
.analytics-panel{margin:24px 0}.analytics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.analytics-stat{padding:15px;background:#f6f8fa;border-radius:8px;display:flex;flex-direction:column;gap:12px;min-width:0}.analytics-stat>span{font-size:12px;color:#607480}.analytics-stat strong{font-size:28px;font-variant-numeric:tabular-nums}.stat-green strong{color:#287a50}.stat-blue strong{color:#3676b7}.stat-red strong{color:#bd5050}.stat-amber strong{color:#a67526}.analytics-comparison{width:100%;max-width:500px;height:120px;display:block;margin:16px 0}.analytics-comparison text{font-size:12px;fill:#536975}.quarter-card .analytics-comparison{height:95px;margin:4px 0}.fy-fill-actual{fill:#58ae7e}.fy-fill-forecast{fill:#609ada}.fy-fill-target{fill:#d87676}.fy-legend-actual{color:#32865a}.fy-legend-forecast{color:#437fbf}.fiscal-target-color{color:#c46161}.fy-chart-month:hover{background:transparent}.quarter-card,.analytics-stat{cursor:default}.annual-stats{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:760px){.analytics-grid,.annual-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.analytics-stat{padding:12px}.analytics-stat strong{font-size:24px}}
/* Analytics redesign: compact summary, a clear chart canvas and aligned panels. */
.dashboard-design{--dash-green:#29976b;--dash-blue:#488bea;--dash-red:#df7379;animation:analytics-enter .25s ease-out}
.dashboard-design .page-heading{margin-bottom:16px}.dashboard-design .dash-title-row h1{font-size:32px;letter-spacing:-1.2px;margin:0}.dashboard-design .dash-title-row{gap:20px}.dashboard-design .dash-view-switch{border:0;background:#e6ecef;padding:3px;border-radius:9px}.dashboard-design .dash-view-switch button{padding:7px 20px;font-weight:550}.dashboard-design .dash-view-switch button[aria-pressed=true]{background:#fff;color:#b75c19;box-shadow:0 2px 6px #20374413}
.dashboard-design .dash-toolbar{margin:0 0 22px;grid-template-columns:minmax(245px,1fr) 200px 180px 38px;gap:12px;align-items:end}.dashboard-design .dash-toolbar .field>span{font-size:11px}.dashboard-design .dash-toolbar .field input,.dashboard-design .dash-toolbar .select-trigger{height:38px;font-size:13px}.dashboard-design .dash-month-nav>button{height:38px;min-width:30px}.dashboard-design .dash-reset-compact{height:38px;padding:0;font-size:23px;color:#6c818c}.dashboard-design .dash-fy-label{gap:5px}.dashboard-design .dash-fy-label strong{font-size:14px}
.dashboard-design .analytics-panel{padding:20px 22px;margin:0;border:1px solid #e1e7eb;border-radius:14px;background:#fff;box-shadow:0 3px 14px #20374404;min-width:0}.dashboard-design .dash-panel-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.dashboard-design .dash-panel-heading h2{font-size:15px;letter-spacing:-.25px}.dashboard-design .dash-panel-heading p{font-size:11px;margin:0;color:#80909b}
.dashboard-design>.analytics-panel:first-of-type{background:transparent;border:0;box-shadow:none;padding:0;margin-bottom:20px}.dashboard-design .analytics-grid{gap:0;margin:18px 0}.dashboard-design .analytics-stat{background:none;border-radius:0;padding:0 18px;border-left:1px solid #e6ebef;gap:7px}.dashboard-design .analytics-stat:first-child{border-left:0;padding-left:0}.dashboard-design .analytics-stat>span{font-size:11px;line-height:1.35}.dashboard-design .analytics-stat strong{font-size:29px;letter-spacing:-1px;font-weight:600;line-height:1.1}.dashboard-design .stat-green strong{color:var(--dash-green)}.dashboard-design .stat-blue strong{color:var(--dash-blue)}.dashboard-design .stat-red strong{color:#c8636a}.dashboard-design .annual-stats{grid-template-columns:repeat(8,minmax(0,1fr));padding:18px 20px;margin:12px 0 0;background:white;border:1px solid #e1e7eb;border-radius:12px}.dashboard-design .annual-stats .analytics-stat{padding:0 12px}.dashboard-design .annual-stats .analytics-stat:first-child{padding-left:0}.dashboard-design .annual-stats .analytics-stat strong{font-size:25px}
.dashboard-design .annual-analysis-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:16px;margin-bottom:18px;align-items:stretch}.dashboard-design .annual-analysis-layout>.analytics-panel:first-child .analytics-grid{margin:22px 0 18px}.dashboard-design .annual-analysis-layout>.analytics-panel:first-child .analytics-stat strong{font-size:25px}.dashboard-design .dash-legend{gap:14px;font-size:10px;margin:16px 0 8px}.dashboard-design .fy-chart-scroll{padding:15px 0 0;overflow-x:auto}.dashboard-design .fy-chart{min-width:570px;gap:10px}.dashboard-design .fy-bars{height:200px;border:0;background:none}.dashboard-design .fy-bars text{font-size:10px;fill:#7a8d98}.dashboard-design .fy-chart-month{position:relative;gap:7px;border-radius:6px;transition:background .18s}.dashboard-design .fy-chart-month:hover,.dashboard-design .fy-chart-month:focus-visible{background:#f3f6f9;outline:none}.dashboard-design .fy-chart-month:focus-visible{box-shadow:inset 0 0 0 2px #c1d1dc}.dashboard-design .fy-month-label{font-size:11px}.dashboard-design .fy-chart-month.selected{background:#fff6ee}.dashboard-design .fy-fill-actual{fill:var(--dash-green)}.dashboard-design .fy-fill-forecast{fill:var(--dash-blue)}.dashboard-design .fy-fill-target{fill:var(--dash-red)}.dashboard-design .fy-legend-actual{color:var(--dash-green)}.dashboard-design .fy-legend-forecast{color:var(--dash-blue)}.dashboard-design .fiscal-target-color{color:#c8636a}.chart-tooltip{display:none;position:absolute;z-index:2;top:0;left:50%;transform:translateX(-50%);width:165px;padding:9px 11px;background:#243d4b;color:white;font-size:11px;line-height:1.6;border-radius:8px;box-shadow:0 4px 16px #17304024;pointer-events:none}.fy-chart-month:hover .chart-tooltip,.fy-chart-month:focus-visible .chart-tooltip{display:block}.fy-chart-month:first-child .chart-tooltip{left:0;transform:none}.fy-chart-month:last-child .chart-tooltip{left:auto;right:0;transform:none}
.dashboard-design .quarter-grid{display:flex;flex-direction:column;gap:0;margin:6px 0 0}.dashboard-design .quarter-card{display:grid;grid-template-columns:1fr auto;column-gap:12px;row-gap:5px;border:0;border-bottom:1px solid #ecf0f3;border-radius:0;padding:12px 0;background:none}.dashboard-design .quarter-card:last-child{border-bottom:0;padding-bottom:0}.dashboard-design .quarter-card>span:first-child{font-size:12px;font-weight:650}.dashboard-design .quarter-card>span:first-child small{font-size:10px;font-weight:400}.dashboard-design .quarter-card>strong{grid-column:2;grid-row:1;font-size:21px;letter-spacing:-.5px;text-align:right;align-self:center}.dashboard-design .quarter-card>strong small{display:block;font-size:10px;letter-spacing:0}.dashboard-design .quarter-card.selected>strong{color:#b15a1b}.dashboard-design .quarter-card .comparison-rows{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:4px 0 0}.dashboard-design .quarter-card .comparison-row>span{display:none}.dashboard-design .quarter-card .comparison-row{gap:4px}.dashboard-design .quarter-card .comparison-row>b{font-size:11px;text-align:left}.dashboard-design .quarter-card .comparison-row svg{height:4px}
.comparison-rows{display:flex;flex-direction:column;gap:18px;margin-top:20px}.comparison-row{display:grid;grid-template-columns:1fr auto;gap:8px;font-size:12px;color:#647e8b}.comparison-row>b{font-size:14px;color:#2c4654}.comparison-row svg{grid-column:1/-1;width:100%;height:7px}.dashboard-design .month-metrics{background:#fff;border:1px solid #e1e7eb;border-radius:13px;padding:20px 24px;margin:0 0 18px}.dashboard-design .month-metrics .analytics-stat strong{font-size:34px}.monthly-analysis-layout{display:grid;grid-template-columns:minmax(290px,.85fr) minmax(0,1.4fr);gap:18px;margin-bottom:18px}.month-goal-body{display:flex;align-items:center;gap:24px;margin:20px 0 8px}.target-ring{width:132px;height:132px;position:relative;flex-shrink:0}.target-ring svg{width:100%;height:100%}.target-ring>div{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px}.target-ring strong{font-size:27px;letter-spacing:-1px;color:#277b59}.target-ring span{font-size:10px;color:#83958e}.month-goal-copy>strong{font-size:19px;letter-spacing:-.6px;color:#2d4855}.month-goal-copy p{font-size:12px;color:#7c909b;line-height:1.65;margin-top:7px;max-width:180px}.dashboard-design .monthly-analysis-layout .comparison-rows{margin:18px 0 6px;gap:15px}
.dashboard-design .fiscal-table-wrap{margin-top:17px}.dashboard-design .fiscal-table{font-size:12px}.dashboard-design .fiscal-table th,.dashboard-design .fiscal-table td{padding:14px 12px}.dashboard-design .fiscal-table thead th{font-size:10px;font-weight:500;background:#f8fafb;color:#80919c}.dashboard-design .fiscal-table tbody th{font-weight:500;color:#3f5967}.dashboard-design .fiscal-table tbody tr:hover{background:#f8fafc}.dashboard-design .fiscal-table td{font-variant-numeric:tabular-nums;font-weight:550;color:#425f70}.dashboard-design .fiscal-table tfoot{background:#f0f5f7}.dashboard-design .monthly-analysis-layout .fiscal-table td{font-size:16px;font-weight:550}.dashboard-design .monthly-analysis-layout .fiscal-table tbody td:first-of-type{color:var(--dash-green)}.dashboard-design .monthly-analysis-layout .fiscal-table tbody td:nth-of-type(2){color:var(--dash-blue)}.dashboard-design .dash-footnote{font-size:10px;line-height:1.6;margin-top:12px;color:#8a9aa4}.analytics-method{margin-top:16px;font-size:11px;color:#7b909c}.analytics-method summary{cursor:pointer}.dashboard-design .target-editor{border:0;margin:12px 0 0;padding:0;font-size:11px}.dashboard-design .target-editor summary{font-size:11px;color:#9c775b}.dashboard-design .target-editor[open]{background:white;padding:16px;border-radius:10px;border:1px solid #e2e8eb}
@keyframes analytics-enter{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.dashboard-design{animation:none}.dashboard-design *{transition:none!important}}
@media(max-width:1200px){.dashboard-design .annual-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 0}.dashboard-design .annual-stats .analytics-stat:nth-child(5){border-left:0;padding-left:0}.dashboard-design .annual-analysis-layout{grid-template-columns:minmax(0,1fr) 235px}.dashboard-design .analytics-panel{padding:18px}.dashboard-design .dash-toolbar{grid-template-columns:minmax(225px,1fr) 160px 150px 38px}.month-goal-body{gap:12px}.target-ring{width:112px;height:112px}.dashboard-design .analytics-stat{padding:0 12px}}
@media(max-width:1000px){.dashboard-design .annual-analysis-layout{grid-template-columns:1fr}.dashboard-design .quarter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.dashboard-design .quarter-card{border-bottom:0;padding:10px 0}.monthly-analysis-layout{grid-template-columns:1fr}.month-goal-body{justify-content:flex-start}.dashboard-design .dash-toolbar{grid-template-columns:1fr 1fr 38px}.dashboard-design .dash-month-nav,.dashboard-design .dash-fy-label{grid-column:1/-1}.dashboard-design .dash-toolbar>label{grid-row:2}.dashboard-design .dash-reset-compact{grid-column:3;grid-row:2}}
@media(max-width:600px){.dashboard-design .dash-title-row h1{font-size:28px}.dashboard-design .dash-title-row{gap:12px;flex-wrap:nowrap;justify-content:space-between}.dashboard-design .dash-view-switch button{padding:7px 14px}.dashboard-design .annual-stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:15px;gap:17px 0}.dashboard-design .annual-stats .analytics-stat:nth-child(odd){border-left:0;padding-left:0}.dashboard-design .analytics-grid{grid-template-columns:1fr 1fr;gap:18px 0}.dashboard-design .analytics-stat:nth-child(odd){border-left:0;padding-left:0}.dashboard-design .month-metrics{padding:18px}.dashboard-design .month-metrics .analytics-stat strong{font-size:29px}.dashboard-design .quarter-grid{grid-template-columns:1fr 1fr;gap:12px 20px}.dashboard-design .dash-panel-heading{gap:5px}.dashboard-design .fiscal-table th,.dashboard-design .fiscal-table td{padding:12px 10px}.dashboard-design .monthly-analysis-layout .fiscal-table td{font-size:14px}.dashboard-design .fy-bars{height:175px}}

.dashboard-design .annual-stats .analytics-stat>span{min-height:29px}.dashboard-design .analytics-stat strong{transition:color .18s}.dashboard-design .fiscal-table-wrap{scrollbar-width:thin}.dashboard-design .ring-value{animation:ring-reveal .6s ease-out}@keyframes ring-reveal{from{stroke-dasharray:0 320.44}}@media(prefers-reduced-motion:reduce){.dashboard-design .ring-value{animation:none}}

.installation-warning{padding:12px 16px;margin:16px 0;border:1px solid #e8c5a4;border-radius:9px;background:#fff6ed;color:#895725;font-size:13px;line-height:1.5}

.calendar-grid button:disabled{opacity:.3;cursor:not-allowed;background:transparent;color:#7b8b95}

/* Identità Implementation Management, compatta anche nella navigazione ridotta. */
.brand{padding-bottom:26px;gap:8px}
.brand-name{font-size:21px;font-weight:700;line-height:1.18;letter-spacing:-.65px;color:#e1e7ea}
.brand-monogram{display:none;font-size:25px;font-weight:750;letter-spacing:-1px;color:#e1e7ea}
@media(min-width:761px){.collapsed .brand{padding:0 0 26px;justify-content:center}.collapsed .brand-name{display:none}.collapsed .brand-monogram{display:block}}
