:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#193744;background:#f5f8f8;font-size:16px}*{box-sizing:border-box}body{margin:0}a{color:#245c73}button,input,select,textarea{font:inherit}button{cursor:pointer}header{background:#143b4a;color:#fff;padding:18px clamp(18px,4vw,64px);display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{color:white;text-decoration:none;display:flex;align-items:center;gap:12px;font-size:1.15rem;font-weight:800}.brand-mark{display:grid;place-items:center;background:#eda653;color:#173e4c;border-radius:9px;width:38px;height:38px;font-size:1.55rem}nav{display:flex;align-items:center;gap:19px;flex-wrap:wrap}nav a{color:inherit;text-decoration:none;font-size:.93rem}nav .form{margin:0;display:block}nav .button{font-size:.85rem;padding:8px 12px}.admin-nav{padding:13px clamp(18px,4vw,64px);background:#e7eef0;color:#36515c;gap:8px}.admin-nav a{padding:8px 12px;border-radius:7px}.admin-nav .current{background:#143b4a;color:white}main{max-width:1240px;margin:auto;padding:35px 24px 70px;min-height:72vh}h1{font-size:clamp(2rem,4.5vw,3.2rem);letter-spacing:-.035em;line-height:1.13;margin:12px 0 18px}h2{font-size:1.38rem;letter-spacing:-.015em;margin:0 0 18px}h3{font-size:1.05rem;margin:24px 0 14px}p{line-height:1.65;color:#4c6670}small{font-size:.8rem;letter-spacing:.1em;font-weight:750;color:#985314}.intro{max-width:750px;padding:22px 0 50px}.intro p{max-width:630px;font-size:1.12rem}.button,.secondary{display:inline-block;text-decoration:none;padding:12px 17px;font-weight:750;border-radius:8px;border:1px solid transparent;text-align:center}.button{background:#e99b47;color:#19313b}.button:hover{background:#f4ae62}.secondary{background:white;border-color:#b4c7cc;color:#244d5d}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.actions .form{display:block;margin:0}.heading-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card,.panel,.metrics>div{background:white;border:1px solid #dce6e8;border-radius:12px;box-shadow:0 8px 22px #153b4807}.card{overflow:hidden}.space-top{padding:24px;background:#e2edf0;display:flex;align-items:center;justify-content:space-between;font-size:1.25rem;font-weight:800}.body{padding:24px}.body h2{margin-bottom:8px}.body p{margin:6px 0 16px}.body .button{width:100%}.pill{font-weight:750;white-space:nowrap;font-size:.8rem;padding:6px 10px;border-radius:50px;background:#e4f1e9;color:#285b45}.rate{font-size:1.85rem;font-weight:850;margin:15px 0}.rate small{font-weight:400;letter-spacing:0;font-size:.9rem;color:#647983}.panel{padding:26px;margin:22px 0}.narrow{max-width:580px;margin:35px auto}.columns{display:grid;grid-template-columns:1.35fr .9fr;gap:24px;align-items:start}.columns>.panel{min-width:0}.pair,.three{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form{display:grid;gap:17px;margin:16px 0}.form label,.inline label{display:grid;gap:7px;font-weight:650;font-size:.94rem}input,select,textarea{padding:11px 12px;min-height:46px;border:1px solid #b8c9cf;border-radius:7px;color:#193744;background:white;width:100%;min-width:0}textarea{resize:vertical;line-height:1.5}.check{display:flex!important;align-items:start;line-height:1.5;font-weight:400!important}.check input{width:18px;min-height:18px;flex-shrink:0;margin-top:3px}.inline{display:flex;align-items:end;gap:12px}.inline .button,.inline .secondary{white-space:nowrap}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:25px 0}.metrics.four{grid-template-columns:repeat(4,minmax(0,1fr))}.metrics>div{padding:22px}.metrics strong{font-size:1.7rem;display:block;margin-bottom:5px}.metrics span{font-size:.9rem;color:#617984}.scroll{overflow-x:auto;margin:5px -3px}table{border-collapse:collapse;min-width:650px;width:100%}th,td{padding:13px 10px;text-align:left;vertical-align:top;border-bottom:1px solid #e1e9ec}th{font-size:.77rem;letter-spacing:.065em;color:#5b7682;text-transform:uppercase}td{font-size:.93rem;line-height:1.5}.message{padding:16px 20px;border-radius:8px;margin:10px 0 20px}.error{background:#fff0ee;color:#8a3529;border:1px solid #e3b8ac}.success{background:#e5f5e9;color:#265c34;border:1px solid #b4d8bd}.muted,.caption{color:#657e88}.caption{font-size:.85rem;line-height:1.6;overflow-wrap:anywhere}.document-row{padding:16px 0;border-bottom:1px solid #e2e9eb;display:grid;gap:5px}.document-row span{font-size:.85rem;color:#6a8089}.pin{font-size:2.2rem;letter-spacing:.1em}.prose{max-width:850px;line-height:1.8}.document-text{white-space:normal}.legal{max-width:900px;margin:30px auto}.note{border-bottom:1px solid #dbe5e8;padding-bottom:20px}dl{display:grid;grid-template-columns:1fr 1.2fr;gap:12px}dt{color:#5b727e}dd{margin:0;overflow-wrap:anywhere}hr{border:0;border-top:1px solid #dbe5e8;margin:22px 0}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:25px 0}.gallery img{width:100%;height:250px;object-fit:cover;border-radius:11px}.empty{padding:30px;border:1px dashed #b7cbd2;grid-column:1/-1;border-radius:10px}details{margin:15px 0}summary{cursor:pointer;font-weight:650}footer{padding:30px 24px;background:#e8eff1;color:#5d7680;display:flex;justify-content:space-around;gap:15px;font-size:.85rem;flex-wrap:wrap}@media(max-width:900px){header{align-items:flex-start;flex-direction:column;gap:16px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.columns{grid-template-columns:1fr}.metrics.four{grid-template-columns:repeat(2,minmax(0,1fr))}.heading-row{align-items:flex-start;flex-direction:column}}@media(max-width:600px){main{padding:25px 16px 50px}nav{gap:12px}.admin-nav{gap:3px}.admin-nav a{font-size:.85rem;padding:8px}.cards,.pair,.three,.metrics,.metrics.four,.gallery{grid-template-columns:1fr}.panel{padding:20px}.inline{flex-wrap:wrap}.intro{padding-top:10px}.pin{font-size:1.8rem}}@media print{header,footer,.admin-nav,.no-print,.form{display:none!important}main{padding:0;max-width:none}.panel{box-shadow:none;border:0;margin:0;padding:0}.legal{max-width:none}.document-text{font-size:11pt}.caption{font-size:8pt}body{background:white;color:black}}
.metrics>.metric-link{display:block;padding:22px;background:#fff;border:1px solid #dce6e8;border-radius:12px;box-shadow:0 8px 22px #153b4807;color:inherit;text-decoration:none}.metrics>.metric-link:hover{border-color:#75a3b4;box-shadow:0 10px 25px #153b481a}.metrics>.metric-link:focus-visible{outline:3px solid #245c73;outline-offset:3px}.gate-action .form{display:inline-flex;margin:0 12px 0 0;vertical-align:middle}.gate-action .button{padding:8px 10px;font-size:.85rem}#rental-list,#past-due-list{scroll-margin-top:20px}

.report-chart-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:22px}.report-chart{min-width:0;background:#f8fbfb;border:1px solid #dce6e8;border-radius:10px;padding:18px}.report-chart h3{margin:0 0 12px}.chart-key{display:flex;gap:18px;margin:0 0 8px}.chart-key span:before{content:"";display:inline-block;width:11px;height:11px;margin-right:7px;border-radius:2px;background:#226b80}.chart-key .chart-key-expense:before{background:#e99b47}.chart-scroll{max-width:100%;overflow-x:auto}.chart-scroll svg{display:block;max-width:none}.donut-chart-layout{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.chart-legend{flex:1;list-style:none;margin:0;padding:0;min-width:190px}.chart-legend li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:.88rem}.chart-legend li strong{margin-left:auto}.chart-swatch{width:12px;height:12px;flex:none;border-radius:3px}@media(max-width:800px){.report-chart-grid{grid-template-columns:1fr}}
.owner-dashboard{margin:30px 0;padding:26px;background:#141e2f;color:#edf4ff;border-radius:16px}.owner-dashboard small{color:#9db0c9}.owner-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.owner-header h2{margin:6px 0}.owner-header p,.owner-chart p{color:#adbed0;margin:5px 0 15px;font-size:.9rem}.owner-report-link{color:#9ac2ff}.owner-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:22px 0}.owner-kpis a,.owner-chart{background:#222e41;border:1px solid #3b495c;border-radius:13px}.owner-kpis a{padding:19px;color:#eff5ff;text-decoration:none;display:grid;gap:6px}.owner-kpis a:hover,.owner-kpis a:focus-visible{border-color:#83acff}.owner-kpis a span{font-size:.82rem;color:#bbc8d9}.owner-kpis a strong{font-size:1.55rem}.owner-kpis a small{font-size:.77rem;color:#39d2a0}.owner-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.owner-chart{padding:20px;min-width:0}.owner-chart h3{margin:0;font-size:1.08rem}.owner-chart svg{width:100%;max-width:620px;height:auto}.owner-chart svg text{fill:#bbcadb;font-size:12px}.owner-data-line{display:flex;flex-wrap:wrap;gap:8px 15px;font-size:.77rem;color:#b9c8db}.owner-data-line strong{color:#eef5ff}.owner-donut{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.owner-donut svg{width:200px;flex:none}.owner-donut ul{list-style:none;padding:0;margin:0;flex:1;min-width:145px}.owner-donut li{display:flex;align-items:center;gap:8px;padding:6px 0}.owner-donut li i{width:12px;height:12px;border-radius:3px}.owner-donut li strong{margin-left:auto}.owner-type-bars{display:grid;gap:16px}.owner-type-bars>div{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:10px}.owner-track{height:13px;background:#3b495c;border-radius:9px;overflow:hidden}.owner-track i{display:block;height:100%;background:#19b88a;border-radius:9px}@media(max-width:850px){.owner-kpis{grid-template-columns:repeat(2,1fr)}.owner-chart-grid{grid-template-columns:1fr}}@media(max-width:550px){.owner-dashboard{padding:16px}.owner-kpis{grid-template-columns:1fr}.owner-header{display:block}.owner-type-bars>div{grid-template-columns:72px 1fr auto;font-size:.78rem}}

.owner-header-actions{display:flex;flex-wrap:wrap;gap:14px}.moveout-reversal{padding:16px;background:#e7f1f5;border-radius:9px;margin:18px 0}.moveout-reversal h3{margin:0 0 6px}

.site-chat{position:fixed;right:22px;bottom:20px;z-index:50;font-size:.95rem}.site-chat-toggle{border:0;background:#173e4c;color:#fff;padding:14px 19px;border-radius:40px;box-shadow:0 6px 28px #132c3f3d;font-weight:750}.site-chat-panel{position:absolute;right:0;bottom:62px;width:min(380px,calc(100vw - 32px));height:min(490px,calc(100vh - 95px));background:#fff;border:1px solid #c9dadd;border-radius:14px;box-shadow:0 14px 36px #12333b42;overflow:hidden;display:flex;flex-direction:column}.site-chat-panel[hidden]{display:none}.site-chat-top{display:flex;justify-content:space-between;align-items:center;background:#173e4c;color:#fff;padding:13px 17px}.site-chat-close{border:0;background:transparent;color:#fff;font-size:1.5rem;line-height:1;width:auto;padding:0 4px}.site-chat-messages{flex:1;overflow:auto;padding:15px;background:#f5f8f8}.site-chat-bubble{max-width:96%;width:fit-content;background:white;padding:10px 12px;margin:0 0 10px;border-radius:12px;white-space:pre-line;line-height:1.45;color:#193744}.site-chat-bubble.mine{margin-left:auto;background:#ddedf2}.site-chat-form{display:flex;padding:10px;gap:7px}.site-chat-form input{min-height:42px}.site-chat-form button{background:#e99b47;border:0;padding:0 13px;border-radius:8px;font-weight:700}.site-chat-hint{margin:0;padding:0 12px 10px;color:#617984;font-size:.75rem;line-height:1.25}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:500px){.site-chat{right:12px;bottom:12px}.site-chat-panel{bottom:60px}}

.attention-panel{border-color:#b3cdd3}.attention-list,.activity-list{display:grid;gap:9px}.attention-item{display:flex;gap:12px;align-items:center;color:#193744;text-decoration:none;padding:11px 13px;border:1px solid #d8e4e7;border-radius:9px}.attention-item:hover{background:#f2f8f9}.attention-item span:nth-child(2){flex:1}.attention-item small{display:block;margin-top:3px;color:#59717a;letter-spacing:0}.attention-marker{width:10px;height:10px;border-radius:50%;background:#2c8496;flex:none}.attention-marker.attention-urgent{background:#c75238}.activity-item{display:flex;gap:14px;padding:10px 0;border-bottom:1px solid #e4edf0}.activity-item time{min-width:150px;color:#607b86}.moveout-checks{background:#f5f9fa;padding:17px;border-radius:9px}.moveout-checks .check{margin:10px 0}.closeout-totals{display:grid;grid-template-columns:1fr auto;gap:10px 24px;max-width:650px}.closeout-totals dt,.closeout-totals dd{padding:8px 0;margin:0;border-bottom:1px solid #e3eaec}@media(max-width:650px){.activity-item{display:grid;gap:4px}.attention-item{align-items:flex-start}}

/* Rental and availability badges across the admin and customer pages. */
.pill.pill-green{background:#e4f1e9;color:#245941;border:1px solid #c2e0d0}
.pill.pill-yellow{background:#fff2c2;color:#765000;border:1px solid #e7ca73}
.pill.pill-red{background:#fbe5e5;color:#9c2828;border:1px solid #ecc2c2}
.pill.pill-neutral{background:#e9eef0;color:#36505b;border:1px solid #cad9dd}
