:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#faf9f6;--surface:#fff;--border:#e8e4dc;--text:#1c1b19;--muted:#6b6660;--accent:#8b6f3e;--danger:#a13d3d}*{box-sizing:border-box}body{background:var(--background);color:var(--text);margin:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.role-shell{grid-template-columns:16.5rem minmax(0,1fr);min-height:100vh;display:grid}.role-sidebar{border-right:1px solid var(--border);background:#f4f0e8;flex-direction:column;height:100vh;padding:1.4rem;display:flex;position:sticky;top:0}.role-brand{align-items:center;gap:.8rem;padding:.5rem .4rem 1.5rem;display:flex}.role-brand p,.role-topbar p{color:var(--muted);margin:.2rem 0 0;font-size:.78rem}.brand-mark{background:var(--accent);color:#fff;border-radius:.8rem;place-items:center;width:2.5rem;height:2.5rem;font-family:Georgia,serif;font-size:1.25rem;display:grid}.role-navigation{gap:.3rem;display:grid}.role-navigation a{color:var(--muted);border-radius:.7rem;padding:.72rem .85rem;text-decoration:none}.role-navigation a:hover,.role-navigation a.is-active{color:var(--text);background:#8b6f3e1f}.role-navigation a.is-active{font-weight:700}.sidebar-footer{gap:.7rem;margin-top:auto;padding-top:1.5rem;display:grid}.sidebar-footer a{color:var(--muted);font-size:.85rem}.sidebar-footer button{color:var(--text);border:1px solid var(--border);background:0 0}.role-workspace{min-width:0}.role-topbar{border-bottom:1px solid var(--border);background:#faf9f6eb;justify-content:space-between;align-items:center;gap:1rem;min-height:4.8rem;padding:.8rem clamp(1rem,3vw,2.5rem);display:flex}.role-topbar a{font-size:.86rem}.topbar-actions{align-items:center;gap:.75rem;display:flex}.topbar-logout{display:none}.topbar-logout button{border:1px solid var(--border);background:var(--surface);min-height:2.35rem;color:var(--text);padding:.4rem .7rem}.portal-main{width:min(100% - 2rem,82rem);margin:0 auto;padding:2.5rem 0 5rem}.portal-page-header{justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:2rem;display:flex}.portal-page-header h1{letter-spacing:-.035em;margin:.35rem 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:500}.portal-page-header p:last-child{margin-bottom:0}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.9rem;margin-bottom:1.2rem;display:grid}.metric-card,.portal-panel,.context-card{border:1px solid var(--border);background:var(--surface);border-radius:1rem;box-shadow:0 .7rem 2rem #1c1b190a}.metric-card{min-height:9rem;padding:1.25rem}.metric-card p{color:var(--muted);margin:0;font-size:.82rem}.metric-card strong{margin:1rem 0 .35rem;font-family:Georgia,Times New Roman,serif;font-size:1.6rem;font-weight:500;display:block}.metric-card small{color:var(--muted)}.portal-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.2rem;display:grid}.portal-panel{margin-bottom:1.2rem;padding:1.4rem}.portal-panel h2{margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-weight:500}.panel-heading,.data-row,.data-list>a,.attention-list>a,.timeline-list>li{justify-content:space-between;align-items:center;gap:1rem;display:flex}.panel-heading h2{margin:.25rem 0 0}.data-list,.attention-list{display:grid}.data-row,.data-list>a,.attention-list>a{border-bottom:1px solid var(--border);min-height:4.6rem;color:var(--text);padding:.85rem 0;text-decoration:none}.data-list>:last-child,.attention-list>:last-child{border-bottom:0}.data-list p,.data-row p{color:var(--muted);margin:.3rem 0 0;font-size:.84rem}.portal-status{color:var(--muted);background:#efede8;border-radius:999px;flex:none;padding:.35rem .65rem;font-size:.75rem}.portal-status.status-good{color:#2f6845;background:#e3f1e8}.portal-status.status-warning{color:#80631f;background:#f7edd4}.portal-status.status-danger{color:#973c3c;background:#f7e0df}.portal-empty{min-height:8rem;color:var(--muted);text-align:center;place-content:center;gap:.45rem;display:grid}.portal-error-state{text-align:center;max-width:44rem;margin:clamp(2rem,8vw,6rem) auto}.portal-error-state button{margin-top:1rem}.message-card{border-left:3px solid var(--accent);background:#f7f5ef;padding:.75rem 1rem}.portal-empty p{max-width:34rem;margin:0}.timeline-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.timeline-list li{border-bottom:1px solid var(--border);padding:.9rem 0}.timeline-list p,.timeline-list time{color:var(--muted);margin:.25rem 0 0;font-size:.78rem}.quick-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin:1.2rem 0;display:grid}.quick-actions>*{border:1px solid var(--border);min-height:7rem;color:var(--text);background:#f4f0e8;border-radius:1rem;align-content:space-between;padding:1rem;text-decoration:none;display:grid}.quick-actions span{color:var(--muted);font-size:.78rem}.context-main{place-items:center;min-height:100vh;padding:1rem;display:grid}.context-card{width:min(100%,45rem);padding:clamp(1.5rem,5vw,3rem)}.context-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.8rem;display:grid}.context-option{width:100%;min-height:6rem;color:var(--text);text-align:left;background:#f4f0e8;align-content:space-between;display:grid}.context-option span{color:var(--muted);font-size:.78rem}@media (max-width:860px){.role-shell{display:block}.role-sidebar{border-right:0;border-bottom:1px solid var(--border);width:100%;height:auto;padding:.8rem 1rem;position:static}.role-brand{padding:.2rem 0 .8rem}.role-navigation{padding-bottom:.2rem;display:flex;overflow-x:auto}.role-navigation a{flex:none}.sidebar-footer{display:none}.topbar-logout{display:block}.role-topbar{min-height:4rem}.portal-columns{grid-template-columns:1fr}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:540px){.portal-main{width:min(100% - 1.2rem,82rem);padding-top:1.5rem}.portal-page-header{flex-direction:column;align-items:stretch}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{min-height:7.5rem;padding:1rem}.metric-card strong{font-size:1.2rem}.quick-actions{grid-template-columns:1fr 1fr}.data-row,.data-list>a,.attention-list>a,.timeline-list>li{flex-direction:column;align-items:flex-start}.portal-status{align-self:flex-start}}a{color:var(--accent)}main{width:min(100% - 2rem,42rem);margin:0 auto;padding:4rem 0}.card{border:1px solid var(--border);background:var(--surface);border-radius:1rem;padding:2rem;box-shadow:0 1rem 3rem #1c1b190f}.stack{gap:1rem;display:grid}label{color:var(--muted);gap:.4rem;font-size:.9rem;display:grid}input,select,textarea,button{min-height:2.8rem;font:inherit;border-radius:.65rem}input,select,textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);padding:.7rem .8rem}textarea{resize:vertical;min-height:7rem}button{background:var(--accent);color:#fff;cursor:pointer;border:0;padding:.7rem 1rem}button:disabled{cursor:wait;opacity:.6}.muted{color:var(--muted)}.error{color:var(--danger)}.language-switch{color:var(--muted);justify-content:flex-end;gap:.45rem;font-size:.85rem;display:flex}.language-switch a{color:var(--muted);text-decoration:none}.language-switch a.is-active{color:var(--text);font-weight:700}.auth-footer-copy{margin:0;font-size:.9rem}@media (max-width:540px){.form-grid{grid-template-columns:1fr}}.actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.admin-shell{min-height:100vh}.admin-header{border-bottom:1px solid var(--border);background:#ffffffeb;justify-content:space-between;align-items:center;gap:2rem;padding:1rem max(1rem,50vw - 36rem);display:flex}.brand{color:var(--text);font-weight:700;text-decoration:none}.admin-kicker,.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:.3rem 0 0;font-size:.75rem;font-weight:700}.admin-nav,.page-heading,.property-title-row,.property-card-heading,.form-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-nav{justify-content:flex-end}.admin-main{width:min(100% - 2rem,72rem);margin:0 auto;padding:2.5rem 0 4rem}.narrow-main{width:min(100% - 2rem,56rem)}.page-heading{align-items:flex-end;margin:1rem 0 2rem}h1,h2,p{overflow-wrap:anywhere}h1,h2{margin-top:0}.page-heading h1,.property-title-row h1{margin:.35rem 0}.button-link{background:var(--accent);color:#fff;border-radius:.65rem;justify-content:center;align-items:center;min-height:2.8rem;padding:.7rem 1rem;text-decoration:none;display:inline-flex}.secondary-button{border:1px solid var(--border);background:var(--surface);color:var(--text)}.back-link{margin-bottom:1rem;text-decoration:none;display:inline-block}.view-switcher,.property-tabs{gap:.35rem;display:flex;overflow-x:auto}.view-switcher{margin-bottom:1.5rem}.view-switcher a,.property-tabs a{color:var(--muted);border-radius:999px;flex:none;padding:.55rem .85rem;text-decoration:none}.view-switcher a.is-active,.property-tabs a.is-active{color:var(--text);background:#eee8dc;font-weight:700}.property-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1rem;display:grid}.property-card{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:1rem;gap:1.5rem;padding:1.5rem;text-decoration:none;transition:border-color .15s,transform .15s;display:grid}.property-card:hover{border-color:var(--accent);transform:translateY(-2px)}.property-card h2,.property-card p,.property-meta dd{margin:0}.status-badge{color:#654f2a;background:#eee8dc;border-radius:999px;flex:none;width:fit-content;padding:.4rem .65rem;font-size:.8rem;font-weight:700;display:inline-flex}.status-active_occupied{color:#275d3a;background:#e4efe8}.status-maintenance_hold{color:#80521f;background:#f8ead6}.status-archived,.status-inactive{color:#5a5651;background:#ecebea}.property-meta,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;display:grid}.property-meta dt,.detail-grid dt{color:var(--muted);font-size:.8rem}.detail-grid>div{border-bottom:1px solid var(--border);padding:.8rem 0}.detail-grid dd{margin:.35rem 0 0}.detail-wide{grid-column:1/-1}.empty-state{text-align:center}.property-form,.settings-stack{gap:1.5rem;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.field-error{color:var(--danger);font-size:.82rem}.property-title-row{align-items:flex-end;margin:1rem 0 1.5rem}.property-tabs{border-bottom:1px solid var(--border);margin-bottom:1.5rem;padding-bottom:.75rem}.success-banner{color:#275d3a;background:#eff8f2;border:1px solid #b8d8c3;border-radius:.75rem;padding:.8rem 1rem}.activity-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.activity-list li{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;padding:1rem 0;display:flex}.activity-list p{margin:.3rem 0 0}.activity-list time{color:var(--muted);flex:none;font-size:.85rem}.danger-zone{border-color:#e6caca}.danger-zone button{background:var(--danger)}.section-heading-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.plain-list,.term-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.plain-list li,.term-list>li{border-bottom:1px solid var(--border);gap:.4rem;padding:1rem 0;display:grid}.party-list li{grid-template-columns:minmax(0,1fr) auto;align-items:center}.party-list p,.term-list p{margin:0}.inline-form{justify-items:end;gap:.35rem;display:grid}.compact-button,.secondary-action{min-height:2.35rem;padding:.45rem .7rem;font-size:.85rem}.secondary-action{border:1px solid var(--border);background:var(--surface);width:fit-content;color:var(--text)}.form-fieldset{border:1px solid var(--border);border-radius:.8rem;min-width:0;padding:1rem}.form-fieldset legend{color:var(--text);padding:0 .4rem;font-weight:700}.party-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;align-items:end;gap:.75rem;padding-bottom:1rem;display:grid}.checkbox-label{min-height:2.8rem;color:var(--text);white-space:nowrap;align-items:center;display:flex}.checkbox-label input{width:auto;min-height:auto}.contract-detail-grid{grid-template-columns:minmax(16rem,.8fr) minmax(0,2fr);align-items:start;gap:1rem;display:grid}.compact-grid{margin-top:.5rem}@media (max-width:42rem){.admin-header,.page-heading,.property-title-row,.property-card-heading,.activity-list li{flex-direction:column;align-items:stretch}.admin-nav{justify-content:flex-start}.form-grid,.property-meta,.detail-grid,.party-row,.contract-detail-grid{grid-template-columns:1fr}.section-heading-row,.party-list li{grid-template-columns:1fr;align-items:stretch}.section-heading-row{flex-direction:column}.inline-form{justify-items:start}.detail-wide{grid-column:auto}}
