:root{--navy:#1f3864;--gold:#c9a227;--cream:#f4f1e9;--ink:#2b2b2b;--brick:#8c1d18;--orange:#b85c1e;--forest:#3e5c2b;--grey:#8a8a82;--paper:#fff;--line:#d8d4c8}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.wrap{max-width:1280px;margin:0 auto;padding:0 0 60px}header.band{background:var(--navy);color:#fff;padding:26px 32px 20px}.wordmark{margin:0;font-family:Georgia,Times New Roman,serif;font-size:36px;font-weight:700}.tagline{letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:6px 0 0;font-family:Arial,sans-serif;font-size:11px}.gold-rule{background:var(--gold);border:none;height:3px;margin:0}.addr-strip{color:#d8deea;background:#182c4e;padding:10px 32px;font-family:Arial,sans-serif;font-size:12.5px}.content{padding:28px 28px 0}.note{background:var(--paper);border:1px solid var(--gold);border-left:4px solid var(--gold);margin-bottom:26px;padding:14px 16px;font-size:13px;line-height:1.55}.note b{color:var(--navy)}.ingest-bar{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--navy);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:26px;padding:12px 16px;font-size:13px;display:flex}.ingest-bar .meta{color:var(--grey)}.ingest-bar .meta b{color:var(--ink)}.ingest-bar .spacer{flex:1}.ingest-bar a.review-link{color:#fff;background:var(--brick);letter-spacing:.04em;text-transform:uppercase;border-radius:11px;padding:7px 12px;font-family:Arial,sans-serif;font-size:11px;font-weight:700}.filter-panel{background:var(--paper);border:1px solid var(--line);margin-bottom:26px;padding:16px 18px}.filter-panel h3{color:var(--navy);margin:0 0 12px;font-family:Georgia,serif;font-size:15px}.filter-actions{gap:8px;margin-bottom:14px;display:flex}.filter-actions button{padding:6px 12px;font-size:10px}.entity-group{margin-bottom:12px}.entity-group:last-child{margin-bottom:0}.entity-row{align-items:center;gap:8px;margin-bottom:6px;display:flex}.entity-row label{color:var(--navy);cursor:pointer;font-family:Georgia,serif;font-size:14px;font-weight:700}.property-list{flex-wrap:wrap;gap:10px 18px;margin-left:26px;display:flex}.property-item{align-items:center;gap:6px;display:flex}.property-item label{cursor:pointer;font-family:Arial,sans-serif;font-size:12.5px}.property-item.no-data label{color:var(--grey);font-style:italic}input[type=checkbox]{accent-color:var(--navy);cursor:pointer;width:14px;height:14px}.profile-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-bottom:30px;display:grid}.profile-card{background:var(--paper);border:1px solid var(--line);overflow:hidden}.profile-photo{background:#d8d4c8;height:140px;position:relative;overflow:hidden}.profile-photo iframe{border:0;width:100%;height:100%;display:block}.profile-photo .sold-badge{letter-spacing:.08em;color:#fff;pointer-events:none;background:#5a5a558c;justify-content:center;align-items:center;font-family:Arial,sans-serif;font-size:12px;font-weight:700;display:flex;position:absolute;inset:0}.profile-body{padding:14px 16px 16px}.profile-name{color:var(--navy);margin:0 0 2px;font-family:Georgia,serif;font-size:15px;font-weight:700}.profile-addr{color:var(--grey);margin:0 0 10px;font-family:Arial,sans-serif;font-size:11px}.profile-stats{grid-template-columns:1fr 1fr;gap:6px 10px;display:grid}.profile-stat .label{letter-spacing:.06em;text-transform:uppercase;color:var(--grey);font-family:Arial,sans-serif;font-size:9px}.profile-stat .val{color:var(--ink);font-family:Arial,sans-serif;font-size:12.5px;font-weight:700}.profile-stat .val.missing{color:var(--grey);font-style:italic;font-weight:400}.profile-note{color:var(--orange);margin-top:10px;font-family:Arial,sans-serif;font-size:10.5px;font-style:italic;line-height:1.4}.summary{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px;display:grid}.card{background:var(--cream);border:1px solid var(--line);padding:16px 18px 14px}.card .label{letter-spacing:.1em;text-transform:uppercase;color:var(--grey);font-family:Arial,sans-serif;font-size:10px}.card .num{color:var(--navy);margin-top:6px;font-family:Georgia,serif;font-size:28px;font-weight:700}.card .sub{color:var(--grey);margin-top:2px;font-size:11.5px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.toolbar h2{color:var(--navy);margin:0;font-family:Georgia,serif;font-size:21px;font-weight:700}.actions{gap:8px;display:flex}button{letter-spacing:.05em;text-transform:uppercase;background:var(--paper);border:1.5px solid var(--navy);color:var(--navy);cursor:pointer;padding:9px 14px;font-family:Arial,sans-serif;font-size:11px;font-weight:700;transition:background .15s,color .15s}button:hover,button.primary{background:var(--navy);color:#fff}button.primary:hover{background:var(--gold);border-color:var(--gold);color:var(--navy)}.table-wrap{background:var(--paper);border:1px solid var(--line);margin-bottom:34px;overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%;min-width:1080px}thead th{letter-spacing:.06em;text-transform:uppercase;color:var(--navy);text-align:left;border-bottom:2px solid var(--navy);white-space:nowrap;background:#fff;padding:11px 14px;font-family:Arial,sans-serif;font-size:10.5px;font-weight:700}tbody td{border-bottom:1px solid var(--line);vertical-align:top;background:#fff;padding:10px 14px;font-size:13px}tbody tr:hover td{background:var(--cream)}.rent-roll{min-width:1320px}.group-row td{border-bottom:1px solid var(--line);background:#fff;padding:0}.group-row:hover td{background:#fff}.group-head{border-left:3px solid var(--gold);background:linear-gradient(90deg,#eee7d8 0%,#f5f1e7 60%);align-items:baseline;gap:12px;padding:9px 16px;display:flex}.group-name{color:var(--navy);letter-spacing:.01em;font-family:Georgia,serif;font-size:15px;font-weight:700}.group-entity{text-transform:uppercase;letter-spacing:.07em;color:var(--grey);font-family:Arial,sans-serif;font-size:10px}.group-meta{color:var(--grey);margin-left:auto;font-family:Arial,sans-serif;font-size:11.5px}.group-meta b{color:var(--navy)}.group-meta.pill{color:inherit}.group-body td:first-child{border-left:3px solid #c9a22747}.group-body td{vertical-align:middle}.group-empty{color:var(--grey);font-size:12.5px;font-style:italic}.term-cell{color:var(--ink);min-width:150px;font-size:12px}.tenant-name{color:var(--ink);font-family:Georgia,serif;font-size:15px}.suite-tag{color:var(--grey);font-family:Arial,sans-serif;font-size:11.5px;font-weight:700}.prop-tag{color:var(--navy);font-family:Arial,sans-serif;font-size:11px;font-weight:700}.entity-tag{color:var(--grey);font-family:Arial,sans-serif;font-size:10px}.num-cell{text-align:right;font-family:Arial,sans-serif}.contact-td{white-space:nowrap}.contact-cell{align-items:center;gap:4px;display:inline-flex}.contact-input{color:#1f3864;background:0 0;border:1px solid #0000;border-radius:3px;width:130px;max-width:100%;padding:3px 6px;font-family:Arial,sans-serif;font-size:11px;transition:border-color .15s,background .15s}.contact-input::placeholder{color:#b9b3a4;font-style:italic}.contact-input:hover{background:#fbfaf6;border-color:#ddd6c6}.contact-input:focus{background:#fffdf7;border-color:#c9a227;outline:none}.contact-cell.err .contact-input{border-color:#cc3b3b}.contact-status{color:#9a927f;font-size:11px}.contact-status.ok{color:#4a7a3a}.contact-status.err{color:#cc3b3b;font-weight:700}.contact-td .muted{color:#b9b3a4;font-size:11px}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:14px 0 10px;display:grid}.review-field{border-left:2px solid var(--line);flex-direction:column;gap:2px;padding-left:9px;display:flex}.review-field.wide{grid-column:1/-1}.review-field.changed{border-left-color:var(--gold)}.review-label{letter-spacing:.05em;text-transform:uppercase;color:var(--navy);font-family:Arial,sans-serif;font-size:10px;font-weight:700}.review-cur{color:var(--grey);font-family:Arial,sans-serif;font-size:10.5px}.review-field input{color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:3px;width:100%;padding:6px 8px;font-family:Arial,sans-serif;font-size:13px}.review-field.changed input{border-color:var(--gold);background:#fffdf5}.review-field input:focus{border-color:var(--navy);outline:none}.review-checks{color:var(--ink);flex-wrap:wrap;gap:16px;margin-bottom:12px;font-family:Arial,sans-serif;font-size:12px;display:flex}.review-checks label{align-items:center;gap:6px;display:inline-flex}.review-error{color:#cc3b3b;background:#fdecec;border:1px solid #f3c9c9;border-radius:4px;margin-bottom:12px;padding:8px 10px;font-family:Arial,sans-serif;font-size:12.5px}.review-doc-link{color:var(--navy);border-bottom:1px solid var(--gold)}.review-resolved{opacity:.7;border-left:3px solid var(--line)}.review-resolved.applied{border-left-color:#4a7a3a}.review-resolved.rejected{border-left-color:#cc3b3b}.rules-box{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:4px;margin-bottom:20px}.rules-toggle,.fix-toggle{text-align:left;cursor:pointer;width:100%;color:var(--navy);background:0 0;border:none;padding:11px 14px;font-family:Arial,sans-serif;font-size:12.5px;font-weight:700}.rules-sub{color:var(--grey);font-weight:400}.rules-body,.fix-body{padding:0 14px 14px}.rules-help{color:var(--grey);margin:2px 0 8px;font-family:Arial,sans-serif;font-size:12px;line-height:1.5}.rules-textarea{width:100%;color:var(--ink);border:1px solid var(--line);resize:vertical;background:#fff;border-radius:4px;padding:9px 10px;font-family:Arial,sans-serif;font-size:13px}.rules-textarea:focus{border-color:var(--navy);outline:none}.fix-box{border-top:1px dashed var(--line);margin-top:4px}.fix-toggle{color:var(--grey);padding:10px 0 6px;font-weight:400}.fix-body{padding:0 0 4px}.fix-msg{color:var(--navy);margin:8px 0;font-family:Arial,sans-serif;font-size:12px}.pill{letter-spacing:.05em;text-transform:uppercase;color:#fff;white-space:nowrap;border-radius:11px;padding:4px 10px;font-family:Arial,sans-serif;font-size:10px;font-weight:700;display:inline-block}.pill.active{background:var(--forest)}.pill.watch{background:var(--gold);color:#3a2e00}.pill.action{background:var(--orange)}.pill.urgent,.pill.expired{background:var(--brick)}.pill.na{background:var(--grey)}.pill.nodata{background:#b7b2a0}.pill.mtm{background:#5b7a8c}.flag{color:var(--orange);margin-top:3px;font-family:Arial,sans-serif;font-size:10.5px;font-style:italic;display:block}.conf{letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;border:1px solid #0000;border-radius:9px;margin-left:6px;padding:2px 7px;font-family:Arial,sans-serif;font-size:8.5px;font-weight:700;display:inline-block}.conf.stale{color:#7a5b0b;border-color:var(--gold);background:#f6edd6}.conf.pending{color:#2f5060;background:#e6eef3;border-color:#5b7a8c}.profile-conf{margin:0 0 8px}.attention-wrap{background:var(--paper);border:1px solid var(--line);margin-bottom:34px}.attention-empty{color:var(--grey);padding:18px 16px;font-size:13px}.attention-row{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.attention-row:last-child{border-bottom:none}.attention-main{flex:1;min-width:0}.attention-title{color:var(--ink);font-family:Georgia,serif;font-size:14.5px}.attention-meta{color:var(--grey);margin-top:2px;font-family:Arial,sans-serif;font-size:11px}.attention-flag{color:var(--orange);margin-top:3px;font-size:11px;font-style:italic}footer.strip{background:var(--navy);color:#b9c4d9;margin-top:20px;padding:14px 32px;font-family:Arial,sans-serif;font-size:11.5px}footer.strip b{color:#fff}footer.strip .placeholder{color:var(--gold);font-style:italic}.login-shell{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--gold);width:100%;max-width:380px;padding:30px 30px 34px}.login-card .wordmark{color:var(--navy);font-size:26px}.login-card .tagline{color:var(--gold);margin-bottom:22px}.login-card h1{color:var(--navy);margin:0 0 18px;font-family:Georgia,serif;font-size:17px;font-weight:700}.login-field{margin-bottom:14px}.login-field label{letter-spacing:.08em;text-transform:uppercase;color:var(--grey);margin-bottom:5px;font-family:Arial,sans-serif;font-size:10px;display:block}.login-field input{border:1px solid var(--line);background:var(--cream);width:100%;color:var(--ink);padding:10px 12px;font-family:Arial,sans-serif;font-size:14px}.login-field input:focus{border-color:var(--navy);outline:none}.login-card button.primary{width:100%;margin-top:6px;padding:11px;font-size:12px}.login-error{border:1px solid var(--brick);color:var(--brick);background:#8c1d1814;margin-bottom:14px;padding:9px 11px;font-family:Arial,sans-serif;font-size:12px}.manage-links{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.manage-link{letter-spacing:.05em;text-transform:uppercase;border:1.5px solid var(--navy);color:var(--navy);background:var(--paper);cursor:pointer;padding:9px 14px;font-family:Arial,sans-serif;font-size:11px;font-weight:700;display:inline-block}.manage-link:hover{background:var(--navy);color:#fff}.manage-link.gold{border-color:var(--gold);background:var(--gold);color:var(--navy)}.manage-entity{color:var(--navy);margin:22px 0 10px;font-family:Georgia,serif;font-size:18px;font-weight:700}.manage-table td .sub{color:var(--grey);font-size:11px}.manage-table .row-actions{white-space:nowrap;align-items:center;gap:10px;display:flex}.manage-table .row-actions .btn-danger{padding:3px 9px;font-size:11px}.manage-table .row-actions a{color:var(--navy);border-bottom:1px solid var(--gold);font-family:Arial,sans-serif;font-size:11px;font-weight:700}.form-card{background:var(--paper);border:1px solid var(--line);margin-bottom:26px;padding:22px 24px 26px}.form-card h2,.form-card h3{color:var(--navy);margin:0 0 16px;font-family:Georgia,serif}.form-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px 18px;display:grid}.form-field{flex-direction:column;display:flex}.form-field.wide{grid-column:1/-1}.form-field label{letter-spacing:.06em;text-transform:uppercase;color:var(--grey);margin-bottom:5px;font-family:Arial,sans-serif;font-size:10px}.form-field input[type=text],.form-field input[type=number],.form-field input[type=date],.form-field textarea,.form-field select{border:1px solid var(--line);background:var(--cream);color:var(--ink);width:100%;padding:9px 11px;font-family:Arial,sans-serif;font-size:13.5px}.form-field textarea{resize:vertical;min-height:60px}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--navy);outline:none}.form-check{color:var(--ink);align-items:center;gap:7px;font-family:Arial,sans-serif;font-size:13px;display:flex}.form-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;display:flex}.form-actions .spacer{flex:1}.btn-danger{border-color:var(--brick);color:var(--brick);background:var(--paper)}.btn-danger:hover{background:var(--brick);color:#fff}.subhead{justify-content:space-between;align-items:center;margin:28px 0 12px;display:flex}.subhead h3{color:var(--navy);margin:0;font-family:Georgia,serif;font-size:18px}.header-bar{justify-content:space-between;align-items:flex-start;display:flex}.signout-btn{border:1.5px solid var(--gold);color:var(--gold);background:0 0;padding:7px 14px}.signout-btn:hover{background:var(--gold);color:var(--navy)}.tabbar{border-bottom:2px solid var(--navy);gap:4px;margin-bottom:26px;display:flex}.tabbar .tab{letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--line);color:var(--grey);cursor:pointer;background:0 0;border-bottom:none;margin-bottom:-2px;padding:10px 20px;font-family:Arial,sans-serif;font-size:12px;font-weight:700;transition:background .15s,color .15s}.tabbar .tab:hover{background:var(--cream);color:var(--navy)}.tabbar .tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.ledger{margin-bottom:34px}.ledger-yearnav{justify-content:center;align-items:center;gap:18px;margin-bottom:16px;display:flex}.ledger-yearnav .ledger-year{color:var(--navy);text-align:center;min-width:90px;font-family:Georgia,serif;font-size:26px;font-weight:700}.ledger-yearnav button{padding:7px 14px}.month-grid{grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:26px;display:grid}.month-cell{text-align:left;background:var(--paper);border:1px solid var(--line);cursor:pointer;text-transform:none;letter-spacing:normal;flex-direction:column;align-items:stretch;padding:10px 12px 11px;font-weight:400;transition:border-color .15s,box-shadow .15s;display:flex}.month-cell:hover{background:var(--paper);color:inherit;border-color:var(--gold)}.month-cell.active{border-color:var(--navy);box-shadow:inset 0 0 0 2px var(--navy)}.month-cell.active:hover{border-color:var(--navy)}.month-cell .mlabel{letter-spacing:.08em;text-transform:uppercase;color:var(--navy);align-items:center;gap:5px;font-family:Arial,sans-serif;font-size:11px;font-weight:700;display:flex}.month-cell .mdot{background:var(--gold);border-radius:50%;width:6px;height:6px;display:inline-block}.month-cell .mfig{color:var(--ink);margin-top:6px;font-family:Georgia,serif;font-size:16px;font-weight:700}.month-cell .msub{color:var(--grey);margin-top:1px;font-family:Arial,sans-serif;font-size:10px}.month-cell .mbar{background:var(--line);border-radius:2px;height:4px;margin-top:8px;display:block;overflow:hidden}.month-cell .mbar-fill{background:var(--orange);height:100%;display:block}.month-cell .mbar-fill.full{background:var(--forest)}.ledger-summary{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px;display:grid}.ls-card{background:var(--cream);border:1px solid var(--line);padding:14px 16px 12px}.ls-card .label{letter-spacing:.1em;text-transform:uppercase;color:var(--grey);font-family:Arial,sans-serif;font-size:10px;display:block}.ls-card .num{color:var(--navy);margin-top:6px;font-family:Georgia,serif;font-size:24px;font-weight:700;display:block}.ls-card .num.owed{color:var(--brick)}.num-cell .owed{color:var(--brick);font-weight:700}.link-btn{border:none;border-bottom:1px solid var(--gold);color:var(--navy);letter-spacing:normal;text-transform:none;cursor:pointer;background:0 0;padding:0 0 1px;font-family:Arial,sans-serif;font-size:11px;font-weight:700}.link-btn:hover{color:var(--brick);background:0 0}.ledger-editor-row td{background:var(--cream)}.ledger-editor{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));align-items:end;gap:12px 16px;display:grid}.ledger-editor-actions{grid-column:1/-1;gap:10px;display:flex}@media (max-width:800px){.month-grid{grid-template-columns:repeat(3,1fr)}.ledger-summary{grid-template-columns:1fr}}@media print{body{background:#fff}.signout-btn,.actions,.toolbar button,.filter-panel{display:none!important}table{min-width:100%}}@media (max-width:800px){.summary{grid-template-columns:repeat(2,1fr)}.content{padding:20px 16px 0}}.binder{max-width:900px;color:var(--ink);margin:0 auto;padding:20px;font-family:Arial,sans-serif}.print-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;display:flex}.print-bar .meta{color:var(--grey);font-size:12px}.binder-cover{align-items:center;min-height:55vh;padding:40px 0;display:flex}.cover-title{color:var(--navy);margin:0;font-family:Georgia,serif;font-size:44px;font-weight:700}.cover-sub{color:var(--gold);margin:8px 0 0;font-family:Georgia,serif;font-size:22px}.cover-meta{color:var(--grey);margin:2px 0;font-size:13px}.binder-section{margin-bottom:30px}.section-title{color:var(--navy);border-bottom:2px solid var(--gold);margin:0 0 12px;padding-bottom:6px;font-family:Georgia,serif;font-size:22px;font-weight:700}.binder-table{border-collapse:collapse;width:100%;margin:8px 0 18px;font-size:12px}.binder-table th{background:var(--navy);color:#fff;text-align:left;text-transform:uppercase;letter-spacing:.04em;padding:7px 9px;font-size:10px}.binder-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:6px 9px}.binder-metrics{flex-wrap:wrap;gap:8px 24px;margin:10px 0 14px;display:flex}.binder-metrics div{color:var(--ink);font-size:13px;font-weight:700}.binder-metrics div span{text-transform:uppercase;letter-spacing:.05em;color:var(--grey);font-size:9px;font-weight:400;display:block}.binder-prop{margin-bottom:30px}@media print{.print-hide{display:none!important}.binder{max-width:100%;padding:0}.binder-cover{page-break-after:always;min-height:92vh}.binder-section{page-break-inside:avoid}.binder-prop{page-break-before:always;page-break-inside:avoid}}
