.f23-live-banner{display:flex;align-items:center;gap:18px;margin:0 0 20px;padding:18px 22px;border:1px solid #b9d9fa;border-radius:16px;background:linear-gradient(110deg,#eff8ff,#f8f1ff);font-size:15px;line-height:1.5;color:#44526a}.f23-live-banner b{font-size:17px;color:#10233b;white-space:nowrap}.f23-live-loading{min-height:280px;display:grid;place-items:center;align-content:center;text-align:center;padding:36px}.f23-live-loading span{width:42px;height:42px;border:4px solid #d7e6fa;border-top-color:#1475d3;border-radius:50%;animation:f23spin .8s linear infinite}.f23-live-loading h2{font-size:26px;margin:18px 0 6px}.f23-live-loading p{font-size:16px;color:#64708a}.f23-empty-cell{text-align:center!important;padding:54px!important;font-size:16px!important;color:#68758d}.f23-link-button{border:1px solid #bed2ed;background:#f5f9ff;color:#075fc8;border-radius:10px;padding:9px 14px;font-size:14px;font-weight:800;cursor:pointer}.f23-conversation{display:grid;gap:12px;max-height:310px;overflow:auto;margin:16px 0 20px}.f23-message{padding:14px 16px;border-radius:14px;background:#f1f5fb;border:1px solid #dbe5f2}.f23-message.staff{background:#edf8ff;border-color:#b9def5}.f23-message small{display:block;color:#76839a;margin:3px 0 8px}.f23-message p{margin:0!important;color:#243653!important;font-size:15px!important;white-space:pre-wrap}.f23-live-alert{min-height:20px;margin:10px 0;font-size:14px;font-weight:800}.f23-live-alert.success{color:#137454}.f23-live-alert.error{color:#b3263d}.f23-visit-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.f23-visit-guide article{padding:20px;border:1px solid #d7e2f0;border-radius:16px;background:#fff}.f23-visit-guide b,.f23-visit-guide span{display:block}.f23-visit-guide b{font-size:17px;color:#10233b;margin-bottom:7px}.f23-visit-guide span{font-size:14px;line-height:1.5;color:#61708a}.f23-urgent-check{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid #f1c3ca;background:#fff4f5;border-radius:12px}.f23-urgent-check b,.f23-urgent-check small{display:block}.f23-urgent-check small{margin-top:3px;color:#6d7585}.f23-urgent-check input{margin-top:4px}@keyframes f23spin{to{transform:rotate(360deg)}}@media(max-width:900px){.f23-visit-guide{grid-template-columns:1fr}.f23-live-banner{align-items:flex-start;flex-direction:column;gap:5px}.f23-live-banner b{white-space:normal}}

.f23-click-row{cursor:pointer}.f23-click-row:hover td{background:#f4f8ff}.f23-workspace-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;margin-bottom:20px;padding:22px 24px;border:1px solid #d9e3f0;border-radius:18px;background:#fff}.f23-workspace-head>div>span{color:#6e28d9;font-size:12px;font-weight:900;letter-spacing:.08em}.f23-workspace-head h2{margin:5px 0 3px;color:#14243b;font-size:25px}.f23-workspace-head p{margin:0;color:#65738a;font-size:14px}.f23-back-button{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid #cbd8e9;border-radius:10px;background:#f8fbff;color:#17416f;font-weight:800;cursor:pointer}.f23-back-button svg{width:17px}.f23-ticket-workspace,.f23-order-workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}.f23-thread-panel,.f23-ticket-aside>section,.f23-order-aside>section,.f23-order-specs{padding:22px;border:1px solid #dce5f0;border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(25,45,78,.05)}.f23-ticket-aside,.f23-order-aside{display:grid;gap:16px}.f23-ticket-aside h3,.f23-order-aside h3,.f23-order-specs h3{margin:0 0 16px;color:#14243b;font-size:18px}.f23-ticket-aside dl,.f23-order-aside dl,.f23-order-specs dl{margin:0 0 18px}.f23-ticket-aside dl>div,.f23-order-aside dl>div,.f23-order-specs dl>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #edf1f6}.f23-ticket-aside dt,.f23-order-aside dt,.f23-order-specs dt{color:#718097}.f23-ticket-aside dd,.f23-order-aside dd,.f23-order-specs dd{margin:0;color:#162b48;font-weight:800;text-align:right}.f23-thread-panel .f23-conversation{max-height:none;min-height:290px;margin:0 0 20px;overflow:visible}.f23-message{max-width:82%}.f23-message.staff{margin-left:auto}.f23-message header{display:flex;justify-content:space-between;gap:12px}.f23-message header small{margin:0}.f23-inline-form textarea{min-height:130px;resize:vertical}.f23-form-actions{display:flex;justify-content:flex-end}.f23-form-actions .primary{min-width:190px}.f23-ticket-compose{max-width:980px;margin:0 auto;padding:26px}.f23-order-main{display:grid;gap:18px}.f23-detail-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.f23-detail-cards article{padding:18px;border:1px solid #dce5f0;border-radius:15px;background:#fff}.f23-detail-cards span,.f23-detail-cards strong,.f23-detail-cards small{display:block}.f23-detail-cards span{color:#6c7a90;font-size:12px}.f23-detail-cards strong{margin:9px 0 4px;color:#122a49;font-size:18px}.f23-detail-cards small{color:#7a879a;line-height:1.35}.f23-order-specs dl{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;margin-bottom:0}.wide{width:100%}.f23-order-aside form,.f23-ticket-aside form{display:grid;gap:11px}.f23-order-aside .field,.f23-ticket-aside .field{margin:0}
@media(max-width:1100px){.f23-ticket-workspace,.f23-order-workspace{grid-template-columns:1fr}.f23-ticket-aside,.f23-order-aside{grid-template-columns:1fr 1fr}.f23-detail-cards{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.f23-workspace-head{grid-template-columns:1fr}.f23-workspace-head>.status-badge{justify-self:start}.f23-ticket-aside,.f23-order-aside,.f23-detail-cards,.f23-order-specs dl{grid-template-columns:1fr}.f23-message{max-width:100%}}

/* Dashboard cliente: contrasto, accenti luminosi e gerarchia più leggibile. */
.metric-grid .metric-card{position:relative;overflow:hidden;border:1px solid #d6e1f1!important;background:linear-gradient(145deg,#fff 0%,#fbfdff 68%,#f3f7ff 100%)!important;box-shadow:0 15px 34px rgba(26,57,99,.08)!important}
.metric-grid .metric-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#137ef2,#25c4da 54%,#9a39f5);box-shadow:0 0 20px rgba(35,166,235,.55)}
.metric-grid .metric-card:after{content:"";position:absolute;width:110px;height:110px;right:-48px;top:-45px;border-radius:50%;background:radial-gradient(circle,rgba(95,55,244,.16),rgba(95,55,244,0) 70%);pointer-events:none}
.metric-grid .metric-card:nth-child(2):before{background:linear-gradient(90deg,#7b38f2,#d52de2)}
.metric-grid .metric-card:nth-child(3):before{background:linear-gradient(90deg,#ff8b23,#ff356c)}
.metric-grid .metric-card:nth-child(4):before{background:linear-gradient(90deg,#17a9d8,#7c41ef)}
.metric-grid .metric-head>span:first-child{color:#30415f!important;font-size:15px!important;font-weight:850!important}.metric-grid .metric-value{font-size:32px!important;color:#101c36!important}.metric-grid .metric-card>small{font-size:14px!important;color:#455470!important;font-weight:700}
.f23-dashboard-due{position:relative;overflow:hidden;border:1px solid #cbdcf3!important;box-shadow:0 20px 46px rgba(24,55,99,.09)!important}.f23-dashboard-due:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#0a8ee8,#6350ef 48%,#f217b6);box-shadow:0 0 24px rgba(105,65,239,.45)}
.f23-dashboard-due .panel-head{padding-top:26px!important;background:linear-gradient(90deg,rgba(13,139,233,.045),rgba(240,20,183,.035))}.f23-dashboard-due .panel-head h2{font-size:23px!important;color:#111e36!important}.f23-dashboard-due .panel-head p{font-size:15px!important;color:#596983!important}
.f23-dashboard-due>article{position:relative;min-height:82px;padding:18px 22px 18px 30px!important;border-top:1px solid #dce5f1!important;background:#fff;transition:background .18s ease,transform .18s ease}.f23-dashboard-due>article:before{content:"";position:absolute;left:9px;top:18px;bottom:18px;width:6px;border-radius:999px;background:linear-gradient(180deg,#168df0,#713ef2 55%,#ee18b9);box-shadow:0 0 14px rgba(105,62,242,.42)}.f23-dashboard-due>article:hover{background:linear-gradient(90deg,#f5fbff,#fff9fe);transform:translateX(2px)}
.f23-dashboard-due>article strong{font-size:17px!important;line-height:1.35;color:#121e38!important}.f23-dashboard-due>article small{font-size:14px!important;line-height:1.5;color:#5f6f89!important}.f23-dashboard-due>article>b{font-size:22px!important;color:#152746!important;white-space:nowrap}.f23-dashboard-due .primary{min-width:112px;min-height:46px;border-radius:12px!important;box-shadow:0 9px 22px rgba(174,28,224,.23)}
.f23-vat-auto-info{display:grid;gap:6px;padding:15px 17px;border:1px solid #bddaf7;border-radius:13px;background:linear-gradient(110deg,#eef8ff,#faf2ff);color:#334966}.f23-vat-auto-info b{color:#102a4c;font-size:15px}.f23-vat-auto-info span{font-size:13px;line-height:1.55}.f23-vat-auto-info small{color:#a04800;font-weight:850}
@media(max-width:760px){.f23-dashboard-due>article{grid-template-columns:1fr!important;gap:9px}.f23-dashboard-due>article>b{justify-self:start}.f23-dashboard-due .primary{width:100%}}

/* Fatture cliente: informazioni fiscali complete senza descrizioni infinite. */
.f23-invoice-table{overflow:hidden}.f23-invoice-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid #e3e9f2;background:linear-gradient(90deg,#fbfdff,#fcf9ff)}
.f23-invoice-toolbar label{display:flex;align-items:center;gap:10px;min-width:320px;padding:0 13px;border:1px solid #d8e1ee;border-radius:11px;background:#fff;color:#79869b}.f23-invoice-toolbar label svg{width:18px}.f23-invoice-toolbar input{width:100%;min-height:42px;border:0;outline:0;background:transparent;font-size:15px;color:#17243b}.f23-invoice-toolbar>div{display:flex;gap:8px}.f23-invoice-toolbar button{min-height:40px;padding:0 15px;border:1px solid #d7e1ed;border-radius:10px;background:#fff;color:#53627b;font-size:13px;font-weight:800}.f23-invoice-toolbar button.active{border-color:#9762f1;background:#f4edff;color:#7026df;box-shadow:0 7px 18px rgba(111,39,221,.11)}
.f23-invoice-scroll{overflow:auto}.f23-invoice-table table{min-width:1420px}.f23-invoice-table th{white-space:nowrap}.f23-invoice-table td{vertical-align:middle}.f23-invoice-table td:first-child{min-width:185px}.f23-invoice-table td:nth-child(2){width:23%;max-width:310px}.f23-invoice-table td:nth-child(3),.f23-invoice-table td:nth-child(4){min-width:135px}.f23-invoice-table td:nth-child(5),.f23-invoice-table td:nth-child(6),.f23-invoice-table td:nth-child(7){min-width:120px}.f23-invoice-table td:nth-child(8){min-width:120px}.f23-invoice-table td:nth-child(9){min-width:150px}.f23-invoice-table tr[hidden]{display:none}.f23-invoice-service{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;font-size:14px;line-height:1.45;color:#273550}.f23-invoice-table td em{display:block;margin-top:5px;color:#718099;font-size:12.5px;font-style:normal;font-weight:700}.f23-invoice-table td em.is-overdue{color:#c12e49}.f23-invoice-actions{display:flex;gap:7px;align-items:center}.f23-invoice-actions .primary,.f23-invoice-actions .secondary{display:inline-flex!important;align-items:center;justify-content:center;min-height:40px;padding:0 15px;border-radius:9px;font-size:13px;font-weight:850;white-space:nowrap;opacity:1!important;visibility:visible!important}.f23-invoice-actions .secondary{border:1px solid #9fc4f2!important;background:#eef6ff!important;color:#075fc8!important;box-shadow:none!important}.f23-invoice-actions .secondary:hover{border-color:#086cd2!important;background:#086cd2!important;color:#fff!important}.f23-invoice-actions .primary{border:0!important;background:linear-gradient(100deg,#7028ed,#f018bb)!important;color:#fff!important}
.f23-dashboard-due>article{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px}.f23-dashboard-due>article span strong,.f23-dashboard-due>article span small,.f23-dashboard-due>article span em{display:block}.f23-dashboard-due>article span small{margin-top:4px}.f23-dashboard-due>article span em{margin-top:4px;color:#77849a;font-size:12.5px;font-style:normal}.f23-due-actions{display:flex;gap:8px}.f23-due-actions .secondary,.f23-due-actions .primary{min-height:43px;padding:0 14px;border-radius:11px;font-size:13px}
.client-invoice-open .modal{width:min(900px,calc(100vw - 32px));max-width:900px}.f23-invoice-preview{margin-top:20px;border:1px solid #dbe4f0;border-radius:17px;overflow:hidden;background:#fff}.f23-invoice-preview>header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;background:linear-gradient(120deg,#0b3e69,#176b9b 55%,#7130c8);color:#fff}.f23-invoice-preview>header small{display:block;margin-bottom:7px;color:#89f3ff;font-size:11px;font-weight:900;letter-spacing:.13em}.f23-invoice-preview>header h3{margin:0;font-size:23px}.f23-invoice-preview>header p{margin:6px 0 0!important;color:#e5effc!important;font-size:14px!important}.f23-invoice-preview>header>strong{font-size:30px;white-space:nowrap}.f23-invoice-facts{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #e1e8f1}.f23-invoice-facts span{min-height:92px;padding:17px 20px;border-right:1px solid #e1e8f1}.f23-invoice-facts span:nth-child(3n){border-right:0}.f23-invoice-facts span:nth-child(-n+3){border-bottom:1px solid #e1e8f1}.f23-invoice-facts small,.f23-invoice-facts b,.f23-invoice-facts em{display:block}.f23-invoice-facts small{color:#7a879b;font-size:12px;font-weight:850;text-transform:uppercase}.f23-invoice-facts b{margin-top:6px;color:#152945;font-size:17px}.f23-invoice-facts em{margin-top:4px;color:#bb2e49;font-size:12px;font-style:normal}.f23-invoice-note{display:flex;gap:18px;align-items:center;margin:18px;padding:14px 16px;border:1px solid #efcf8b;border-radius:12px;background:#fff9e9}.f23-invoice-note b{white-space:nowrap;color:#8b5704}.f23-invoice-note span{font-size:13px;color:#745e36}.f23-invoice-modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:18px 20px;background:#f8faff}.f23-invoice-modal-actions a,.f23-invoice-modal-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;text-decoration:none;font-size:14px;font-weight:850}.f23-invoice-modal-actions svg{width:17px}
@media(max-width:760px){.f23-invoice-toolbar{align-items:stretch;flex-direction:column}.f23-invoice-toolbar label{min-width:0}.f23-invoice-toolbar>div{overflow:auto}.f23-invoice-facts{grid-template-columns:1fr 1fr}.f23-invoice-facts span,.f23-invoice-facts span:nth-child(3n){border-right:1px solid #e1e8f1;border-bottom:1px solid #e1e8f1}.f23-invoice-facts span:nth-child(2n){border-right:0}.f23-invoice-preview>header{align-items:flex-start;flex-direction:column}.f23-invoice-modal-actions{flex-direction:column}.f23-invoice-modal-actions>*{width:100%}.f23-due-actions{width:100%}.f23-due-actions>*{flex:1}}

/* Fiber IPAM tecnico: stesso flusso operativo del modulo WHMCS, con UI del nuovo portale. */
.ops-ipam-head{position:relative;overflow:hidden;background:radial-gradient(circle at 88% -20%,rgba(135,44,244,.24),transparent 38%),linear-gradient(122deg,#ebf8ff 0%,#f7f7ff 58%,#fff0fb 100%)}.ops-ipam-head:after{content:"";position:absolute;right:-35px;bottom:-85px;width:260px;height:260px;border:38px solid rgba(111,43,223,.06);border-radius:50%}.ops-head-signal{position:relative;z-index:1;display:flex;align-items:center;gap:11px;min-width:190px;padding:13px 15px;border:1px solid #bde4d6;border-radius:15px;background:rgba(239,255,249,.88);box-shadow:0 12px 28px rgba(25,128,94,.08)}.ops-head-signal i{width:11px;height:11px;border-radius:50%;background:#14b87a;box-shadow:0 0 0 6px rgba(20,184,122,.12),0 0 18px rgba(20,184,122,.48)}.ops-head-signal span,.ops-head-signal b,.ops-head-signal small{display:block}.ops-head-signal b{color:#0b684b;font-size:13px}.ops-head-signal small{margin-top:3px;color:#46806d;font-size:11px}.ops-tech-tabs{box-shadow:0 11px 30px rgba(30,60,105,.055)}
.ops-tech-kpis article:nth-child(3):before{background:linear-gradient(#16b989,#20dbb4)}.ops-tech-kpis article:nth-child(4):before{background:linear-gradient(#ff9b24,#ef6845)}.ops-tech-kpis article:nth-child(5):before{background:linear-gradient(#16bd79,#34d69d)}.ops-tech-kpis article:nth-child(6):before{background:linear-gradient(#f14565,#ff7a89)}
.ops-ipam-workbench{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.ops-ipam-tool{position:relative;display:grid;grid-template-columns:auto 1fr;gap:18px;overflow:hidden;padding:24px;border:1px solid #d4e4f2;border-radius:21px;background:#fff;box-shadow:0 16px 38px rgba(19,54,99,.07)}.ops-ipam-tool:after{content:"";position:absolute;right:-42px;top:-48px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(20,125,240,.12),transparent 69%)}.ops-ipam-tool.green:after{background:radial-gradient(circle,rgba(20,190,128,.14),transparent 69%)}.ops-tool-icon{position:relative;z-index:1;display:grid;width:54px;height:54px;place-items:center;border-radius:16px;background:linear-gradient(135deg,#0b82ea,#6639e8);color:#fff;font-size:27px;font-weight:900;box-shadow:0 12px 25px rgba(45,100,220,.22)}.ops-ipam-tool.green .ops-tool-icon{background:linear-gradient(135deg,#079b75,#22cf99)}.ops-ipam-tool small{color:#1580bf;font-size:9px;font-weight:950;letter-spacing:.12em}.ops-ipam-tool h2{margin:5px 0;color:#112b4a;font-size:20px}.ops-ipam-tool p{margin:0 0 16px;color:#6d7e94;font-size:13px;line-height:1.55}.ops-ipam-tool form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.ops-ipam-tool input,.ops-ipam-tool select,.ops-inline-search input{width:100%;min-height:45px;padding:0 13px;border:1px solid #cbdbea;border-radius:11px;background:#fbfdff;color:#18314e;font-size:13px;outline:0}.ops-ipam-tool input:focus,.ops-ipam-tool select:focus,.ops-inline-search input:focus{border-color:#4b91e8;box-shadow:0 0 0 4px rgba(38,128,231,.1)}.ops-ipam-tool button{min-width:124px}
.ops-ipam-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px}.ops-ipam-steps article{display:grid;grid-template-columns:auto 1fr;gap:3px 11px;min-height:100px;padding:16px;border:1px solid #d8e4f0;border-radius:16px;background:linear-gradient(145deg,#fff,#f8fbff)}.ops-ipam-steps b{grid-row:1/3;display:grid;width:30px;height:30px;place-items:center;border-radius:10px;background:#eaf3ff;color:#0873d5;font-size:12px}.ops-ipam-steps strong{color:#1c3553;font-size:13px}.ops-ipam-steps span{color:#75849a;font-size:11px;line-height:1.45}.ops-juniper-note{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-bottom:18px;padding:17px 19px;border:1px solid #afe1cc;border-radius:17px;background:linear-gradient(105deg,#effcf7,#f7fffb);color:#175b49}.ops-juniper-note>span{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:#d9f7ea;color:#078660;font-size:18px}.ops-juniper-note b{font-size:14px}.ops-juniper-note p{margin:3px 0 0;color:#548071;font-size:12px;line-height:1.45}.ops-juniper-note em{padding:7px 10px;border-radius:20px;background:#d9f8e9;color:#087e59;font-size:9px;font-style:normal;font-weight:950;letter-spacing:.08em}
.ops-inline-search{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px;padding:12px;border:1px solid #d9e4ef;border-radius:15px;background:#fff}.ops-inline-search input{max-width:480px}.ops-inline-search span{padding:8px 11px;border-radius:20px;background:#eef4fb;color:#61758f;font-size:11px;font-weight:850}.ops-tech-table td:last-child{min-width:225px;white-space:nowrap}
.ipam-tech-modal .modal{width:min(860px,calc(100vw - 30px));max-width:860px;max-height:92vh;overflow:auto;border-radius:25px;box-shadow:0 32px 90px rgba(12,24,54,.28)}.ipam-tech-modal .modal-header{padding:22px 25px 12px}.ipam-tech-modal .modal-body{padding:0 25px 25px}.ops-modal-accent{display:flex;align-items:center;gap:14px;margin:0 -2px 20px;padding:17px 18px;border:1px solid #d9e6f4;border-radius:17px;background:radial-gradient(circle at 90% 0,rgba(129,49,236,.12),transparent 35%),linear-gradient(120deg,#eef8ff,#faf6ff)}.ops-modal-accent>span{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:linear-gradient(135deg,#0a83e7,#7537ea);color:#fff;font-size:16px;font-weight:950;box-shadow:0 10px 23px rgba(62,94,215,.25)}.ops-modal-accent b,.ops-modal-accent small{display:block}.ops-modal-accent b{color:#102c4c;font-size:16px}.ops-modal-accent small{margin-top:4px;color:#6d8096;font-size:12px}.ops-form-section{margin-bottom:16px;padding:17px;border:1px solid #dce6f1;border-radius:17px;background:#fcfdff}.ops-form-section>header{display:flex;align-items:center;gap:11px;margin-bottom:15px;padding-bottom:13px;border-bottom:1px solid #e5ecf4}.ops-form-section>header>span{display:grid;width:31px;height:31px;place-items:center;border-radius:10px;background:#e9f3ff;color:#0874d5;font-size:10px;font-weight:950}.ops-form-section>header b,.ops-form-section>header small{display:block}.ops-form-section>header b{color:#183654;font-size:14px}.ops-form-section>header small{margin-top:2px;color:#8290a3;font-size:11px}
.ops-customer-picker{position:relative}.ops-customer-search{display:grid;grid-template-columns:auto 1fr;align-items:center;border:1px solid #d5dfeb;border-radius:10px;background:#fff;transition:.18s}.ops-customer-search:focus-within{border-color:#6e7fe9;box-shadow:0 0 0 4px rgba(93,96,224,.1)}.ops-customer-search>span{padding-left:12px;color:#6d7c91;font-size:20px}.ops-customer-search input{border:0!important;box-shadow:none!important;background:transparent!important}.ops-customer-selected{display:block;margin-top:7px;color:#74849a;font-size:11px}.ops-customer-results{position:absolute;z-index:8;left:0;right:0;top:74px;max-height:290px;overflow:auto;padding:7px;border:1px solid #d5dfeb;border-radius:13px;background:#fff;box-shadow:0 20px 45px rgba(23,45,78,.17)}.ops-customer-results button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:11px;border:0;border-radius:10px;background:#fff;text-align:left;cursor:pointer}.ops-customer-results button:hover{background:#eff7ff}.ops-customer-results b,.ops-customer-results small{display:block}.ops-customer-results b{color:#193958;font-size:12px}.ops-customer-results small{margin-top:3px;color:#7b899c;font-size:11px}.ops-customer-results p{padding:15px;color:#7b899c;text-align:center}
.ops-scan-progress{padding:25px 10px;text-align:center}.ops-scan-progress>span{display:block;width:54px;height:54px;margin:0 auto 16px;border:5px solid #dfeaf5;border-top-color:#177ee1;border-right-color:#7937e8;border-radius:50%;animation:f23spin .8s linear infinite}.ops-scan-progress h3{margin:0;color:#173653;font-size:20px}.ops-scan-progress p{color:#77879a}.ops-scan-progress>div{height:9px;margin-top:18px;overflow:hidden;border-radius:20px;background:#e7edf4}.ops-scan-progress i{display:block;width:3%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0c8ee7,#6347ee,#ed26ba);transition:width .25s}.ops-tech-result{margin-top:10px}.ops-signal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.ops-signal-grid article{min-height:91px;padding:15px;border:1px solid #dce5ef;border-radius:14px;background:#f9fbfd}.ops-signal-grid article.safe{border-color:#b6e8d3;background:#effbf6}.ops-signal-grid article.warn{border-color:#f0d58e;background:#fff9e9}.ops-signal-grid article.danger{border-color:#f1bdc7;background:#fff3f5}.ops-signal-grid small,.ops-signal-grid strong{display:block}.ops-signal-grid small{color:#8491a4;font-size:9px;font-weight:900;letter-spacing:.08em}.ops-signal-grid strong{margin-top:8px;color:#183450;font-size:13px;word-break:break-word}.ops-result-note,.ops-result-warning,.ops-result-error{padding:14px 15px;border-radius:12px;font-size:13px;line-height:1.55}.ops-result-note{border:1px solid #cfe0ef;background:#f3f9ff;color:#42637f}.ops-result-warning{border:1px solid #efd399;background:#fff9e9;color:#8a5d13}.ops-result-error{border:1px solid #efbdc7;background:#fff3f5;color:#ad2942}.ops-candidate-list{display:grid;gap:10px}.ops-candidate-list article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:15px;border:1px solid #d8e4ef;border-radius:15px;background:linear-gradient(110deg,#fff,#f8fbff)}.ops-candidate-list small,.ops-candidate-list h3,.ops-candidate-list p{display:block;margin:0}.ops-candidate-list small{color:#1680b8;font-size:9px;font-weight:900;letter-spacing:.08em}.ops-candidate-list h3{margin-top:4px;color:#163552;font-size:16px}.ops-candidate-list p{margin-top:4px;color:#77879b;font-size:11px;line-height:1.4}
/* Navigazione amministratore e cliente: più leggibile, moderna e coerente con il portale. */
.sidebar{background:radial-gradient(circle at 0 0,rgba(36,151,238,.08),transparent 28%),linear-gradient(180deg,#fff 0%,#fbfcff 62%,#f7f4ff 100%);box-shadow:12px 0 38px rgba(22,48,83,.055)}.main-nav{padding:0 5px 10px}.main-nav p{display:flex;align-items:center;gap:8px;margin:18px 8px 8px;color:#667b98;font-size:9px;font-weight:950;letter-spacing:.17em}.main-nav p:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,#dce6f2,transparent)}.nav-item{min-height:47px;margin:5px 0;padding:0 11px;border:1px solid transparent;border-radius:13px;color:#5d6f88;font-size:12px}.nav-item>span:first-child{display:grid;width:31px;height:31px;flex:0 0 auto;place-items:center;border-radius:10px;background:#f0f5fb;color:#53708f;transition:.18s}.nav-item>span:first-child svg{width:16px}.nav-item:hover{border-color:#d8e5f2;background:#fff;color:#135f9d;box-shadow:0 8px 22px rgba(31,70,112,.07);transform:translateX(2px)}.nav-item.active{border-color:#cfbcfb;background:linear-gradient(105deg,#edf7ff,#f3edff 56%,#fff0fa);color:#5622c8;box-shadow:0 11px 28px rgba(91,42,190,.13)}.nav-item.active:before{left:-5px;height:30px;width:4px;box-shadow:0 0 14px rgba(132,40,231,.4)}.nav-item.active>span:first-child{background:linear-gradient(135deg,#0f83e9,#7a32ea);color:#fff;box-shadow:0 8px 18px rgba(73,74,218,.25)}.nav-item b{font-weight:750}.nav-count,.nav-alert,.nav-live{font-weight:900}
@media(max-width:1050px){.ops-ipam-workbench{grid-template-columns:1fr}.ops-ipam-steps{grid-template-columns:1fr 1fr}.ops-tech-kpis.six{grid-template-columns:repeat(3,1fr)}.ops-signal-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.ops-ipam-tool{grid-template-columns:1fr}.ops-ipam-tool form{grid-template-columns:1fr}.ops-ipam-steps,.ops-tech-kpis.six{grid-template-columns:1fr 1fr}.ops-juniper-note{grid-template-columns:auto 1fr}.ops-juniper-note em{grid-column:1/3;justify-self:start}.ops-signal-grid{grid-template-columns:1fr}.ops-candidate-list article{grid-template-columns:auto 1fr}.ops-candidate-list article>button{grid-column:1/3;width:100%}.ops-head-signal{display:none}.ipam-tech-modal .modal-body{padding:0 15px 18px}}

/* Console operativa reale: Data Center Visits, Fiber IPAM e F23 Debits */
[data-page="admin-debts"]{display:flex!important}
.ops-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;padding:25px 28px;border:1px solid #cfe0f3;border-radius:22px;background:linear-gradient(120deg,#f0f9ff,#f8f6ff 58%,#fff0fb);box-shadow:0 14px 36px rgba(27,65,113,.08)}.ops-page-head small{color:#0d7fc4;font-size:10px;font-weight:900;letter-spacing:.14em}.ops-page-head h1{margin:4px 0 5px;color:#112845;font-size:30px}.ops-page-head p{margin:0;color:#718198}.ops-tabs{display:flex;gap:7px;overflow:auto;margin-bottom:16px;padding:6px;border:1px solid #d9e4f0;border-radius:15px;background:#fff}.ops-tabs button{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 15px;border:0;border-radius:10px;background:transparent;color:#65758b;font-weight:850;white-space:nowrap;cursor:pointer}.ops-tabs button.active{color:#fff;background:linear-gradient(135deg,#137df2,#6f32ec);box-shadow:0 8px 20px rgba(65,75,218,.25)}.ops-tabs b{display:grid;min-width:22px;height:22px;padding:0 6px;place-items:center;border-radius:20px;background:#edf2f8;color:#40516a;font-size:11px}.ops-tabs button.active b{background:rgba(255,255,255,.2);color:#fff}.ops-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.ops-kpis.six{grid-template-columns:repeat(6,minmax(0,1fr))}.ops-kpis article{position:relative;overflow:hidden;min-height:112px;padding:19px;border:1px solid #d7e4f1;border-radius:17px;background:#fff;box-shadow:0 10px 26px rgba(24,59,101,.055)}.ops-kpis article:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(#0088f5,#7c39ee)}.ops-kpis small,.ops-kpis strong,.ops-kpis span{display:block}.ops-kpis small{color:#75869b;font-size:10px;font-weight:900;letter-spacing:.08em}.ops-kpis strong{margin:7px 0 4px;color:#102b4e;font-size:26px}.ops-kpis span{color:#718197;font-size:12px}.ops-table{margin-bottom:18px;overflow:hidden;border:1px solid #d7e3f0;border-radius:19px;background:#fff;box-shadow:0 13px 34px rgba(22,55,96,.06)}.ops-table>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #e1e9f2;background:linear-gradient(110deg,#fff,#f8fbff)}.ops-table h2,.ops-table p{margin:0}.ops-table h2{color:#14304f;font-size:19px}.ops-table p{margin-top:3px;color:#78879b;font-size:12px}.ops-table-scroll{overflow:auto}.ops-table table{width:100%;border-collapse:collapse}.ops-table th,.ops-table td{padding:14px 15px;border-bottom:1px solid #e7edf4;text-align:left;vertical-align:middle}.ops-table th{color:#7c8a9f;background:#f8fafc;font-size:10px;font-weight:900;letter-spacing:.07em;white-space:nowrap}.ops-table td{color:#263b58;font-size:13px}.ops-table td strong,.ops-table td small{display:block}.ops-table td small{margin-top:4px;color:#8a97a9}.ops-table tr:last-child td{border-bottom:0}.ops-table tbody tr:hover{background:#f8fbff}.ops-link{margin:2px;padding:7px 9px;border:1px solid #bcd7f3;border-radius:9px;background:#f3f9ff;color:#0869c6;font-size:12px;font-weight:850;cursor:pointer}.ops-link.danger{color:#bc2944;border-color:#f1c2cc;background:#fff4f6}.ops-pill{display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border-radius:20px;background:#edf2f7;color:#637289;font-size:11px;font-weight:900;white-space:nowrap}.ops-pill.success{color:#068557;background:#e6fbf2}.ops-pill.warning{color:#9a5d04;background:#fff1d4}.ops-pill.danger{color:#bd2342;background:#ffe8ed}.ops-empty{padding:28px!important;color:#77889e!important;text-align:center!important}.ops-dashboard-grid{display:grid;grid-template-columns:1.6fr .7fr;gap:16px}.ops-dashboard-grid article{padding:26px;border:1px solid #d7e3f0;border-radius:19px;background:#fff}.ops-dashboard-grid article.accent{display:flex;justify-content:center;flex-direction:column;color:#fff;background:linear-gradient(135deg,#07518e,#087fc7 55%,#6337d9)}.ops-dashboard-grid h2{margin:0;color:#153251}.ops-dashboard-grid p{color:#71849a}.ops-dashboard-grid .accent small{font-weight:900;letter-spacing:.1em}.ops-dashboard-grid .accent strong{margin:8px 0;font-size:43px}.ops-dashboard-grid .accent p{margin:0;color:#e5f4ff}.ops-feature-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.ops-feature-list span{padding:11px 12px;border-radius:10px;background:#eef7ff;color:#1b5f98;font-weight:800}.ops-cards{margin-bottom:18px;padding:20px;border:1px solid #d7e3f0;border-radius:19px;background:#fff}.ops-cards>article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:15px;border-top:1px solid #e5ebf2}.ops-cards>article:first-of-type{border-top:0}.ops-card-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,#0778d8,#7935e8);font-weight:900}.ops-cards h2,.ops-cards h3,.ops-cards p{margin:0}.ops-cards h3{margin:3px 0;color:#173453}.ops-cards p{color:#7d8b9d;font-size:12px}.ops-alert-list,.ops-settings{padding:21px;border:1px solid #d7e3f0;border-radius:19px;background:#fff}.ops-alert-list>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ops-alert-list h2,.ops-alert-list p{margin:0}.ops-alert-list article{display:grid;grid-template-columns:auto 1fr auto minmax(210px,.6fr);align-items:center;gap:14px;padding:13px 15px;margin-top:8px;border:1px solid #e0e8f1;border-radius:13px}.ops-alert-list article.overdue{border-color:#f4c0cb;background:#fff5f7}.ops-alert-list article.due{border-color:#f2d39b;background:#fffaf0}.ops-alert-list article small{display:block;color:#7c8da1}.ops-alert-list code{padding:9px;border-radius:8px;background:#eef6ff;color:#145b96;font-weight:800}.ops-settings{max-width:760px}.ops-settings form{display:grid;gap:14px;margin-top:18px}.ops-check{display:flex!important;align-items:center;gap:10px;min-height:45px;padding:10px 12px;border:1px solid #d5e2ef;border-radius:10px;background:#f8fbff;color:#304764;font-weight:800}.ops-check input{width:auto!important;min-height:0!important}.ops-note{padding:14px;border-radius:11px;background:#f4f8fc;color:#4b6079}.ops-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:16px 0}.ops-detail-grid>span{padding:13px;border:1px solid #dce6f0;border-radius:11px;background:#f8fbff}.ops-detail-grid small,.ops-detail-grid b{display:block}.ops-detail-grid small{color:#8190a3;font-size:10px;font-weight:900;text-transform:uppercase}.ops-detail-grid b{margin-top:5px;color:#173654}.ops-mini-table{margin:18px 0;max-height:330px;overflow:auto;border:1px solid #dce5ee;border-radius:13px}.ops-mini-table h3{margin:0;padding:14px;background:#f4f8fc}.ops-mini-table>div{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:12px;padding:11px 14px;border-top:1px solid #e5ebf2}.ops-mini-table small{display:block;color:#8190a3}.ops-mini-table em{color:#ba2944;font-style:normal}.wide{width:100%}
@media(max-width:1180px){.ops-kpis.six{grid-template-columns:repeat(3,1fr)}.ops-kpis{grid-template-columns:repeat(2,1fr)}.ops-alert-list article{grid-template-columns:auto 1fr auto}.ops-alert-list code{grid-column:2/4}.ops-detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.ops-page-head{align-items:flex-start;flex-direction:column}.ops-page-head .primary{width:100%}.ops-kpis,.ops-kpis.six,.ops-dashboard-grid{grid-template-columns:1fr}.ops-feature-list{grid-template-columns:1fr}.ops-alert-list article{grid-template-columns:1fr}.ops-alert-list code{grid-column:auto}.ops-detail-grid{grid-template-columns:1fr}.ops-mini-table>div{grid-template-columns:1fr 1fr}}

/* Fatture cliente: schede leggibili senza tabella orizzontale */
.f23-client-invoices{overflow:hidden;border:1px solid #dbe4f0;border-radius:22px;background:rgba(255,255,255,.86);box-shadow:0 18px 48px rgba(23,44,76,.08)}
.f23-client-invoice-list{display:grid;gap:14px;padding:18px;background:linear-gradient(145deg,#f8fbff,#fbf8ff)}
.f23-client-invoice-card{position:relative;overflow:hidden;border:1px solid #dce5f0;border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(22,43,72,.05)}
.f23-client-invoice-card:before{position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(#1286e7,#7b28eb);content:""}
.f23-client-invoice-card.is-paid:before{background:linear-gradient(#18b98a,#087959)}.f23-client-invoice-card.is-overdue:before{background:linear-gradient(#ff675f,#c52648)}.f23-client-invoice-card.is-pending:before{background:linear-gradient(#ffbd3e,#e77b16)}
.f23-client-invoice-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:15px;align-items:center;padding:20px 22px 16px}
.f23-client-invoice-mark{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:linear-gradient(145deg,#e9f5ff,#eee8ff);color:#6828e8}.f23-client-invoice-mark svg{width:22px}
.f23-client-invoice-title{min-width:0}.f23-client-invoice-title>small{color:#76869b;font-size:10px;font-weight:900;letter-spacing:.12em}.f23-client-invoice-title h3{margin:3px 0 5px;color:#102a4b;font-size:17px}.f23-client-invoice-title p{display:-webkit-box;margin:0!important;overflow:hidden;color:#50627a!important;font-size:13px!important;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.f23-client-invoice-total{display:grid;justify-items:end;gap:4px;min-width:155px}.f23-client-invoice-total>small{color:#7a889b;font-size:10px;font-weight:900;letter-spacing:.1em}.f23-client-invoice-total>strong{color:#102a4b;font:850 24px Manrope,sans-serif}
.f23-client-invoice-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #e5ebf2;border-bottom:1px solid #e5ebf2;background:#fbfcfe}.f23-client-invoice-details>span{min-height:82px;padding:14px 18px;border-right:1px solid #e5ebf2}.f23-client-invoice-details>span:last-child{border:0}.f23-client-invoice-details small,.f23-client-invoice-details b,.f23-client-invoice-details em{display:block}.f23-client-invoice-details small{color:#8a96a7;font-size:9px;font-weight:900;letter-spacing:.09em}.f23-client-invoice-details b{margin-top:5px;color:#193451;font-size:15px}.f23-client-invoice-details em{margin-top:3px;color:#708096;font-size:11px;font-style:normal}.f23-client-invoice-details .danger b,.f23-client-invoice-details .danger em{color:#ba2943}
.f23-client-invoice-card>footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 18px 12px 22px;color:#738198;font-size:11px}.f23-client-invoice-card>footer .f23-invoice-actions{margin:0}
@media(max-width:850px){.f23-client-invoice-card>header{grid-template-columns:auto 1fr}.f23-client-invoice-total{grid-column:1/-1;grid-template-columns:1fr auto;align-items:center;justify-items:start}.f23-client-invoice-total>small{display:none}.f23-client-invoice-details{grid-template-columns:1fr 1fr}.f23-client-invoice-details>span:nth-child(2){border-right:0}.f23-client-invoice-details>span:nth-child(-n+2){border-bottom:1px solid #e5ebf2}.f23-client-invoice-card>footer{align-items:stretch;flex-direction:column}.f23-client-invoice-card>footer .f23-invoice-actions>*{flex:1}}
.f23-service-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.f23-service-metrics article{padding:18px;border:1px solid #d7e3f1;border-radius:15px;background:linear-gradient(145deg,#fff,#f4f8ff)}.f23-service-metrics span,.f23-service-metrics strong,.f23-service-metrics small{display:block}.f23-service-metrics span{color:#64738b;font-size:12px;font-weight:850;text-transform:uppercase}.f23-service-metrics strong{margin:7px 0 3px;color:#112744;font-size:23px}.f23-service-metrics small{color:#7c899c}.f23-telemetry-state{display:flex;align-items:center;gap:16px;margin-bottom:18px;padding:15px 18px;border:1px solid #efcf91;border-radius:13px;background:#fff9e9;color:#765d2e}.f23-telemetry-state.live{border-color:#9fdfca;background:#effcf7;color:#11684e}.f23-telemetry-state b{white-space:nowrap}.f23-telemetry-state span{font-size:13px;line-height:1.5}.f23-service-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.f23-service-detail-grid>.panel{padding:22px}.f23-service-detail-grid>.full{grid-column:1/-1}.f23-service-detail-grid h3{margin:0 0 15px;color:#142945;font-size:18px}.f23-service-detail-grid dl{margin:0}.f23-service-detail-grid dl>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid #e8edf4}.f23-service-detail-grid dt{color:#718098}.f23-service-detail-grid dd{margin:0;color:#152a47;font-weight:800;text-align:right}.f23-service-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.f23-service-options span{padding:13px 15px;border:1px solid #dce5f1;border-radius:11px;background:#f8fbff}.f23-service-options small,.f23-service-options b{display:block}.f23-service-options small{margin-bottom:5px;color:#718098}.f23-service-options b{color:#142b4a}
@media(max-width:760px){.f23-service-metrics,.f23-service-detail-grid,.f23-service-options{grid-template-columns:1fr}.f23-service-detail-grid>.full{grid-column:auto}.f23-telemetry-state{align-items:flex-start;flex-direction:column;gap:5px}}

.f23-service-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.f23-service-card{position:relative;overflow:hidden;border:1px solid #d9e4f0;border-radius:20px;background:linear-gradient(145deg,#fff 30%,#f7f9ff);box-shadow:0 16px 35px rgba(30,52,86,.07)}.f23-service-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#0a96ef,#6f31ef,#f119b2)}.f23-service-card>header{display:flex;align-items:center;justify-content:space-between;padding:19px 20px 0}.f23-service-kind{color:#336182;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.f23-service-title{display:flex;align-items:center;gap:14px;padding:18px 20px}.f23-service-title>span{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:linear-gradient(145deg,#0b6fae,#7536db);color:#fff;box-shadow:0 9px 20px rgba(74,63,204,.2)}.f23-service-title svg{width:22px}.f23-service-title h3{margin:0;color:#14243d;font-size:20px}.f23-service-title p{margin:5px 0 0;color:#78869b;font-size:13px}.f23-service-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:0 20px 18px}.f23-service-facts span{min-width:0;padding:11px 12px;border:1px solid #e0e8f2;border-radius:11px;background:rgba(246,249,254,.9)}.f23-service-facts small,.f23-service-facts b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.f23-service-facts small{color:#8290a4;font-size:10px;font-weight:850;text-transform:uppercase}.f23-service-facts b{margin-top:4px;color:#243752;font-size:13px}.f23-service-clean-note{margin:0 20px 18px;padding:15px;border:1px dashed #cbd9ea;border-radius:12px;color:#6d7b91;background:#f8fbff}.f23-service-card>footer{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:22px;padding:16px 20px;border-top:1px solid #e5ebf3;background:rgba(248,250,255,.82)}.f23-service-card>footer small,.f23-service-card>footer strong{display:block}.f23-service-card>footer small{color:#8b97a9;font-size:10px;font-weight:850}.f23-service-card>footer strong{margin-top:3px;color:#172944;font-size:14px}.f23-service-card>footer button{justify-self:end}.f23-service-card>footer button svg{width:15px}
.f23-as-grid{display:grid;gap:18px}.f23-as-grid>article{overflow:hidden;border:1px solid #cfe0ed;border-radius:20px;background:#fff;box-shadow:0 18px 40px rgba(31,53,83,.08)}.f23-as-grid>article>header{display:flex;align-items:flex-start;justify-content:space-between;padding:26px;background:linear-gradient(118deg,#073d64,#087b88 58%,#5332bd);color:#fff}.f23-as-grid header small{color:#71f2eb;font-size:11px;font-weight:900;letter-spacing:.12em}.f23-as-grid header h2{margin:7px 0 4px;font-size:34px}.f23-as-grid header p{margin:0;color:#dceefa}.f23-as-facts{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #e2e9f1}.f23-as-facts span{padding:18px 22px;border-right:1px solid #e2e9f1}.f23-as-facts span:last-child{border-right:0}.f23-as-facts small,.f23-as-facts b{display:block}.f23-as-facts small{color:#8090a4;font-size:11px;font-weight:850;text-transform:uppercase}.f23-as-facts b{margin-top:5px;color:#172b47}.f23-as-grid>article>section{padding:21px 24px 25px}.f23-as-grid h3{margin:0 0 13px;color:#182d49}.f23-prefix-list{display:flex;flex-wrap:wrap;gap:10px}.f23-prefix-list>span{display:flex;align-items:center;gap:13px;padding:10px 12px;border:1px solid #d8e7f0;border-radius:11px;background:#f5fbff;color:#163653}
.f23-contract-list{display:grid;gap:12px}.f23-contract-list>article{display:grid;grid-template-columns:auto minmax(240px,1.4fr) minmax(230px,.8fr) auto auto;align-items:center;gap:20px;padding:18px 20px;border:1px solid #dce5ef;border-radius:17px;background:linear-gradient(100deg,#fff,#fbf9ff);box-shadow:0 12px 28px rgba(33,53,82,.06)}.f23-contract-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;background:#efe8ff;color:#7028e9}.f23-contract-icon svg{width:21px}.f23-contract-list h3{margin:4px 0;color:#17263f;font-size:18px}.f23-contract-list p{margin:0;color:#738198}.f23-contract-list>article>div>small{color:#7851c7;font-size:10px;font-weight:900;letter-spacing:.1em}.f23-contract-list dl{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0}.f23-contract-list dt{color:#8a96a8;font-size:11px;text-transform:uppercase}.f23-contract-list dd{margin:5px 0 0;color:#1b304c;font-weight:800}.f23-contract-preview{margin-top:18px;overflow:hidden;border:1px solid #dce5ef;border-radius:17px}.f23-contract-preview>header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;background:linear-gradient(118deg,#0b3e69,#176b9b 55%,#7130c8);color:#fff}.f23-contract-preview>header small{color:#82f0ff;font-size:10px;font-weight:900;letter-spacing:.12em}.f23-contract-preview>header h3{margin:7px 0 4px;font-size:24px}.f23-contract-preview>header p{margin:0!important;color:#deebfa!important}.f23-contract-facts{display:grid;grid-template-columns:repeat(4,1fr)}.f23-contract-facts span{padding:17px;border-right:1px solid #e2e9f1}.f23-contract-facts span:last-child{border-right:0}.f23-contract-facts small,.f23-contract-facts b{display:block}.f23-contract-facts small{color:#8290a4;font-size:10px;font-weight:850;text-transform:uppercase}.f23-contract-facts b{margin-top:5px;color:#172b47}.f23-admin-debts{margin-top:22px}.f23-admin-debts .panel-head{padding:20px}.f23-admin-debts .panel-head h2{margin:0}.f23-admin-debts .panel-head p{margin:5px 0 0;color:#7a8799}
@media(max-width:980px){.f23-service-cards{grid-template-columns:1fr}.f23-contract-list>article{grid-template-columns:auto 1fr auto}.f23-contract-list dl{grid-column:2}.f23-contract-list>article>button{grid-column:2/4}.f23-contract-facts{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.f23-service-card>footer{grid-template-columns:1fr 1fr}.f23-service-card>footer button{grid-column:1/-1;width:100%}.f23-as-facts{grid-template-columns:1fr}.f23-as-facts span{border-right:0;border-bottom:1px solid #e2e9f1}.f23-contract-list>article{grid-template-columns:1fr}.f23-contract-list dl,.f23-contract-list>article>button{grid-column:auto}.f23-contract-facts{grid-template-columns:1fr}.f23-contract-facts span{border-right:0;border-bottom:1px solid #e2e9f1}}

/* VPS cliente: esclusivamente inventario reale associato all'account. */
.client-nav [data-page="client-vps"][hidden]{display:none!important}
.f23-vps-empty{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:54px 28px!important;border:1px solid #d5e2f2!important;background:radial-gradient(circle at 50% 0,rgba(106,61,235,.12),transparent 42%),linear-gradient(145deg,#fff,#f7fbff 58%,#fbf7ff)!important;box-shadow:0 18px 48px rgba(23,53,94,.08)!important}
.f23-vps-empty>span{display:grid;place-items:center;width:76px;height:76px;border-radius:23px;background:linear-gradient(135deg,#128bea,#6939ef 62%,#ee20b7);color:#fff;box-shadow:0 15px 32px rgba(91,54,229,.26)}
.f23-vps-empty>span svg{width:34px;height:34px}.f23-vps-empty h2{margin:24px 0 8px;color:#101e37;font-size:28px}.f23-vps-empty p{max-width:650px;margin:0 0 24px;color:#5f6f89;font-size:16px;line-height:1.65}.f23-vps-empty .primary{min-width:180px;min-height:48px;border-radius:12px}
.f23-vps-real-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.f23-vps-real-grid>article{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:start;overflow:hidden;padding:24px;border:1px solid #d7e2f1;border-radius:19px;background:linear-gradient(145deg,#fff,#f6faff);box-shadow:0 16px 38px rgba(24,52,92,.08)}.f23-vps-real-grid>article:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#0d8df0,#6a3cef 60%,#e923be)}
.f23-vps-real-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:linear-gradient(135deg,#138eef,#693cef);color:#fff}.f23-vps-real-icon svg{width:24px}.f23-vps-real-grid article>div:nth-child(2)>span{display:block;color:#62728b;font-size:12px;font-weight:850;text-transform:uppercase}.f23-vps-real-grid h3{margin:5px 0 4px;color:#102440;font-size:20px}.f23-vps-real-grid p{margin:0;color:#718098;font-size:14px}.f23-vps-real-grid dl{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);margin:0;border:1px solid #e0e8f3;border-radius:13px;background:#fff}.f23-vps-real-grid dl>div{padding:13px 15px;border-right:1px solid #e5ebf3}.f23-vps-real-grid dl>div:last-child{border-right:0}.f23-vps-real-grid dt{color:#77859a;font-size:11px;font-weight:850;text-transform:uppercase}.f23-vps-real-grid dd{margin:6px 0 0;color:#142b4b;font-size:14px;font-weight:850}.f23-vps-real-grid>article>button{grid-column:3;min-width:110px}
@media(max-width:1000px){.f23-vps-real-grid{grid-template-columns:1fr}}@media(max-width:620px){.f23-vps-real-grid>article{grid-template-columns:auto 1fr}.f23-vps-real-grid dl{grid-template-columns:1fr}.f23-vps-real-grid dl>div{border-right:0;border-bottom:1px solid #e5ebf3}.f23-vps-real-grid dl>div:last-child{border-bottom:0}.f23-vps-real-grid>article>button{grid-column:1/-1;width:100%}}

/* Inventari operativi WHMCS: AS/BGP, IPAM e Fiber MMR */
.f23-network-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.f23-network-columns>section{margin:0!important;padding:18px;border:1px solid #dbe7f3;border-radius:16px;background:#f8fbff}.f23-peer-list{display:grid;gap:9px}.f23-peer-list>span{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center;padding:12px 13px;border:1px solid #d9e7f4;border-radius:12px;background:#fff}.f23-peer-list b{color:#12385d;font-size:15px}.f23-peer-list small{grid-column:1/2;color:#718198;font-size:12px}.f23-peer-list .status-badge{grid-column:2;grid-row:1/3}
.f23-resource-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:16px 0}.f23-resource-kpis.admin{grid-template-columns:repeat(6,minmax(0,1fr))}.f23-resource-kpis article{position:relative;overflow:hidden;min-height:118px;padding:20px;border:1px solid #d6e4f2;border-radius:18px;background:linear-gradient(145deg,#fff,#f4f9ff);box-shadow:0 12px 30px rgba(23,53,91,.06)}.f23-resource-kpis article:after{content:"";position:absolute;right:-30px;top:-34px;width:105px;height:105px;border-radius:50%;background:linear-gradient(135deg,rgba(31,142,237,.11),rgba(157,45,239,.12))}.f23-resource-kpis small{display:block;color:#718097;font-size:10px;font-weight:900;letter-spacing:.07em}.f23-resource-kpis strong{position:relative;z-index:1;display:block;margin:7px 0 5px;color:#102f53;font-size:30px}.f23-resource-kpis span{color:#718198;font-size:12px}.f23-resource-table{overflow:hidden}.f23-resource-table .data-table{min-width:920px}.f23-resource-table td small{display:block;margin-top:4px;color:#8491a4}.f23-resource-table .status-badge{white-space:nowrap}
.f23-mmr-port-grid,.f23-mmr-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:16px 0}.f23-mmr-port-grid article,.f23-mmr-panel-grid article{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:18px;border:1px solid #d9e4f1;border-radius:17px;background:#fff;box-shadow:0 12px 28px rgba(19,46,82,.06)}.f23-mmr-port-grid article>span:first-child,.f23-mmr-panel-grid article>span:first-child{display:grid;width:44px;height:44px;place-items:center;border-radius:13px;background:linear-gradient(135deg,#e9f5ff,#f3e7ff);color:#5d2be2}.f23-mmr-port-grid svg,.f23-mmr-panel-grid svg{width:21px}.f23-mmr-port-grid small,.f23-mmr-panel-grid small{color:#2586b8;font-size:9px;font-weight:900;letter-spacing:.08em}.f23-mmr-port-grid h3,.f23-mmr-panel-grid h3{margin:3px 0;color:#183754;font-size:17px}.f23-mmr-port-grid p,.f23-mmr-panel-grid p{margin:0;color:#76869b;font-size:12px}
@media(max-width:1100px){.f23-resource-kpis.admin{grid-template-columns:repeat(3,1fr)}.f23-mmr-port-grid,.f23-mmr-panel-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.f23-network-columns,.f23-resource-kpis,.f23-resource-kpis.admin,.f23-mmr-port-grid,.f23-mmr-panel-grid{grid-template-columns:1fr}.f23-resource-kpis article{min-height:100px}}

/* Ordini, servizi, contratti e automazioni operative */
.f23-order-kpis,.f23-service-admin-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}.f23-order-kpis article,.f23-service-admin-kpis article{padding:18px 20px;border:1px solid #dce6f3;border-radius:18px;background:linear-gradient(145deg,#fff,#f7f9ff);box-shadow:0 14px 35px #1c3e6810}.f23-order-kpis small,.f23-service-admin-kpis small{color:#8490a5;font-size:11px;font-weight:900;letter-spacing:.08em}.f23-order-kpis strong,.f23-service-admin-kpis strong{display:block;margin:7px 0 3px;color:#102a4d;font-size:27px}.f23-order-kpis span,.f23-service-admin-kpis span{color:#718098;font-size:12px}.f23-order-board{display:grid;gap:13px}.f23-order-card{display:grid;grid-template-columns:48px minmax(0,1fr) 170px 118px;align-items:center;gap:16px;padding:17px 18px;border:1px solid #dae5f2;border-left:5px solid #f59e0b;border-radius:18px;background:#fff;box-shadow:0 12px 32px #17365b0d}.f23-order-card.is-paid{border-left-color:#10b981}.f23-order-card.is-cancelled{border-left-color:#ef4444;opacity:.72}.f23-order-card-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#f3e8ff;color:#7c3aed}.f23-order-card-main small,.f23-order-card-total small{color:#8b95a8;font-size:10px;font-weight:900;letter-spacing:.08em}.f23-order-card-main h3{margin:4px 0;color:#17223a;font-size:16px}.f23-order-card-main p{margin:0 0 8px;color:#65748d;font-size:13px}.f23-order-card-main>div{display:flex;align-items:center;gap:10px;color:#60708a;font-size:12px}.f23-order-card-total strong{display:block;margin:5px 0;color:#16233d;font-size:20px}.f23-order-card-total span{color:#738198;font-size:11px}.f23-order-card-actions{display:grid;gap:7px}.secondary.danger,.primary.danger{border-color:#fecaca;color:#b91c1c;background:#fff1f2}.f23-service-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.f23-service-admin-grid>article{border:1px solid #dce5f2;border-top:4px solid #8b5cf6;border-radius:20px;background:#fff;box-shadow:0 15px 35px #17365b0d;overflow:hidden}.f23-service-admin-grid>article.success{border-top-color:#10b981}.f23-service-admin-grid>article.warning{border-top-color:#f59e0b}.f23-service-admin-grid>article.danger{border-top-color:#ef4444}.f23-service-admin-grid header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:13px;align-items:start;padding:18px}.f23-service-admin-grid header>span:first-child{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#f3e8ff;color:#7c3aed}.f23-service-admin-grid header small{color:#7d8ba0;font-size:10px;font-weight:900;text-transform:uppercase}.f23-service-admin-grid h3{margin:3px 0;color:#132844;font-size:17px}.f23-service-admin-grid header p{margin:0;color:#718096;font-size:12px}.f23-service-admin-facts{display:flex;gap:8px;flex-wrap:wrap;padding:0 18px 15px}.f23-service-admin-facts span{padding:7px 10px;border-radius:9px;background:#f3f6fb;color:#51627a;font-size:12px}.f23-service-admin-grid footer{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;padding:14px 18px;background:#f8faff;border-top:1px solid #e8edf5}.f23-service-admin-grid footer small{display:block;color:#8995a8;font-size:9px;font-weight:900}.f23-service-admin-grid footer b{color:#152844;font-size:13px}.f23-contract-admin-hero{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:22px 24px;border-radius:20px;background:linear-gradient(120deg,#0c385c,#3158bd 70%,#6d28d9);color:#fff}.f23-contract-admin-hero small{color:#9fe8f0;font-weight:900;letter-spacing:.08em}.f23-contract-admin-hero h2{margin:5px 0;font-size:24px}.f23-contract-admin-hero p{margin:0;color:#dbeafe}.f23-contract-admin-list{display:grid;gap:12px}.f23-contract-admin-list>article{display:grid;grid-template-columns:48px minmax(0,1fr) 280px auto 190px;gap:16px;align-items:center;padding:16px 18px;border:1px solid #dce5f2;border-radius:17px;background:#fff}.f23-contract-admin-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#ede9fe;color:#7c3aed}.f23-contract-admin-list h3{margin:3px 0;color:#14243b;font-size:15px}.f23-contract-admin-list p{margin:0;color:#738198;font-size:12px}.f23-contract-admin-list dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.f23-contract-admin-list dt{color:#8a95a8;font-size:9px;font-weight:900}.f23-contract-admin-list dd{margin:3px 0 0;color:#24344e;font-size:12px;font-weight:800}.f23-contract-admin-actions{display:flex;justify-content:flex-end;gap:7px}.f23-contract-admin-actions a{padding:9px 12px;border-radius:10px;text-decoration:none;font-size:12px;font-weight:800}.f23-automation-alerts{margin:0 0 18px;padding:18px;border:1px solid #fecaca;border-radius:18px;background:#fff7f7}.f23-automation-alerts header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.f23-automation-alerts header small{color:#dc2626;font-weight:900}.f23-automation-alerts h2{margin:3px 0;color:#7f1d1d;font-size:20px}.f23-automation-alerts article{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border-top:1px solid #fee2e2}.f23-automation-alerts article p{margin:2px 0;color:#7d3b3b}.f23-automation-alerts article>small{color:#9f6c6c}.f23-client-reliability.is-regular{border-color:#a7f3d0;background:linear-gradient(120deg,#ecfdf5,#effdfb)}.f23-client-reliability.is-irregular{border-color:#fecaca;background:linear-gradient(120deg,#fff1f2,#fff7ed);color:#991b1b}.f23-client-reliability>div{display:flex;align-items:center;gap:12px}.f23-reliability-face{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;font-size:24px}.bank-account-list{display:grid;gap:10px;margin:16px 0}.bank-account-list article{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px;border:1px solid #dce5f2;border-radius:14px;background:#f8faff}.bank-account-list article small,.bank-payment-reference small{display:block;color:#7d8ba0;font-size:10px;font-weight:900}.bank-account-list article b{display:block;margin:3px 0;color:#273650}.bank-account-list article strong{font-family:monospace;color:#5422b8;font-size:15px;letter-spacing:.03em}.bank-account-list button{padding:8px 10px;border:1px solid #d8c7ff;border-radius:9px;background:#fff;color:#6922d8;font-weight:800}.bank-payment-reference{padding:14px;border-radius:13px;background:linear-gradient(110deg,#102f58,#5830bd);color:#fff}.bank-payment-reference b{display:block;margin-top:5px;font-size:16px}.bank-loading{padding:16px;border-radius:13px;background:#f6f7fb;color:#68758a}.bank-loading small{display:block;margin-top:4px}
@media(max-width:980px){.f23-order-kpis,.f23-service-admin-kpis{grid-template-columns:repeat(2,1fr)}.f23-order-card{grid-template-columns:48px 1fr}.f23-order-card-total,.f23-order-card-actions{grid-column:2}.f23-service-admin-grid{grid-template-columns:1fr}.f23-contract-admin-list>article{grid-template-columns:44px 1fr}.f23-contract-admin-list dl,.f23-contract-admin-list>.status-badge,.f23-contract-admin-actions{grid-column:2}.f23-contract-admin-actions{justify-content:flex-start}}@media(max-width:600px){.f23-order-kpis,.f23-service-admin-kpis{grid-template-columns:1fr}.f23-order-card{grid-template-columns:1fr}.f23-order-card>*{grid-column:1}.f23-service-admin-grid footer{grid-template-columns:1fr 1fr}.f23-service-admin-grid footer button{grid-column:1/-1}}
.f23-load-more{display:flex;justify-content:center;align-items:center;gap:18px;margin:20px 0;padding:15px;border:1px dashed #cfd9e8;border-radius:15px;color:#68778e}.f23-load-more button{padding:10px 16px}

/* Fatture cliente: vista compatta e leggibile */
.f23-client-invoices.compact{overflow:hidden;border:1px solid #dce5f1;border-radius:20px;background:#fff;box-shadow:0 16px 44px rgba(28,54,89,.08)}
.f23-client-invoice-columns,.f23-client-invoice-row{display:grid;grid-template-columns:minmax(210px,1.4fr) minmax(165px,.85fr) minmax(205px,1.05fr) 100px 125px;gap:12px;align-items:center}
.f23-client-invoice-columns{padding:11px 18px;border-top:1px solid #edf1f6;border-bottom:1px solid #e4eaf2;background:#f7f9fd;color:#8b95a8;font-size:10px;font-weight:900;letter-spacing:.07em}
.f23-client-invoice-list.compact{display:block;padding:0;background:#fff}
.f23-client-invoice-row{position:relative;min-height:76px;padding:13px 18px 13px 22px;border-bottom:1px solid #e9edf3;background:#fff}
.f23-client-invoice-row:last-child{border-bottom:0}.f23-client-invoice-row:before{position:absolute;inset:0 auto 0 0;width:4px;background:#f59e0b;content:""}.f23-client-invoice-row.is-paid:before{background:#10b981}.f23-client-invoice-row.is-overdue:before{background:#ef4444}
.f23-ci-document{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:center;min-width:0}.f23-ci-document>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:linear-gradient(145deg,#eef7ff,#f4e9ff);color:#6824df}.f23-ci-document svg{width:17px;height:17px}.f23-ci-document small,.f23-ci-dates small,.f23-ci-money small{display:block;color:#8b95a8;font-size:9px;font-weight:900;letter-spacing:.06em}.f23-ci-document b{display:block;margin:2px 0;color:#16233d;font-size:14px}.f23-ci-document em{display:block;overflow:hidden;color:#66758d;font-size:12px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}
.f23-ci-dates,.f23-ci-money{display:grid;grid-template-columns:1fr 1fr;gap:10px}.f23-ci-money{grid-template-columns:repeat(3,1fr)}.f23-ci-dates b,.f23-ci-money b{display:block;margin-top:4px;color:#1e2d47;font-size:12px}.f23-ci-dates em{display:block;margin-top:2px;color:#8490a4;font-size:10px;font-style:normal}.f23-ci-dates em.danger{color:#c6283f;font-weight:800}.f23-ci-money .total b{color:#5522bd;font-size:14px}.f23-ci-state{display:grid;justify-items:start;gap:4px}.f23-ci-state small{color:#7c889b;font-size:10px}.f23-ci-actions{display:flex;justify-content:flex-end;gap:7px}.f23-ci-actions button{min-width:62px;padding:9px 10px;font-size:11px}.f23-ci-actions svg{width:14px;height:14px}

/* Stato pagamenti semplice */
.f23-client-reliability{position:relative;min-height:88px;padding:18px 24px!important;margin-bottom:18px!important;border:0!important;border-radius:20px!important;overflow:hidden;background:linear-gradient(115deg,#0b3b61 0%,#176c83 52%,#4f2eb8 100%)!important;color:#fff!important;box-shadow:0 18px 42px rgba(23,55,104,.18)}.f23-client-reliability:after{content:"";position:absolute;right:17%;top:-95px;width:230px;height:230px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 40px rgba(255,255,255,.05),0 0 0 78px rgba(255,255,255,.035)}.f23-client-reliability.is-irregular{background:linear-gradient(115deg,#6f1d35 0%,#b3374b 48%,#d97720 100%)!important}.f23-client-reliability>div{position:relative;z-index:1;display:flex!important;align-items:center;gap:14px}.f23-client-reliability .f23-reliability-main>span:last-child{display:grid;gap:3px}.f23-reliability-signal{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.15);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 10px 24px rgba(3,18,40,.16)}.f23-reliability-signal svg{width:22px;height:22px}.f23-client-reliability small{display:block;color:#99f6e4;font-size:10px!important;font-weight:900;letter-spacing:.1em}.f23-client-reliability b{display:block;color:#fff;font-size:21px!important}.f23-client-reliability b i{font-style:normal;color:rgba(255,255,255,.55)}.f23-reliability-meta{position:relative;z-index:1;display:grid!important;justify-items:end!important;gap:3px!important;text-align:right}.f23-reliability-meta strong{color:#fff;font-size:15px}.f23-reliability-meta span{color:rgba(255,255,255,.78);font-size:12px}.f23-client-reliability.is-irregular small{color:#ffe4c7}

.f23-panel-actions{display:flex;gap:9px;align-items:center}.f23-reminder-confirm{display:flex;gap:14px;align-items:flex-start;padding:17px;margin:18px 0;border:1px solid #fed7aa;border-radius:14px;background:#fff8ed;color:#8b4a08}.f23-reminder-confirm>svg{flex:0 0 auto;width:22px}.f23-reminder-confirm p{margin:5px 0 0;color:#8a6840;line-height:1.45}
.f23-bank-config-form{min-width:min(760px,80vw)}.f23-bank-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.f23-bank-config-grid>section{padding:16px;border:1px solid #dce5f1;border-radius:16px;background:#f9fbff}.f23-bank-config-grid header{display:flex;gap:11px;align-items:center;margin-bottom:14px}.f23-bank-config-grid header>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,#2389ed,#7c2ae9);color:#fff;font-size:11px;font-weight:900}.f23-bank-config-grid header b,.f23-bank-config-grid header small{display:block}.f23-bank-config-grid header small{margin-top:2px;color:#7b889d;font-size:11px}.f23-bank-privacy{display:flex;gap:9px;align-items:center;margin:14px 0;padding:12px 14px;border-radius:12px;background:#eef9f6;color:#08775a;font-size:12px;font-weight:700}.f23-bank-privacy svg{width:17px}

@media(max-width:1150px){.f23-client-invoice-columns{display:none}.f23-client-invoice-row{grid-template-columns:minmax(230px,1.4fr) minmax(170px,1fr) minmax(220px,1.2fr) 110px}.f23-ci-actions{grid-column:1/-1;justify-content:flex-end;margin-top:-4px}}
@media(max-width:760px){.f23-client-invoice-row{grid-template-columns:1fr;gap:12px;padding:16px 16px 16px 20px}.f23-ci-dates,.f23-ci-money{padding-left:48px}.f23-ci-state,.f23-ci-actions{padding-left:48px;justify-content:flex-start}.f23-ci-actions button{flex:1}.f23-bank-config-form{min-width:0}.f23-bank-config-grid{grid-template-columns:1fr}.f23-panel-actions{align-items:stretch;flex-direction:column}.f23-client-reliability{align-items:flex-start!important;padding:17px!important}.f23-reliability-meta{padding-left:62px;text-align:left;justify-items:start!important}.f23-client-reliability:after{right:-90px}}

/* Verbali: archivio operativo assegnabile e PDF cliente */
.f23-minute-list{display:grid;gap:14px}.f23-minute-list>article{position:relative;display:grid;grid-template-columns:auto minmax(260px,1fr) minmax(210px,.55fr) auto;gap:18px;align-items:center;overflow:hidden;padding:20px 22px;border:1px solid #d9e4f1;border-radius:19px;background:linear-gradient(120deg,#fff 60%,#f8f5ff);box-shadow:0 15px 36px rgba(25,52,89,.07)}.f23-minute-list>article:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#178fe9,#7433e9 60%,#e927b5)}.f23-minute-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:linear-gradient(145deg,#e8f5ff,#f0e7ff);color:#6829e2}.f23-minute-icon svg{width:23px}.f23-minute-copy{min-width:0}.f23-minute-copy small{color:#367ea7;font-size:10px;font-weight:900;letter-spacing:.11em}.f23-minute-copy h3{margin:4px 0;color:#122844;font-size:19px}.f23-minute-copy p{display:-webkit-box;margin:0;color:#687890;font-size:13px;line-height:1.48;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.f23-minute-list dl{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:0}.f23-minute-list dt{color:#8995a7;font-size:9px;font-weight:900;text-transform:uppercase}.f23-minute-list dd{margin:5px 0 0;color:#1b304c;font-size:13px;font-weight:800}.f23-minute-actions,.f23-table-actions{display:flex;gap:8px;align-items:center}.f23-minute-actions a{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 13px;border-radius:10px;text-decoration:none;font-size:12px;font-weight:850}.f23-minute-actions svg{width:15px}
.f23-minute-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.f23-minute-kpis article{position:relative;overflow:hidden;padding:20px;border:1px solid #dbe5f2;border-radius:18px;background:linear-gradient(145deg,#fff,#f6f9ff);box-shadow:0 12px 30px rgba(21,49,86,.06)}.f23-minute-kpis article:after{content:"";position:absolute;right:-25px;top:-40px;width:115px;height:115px;border-radius:50%;background:linear-gradient(135deg,#168ce91c,#9c2de926)}.f23-minute-kpis small,.f23-minute-kpis strong,.f23-minute-kpis span{display:block}.f23-minute-kpis small{color:#7f8da2;font-size:10px;font-weight:900;letter-spacing:.08em}.f23-minute-kpis strong{position:relative;z-index:1;margin:7px 0 3px;color:#112c4e;font-size:29px}.f23-minute-kpis span{color:#718097;font-size:12px}.f23-minute-admin-table{overflow:auto}.f23-minute-admin-table table{min-width:1120px}.f23-minute-description{max-width:310px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.f23-minute-admin-table .f23-table-actions{white-space:nowrap}.f23-minute-admin-table .f23-link-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 11px;text-decoration:none}
@media(max-width:950px){.f23-minute-list>article{grid-template-columns:auto 1fr}.f23-minute-list dl,.f23-minute-actions{grid-column:2}.f23-minute-actions{flex-wrap:wrap}.f23-minute-kpis{grid-template-columns:1fr 1fr 1fr}}@media(max-width:620px){.f23-minute-list>article{grid-template-columns:1fr}.f23-minute-list dl,.f23-minute-actions{grid-column:1}.f23-minute-actions>*{flex:1}.f23-minute-kpis{grid-template-columns:1fr}}

/* Servizi: righe orizzontali pulite come le fatture */
.f23-service-rows,.f23-admin-service-rows{display:grid;gap:12px}.f23-service-rows>article,.f23-admin-service-rows>article{position:relative;display:grid;grid-template-columns:auto minmax(250px,1.35fr) minmax(230px,.75fr) auto 140px;gap:17px;align-items:center;overflow:hidden;min-height:92px;padding:17px 18px 17px 22px;border:1px solid #d9e4f1;border-radius:18px;background:linear-gradient(100deg,#fff,#f8fbff);box-shadow:0 12px 30px rgba(23,50,84,.06)}.f23-service-rows>article:before,.f23-admin-service-rows>article:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(#1595ea,#7538ea)}.f23-service-rows>article.is-warning:before,.f23-admin-service-rows>article.is-warning:before{background:#f59e0b}.f23-admin-service-rows>article.is-danger:before{background:#ef4444}.f23-service-row-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,#e9f5ff,#f2e9ff);color:#672ae2}.f23-service-row-icon svg{width:21px}.f23-service-row-title{min-width:0}.f23-service-row-title small{color:#2f82ad;font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.f23-service-row-title h3{margin:4px 0;color:#142842;font-size:17px}.f23-service-row-title p{overflow:hidden;margin:0;color:#6d7c91;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.f23-service-row-finance{display:grid;grid-template-columns:1fr 1fr;gap:18px}.f23-service-row-finance small,.f23-service-row-finance b{display:block}.f23-service-row-finance small{color:#8995a7;font-size:9px;font-weight:900;letter-spacing:.07em}.f23-service-row-finance b{margin-top:5px;color:#19304d;font-size:14px}.f23-service-rows>article>button,.f23-admin-service-rows>article>button{justify-self:end}.f23-admin-service-rows.global{margin-top:14px}
.f23-contract-termination-state{display:flex;align-items:center;gap:12px;margin:16px;padding:14px 16px;border:1px solid #f0c36c;border-radius:12px;background:#fff8e7;color:#7c5008}.f23-contract-termination-state svg{width:21px}.f23-contract-termination-state b,.f23-contract-termination-state small{display:block}.f23-contract-termination-state small{margin-top:4px;color:#876b3c}.f23-contract-penalty-warning{display:flex;gap:13px;margin:18px 0;padding:16px;border:1px solid #f3c36b;border-radius:14px;background:#fff8e8;color:#80520a}.f23-contract-penalty-warning>svg{flex:0 0 auto;width:22px}.f23-contract-penalty-warning p{margin:5px 0 0;color:#7b6846;line-height:1.5}.f23-termination-check{display:flex;gap:10px;align-items:flex-start;margin:15px 0;padding:13px;border:1px solid #dde5ef;border-radius:12px;background:#f8faff;color:#34465f;font-size:13px;font-weight:750}.f23-termination-check input{margin-top:3px}
@media(max-width:980px){.f23-service-rows>article,.f23-admin-service-rows>article{grid-template-columns:auto 1fr auto}.f23-service-row-finance{grid-column:2}.f23-service-rows>article>button,.f23-admin-service-rows>article>button{grid-column:3;grid-row:1/3}}@media(max-width:650px){.f23-service-rows>article,.f23-admin-service-rows>article{grid-template-columns:auto 1fr}.f23-service-row-finance{grid-column:1/-1}.f23-service-rows>article>button,.f23-admin-service-rows>article>button{grid-column:1/-1;grid-row:auto;width:100%}}

/* Fiber MMR: parità operativa con il modulo WHMCS */
.f23-mmr-tabs{display:flex;gap:8px;overflow:auto;margin:-2px 0 16px;padding:6px;border:1px solid #d9e5f2;border-radius:15px;background:#f4f8fd}.f23-mmr-tabs button{flex:0 0 auto;padding:11px 15px;border:1px solid transparent;border-radius:10px;background:transparent;color:#52647c;font-weight:850;cursor:pointer}.f23-mmr-tabs button.active{border-color:#5b38ef;background:linear-gradient(135deg,#177fe9,#6435e7);color:#fff;box-shadow:0 8px 18px rgba(77,57,215,.2)}.f23-mmr-tabs b{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:5px;border-radius:10px;background:#fff;color:#5e31df;font-size:10px}
.f23-mmr-client-hero{display:flex;align-items:center;gap:20px;min-height:150px;margin-bottom:17px;padding:24px 28px;border-radius:21px;background:linear-gradient(115deg,#07518a,#1285bd 55%,#5635df);color:#fff;box-shadow:0 18px 38px rgba(10,75,139,.18)}.f23-mmr-client-hero>div:nth-child(2){flex:1}.f23-mmr-client-hero small{color:#bdf7ff;font-size:10px;font-weight:900;letter-spacing:.1em}.f23-mmr-client-hero h2{margin:5px 0;color:#fff;font-size:25px}.f23-mmr-client-hero p{margin:0;color:#e0efff}.f23-mmr-client-hero .secondary,.f23-mmr-client-hero .primary{white-space:nowrap}.f23-mmr-donut{--usage:0;display:grid;flex:0 0 auto;place-items:center;width:104px;height:104px;border-radius:50%;background:conic-gradient(#2ce0bd calc(var(--usage)*1%),rgba(255,255,255,.18) 0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}.f23-mmr-donut:before{grid-area:1/1;width:74px;height:74px;border-radius:50%;background:#0b6594;content:""}.f23-mmr-donut span{z-index:1;grid-area:1/1;text-align:center}.f23-mmr-donut strong,.f23-mmr-donut small{display:block;color:#fff}.f23-mmr-donut strong{font-size:24px}.f23-mmr-donut small{font-size:8px}
.f23-mmr-ranges,.f23-mmr-section{overflow:hidden;margin-bottom:17px;border:1px solid #d9e5f2;border-radius:19px;background:#fff;box-shadow:0 12px 30px rgba(24,52,86,.06)}.f23-mmr-ranges>header,.f23-mmr-section>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;background:linear-gradient(100deg,#07518c,#1388c9 60%,#5835e1);color:#fff}.f23-mmr-ranges header h2,.f23-mmr-section header h2{margin:0;color:#fff;font-size:18px}.f23-mmr-ranges header p,.f23-mmr-section header p{margin:3px 0 0;color:#d8eaff;font-size:12px}.f23-mmr-ranges>div{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:16px}.f23-mmr-ranges article{display:flex;align-items:center;gap:16px;padding:15px;border:1px solid #dce8f4;border-radius:14px;background:#f8fbff}.f23-mmr-ranges article>div{min-width:180px}.f23-mmr-ranges h3{margin:4px 0;color:#0d568d}.f23-mmr-ranges article p{margin:0;color:#6d8097;font-size:12px}.f23-mmr-ranges article>b{color:#1d385a;font-size:12px;line-height:1.65}
.f23-mmr-note{max-width:420px;color:#58718e!important;white-space:normal!important}.f23-mmr-path{font-weight:850;color:#075f9f}.f23-mmr-path b{color:#7838df}.f23-mmr-upgrade-history{display:grid;gap:10px;margin-top:17px}.f23-mmr-upgrade-history>h2{margin:0 0 4px}.f23-mmr-upgrade-history article{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:13px 16px;border:1px solid #dbe5f2;border-radius:13px;background:#fff}.f23-mmr-upgrade-history article>strong{color:#075d9c;font-size:18px}.f23-mmr-upgrade-history article>span{color:#708198;font-size:12px}
.f23-mmr-admin-dashboard{display:grid;gap:16px}.f23-mmr-dashboard-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.f23-mmr-dashboard-cards article{padding:20px;border:1px solid #d9e5f2;border-radius:17px;background:#fff}.f23-mmr-dashboard-cards small,.f23-mmr-dashboard-cards strong,.f23-mmr-dashboard-cards span{display:block}.f23-mmr-dashboard-cards small{color:#6b7f98;font-size:10px;font-weight:900}.f23-mmr-dashboard-cards strong{margin:7px 0;color:#075b98;font-size:30px}.f23-mmr-dashboard-cards span{color:#77889c;font-size:12px}
.f23-mmr-panel-list{display:grid;gap:0}.f23-mmr-panel-row{display:grid;grid-template-columns:minmax(190px,1fr) 210px repeat(3,110px) 190px;gap:12px;align-items:center;padding:16px;border-bottom:1px solid #e1e9f2}.f23-mmr-panel-row:last-child{border-bottom:0}.f23-mmr-panel-row h3{margin:3px 0;color:#0a568d}.f23-mmr-panel-row p{margin:0;color:#7a8ba0;font-size:12px}.f23-mmr-panel-row>b{padding:6px 8px;border-radius:12px;text-align:center;font-size:11px}.f23-mmr-panel-row>b.ok{background:#dcf8e7;color:#087942}.f23-mmr-panel-row>b.warn{background:#fff0ce;color:#976000}.f23-mmr-panel-row>b.danger{background:#ffe0e5;color:#b82940}.f23-mmr-usage{position:relative;height:8px;border-radius:5px;background:#e6edf5}.f23-mmr-usage i{position:absolute;inset:0 auto 0 0;border-radius:5px;background:linear-gradient(90deg,#08a6c6,#6d3fe6)}.f23-mmr-usage small{position:absolute;top:12px;left:0;color:#698097;font-size:10px}.f23-mmr-port-map{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;padding-top:8px}.f23-mmr-port-map button{min-width:38px;padding:6px 7px;border:1px solid #8bd5ae;border-radius:7px;background:#ddf8e9;color:#08783f;font-size:10px;font-weight:900;cursor:pointer}.f23-mmr-port-map button.assigned{border-color:#efc568;background:#fff0c9;color:#8d5900}.f23-mmr-port-map button.occupied{border-color:#f0a2ae;background:#ffe0e5;color:#b7233b}.f23-mmr-port-map button:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(20,62,99,.13)}
.f23-mmr-allocation-list,.f23-mmr-request-list{display:grid}.f23-mmr-allocation-list article,.f23-mmr-request-list article{display:grid;grid-template-columns:minmax(280px,1fr) 80px 130px 120px auto;gap:14px;align-items:center;padding:16px 20px;border-bottom:1px solid #e2eaf3}.f23-mmr-allocation-list article:last-child,.f23-mmr-request-list article:last-child{border-bottom:0}.f23-mmr-allocation-list strong,.f23-mmr-allocation-list small{display:block}.f23-mmr-allocation-list small{margin-top:5px;color:#70849b;font-size:11px}.f23-mmr-allocation-list article>b{color:#075d9c;font-size:20px}.f23-mmr-allocation-list article>span{font-size:12px;font-weight:750}.f23-mmr-request-list article{grid-template-columns:minmax(280px,1fr) 100px 130px auto}.f23-mmr-request-list h3{margin:4px 0}.f23-mmr-request-list p{margin:0;color:#718198;font-size:12px}.f23-mmr-request-list article>strong{color:#075d9c;font-size:20px}
.f23-mmr-check-ports{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;max-height:330px;overflow:auto;margin:10px 0 16px;padding:2px}.f23-mmr-check-ports label{display:flex;gap:9px;align-items:center;padding:11px;border:1px solid #dbe6f2;border-radius:11px;background:#f8fbff;cursor:pointer}.f23-mmr-check-ports label.occupied{border-color:#f0b2bd;background:#fff2f4}.f23-mmr-check-ports label.assigned{border-color:#f0d18a;background:#fff9e9}.f23-mmr-check-ports b,.f23-mmr-check-ports small{display:block}.f23-mmr-check-ports small{margin-top:3px;color:#71849a;font-size:10px}.f23-mmr-check-ports.read-only label{cursor:default}.f23-mmr-check-ports.read-only{grid-template-columns:repeat(2,1fr)}
.f23-mmr-whmcs{border-radius:15px;box-shadow:none}.f23-mmr-whmcs>header{min-height:78px;padding:16px 20px;background:linear-gradient(100deg,#07538f,#1083c8 58%,#5034e5)}.f23-mmr-whmcs>header .inverse{border:0;background:#fff;color:#07548e;box-shadow:0 8px 18px rgba(24,46,110,.14)}.f23-mmr-whmcs-kpis article{min-height:92px;border-radius:13px;box-shadow:none}.f23-mmr-filterbar{display:grid;grid-template-columns:minmax(260px,520px) 220px 1fr;gap:10px;align-items:center;padding:14px 10px;background:#fff}.f23-mmr-filterbar.client{grid-template-columns:minmax(280px,520px) 1fr;padding:14px 16px}.f23-mmr-filterbar>label{display:flex;overflow:hidden;border:1px solid #c8d9ec;border-radius:10px;background:#fff}.f23-mmr-filterbar input,.f23-mmr-filterbar select{width:100%;min-height:42px;border:0;background:#fff;padding:0 12px;color:#263d59;font:inherit}.f23-mmr-filterbar>label button{width:40px;border:0;border-radius:8px;background:linear-gradient(135deg,#1684ed,#583bea);color:#fff;font-size:20px;cursor:pointer}.f23-mmr-filterbar>select{min-height:42px;border:1px solid #c8d9ec;border-radius:10px}.f23-mmr-filterbar small{color:#537194;font-size:10px}.f23-mmr-classic-table{overflow:auto;padding:10px}.f23-mmr-classic-table table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #cfe0f1;border-radius:12px}.f23-mmr-classic-table th{padding:12px;background:#07639f;color:#fff;text-align:left;font-size:10px;font-weight:900;letter-spacing:.04em}.f23-mmr-classic-table td{padding:12px;border-bottom:1px solid #d9e5f1;background:#fff;color:#183653;font-size:12px;vertical-align:middle}.f23-mmr-classic-table tr:nth-child(even) td{background:#f7fbff}.f23-mmr-classic-table tr:last-child td{border-bottom:0}.f23-mmr-classic-table td strong,.f23-mmr-classic-table td small{display:block}.f23-mmr-classic-table td small{margin-top:4px;color:#6c829a;font-size:10px}.f23-mmr-classic-table td code{display:inline-block;padding:7px 9px;border-radius:7px;background:#e8f4ff;color:#0067a8;font:800 11px ui-monospace,SFMono-Regular,Consolas,monospace}.f23-mmr-classic-table td em{display:inline-block;margin:0 0 0 6px;padding:4px 7px;border:1px solid #7cc0f3;border-radius:11px;color:#0762a4;font-size:8px;font-style:normal;font-weight:900}.f23-mmr-row-actions{display:flex;align-items:center;gap:7px;min-width:335px}.f23-mmr-row-actions button,.f23-mmr-row-actions select,.f23-mmr-classic-table.allocations button{min-height:38px;border:1px solid #b9d3eb;border-radius:9px;background:#fff;color:#075c9d;padding:0 11px;font-size:11px;font-weight:800;cursor:pointer}.f23-mmr-row-actions select{min-width:105px}.f23-mmr-row-actions button.danger{border-color:#ef4056;background:#ef4056;color:#fff}.f23-mmr-count{display:inline-grid;place-items:center;min-width:28px;height:28px;border-radius:50%;font-weight:900}.f23-mmr-count.ok{background:#d8f7e4;color:#087942}.f23-mmr-count.danger{background:#ffe0e5;color:#bf253e}
.f23-mmr-assign-form{padding:18px;background:#fff}.f23-mmr-assign-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:17px;border:1px solid #cfe0f1;border-radius:13px;background:#f8fbff}.f23-mmr-assign-grid .field:nth-child(1),.f23-mmr-assign-grid .field:nth-child(2){grid-column:span 2}.f23-mmr-assign-grid .field label{display:block;margin-bottom:7px;color:#124568;font-size:11px;font-weight:850}.f23-mmr-assign-grid .field input,.f23-mmr-assign-grid .field select{width:100%;min-height:43px;border:1px solid #c5daee;border-radius:9px;background:#fff;padding:0 12px;color:#233b57}.f23-mmr-assign-grid .field small{display:block;margin-top:5px;color:#58799b;font-size:9px}.f23-mmr-interval{align-self:end;min-height:72px;border-radius:11px;background:#eaf5ff;padding:13px}.f23-mmr-interval small,.f23-mmr-interval strong{display:block}.f23-mmr-interval small{font-size:9px}.f23-mmr-interval strong{margin-top:3px;color:#083d68}.f23-mmr-panel-preview{grid-column:span 2;min-height:78px;border:1px solid #c8dff2;border-radius:11px;background:#fff;padding:14px}.f23-mmr-panel-preview>b,.f23-mmr-panel-preview>span{display:block}.f23-mmr-panel-preview>b{font-size:11px}.f23-mmr-panel-preview>span{margin-top:8px;color:#70859b;font-size:10px}.f23-mmr-notify{grid-column:span 2;display:flex;align-items:center;gap:11px;min-height:78px;border:1px solid #acd5f5;border-radius:11px;background:#edf7ff;padding:14px}.f23-mmr-notify input{width:18px;height:18px;accent-color:#0877d1}.f23-mmr-notify b,.f23-mmr-notify small{display:block}.f23-mmr-notify b{color:#07568d;font-size:11px}.f23-mmr-notify small{margin-top:4px;color:#547898;font-size:9px}.f23-mmr-assign-submit{margin:14px 0 0}.f23-mmr-inline-map{display:flex;flex-wrap:wrap;gap:5px}.f23-mmr-inline-map i{padding:5px 7px;border:1px solid #8bd5ae;border-radius:6px;background:#ddf8e9;color:#08783f;font-size:8px;font-style:normal;font-weight:900}.f23-mmr-inline-map i.assigned{border-color:#efc568;background:#fff0c9;color:#8d5900}.f23-mmr-inline-map i.occupied{border-color:#f0a2ae;background:#ffe0e5;color:#b7233b}.f23-mmr-classic-table.allocations td:nth-child(3),.f23-mmr-classic-table.allocations td:nth-child(4),.f23-mmr-classic-table.allocations td:nth-child(5){text-align:center}
.f23-mmr-endpoint-card{overflow:hidden;padding:0!important;border:1px solid #d6e2ef;border-radius:15px;background:#f8fbff}.f23-mmr-endpoint-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:linear-gradient(100deg,#edf7ff,#f4efff)}.f23-mmr-endpoint-card>header small,.f23-mmr-endpoint-card>header h3{display:block;margin:0}.f23-mmr-endpoint-card>header small{color:#6c34d4;font-size:8px;font-weight:950;letter-spacing:.11em}.f23-mmr-endpoint-card>header h3{margin-top:2px;color:#163451;font-size:14px}.f23-mmr-endpoint-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 14px 14px}.f23-mmr-customer-search{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7790'%3E%3Cpath stroke-linecap='round' stroke-width='2' d='m21 21-4.35-4.35m2.1-5.4a7.5 7.5 0 1 1-15 0 7.5 7.5 0 0 1 15 0Z'/%3E%3C/svg%3E") no-repeat 11px center/16px!important;padding-left:35px!important}.f23-mmr-port-legend{display:flex;flex-wrap:wrap;gap:5px}.f23-mmr-port-legend span{padding:4px 7px;border-radius:20px;font-size:7px;font-weight:900}.f23-mmr-port-legend .available{background:#d9f8e7;color:#087840}.f23-mmr-port-legend .occupied{background:#ffe1e6;color:#bd263f}.f23-mmr-port-legend .selected{background:#eae3ff;color:#6528d4}.f23-mmr-cross-port-map-wrap{grid-column:1/-1}.f23-mmr-cross-port-map-wrap>small{display:block;padding:10px;border:1px dashed #cad8e7;border-radius:10px;color:#718198;text-align:center}.f23-mmr-cross-port-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.f23-mmr-cross-port-map button{display:grid;gap:2px;min-height:46px;padding:8px 10px;border-radius:9px;text-align:left;cursor:pointer}.f23-mmr-cross-port-map button b{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.f23-mmr-cross-port-map button small{font-size:7px}.f23-mmr-cross-port-map button.available{border:1px solid #84d4aa;background:#e7faef;color:#087542}.f23-mmr-cross-port-map button.occupied{border:1px solid #ef9eac;background:#ffe8ec;color:#b5243c;cursor:not-allowed;opacity:.82}.f23-mmr-cross-port-map button.selected{border:2px solid #7435df;background:#eee7ff;color:#5a20c2;box-shadow:0 0 0 3px rgba(116,53,223,.09)}.f23-mmr-cross-port-map button.available:not(.selected):hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(18,119,70,.12)}.f23-mmr-endpoint-card select option.available{color:#087542}.f23-mmr-endpoint-card select option.occupied{color:#b5243c;background:#ffe8ec}
@media(max-width:1050px){.f23-mmr-filterbar{grid-template-columns:1fr 190px}.f23-mmr-filterbar>small{grid-column:1/-1}.f23-mmr-assign-grid{grid-template-columns:repeat(2,1fr)}.f23-mmr-panel-preview,.f23-mmr-notify{grid-column:span 1}.f23-mmr-row-actions{min-width:280px;flex-wrap:wrap}}
@media(max-width:700px){.f23-mmr-filterbar,.f23-mmr-filterbar.client,.f23-mmr-assign-grid{grid-template-columns:1fr}.f23-mmr-assign-grid .field:nth-child(1),.f23-mmr-assign-grid .field:nth-child(2),.f23-mmr-panel-preview,.f23-mmr-notify{grid-column:span 1}.f23-mmr-whmcs>header{align-items:flex-start;flex-direction:column}.f23-mmr-whmcs>header button{width:100%}}
@media(max-width:700px){.f23-mmr-endpoint-grid{grid-template-columns:1fr}.f23-mmr-cross-port-map{grid-template-columns:repeat(2,minmax(0,1fr))}.f23-mmr-port-legend{display:none}}
@media(max-width:1050px){.f23-mmr-panel-row{grid-template-columns:1fr 1fr repeat(3,90px)}.f23-mmr-panel-row>div:last-of-type{grid-column:1/-1}.f23-mmr-allocation-list article,.f23-mmr-request-list article{grid-template-columns:1fr auto auto}.f23-mmr-allocation-list article>button{grid-column:1/-1}.f23-mmr-client-hero{flex-wrap:wrap}.f23-mmr-client-hero>div:nth-child(2){min-width:50%}}
@media(max-width:700px){.f23-mmr-ranges>div,.f23-mmr-dashboard-cards{grid-template-columns:1fr}.f23-mmr-ranges article{align-items:flex-start;flex-direction:column}.f23-mmr-panel-row{grid-template-columns:1fr 1fr}.f23-mmr-panel-row>b{font-size:10px}.f23-mmr-usage,.f23-mmr-panel-row>div:last-of-type,.f23-mmr-port-map{grid-column:1/-1}.f23-mmr-check-ports,.f23-mmr-check-ports.read-only{grid-template-columns:1fr}.f23-mmr-client-hero{padding:19px}.f23-mmr-client-hero>button{flex:1}.f23-mmr-donut{width:84px;height:84px}.f23-mmr-donut:before{width:60px;height:60px}}

/* Servizi compatti, deleghe account e richieste MMR */
.f23-service-rows{gap:8px}.f23-service-rows>article{grid-template-columns:38px minmax(220px,1.45fr) minmax(190px,.7fr) auto 118px;min-height:68px;padding:10px 12px 10px 17px;border-radius:13px;box-shadow:0 7px 18px rgba(23,50,84,.045)}.f23-service-rows .f23-service-row-icon{width:38px;height:38px;border-radius:11px}.f23-service-rows .f23-service-row-icon svg{width:17px}.f23-service-rows .f23-service-row-title small{font-size:8px}.f23-service-rows .f23-service-row-title h3{margin:2px 0;font-size:14px}.f23-service-rows .f23-service-row-title p{font-size:10px}.f23-service-rows .f23-service-row-finance{gap:12px}.f23-service-rows .f23-service-row-finance small{font-size:7px}.f23-service-rows .f23-service-row-finance b{margin-top:2px;font-size:11px}.f23-service-rows>article>button{min-height:34px;padding:0 10px;font-size:9px}
.f23-service-admin-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.f23-service-admin-summary>span{padding:11px;border:1px solid #e2e8f2;border-radius:12px;background:#f8faff}.f23-service-admin-summary small,.f23-service-admin-summary b{display:block}.f23-service-admin-summary small{color:#8b95a7;font-size:8px;font-weight:900;letter-spacing:.08em}.f23-service-admin-summary b{margin-top:4px;color:#142842;font-size:12px}.f23-service-status-help{margin-top:12px;padding:11px 13px;border-radius:10px;background:#f5f1ff;color:#615777;font-size:10px;line-height:1.5}
.f23-delegation-intro{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:13px 16px;border:1px solid #bde8dc;border-radius:14px;background:linear-gradient(100deg,#eefcf7,#f5f2ff)}.f23-delegation-intro>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#d9f7ec;color:#087458}.f23-delegation-intro svg{width:18px}.f23-delegation-intro b,.f23-delegation-intro p{display:block;margin:0}.f23-delegation-intro b{font-size:13px}.f23-delegation-intro p{margin-top:3px;color:#68758a;font-size:10px}.f23-contact-grid{display:grid;gap:9px}.f23-contact-grid>article{display:grid;grid-template-columns:44px 1fr auto;gap:13px;align-items:center;padding:13px 15px;border:1px solid #dbe4f0;border-radius:15px;background:#fff;box-shadow:0 8px 20px rgba(23,50,84,.045)}.f23-contact-grid>article.revoked{opacity:.65}.f23-contact-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,#3aa9f0,#b526e9);color:#fff;font-weight:900}.f23-contact-main>span{color:#6f2ae8;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.f23-contact-main h3{margin:2px 0;font-size:14px}.f23-contact-main p{margin:0;color:#788398;font-size:10px}.f23-contact-main>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.f23-contact-main>div small{padding:4px 7px;border-radius:20px;background:#f0edff;color:#6330bd;font-size:7px;font-weight:800}.f23-contact-grid aside{display:grid;justify-items:end;gap:7px}.f23-contact-grid aside em{color:#8a94a6;font-size:8px;font-style:normal}.f23-contact-grid aside button{min-height:30px;padding:0 9px;font-size:8px}.f23-permission-picker{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:14px 0 0;padding:12px;border:1px solid #e1e7f1;border-radius:13px}.f23-permission-picker legend{padding:0 6px;color:#69758a;font-size:9px;font-weight:900}.f23-permission-picker label input{position:absolute;opacity:0}.f23-permission-picker label span{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid #e3e7ef;border-radius:10px;background:#fff;color:#5b6577}.f23-permission-picker label input:checked+span{border-color:#9b66f0;background:#f3edff;color:#6225ce}.f23-permission-picker svg{width:14px}.f23-permission-picker b{font-size:9px}
.f23-visit-steps{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:13px;padding:12px;border:1px solid #dce6f2;border-radius:14px;background:#fff}.f23-visit-steps span{display:flex;align-items:center;gap:7px;color:#24364f}.f23-visit-steps span b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eee7ff;color:#6a25df;font-size:9px}.f23-visit-steps span em{font-size:10px;font-style:normal;font-weight:800}.f23-visit-steps i{width:42px;height:1px;background:#d6ddea}.f23-visit-list{display:grid;gap:8px}.f23-visit-list>article{display:grid;grid-template-columns:130px 1fr auto;align-items:center;gap:15px;padding:12px 15px;border:1px solid #dbe5f0;border-radius:14px;background:#fff}.f23-visit-date b,.f23-visit-date small{display:block}.f23-visit-date b{font-size:11px}.f23-visit-date small{margin-top:3px;color:#77849a;font-size:9px}.f23-visit-list article>div:nth-child(2)>span{color:#6e2be4;font-size:8px;font-weight:900}.f23-visit-list h3{overflow:hidden;margin:2px 0;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.f23-visit-list p{margin:0;color:#79869a;font-size:9px}.f23-visit-list article>div:last-child{display:flex;gap:6px}
.f23-mmr-client-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border-radius:18px;background:linear-gradient(110deg,#075f72,#176faa 55%,#612bdc);color:#fff;box-shadow:0 15px 32px rgba(40,65,150,.14)}.f23-mmr-client-summary>div{display:flex;align-items:center;gap:13px}.f23-mmr-client-summary>div>span{display:grid;place-items:center;width:47px;height:47px;border-radius:13px;background:rgba(255,255,255,.15)}.f23-mmr-client-summary svg{width:21px}.f23-mmr-client-summary small,.f23-mmr-client-summary h2,.f23-mmr-client-summary p{display:block;margin:0}.f23-mmr-client-summary small{font-size:8px;font-weight:900;letter-spacing:.09em}.f23-mmr-client-summary h2{margin:3px 0;font-size:19px}.f23-mmr-client-summary p{color:#d8eaff;font-size:10px}.f23-mmr-client-summary nav{display:flex;gap:7px}.f23-mmr-client-summary button{white-space:nowrap}.f23-mmr-client-columns{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:13px;margin-top:13px}.f23-mmr-client-columns>.panel{min-width:0;overflow:hidden}.f23-mmr-compact-row,.f23-mmr-request-row{display:grid;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #edf0f5}.f23-mmr-compact-row{grid-template-columns:34px minmax(0,1fr) max-content}.f23-mmr-compact-row>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#eee8ff;color:#6822d9}.f23-mmr-compact-row svg{width:14px}.f23-mmr-compact-copy{min-width:0}.f23-mmr-compact-row b,.f23-mmr-compact-row small,.f23-mmr-request-row b,.f23-mmr-request-row small{display:block}.f23-mmr-compact-row b,.f23-mmr-request-row b{font-size:11px;line-height:1.35}.f23-mmr-compact-row small,.f23-mmr-request-row small{margin-top:4px;color:#65758c;font-size:9px;line-height:1.4}.f23-mmr-compact-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.f23-mmr-compact-copy small i{color:#6f27df;font-style:normal;font-weight:900}.f23-mmr-compact-copy em{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;background:#f2f5fa;color:#66748a;font-size:8px;font-style:normal;font-weight:800}.f23-mmr-compact-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}.f23-mmr-compact-actions .status-badge{position:static;margin:0}.f23-mmr-compact-row button{min-height:31px;padding:0 10px;font-size:9px}.f23-mmr-request-row{grid-template-columns:minmax(0,1fr) max-content}
.f23-bank-config-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.f23-bank-config-grid>section{padding:14px;border:1px solid #dde5f0;border-radius:14px;background:#fbfcff}.f23-bank-config-grid>section>header{display:flex;align-items:center;gap:9px;margin-bottom:12px}.f23-bank-config-grid>section>header>span{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#eee8ff;color:#6722d8;font-size:9px;font-weight:900}.f23-bank-config-grid header b,.f23-bank-config-grid header small{display:block}.f23-bank-config-grid header b{font-size:11px}.f23-bank-config-grid header small{margin-top:2px;color:#8792a4;font-size:8px}.bank-account-list article em{display:block;margin-top:4px;color:#737c8f;font-size:8px;font-style:normal}

/* Checkout: metodi leggibili e copia coordinate compatta */
.payment-checkout>aside{background:linear-gradient(180deg,#f8f7ff,#f3f7ff)}
.payment-checkout>aside>small{color:#586780;font-size:11px;letter-spacing:.1em}
.payment-method-card{position:relative;min-height:72px;padding:13px 14px;border-color:#e4e8f1;box-shadow:0 5px 16px #183b6b0a}
.payment-method-card strong{color:#15233d;font-size:14px!important;line-height:1.25}
.payment-method-card small{margin-top:4px;color:#64748b;font-size:12px!important;line-height:1.4}
.payment-method-card.active{border-color:#8b5cf6;background:linear-gradient(105deg,#fff,#f6f1ff);box-shadow:0 10px 24px #6d28d91c}
.payment-method-card:has(.payment-brand.klarna){border-left:4px solid #ff5f9e}.payment-method-card:has(.payment-brand.sepa){border-left:4px solid #3b82f6}.payment-method-card:has(.payment-brand.card){border-left:4px solid #6d28d9}.payment-method-card:has(.payment-brand.revolut){border-left:4px solid #111827}.payment-method-card:has(.payment-brand.bank_transfer){border-left:4px solid #10b981}
.payment-brand{width:40px;height:40px;font-size:14px}.payment-choice-head strong{font-size:15px!important}.payment-choice-head small{font-size:12px!important;line-height:1.45}
.bank-account-list article{align-items:flex-start;padding:16px 17px;background:linear-gradient(120deg,#f8fbff,#f6f3ff)}
.bank-account-list article>button{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto!important;min-width:0!important;min-height:38px!important;padding:8px 12px!important;flex:0 0 auto;border:1px solid #c7b5f3;border-radius:10px;background:#fff;color:#6424d8;font-size:12px;font-weight:850;white-space:nowrap;box-shadow:0 5px 14px #5b21b60f}
.bank-account-list article>button svg{width:16px!important;height:16px!important;min-width:16px!important}
.bank-account-list article>button:hover{background:#f3edff;border-color:#8b5cf6}

/* Certificazioni del cliente */
.f23-cert-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;padding:24px 26px;border-radius:22px;background:linear-gradient(118deg,#083c5d,#146da5 52%,#5134d4);color:#fff;box-shadow:0 18px 40px #0d4f7d22}.f23-cert-hero small{color:#89f1dc;font-size:10px;font-weight:900;letter-spacing:.13em}.f23-cert-hero h2{margin:6px 0 5px;font-size:25px}.f23-cert-hero p{max-width:720px;margin:0;color:#dbeafe;font-size:13px;line-height:1.55}.f23-cert-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.f23-cert-grid>article{display:grid;grid-template-columns:56px 1fr;gap:17px;padding:22px;border:1px solid #dce6f3;border-top:5px solid #10b981;border-radius:20px;background:#fff;box-shadow:0 15px 35px #17365b0d}.f23-cert-grid>article.security{border-top-color:#6d28d9}.f23-cert-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#e8fbf4;color:#059669}.f23-cert-grid .security .f23-cert-icon{background:#f1ebff;color:#6d28d9}.f23-cert-icon svg{width:26px}.f23-cert-grid small{color:#718096;font-size:10px;font-weight:900;letter-spacing:.08em}.f23-cert-grid h3{margin:5px 0;color:#14243b;font-size:22px}.f23-cert-grid p{margin:0 0 15px;color:#65748d;font-size:12px}.f23-cert-grid dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 17px}.f23-cert-grid dl div{padding:10px 12px;border-radius:11px;background:#f7f9fd}.f23-cert-grid dt{color:#8390a5;font-size:9px;font-weight:900}.f23-cert-grid dd{margin:4px 0 0;color:#233653;font-size:12px;font-weight:800}.f23-cert-grid nav{display:flex;gap:8px;flex-wrap:wrap}.f23-cert-grid nav a{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 14px;border-radius:10px;text-decoration:none;font-size:12px;font-weight:850}.f23-cert-grid nav a svg{width:16px}.f23-cert-grid nav a.secondary{border:1px solid #d5ddea;background:#fff;color:#24405f}.f23-cert-grid nav a.primary{background:linear-gradient(110deg,#2563eb,#7c3aed);color:#fff}.f23-cert-scope{display:flex;align-items:center;gap:15px;margin-top:16px}.f23-cert-scope>span{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#e9f5ff;color:#1476d7}.f23-cert-scope h3,.f23-cert-scope p{margin:0}.f23-cert-scope p{margin-top:4px;color:#66758c;line-height:1.5}
@media(max-width:780px){.f23-cert-grid{grid-template-columns:1fr}.f23-cert-hero{align-items:flex-start;flex-direction:column}.bank-account-list article{flex-direction:column}.bank-account-list article>button{width:100%!important}.f23-cert-grid>article{grid-template-columns:1fr}.f23-cert-grid dl{grid-template-columns:1fr}}
@media(max-width:980px){.f23-service-rows>article{grid-template-columns:38px 1fr auto}.f23-mmr-client-summary{align-items:flex-start;flex-direction:column}.f23-mmr-client-columns,.f23-bank-config-grid{grid-template-columns:1fr}.f23-mmr-client-summary nav{width:100%;flex-wrap:wrap}.f23-mmr-client-summary nav button{flex:1}.f23-service-admin-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.f23-contact-grid>article,.f23-visit-list>article{grid-template-columns:1fr}.f23-contact-grid aside{justify-items:start}.f23-permission-picker{grid-template-columns:1fr}.f23-visit-steps{align-items:flex-start;flex-direction:column}.f23-visit-steps i{width:1px;height:14px;margin-left:12px}.f23-service-admin-summary{grid-template-columns:1fr 1fr}.f23-mmr-client-summary nav{display:grid;grid-template-columns:1fr;width:100%}.f23-mmr-client-summary nav button{width:100%}}
@media(max-width:720px){.f23-mmr-compact-row{grid-template-columns:32px minmax(0,1fr)}.f23-mmr-compact-actions{grid-column:2;justify-content:flex-start}.f23-mmr-compact-copy small{white-space:normal}.f23-mmr-active-panel .panel-head{align-items:flex-start}.f23-mmr-request-row{align-items:flex-start}}

/* Debiti fornitori: parità operativa con il modulo WHMCS */
.debt-kpis article.is-danger:before{background:#ef405c}.debt-kpis article.is-success:before{background:#13ad77}.debt-alerts>header>div h2,.debt-alerts>header>div p{margin:0}.debt-alerts>header>small{padding:7px 10px;border-radius:20px;background:#edf5ff;color:#24669e;font-weight:850}.debt-alerts article{grid-template-columns:auto minmax(240px,1fr) auto auto}.debt-alerts article code{display:block;width:max-content;margin-top:6px;padding:5px 8px}.ops-row-actions{display:flex;justify-content:flex-end;gap:7px}.primary.compact{min-height:34px;padding:7px 11px;border-radius:9px;font-size:12px;white-space:nowrap}.ops-progress{width:136px;height:7px;overflow:hidden;border-radius:9px;background:#e6edf5}.ops-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#06a7e8,#19be82)}.ops-debt-bank{margin:15px 0;padding:13px 15px;border:1px solid #cfe1f4;border-radius:12px;background:linear-gradient(110deg,#eef8ff,#f8f5ff)}.ops-debt-bank small,.ops-debt-bank strong{display:block}.ops-debt-bank small{color:#73869d;font-size:10px;font-weight:900;text-transform:uppercase}.ops-debt-bank strong{margin-top:5px;color:#123b65}.ops-payment-summary{display:grid;grid-template-columns:1.4fr .6fr;gap:9px;margin:15px 0}.ops-payment-summary span{padding:13px;border-radius:11px;background:#eff7ff}.ops-payment-summary small,.ops-payment-summary b{display:block}.ops-payment-summary small{color:#74879e;font-size:10px;font-weight:900;text-transform:uppercase}.ops-payment-summary b{margin-top:5px;color:#153c65}.debt-history>div{grid-template-columns:1fr auto minmax(90px,auto) auto}
@media(max-width:1180px){.debt-alerts article .ops-row-actions{grid-column:2/4}}
@media(max-width:720px){.debt-alerts article .ops-row-actions{grid-column:auto;justify-content:flex-start}.ops-payment-summary{grid-template-columns:1fr}.debt-history>div{grid-template-columns:1fr 1fr}}
.f23-client-installment-summary{margin:18px;border:1px solid #cfe0f1;border-radius:16px;background:linear-gradient(145deg,#f4fbff,#fbf8ff);overflow:hidden}.f23-client-installment-summary>header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:16px 18px}.f23-client-installment-summary>header small{display:block;color:#2178bd;font-size:10px;font-weight:900;letter-spacing:.1em}.f23-client-installment-summary>header h3{margin:4px 0 0;color:#132f4d;font-size:18px}.f23-client-installment-summary>header>b{color:#6724d5;font-size:18px}.f23-client-installment-progress,.f23-ci-installment-progress{height:7px;border-radius:99px;background:#dfe8f2;overflow:hidden}.f23-client-installment-progress{margin:0 18px 15px}.f23-client-installment-progress i,.f23-ci-installment-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#11b98f,#1481df,#762ce7)}.f23-client-installment-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 18px 16px}.f23-client-installment-facts span{padding:12px;border:1px solid #dfe7f1;border-radius:11px;background:#fff}.f23-client-installment-facts small,.f23-client-installment-facts b,.f23-client-installment-facts em{display:block}.f23-client-installment-facts small{color:#8491a4;font-size:9px;font-weight:900}.f23-client-installment-facts b{margin-top:4px;color:#173451}.f23-client-installment-facts em{margin-top:2px;color:#6c7d93;font-size:11px;font-style:normal}.f23-client-installment-list{border-top:1px solid #dce5ef;background:#fff}.f23-client-installment-list article{display:grid;grid-template-columns:1.1fr .8fr .8fr 1fr;gap:10px;padding:12px 18px;border-bottom:1px solid #e8edf3;border-left:4px solid #f59e0b}.f23-client-installment-list article:last-child{border-bottom:0}.f23-client-installment-list article.paid{border-left-color:#10b981}.f23-client-installment-list article.overdue{border-left-color:#ef4444}.f23-client-installment-list article.partial{border-left-color:#7c3aed}.f23-client-installment-list small,.f23-client-installment-list b,.f23-client-installment-list em{display:block}.f23-client-installment-list small{color:#8491a4;font-size:9px;font-weight:900}.f23-client-installment-list b{margin-top:3px;color:#173451;font-size:13px}.f23-client-installment-list em{margin-top:2px;color:#6d7d91;font-size:10px;font-style:normal}.f23-ci-installment-progress{width:min(210px,100%);margin-top:8px}@media(max-width:760px){.f23-client-installment-summary>header{align-items:flex-start;flex-direction:column}.f23-client-installment-facts{grid-template-columns:1fr}.f23-client-installment-list article{grid-template-columns:1fr 1fr}}

/* Piani di rientro cliente */
.f23-repayment-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:17px}.f23-repayment-overview>div{padding:18px 20px;border:1px solid #d9e4f0;border-radius:17px;background:#fff;box-shadow:0 10px 28px rgba(23,48,82,.045)}.f23-repayment-overview>div:nth-child(1){border-top:4px solid #6d28d9}.f23-repayment-overview>div:nth-child(2){border-top:4px solid #0d87d7}.f23-repayment-overview>div:nth-child(3){border-top:4px solid #f59e0b}.f23-repayment-overview small,.f23-repayment-overview strong,.f23-repayment-overview span{display:block}.f23-repayment-overview small{color:#77869a;font-size:9px;font-weight:900;letter-spacing:.1em}.f23-repayment-overview strong{margin-top:7px;color:#132f4f;font-size:25px}.f23-repayment-overview span{margin-top:5px;color:#718096;font-size:11px}.f23-repayment-list{display:grid;gap:15px}.f23-repayment-list>article{overflow:hidden;border:1px solid #d9e4ef;border-radius:20px;background:#fff;box-shadow:0 14px 34px rgba(20,43,72,.055)}.f23-repayment-list>article>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 21px;background:linear-gradient(110deg,#f5fbff,#fbf8ff)}.f23-repayment-list>article>header small{color:#3777b4;font-size:9px;font-weight:900;letter-spacing:.08em}.f23-repayment-list>article>header h2{margin:5px 0 3px;color:#142d4c;font-size:19px}.f23-repayment-list>article>header p{margin:0;color:#758399;font-size:11px}.f23-repayment-list .f23-client-installment-summary{margin:16px 20px}.f23-repayment-list>article>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px;border-top:1px solid #e4eaf2;background:#fbfcfe}.f23-repayment-list>article>footer>div:first-child{display:grid}.f23-repayment-list>article>footer small{color:#7a879a;font-size:10px}.f23-repayment-list>article>footer b{margin-top:4px;color:#233a57;font-size:12px}.f23-repayment-list>article>footer>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.f23-repayment-list>article>footer button{min-height:40px}.f23-repayment-list>article.is-complete{border-color:#b8e5d3}.f23-repayment-list>article.is-complete>header{background:#f0fbf6}
@media(max-width:800px){.f23-repayment-overview{grid-template-columns:1fr}.f23-repayment-list>article>header,.f23-repayment-list>article>footer{align-items:flex-start;flex-direction:column}.f23-repayment-list>article>footer>div:last-child,.f23-repayment-list>article>footer button{width:100%}}

/* Navigazione cliente e ordini */
.f23-click-metric{cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.f23-click-metric:hover,.f23-click-metric:focus-visible{transform:translateY(-3px);border-color:#ae9aee;box-shadow:0 15px 32px rgba(74,48,141,.13);outline:0}.f23-click-metric:after{content:'Apri →';position:absolute;right:17px;bottom:14px;color:#6c2bd2;font-size:10px;font-weight:900;opacity:0;transition:opacity .18s}.f23-click-metric:hover:after,.f23-click-metric:focus-visible:after{opacity:1}.f23-portal-back{display:inline-flex;align-items:center;gap:8px;margin:0 0 15px;padding:9px 13px;border:1px solid #d4dfec;border-radius:11px;background:#fff;color:#24405f;font-size:12px;font-weight:850;box-shadow:0 6px 16px rgba(22,48,78,.04)}.f23-portal-back:hover{border-color:#bca8ef;color:#6826d7}.f23-portal-back svg{width:16px}.f23-client-order-list{display:grid;gap:11px}.f23-client-order-list>article{display:grid;grid-template-columns:46px minmax(210px,1fr) minmax(350px,1.2fr) auto;gap:16px;align-items:center;padding:17px 19px;border:1px solid #dbe5ef;border-radius:17px;background:#fff;box-shadow:0 9px 25px rgba(20,44,73,.04)}.f23-client-order-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:13px;background:#eef4ff;color:#316ed6}.f23-client-order-icon svg{width:21px}.f23-client-order-list h3,.f23-client-order-list p{margin:0}.f23-client-order-list h3{margin-top:4px;color:#183451;font-size:16px}.f23-client-order-list p{margin-top:4px;color:#738197;font-size:11px}.f23-client-order-list>article>div>small{color:#7b69d4;font-size:9px;font-weight:900}.f23-client-order-list dl{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:0}.f23-client-order-list dl div{padding:9px 10px;border-radius:10px;background:#f7f9fc}.f23-client-order-list dt{color:#8490a2;font-size:8px;font-weight:900}.f23-client-order-list dd{margin:4px 0 0;color:#243a57;font-size:11px;font-weight:800}.f23-client-order-actions{display:grid;gap:7px}.f23-client-order-actions button{white-space:nowrap}
@media(max-width:980px){.f23-client-order-list>article{grid-template-columns:44px 1fr}.f23-client-order-list dl,.f23-client-order-actions{grid-column:2}.f23-client-order-actions{display:flex;flex-wrap:wrap}}@media(max-width:620px){.f23-client-order-list dl{grid-template-columns:1fr}.f23-client-order-actions button{width:100%}}
.f23-client-order-list>article{position:relative;overflow:hidden}.f23-client-order-list>article.has-service:before{content:'';position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#1d83ee,#7c2be5)}.f23-client-order-list>article.has-service .f23-client-order-icon{background:linear-gradient(135deg,#e5f4ff,#efe7ff);color:#662be0}.f23-client-order-title em{display:inline-flex;margin-top:7px;padding:4px 7px;border-radius:7px;background:#eafaf4;color:#07815f;font-size:9px;font-style:normal;font-weight:850}.f23-client-order-actions button{min-height:36px;padding:7px 11px;border-radius:10px;font-size:11px}.f23-client-order-actions svg{width:14px}

/* Archivio ticket e ordini */
.f23-ticket-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 220px auto;gap:12px;align-items:center;margin:0 0 14px;padding:14px 16px;border:1px solid #dbe7f3;border-radius:18px;background:#fff}.f23-ticket-toolbar label{display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid #d9e3ef;border-radius:12px;background:#f9fbfe}.f23-ticket-toolbar label svg{width:18px;color:#6d20ec}.f23-ticket-toolbar input,.f23-ticket-toolbar select{width:100%;min-height:43px;border:0;background:transparent;color:#173653;outline:0}.f23-ticket-toolbar select{padding:0 12px;border:1px solid #d9e3ef;border-radius:12px;background:#f9fbfe}.f23-ticket-toolbar>span{color:#718198;font-size:12px;white-space:nowrap}.f23-ticket-toolbar>span b{color:#173653;font-size:15px}.f23-ticket-attachments{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.f23-ticket-attachments span{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:9px;background:#eef5ff;color:#24577f;font-size:11px}.f23-ticket-attachments svg{width:14px}.f23-ticket-notes{margin-top:18px;padding:16px;border:1px solid #f1dca9;border-radius:16px;background:#fffaf0}.f23-ticket-notes h3{margin:0 0 10px;color:#8a5b00}.f23-ticket-notes article{padding:10px 0;border-top:1px solid #f3e5c4}.f23-ticket-notes header{display:flex;justify-content:space-between;gap:12px}.f23-ticket-notes p{white-space:pre-wrap}.f23-order-archive{margin-top:18px;border:1px solid #dbe5f0;border-radius:18px;background:#fff}.f23-order-archive summary{padding:16px 19px;color:#516278;font-weight:800;cursor:pointer}.f23-order-archive summary b{display:inline-grid;min-width:24px;height:24px;margin-left:7px;place-items:center;border-radius:999px;background:#f5eafd;color:#7a27d8}.f23-order-archive .f23-client-order-list{padding:0 12px 12px}.f23-client-order-list article.is-cancelled{opacity:.72;background:#fafbfc}
@media(max-width:760px){.f23-ticket-toolbar{grid-template-columns:1fr}.f23-ticket-toolbar>span{white-space:normal}}

/* Inventario apparati colocation */
.f23-asset-page-head{align-items:flex-end;padding-bottom:6px}.f23-asset-eyebrow{display:block;margin-bottom:8px;color:#6d28d9;font-size:.72rem;font-weight:900;letter-spacing:.14em}.f23-asset-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.f23-asset-metrics article{display:flex;align-items:center;gap:14px;min-height:94px;padding:18px 20px;border:1px solid #d9e3f1;border-radius:18px;background:linear-gradient(135deg,#fff,#f8f8ff);box-shadow:0 12px 30px rgba(20,35,70,.06)}.f23-asset-metrics article>span{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,#0f6fca,#7c3aed)}.f23-asset-metrics svg{width:23px}.f23-asset-metrics small{display:block;color:#78869c;font-size:.68rem;font-weight:900;letter-spacing:.08em}.f23-asset-metrics strong{display:block;margin-top:3px;color:#102a4d;font-size:1.65rem}.f23-asset-filter{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding:14px}.f23-asset-filter>div{display:flex;align-items:center;gap:10px;flex:1;padding:0 14px;border:1px solid #d7e2f0;border-radius:13px;background:#fff}.f23-asset-filter>div svg{width:19px;color:#6d28d9}.f23-asset-filter input{width:100%;min-height:46px;border:0;outline:0;background:transparent}.f23-asset-filter select{min-width:190px;min-height:48px}.f23-asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.f23-asset-card{position:relative;padding:20px;border:1px solid #dbe5f2;border-radius:20px;background:#fff;box-shadow:0 14px 34px rgba(21,38,75,.07);overflow:hidden}.f23-asset-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(#0ea5e9,#7c3aed,#ec4899)}.f23-asset-card-top{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:13px}.f23-asset-icon{display:grid;width:45px;height:45px;place-items:center;border-radius:13px;color:#1368ce;background:#eaf5ff}.f23-asset-icon svg{width:22px}.f23-asset-card-top small{color:#7c3aed;font-size:.7rem;font-weight:900;letter-spacing:.08em}.f23-asset-card-top h3{margin:3px 0;color:#14243f;font-size:1.05rem}.f23-asset-card-top p{margin:0;color:#77849a;font-size:.82rem}.f23-asset-status{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;font-size:.72rem;font-weight:850;white-space:nowrap}.f23-asset-status i{width:7px;height:7px;border-radius:50%;background:currentColor}.f23-asset-status.success{color:#087a51;background:#e4f8ef}.f23-asset-status.warning{color:#9a5a00;background:#fff4d9}.f23-asset-status.info{color:#1462b8;background:#e9f4ff}.f23-asset-status.danger{color:#c2254e;background:#ffe8ef}.f23-asset-status.neutral{color:#637086;background:#eef2f7}.f23-asset-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:18px 0 14px;border:1px solid #edf1f6;border-radius:14px;background:#fafcff}.f23-asset-card dl div{padding:11px 13px}.f23-asset-card dt{color:#8792a5;font-size:.67rem;font-weight:850;text-transform:uppercase}.f23-asset-card dd{margin:4px 0 0;color:#263957;font-size:.84rem;font-weight:750;overflow-wrap:anywhere}.f23-asset-card .f23-link-button{width:100%;justify-content:center}.f23-asset-empty{display:grid;justify-items:center;padding:58px 28px;text-align:center}.f23-asset-empty>span{display:grid;width:62px;height:62px;place-items:center;border-radius:18px;color:#6d28d9;background:#f0eaff}.f23-asset-empty>span svg{width:29px}.f23-asset-empty h2{margin:17px 0 7px}.f23-asset-empty p{max-width:620px;color:#748199}.f23-asset-form-callout{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0;padding:14px 16px;border:1px solid #cfe2fa;border-radius:14px;background:linear-gradient(90deg,#eff8ff,#f8f1ff)}.f23-asset-form-callout b{color:#1d58ad}.f23-asset-form-callout span{color:#66758d;font-size:.82rem}.f23-asset-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.f23-asset-form-grid label{display:grid;gap:7px}.f23-asset-form-grid label>span{color:#2a3851;font-size:.82rem;font-weight:800}.f23-asset-form-grid .wide{grid-column:1/-1}.f23-asset-form-grid input,.f23-asset-form-grid select,.f23-asset-form-grid textarea{width:100%;border:1px solid #d8dfeb;border-radius:12px;background:#fbfcff}.f23-asset-form-grid input,.f23-asset-form-grid select{min-height:46px;padding:0 12px}.f23-asset-form-grid textarea{padding:12px;resize:vertical}
@media(max-width:900px){.f23-asset-grid{grid-template-columns:1fr}.f23-asset-metrics{grid-template-columns:1fr}.f23-asset-page-head{align-items:stretch}.f23-asset-page-head .primary{width:100%;justify-content:center}.f23-asset-filter{align-items:stretch;flex-direction:column}.f23-asset-filter select{width:100%}}
@media(max-width:620px){.f23-asset-form-grid{grid-template-columns:1fr}.f23-asset-form-grid .wide{grid-column:auto}.f23-asset-card-top{grid-template-columns:auto 1fr}.f23-asset-status{grid-column:1/-1;width:max-content}.f23-asset-card dl{grid-template-columns:1fr}.f23-asset-form-callout{align-items:flex-start;flex-direction:column}}

/* Inventario colocation v2: modale cliente più semplice e leggibile */
#modal-backdrop .modal.f23-asset-modal{width:min(940px,calc(100vw - 40px));max-width:940px;max-height:min(92vh,900px);padding:0;overflow:auto;background:linear-gradient(180deg,#ffffff 0,#fbfcff 100%);box-shadow:0 34px 90px rgba(13,23,55,.32)}
#modal-backdrop .modal.f23-asset-modal.is-client{max-width:780px}
#modal-backdrop .modal.f23-asset-modal #modal-body{padding:34px 38px 28px}
#modal-backdrop .modal.f23-asset-modal>.modal-close{top:18px;right:18px;z-index:3;background:#fff;border:1px solid #dce5f1;box-shadow:0 8px 24px rgba(26,43,77,.1)}
#modal-backdrop .modal.f23-asset-modal .modal-icon{width:54px;height:54px;border-radius:17px;color:#fff;background:linear-gradient(135deg,#0d78d1,#6d28d9 70%,#ec4899);box-shadow:0 12px 30px rgba(96,45,201,.25)}
#modal-backdrop .modal.f23-asset-modal #modal-title{margin-top:18px;font-size:1.8rem;letter-spacing:-.035em}
#modal-backdrop .modal.f23-asset-modal #modal-title+p{max-width:680px;color:#6f7d93;font-size:.96rem;line-height:1.55}
.f23-asset-form-callout{justify-content:flex-start;padding:16px 18px}.f23-asset-form-callout-icon{display:grid!important;flex:0 0 40px;width:40px;height:40px;place-items:center;border-radius:12px;color:#fff!important;background:linear-gradient(135deg,#0ea5e9,#7c3aed)}.f23-asset-form-callout-icon svg{width:20px}.f23-asset-form-callout>div{display:grid;gap:4px}.f23-asset-form-callout>div span{line-height:1.45}
.f23-asset-form-section{margin-top:18px;padding:19px;border:1px solid #dfe7f2;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(26,47,84,.045)}.f23-asset-form-section>header{display:flex;align-items:center;gap:11px;margin-bottom:16px}.f23-asset-form-section>header>span{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(135deg,#0878d3,#7635de);font-size:.72rem;font-weight:900}.f23-asset-form-section>header div{display:grid;gap:2px}.f23-asset-form-section>header b{color:#142a4a;font-size:.96rem}.f23-asset-form-section>header small{color:#8290a5;font-size:.76rem}.f23-asset-form-section.technical{background:linear-gradient(145deg,#f8fbff,#f9f6ff)}
.f23-asset-form.is-client .f23-asset-form-section:nth-of-type(2){border-color:#cfe4fb;background:linear-gradient(145deg,#fff,#f4f9ff)}
.f23-asset-form-grid input:focus,.f23-asset-form-grid select:focus,.f23-asset-form-grid textarea:focus{outline:0;border-color:#7c3aed;box-shadow:0 0 0 4px rgba(124,58,237,.1);background:#fff}.f23-asset-form-grid input,.f23-asset-form-grid select{min-height:50px}.f23-asset-form-grid textarea{min-height:92px}
.f23-asset-mail-option{display:flex!important;align-items:center;gap:12px;padding:14px 16px;border:1px solid #b8d9ff!important;border-radius:14px;background:#eef7ff}.f23-asset-mail-option>input{width:19px!important;min-height:19px!important;height:19px;margin:0;accent-color:#6d28d9}.f23-asset-mail-option>span{display:grid!important;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}.f23-asset-mail-option svg{grid-row:1/3;width:22px;color:#176ccb}.f23-asset-mail-option small{color:#64758d;font-weight:500}
.f23-asset-modal .modal-actions{position:sticky;bottom:-1px;z-index:2;margin:22px -38px -28px;padding:17px 38px;border-top:1px solid #e4eaf2;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.f23-asset-modal .modal-actions .primary{min-width:190px}.f23-asset-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.f23-asset-card-actions .notify{color:#6d28d9;background:#f6f0ff}.f23-asset-card-actions .notify:hover{background:#eee3ff}
@media(max-width:720px){#modal-backdrop .modal.f23-asset-modal{width:calc(100vw - 18px);max-height:94vh;border-radius:22px}#modal-backdrop .modal.f23-asset-modal #modal-body{padding:26px 20px 22px}.f23-asset-modal .modal-actions{margin:20px -20px -22px;padding:14px 20px}.f23-asset-form-section{padding:15px}.f23-asset-form-grid{grid-template-columns:1fr}.f23-asset-form-grid .wide{grid-column:auto}.f23-asset-card-actions{grid-template-columns:1fr}}

/* Inventario colocation v3: compatto, organizzato per cliente e integrato nella scheda */
.f23-asset-page-head{padding-bottom:0}.f23-asset-page-head h1{font-size:1.72rem}.f23-asset-page-head p{max-width:720px}.f23-asset-page-head .primary{min-height:40px;padding:9px 14px;border-radius:11px;font-size:.78rem}.f23-asset-page-head .primary svg{width:16px}.f23-asset-metrics{gap:10px;margin:13px 0}.f23-asset-metrics article{min-height:72px;padding:12px 15px;border-radius:14px;box-shadow:0 7px 20px rgba(20,35,70,.045)}.f23-asset-metrics article>span{width:38px;height:38px;border-radius:11px}.f23-asset-metrics svg{width:18px}.f23-asset-metrics strong{font-size:1.28rem}.f23-asset-filter{gap:10px;margin-bottom:12px;padding:10px;border-radius:15px}.f23-asset-filter>div{border-radius:10px}.f23-asset-filter input{min-height:38px}.f23-asset-filter select{min-width:175px;min-height:40px;border-radius:10px}.f23-asset-card{padding:15px;border-radius:16px;box-shadow:0 8px 24px rgba(21,38,75,.055)}.f23-asset-icon{width:38px;height:38px;border-radius:11px}.f23-asset-icon svg{width:18px}.f23-asset-card dl{margin:13px 0 10px}.f23-asset-card dl div{padding:8px 10px}.f23-asset-card-actions{gap:7px}.f23-asset-card-actions button{min-height:34px;padding:7px 10px;font-size:.73rem}.f23-asset-card-actions svg{width:15px!important;height:15px!important;flex:0 0 15px}.f23-asset-customer-list{display:grid;gap:10px}.f23-asset-customer-group{border:1px solid #dbe5f0;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(21,38,75,.045);overflow:hidden}.f23-asset-customer-group[open]{border-color:#c8d9ef;box-shadow:0 13px 34px rgba(34,62,105,.075)}.f23-asset-customer-group>summary{display:grid;grid-template-columns:42px minmax(240px,1.4fr) minmax(170px,.85fr) minmax(105px,.5fr) auto;gap:13px;align-items:center;padding:13px 15px;list-style:none;cursor:pointer;transition:background .18s}.f23-asset-customer-group>summary::-webkit-details-marker{display:none}.f23-asset-customer-group>summary:hover{background:linear-gradient(90deg,#f6fbff,#fbf8ff)}.f23-asset-customer-avatar{display:grid;width:40px;height:40px;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(135deg,#0879d5,#6d28d9);font-size:.78rem;font-weight:900}.f23-asset-customer-identity,.f23-asset-customer-services,.f23-asset-customer-total{display:grid;min-width:0}.f23-asset-customer-group small{color:#8390a3;font-size:.59rem;font-weight:900;letter-spacing:.08em}.f23-asset-customer-identity b{margin:2px 0;color:#17324f;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.f23-asset-customer-group em{color:#6f7f95;font-size:.7rem;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.f23-asset-customer-services b,.f23-asset-customer-total b{margin:2px 0;color:#213c5c;font-size:.88rem}.f23-asset-customer-open{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:9px;color:#6429d0;background:#f4efff;font-size:.7rem;font-weight:850}.f23-asset-customer-open svg{width:14px;transition:transform .18s}.f23-asset-customer-group[open] .f23-asset-customer-open svg{transform:rotate(90deg)}.f23-asset-customer-body{padding:0 12px 12px;border-top:1px solid #e6edf5;background:#fbfcff}.f23-asset-customer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 3px}.f23-asset-customer-toolbar>div{display:grid}.f23-asset-customer-toolbar b{color:#193654;font-size:.82rem}.f23-asset-customer-toolbar span{color:#76869b;font-size:.68rem}.f23-asset-customer-toolbar button{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:6px 10px;border:1px solid #ccdced;border-radius:9px;color:#25557f;background:#fff;font-size:.69rem;font-weight:850}.f23-asset-customer-toolbar button svg{width:14px}.f23-asset-compact-list{display:grid;gap:7px}.f23-asset-compact-row{display:grid;grid-template-columns:34px minmax(150px,1.25fr) minmax(150px,.9fr) minmax(150px,.9fr) auto auto;gap:11px;align-items:center;padding:9px 10px;border:1px solid #e1e8f1;border-radius:12px;background:#fff}.f23-asset-mini-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;color:#176dcc;background:#eaf5ff}.f23-asset-mini-icon svg{width:16px;height:16px}.f23-asset-compact-main,.f23-asset-compact-fact{display:grid;min-width:0}.f23-asset-compact-row small{color:#8a95a7;font-size:.54rem;font-weight:900;letter-spacing:.07em}.f23-asset-compact-main small{color:#7130d2}.f23-asset-compact-row b{margin-top:2px;color:#213b59;font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.f23-asset-compact-row span:not(.f23-asset-mini-icon):not(.f23-asset-status){margin-top:2px;color:#718096;font-size:.63rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.f23-asset-compact-state .f23-asset-status{padding:6px 8px;font-size:.62rem}.f23-asset-compact-actions{display:flex;gap:5px}.f23-asset-compact-actions button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 8px;border:1px solid #d5e1ef;border-radius:8px;color:#28577f;background:#f8fbff;font-size:.65rem;font-weight:850}.f23-asset-compact-actions button:last-child{color:#7027d1;background:#f7f1ff}.f23-asset-compact-actions svg{width:13px!important;height:13px!important}.f23-customer-assets-tab .f23-asset-compact-list{margin-top:12px}.f23-customer-assets-tab .f23-panel-heading{align-items:center}.f23-asset-empty.compact{padding:28px 18px}.f23-asset-empty.compact>span{width:46px;height:46px}.f23-asset-empty.compact h2{margin-top:11px;font-size:1rem}.f23-summary-inline-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.f23-summary-inline-actions .f23-text-action{margin-top:0}#modal-backdrop .modal.f23-asset-modal{width:min(840px,calc(100vw - 40px));max-width:840px}#modal-backdrop .modal.f23-asset-modal.is-client{max-width:680px}#modal-backdrop .modal.f23-asset-modal #modal-body{padding:27px 30px 23px}#modal-backdrop .modal.f23-asset-modal .modal-icon{width:46px;height:46px;border-radius:14px}#modal-backdrop .modal.f23-asset-modal #modal-title{margin-top:13px;font-size:1.55rem}.f23-asset-form-section{margin-top:13px;padding:15px;border-radius:14px}.f23-asset-form-section>header{margin-bottom:12px}.f23-asset-form-grid{gap:10px}.f23-asset-form-grid input,.f23-asset-form-grid select{min-height:43px}.f23-asset-modal .modal-actions{margin:17px -30px -23px;padding:13px 30px}.f23-asset-modal .modal-actions .primary{min-width:155px}
@media(max-width:1000px){.f23-asset-customer-group>summary{grid-template-columns:42px 1fr auto}.f23-asset-customer-services{display:none}.f23-asset-customer-total{justify-items:end}.f23-asset-compact-row{grid-template-columns:34px 1fr 1fr auto}.f23-asset-compact-fact:nth-of-type(3){display:none}}
@media(max-width:720px){.f23-asset-metrics{grid-template-columns:repeat(3,1fr)}.f23-asset-metrics article{justify-content:center;padding:10px}.f23-asset-metrics article>span{display:none}.f23-asset-metrics small{font-size:.53rem}.f23-asset-customer-group>summary{grid-template-columns:38px 1fr auto;padding:11px}.f23-asset-customer-total{display:none}.f23-asset-customer-open{font-size:0}.f23-asset-customer-open svg{margin:0}.f23-asset-compact-row{grid-template-columns:30px 1fr auto}.f23-asset-compact-fact{display:none}.f23-asset-compact-state{grid-column:2}.f23-asset-compact-actions{grid-column:3;grid-row:1/3;flex-direction:column}.f23-asset-compact-actions span{display:none}.f23-asset-customer-toolbar{align-items:flex-start;flex-direction:column}.f23-asset-customer-toolbar button{width:100%;justify-content:center}#modal-backdrop .modal.f23-asset-modal #modal-body{padding:22px 17px 18px}.f23-asset-modal .modal-actions{margin:16px -17px -18px;padding:12px 17px}}

/* Compact customer colocation inventory */
.f23-asset-service-list{margin-bottom:18px}.f23-asset-service-group>summary{background:linear-gradient(90deg,#fff,#fbf9ff)}.f23-asset-customer-avatar.service{color:#176dcc;background:#eaf5ff}.f23-asset-customer-avatar.service svg{width:19px;height:19px}.f23-asset-service-group[open]>summary{background:linear-gradient(90deg,#eff8ff,#f8f2ff)}.f23-asset-service-group .f23-asset-customer-services b{color:#087a51;text-transform:capitalize}.f23-asset-client-filter{margin-top:0}.f23-asset-service-group .f23-asset-customer-body{background:#f9fbfe}.f23-asset-service-group .f23-asset-compact-row{box-shadow:0 3px 12px rgba(25,52,89,.035)}

/* Service cancellation at renewal */
.f23-service-cancellation{display:flex;align-items:center;gap:16px;margin-top:18px;padding:18px 20px;border:1px solid #d8e2f1;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#f7f9ff 100%);box-shadow:0 12px 34px rgba(15,35,67,.06)}
.f23-service-cancellation>span{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:13px;background:#fff1f2;color:#e11d48}.f23-service-cancellation>span svg{width:21px;height:21px}.f23-service-cancellation>div{min-width:0;flex:1}.f23-service-cancellation small{display:block;color:#7b8ba5;font-size:10px;font-weight:800;letter-spacing:.12em}.f23-service-cancellation h3{margin:4px 0 3px;color:#14243b;font-size:16px}.f23-service-cancellation p{margin:0;color:#71819b;font-size:13px;line-height:1.45}
.f23-service-cancellation.scheduled{border-color:#c4b5fd;background:linear-gradient(135deg,#f5f3ff,#eef6ff)}.f23-service-cancellation.scheduled>span{background:#ede9fe;color:#6d28d9}
.f23-service-cancel-summary{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:15px;border:1px solid #dbe5f0;border-radius:14px;background:#f7f9ff}.f23-service-cancel-summary>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#ede9fe;color:#6d28d9}.f23-service-cancel-summary div{display:grid;gap:2px}.f23-service-cancel-summary small{color:#7b8ba5;font-size:10px;font-weight:800;letter-spacing:.1em}.f23-service-cancel-summary b{color:#14243b}.f23-service-cancel-summary em{color:#71819b;font-size:12px;font-style:normal}
@media(max-width:720px){.f23-service-cancellation{align-items:flex-start;flex-wrap:wrap}.f23-service-cancellation button{width:100%}}
