:root{--ux-space-1:4px;--ux-space-2:8px;--ux-space-3:12px;--ux-space-4:16px;--ux-space-5:24px;--ux-space-6:32px;--ux-space-7:48px;--ux-radius:10px;--ux-shadow:0 8px 30px rgb(31 50 41 / 8%);--ux-ink:#233c32;--ux-muted:#58645b;--ux-border:#d8dfd6;--ux-surface:#fff;--ux-canvas:#f5f5ef;--ux-success:#24613c;--ux-warning:#775500;--ux-danger:#9b3030;--ux-info:#295a77;--ux-neutral:#56635c}
[hidden]{display:none!important}button,input,select,textarea{font:inherit}button,.btn,summary{touch-action:manipulation}.btn,button:not(.btn-icon),input:not([type=checkbox]),select{min-height:44px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b28a39;outline-offset:3px}.view-header{align-items:flex-start;gap:24px}.view-header h1{font-size:clamp(28px,3vw,38px);line-height:1.15;margin:0 0 12px}.view-subtitle{max-width:70ch;line-height:1.6}.view-header .management-actions{justify-content:flex-end}.workspace-panel{border-color:var(--ux-border);border-radius:var(--ux-radius)}.sidebar{width:238px}.nav-group summary{min-height:46px}.nav-caption{font-size:10px}.nav-group .nav-item{padding-block:10px}.portal-navigation{display:flex;flex-direction:column;gap:4px}.ux-context{display:flex;align-items:center;gap:8px;min-width:0;max-width:470px}.ux-context label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.ux-context select{min-width:100px;max-width:290px;width:100%;font-size:13px}.topbar{height:auto;min-height:78px;gap:16px;flex-wrap:wrap;padding-block:12px}.status-indicator{display:none}.topbar-search{flex:1;min-width:180px}.topbar #btn-quick-create{flex-shrink:0}.ux-breadcrumb{display:flex;gap:12px;align-items:center;color:var(--ux-muted);font-size:12px;margin:0 0 24px}.ux-breadcrumb button{background:none;border:0;color:var(--ux-ink);padding:0 8px 0 0;min-height:32px}.ux-breadcrumb button:disabled{display:none}.ux-breadcrumb span+span:before{content:'/';margin-right:12px;color:#899188}.ux-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0 32px;border-block:1px solid var(--ux-border);padding:24px 0;gap:24px}.ux-metric{padding:0 24px;border-left:1px solid var(--ux-border)}.ux-metric:first-child{padding-left:0;border:0}.ux-metric span{display:block;font-size:13px;color:var(--ux-muted)}.ux-metric strong{display:block;font-size:clamp(22px,3vw,36px);font-variant-numeric:tabular-nums;margin-top:8px;color:var(--ux-ink)}.ux-attention-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:24px}.ux-attention-grid>.workspace-panel{margin:0;padding:24px}.ux-attention-grid .empty-state{padding:24px 12px}.ux-attention-grid h2{font-size:23px}.ux-attention-row{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--ux-border);color:inherit;text-decoration:none}.ux-badge{display:inline-flex;align-items:center;font-size:11px;border-radius:5px;padding:5px 8px;line-height:1.4;white-space:normal}.ux-success{color:var(--ux-success);background:#e8f2e9}.ux-warning{color:var(--ux-warning);background:#f6efdc}.ux-danger{color:var(--ux-danger)!important;background:#f9eaea!important;border-color:#e6b7b7!important}.ux-neutral{color:var(--ux-neutral);background:#edf0eb}.ux-info{color:var(--ux-info);background:#e8f0f6}.ux-alert{padding:20px;border-left:3px solid var(--ux-warning);background:#f8f2e5;color:var(--ux-ink);line-height:1.6}.ux-filterbar{display:flex;align-items:end;gap:12px;margin:24px 0 12px;flex-wrap:wrap}.ux-filterbar label{display:grid;gap:6px;font-size:12px;color:var(--ux-muted)}.ux-filterbar label:first-child{flex:1;min-width:180px}.ux-filterbar input{width:100%}.ux-filterbar [role=status]{margin:auto 0;font-size:12px}.data-table th{font-size:11px;letter-spacing:.03em;color:var(--ux-muted);white-space:normal}.data-table td{line-height:1.5}.data-table td button{margin:3px}.data-table.ux-compact td{padding-block:8px}.table-container{min-width:0;max-width:100%;overflow:auto}.ux-loading{padding:32px 0}.ux-loading span{display:block;background:#e5e9df;border-radius:5px;height:22px;margin:16px 0;width:70%}.ux-loading span:first-child{width:35%;height:36px}.ux-loading p{color:var(--ux-muted)}.ux-search-results{display:flex;flex-direction:column;gap:8px;margin-top:16px;max-height:55vh;overflow:auto}.ux-search-results button{display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;padding:14px;border:1px solid var(--ux-border);border-radius:8px;background:var(--ux-surface);color:var(--ux-ink)}.ux-search-results small{color:var(--ux-muted)}.ux-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.ux-tabs{display:flex;gap:8px;max-width:100%;overflow:auto;margin:20px 0}.ux-tabs button{flex-shrink:0;background:white;border:1px solid var(--ux-border);padding:8px 16px;border-radius:6px}.ux-tabs [aria-selected=true]{background:var(--ux-ink);color:white}.ux-tabpanel{min-height:150px;line-height:1.7}.ux-kanban{display:grid;grid-auto-columns:minmax(240px,1fr);grid-auto-flow:column;gap:20px;overflow:auto;margin:24px 0}.ux-kanban section{padding:16px;border-radius:10px;background:#edf0e8}.ux-kanban h2{font-size:16px;display:flex;justify-content:space-between;margin:0 0 16px}.ux-incident-card{padding:16px;background:white;border:1px solid var(--ux-border);border-radius:8px;margin-bottom:12px}.ux-incident-card h3{font-size:16px;margin:0 0 12px}.ux-incident-card p{font-size:12px;line-height:1.7;color:var(--ux-muted)}.ux-calendar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ux-calendar article{border-top:3px solid var(--ux-ink);padding:16px;background:#f1f3ee}.ux-calendar h3{font-size:16px}.ux-calendar p{font-size:13px;line-height:1.7}.ux-progress{display:flex;list-style:none;gap:14px;padding:16px 0;margin:0 0 24px;border-bottom:1px solid var(--ux-border);overflow:auto}.ux-progress li{display:flex;gap:8px;align-items:center;font-size:12px;white-space:nowrap}.ux-progress span{display:grid;place-items:center;background:#e8ede3;border-radius:50%;width:24px;height:24px;flex-shrink:0}.ux-save-state{font-size:13px;color:var(--ux-muted)}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--ux-danger)}.resident-workspace .sidebar{background:#edf1e9}.resident-workspace .management-context,.resident-workspace .records-toolbar{max-width:100%}.resident-workspace .portal-financial{padding:28px}.resident-workspace .portal-balance{color:var(--ux-ink)}.resident-workspace .table-container{border-radius:8px}
@media(min-width:1700px){.main-content{padding-inline:48px}.ux-attention-grid{gap:32px}.ux-attention-grid>.workspace-panel{padding:32px}}
@media(max-width:1100px){.ux-context{order:3;width:100%;max-width:none;flex-basis:100%}.ux-context select{max-width:500px}.ux-calendar{grid-template-columns:repeat(2,minmax(0,1fr))}.ux-attention-grid{gap:16px}.ux-attention-grid .portal-section-heading{flex-wrap:wrap}.ux-attention-grid .btn{font-size:12px}}
@media(max-width:800px){.topbar{padding:12px 16px;gap:10px}.topbar-search{min-width:0;flex-basis:calc(100% - 130px)}.ux-context{gap:8px}.ux-context .ux-badge{max-width:110px}.main-content{padding:20px 16px}.view-header{flex-direction:column;gap:16px}.view-header .management-actions{justify-content:flex-start}.ux-metrics{gap:8px;padding:20px 0}.ux-metric{padding:0 12px}.ux-metric span{font-size:11px}.ux-metric strong{font-size:25px}.ux-attention-grid{grid-template-columns:1fr}.ux-attention-grid>.workspace-panel{padding:20px}.ux-filterbar label{width:100%}.ux-filterbar label:first-child{min-width:0}.ux-filterbar [role=status]{flex:1}.ux-breadcrumb{flex-wrap:wrap;margin-bottom:20px}.ux-tabs{gap:6px}.ux-calendar{grid-template-columns:1fr}dialog{max-width:calc(100vw - 24px);width:min(620px,calc(100vw - 24px));padding:20px}.dialog-actions{flex-wrap:wrap}.resident-workspace .portal-financial{padding:20px}.resident-workspace .portal-section-heading .btn{width:100%}.resident-workspace .portal-section-heading{gap:12px}.ux-quick-grid{gap:8px}.ux-quick-grid .btn{white-space:normal}}
@media(max-width:430px){.topbar #btn-quick-create{font-size:12px;padding-inline:12px}.ux-metric strong{font-size:22px}.ux-metric{padding-inline:8px}.ux-attention-grid .workspace-panel h2{font-size:21px}.ux-quick-grid{grid-template-columns:1fr}.ux-breadcrumb{font-size:11px}.resident-workspace .dialog-actions .btn{width:100%;white-space:normal}.resident-workspace .portal-balance{font-size:36px}}
@media(prefers-reduced-motion:reduce){.ux-loading{animation:none}}

.ux-inbox{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(300px,1.7fr) minmax(180px,.6fr);gap:20px;align-items:start}.ux-inbox>aside,.ux-inbox>section{min-width:0;background:white;border:1px solid var(--ux-border);border-radius:10px;padding:20px}.ux-inbox input,.ux-inbox textarea{width:100%}.ux-inbox label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}#ux-conversations button{width:100%;display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:16px 0;border:0;border-bottom:1px solid var(--ux-border);background:none;gap:8px}#ux-conversations small,.ux-message small{font-size:11px;color:var(--ux-muted)}.ux-message{padding:18px 0;border-bottom:1px solid var(--ux-border)}.ux-message p{white-space:pre-wrap;line-height:1.7}.ux-message-thread{max-height:55vh;overflow:auto}#ux-reply{padding-top:24px}#ux-reply p{font-size:12px;color:var(--ux-muted)}@media(max-width:1100px){.ux-inbox{grid-template-columns:minmax(180px,.8fr) minmax(260px,1.5fr)}#ux-contact{grid-column:1/-1}}@media(max-width:800px){.ux-inbox{grid-template-columns:1fr}.ux-inbox>aside,.ux-inbox>section{padding:16px}#ux-conversations{max-height:240px;overflow:auto}}

.ux-attention-grid .empty-mark{display:none}.ux-attention-grid .empty-state{min-height:0;text-align:left;padding:12px 0}.ux-attention-grid .empty-state h3{font-size:16px;margin:8px 0}.ux-attention-grid .empty-state p{margin:0;line-height:1.6}

.ux-finance-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border-block:1px solid var(--ux-border);padding:24px 0;margin:24px 0}.ux-finance-metrics .finance-metric{border:0;padding:0}.ux-finance-metrics .finance-metric strong{font-size:28px}@media(max-width:820px){.ux-finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ux-finance-metrics .finance-metric strong{font-size:22px}}@media(max-width:390px){.ux-finance-metrics{grid-template-columns:1fr}}
.ux-context{flex-wrap:wrap}.ux-context input{width:170px;min-width:0;flex:0 1 170px;font-size:13px}.ux-context select{flex:1;min-width:140px}.btn-icon,.ux-breadcrumb button{min-height:44px;min-width:44px}.ux-progress button{display:flex;gap:8px;align-items:center;border:0;background:none;color:inherit;padding:8px}.ux-progress .ux-current{font-weight:700;color:var(--ux-ink)}.ux-progress .ux-current span{background:var(--ux-ink);color:white}.ux-progress .ux-complete span{background:#dcecdf;color:var(--ux-success)}.ux-calendar .ux-overdue{border-color:var(--ux-danger)}body:has(#ux-current-condo) .management-context,body:has(#ux-current-condo) .finance-toolbar:has(#fin-condominium),body:has(#ux-current-condo) #views-container .form-group:has(#assembly-condominium_id),body:has(#ux-current-condo) #views-container label:has(#iot-condo){display:none}.ux-form-details{margin:16px 0;border-block:1px solid var(--ux-border);padding:12px 0}.ux-form-details summary{font-weight:600;color:var(--ux-ink)}.ux-form-details .form-group{margin-top:16px}

.ux-source-reference{display:block;color:var(--ux-muted);font-size:11px}.ux-activity-timeline{list-style:none;padding:0 0 0 20px;border-left:2px solid var(--ux-border);margin:24px 0}.ux-activity-timeline li{padding:12px 0 20px;position:relative}.ux-activity-timeline li:before{content:"";width:10px;height:10px;position:absolute;left:-26px;top:18px;border-radius:50%;background:var(--ux-ink)}.ux-activity-timeline small{color:var(--ux-muted)}.ux-incident-context{background:var(--ux-canvas);padding:24px;margin-top:24px;border-radius:var(--ux-radius)}#ux-budget-year{max-width:160px;margin-bottom:24px}
.nav-menu .nav-item{min-height:44px;color:#536459}.nav-menu .nav-item.active{color:#234a35}
.ux-toast{position:fixed;right:24px;bottom:24px;z-index:1000;background:var(--ux-ink);color:white;border-radius:8px;padding:16px 24px;box-shadow:var(--ux-shadow)}@media(max-width:430px){.ux-toast{right:12px;bottom:12px;max-width:calc(100vw - 24px)}}
.ux-incident-dialog[open]{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:24px;width:min(1000px,calc(100vw - 48px))}.ux-incident-dialog>.dialog-header,.ux-incident-dialog>.dialog-description{grid-column:1/-1}.ux-incident-dialog>.ux-incident-context{margin:0}.ux-incident-main{min-width:0}@media(max-width:800px){.ux-incident-dialog[open]{grid-template-columns:1fr;width:calc(100vw - 24px);gap:16px}}

.supplier-form{display:grid;gap:16px}.supplier-form label{display:grid;gap:8px}.supplier-form input[type=checkbox]{width:auto}.supplier-form textarea{min-height:140px;padding:12px;max-width:100%;font:inherit}.supplier-form input,.supplier-form select{max-width:100%;min-width:0}#supplier-content{margin-top:24px}.ux-tabs [aria-current=page]{background:var(--ux-ink);color:white}#unit-query{align-items:end;flex-wrap:wrap}#unit-query label{min-width:140px;max-width:240px}#unit-query input{min-width:0;width:100%}
