a{color:var(--ink)}.button,.btn,button.primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;background:var(--ink);color:#fff;padding:12px 18px;text-decoration:none;font-weight:600}.btn.secondary{background:#eef3ef;color:var(--ink);border:1px solid var(--line)}button.danger{background:#a32727;color:#fff}.login-card{max-width:540px;padding:44px;margin:7vh auto;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 80px #10261f0c}.login-card h1{font-family:Georgia,serif;font-weight:400;font-size:44px;line-height:1.1}.login-card p{line-height:1.6;color:var(--muted)}.login-card .brand{margin-bottom:32px}.eyebrow{display:block}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:20px 0}.toolbar input{flex:1;min-width:150px}.field,input,select,textarea{padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font:inherit}select{max-width:100%}input[type=checkbox]{width:auto}.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:24px;margin-bottom:20px}.panel h2{margin-top:0;font-family:Georgia,serif;font-weight:400}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:13px 12px;text-align:left;border-bottom:1px solid var(--line);font-size:14px}th{font-size:12px;letter-spacing:.04em;background:#f8faf9;white-space:nowrap}td.actions{display:flex;gap:5px;flex-wrap:wrap}td button,.link-button{padding:7px 9px;border:1px solid var(--line);border-radius:6px;background:white;color:var(--ink);font-size:12px}.tag{padding:4px 9px;border-radius:20px;background:#edf3ef;font-size:12px;white-space:nowrap}.error{color:#a32727}.empty{padding:50px 20px;text-align:center;color:var(--muted)}#toast{display:none;position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:500;padding:14px 20px;border-radius:10px;background:var(--ink);color:white;max-width:90vw;box-shadow:0 8px 30px #0002}#toast.error{background:#a32727;color:white}dialog{width:min(760px,95vw);max-height:90vh;border:1px solid var(--line);border-radius:16px;padding:28px;color:var(--ink)}dialog::backdrop{background:#07140e80;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-head h2{font-family:Georgia,serif;font-weight:400;margin-top:0}.dialog-head button{border:0;background:transparent;font-size:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}.form-grid label.wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;font-weight:400}.form-grid textarea{min-height:100px;resize:vertical}.form-grid label.check{flex-direction:row;align-items:center;font-weight:400}.form-grid label.check input{width:18px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.permissions{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:13px}.permissions label{display:flex;gap:8px;align-items:center}.sidebar-nav{overflow-y:auto}.sidebar-nav button{padding:.6rem .9rem}.sidebar-bottom{margin-top:auto}.sidebar-bottom button{width:100%;padding:10px;border:0;background:none;text-align:left}.tenant-chip select{border:0;padding:0;background:none;width:100%;font-size:13px}.sidebar .brand img{width:32px;height:32px}.workspace-header button{padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:white}.workspace-header a{font-size:13px}.content{max-width:1600px}.metric-card strong{font-size:30px}.notice{background:#f4f0e8;color:#735b35;padding:12px 16px;border-radius:8px;font-size:13px}.ledger-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:8px;margin:8px 0}.ledger-row input{min-width:0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.cards .panel{margin:0}.chat-log{max-height:420px;overflow:auto;display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.chat-message{padding:14px 18px;white-space:pre-wrap;border-radius:12px;background:#edf3ef;max-width:90%;line-height:1.6}.chat-message.user{align-self:flex-end;background:var(--ink);color:white}.chat-form{display:flex;gap:8px}.chat-form input{flex:1;min-width:0}.chat-form button{padding:10px;border:1px solid var(--line);border-radius:8px}.mobile-toggle{display:none}.property-image img{object-fit:cover;width:100%;height:100%}.property-image.placeholder{display:grid;place-items:center;background:#e5ece7;font-family:Georgia,serif;color:#62796c;font-size:30px}.public-header .brand small{max-width:180px}.public-site footer{padding:40px;text-align:center;color:var(--muted);font-size:13px}.property-modal .form-grid{margin-top:18px}.balance-negative{color:#a32727}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:15px;font-size:13px}.print-only{display:none}.detail-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.detail-list small{display:block;color:var(--muted)}.detail-list p{margin:3px 0}.workspace{min-width:0}.sidebar-nav button span{font-size:13px}.sidebar-nav button::before{content:' ';width:6px;height:6px;border:1px solid #a3b7ac;border-radius:2px;flex-shrink:0}.sidebar-nav button.active::before{background:var(--gold);border-color:var(--gold)}.public-header nav{justify-content:center}.welcome .button{white-space:nowrap}.property-body h3{margin-bottom:10px}
@media(max-width:800px){.mobile-toggle{display:block!important}.sidebar{display:none;position:fixed;inset:0 auto 0 0;z-index:200;width:260px;background:#fff;box-shadow:0 0 0 100vw #0005}.sidebar.open{display:flex}.app-shell{display:block}.workspace{margin-left:0}.workspace-header{padding:12px 16px;height:auto;min-height:64px}.content{padding:20px 16px}.welcome{align-items:flex-start;gap:14px;flex-direction:column}.welcome h1{font-size:32px}.metric-grid{grid-template-columns:1fr 1fr}.metric-card{padding:16px}.metric-card strong{font-size:24px}.form-grid{grid-template-columns:1fr}.permissions{grid-template-columns:1fr}.login-card{margin:24px 16px;padding:28px}.login-card h1{font-size:38px}.public-header{display:flex;justify-content:space-between;height:auto;min-height:76px;padding:16px}.public-header nav{display:none}.hero{min-height:520px;max-height:650px}.hero-copy{top:12%}.hero h1{font-size:44px}.search-row{flex-wrap:wrap}.search-panel{bottom:20px}.ledger-row{grid-template-columns:1.5fr 1fr 1fr auto;font-size:12px}.ledger-row input{padding:7px}.detail-list{grid-template-columns:1fr}.chat-form{flex-wrap:wrap}.chat-form input{flex-basis:65%}dialog{padding:20px}.toolbar{gap:7px}.table-wrap td{min-width:100px}}
@media print{body{background:#fff}.sidebar,.workspace-header,.toolbar,.welcome>.button,#toast,dialog,.pagination,.actions,button{display:none!important}.workspace{margin:0}.content{padding:0}.panel{border:0;padding:0}.table-wrap{overflow:visible}.print-only{display:block}.metric-grid{break-inside:avoid}th,td{font-size:11px;padding:7px}.login-card{box-shadow:none}}
.tenant-chip select{color:#fff}.tenant-chip select option{color:#10261f;background:#fff}.sidebar-bottom form button{color:#b9c9bf}.content{width:min(1500px,calc(100% - 4rem))}.form-grid .wide{grid-column:1/-1}.public-header .brand img{width:36px;height:36px}
@media(max-width:800px){.sidebar.open{background:#0d241c}.content{width:100%;padding:20px 16px}}
.public-header .text-button{display:flex}.form-grid label.check input{height:18px}.sidebar .brand>span:last-child{display:flex}.tenant-chip>div{display:flex}.sidebar nav span{display:inline}.sidebar-bottom{display:block}.sidebar-bottom>button{display:block}.user-mini div{display:flex}
@media(min-width:801px) and (max-width:900px){.app-shell{grid-template-columns:228px 1fr}.sidebar nav button{justify-content:flex-start}.sidebar .brand{justify-content:flex-start}}
@media(max-width:800px){.sidebar.open nav button{justify-content:flex-start}.sidebar.open .brand{justify-content:flex-start}.workspace-header>div:first-child>small{display:block;letter-spacing:0;max-width:190px;overflow:hidden;text-overflow:ellipsis}.sidebar-bottom{display:block}}
