/* Subscription and rent document experience */
.sidebar{overflow-y:auto;scrollbar-width:thin}.sidebar>.brand{margin-bottom:20px}.sidebar .nav{flex-shrink:0}.sidebar-bottom{margin-top:24px}
.subscription-status{margin:0 0 25px;padding:16px;border-radius:12px;border:1px solid #527461;background:linear-gradient(140deg,#2b5545,#244937);box-shadow:0 6px 18px #102c2329}
.subscription-status.trial{background:linear-gradient(140deg,#345a42,#264a39)}.subscription-status.expired,.subscription-status.suspended{background:#583c35;border-color:#8d6358}
.subscription-status .subscription-kicker{display:flex;justify-content:flex-start;align-items:center;gap:7px;font-size:11px;font-weight:600;color:#d5e7d5;letter-spacing:.2px}.subscription-status .status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b5df89;flex-shrink:0}
.subscription-count{display:block;font-size:17px;line-height:1.4;margin:8px 0 11px;letter-spacing:-.3px}.subscription-status .trial-meter{display:block;height:5px;background:#ffffff24;overflow:hidden;border-radius:8px;margin:0 0 13px}.subscription-status .trial-meter>span{display:block;height:100%;background:#c8e8a4;border-radius:8px}
.subscription-status .subscription-link{display:flex;justify-content:space-between;gap:5px;padding-top:10px;border-top:1px solid #ffffff24;font-size:11px;font-weight:500;color:#e1eedb}.subscription-status:hover{border-color:#b2d095}
.subscription-reminder{display:flex;align-items:center;gap:18px;margin:0 0 28px;padding:20px 24px;border:1px solid #d6e3cd;border-radius:12px;background:linear-gradient(110deg,#eff5e9,#fafcf8)}.reminder-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#dceacd;color:#3b5f34;font-size:24px;flex-shrink:0}.reminder-copy{flex:1}.reminder-heading{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.reminder-heading strong{font-size:15px}.reminder-heading span{font-size:11px;font-weight:600;background:#e0edcf;color:#48623a;border-radius:20px;padding:5px 9px}.reminder-copy p{font-size:13px;line-height:1.6;color:#66735f;margin:7px 0 0;max-width:680px}.subscription-reminder button{white-space:nowrap;font-size:12px;padding:11px 16px}.subscription-reminder.urgent{border-color:#efdbc2;background:#fff9f1}.urgent .reminder-symbol,.urgent .reminder-heading span{background:#f8e8d2;color:#865a24}
.billing-summary-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:22px}.billing-summary-strip>div{padding:19px 24px;background:white}.billing-summary-strip strong{display:block;margin-top:8px;font-size:21px;letter-spacing:-.4px}.filter-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}.filter-pills button{background:#e9eee9;color:#637469;padding:8px 15px;font-size:12px;border:1px solid transparent}.filter-pills button.selected{color:#244b35;background:#dcebcf;border-color:#bacda7}
.tenant-billing-dialog{width:min(950px,calc(100vw - 30px))}.tenant-billing-body{padding:24px}.tenant-billing-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;background:#f1f5ec;border-radius:10px;padding:20px}.tenant-billing-summary strong{display:block;font-size:25px;margin-top:5px}
.rent-document-dialog{width:min(900px,calc(100vw - 24px));background:#f0f3ef}.document-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1}.document-toolbar small{display:block;margin-top:4px;font-size:11px}.document-toolbar button{font-size:12px}.document-loading{padding:35px}.rent-document{background:white;color:#233d36;padding:46px;margin:24px;box-shadow:0 2px 16px #20362b0d;border:1px solid #e2e8df}.document-heading{display:flex;justify-content:space-between;gap:28px;border-bottom:2px solid #234b3b;padding-bottom:25px;margin-bottom:28px}.document-brand{display:block;font-size:12px;letter-spacing:2px;font-weight:800;color:#234b3b;margin-bottom:22px}.document-brand span{font-weight:400;color:#7b8c80;letter-spacing:1px}.document-heading h1{font-size:22px;letter-spacing:-.4px;margin:0 0 10px}.document-heading p{font-size:12px;line-height:1.7;margin:0;color:#687c6e}.document-reference{text-align:right;flex-shrink:0}.document-reference>span:first-child{font-size:10px;letter-spacing:1.5px;color:#788878}.document-reference h2{font-size:22px;margin:12px 0 18px}.document-state{font-size:10px;font-weight:700;letter-spacing:.8px;background:#edf3e7;padding:7px 10px;border-radius:4px;color:#45653a}.document-state.voided{background:#ffe7e2;color:#a43a28}.document-parties{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:30px}.document-label{font-size:10px;color:#7c897b;letter-spacing:1px}.document-parties h3{font-size:15px;margin:10px 0 6px}.document-parties p{font-size:12px;color:#6a796b;line-height:1.7}.rent-document dl{margin:0;font-size:12px}.rent-document dl>div{display:flex;justify-content:space-between;gap:20px;margin-bottom:10px}.rent-document dt{color:#68786a}.rent-document dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere}.document-lines{white-space:normal;font-size:12px}.document-lines th{background:#f0f4ed;font-size:10px;text-transform:uppercase;letter-spacing:.7px;padding:12px 14px}.document-lines td{padding:17px 14px}.document-lines td:last-child,.document-lines th:last-child{text-align:right}.document-lines small{font-size:10px}.document-totals{display:flex;justify-content:flex-end;margin:25px 0 35px}.document-totals dl{width:320px}.document-totals .total{border-top:1px solid #dce5d7;padding:14px 0;font-size:17px}.document-totals .total dt{color:#234b3b;font-weight:650}.receipt-details{display:flex;flex-wrap:wrap;gap:25px;margin:25px 0}.receipt-details span,.receipt-details strong{display:block;font-size:11px}.receipt-details span{color:#798777;margin-bottom:6px}.receipt-details strong{overflow-wrap:anywhere}.document-footer{border-top:1px solid #e3e9df;padding-top:22px;font-size:11px;line-height:1.7;margin-top:30px}.document-footer p{color:#71806e;max-width:520px;margin:8px 0}.document-footer>span{font-size:9px;color:#8a9484}.void-notice{padding:16px;background:#fff0eb;border:1px solid #f2c7ba;margin-bottom:25px;color:#933e2c;font-size:12px;line-height:1.6}
@media(max-width:760px){.sidebar>.brand{margin-bottom:15px}.subscription-status{max-width:100%;margin-bottom:18px}.subscription-status .subscription-kicker{font-size:12px}.subscription-reminder{gap:12px;padding:17px;flex-wrap:wrap}.reminder-symbol{display:none}.subscription-reminder button{margin-top:4px}.billing-summary-strip>div{padding:15px 12px}.billing-summary-strip strong{font-size:16px}.billing-summary-strip small{font-size:11px}.document-toolbar{flex-wrap:wrap;position:static}.rent-document{padding:22px;margin:12px}.document-heading{gap:16px;flex-wrap:wrap}.document-reference{text-align:left}.document-parties{grid-template-columns:1fr}.document-totals dl{width:100%}.tenant-billing-body{padding:16px}.tenant-billing-summary{flex-wrap:wrap}}
@media print{@page{size:A4;margin:15mm}body{background:white!important}body:has(.rent-document-dialog[open]) #app>.layout,body:has(.rent-document-dialog[open]) #app>#toast,body:has(.rent-document-dialog[open]) #app>dialog:not(.rent-document-dialog){display:none!important}dialog.rent-document-dialog{position:static!important;display:block!important;width:100%!important;max-width:none!important;max-height:none!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;overflow:visible!important;background:white!important}dialog::backdrop{display:none!important}.document-toolbar{display:none!important}.rent-document{border:0;margin:0;padding:0;box-shadow:none;font-size:11pt}.document-heading,.document-parties,.document-totals,.receipt-details,.document-footer,.void-notice,tr{break-inside:avoid}.document-parties{grid-template-columns:1fr 1fr}.document-heading{flex-wrap:nowrap}.document-reference{text-align:right}.document-totals dl{width:320px}.document-lines thead{display:table-header-group}.rent-document *{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

.rent-document{overflow-wrap:anywhere}.receipt-details>div{min-width:0;max-width:100%}
.audit-details{max-width:320px;white-space:normal;font-size:12px}.audit-details summary{cursor:pointer;color:var(--green)}.audit-details p{margin:10px 0 0;overflow-wrap:anywhere;color:var(--muted)}

.audit-details pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;font-size:12px;text-align:left;}

.terms-page{max-width:900px;margin:32px auto;padding:32px;background:var(--surface,#fff);border:1px solid #e1e7e4;border-radius:16px;color:#192d27;line-height:1.7}.terms-page h1{font-size:30px}.terms-page h2{font-size:19px;margin-top:28px}.terms-page .footnote{overflow-wrap:anywhere}.terms-page header{border-bottom:1px solid #e1e7e4;padding-bottom:24px}.terms-accept{border-top:1px solid #dce5df;margin-top:28px;padding-top:24px}.terms-accept label{display:flex;align-items:flex-start;gap:12px}.terms-accept input{width:20px;min-width:20px;height:20px;margin-top:5px}.terms-back{display:block;margin:24px}.audit-search{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:20px 0}.audit-search label{flex:1;min-width:240px}.audit-search input{display:block;width:100%}@media(max-width:640px){.terms-page{margin:12px;padding:20px}.terms-accept .form-actions{flex-wrap:wrap}}@media print{.terms-page{margin:0;border:0;max-width:none}.terms-page .no-print,.terms-back{display:none!important}body:has(.terms-page) .sidebar,body:has(.terms-page) .topbar{display:none}body:has(.terms-page) .layout,body:has(.terms-page) .workspace{display:block;margin:0}}
.platform-dashboard .panel{min-width:0}.platform-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:20px}.platform-status{border-left:4px solid #a9b4ac;background:#f5f7f5;padding:14px;border-radius:6px;display:grid;gap:6px}.platform-status.active{border-color:#287451}.platform-status.trial{border-color:#b98428}.platform-status.suspended{border-color:#b84747}.platform-status.expired{border-color:#65738b}.platform-status strong{font-size:28px}.platform-status small{color:#59675f}.platform-period{display:flex;gap:10px;align-items:center}.platform-period select{width:auto;min-height:44px}.platform-bars{display:flex;gap:8px;height:220px;align-items:stretch}.platform-bar-column{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.platform-bar-track{height:155px;width:100%;max-width:38px;display:flex;align-items:flex-end;background:#f0f4f1;border-radius:5px}.platform-bar-track>div{width:100%;background:#387459;border-radius:5px}.platform-bar-column strong{font-size:13px}.platform-bar-column small{font-size:11px}.platform-fee{font-size:30px;font-weight:700;overflow-wrap:anywhere}.platform-fee small{display:block;font-size:13px;font-weight:400;color:#59675f;margin-top:6px}.platform-shortcuts{display:grid;gap:12px;padding:20px}.platform-shortcuts button{text-align:left;min-height:44px;white-space:normal}.platform-pagination{display:flex;gap:16px;align-items:center;justify-content:flex-end;margin:20px 0}.platform-dashboard .panelhead{flex-wrap:wrap;gap:12px}.platform-dashboard .grid-two>*{min-width:0}@media(max-width:640px){.platform-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.platform-bars{gap:4px}.platform-bar-column small{font-size:10px}.platform-pagination{justify-content:space-between;gap:8px}.platform-period{width:100%;justify-content:space-between}.platform-fee{font-size:26px}}

.traffic-chart{display:flex;gap:3px;height:130px;margin:20px 0 8px}.traffic-chart>div{flex:1;min-width:0;display:flex;align-items:flex-end;background:#f2f5f2}.traffic-chart span{width:100%;background:#387459;min-height:0}
.lease-controls{padding:20px 26px}.lease-controls label{display:block;margin:12px 0}.lease-controls input,.lease-controls textarea,.lease-controls select{display:block;width:100%;padding:10px;border:1px solid #cbd8cf;border-radius:6px;font:inherit}.lease-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lease-form fieldset{border:0;padding:0}.lease-consent{display:flex!important;align-items:flex-start;gap:10px}.lease-consent input{width:20px;flex:0 0 20px}.lease-paper h1{font-size:25px}.lease-paper h2{font-size:17px;margin:22px 0 10px}.lease-paper p{line-height:1.65;font-size:13px}.lease-paper .lease-particulars>div{display:grid;grid-template-columns:36% 1fr;gap:16px;border-bottom:1px solid #e2e8df;padding:9px 0}.lease-particulars dt{font-weight:bold}.lease-particulars dd{margin:0;white-space:pre-wrap}.preserve-lines{white-space:pre-wrap}.signature-block{border-top:1px solid #aaa;padding-top:12px;margin-top:24px;break-inside:avoid}.signature-block p{margin:18px 0}.lease-watch{margin:24px 0}.lease-watch .task{gap:12px}.lease-controls fieldset{min-width:0}.lease-controls .note{display:block;line-height:1.6}
@media(max-width:650px){.lease-field-grid{grid-template-columns:1fr}.lease-controls{padding:16px}.lease-paper .lease-particulars>div{grid-template-columns:1fr;gap:4px}.lease-agreement-dialog .document-toolbar{flex-wrap:wrap}.lease-watch .task{align-items:flex-start;flex-wrap:wrap}}
@media print{.lease-controls{display:none!important}.lease-paper{color:#000}.lease-paper p,.lease-paper dl{font-size:10pt;line-height:1.45}.lease-paper h2{font-size:12pt;break-after:avoid}.lease-paper .lease-particulars>div{grid-template-columns:36% 1fr;break-inside:avoid}.lease-paper header{break-inside:avoid}.lease-paper .signature-block{break-inside:avoid}.lease-paper .document-footer{font-size:8pt;overflow-wrap:anywhere}}
@media print{body:has(.tenant-billing-dialog[open]) #app>.layout,body:has(.tenant-billing-dialog[open]) #toast,body:has(.tenant-billing-dialog[open]) .skip-link{display:none!important}.tenant-billing-dialog[open]{position:static!important;display:block!important;width:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;overflow:visible!important;background:white!important}.tenant-billing-dialog button,.tenant-billing-dialog .actions{display:none!important}.tenant-billing-dialog .tenant-billing-body{padding:0}.tenant-billing-dialog .table-scroll{overflow:visible}.tenant-billing-dialog table{width:100%;font-size:9pt}.tenant-billing-dialog th,.tenant-billing-dialog td{white-space:normal!important;overflow-wrap:anywhere;padding:8px}.tenant-billing-dialog tr{break-inside:avoid}.tenant-billing-dialog thead{display:table-header-group}.tenant-billing-dialog .tenant-billing-summary{display:flex;flex-wrap:wrap;gap:24px;margin:20px 0}}
