:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-bg:#f6f7fb;--surface:#fff;--surface-muted:#f8fafc;--border:#e5e7eb;--text:#19213a;--muted:#68708a;--primary:#4f46e5;--primary-soft:#eef2ff;--sidebar:#11152a;--sidebar-muted:#9da7c5;--shadow:0 12px 32px #0f172a0f}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-bg:#0d1020;--surface:#171b2f;--surface-muted:#1d2239;--border:#2d3450;--text:#f5f7ff;--muted:#aab2cc;--primary:#8b85ff;--primary-soft:#27264a;--sidebar:#090b17;--sidebar-muted:#a7afc8;--shadow:0 12px 32px #0003}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--app-bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 55%, transparent);outline-offset:3px}.skip-link{z-index:1000;background:var(--surface);color:var(--text);box-shadow:var(--shadow);border-radius:.6rem;padding:.75rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.app-shell{min-height:100vh}.sidebar{z-index:40;background:var(--sidebar);color:#fff;flex-direction:column;width:17.5rem;padding:1.5rem 1rem;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{align-items:center;gap:.8rem;padding:0 .6rem 1.75rem;display:flex}.brand__mark{background:linear-gradient(135deg,#8b5cf6,#4f46e5);border-radius:.85rem;flex:none;place-items:center;width:2.65rem;height:2.65rem;font-size:1.15rem;display:grid;box-shadow:0 8px 24px #4f46e561}.brand strong,.brand small,.sidebar__footer strong,.sidebar__footer small{display:block}.brand strong{letter-spacing:-.02em}.brand small,.sidebar__footer small{color:var(--sidebar-muted);margin-top:.15rem;font-size:.74rem}.nav-label{color:var(--sidebar-muted);letter-spacing:.08em;text-transform:uppercase;margin:0 .7rem .7rem;font-size:.68rem;font-weight:700}.module-nav{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.module-nav button{color:#e7e9f4;width:100%;font:inherit;text-align:left;background:0 0;border:0;border-radius:.65rem;grid-template-columns:1.4rem 1fr auto;align-items:center;gap:.65rem;padding:.85rem .75rem;display:grid}.module-nav a{color:var(--sidebar-muted);border-radius:10px;grid-template-columns:1.25rem 1fr;align-items:center;gap:.8rem;padding:.72rem .8rem;font-size:.9rem;text-decoration:none;display:grid}.module-nav a:hover,.module-nav a:focus-visible{color:#fff;background:#ffffff14;outline:none}.module-nav a.module-nav__link--active{color:#fff;background:#ffffff17;font-weight:700}.account-nav{border-top:1px solid #ffffff1a;margin-top:1rem;padding-top:.5rem}.account-nav__loading{color:var(--sidebar-muted);padding:.5rem .8rem;font-size:.8rem}.module-nav button:disabled{cursor:not-allowed;opacity:.72}.module-nav button:disabled:hover{background:#ffffff0e}.module-nav button small{color:#aeb6d0;text-transform:uppercase;font-size:.65rem;font-weight:700}.sidebar__footer{border-top:1px solid #ffffff1a;align-items:center;gap:.75rem;margin-top:auto;padding:1rem .75rem 0;font-size:.82rem;display:flex}.sidebar__footer>i{color:#a5b4fc}.workspace{min-height:100vh;margin-left:17.5rem}.topbar{z-index:30;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-content:flex-end;align-items:center;gap:.75rem;min-height:4.5rem;padding:.75rem clamp(1rem,3vw,2.5rem);display:flex;position:sticky;top:0}.topbar-account{color:var(--text-color-secondary);align-items:center;gap:.35rem;margin-left:auto;font-size:.8rem;display:flex}.logout-button{font-size:.8rem!important}.menu-toggle{display:none}.environment{color:var(--muted);align-items:center;gap:.5rem;margin-right:.4rem;font-size:.83rem;display:flex}.environment__dot{background:#22c55e;border-radius:50%;width:.5rem;height:.5rem;box-shadow:0 0 0 4px #22c55e1f}.main-content{width:min(100%,90rem);margin:0 auto;padding:clamp(1.5rem,4vw,3.2rem)}.page-header{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:2rem;display:flex}.eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem;font-size:.72rem;font-weight:800}.page-header h1{letter-spacing:-.045em;margin:0;font-size:clamp(1.8rem,4vw,2.65rem);line-height:1.08}.page-header>div>p:last-child{max-width:48rem;color:var(--muted);margin:.85rem 0 0;line-height:1.65}.status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.surface-card,.module-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.status-card{border-radius:1rem;padding:clamp(1.2rem,3vw,1.65rem)}.status-card__heading{grid-template-columns:auto 1fr auto;align-items:center;gap:.9rem;display:grid}.status-card__heading h2{letter-spacing:-.02em;margin:0;font-size:1.1rem}.status-card__heading .eyebrow{margin-bottom:.25rem}.status-card__icon,.module-card__icon{background:var(--primary-soft);color:var(--primary);border-radius:.8rem;flex:none;place-items:center;display:grid}.status-card__icon{width:2.8rem;height:2.8rem}.status-card__summary{min-height:3rem;color:var(--muted);margin:1.35rem 0;line-height:1.55}.status-spinner{width:1.8rem;height:1.8rem}.check-list{color:var(--muted);gap:.7rem;margin:0;padding:0;font-size:.88rem;list-style:none;display:grid}.check-list li{align-items:center;gap:.65rem;display:flex}.check-list i{color:#16a34a;font-size:.8rem}.status-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0 0 1.25rem;display:grid}.status-details>div{border:1px solid var(--border);background:var(--surface-muted);border-radius:.65rem;min-width:0;padding:.8rem}.status-details dt{color:var(--muted);text-transform:uppercase;margin-bottom:.3rem;font-size:.67rem;font-weight:700}.status-details dd{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.82rem;font-weight:650;overflow:hidden}.roadmap{margin-top:2.2rem}.section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.section-heading h2{letter-spacing:-.025em;margin:0;font-size:1.4rem}.section-heading>span{color:var(--muted);font-size:.8rem}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;display:grid}.module-card{border-radius:.9rem;align-items:flex-start;gap:.85rem;min-height:9rem;padding:1.15rem;display:flex;position:relative}.module-card__icon{width:2.45rem;height:2.45rem}.module-card h3{margin:.1rem 0 .45rem;font-size:.95rem}.module-card p{color:var(--muted);margin:0;font-size:.8rem;line-height:1.45}.coming-soon{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.66rem;font-weight:750;position:absolute;bottom:.85rem;right:1rem}:root[data-theme=dark] .p-button.p-button-text{color:var(--muted)}:root[data-theme=dark] .p-button.p-button-outlined{border-color:var(--border);color:#b8b4ff}.sidebar-mask{display:none}.access-link,.auth-form button{background:var(--primary-color,#4f46e5);color:#fff;font:inherit;border:0;border-radius:.65rem;padding:.72rem 1rem;font-weight:700;text-decoration:none}.auth-page{background:linear-gradient(145deg,#eef2ff,#f8fafc 48%,#e0e7ff);justify-content:center;align-items:center;min-height:100dvh;padding:1.5rem;display:flex}.auth-card{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;width:100%;max-width:30rem;padding:2rem;box-shadow:0 1.5rem 4rem #0f172a21}.auth-brand{color:#312e81;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:1.1rem;font-weight:800;text-decoration:none;display:inline-flex}.auth-copy,.auth-hint{color:#475569;line-height:1.5}.activation-login-note{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:.65rem;margin:1rem 0 0;padding:.8rem 1rem;line-height:1.5}.auth-form{gap:.55rem;margin-top:1.5rem;display:grid}.auth-form label{color:#334155;margin-top:.45rem;font-size:.9rem;font-weight:700}.auth-form input,.auth-form select{color:#19213a;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:.55rem;min-height:2.75rem;padding:.55rem .7rem}.auth-form input:focus-visible,.auth-form select:focus-visible,.auth-form button:focus-visible,.auth-switch:focus-visible{outline-offset:2px;outline:3px solid #a5b4fc}.auth-form button{cursor:pointer;margin-top:.8rem}.auth-form button:disabled{cursor:wait;opacity:.65}.auth-message{color:#9f1239;min-height:1.3rem;margin:.45rem 0 0}.auth-switch{color:#4338ca;cursor:pointer;font:inherit;background:0 0;border:0;margin-top:1.3rem;padding:0;font-weight:650}.admin-page{background:#f8fafc;min-height:100dvh;padding:3rem 1.5rem}.header-actions{flex-wrap:wrap;gap:.75rem;display:flex}.access-link--secondary{color:var(--primary-color,#4f46e5);background:0 0;border:1px solid}.admin-card{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;max-width:52rem;margin:0 auto;padding:2rem}.provision-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem;display:grid}.provision-form label{color:#334155;gap:.4rem;font-size:.9rem;font-weight:700;display:grid}.provision-form input,.provision-form select,.invitation-result input{font:inherit;border:1px solid #cbd5e1;border-radius:.55rem;width:100%;min-height:2.75rem;padding:.55rem .7rem}.provision-form button,.invitation-result button{background:var(--primary-color,#4f46e5);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:.65rem;padding:.75rem 1rem;font-weight:700}.provision-form button{grid-column:1/-1}.invitation-result{background:#ecfdf5;border:1px solid #86efac;border-radius:.75rem;margin-top:1.5rem;padding:1rem}.invitation-result h2{color:#166534;margin-top:0;font-size:1rem}.invitation-result button{margin-top:.65rem}.admin-intro{color:#475569}.admin-message{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:.65rem;margin:1.25rem 0;padding:.75rem 1rem}.form-wide{grid-column:1/-1}.tenant-list{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:1.5rem}.tenant-list h2{margin-top:0;font-size:1.15rem}.tenant-table-wrap{overflow-x:auto}.tenant-list table{border-collapse:collapse;width:100%;min-width:52rem}.tenant-list th,.tenant-list td{text-align:left;vertical-align:middle;border-bottom:1px solid #e2e8f0;padding:.8rem .55rem}.tenant-list th{color:#475569;text-transform:uppercase;font-size:.75rem}.tenant-list small{color:#64748b;margin-top:.2rem;display:block}.table-guidance{color:#64748b;margin:-.25rem 0 1rem;font-size:.9rem}.usage-start{font-variant-numeric:tabular-nums;white-space:nowrap}.usage-start--unknown{color:#64748b;white-space:normal;font-size:.85rem}.tenant-status{text-transform:capitalize;border-radius:999px;padding:.28rem .5rem;font-size:.75rem;font-weight:700;display:inline-block}.status-pending_activation{color:#92400e;background:#fef3c7}.status-active{color:#166534;background:#dcfce7}.status-suspended{color:#991b1b;background:#fee2e2}.status-invited{color:#92400e;background:#fef3c7}.status-inactive{color:#991b1b;background:#fee2e2}.status-closed{color:#334155;background:#e2e8f0}.status-open{color:#1d4ed8;background:#dbeafe}.status-in_progress{color:#92400e;background:#fef3c7}.status-completed{color:#166534;background:#dcfce7}.status-cancelled{color:#334155;background:#e2e8f0}.tenant-actions button{color:#fff;cursor:pointer;font:inherit;background:#334155;border:0;border-radius:.5rem;padding:.5rem .65rem;font-size:.8rem;font-weight:700}.tenant-actions button:disabled,.provision-form button:disabled{cursor:wait;opacity:.65}.tenant-actions .danger-button{background:#b91c1c}.tenant-user-link{color:var(--primary-color,#4f46e5);cursor:pointer;font:inherit;text-underline-offset:.18rem;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.tenant-user-link:hover{color:#3730a3}.tenant-users-panel{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:1.5rem}.tenant-users-panel__heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.tenant-users-panel__heading h2{margin:0;font-size:1.15rem}.tenant-users-panel__heading p{color:#64748b;margin:.35rem 0 1rem}.tenant-users-panel__heading button{color:#334155;cursor:pointer;font:inherit;background:0 0;border:1px solid #64748b;border-radius:.5rem;padding:.45rem .65rem;font-weight:700}.tenant-users-panel table{border-collapse:collapse;width:100%;min-width:48rem}.tenant-users-panel th,.tenant-users-panel td{text-align:left;vertical-align:middle;border-bottom:1px solid #e2e8f0;padding:.8rem .55rem}.tenant-users-panel th{color:#475569;text-transform:uppercase;font-size:.75rem}.business-panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:1rem;margin-bottom:1.25rem;padding:clamp(1.2rem,3vw,2rem)}.business-panel h2{margin:0;font-size:1.15rem}.panel-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.panel-heading>button{background:var(--primary);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:.5rem;padding:.55rem .75rem;font-size:.85rem;font-weight:700}.panel-heading>button:disabled{cursor:wait;opacity:.65}.panel-actions{flex-wrap:wrap;gap:.65rem;display:flex}.panel-actions button{background:var(--primary);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:.5rem;padding:.55rem .75rem;font-size:.85rem;font-weight:700}.panel-actions button:disabled{cursor:wait;opacity:.65}.neighborhood-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(5rem,.3fr);gap:1rem;margin-top:1.25rem;display:grid}.kitnet-form,.contract-form,.expense-form,.maintenance-form,.investment-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.25rem;display:grid}.locality-picker{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.65rem;display:grid}.locality-quick-create{background:var(--surface-muted);border:1px solid var(--border);border-radius:.65rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(5rem,.3fr);gap:.85rem;padding:1rem;display:grid}.locality-quick-create>div:first-child{grid-column:1/-1}.locality-quick-create p{color:var(--muted);margin:.25rem 0 0;font-size:.85rem}.locality-quick-actions{flex-wrap:wrap;grid-column:1/-1;gap:.65rem;display:flex}.neighborhood-form label,.search-form label,.kitnet-form label,.search-form label,.contract-form label,.search-form label,.expense-form label,.maintenance-form label,.investment-form label{color:var(--text);gap:.4rem;font-size:.9rem;font-weight:700;display:grid}.neighborhood-form input,.kitnet-form input,.kitnet-form select,.contract-form input,.contract-form select,.contract-form textarea,.search-form input{background:var(--surface-muted);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:.55rem;width:100%;min-height:2.75rem;padding:.55rem .7rem}.contract-form textarea{resize:vertical;min-height:5rem}.expense-form input,.expense-form select,.expense-form textarea{background:var(--surface-muted);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:.55rem;width:100%;min-height:2.75rem;padding:.55rem .7rem}.expense-form textarea{resize:vertical;min-height:5rem}.maintenance-form input,.maintenance-form select,.maintenance-form textarea,.investment-form input,.investment-form select,.investment-form textarea{background:var(--surface-muted);border:1px solid var(--border);color:var(--text);font:inherit;border-radius:.55rem;width:100%;min-height:2.75rem;padding:.55rem .7rem}.maintenance-form textarea,.investment-form textarea{resize:vertical;min-height:5rem}.form-actions{flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:.65rem;display:flex}.form-actions button,.search-form button,.locality-picker>button,.locality-quick-actions button{background:var(--primary);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:.65rem;min-height:2.75rem;padding:.65rem 1rem;font-weight:700}.form-actions button:disabled,.locality-picker>button:disabled,.locality-quick-actions button:disabled{cursor:wait;opacity:.65}.form-actions .secondary-button,.locality-picker .secondary-button,.locality-quick-actions .secondary-button{background:var(--surface-muted);border:1px solid var(--border);color:var(--text)}.form-actions .danger-button{background:#b91c1c}.business-panel--list{margin-bottom:0}.business-list-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.business-list-header p,.empty-state{color:var(--muted);margin-bottom:0}.inactive-toggle{color:var(--text);flex:none;align-items:center;gap:.45rem;font-size:.86rem;display:flex}.inactive-toggle input{accent-color:var(--primary);width:1rem;height:1rem}.search-form{align-items:end;gap:.65rem;margin:1.25rem 0;display:flex}.search-form label{flex:1}.business-table{min-width:35rem!important}.resident-table{min-width:62rem!important}.resident-table th:nth-child(2),.resident-table td:nth-child(2){white-space:nowrap;min-width:10rem;padding-right:1.25rem}.resident-table th:nth-child(3),.resident-table td:nth-child(3){word-break:break-word;border-left:1px solid #e2e8f0;min-width:18rem;padding-left:1.25rem}.kitnet-table{min-width:52rem!important}.contract-table{min-width:58rem!important}.maintenance-table{min-width:70rem!important}.locality-table{border-collapse:separate;border-spacing:0;min-width:76rem!important}.locality-table th,.locality-table td{vertical-align:middle;padding:1rem 1.25rem}.locality-table th{background:var(--surface-muted);white-space:nowrap}.locality-table th:not(:last-child),.locality-table td:not(:last-child){border-right:1px solid var(--border)}.locality-table tbody td{border-bottom:1px solid var(--border)}.locality-table tbody tr:hover td{background:color-mix(in srgb, var(--primary) 5%, transparent)}.locality-table th:first-child,.locality-table td:first-child{min-width:16rem}.locality-table th:nth-child(2),.locality-table td:nth-child(2){min-width:14rem}.locality-table th:nth-child(3),.locality-table td:nth-child(3),.locality-table th:nth-child(4),.locality-table td:nth-child(4){text-align:center;white-space:nowrap;min-width:9rem}.locality-table th:nth-child(5),.locality-table td:nth-child(5){min-width:28rem}.locality-actions{white-space:nowrap}.locality-actions button+button{margin-left:.65rem}.locality-properties-table{border-collapse:separate;border-spacing:0;min-width:58rem!important}.locality-properties-table th,.locality-properties-table td{vertical-align:middle;padding:1rem 1.25rem}.locality-properties-table th{background:var(--surface-muted);white-space:nowrap}.locality-properties-table th:not(:last-child),.locality-properties-table td:not(:last-child){border-right:1px solid var(--border)}.locality-properties-table tbody td{border-bottom:1px solid var(--border)}.locality-properties-table th:first-child,.locality-properties-table td:first-child{min-width:17rem}.locality-properties-table th:nth-child(2),.locality-properties-table td:nth-child(2){min-width:12rem}.locality-properties-table th:nth-child(3),.locality-properties-table td:nth-child(3){min-width:28rem}.investment-table{border-collapse:separate;border-spacing:0;min-width:76rem!important}.investment-table th,.investment-table td{vertical-align:top;padding:1rem 1.25rem}.investment-table th{background:var(--surface-muted);white-space:nowrap}.investment-table th:not(:last-child),.investment-table td:not(:last-child){border-right:1px solid var(--border)}.investment-table tbody td{border-bottom:1px solid var(--border)}.investment-table tbody tr:hover td{background:color-mix(in srgb, var(--primary) 5%, transparent)}.investment-table th:first-child,.investment-table td:first-child{min-width:17rem}.investment-table th:nth-child(2),.investment-table td:nth-child(2),.investment-table th:nth-child(3),.investment-table td:nth-child(3){min-width:13rem}.investment-table th:nth-child(4),.investment-table td:nth-child(4){min-width:14rem}.investment-table th:nth-child(5),.investment-table td:nth-child(5){white-space:nowrap;min-width:11rem}.investment-table th:nth-child(6),.investment-table td:nth-child(6){text-align:center;min-width:9rem}.investment-table td small{margin-top:.35rem;line-height:1.45;display:block}.investment-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin:1.25rem 0;display:grid}.investment-metrics>div{background:var(--surface-muted);border:1px solid var(--border);border-radius:.75rem;gap:.3rem;padding:.85rem;display:grid}.investment-metrics span,.investment-metrics small{color:var(--muted);font-size:.78rem}.investment-metrics strong{color:var(--text);font-size:1.1rem}@media (max-width:850px){.investment-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.neighborhood-form,.kitnet-form,.contract-form,.expense-form,.maintenance-form,.investment-form,.locality-quick-create,.locality-picker{grid-template-columns:1fr}.business-list-header{flex-direction:column;align-items:flex-start}.search-form{flex-direction:column;align-items:stretch}.investment-metrics,.provision-form{grid-template-columns:1fr}}@media (max-width:1100px){.module-grid,.status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:800px){.sidebar{width:min(18rem,86vw);transition:transform .18s;transform:translate(-105%)}.sidebar--open{transform:translate(0)}.sidebar-mask{z-index:35;background:#0206179e;border:0;display:block;position:fixed;inset:0}.workspace{margin-left:0}.topbar{justify-content:space-between}.topbar-account>span{display:none}.menu-toggle{display:inline-flex}.environment{margin-left:auto}}@media (max-width:600px){.page-header,.section-heading{flex-direction:column;align-items:flex-start}.module-grid,.status-details,.status-grid{grid-template-columns:1fr}.status-card__heading{grid-template-columns:auto 1fr}.status-card__heading>.p-tag,.status-card__heading>.status-spinner{grid-column:2;justify-self:start}.module-card{min-height:8.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
