/* BudGet 2027 · Studio 7. Scoped styles: also usable after authenticated cloud mount. */
:root{color-scheme:light;--u-ink:#182f3e;--u-sub:#526979;--u-muted:#627784;--u-brand:#145c60;--u-brand-dark:#11474d;--u-blue:#286185;--u-bg:#f3f6f7;--u-line:#dce5e9;--u-green:#08704d;--u-red:#b03040;--u-amber:#855619;--u-soft:#eaf3f2;--u-radius:14px}
body.ux7-body{margin:0;background:var(--u-bg);color:var(--u-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;line-height:1.5;color-scheme:light}
.ux7 *, .ux7 *::before,.ux7 *::after{box-sizing:border-box}.ux7 button,.ux7 input,.ux7 select,.ux7 textarea{font:inherit;color:var(--u-ink)}.ux7 input,.ux7 select,.ux7 textarea{background:#fff;color:var(--u-ink);border:1px solid #afc3cc;border-radius:8px;padding:10px 12px;max-width:100%}.ux7 input::placeholder,.ux7 textarea::placeholder{color:#627582;opacity:1}.ux7 button{cursor:pointer;background:#fff;border:1px solid #bcced6;border-radius:8px;padding:9px 14px;font-weight:650;min-height:38px;line-height:1.4}.ux7 button:hover{background:#edf4f5;border-color:#8dabba}.ux7 button.primary{color:#fff;background:var(--u-brand);border-color:var(--u-brand)}.ux7 button.primary:hover{background:var(--u-brand-dark)}.ux7 button.quiet{background:transparent;border-color:transparent;color:var(--u-sub);font-weight:550}.ux7 button.danger{color:var(--u-red)}.ux7 button:disabled{cursor:not-allowed;opacity:.55}.ux7 :focus-visible{outline:3px solid #3c8594;outline-offset:3px}.ux7 [hidden]{display:none!important}.ux7 svg{display:block;max-width:100%}.ux7 .ico{width:19px;height:19px;flex-shrink:0;vertical-align:middle}.ux7 .pos{color:var(--u-green)}.ux7 .neg{color:var(--u-red)}.ux7 .warn{color:var(--u-amber)}.ux7 .muted{color:var(--u-sub)}.ux7 .numeric{font-variant-numeric:tabular-nums;font-feature-settings:'tnum';white-space:nowrap}.ux7 small{font-size:12px}.ux7 .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.ux7 .sidebar{position:fixed;inset:0 auto 0 0;width:222px;background:#fff;border-right:1px solid var(--u-line);z-index:45;display:flex;flex-direction:column;padding:26px 16px 16px;overflow:auto}.ux7 .logo{display:flex;gap:11px;align-items:center;padding:0 12px 26px}.ux7 .monogram{display:grid;place-items:center;border-radius:10px;background:var(--u-brand);color:#fff;width:38px;height:40px;font-weight:800;font-size:22px}.ux7 .logo strong{display:block;font-size:23px;letter-spacing:-1px}.ux7 .logo small{display:block;letter-spacing:1.8px;font-size:9px;color:var(--u-sub);font-weight:700}.ux7 .nav-label{font-size:10px;letter-spacing:1.5px;font-weight:750;color:#647885;margin:17px 13px 8px}.ux7 .nav-button{display:flex;align-items:center;gap:12px;text-align:left;min-height:43px;width:100%;margin:3px 0;border:0;color:#49606e;background:transparent;padding:10px 12px;font-size:13px;font-weight:580}.ux7 .nav-button[aria-current=page]{background:var(--u-soft);color:var(--u-brand-dark);font-weight:750}.ux7 .nav-button .pill{margin-left:auto;font-size:10px;padding:2px 6px;background:#fff;border-radius:5px}.ux7 .side-bottom{margin-top:auto;padding:23px 8px 2px}.ux7 .environment{font-size:11px;color:var(--u-sub);background:#f4f7f8;padding:12px;border-radius:9px}.ux7 .environment strong{display:block;color:var(--u-ink);font-size:12px;margin-bottom:3px}.ux7 .side-bottom label{display:flex;align-items:center;justify-content:space-between;margin:15px 4px 0;font-size:12px}.ux7 .side-bottom select{padding:5px 7px;width:70px}.ux7 .main{margin-left:222px;min-width:0;width:auto}.ux7 .app-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 30px;border-bottom:1px solid var(--u-line);background:#fff;min-height:69px;flex-wrap:wrap}.ux7 .top-version{display:flex;align-items:center;gap:10px;min-width:0}.ux7 .top-version select{max-width:310px;border:0;background:#f3f6f7;font-weight:650;font-size:13px;padding:8px 12px}.ux7 .top-actions{display:flex;align-items:center;gap:7px}.ux7 .top-actions button{font-size:12px;min-height:34px;padding:7px 10px}.ux7 .save-status{font-size:11px;color:var(--u-green);padding-right:8px;max-width:220px}.ux7 .avatar{width:28px;height:28px;display:grid;place-items:center;border-radius:100%;background:#eaf1f4;color:#31556a;font-weight:750;font-size:11px}.ux7 .mobile-menu{display:none}.ux7 .reference-bar{position:sticky;top:var(--ux-offset,0px);z-index:25;background:#fdfefe;border-bottom:1px solid #cedde4;display:grid;grid-template-columns:1fr 1.1fr 1fr 1.2fr;padding:14px 30px;gap:18px;box-shadow:0 4px 12px #19354606}.ux7 .ref-item{min-width:0;border-right:1px solid var(--u-line);padding-right:16px}.ux7 .ref-item:last-child{border:0}.ux7 .ref-item span{font-size:10px;font-weight:750;letter-spacing:.7px;color:var(--u-sub);text-transform:uppercase;display:block}.ux7 .ref-item strong{font-size:clamp(17px,1.6vw,25px);display:block;letter-spacing:-.65px;font-variant-numeric:tabular-nums;font-feature-settings:'tnum';line-height:1.6;white-space:nowrap}.ux7 .ref-item small{display:block;font-size:10px;color:var(--u-sub);white-space:normal;line-height:1.4}.ux7 .ref-item.emphasis strong{color:var(--u-brand-dark)}.ux7 .content{padding:28px 30px 65px;max-width:1530px;margin:0 auto}.ux7 .page-head{display:flex;gap:15px;align-items:flex-end;justify-content:space-between;margin-bottom:23px}.ux7 .eyebrow{font-size:10px;letter-spacing:1.7px;color:var(--u-brand);font-weight:750;margin:0 0 6px;text-transform:uppercase}.ux7 h1{font-size:28px;font-weight:720;line-height:1.2;letter-spacing:-.85px;margin:0 0 8px}.ux7 .page-head p{margin:0;color:var(--u-sub);font-size:13px;max-width:690px}.ux7 .page-head .actions{display:flex;gap:8px;flex-shrink:0}.ux7 h2{font-size:16px;letter-spacing:-.3px;margin:0;font-weight:700}.ux7 h3{font-size:14px;margin:0 0 10px}.ux7 .tag{display:inline-flex;gap:6px;align-items:center;font-size:10px;font-weight:700;border-radius:5px;padding:4px 7px;background:#edf3f6;color:#405f72;vertical-align:middle;line-height:1.4}.ux7 .tag.good{color:#086547;background:#eaf6ef}.ux7 .tag.attention{color:#855619;background:#fbf3e4}.ux7 .tag.manual{color:#34518a;background:#eef1fa}.ux7 .cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 20px}.ux7 .metric{padding:19px 20px;background:#fff;border:1px solid var(--u-line);border-radius:var(--u-radius);min-width:0;position:relative}.ux7 .metric-label{font-size:11px;color:var(--u-sub);display:flex;justify-content:space-between;align-items:center;font-weight:650}.ux7 .metric strong{font-size:27px;letter-spacing:-.8px;display:block;margin:11px 0 6px;white-space:nowrap;font-variant-numeric:tabular-nums}.ux7 .metric small{font-size:11px;display:block;color:var(--u-sub);line-height:1.4}.ux7 .metric.highlight{background:#edf5f4;border-color:#c6ded8}.ux7 .metric.highlight strong{color:var(--u-brand-dark)}.ux7 .grid-2{display:grid;grid-template-columns:1.42fr 1fr;gap:18px;margin-bottom:18px}.ux7 .equal{grid-template-columns:1fr 1fr}.ux7 .card{background:#fff;border:1px solid var(--u-line);border-radius:var(--u-radius);min-width:0;overflow:hidden}.ux7 .card-head{padding:19px 21px 12px;display:flex;gap:10px;align-items:flex-start;justify-content:space-between}.ux7 .card-head p{margin:4px 0 0;font-size:11px;color:var(--u-sub)}.ux7 .card-body{padding:8px 21px 19px}.ux7 .card-foot{font-size:11px;line-height:1.5;color:var(--u-sub);border-top:1px solid #e9eef1;padding:12px 21px;background:#fbfcfd}.ux7 .card-head button{padding:3px 7px;min-height:26px;font-size:11px;flex-shrink:0}.ux7 .chart svg text{font-family:inherit}.ux7 .chart{position:relative;height:auto;display:block}.ux7 .chart-card .card-body{cursor:zoom-in;position:relative}.ux7 .chart-card .card-body::after{content:"Clicca per ingrandire";position:absolute;right:10px;bottom:10px;background:rgba(24,47,62,.78);color:#fff;font-size:10px;font-weight:650;padding:5px 8px;border-radius:999px;opacity:0;transform:translateY(6px);transition:.18s ease;pointer-events:none}.ux7 .chart-card:hover .card-body::after{opacity:1;transform:translateY(0)}.ux7 .chart-zoom-btn{font-size:11px;min-height:28px;padding:5px 9px}.ux7 .chart-modal{width:min(1180px,calc(100vw - 36px));max-height:min(88vh,980px);overflow:auto;background:#fff;border-radius:18px;border:1px solid #d4e0e6;box-shadow:0 28px 80px rgba(24,47,62,.22)}.ux7 .chart-modal .modal-head{position:sticky;top:0;background:#fff;border-bottom:1px solid #e5edf1;padding:16px 20px;display:flex;gap:12px;align-items:flex-start;justify-content:space-between;z-index:2}.ux7 .chart-modal .modal-head h2{font-size:20px;margin:0 0 4px}.ux7 .chart-modal .modal-head p{margin:0;color:var(--u-sub);font-size:12px;max-width:760px}.ux7 .chart-modal .modal-body{padding:18px 22px 24px}.ux7 .chart-modal .card-body{padding:0;cursor:default}.ux7 .chart-modal .card-body::after{display:none}.ux7 .chart-modal .chart svg{width:100%;height:auto}.ux7 .chart-modal .bar-row{grid-template-columns:minmax(160px,220px) 1fr 110px;font-size:13px}.ux7 .chart-modal .legend{font-size:12px}.ux7 .chart-modal .details{margin-top:16px}.ux7 .chart-modal .details summary{cursor:pointer;font-weight:700}.ux7 .chart-modal .details table{font-size:12px}.ux7 .section-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 18px}.ux7 .legend{display:flex;gap:16px;align-items:center;font-size:10px;color:var(--u-sub);margin:7px 0 10px;flex-wrap:wrap}.ux7 .legend span{display:inline-flex;gap:7px;align-items:center}.ux7 .swatch{height:3px;width:17px;display:inline-block;background:var(--u-brand)}.ux7 .swatch.base{background:#91a8b6}.ux7 .swatch.forecast{background:repeating-linear-gradient(90deg,#91a8b6 0 4px,transparent 4px 6px)}.ux7 .bar-row{display:grid;grid-template-columns:minmax(80px,140px) 1fr 78px;gap:12px;align-items:center;margin:13px 0;font-size:12px}.ux7 .bar-row .label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ux7 .track{height:9px;background:#edf2f4;position:relative;border-radius:4px;overflow:hidden}.ux7 .track i{display:block;height:100%;background:#347a7c;border-radius:4px}.ux7 .bar-row strong{text-align:right;font-size:12px;white-space:nowrap}.ux7 .callout{display:flex;gap:12px;padding:13px 16px;background:#fff8eb;border:1px solid #ecd9ad;border-radius:9px;color:#79531a;font-size:12px;align-items:center;margin-bottom:18px}.ux7 .callout.info{background:#edf5f7;border-color:#c8dce4;color:#365b6e}.ux7 .callout.good{background:#f0f8f3;border-color:#cee5d6;color:#176046}.ux7 .callout button{margin-left:auto;min-width:max-content;font-size:11px;padding:6px 10px}.ux7 .insight{display:flex;align-items:flex-start;gap:11px;padding:13px 0;border-bottom:1px solid #ecf0f2;font-size:12px}.ux7 .insight:last-child{border:0}.ux7 .insight .dot{width:26px;height:26px;border-radius:8px;background:#edf5f5;color:#146363;display:grid;place-items:center;font-size:12px;flex-shrink:0;font-weight:750}.ux7 .insight b{display:block;font-size:12px;margin-bottom:3px}.ux7 .insight p{color:var(--u-sub);margin:0;line-height:1.5}.ux7 .toolbar{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.ux7 .toolbar input{width:260px;padding:9px 12px;font-size:12px}.ux7 .toolbar select{font-size:12px;padding:9px 10px}.ux7 .toolbar .count{margin-left:auto;font-size:11px;color:var(--u-sub)}.ux7 .toggle{font-size:11px;display:flex;align-items:center;gap:6px;color:var(--u-sub)}.ux7 input[type=checkbox]{accent-color:var(--u-brand);width:15px;height:15px;padding:0}.ux7 .table-scroll{overflow:auto;border-radius:var(--u-radius);max-width:100%}.ux7 table{border-collapse:collapse;width:100%;font-size:12px}.ux7 table th{background:#f5f8f9;color:#526b7a;font-size:10px;font-weight:750;letter-spacing:.25px;padding:12px 16px;text-align:right;white-space:nowrap}.ux7 table th:first-child{text-align:left}.ux7 table td{padding:13px 16px;text-align:right;border-top:1px solid #e8eef1;white-space:nowrap;font-variant-numeric:tabular-nums}.ux7 table td:first-child{text-align:left;white-space:normal;min-width:180px}.ux7 table td:first-child b{display:block;font-size:12px;max-width:300px}.ux7 table td:first-child small{font-size:10px;color:var(--u-sub);display:block;margin-top:3px}.ux7 tbody tr:hover{background:#f7fbfb}.ux7 table .amount-button{background:transparent;border:1px solid transparent;color:var(--u-brand-dark);font-weight:750;min-width:115px;padding:6px 8px;text-align:right;white-space:nowrap;min-height:31px}.ux7 table .amount-button:hover{border-color:#bad6d4;background:#edf5f4}.ux7 table .amount-button .pen{font-size:11px;margin-left:9px;opacity:.55}.ux7 table tfoot td{background:#edf4f5;font-weight:750;border-top:2px solid #c1d6dd;padding:15px 16px}.ux7 .table-note{font-size:11px;color:var(--u-sub);margin:12px 2px}.ux7 .group-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:20px}.ux7 .family-card{padding:17px;background:#fff;border:1px solid var(--u-line);border-radius:11px;text-align:left}.ux7 .family-card.selected{border-color:#4f898c;background:#f0f7f6}.ux7 .family-card strong{font-size:20px;letter-spacing:-.4px;display:block;margin:7px 0}.ux7 .family-card span{font-size:12px;font-weight:700}.ux7 .family-card small{display:block;color:var(--u-sub);font-size:10px}.ux7 .recon{display:flex;align-items:center;gap:15px;justify-content:space-between;background:#fff8eb;border:1px solid #e5cc9e;padding:16px 20px;border-radius:10px;margin-bottom:17px;font-size:12px}.ux7 .recon strong{display:block}.ux7 .recon p{color:var(--u-sub);margin:4px 0 0}.ux7 .empty{padding:30px;text-align:center;color:var(--u-sub)}.ux7 .details{margin-top:10px}.ux7 .details summary{font-size:11px;color:var(--u-sub);cursor:pointer;padding:8px 0}.ux7 .details table{font-size:11px}.ux7 .details td{padding:7px 8px}.ux7 .version-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.ux7 .version-card{background:#fff;border:1px solid var(--u-line);border-radius:12px;padding:20px}.ux7 .version-card.active{border-color:#6d9a9b;box-shadow:0 0 0 1px #6d9a9b}.ux7 .version-card h3{margin:10px 0;font-size:15px}.ux7 .version-card .total{font-size:25px;font-weight:750;letter-spacing:-.8px;margin:13px 0}.ux7 .version-card .actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px}.ux7 .version-card .actions button{font-size:11px;padding:6px 10px;min-height:32px}.ux7 .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ux7 .form-grid label{font-size:12px;color:var(--u-sub);display:grid;gap:6px}.ux7 .form-grid input{width:100%}.ux7 .source-item{padding:17px 0;border-bottom:1px solid var(--u-line)}.ux7 .source-item:last-child{border:0}.ux7 .source-item p{font-size:12px;color:var(--u-sub);margin:7px 0 0}.ux7 .source-item code{font:11px ui-monospace,monospace;white-space:normal;color:#405a70;background:#f2f6f8;display:block;margin-top:8px;padding:9px;border-radius:6px;overflow-wrap:anywhere}.ux7 .note-panel{border-left:3px solid #9fbfbd;padding:10px 14px;background:#f1f7f6;font-size:12px;color:#436572;margin:14px 0}.ux7 .small-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ux7 .small-grid>div{border:1px solid var(--u-line);padding:12px;border-radius:8px}.ux7 .small-grid b{display:block;margin-top:5px;font-size:17px;font-variant-numeric:tabular-nums}.ux7 .small-grid small{font-size:10px;color:var(--u-sub)}.ux7 .chip-line{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.ux7 .bottom-hint{margin:23px 0 0;color:var(--u-sub);font-size:10px;text-align:center}
.ux7 .overlay{position:fixed;inset:0;background:#102c3e50;backdrop-filter:blur(2px);z-index:200;display:flex;justify-content:flex-end}.ux7 .drawer{width:465px;max-width:100%;height:100dvh;overflow:auto;background:#fff;box-shadow:-15px 0 60px #102c3e22;display:flex;flex-direction:column}.ux7 .drawer-head{padding:25px 26px 20px;border-bottom:1px solid var(--u-line);display:flex;gap:13px;align-items:flex-start;justify-content:space-between}.ux7 .drawer-head h2{font-size:20px;margin:7px 0 4px}.ux7 .drawer-body{padding:22px 26px;flex:1}.ux7 .drawer-foot{padding:18px 26px;background:#fff;border-top:1px solid var(--u-line);position:sticky;bottom:0;display:flex;gap:10px;justify-content:flex-end}.ux7 .segments{display:flex;padding:4px;background:#edf3f5;border:1px solid #dde7eb;border-radius:9px;margin:17px 0 20px}.ux7 .segments button{flex:1;font-size:12px;border:0;background:transparent;min-height:34px;padding:7px;white-space:nowrap}.ux7 .segments button.active{background:#fff;color:var(--u-brand-dark);box-shadow:0 1px 4px #0a304518}.ux7 .entry-label{font-size:12px;color:var(--u-sub);display:block;font-weight:650}.ux7 .entry-input{font-size:30px!important;font-weight:700;width:100%;padding:14px 16px!important;margin:9px 0;letter-spacing:-.6px;font-variant-numeric:tabular-nums}.ux7 .entry-base{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--u-sub);margin-bottom:16px}.ux7 .entry-base select{font-size:11px;padding:6px 8px}.ux7 .error{min-height:17px;color:var(--u-red);font-size:12px;margin-top:2px}.ux7 .impact{background:#edf6f4;border:1px solid #cce3da;border-radius:10px;padding:16px;margin:18px 0}.ux7 .impact p{margin:0 0 8px;color:var(--u-sub);font-size:11px}.ux7 .impact strong{font-size:26px;letter-spacing:-.8px}.ux7 .impact .line{display:flex;justify-content:space-between;font-size:12px;padding-top:8px}.ux7 .source-box{background:#f6f8f9;border:1px solid var(--u-line);border-radius:9px;padding:14px;font-size:11px;color:var(--u-sub);overflow-wrap:anywhere;margin-top:18px}.ux7 .source-box b{color:var(--u-ink)}.ux7 .source-box p{margin:6px 0;line-height:1.55}.ux7 .mini-modal{width:540px;max-width:calc(100% - 32px);height:auto;max-height:calc(100dvh - 48px);margin:auto;border-radius:14px;overflow:auto;background:#fff;padding:26px;box-shadow:0 20px 60px #102c3e30}.ux7 .mini-modal h2{font-size:21px;margin-bottom:9px}.ux7 .mini-modal p{font-size:12px;color:var(--u-sub)}.ux7 .mini-modal label{display:block;font-size:12px;margin:16px 0 6px}.ux7 .mini-modal input,.ux7 .mini-modal textarea{width:100%}.ux7 .mini-modal .actions{display:flex;gap:9px;justify-content:flex-end;margin-top:22px}.ux7 .export-list{display:grid;gap:9px;margin-top:20px}.ux7 .export-list button{text-align:left;padding:14px;display:flex;align-items:center;justify-content:space-between}.ux7 .export-list small{display:block;color:var(--u-sub);font-weight:400;margin-top:3px}.ux7 .toast{position:fixed;bottom:23px;left:calc(50% + 70px);transform:translateX(-50%);background:#183b4a;color:#fff;padding:12px 18px;border-radius:9px;font-size:12px;box-shadow:0 7px 26px #142a3c28;z-index:500;max-width:85vw}.ux7 .print-area{display:none}.ux7 .sync-preview{font-size:10px;color:var(--u-amber);background:#fdf5e5;padding:3px 6px;border-radius:4px}.ux7 .table-foot{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--u-line);font-size:11px;color:var(--u-sub)}
body.ux7-body #budgetCompare{display:none!important}body.ux7-body #teamBar{z-index:55;position:relative}body.ux7-body #teamBar:not([hidden])~#app .ux7 .sidebar{top:58px}body.ux7-body #app{min-height:100vh}
@media(min-width:1700px){.ux7 .content{padding-top:36px}.ux7 .reference-bar{padding:16px 40px}.ux7 .content{padding-left:40px;padding-right:40px}.ux7 .cards{gap:20px}}
@media(max-width:1250px){.ux7 .sidebar{width:196px;padding-left:11px;padding-right:11px}.ux7 .main{margin-left:196px}.ux7 .content,.ux7 .app-top{padding-left:23px;padding-right:23px}.ux7 .reference-bar{padding:12px 23px;gap:12px}.ux7 .metric{padding:16px}.ux7 .metric strong{font-size:23px}.ux7 .group-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ux7 table td,.ux7 table th{padding:11px 12px}.ux7 .save-status{display:none}}
@media(max-width:1000px){.ux7 .grid-2{grid-template-columns:1fr}.ux7 .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ux7 .version-grid{grid-template-columns:1fr 1fr}.ux7 .reference-bar{gap:10px;padding:12px 18px}.ux7 .ref-item{padding-right:8px}.ux7 .ref-item strong{font-size:17px}.ux7 .ref-item span{font-size:9px}.ux7 .ref-item small{font-size:9px}.ux7 .bar-row{grid-template-columns:140px 1fr 80px}.ux7 .page-head .actions{flex-wrap:wrap}.ux7 h1{font-size:25px}}
@media(max-width:760px){.ux7 .sidebar{transform:translateX(-100%);transition:transform .15s ease;box-shadow:10px 0 50px #19344730;width:232px;z-index:90}.ux7 .sidebar.open{transform:translateX(0)}.ux7 .main{margin-left:0}.ux7 .mobile-menu{display:inline-flex;padding:7px!important}.ux7 .app-top{padding:12px 16px;gap:10px}.ux7 .top-version{gap:6px}.ux7 .top-version select{width:205px;font-size:11px}.ux7 .top-actions{gap:4px}.ux7 .top-actions .undo-label{display:none}.ux7 .reference-bar{grid-template-columns:1fr 1fr;padding:10px 16px;gap:8px 14px}.ux7 .ref-item{padding:0;border:none}.ux7 .ref-item strong{font-size:19px;line-height:1.4}.ux7 .ref-item span{font-size:9px;letter-spacing:.35px}.ux7 .ref-item small{font-size:9px}.ux7 .content{padding:24px 16px 50px}.ux7 .page-head{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:17px}.ux7 .page-head p{font-size:12px}.ux7 h1{font-size:25px}.ux7 .metric{padding:15px}.ux7 .metric strong{font-size:23px}.ux7 .cards{gap:10px}.ux7 .card-head{padding:17px 16px 12px}.ux7 .card-body{padding:8px 16px 17px}.ux7 .card-foot{padding:12px 16px}.ux7 .group-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ux7 .family-card{padding:14px}.ux7 .family-card strong{font-size:19px}.ux7 .version-grid{grid-template-columns:1fr}.ux7 .toolbar input{flex:1;min-width:140px}.ux7 .toolbar .count{width:100%;margin-left:0}.ux7 .recon{flex-direction:column;align-items:flex-start;gap:12px}.ux7 .callout{align-items:flex-start;font-size:11px}.ux7 .callout button{margin-left:0}.ux7 .toast{left:50%}.ux7 .form-grid{grid-template-columns:1fr}.ux7 .bar-row{grid-template-columns:105px 1fr 73px;gap:9px;font-size:11px}.ux7 .small-grid{grid-template-columns:1fr 1fr}.ux7 .small-grid>div:last-child{grid-column:1/-1}body.ux7-body #teamBar:not([hidden])~#app .ux7 .sidebar{top:0}.ux7 .drawer{width:100%}.ux7 .drawer-body{padding:20px}.ux7 .drawer-head{padding:20px}.ux7 .drawer-foot{padding:15px 20px}.ux7 .ref-item:nth-child(-n+2){padding-bottom:5px;border-bottom:1px solid #e5edef}}
@media(prefers-reduced-motion:reduce){.ux7 *{transition:none!important;scroll-behavior:auto!important}}
@media print{body.ux7-body{background:white}body.ux7-body #teamBar{display:none!important}.ux7 .sidebar,.ux7 .app-top,.ux7 .reference-bar,.ux7 .overlay,.ux7 .toast{display:none!important}.ux7 .main{margin:0}.ux7 .content{max-width:none;padding:0}.ux7 button,.ux7 .toolbar,.ux7 .page-head .actions{display:none!important}.ux7 .card,.ux7 .metric{break-inside:avoid;box-shadow:none}.ux7 .table-scroll{overflow:visible}.ux7 .cards{grid-template-columns:repeat(4,1fr)}.ux7 .grid-2{grid-template-columns:1fr 1fr}.ux7 .content>div{break-inside:avoid} .ux7 .details{display:none}.ux7 .bottom-hint{display:block}}

.ux7 .page-head .primary{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.ux7 .overlay{backdrop-filter:none;background:#102c3e24}.ux7 .horizontal-chart{overflow-x:auto;max-width:100%;scrollbar-width:thin}.ux7 .logo small{font-size:8px;letter-spacing:1.3px}
@media(max-width:760px){.ux7 .horizontal-chart svg{min-width:530px}.ux7 .horizontal-chart::after{content:'Scorri lateralmente per leggere il grafico →';display:block;font-size:10px;color:#526979;padding:6px 0}.ux7 .callout{flex-wrap:wrap}.ux7 .callout>span{flex:1;min-width:200px}.ux7 .callout>button{margin-left:26px}.ux7 .reference-bar{position:sticky}.ux7 .small-grid b{font-size:16px}}

/* Studio 7.1: persistent planning locks and explicit reconciliation preview. */
.ux7 .family-lock-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.ux7 button.lock-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:5px 7px;min-width:30px;min-height:32px;color:#516d7b;background:#fff;border-color:#d0dfe5;font-size:11px;flex-shrink:0}
.ux7 button.lock-button.is-locked{color:#714819;background:#fff5e3;border-color:#cbb084}
.ux7 button.lock-button:disabled{opacity:1;cursor:default}
.ux7 .lock-button .ico{width:16px;height:16px}
.ux7 .row-with-lock{display:flex;align-items:center;gap:10px}
.ux7 .row-with-lock>div{min-width:120px}
.ux7 tr.locked-row td{background:#fcfaf3}
.ux7 .lock-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1px solid #d1dfe4;border-radius:10px;background:#edf4f5;margin:14px 0;font-size:12px}
.ux7 .lock-tools>span,.ux7 .allocation-summary>span{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ux7 .lock-tools button{font-size:11px;min-height:30px;padding:5px 8px}
.ux7 .lock-tools .ico,.ux7 .allocation-summary .ico{width:16px;height:16px}
.ux7 .drawer-foot{flex-wrap:wrap;gap:8px}
.ux7 .drawer-foot button{font-size:12px}
.ux7 .recon .primary{min-width:170px;max-width:230px;flex-shrink:0}
.ux7 .rebalance-modal{width:min(960px,calc(100vw - 32px));max-width:960px;max-height:calc(100dvh - 32px);overflow:auto;padding:24px}
.ux7 .rebalance-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.ux7 .rebalance-heading h2{margin-top:0;font-size:23px}
.ux7 .rebalance-heading .eyebrow{font-size:10px}
.ux7 .rebalance-controls{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:14px;margin:14px 0 8px}
.ux7 .rebalance-controls label{display:grid;gap:7px;font-size:12px;min-width:0}
.ux7 .rebalance-controls select{width:100%;font-size:12px}
.ux7 .lock-explanation{font-size:12px;line-height:1.55;color:var(--u-sub);margin:10px 0 16px}
.ux7 .rebalance-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ux7 .rebalance-metrics>div{background:#edf4f5;border:1px solid #c8dde2;border-radius:9px;padding:14px;min-width:0}
.ux7 .rebalance-metrics small{display:block;font-size:11px;color:#496573}
.ux7 .rebalance-metrics b{display:block;font-size:21px;color:#153c4c;margin-top:5px;white-space:normal;overflow-wrap:anywhere}
.ux7 .allocation-summary{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:14px 0;font-size:12px}
.ux7 .allocation-table{max-height:300px;margin-top:14px;border:1px solid #d8e4e8;border-radius:10px}
.ux7 .allocation-table table{font-size:12px;min-width:590px}
.ux7 .allocation-table td,.ux7 .allocation-table th{padding:10px 12px}
.ux7 .allocation-table th{position:sticky;top:0;background:#edf4f5;z-index:1}
.ux7 .allocation-table td small{font-size:10px;white-space:normal}
.ux7 .rebalance-footer{position:sticky;bottom:-24px;background:#fff;padding:15px 0 0;margin-top:14px;display:flex;gap:14px;align-items:center;justify-content:space-between;border-top:1px solid #d8e4e8}
.ux7 .rebalance-footer>small{color:#4b6472;font-size:11px;max-width:280px}
.ux7 .rebalance-footer .actions{display:flex;gap:8px;margin:0}
@media(max-width:760px){.ux7 .rebalance-modal{padding:16px;max-height:calc(100dvh - 16px);width:calc(100vw - 16px)}.ux7 .rebalance-controls{grid-template-columns:1fr}.ux7 .rebalance-metrics{grid-template-columns:1fr}.ux7 .rebalance-metrics>div{display:flex;align-items:center;justify-content:space-between;padding:10px;gap:8px}.ux7 .rebalance-metrics b{font-size:17px;margin:0}.ux7 .rebalance-footer{position:static;display:block}.ux7 .rebalance-footer>.actions{display:flex;margin-top:10px}.ux7 .allocation-table{max-height:240px}.ux7 .lock-tools .muted{display:none}.ux7 .row-with-lock{gap:6px}.ux7 .rebalance-heading h2{font-size:20px}.ux7 .recon{flex-wrap:wrap}}
@media print{.ux7 .lock-button,.ux7 .lock-tools,.ux7 .rebalance-modal{display:none!important}}

.ux7 .channel-weights{border:1px solid #d1e0e5;border-radius:11px;padding:15px;background:#f6fafb;margin:12px 0 10px}
.ux7 .channel-weights[hidden]{display:none}
.ux7 .channel-weights>b{font-size:13px}.ux7 .channel-weights p,.ux7 .channel-weights small{font-size:11px;color:#455d69;line-height:1.5;display:block;margin:7px 0}
.ux7 .weight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:12px 0}
.ux7 .mini-modal .weight-field{display:flex;flex-direction:column;align-items:flex-start;gap:6px;font-size:11px;font-weight:650;margin:6px 0}
.ux7 .weight-field input{padding:7px 10px;font-size:13px;font-weight:700;width:100%;max-width:150px}
.ux7 .section-divider{display:flex;gap:15px;align-items:baseline;justify-content:space-between;border-bottom:1px solid #d5e2e6;padding:18px 0 10px;margin:15px 0 18px}
.ux7 .section-divider span{font-size:11px;max-width:58%}
@media(max-width:750px){.ux7 .weight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ux7 .section-divider{display:block}.ux7 .section-divider span{max-width:none;display:block;margin-top:5px}}

/* 7.4 responsive chart exports and synchronization */
.ux7 .auto-sync-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;margin:0 0 20px;background:#eaf4f1;border:1px solid #c8dfd6;border-radius:10px;color:#155e4d;font-size:11px}.ux7 .auto-sync-banner b{display:block;font-size:12px}.ux7 .auto-sync-banner span{display:block;margin-top:3px;color:#405f65}.ux7 .auto-sync-banner.blocked{background:#fff6e6;border-color:#dcb884}.ux7 .auto-sync-banner button{flex-shrink:0;font-size:11px}.ux7 .chart-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-shrink:0}.ux7 .chart-modal{margin:auto;max-width:calc(100vw - 24px);max-height:92vh}.ux7 .chart-modal svg:not(.ico){width:100%;height:auto;min-width:0!important}.ux7 .chart-modal .horizontal-chart{overflow:visible}.ux7 .chart-modal .bar-row .label{white-space:normal}.ux7 .chart-more{margin:0 0 18px}.ux7 .chart-more>summary{padding:9px 0;font-weight:700}.ux7 .card-head{flex-wrap:wrap}.ux7 .card-head>div:first-child{flex:1;min-width:180px}.ux7 .chart-card .card-body{min-width:0}.ux7 .chart-card .card-body>svg{width:100%;height:auto}.ux7 .section-mini-grid{align-items:start}.ux7 .chart-modal .modal-head{flex-wrap:wrap}.ux7 .chart-modal .card-body .details{font-size:13px}.ux7 .chart-modal .modal-body{max-width:100%;overflow:auto}
@media(max-width:960px){.ux7 .section-mini-grid{grid-template-columns:1fr}.ux7 .chart-modal .bar-row{grid-template-columns:minmax(120px,170px) 1fr 90px}}
@media(max-width:640px){.ux7 .auto-sync-banner{align-items:flex-start;flex-direction:column}.ux7 .chart-modal .modal-head{padding:14px}.ux7 .chart-modal .modal-body{padding:14px}.ux7 .chart-modal .modal-head h2{font-size:18px}.ux7 .chart-modal{width:calc(100vw - 12px)}.ux7 .chart-actions{width:100%;justify-content:flex-end}.ux7 .section-mini-grid .horizontal-chart svg{min-width:0!important}.ux7 .chart-card .card-body::after{display:none}.ux7 .chart-modal table{min-width:600px}.ux7 .chart-modal .bar-row{grid-template-columns:1fr 1fr 80px;font-size:11px}}
@media print{.ux7 .chart-zoom-btn,.ux7 .auto-sync-banner{display:none!important}}

/* Vista in sola lettura di MT/PS per FB: comandi di modifica nascosti (i salvataggi sono comunque bloccati). */
.ux7-readonly [data-action=duplicate],.ux7-readonly [data-action=undo],.ux7-readonly [data-action=redo],.ux7-readonly [data-action=rename],.ux7-readonly [data-action=delete-version],.ux7-readonly [data-action=rebalance],.ux7-readonly [data-action=bulk-lock],.ux7-readonly [data-action=align-months],.ux7-readonly [data-action=align-products],.ux7-readonly [data-export=import],.ux7-readonly [data-export=ipd],.ux7-readonly [data-action=reset-initial]{display:none!important}
.ux7 table td small.growth-initial{display:block;font-size:10px;color:var(--u-sub);margin-top:2px;font-weight:400}
.ux7 .small-grid small.vs26{display:block;margin-top:3px;font-size:11px}.ux7 .impact small.vs26{display:block;margin-top:3px;font-size:12px;color:var(--u-sub)}
.ux7 .chart svg,.ux7 .horizontal-chart svg{overflow:visible}
