:root{color-scheme:light;--bg:#f8fafc;--fg:#0f172a;--muted:#64748b;--border:#dbe3ef;--brand:#0f766e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}.layout{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:100vh}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:auto;background:#0f172a;color:white;padding:24px}.brand{display:flex;gap:12px;align-items:center;margin-bottom:24px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:16px;background:#14b8a6;color:#042f2e;font-weight:900}.brand strong{display:block;font-size:22px}.brand small,.sidebar-footer small,.topbar small{display:block;color:#94a3b8;margin-top:3px}.nav{display:grid;grid-gap:18px;gap:18px}.sidebar-nav{max-height:calc(100vh - 188px);overflow:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.55) transparent}.nav-group{display:grid;grid-gap:8px;gap:8px}.nav-group p{margin:0;color:#94a3b8;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.nav-links{display:grid;grid-gap:4px;gap:4px}.nav a,.nav-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;color:#cbd5e1;min-height:42px;outline:none;transition:background .16s ease,color .16s ease,transform .16s ease}.nav a:hover,.nav-link:hover{background:#1e293b;color:white;transform:translateX(2px)}.nav-link:focus-visible{box-shadow:0 0 0 2px #5eead4;background:#1e293b;color:white}.nav-link-active,.nav-link-active:hover{background:linear-gradient(135deg,rgba(20,184,166,.28),rgba(59,130,246,.18));color:white;box-shadow:inset 3px 0 0 #2dd4bf}.nav-icon{width:18px;height:18px;flex:0 0 18px;color:#67e8f9}.nav-link-active .nav-icon{color:#5eead4}.nav-link span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer{margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12)}.logout-form{margin-top:12px}.logout-form button{width:100%;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:white;border-radius:14px;padding:10px 12px;cursor:pointer;font-weight:700}.main{padding:32px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;background:white;border:1px solid var(--border);border-radius:22px;padding:14px 16px;margin-bottom:20px;box-shadow:0 8px 24px rgba(15,23,42,.05)}.hero{background:linear-gradient(135deg,#0f766e,#0f172a);color:white;border-radius:28px;padding:30px;margin-bottom:24px;box-shadow:0 16px 45px rgba(15,23,42,.18)}.hero h1{margin:8px 0;font-size:34px;letter-spacing:-.03em}.hero p{max-width:860px;color:#dbeafe;line-height:1.6}.button-row,.hero-actions,.toolbar-actions{display:flex;gap:10px;flex-wrap:wrap}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:800;opacity:.75;margin:0}.eyebrow.compact{color:var(--muted);opacity:1}.grid{display:grid;grid-gap:16px;gap:16px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.workspace-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:flex-start}.card{background:white;border:1px solid var(--border);border-radius:24px;padding:22px;box-shadow:0 10px 28px rgba(15,23,42,.06)}.card-header{margin-bottom:16px;display:grid;grid-gap:8px;gap:8px}.card-title{margin:0;font-size:20px}.card-content{display:grid;grid-gap:12px;gap:12px}.muted{color:var(--muted);line-height:1.55}.badge{display:inline-flex;width:max-content;align-items:center;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;background:#e2e8f0;color:#334155}.badge-secondary{background:#e0f2fe;color:#0369a1}.badge-success{background:#dcfce7;color:#166534}.badge-warning{background:#fef3c7;color:#92400e}.badge-destructive{background:#fee2e2;color:#991b1b}.badge-outline{background:white;border:1px solid var(--border);color:#334155}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:16px;padding:10px 14px;background:#0f172a;color:white;font-weight:800;cursor:pointer;min-height:40px}.button-secondary{background:#e2e8f0;color:#0f172a}.button-light{background:white;color:#0f172a}.button-ghost{background:rgba(255,255,255,.14);color:white;border:1px solid rgba(255,255,255,.2)}.module-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;background:white;border:1px solid var(--border);border-radius:22px;padding:18px;margin-bottom:16px}.progress{margin-top:10px;height:10px;width:min(360px,100%);border-radius:999px;overflow:hidden;background:#e2e8f0}.progress span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#14b8a6,#0f766e)}.metric-card strong{display:block;margin-top:8px;font-size:30px;letter-spacing:-.03em}.metric-label{color:var(--muted);font-size:13px;font-weight:800}.table-wrap{width:100%;overflow:auto}.data-table{width:100%;border-collapse:separate;border-spacing:0 8px}.data-table th{color:var(--muted);font-size:12px;text-align:left;padding:0 12px 6px;text-transform:uppercase;letter-spacing:.08em}.data-table td{background:#f8fafc;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:12px;vertical-align:middle}.data-table td:first-child{border-left:1px solid #e2e8f0;border-radius:16px 0 0 16px}.data-table td:last-child{border-right:1px solid #e2e8f0;border-radius:0 16px 16px 0;text-align:right}.data-table small{display:block;color:var(--muted);margin-top:4px}.selected-row td{background:#ecfeff;border-color:#99f6e4}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:800}.link-button{border:0;background:transparent;color:#0f766e;font-weight:800;cursor:pointer}.auth-form input[type=email],.auth-form input[type=password],.search-input{width:100%;border:1px solid var(--border);border-radius:14px;padding:12px 14px;font:inherit;background:white}.side-panel{display:grid;grid-gap:16px;gap:16px}.activity-log,.checklist{list-style:none;padding:0;margin:0;display:grid;grid-gap:8px;gap:8px}.activity-log li,.checklist li{padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;color:#475569}.checklist li.done{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.auth-page{min-height:calc(100vh - 64px);display:grid;place-items:center}.auth-card-wrap{width:min(520px,100%)}.auth-card{padding:28px}.auth-form{display:grid;grid-gap:14px;gap:14px}.auth-form label{display:grid;grid-gap:6px;gap:6px;color:#334155;font-weight:700}.checkbox-row{display:flex!important;align-items:center;gap:10px;font-weight:600!important}.small-note{font-size:13px;line-height:1.5}@media(max-width:1100px){.grid-3,.workspace-grid{grid-template-columns:1fr}}@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{position:static;height:auto}.main{padding:20px}.module-toolbar,.topbar{align-items:flex-start;flex-direction:column}}.registry-kpis,.summary-kpis{margin-bottom:16px}.compact-form{display:grid;grid-gap:10px;gap:10px;margin-top:10px;padding-top:12px;border-top:1px solid var(--border)}.compact-form input,.compact-form select{padding:10px 12px}.compact-form strong{font-size:14px}.side-panel .card h3{margin:.5rem 0}.notice-empty,.registry-empty{padding:18px;border:1px dashed var(--border);border-radius:16px;color:var(--muted);background:#f8fafc}.inline-form{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem}.button-danger{background:#b91c1c;color:#fff;border-color:#991b1b}.button-danger:hover{background:#991b1b}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:1024px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.grid-4{grid-template-columns:1fr}}.form-grid{display:grid;grid-gap:12px;gap:12px}.form-grid label{display:grid;grid-gap:6px;gap:6px;font-weight:700;color:#334155}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--border);border-radius:14px;padding:10px 12px;font:inherit;background:white}.form-grid textarea{min-height:96px;resize:vertical}:root{--focus-ring:#111827;--a11y-bg:#ffffff;--a11y-text:#111827}html{scroll-behavior:smooth}body{color:var(--a11y-text);background:var(--a11y-bg)}.skip-link{position:absolute;left:1rem;top:-4rem;z-index:999;padding:.75rem 1rem;border-radius:.75rem;background:#fff;color:#111827;border:2px solid #111827}.skip-link:focus{top:1rem}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 6px rgba(17,24,39,.14)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.field-label{display:grid;grid-gap:.35rem;gap:.35rem;font-weight:700;color:#111827}.accessibility-shell{display:grid;grid-gap:1.5rem;gap:1.5rem}.data-table caption{text-align:left;font-weight:700;padding:.5rem}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.analytics-bars{display:grid;grid-gap:12px;gap:12px}.analytics-bar-row{display:grid;grid-template-columns:82px minmax(160px,1fr) 120px minmax(120px,auto);grid-gap:12px;gap:12px;align-items:center;padding:10px 12px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.analytics-bar-track{height:12px;border-radius:999px;background:#e2e8f0;overflow:hidden}.analytics-bar-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#14b8a6,#0f766e)}.analytics-bar-row small{color:var(--muted)}@media (max-width:760px){.analytics-bar-row{grid-template-columns:1fr}}.progress-track{width:100%;height:.55rem;overflow:hidden;border-radius:999px;background:rgba(15,23,42,.08);margin:.65rem 0}.progress-track>span{display:block;height:100%;border-radius:inherit;background:currentColor;opacity:.55}.table-like{display:grid;grid-gap:.65rem;gap:.65rem}.table-row{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid rgba(15,23,42,.08)}.table-row span{display:grid;grid-gap:.2rem;gap:.2rem}.table-row small{color:var(--muted-foreground,#64748b)}.topbar-actions{gap:.75rem}.access-denied{display:grid;grid-gap:1rem;gap:1rem;max-width:760px;margin:3rem auto;padding:2rem;border:1px solid var(--border);border-radius:28px;background:#fff;box-shadow:0 16px 45px rgba(15,23,42,.08)}.access-denied h1{margin:0;font-size:2rem;letter-spacing:-.03em}.session-status-panel{display:grid;grid-gap:1.25rem;gap:1.25rem;max-width:960px;margin:2.5rem auto;padding:1.5rem;border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:0 16px 45px rgba(15,23,42,.08)}.session-status-panel h1{margin:.35rem 0 .5rem;font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.03em}.session-status-panel .muted{max-width:760px}.session-status-steps{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.guide-panel{margin:0 0 1rem;padding:1rem 1.25rem;border:1px solid #bae6fd;border-radius:22px;background:#f0f9ff}.guide-panel ol{margin:.5rem 0 0;padding-left:1.25rem;color:#334155;line-height:1.65}.stacked-form{display:grid;grid-gap:.75rem;gap:.75rem}.record-list{display:grid;grid-gap:.8rem;gap:.8rem}.record-list.compact{gap:.6rem}.record-card{display:grid;grid-gap:.35rem;gap:.35rem;padding:.9rem;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.record-main{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .55rem}.record-main strong{color:#0f172a}.record-card span{color:var(--muted)}.nav-user-context{display:flex;align-items:center;gap:.6rem;padding:.65rem .75rem;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.06);color:#e2e8f0;font-size:.78rem;font-weight:800}.nav-context-icon{width:16px;height:16px;color:#5eead4;flex:0 0 16px}.nav-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0;border:0;border-radius:12px;padding:.45rem .55rem;background:transparent;color:#94a3b8;font:inherit;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}.nav-group-toggle:focus-visible,.nav-group-toggle:hover{background:rgba(255,255,255,.08);color:#f8fafc}.nav-group-active .nav-group-toggle{color:#a7f3d0}.nav-reserved-badge{margin-left:auto;border-radius:999px;padding:.16rem .42rem;background:rgba(20,184,166,.16);color:#99f6e4;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.nav-link .nav-reserved-badge{flex:0 0 auto}.sidebar .nav-links{padding-bottom:.2rem}.role-guide{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin:0 0 1rem;padding:1rem 1.1rem;border:1px solid #99f6e4;border-radius:20px;background:#ecfeff;color:#134e4a}.role-guide strong{display:block;min-width:max-content}.role-guide span{color:#0f766e;line-height:1.5}@media(max-width:900px){.sidebar-nav{max-height:none}.nav-reserved-badge{display:none}.role-guide{flex-direction:column}}.product-page-guide{margin:-.5rem 0 1rem;padding:1rem 1.25rem;border:1px solid #bae6fd;border-radius:22px;background:#f0f9ff}.product-page-guide ol{margin:.5rem 0 0;padding-left:1.25rem;color:#334155;line-height:1.65}.product-page-guide li+li{margin-top:.2rem}.operator-help-guide{margin:-.5rem 0 1rem;padding:1rem 1.25rem;border:1px solid #bfdbfe;border-radius:22px;background:linear-gradient(180deg,#eff6ff,#f8fafc);box-shadow:0 10px 24px rgba(15,23,42,.06)}.operator-help-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.operator-help-header strong{display:block;color:#0f172a;line-height:1.45}.operator-help-badge{white-space:nowrap;font-size:.78rem;font-weight:800;color:#1e40af;background:#dbeafe;border:1px solid #bfdbfe;padding:.35rem .65rem;border-radius:999px}.operator-guide-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-gap:1rem;gap:1rem;margin-top:1rem}.operator-guide-grid h3{margin:.1rem 0 .45rem;font-size:.92rem;color:#0f172a}.operator-guide-grid ol{margin:0;padding-left:1.15rem;color:#334155;line-height:1.55}.operator-guide-grid p{margin:.25rem 0;color:#334155;line-height:1.55}.operator-role-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-top:1rem}.operator-role-notes p{margin:0;padding:.75rem;border:1px solid #e2e8f0;border-radius:16px;background:#fff}.operator-role-notes strong{display:block;color:#0f172a;margin-bottom:.25rem}.operator-role-notes span{display:block;color:#475569;line-height:1.45}@media(max-width:1100px){.operator-guide-grid,.operator-role-notes{grid-template-columns:1fr}.operator-help-header{flex-direction:column}.operator-help-badge{white-space:normal}}.role-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1rem;gap:1rem}.tag-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.25rem}.tag{display:inline-flex;align-items:center;border:1px solid #dbeafe;border-radius:999px;padding:.25rem .55rem;font-size:.78rem;background:#eff6ff;color:#1e3a8a}.chart-card{min-height:280px}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;margin:0 0 1rem;color:#475569;font-size:.9rem}.breadcrumb a{color:#0f766e;font-weight:800}.breadcrumb strong{color:#0f172a}.operator-flow{align-items:flex-start}.operator-workspace-grid{align-items:stretch}.operator-workspace-card{display:flex;flex-direction:column}.operator-workspace-card .card-content{flex:1 1}.workspace-actions{display:grid;grid-gap:.4rem;gap:.4rem;margin:.75rem 0 0;padding:0;list-style:none}.workspace-actions li{padding:.45rem .6rem;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.workspace-actions a{color:#0f766e;font-weight:800}.water-operation-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:-.25rem 0 1rem}.water-operation-flow div{display:grid;grid-gap:.25rem;gap:.25rem;padding:.9rem 1rem;border:1px solid #ccfbf1;border-radius:18px;background:#f0fdfa;color:#134e4a}.water-operation-flow strong{color:#0f172a}.water-operation-flow span{color:#0f766e;font-size:.9rem;line-height:1.35}@media(max-width:1100px){.water-operation-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.water-operation-flow{grid-template-columns:1fr}}.reporting-page{display:grid;grid-gap:1.25rem;gap:1.25rem}.reporting-area-grid,.reporting-hero,.reporting-results-grid{margin-bottom:0}.reporting-card{min-height:100%}.reporting-filter-card{display:grid;grid-gap:1rem;gap:1rem}.reporting-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.reporting-primary-action{width:max-content}.reporting-status{margin:0;border-radius:16px;padding:.85rem 1rem;line-height:1.5}.reporting-status-ready{border:1px solid #99f6e4;background:#ecfdf5;color:#065f46}.reporting-status-warning{border:1px solid #fde68a;background:#fffbeb;color:#92400e}.reporting-status-neutral{border:1px solid #e2e8f0;background:#f8fafc;color:#334155}.reporting-value-list{display:grid;grid-gap:.65rem;gap:.65rem;margin:0}.reporting-value-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:1rem;gap:1rem;border-bottom:1px solid #e2e8f0;padding:.75rem 0}.reporting-value-row:first-child{padding-top:0}.reporting-value-row:last-child{border-bottom:0;padding-bottom:0}.reporting-value-row dt{color:#475569;font-weight:700}.reporting-value-row dd{margin:0;color:#0f172a;font-size:1.45rem;font-weight:900;letter-spacing:-.02em}.reporting-next-action{margin:1rem 0 0;padding:.8rem .9rem;border-radius:16px;background:#f8fafc}.reporting-safety-list{display:grid;grid-gap:.65rem;gap:.65rem;margin:0;padding:0;list-style:none}.reporting-safety-list li{padding:.8rem .9rem;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;color:#334155}@media(max-width:1100px){.reporting-filter-grid{grid-template-columns:1fr}}.billing-operation-flow,.payment-operation-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:-.25rem 0 1rem}.billing-operation-flow div,.payment-operation-flow div{display:grid;grid-gap:.25rem;gap:.25rem;padding:.9rem 1rem;border:1px solid #bfdbfe;border-radius:18px;background:#eff6ff;color:#1e3a8a}.billing-operation-flow strong,.payment-operation-flow strong{color:#0f172a}.billing-operation-flow span,.payment-operation-flow span{color:#1d4ed8;font-size:.9rem;line-height:1.35}@media(max-width:1100px){.billing-operation-flow,.payment-operation-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.billing-operation-flow,.payment-operation-flow{grid-template-columns:1fr}}.citizen-service-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:-.25rem 0 1rem}.citizen-service-flow span{display:block;padding:.9rem 1rem;border:1px solid #ddd6fe;border-radius:18px;background:#f5f3ff;color:#4c1d95;font-weight:800;line-height:1.35}@media(max-width:1100px){.citizen-service-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.citizen-service-flow{grid-template-columns:1fr}}.field-operations-flow,.installer-mobile-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:-.25rem 0 1rem}.field-operations-flow span,.installer-mobile-flow span{display:block;padding:.9rem 1rem;border:1px solid #bae6fd;border-radius:18px;background:#f0f9ff;color:#075985;font-weight:800;line-height:1.35}.field-action-panel{display:grid;grid-gap:.75rem;gap:.75rem}.field-action-panel textarea{min-height:110px}@media(max-width:1100px){.field-operations-flow,.installer-mobile-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.field-operations-flow,.installer-mobile-flow{grid-template-columns:1fr}}.tenant-go-live-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:-.25rem 0 1rem}.tenant-go-live-flow span{display:block;padding:.9rem 1rem;border:1px solid #bbf7d0;border-radius:18px;background:#f0fdf4;color:#166534;font-weight:800;line-height:1.35}@media(max-width:1100px){.tenant-go-live-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.tenant-go-live-flow{grid-template-columns:1fr}}.audit-governance-flow,.report-governance-flow,.responsibility-governance-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:-.25rem 0 1rem}.audit-governance-flow span,.report-governance-flow span,.responsibility-governance-flow span{display:block;padding:.9rem 1rem;border:1px solid #fed7aa;border-radius:18px;background:#fff7ed;color:#9a3412;font-weight:800;line-height:1.35}.report-governance-card .card-header svg{color:#0f766e}@media(max-width:1100px){.audit-governance-flow,.report-governance-flow,.responsibility-governance-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.audit-governance-flow,.report-governance-flow,.responsibility-governance-flow{grid-template-columns:1fr}}.auth-main{min-height:100vh}.main:focus{outline:none}.button,.link-button.touch-target,.nav-link,.touch-target{min-height:44px}.link-button.touch-target{display:inline-flex;align-items:center;justify-content:center;padding:.5rem .65rem;border-radius:12px}.client-ready-status-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:-.35rem 0 1rem}.client-ready-status-strip article{grid-gap:.25rem;gap:.25rem;padding:.95rem 1rem;border:1px solid #dbeafe;border-radius:18px;background:#f8fafc;box-shadow:0 8px 20px rgba(15,23,42,.04)}.client-ready-status-strip span{color:#475569;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.client-ready-status-strip strong{color:#0f172a;font-size:1rem}.client-ready-status-strip small{color:#64748b;line-height:1.35}.empty-state,.error-state,.success-state{display:grid;grid-gap:.35rem;gap:.35rem;padding:1rem 1.1rem;border-radius:18px;margin:.5rem 0;line-height:1.5}.empty-state{color:#334155}.error-state{background:#fff1f2}.success-state{color:#14532d}.empty-state strong,.error-state strong,.success-state strong{color:#0f172a}.empty-state p,.error-state p,.success-state p{margin:0}.empty-state-action{margin-top:.4rem}.responsive-table-card .data-table td:last-child,.responsive-table-card .data-table th:last-child{text-align:left}.record-row{display:grid;grid-gap:.35rem;gap:.35rem;padding:.85rem .95rem;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.record-row span{color:var(--muted);line-height:1.45}.record-row p{margin:0;color:#475569;line-height:1.5}.divider{height:1px;background:#e2e8f0;margin:.5rem 0}.inline-status{display:flex;align-items:flex-start;gap:.5rem;color:#334155;line-height:1.5}.inline-status svg{flex:0 0 auto;margin-top:.15rem;color:#0f766e}@media(max-width:720px){.main{padding:16px}.hero{padding:22px;border-radius:22px}.hero h1{font-size:28px}.client-ready-status-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2,.grid-3,.grid-4,.workspace-grid{grid-template-columns:1fr}.button-row,.button-row .button,.hero-actions,.hero-actions .button,.inline-form,.inline-form .button,.inline-form .search-input,.toolbar-actions,.toolbar-actions .button{width:100%}.responsive-table-card .data-table,.responsive-table-card .data-table tbody,.responsive-table-card .data-table td,.responsive-table-card .data-table thead,.responsive-table-card .data-table tr{display:block;width:100%}.responsive-table-card .data-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.responsive-table-card .data-table tr{margin-bottom:.75rem;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;overflow:hidden}.responsive-table-card .data-table td{border:0;border-radius:0;background:transparent;padding:.7rem .85rem}.responsive-table-card .data-table td:before{content:attr(data-label);display:block;margin-bottom:.2rem;color:#64748b;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}}@media(max-width:480px){.client-ready-status-strip{grid-template-columns:1fr}.topbar{border-radius:18px}.card{padding:18px;border-radius:20px}.guide-panel,.operator-help-guide{border-radius:18px;padding:.9rem}}.water-decision-panel{align-items:flex-start;background:#f8fafc;border:1px solid rgba(15,23,42,.1);border-radius:22px;color:#0f172a;display:flex;gap:1rem;justify-content:space-between;margin:18px 0;padding:22px}.water-decision-panel h2{margin:.15rem 0 .35rem}.water-decision-panel p{color:#475569;max-width:72ch}.water-decision-panel .eyebrow{color:#0f766e}.water-decision-panel .decision-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}.water-empty-state{background:#f8fafc;border:1px dashed #94a3b8;border-radius:22px;color:#334155;display:grid;grid-gap:10px;gap:10px;margin:18px 0;padding:22px}.water-empty-state strong{color:#0f172a;font-size:1.05rem}.water-empty-state p{margin:0;max-width:900px}.water-kpis .metric-label,.water-registry-panel .metric-label{color:var(--muted-foreground,#64748b);display:block;font-size:.78rem;margin-bottom:.25rem}.water-actions,.water-registry-panel{margin-top:1rem}.water-filter-bar{align-items:center;flex-wrap:wrap;gap:1rem}.water-filter-bar .inline-form{display:flex;flex-wrap:wrap;gap:.55rem}@media (max-width:900px){.water-decision-panel{flex-direction:column}.water-decision-panel .decision-actions{justify-content:flex-start}}.role-dashboard-showcase{display:grid;grid-gap:1rem;gap:1rem;margin:1rem 0 1.25rem}.section-heading{display:grid;grid-gap:.3rem;gap:.3rem;max-width:880px}.section-heading h2{margin:0;font-size:clamp(1.35rem,2vw,1.9rem);color:#0f172a}.role-dashboard-grid{align-items:stretch}.role-dashboard-card{display:flex;flex-direction:column}.role-dashboard-card .card-content{display:grid;grid-gap:1rem;gap:1rem;height:100%}.role-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.role-kpi{display:grid;grid-gap:.25rem;gap:.25rem;padding:.85rem;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.role-kpi span{color:#475569;font-size:.75rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.role-kpi strong{color:#0f172a;font-size:1.25rem;line-height:1.2}.role-kpi small{color:#64748b;line-height:1.35}.empty-copy{margin:0;padding:.85rem .95rem;border:1px dashed #cbd5e1;border-radius:16px;color:#475569;background:#ffffff;line-height:1.5}.quick-action-list{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;margin-top:auto}.quick-action-list .button{min-height:44px}@media(max-width:720px){.role-kpi-grid{grid-template-columns:1fr}.quick-action-list .button{width:100%}}.demo-storyboard .card{min-height:118px}.demo-storyboard .card-title{font-size:1.9rem}.demo-sample-grid .card-content{display:grid;grid-gap:.55rem;gap:.55rem}.demo-sample-grid .badge{width:-moz-fit-content;width:fit-content}.demo-sample-grid p{margin:0;line-height:1.5}@media(max-width:720px){.demo-sample-grid,.demo-storyboard{grid-template-columns:1fr}}.tenant-onboarding-flow{grid-template-columns:repeat(5,minmax(0,1fr))}.tenant-onboarding-editor{align-items:flex-start}.tenant-onboarding-form{display:grid;grid-gap:.85rem;gap:.85rem}.logo-upload-panel label,.tenant-onboarding-form label{display:grid;grid-gap:.35rem;gap:.35rem;color:#334155;font-weight:800;font-size:.86rem}.logo-upload-panel{display:grid;grid-gap:.85rem;gap:.85rem}.logo-preview{display:grid;place-items:center;min-height:164px;border:1px dashed #94a3b8;border-radius:22px;background:linear-gradient(135deg,#f8fafc,#eff6ff);color:#475569;text-align:center;padding:1rem;overflow:hidden}.logo-preview img{max-width:100%;max-height:140px;object-fit:contain}.logo-preview span{display:grid;grid-gap:.45rem;gap:.45rem;place-items:center}.file-upload-control{position:relative;display:flex!important;flex-direction:row;align-items:center;justify-content:center;gap:.5rem;min-height:46px;border:1px solid #0f766e;border-radius:14px;color:#0f766e;background:#f0fdfa;cursor:pointer}.file-upload-control input{position:absolute;inset:0;opacity:0;cursor:pointer}@media(max-width:980px){.tenant-onboarding-flow{grid-template-columns:1fr 1fr}}@media(max-width:720px){.tenant-onboarding-flow{grid-template-columns:1fr}}.citizen-journey{margin-top:0}.citizen-summary-grid .metric-card strong{font-size:clamp(1.45rem,2vw,2.1rem)}.citizen-portal-layout{align-items:flex-start}.citizen-access-card .form-grid{gap:.9rem}.citizen-side-panel .card{margin-bottom:1rem}.citizen-main-grid{align-items:stretch;margin-top:1rem}.citizen-service-point small{display:block;margin-top:.35rem;color:#475569}.citizen-consumption-chart{min-height:220px;display:flex;align-items:flex-end;gap:.75rem;padding:1rem;border:1px solid #e2e8f0;border-radius:18px;background:linear-gradient(180deg,#ffffff,#f8fafc);overflow-x:auto}.citizen-consumption-bar{min-width:68px;height:170px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:.45rem;color:#475569;font-size:.8rem}.citizen-consumption-bar span{display:block;width:100%;border-radius:999px 999px 8px 8px;background:#2563eb;box-shadow:inset 0 -10px 18px rgba(15,23,42,.16)}.compact-list{margin-top:1rem}.form-grid input[readonly]{background:#f8fafc;color:#475569;cursor:not-allowed}@media (max-width:900px){.citizen-main-grid,.citizen-portal-layout{grid-template-columns:1fr}.citizen-consumption-chart{min-height:180px}.citizen-consumption-bar{height:135px;min-width:58px}}@media (max-width:640px){.citizen-summary-grid{grid-template-columns:1fr}.citizen-main-grid .actions{display:grid;grid-template-columns:1fr}.citizen-main-grid .button{width:100%}}.self-reading-decision-board{align-items:stretch;margin:1rem 0}.self-reading-decision-board .record-row.compact{background:#f8fafc;border-style:dashed}.self-reading-decision-board .checklist{margin-top:.25rem}.self-reading-decision-board .card-content{display:grid;grid-gap:.85rem;gap:.85rem}@media (max-width:760px){.action-row,.self-reading-decision-board{grid-template-columns:1fr}.action-row{display:grid}.action-row .button{width:100%}}.water-lifecycle-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem;margin:1rem 0;align-items:stretch}.water-lifecycle-board .card-content{display:grid;grid-gap:.75rem;gap:.75rem}.water-lifecycle-board .checklist{margin:0}.water-lifecycle-board .card-description{line-height:1.45}@media (max-width:820px){.water-lifecycle-board{grid-template-columns:1fr}.water-lifecycle-board .button{width:100%}}.billing-cashflow-board,.pagopa-cashflow-board{margin-top:1rem}.billing-control-panel,.pagopa-closing-panel{align-items:stretch;margin:1rem 0}.billing-control-panel .card-content,.pagopa-closing-panel .card-content{display:grid;grid-gap:.85rem;gap:.85rem}.billing-control-panel .activity-log strong,.pagopa-closing-panel .activity-log strong{color:#0f172a}@media (max-width:820px){.billing-cashflow-board,.billing-control-panel,.pagopa-cashflow-board,.pagopa-closing-panel{grid-template-columns:1fr}}.communication-approval-flow{grid-template-columns:repeat(4,minmax(0,1fr))}.communication-center-layout{align-items:flex-start}.communication-center-layout textarea{min-height:98px}.communication-center-layout .side-panel{display:grid;grid-gap:1rem;gap:1rem}.communication-center-layout .activity-log{margin:0}.communication-center-layout .button-row{align-items:center}@media (max-width:900px){.communication-approval-flow{grid-template-columns:1fr 1fr}.communication-center-layout{grid-template-columns:1fr}}@media (max-width:640px){.communication-approval-flow{grid-template-columns:1fr}.communication-center-layout .button-row{display:grid;grid-template-columns:1fr}.communication-center-layout .button-row .button{width:100%}}.field-service-summary .metric-card strong{font-size:clamp(1.8rem,3vw,2.6rem)}.field-service-board .data-table small{display:block;margin-top:.25rem;color:var(--muted-foreground,#64748b);line-height:1.35}.field-action-panel textarea{min-height:92px;resize:vertical}.field-action-panel .button-ghost{margin-top:.75rem}.field-service-board .side-panel{gap:1rem}@media (max-width:820px){.field-service-summary.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.field-service-board.workspace-grid{grid-template-columns:1fr}}@media (max-width:560px){.field-service-summary.grid-4{grid-template-columns:1fr}.field-service-board .button-row{flex-direction:column;align-items:stretch}.field-action-panel button,.field-service-board .button-row button{width:100%}}.official-register-flow,.official-register-kpis,.official-register-layout{margin-top:1.25rem}.official-register-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.official-register-flow span{border:1px solid var(--border,#d7dee8);border-radius:1rem;padding:.85rem 1rem;background:var(--surface,#fff);font-weight:700;color:var(--foreground,#172033)}.official-register-list .record-card.selectable{width:100%;text-align:left;border:1px solid var(--border,#d7dee8);background:var(--surface,#fff);cursor:pointer}.official-register-list .record-card.selectable.selected{border-color:var(--primary,#2563eb);box-shadow:0 0 0 3px rgba(37,99,235,.12)}.official-register-form{display:grid;grid-gap:.9rem;gap:.9rem}.official-register-form label{display:grid;grid-gap:.45rem;gap:.45rem;font-weight:700}.official-register-form select,.official-register-form textarea{border:1px solid var(--border,#d7dee8);border-radius:.85rem;padding:.75rem .85rem;background:var(--surface,#fff);font:inherit;min-height:44px}.official-register-preview{margin-top:1rem;border-radius:1rem;background:var(--muted,#f6f8fb);padding:1rem}.official-department-card svg,.official-register-kpis svg{color:var(--primary,#2563eb)}.success-message{border-radius:.85rem;background:rgba(34,197,94,.1);color:#166534;padding:.8rem .95rem;font-weight:700}@media (max-width:860px){.official-register-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.official-register-flow{grid-template-columns:1fr}.official-register-form button,.official-register-list .record-card.selectable{width:100%}}.security-governance-panel .record-card{border-left:4px solid color-mix(in srgb,var(--primary) 38%,transparent)}.security-governance-panel .record-card strong{display:block;margin-top:.35rem}@media (max-width:640px){.security-governance-panel .record-card{padding:.95rem}}:root{--surface:#ffffff;--surface-soft:#f8fafc;--surface-strong:#eef6f5;--text-strong:#0f172a;--text-muted:#64748b;--ring:#0f766e;--shadow-soft:0 12px 32px rgba(15,23,42,.07)}html{text-rendering:optimizeLegibility}body{-webkit-font-smoothing:antialiased}.page-stack{align-content:start}.content-shell,.page-stack{display:grid;grid-gap:1.25rem;gap:1.25rem}.topbar-actions{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.polished-section-heading,.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin:1.25rem 0 .85rem}.polished-section-heading h2,.section-heading h2{margin:.15rem 0 0;font-size:clamp(1.35rem,2vw,1.85rem);letter-spacing:-.02em}.section-heading-actions{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.card,.client-ready-status-strip article,.guide-panel,.module-toolbar,.operator-help-guide,.topbar{box-shadow:var(--shadow-soft)}.card{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.card:hover{transform:translateY(-1px);box-shadow:0 16px 40px rgba(15,23,42,.09)}.confirm-action-notice{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.9fr);grid-gap:1rem;gap:1rem;align-items:flex-start;border:1px solid #b7e4dc;border-radius:22px;background:linear-gradient(135deg,#ecfdf5,#f8fafc);padding:1rem 1.1rem}.confirm-action-notice strong{display:block;color:#115e59;margin-bottom:.25rem}.confirm-action-notice p{margin:0;color:#334155;line-height:1.55}.confirm-action-notice ul{margin:0;padding-left:1.1rem;color:#334155;display:grid;grid-gap:.35rem;gap:.35rem}.button,.link-button,.nav-link,.record-card.selectable,input,select,textarea{min-height:44px}.button{gap:.45rem;line-height:1.15}.button:disabled{opacity:.55;cursor:not-allowed}.link-button.touch-target,.touch-target{min-height:44px;min-width:44px;border-radius:12px}.compact-form input,.compact-form select,.form-grid input,.form-grid select,.form-grid textarea,.search-input{border-color:#cbd5e1}.compact-form input:focus,.compact-form select:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.search-input:focus{border-color:var(--ring);box-shadow:0 0 0 4px rgba(15,118,110,.14);outline:none}.data-table th{white-space:nowrap}.data-table td{line-height:1.45}.data-table tr{transition:transform .12s ease,box-shadow .12s ease}.data-table tbody tr:hover td{background:#f0fdfa}.empty-state,.error-state,.success-state{border-radius:20px;padding:1rem}.empty-state{border:1px dashed #cbd5e1;background:#f8fafc}.error-state{border:1px solid #fecaca;background:#fef2f2;color:#7f1d1d}.success-state{border:1px solid #bbf7d0;background:#f0fdf4;color:#166534}.client-ready-status-strip article{min-height:112px;display:grid;align-content:center}.metric-card strong,.role-kpi strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.operator-workspace-card,.record-card,.role-dashboard-card{overflow-wrap:anywhere}.quick-action-list,.tag-row,.workspace-actions{gap:.55rem}.access-denied,.role-guide{border:1px solid var(--border);border-radius:22px;background:var(--surface);padding:1.1rem;box-shadow:var(--shadow-soft)}.role-guide{display:grid;grid-gap:.35rem;gap:.35rem;color:#334155}@media (max-width:900px){.layout{min-height:auto}.sidebar{border-radius:0 0 24px 24px}.sidebar-nav{max-height:none}.topbar-actions{width:100%;justify-content:stretch}.topbar-actions .button{flex:1 1 180px}.confirm-action-notice,.polished-section-heading,.section-heading{grid-template-columns:1fr;display:grid;align-items:flex-start}.section-heading-actions{justify-content:stretch}.section-heading-actions .button{width:100%}}@media (max-width:720px){.main{padding:16px}.hero{margin-bottom:1rem}.button-row .button,.hero-actions .button,.quick-action-list .button,.toolbar-actions .button{width:100%}.module-toolbar{padding:1rem}.data-table td:last-child{text-align:left}}@media (max-width:480px){.brand strong{font-size:20px}.hero h1{font-size:26px}.topbar-actions{display:grid;grid-template-columns:1fr}.confirm-action-notice{border-radius:18px;padding:.95rem}}@media (prefers-reduced-motion:reduce){.card,.data-table tr,.nav a,.nav-link{transform:none!important;transition:none!important}}@media print{.button-row,.hero-actions,.logout-form,.sidebar,.toolbar-actions,.topbar-actions{display:none!important}.layout{display:block}.main{padding:0}.card,.hero,.topbar{box-shadow:none;border:1px solid #d1d5db}}.e2e-role-qa{display:grid;grid-gap:1.25rem;gap:1.25rem;margin-top:1.25rem}.role-qa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem}.role-qa-card{border:1px solid var(--border);border-radius:1rem;padding:1rem;background:var(--card);box-shadow:var(--shadow-soft);display:grid;grid-gap:.75rem;gap:.75rem}.role-qa-card strong{font-size:1.05rem;color:var(--foreground)}.role-qa-flow{display:grid;grid-gap:.65rem;gap:.65rem;margin:0;padding-left:1.1rem}.role-qa-flow li{padding-left:.25rem}.role-qa-flow a{font-weight:700;color:var(--primary);text-decoration:none}.role-qa-flow a:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 35%,transparent);outline-offset:3px;border-radius:.35rem}.role-qa-flow span{display:block;color:var(--muted-foreground);font-size:.9rem;margin-top:.15rem}.quality-gate-panel{border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border))}@media (max-width:1100px){.role-qa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.role-qa-grid{grid-template-columns:1fr}.role-qa-card{padding:.9rem}}.commercial-demo-flow-panel,.commercial-demo-kit-panel{margin-top:1.25rem}.demo-kit-grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.demo-kit-card{border:1px solid var(--border-subtle,#d7dee8);border-radius:1rem;padding:1rem;background:var(--surface,#ffffff);min-height:100%}.commercial-demo-flow a,.demo-kit-card strong{display:inline-block;margin:.35rem 0}.demo-kit-card .button{margin-top:.75rem;min-height:44px}.commercial-demo-flow{display:grid;grid-gap:.85rem;gap:.85rem;margin:0 0 1rem;padding-left:1.35rem}.commercial-demo-flow li{padding:.75rem .85rem;border:1px solid var(--border-subtle,#d7dee8);border-radius:.85rem;background:var(--surface-muted,#f8fafc)}.commercial-demo-flow em,.commercial-demo-flow span{display:block}.commercial-demo-flow em{margin-top:.35rem;color:var(--muted-foreground,#526070)}@media (max-width:720px){.demo-kit-card .button{width:100%}}.readiness-status-banner{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:1.25rem;border:1px solid var(--border-subtle,#d7dee8);border-radius:1.25rem;background:#ffffff;box-shadow:0 10px 28px rgba(15,23,42,.06)}.readiness-status-banner h2{margin:.25rem 0;font-size:1.6rem;letter-spacing:-.02em}.readiness-overview,.status-metrics{margin-bottom:1rem}.readiness-endpoints,.readiness-integrations{display:grid;grid-gap:.75rem;gap:.75rem}.readiness-endpoints p,.readiness-integrations p{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin:0;padding:.8rem 1rem;border:1px solid var(--border-subtle,#d7dee8);border-radius:.9rem;background:var(--surface-muted,#f8fafc)}.readiness-endpoints span{color:var(--muted-foreground,#526070);font-weight:700}.readiness-sections{display:grid;grid-gap:1rem;gap:1rem}.readiness-section-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:flex-start;grid-gap:.85rem;gap:.85rem}.readiness-section-title>span:first-child{color:#0f766e;margin-top:.2rem}.readiness-item-grid{display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.readiness-item{display:grid;grid-gap:.65rem;gap:.65rem;padding:1rem;border:1px solid var(--border-subtle,#d7dee8);border-radius:1rem;background:var(--surface-muted,#f8fafc)}.readiness-item-heading{display:flex;justify-content:space-between;gap:.75rem;align-items:center}.readiness-actions-card{margin-top:1rem}@media (max-width:720px){.readiness-endpoints p,.readiness-integrations p,.readiness-item-heading,.readiness-status-banner{align-items:flex-start;flex-direction:column}.readiness-section-title{grid-template-columns:1fr}}.demo-certification-banner{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem;padding:1.25rem;border:1px solid var(--border-subtle,#d7dee8);border-radius:1.25rem;background:#ffffff;box-shadow:0 10px 28px rgba(15,23,42,.06)}.demo-certification-banner h2{margin:.25rem 0;font-size:1.6rem;letter-spacing:-.02em}.demo-certification-score{display:grid;grid-gap:.25rem;gap:.25rem;min-width:180px;text-align:right}.demo-certification-score strong{font-size:2rem;line-height:1}.demo-certification-score span{color:var(--muted-foreground,#526070);font-weight:700}.demo-final-certification{margin-bottom:1rem}.demo-certification-checks{display:grid;grid-gap:.85rem;gap:.85rem}.demo-certification-checks article{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.65rem .85rem;gap:.65rem .85rem;align-items:flex-start;padding:.9rem 1rem;border:1px solid var(--border-subtle,#d7dee8);border-radius:.95rem;background:var(--surface-muted,#f8fafc)}.demo-certification-checks article span,.demo-storyline-list span{display:block;color:var(--muted-foreground,#526070);font-size:.9rem}.demo-certification-checks article p{grid-column:1/-1;margin:0}.demo-storyline-list{display:grid;grid-gap:.75rem;gap:.75rem;margin:0;padding-left:1.25rem}.demo-storyline-list li{padding:.85rem 1rem;border:1px solid var(--border-subtle,#d7dee8);border-radius:.95rem;background:var(--surface-muted,#f8fafc)}.demo-storyline-list a{display:inline-block;font-weight:800;margin-bottom:.2rem}.demo-storyline-list p{margin:.35rem 0 0}@media (max-width:720px){.demo-certification-banner,.demo-certification-checks article{grid-template-columns:1fr;flex-direction:column;align-items:flex-start}.demo-certification-score{text-align:left}}.client-ready-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem;border:1px solid hsl(var(--border));border-radius:1.25rem;background:linear-gradient(135deg,hsl(var(--card)),hsl(var(--muted)/.42));box-shadow:var(--shadow-sm)}.client-ready-banner h2{margin:.1rem 0 .35rem;font-size:clamp(1.2rem,2vw,1.65rem)}.client-ready-score{min-width:112px;min-height:92px;border-radius:1rem;display:grid;place-items:center;background:hsl(var(--background));border:1px solid hsl(var(--border))}.client-ready-score strong{font-size:2rem;line-height:1}.client-ready-score span{color:hsl(var(--muted-foreground));margin-top:-1.4rem}@media (max-width:720px){.client-ready-banner{align-items:stretch;flex-direction:column}.client-ready-score{width:100%;min-height:76px}}.contract-service-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin:-.25rem 0 1rem}.contract-service-flow div{display:grid;grid-gap:.25rem;gap:.25rem;padding:.9rem 1rem;border:1px solid #bfdbfe;border-radius:18px;background:#eff6ff;color:#1e3a8a}.contract-service-flow strong{color:#0f172a}.contract-service-flow span{color:#1d4ed8;font-size:.9rem;line-height:1.35}.contract-search{min-width:250px}.contract-filter{width:190px}.compact-form textarea{min-height:96px;resize:vertical}.compact-form input,.compact-form select,.compact-form textarea{width:100%;border:1px solid var(--border);border-radius:14px;padding:12px 14px;font:inherit;background:white}.contract-guardrail-panel{margin-top:16px}@media(max-width:1100px){.contract-service-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-filter,.contract-search{width:100%;min-width:0}}@media(max-width:640px){.contract-service-flow{grid-template-columns:1fr}}.role-task-center{display:grid;grid-gap:1rem;gap:1rem;padding:1rem;border:1px solid hsl(var(--border));border-radius:1.25rem;background:linear-gradient(135deg,hsl(var(--card)),hsl(var(--muted)/.38));box-shadow:var(--shadow-sm)}.task-center-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:1rem;gap:1rem;align-items:center}.task-center-header h2{margin:.15rem 0 .35rem;font-size:clamp(1.25rem,2vw,1.75rem)}.task-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(88px,1fr));grid-gap:.55rem;gap:.55rem}.task-summary-grid span{display:grid;grid-gap:.15rem;gap:.15rem;min-width:86px;padding:.75rem .8rem;border:1px solid hsl(var(--border));border-radius:.95rem;background:hsl(var(--background));color:hsl(var(--muted-foreground));font-size:.86rem}.task-summary-grid strong{color:hsl(var(--foreground));font-size:1.1rem}.role-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.role-tabs button{min-height:42px;border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;font-weight:800;padding:.55rem .9rem}.role-tabs button.active,.role-tabs button:focus-visible{outline:3px solid hsl(var(--ring)/.22);border-color:hsl(var(--primary));background:hsl(var(--primary)/.1)}.task-center-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(260px,.8fr);grid-gap:1rem;gap:1rem;align-items:flex-start}.task-focus-card{min-height:100%}.next-action-box{display:grid;grid-template-columns:auto 1fr;grid-gap:.7rem;gap:.7rem;align-items:flex-start;padding:.9rem 1rem;margin-bottom:.9rem;border:1px solid hsl(var(--border));border-radius:1rem;background:hsl(var(--background))}.next-action-box p{margin:.25rem 0 0;color:hsl(var(--muted-foreground))}.role-kpi-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.role-kpi.linked{text-decoration:none;color:inherit}.role-kpi.linked:hover{border-color:hsl(var(--primary))}.task-row .link-button{width:-moz-fit-content;width:fit-content}.checklist li.warning:before{content:"\2022";color:#d97706;font-weight:900}@media (max-width:1180px){.task-center-header,.task-center-layout{grid-template-columns:1fr}.task-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.role-kpi-grid.compact,.task-summary-grid{grid-template-columns:1fr}.role-tabs button{width:100%;justify-content:center}}.nav-group-title{display:grid;grid-gap:.16rem;gap:.16rem;text-align:left;min-width:0}.nav-group-title small{display:block;max-width:205px;color:#94a3b8;font-size:.66rem;font-weight:650;letter-spacing:0;line-height:1.25;text-transform:none}.nav-group-active .nav-group-title small{color:#ccfbf1}.page-guidance-panel{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);grid-gap:1rem;gap:1rem;align-items:flex-start;margin:0 0 1rem;padding:1rem 1.1rem;border:1px solid #bfdbfe;border-radius:22px;background:linear-gradient(135deg,#eff6ff,#f8fafc);box-shadow:0 12px 30px rgba(15,23,42,.06)}.page-guidance-panel h2{margin:.15rem 0 .3rem;font-size:clamp(1.15rem,2vw,1.55rem);letter-spacing:-.02em;color:#0f172a}.page-guidance-panel p{margin:0;color:#334155;line-height:1.55}.page-guidance-next{display:grid;grid-template-columns:1fr;grid-gap:.35rem;gap:.35rem;min-width:0;margin-top:.75rem;padding:.85rem .95rem;border:1px solid #ccfbf1;border-radius:16px;background:#f0fdfa;color:#134e4a;overflow-wrap:anywhere;word-break:normal}.page-guidance-next strong{display:block;color:#115e59;line-height:1.25}.page-guidance-next span{display:block;min-width:0;color:#0f766e;line-height:1.55}.page-guidance-main{min-width:0}.page-guidance-main>p{overflow-wrap:anywhere}.page-guidance-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.page-guidance-details>div{display:grid;grid-gap:.4rem;gap:.4rem;padding:.75rem;border:1px solid #e2e8f0;border-radius:16px;background:#fff}.page-guidance-details strong{color:#0f172a}.page-guidance-details ul{margin:0;padding-left:1.05rem;color:#475569;line-height:1.45;display:grid;grid-gap:.18rem;gap:.18rem}.page-guidance-links div{display:flex;flex-wrap:wrap;gap:.45rem}.page-guidance-links .button{min-height:36px;padding:.5rem .65rem;font-size:.84rem}.page-guidance-panel-compact{grid-template-columns:minmax(0,.9fr) minmax(340px,1.1fr)}.help-process-card{display:grid;align-content:start;grid-gap:.85rem;gap:.85rem}.help-process-card ol{margin:0;padding-left:1.25rem;display:grid;grid-gap:.32rem;gap:.32rem;color:#334155;line-height:1.45}.help-process-grid .button{width:-moz-fit-content;width:fit-content}.help-faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:1100px){.page-guidance-details,.page-guidance-panel,.page-guidance-panel-compact{grid-template-columns:1fr}}@media(max-width:720px){.nav-group-title small{max-width:none}.page-guidance-panel{padding:.95rem;border-radius:18px}.help-faq-grid{grid-template-columns:1fr}.help-process-grid .button{width:100%}}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:900px){.grid-2{grid-template-columns:1fr}}.global-search{position:relative;width:100%}.global-search-compact{max-width:min(560px,42vw);z-index:40}.global-search-page{display:grid;grid-gap:1rem;gap:1rem}.global-search-form{display:grid;grid-template-columns:minmax(240px,1fr) minmax(190px,auto) auto;grid-gap:.55rem;gap:.55rem;align-items:center}.global-search-input-wrap{display:flex;align-items:center;gap:.55rem;min-height:44px;padding:0 .75rem;border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--background));box-shadow:var(--shadow-sm)}.global-search-input-wrap:focus-within{border-color:hsl(var(--primary));box-shadow:0 0 0 4px hsl(var(--primary)/.12)}.global-search-input-wrap input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:hsl(var(--foreground));font:inherit}.global-search-clear{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;border-radius:999px;background:hsl(var(--muted));color:hsl(var(--foreground));cursor:pointer}.global-search-shortcut{display:inline-flex;gap:.2rem;padding:.18rem .45rem;border:1px solid hsl(var(--border));border-radius:.55rem;font-size:.78rem;font-weight:800}.global-search-filter,.global-search-shortcut{align-items:center;color:hsl(var(--muted-foreground))}.global-search-filter{display:flex;gap:.4rem;min-height:44px;padding:0 .7rem;border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--background))}.global-search-filter select{border:0;outline:0;background:transparent;color:hsl(var(--foreground));font:inherit;font-weight:750}.global-search-panel{display:grid;grid-gap:.9rem;gap:.9rem;padding:1rem;border:1px solid hsl(var(--border));border-radius:1.25rem;background:hsl(var(--background));box-shadow:0 18px 50px rgba(15,23,42,.14)}.global-search-compact .global-search-panel{position:absolute;left:0;right:0;top:calc(100% + .55rem);max-height:min(72vh,680px);overflow:auto}.global-search-panel-header{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.global-search-panel-header>div:first-child{min-width:0}.global-search-panel-actions{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}.global-search-panel-actions .button{min-height:36px;padding:.5rem .7rem}.global-search-panel-header>div:first-child{display:grid;grid-gap:.15rem;gap:.15rem}.global-search-panel-header small{color:hsl(var(--muted-foreground))}.global-search-suggestions{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem}.global-search-suggestions>div{display:grid;grid-gap:.5rem;gap:.5rem;padding:.8rem;border:1px solid hsl(var(--border));border-radius:1rem;background:hsl(var(--muted)/.32)}.global-search-suggestions strong{display:flex;align-items:center;gap:.4rem}.global-search-suggestions div div{display:flex;flex-wrap:wrap;gap:.45rem}.global-search-empty button,.global-search-suggestions a,.global-search-suggestions button{display:inline-flex;align-items:center;min-height:34px;padding:.45rem .65rem;border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--background));color:hsl(var(--foreground));text-decoration:none;font-weight:750;cursor:pointer}.global-search-groups{display:grid;grid-gap:.95rem;gap:.95rem}.global-search-group{display:grid;grid-gap:.55rem;gap:.55rem}.global-search-group h3{margin:0;font-size:1rem;color:hsl(var(--foreground))}.global-search-results{display:grid;grid-gap:.55rem;gap:.55rem}.global-search-result{display:grid;grid-gap:.65rem;gap:.65rem;padding:.85rem;border:1px solid hsl(var(--border));border-radius:1rem;background:hsl(var(--card))}.global-search-result-main{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.65rem;gap:.65rem;align-items:flex-start}.global-search-title{color:hsl(var(--foreground));font-weight:900;text-decoration:none}.global-search-title:hover{color:hsl(var(--primary));text-decoration:underline}.global-search-result p{margin:.15rem 0;color:hsl(var(--muted-foreground));font-size:.92rem}.global-search-result small{color:hsl(var(--muted-foreground));line-height:1.45}.global-search-actions{display:flex;flex-wrap:wrap;gap:.45rem}.global-search-actions a{display:inline-flex;align-items:center;gap:.25rem;min-height:34px;padding:.42rem .62rem;border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--muted)/.34);color:hsl(var(--foreground));text-decoration:none;font-size:.86rem;font-weight:800}.global-search-actions a:hover{border-color:hsl(var(--primary));color:hsl(var(--primary))}.global-search-empty{display:grid;grid-gap:.55rem;gap:.55rem;padding:1rem;border:1px dashed hsl(var(--border));border-radius:1rem;background:hsl(var(--muted)/.28)}.global-search-empty p{margin:0;color:hsl(var(--muted-foreground))}.global-search-empty div{display:flex;flex-wrap:wrap;gap:.45rem}.global-search-guardrails{display:grid;grid-gap:.45rem;gap:.45rem;padding:.85rem;border:1px solid #bfdbfe;border-radius:1rem;background:#eff6ff;color:#1e3a8a}.global-search-guardrails ul{margin:0;padding-left:1.1rem;display:grid;grid-gap:.25rem;gap:.25rem}.topbar .global-search{flex:1 1 440px}@media(max-width:1200px){.global-search-compact{max-width:100%;order:3;grid-column:1/-1}.topbar{flex-wrap:wrap}}@media(max-width:760px){.global-search-form{grid-template-columns:1fr}.global-search-compact .global-search-panel{position:static;max-height:none;margin-top:.55rem}.global-search-panel-header{display:grid;grid-template-columns:1fr}.global-search-panel-actions{justify-content:stretch}.global-search-panel-actions .button{flex:1 1 100%}.global-search-result-main,.global-search-suggestions{grid-template-columns:1fr}}.municipality-wizard-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:1rem;gap:1rem;align-items:center;padding:1rem 1.15rem;margin-bottom:1rem;border:1px solid #bfdbfe;border-radius:24px;background:linear-gradient(135deg,#eff6ff,#f8fafc);box-shadow:0 14px 34px rgba(15,23,42,.07)}.municipality-wizard-hero h2{margin:.1rem 0 .3rem;font-size:clamp(1.25rem,2vw,1.75rem);color:#0f172a}.municipality-wizard-hero p{margin:0;color:#334155;line-height:1.55}.municipality-wizard-score{min-width:132px;min-height:96px;display:grid;place-items:center;text-align:center;padding:.8rem;border:1px solid #dbeafe;border-radius:20px;background:white}.municipality-wizard-score strong{font-size:2rem;line-height:1;color:#0f172a}.municipality-wizard-score span{color:#475569;font-size:.9rem}.municipality-wizard-shell{display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1.55fr) minmax(280px,.78fr);grid-gap:1rem;gap:1rem;align-items:flex-start}.municipality-wizard-steps{display:grid;grid-gap:.55rem;gap:.55rem;position:-webkit-sticky;position:sticky;top:1rem}.municipality-wizard-steps button{display:grid;grid-template-columns:34px 1fr;grid-gap:.3rem .7rem;gap:.3rem .7rem;align-items:center;min-height:66px;padding:.72rem .8rem;border:1px solid hsl(var(--border));border-radius:16px;background:hsl(var(--card));color:hsl(var(--foreground));cursor:pointer;text-align:left}.municipality-wizard-steps button.active,.municipality-wizard-steps button:hover{border-color:hsl(var(--primary));box-shadow:0 0 0 4px hsl(var(--primary)/.1)}.municipality-wizard-steps button span{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:hsl(var(--muted));color:hsl(var(--foreground));font-weight:900;grid-row:1/span 2}.municipality-wizard-steps button.active span{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.municipality-wizard-steps button strong{font-size:.94rem;line-height:1.25}.municipality-wizard-steps button small{color:hsl(var(--muted-foreground));line-height:1.3}.wizard-step-heading{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.wizard-step-heading>div{display:grid;grid-gap:.4rem;gap:.4rem}.municipality-wizard-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.82fr);grid-gap:1rem;gap:1rem;align-items:flex-start}.municipality-wizard-grid h3{margin:0 0 .65rem;font-size:1rem;color:hsl(var(--foreground))}.wizard-field-list{display:grid;grid-gap:.7rem;gap:.7rem}.wizard-field-list label{display:grid;grid-gap:.35rem;gap:.35rem;color:hsl(var(--foreground));font-weight:800}.wizard-check-list{display:grid;grid-gap:.45rem;gap:.45rem;padding:0;margin:0;list-style:none;color:hsl(var(--muted-foreground))}.wizard-check-list li{display:flex;align-items:flex-start;gap:.45rem;line-height:1.45}.wizard-check-list svg{flex:0 0 auto;color:hsl(var(--primary));margin-top:.1rem}.wizard-check-list.compact{margin-top:.75rem}.wizard-help-box{display:grid;grid-template-columns:auto 1fr;grid-gap:.55rem;gap:.55rem;margin-top:.85rem;padding:.8rem;border:1px solid #ccfbf1;border-radius:16px;background:#f0fdfa;color:#115e59}.wizard-help-box p{margin:0;line-height:1.5}.wizard-advanced-fields{margin:1rem 0;padding:.85rem;border:1px dashed hsl(var(--border));border-radius:16px;background:hsl(var(--muted)/.25)}.wizard-advanced-fields summary{cursor:pointer;font-weight:900}.wizard-advanced-fields ul{margin:.65rem 0 0;padding-left:1.2rem;color:hsl(var(--muted-foreground))}.wizard-action-bar{display:flex;flex-wrap:wrap;gap:.55rem}.municipality-wizard-summary{display:grid;grid-gap:1rem;gap:1rem;position:-webkit-sticky;position:sticky;top:1rem}.wizard-summary-metrics{display:grid;grid-gap:.55rem;gap:.55rem}.wizard-summary-metrics span{display:grid;grid-gap:.12rem;gap:.12rem;padding:.7rem .75rem;border:1px solid hsl(var(--border));border-radius:14px;background:hsl(var(--muted)/.28);color:hsl(var(--muted-foreground))}.wizard-summary-metrics strong{color:hsl(var(--foreground));font-size:1.05rem}.full-width{width:100%;justify-content:center;margin-top:.85rem}@media(max-width:1180px){.municipality-wizard-shell{grid-template-columns:1fr}.municipality-wizard-steps,.municipality-wizard-summary{position:static}.municipality-wizard-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.municipality-wizard-grid,.municipality-wizard-hero,.wizard-step-heading{grid-template-columns:1fr;flex-direction:column}.municipality-wizard-score{width:100%}.municipality-wizard-steps{grid-template-columns:1fr}.wizard-action-bar .button{width:100%;justify-content:center}}.new-service-hero{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem;margin-bottom:1rem}.new-service-hero>div{border:1px solid hsl(var(--border));border-radius:18px;background:hsl(var(--card));padding:1rem;display:grid;grid-gap:.25rem;gap:.25rem}.new-service-hero strong{font-size:1.55rem;color:hsl(var(--foreground))}.new-service-hero span{color:hsl(var(--muted-foreground));line-height:1.45}.new-service-shell textarea{min-height:92px;resize:vertical}.wizard-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.new-service-shell label,.wizard-field-grid label{display:grid;grid-gap:.35rem;gap:.35rem;font-weight:800;color:hsl(var(--foreground))}.new-service-review dl,.new-service-summary{display:grid;grid-template-columns:minmax(115px,.45fr) minmax(0,1fr);grid-gap:.45rem .75rem;gap:.45rem .75rem;margin:0}.new-service-review dt,.new-service-summary dt{color:hsl(var(--muted-foreground));font-weight:800}.new-service-review dd,.new-service-summary dd{margin:0;color:hsl(var(--foreground))}.new-service-review{border:1px solid hsl(var(--border));border-radius:18px;padding:1rem;background:hsl(var(--muted)/.24)}.new-service-review h3{margin:0 0 .85rem;font-size:1rem}@media(max-width:980px){.new-service-hero,.wizard-field-grid{grid-template-columns:1fr}}.guided-billing-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.85rem;gap:.85rem;margin:1rem 0}.guided-billing-progress article{border:1px solid hsl(var(--border));border-radius:18px;background:hsl(var(--card));padding:.9rem;display:grid;grid-gap:.35rem;gap:.35rem}.guided-billing-progress article.active{border-color:hsl(var(--primary)/.45);background:hsl(var(--primary)/.06)}.guided-billing-progress span{width:1.7rem;height:1.7rem;border-radius:999px;display:inline-grid;place-items:center;background:hsl(var(--muted));font-weight:900}.guided-billing-progress strong{color:hsl(var(--foreground))}.guided-billing-progress p{margin:0;color:hsl(var(--muted-foreground));line-height:1.45}.guided-billing-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);grid-gap:1rem;gap:1rem;align-items:flex-start;margin:1rem 0}.guided-billing-side{display:grid;grid-gap:1rem;gap:1rem;position:-webkit-sticky;position:sticky;top:1rem}.guided-billing-form textarea{min-height:96px;resize:vertical}.checkbox-line{display:flex!important;grid-column:span 1;flex-direction:row;align-items:center;gap:.55rem}.checkbox-line input{width:auto}.guided-billing-result{margin-top:1rem}.form-status-message{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;padding:.85rem 1rem;border-radius:16px}@media(max-width:1100px){.guided-billing-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.guided-billing-layout{grid-template-columns:1fr}.guided-billing-side{position:static}}@media(max-width:720px){.guided-billing-progress{grid-template-columns:1fr}}.guided-maintenance-layout{display:grid;grid-template-columns:minmax(210px,.9fr) minmax(0,2fr) minmax(260px,1fr);grid-gap:1rem;gap:1rem;align-items:flex-start}.guided-maintenance-steps,.guided-maintenance-summary{display:grid;grid-gap:.75rem;gap:.75rem}.guided-maintenance-form{display:grid;grid-gap:1rem;gap:1rem}.wizard-step{border:1px solid var(--border,#d9e2ec);border-radius:1rem;background:var(--card,#fff);color:inherit;text-align:left;padding:.9rem;display:grid;grid-gap:.35rem;gap:.35rem;cursor:pointer}.wizard-step span{width:1.8rem;height:1.8rem;border-radius:999px;display:inline-grid;place-items:center;background:#eef6ff;font-weight:700}.wizard-step small{color:var(--muted-foreground,#667085);line-height:1.4}.wizard-step.active{border-color:#0f5ea8;box-shadow:0 12px 30px rgba(15,94,168,.12)}.guided-maintenance-form .span-2{grid-column:1/-1}.detail-list{display:grid;grid-template-columns:auto 1fr;grid-gap:.55rem 1rem;gap:.55rem 1rem;align-items:flex-start}.detail-list dt{color:var(--muted-foreground,#667085);font-weight:600}.detail-list dd{margin:0}@media (max-width:1180px){.guided-maintenance-layout{grid-template-columns:1fr}.guided-maintenance-steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}.integrated-help-block{grid-column:1/-1;display:grid;grid-template-columns:minmax(220px,.75fr) minmax(260px,1fr) minmax(240px,1fr) auto;grid-gap:.9rem;gap:.9rem;align-items:flex-start;border-top:1px solid hsl(var(--border));padding-top:1rem;margin-top:.5rem}.integrated-help-block h3{margin:0 0 .3rem;font-size:1rem}.integrated-help-block p{margin:0;color:hsl(var(--muted-foreground));line-height:1.45}.integrated-help-block details{border:1px solid hsl(var(--border));border-radius:16px;background:hsl(var(--card));padding:.8rem}.help-faq-details summary,.integrated-help-block summary{cursor:pointer;font-weight:900;color:hsl(var(--foreground))}.integrated-help-checklist,.integrated-help-steps{display:grid;grid-gap:.65rem;gap:.65rem;list-style:none;padding:0;margin:.75rem 0 0}.integrated-help-steps li{display:grid;grid-template-columns:30px 1fr;grid-gap:.65rem;gap:.65rem;align-items:flex-start}.integrated-help-steps li>span{width:30px;height:30px;border-radius:999px;display:inline-grid;place-items:center;background:hsl(var(--primary)/.1);color:hsl(var(--primary));font-weight:900}.integrated-help-checklist strong,.integrated-help-steps strong{color:hsl(var(--foreground))}.integrated-help-steps p{margin:.18rem 0 0;color:hsl(var(--muted-foreground));line-height:1.45}.integrated-help-checklist li{display:grid;grid-gap:.18rem;gap:.18rem;border:1px solid hsl(var(--border));border-radius:14px;padding:.65rem .75rem;background:hsl(var(--muted)/.2)}.integrated-help-checklist span{color:hsl(var(--foreground))}.integrated-help-checklist small{color:hsl(var(--muted-foreground))}.integrated-help-center{align-items:flex-start}.integrated-help-card{display:grid;grid-gap:1rem;gap:1rem;scroll-margin-top:1rem}.help-checklist-block,.help-faq-details,.help-tour-block{border:1px solid hsl(var(--border));border-radius:18px;padding:.9rem;background:hsl(var(--muted)/.18)}.help-mini-card{border:1px solid hsl(var(--border));border-radius:14px;background:hsl(var(--card));padding:.75rem}.help-mini-card p{margin:.3rem 0 0;color:hsl(var(--muted-foreground));line-height:1.45}.help-support-grid .card{min-height:140px}@media(max-width:1180px){.integrated-help-block{grid-template-columns:1fr 1fr}.integrated-help-block .button{width:-moz-fit-content;width:fit-content}}@media(max-width:760px){.integrated-help-block,.integrated-help-center{grid-template-columns:1fr}.integrated-help-block .button{width:100%;justify-content:center}}.guide-alias-strip{display:flex;flex-wrap:wrap;gap:.5rem;border:1px solid hsl(var(--border));border-radius:18px;background:hsl(var(--muted)/.2);padding:.75rem}.guide-alias-strip span{border:1px solid hsl(var(--border));border-radius:999px;background:hsl(var(--card));color:hsl(var(--foreground));padding:.38rem .65rem;font-weight:800;font-size:.85rem}:root{--background:210 40% 98%;--foreground:222 47% 11%;--card:0 0% 100%;--card-foreground:222 47% 11%;--muted:210 40% 94%;--muted-foreground:215 16% 40%;--primary:174 84% 28%;--primary-foreground:0 0% 100%;--destructive:0 72% 42%;--destructive-foreground:0 0% 100%;--warning:39 92% 50%;--warning-foreground:24 88% 18%;--success:142 72% 29%;--success-foreground:0 0% 100%;--border-hsl:214 32% 88%;--focus-ring:#0f766e;--radius-card:24px;--radius-control:16px;--tap-target:44px;--page-max-width:1520px}html{font-size:16px}body{background:hsl(var(--background));color:hsl(var(--foreground))}.ui-page-shell{width:min(100%,var(--page-max-width));margin-inline:auto}.ui-command-bar{position:relative;z-index:5;container-type:inline-size}.ui-cluster{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.ui-cluster-start{justify-content:flex-start}.ui-cluster-center{justify-content:center}.ui-cluster-end{justify-content:flex-end}.ui-responsive-grid{display:grid;grid-gap:1rem;gap:1rem;align-items:stretch}.ui-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ui-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card,.guide-panel,.help-mini-card,.integrated-help-block details,.module-toolbar,.operator-help-guide,.page-guidance-panel,.topbar{border-color:hsl(var(--border-hsl))}.card,.guide-panel,.module-toolbar,.operator-help-guide,.page-guidance-panel,.topbar{border-radius:var(--radius-card)}.button,.compact-form input,.compact-form select,.form-grid input,.form-grid select,.form-grid textarea,.search-input,.ui-form-field input,.ui-form-field select,.ui-form-field textarea{min-height:var(--tap-target);border-radius:var(--radius-control)}.button,.button-ghost,.button-light,.button-secondary,.link-button,.nav-link{-webkit-tap-highlight-color:transparent}.button:focus-visible,.link-button:focus-visible,.nav-link:focus-visible,[tabindex]:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 6px rgba(15,118,110,.16)}.button:disabled,.button[aria-disabled=true]{opacity:.55;cursor:not-allowed;filter:grayscale(.1)}.ui-status-message{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.85rem;gap:.85rem;align-items:flex-start;border:1px solid hsl(var(--border-hsl));border-radius:18px;padding:.85rem 1rem;background:hsl(var(--card));line-height:1.45}.ui-status-message,.ui-status-message strong{color:hsl(var(--foreground))}.ui-status-body p,.ui-status-message p{margin:.2rem 0 0;color:hsl(var(--muted-foreground))}.ui-status-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.ui-status-informazione{border-color:#bfdbfe;background:#eff6ff}.ui-status-successo{border-color:#bbf7d0;background:#f0fdf4}.ui-status-attenzione{border-color:#fde68a;background:#fffbeb}.ui-status-errore{border-color:#fecaca;background:#fef2f2}.ui-form-field{display:grid;grid-gap:.4rem;gap:.4rem;color:hsl(var(--foreground));font-weight:800}.ui-form-field em{color:hsl(var(--destructive));font-style:normal}.ui-form-field small{color:hsl(var(--muted-foreground));font-weight:600;line-height:1.4}.ui-form-field>strong{color:hsl(var(--destructive));font-size:.9rem}.ui-accessible-table caption{text-align:left;padding:.75rem .25rem;color:hsl(var(--muted-foreground));font-weight:800}.data-table th,.ui-accessible-table th{letter-spacing:.08em}.ui-loading-state{display:flex;align-items:center;gap:.9rem;padding:1rem;border:1px solid hsl(var(--border-hsl));border-radius:18px;background:hsl(var(--card))}.ui-loading-state>span{width:28px;height:28px;border:3px solid hsl(var(--muted));border-top-color:hsl(var(--primary));border-radius:999px;animation:aqvyon-spin .8s linear infinite}.ui-loading-state h1,.ui-loading-state h2{margin:0;font-size:1.05rem;line-height:1.3}.ui-loading-state p{margin:.2rem 0 0;color:hsl(var(--muted-foreground))}.ui-assistive-panel{scroll-margin-top:1rem}.page-guidance-panel-compact{position:relative}.responsive-table-card{scrollbar-gutter:stable both-edges}.responsive-table-card::-webkit-scrollbar,.sidebar-nav::-webkit-scrollbar,.table-wrap::-webkit-scrollbar{width:10px;height:10px}.responsive-table-card::-webkit-scrollbar-thumb,.sidebar-nav::-webkit-scrollbar-thumb,.table-wrap::-webkit-scrollbar-thumb{background:rgba(100,116,139,.45);border-radius:999px}@keyframes aqvyon-spin{to{transform:rotate(1turn)}}@container (max-width: 760px){.ui-command-bar{align-items:stretch}.ui-command-bar .button,.ui-command-bar .global-search-shell,.ui-command-bar .topbar-actions{width:100%}}@media (max-width:1180px){.ui-grid-3,.ui-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.layout{grid-template-columns:1fr}.main{padding:16px}.ui-grid-2,.ui-grid-3,.ui-grid-4,.ui-status-message{grid-template-columns:1fr}.ui-status-actions .button{width:100%}.topbar-actions.ui-cluster{justify-content:stretch}.topbar-actions.ui-cluster .button{flex:1 1 100%}.data-table td{min-height:44px}}@media (max-width:520px){.hero{border-radius:20px;padding:20px}.hero h1{font-size:clamp(1.55rem,8vw,2rem)}.card,.module-toolbar,.page-guidance-panel,.topbar{border-radius:18px}.client-ready-status-strip article{min-height:auto}}@media (prefers-reduced-motion:reduce){.ui-loading-state>span{animation:none;border-top-color:hsl(var(--primary))}.button,.card,.data-table tr,.nav-link{transition:none!important;transform:none!important}}@media (forced-colors:active){.badge,.button,.card,.page-guidance-panel,.topbar,.ui-status-message{border:1px solid CanvasText}:focus-visible{outline:3px solid Highlight!important;box-shadow:none!important}}@media print{.global-search-shell,.page-guidance-panel,.sidebar,.topbar-actions{display:none!important}.ui-page-shell{width:100%}}.timeline-list{display:grid;grid-gap:.85rem;gap:.85rem;padding-left:1.15rem;margin:1rem 0 0}.timeline-list li{padding-left:.35rem;color:hsl(var(--muted-foreground))}.timeline-list li strong{display:block;color:hsl(var(--foreground));margin-bottom:.18rem}.timeline-list li span{display:block;line-height:1.45}.action-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:1rem}.status-pill{display:inline-flex;min-height:2rem;align-items:center;border-radius:999px;padding:.2rem .7rem;font-weight:800;font-size:.78rem;background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.status-pill.info{background:#e0f2fe;color:#075985}.status-pill.warning{background:#fef3c7;color:#92400e}.status-pill.danger{background:#fee2e2;color:#991b1b}.check-list{display:grid;grid-gap:.65rem;gap:.65rem;padding:0;margin:1rem 0 0;list-style:none}.check-list li{display:flex;gap:.55rem;align-items:flex-start;color:hsl(var(--muted-foreground));line-height:1.45}.check-list li span{display:inline-grid;place-items:center;min-width:1.35rem;height:1.35rem;border-radius:999px;background:#dcfce7;color:#166534;font-weight:900;font-size:.75rem}.meter-quick-help{margin-bottom:1rem}.meter-quick-help p{margin:.35rem 0 0;color:#475569;line-height:1.65}.meter-health-kpis .metric-card strong{font-size:clamp(1.6rem,3vw,2.25rem)}.meter-toolbar{align-items:flex-start}.meter-toolbar .muted{margin:.35rem 0 0;max-width:520px}.meter-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));grid-gap:.75rem;gap:.75rem;align-items:end;width:min(100%,920px)}.meter-filter-grid label{display:grid;grid-gap:.35rem;gap:.35rem;color:#334155;font-size:.82rem;font-weight:850}.meter-filter-actions{align-items:end}.meter-quick-filters{margin:0 0 1rem}.meter-operations-layout{align-items:flex-start}.meter-table tr{cursor:pointer}.meter-table td{min-width:128px}.meter-table td:last-child{text-align:left;min-width:260px}.meter-table span{line-height:1.4}.meter-detail-panel .card-content{gap:.9rem}.meter-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.65rem;gap:.65rem}.meter-status-grid span{display:grid;grid-gap:.35rem;gap:.35rem;padding:.75rem;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.meter-consumption-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.65rem;gap:.65rem}.meter-consumption-summary span{display:grid;grid-gap:.25rem;gap:.25rem;padding:.75rem;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.meter-consumption-summary strong{font-size:1.1rem}.meter-detail-panel .activity-log small,.meter-history-list small{display:block;margin-top:.25rem;color:#64748b;line-height:1.45}@media (max-width:1200px){.meter-filter-grid{grid-template-columns:repeat(2,minmax(180px,1fr));width:100%}}@media (max-width:820px){.meter-consumption-summary,.meter-filter-grid,.meter-operations-layout,.meter-status-grid{grid-template-columns:1fr}.meter-quick-filters .button{width:100%}}.meter-charts-section .card-content{gap:1rem}.meter-chart-controls{display:grid;grid-template-columns:minmax(180px,240px) 1fr;grid-gap:.85rem;gap:.85rem;align-items:end}.meter-chart-controls label{display:grid;grid-gap:.35rem;gap:.35rem;color:#334155;font-size:.82rem;font-weight:850}.meter-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.meter-chart-card{display:grid;grid-gap:.7rem;gap:.7rem;min-width:0;padding:.9rem;border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc}.meter-chart-card p{margin:.2rem 0 0;color:#64748b;line-height:1.45;font-size:.85rem}.meter-chart-heading{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.meter-chart-heading>span{flex:0 0 auto;padding:.25rem .55rem;border-radius:999px;background:#e0f2fe;color:#075985;font-size:.75rem;font-weight:850}.meter-chart-svg{width:100%;min-height:120px;overflow:visible}.meter-chart-grid-line{stroke:#cbd5e1;stroke-width:1;stroke-dasharray:4 4;fill:none}.meter-chart-line{stroke:#0f172a;stroke-width:2.5;fill:none;vector-effect:non-scaling-stroke}.meter-chart-dot{fill:#fff;stroke:#0f172a;stroke-width:2}.meter-chart-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;color:#475569;font-size:.78rem;line-height:1.35}.meter-chart-empty{padding:1rem;border-radius:14px;background:#fff;color:#64748b;line-height:1.5;border:1px dashed #cbd5e1}@media (max-width:1180px){.meter-chart-grid{grid-template-columns:1fr}}@media (max-width:720px){.meter-chart-controls{grid-template-columns:1fr}.meter-chart-heading{display:grid}}.meter-ingestion-security{display:grid;grid-gap:1rem;gap:1rem;padding:1rem}.meter-ingestion-security__intro{display:grid;grid-gap:.35rem;gap:.35rem;max-width:960px}.meter-ingestion-kpis{margin-top:.25rem}.meter-security-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);grid-gap:1rem;gap:1rem;align-items:flex-start}.meter-security-grid>div{min-width:0;border:1px solid var(--border);border-radius:1rem;padding:1rem;background:var(--card)}.meter-security-grid .activity-log li,.meter-security-grid .checklist li{overflow-wrap:anywhere;line-height:1.45}@media (max-width:900px){.meter-security-grid{grid-template-columns:1fr}}.gateway-validation{display:grid;grid-gap:1rem;gap:1rem;margin:1rem 0;padding:1rem}.gateway-validation__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.gateway-validation-reason{display:grid;grid-gap:.35rem;gap:.35rem;max-width:760px}.gateway-validation-table .data-table td,.gateway-validation-table .data-table th{vertical-align:top}.compact-actions{gap:.35rem;flex-wrap:wrap}.compact-actions .button,.compact-actions button{min-height:2rem;padding:.35rem .55rem;font-size:.82rem}@media (max-width:900px){.gateway-validation__header{flex-direction:column}.gateway-validation-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.billing-ready-panel{display:grid;grid-gap:1rem;gap:1rem;margin:1rem 0;padding:1rem}.billing-ready-panel__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.billing-ready-panel__header>div:first-child{max-width:900px}.billing-ready-table .data-table td,.billing-ready-table .data-table th{vertical-align:top}.form-status-message.compact{margin:0}@media (max-width:900px){.billing-ready-panel__header{flex-direction:column}.billing-ready-panel .registry-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.billing-ready-panel .registry-kpis{grid-template-columns:1fr}}.municipal-dashboard-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);grid-gap:1rem;gap:1rem;align-items:stretch;padding:1rem;border:1px solid #dbeafe;border-radius:22px;background:linear-gradient(135deg,#eff6ff,#ffffff 70%)}.municipal-dashboard-intro strong{display:block;margin:.2rem 0;font-size:1.1rem;color:#0f172a}.municipal-dashboard-intro p{color:#475569;line-height:1.6;margin:.35rem 0 0}.municipal-rule-list{display:grid;grid-gap:.55rem;gap:.55rem}.municipal-rule-list span,.municipal-safety-grid span{display:flex;gap:.5rem;align-items:flex-start;padding:.72rem .8rem;border-radius:16px;background:#fff;border:1px solid #e2e8f0;color:#334155;line-height:1.45}.municipal-rule-list svg,.municipal-safety-grid svg{flex:0 0 auto;margin-top:.1rem;color:#0369a1}.municipal-dashboard-section{display:grid;grid-gap:.85rem;gap:.85rem}.municipal-action-list{display:grid;grid-gap:.75rem;gap:.75rem}.municipal-action-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:.8rem;gap:.8rem;align-items:center;padding:.95rem;border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.06)}.municipal-action-row strong{display:block;color:#0f172a;margin-bottom:.2rem}.municipal-action-row p{margin:0;color:#475569;line-height:1.5}.municipal-action-row small{display:block;margin-top:.28rem;color:#64748b}.municipal-status-dot{width:2.35rem;height:2.35rem;display:grid;place-items:center;border-radius:999px;background:#e0f2fe;color:#075985}.municipal-status-ok{background:#dcfce7;color:#166534}.municipal-status-info,.municipal-status-warning{background:#fef3c7;color:#92400e}.municipal-status-blocked,.municipal-status-critical{background:#fee2e2;color:#991b1b}.municipal-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.municipal-card{min-height:100%;border-top:4px solid #bae6fd}.municipal-card-info,.municipal-card-warning{border-top-color:#fde68a}.municipal-card-blocked,.municipal-card-critical{border-top-color:#fecaca}.municipal-card-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.municipal-card-icon{width:2.35rem;height:2.35rem;display:grid;place-items:center;border-radius:14px;background:#f1f5f9;color:#0f172a}.municipal-card-value{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-end;padding:.7rem 0;border-top:1px solid #e2e8f0}.municipal-card-value strong{font-size:1.8rem;color:#0f172a}.municipal-card-value span{color:#64748b;font-size:.82rem;text-align:right;max-width:190px;line-height:1.35}.municipal-card-blocked{display:flex;gap:.45rem;align-items:flex-start;padding:.65rem .75rem;border-radius:14px;background:#fff7ed;color:#9a3412;line-height:1.45}.municipal-card .button{width:100%;justify-content:center}.municipal-safe-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.municipal-safe-card .card-content{gap:.75rem;align-items:flex-start}.municipal-quick-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.65rem;gap:.65rem}.municipal-quick-link{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.2rem .6rem;gap:.2rem .6rem;padding:.85rem;border:1px solid #e2e8f0;border-radius:18px;background:#fff;color:#0f172a;text-decoration:none;box-shadow:0 10px 22px rgba(15,23,42,.045)}.municipal-quick-link span{font-weight:850}.municipal-quick-link small{grid-column:1/-1;color:#64748b;line-height:1.4}.municipal-quick-link svg{grid-row:1;grid-column:2}.municipal-safety-footer{grid-template-columns:minmax(0,.8fr) minmax(280px,1.2fr);align-items:flex-start;padding:1rem;border:1px solid #e2e8f0;border-radius:22px;background:#f8fafc}.municipal-safety-footer h2{margin:.2rem 0;font-size:1.25rem}.municipal-safety-footer p{color:#475569;line-height:1.6}.municipal-safety-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.65rem;gap:.65rem}@media (max-width:1180px){.municipal-card-grid,.municipal-quick-links,.municipal-safe-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.municipal-dashboard-intro,.municipal-safety-footer{grid-template-columns:1fr}}@media (max-width:760px){.municipal-action-row,.municipal-card-grid,.municipal-quick-links,.municipal-safe-actions,.municipal-safety-grid{grid-template-columns:1fr}.municipal-action-row{align-items:stretch}.municipal-action-row .button{width:100%;justify-content:center}.municipal-card-value{align-items:flex-start;flex-direction:column}.municipal-card-value span{text-align:left;max-width:none}}