:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary:#0f4c5c;--color-primary-hover:#083b49;--color-primary-dark:#083b49;--color-surface:#fff;--color-surface-muted:#f6f9fa;--color-background:#edf3f5;--color-border:#bac9cf;--color-input-border:#8da3ac;--color-text:#172126;--color-muted:#52636b;--color-focus-ring:#0f4c5c59;--color-success:#136b3b;--color-success-bg:#e7f6ec;--color-danger:#9b1c1c;--color-danger-bg:#feeeee;--color-danger-hover:#821717;--color-info:#0b6074;--color-info-bg:#e7f5f8;--color-info-border:#9bcbd5;--color-warning:#750;--color-warning-bg:#fff3d6;--color-warning-border:#dec27a;--color-success-border:#92ceaa;--color-danger-border:#efaaaa;--color-sidebar-bg:#0b3d4a;--shadow-card:0 2px 8px #083b490d;--shadow-floating:0 8px 20px #083b491a;--font-data:16px;--font-body:15px;--font-label:14px;--font-button:15px;--font-card-title:16px;--font-section-title:18px;--radius:8px}*{box-sizing:border-box}body{background:var(--color-background);min-width:320px;color:var(--color-text);font-family:Arial,Helvetica,sans-serif;font-size:var(--font-body);margin:0;line-height:1.5}a{color:var(--color-primary)}.site-header{background:var(--color-primary);color:#fff}.site-header__inner,.page-shell{width:min(1180px,100% - 32px);margin:0 auto}.site-header__inner{justify-content:space-between;align-items:center;gap:20px;min-height:64px;display:flex}.brand{color:#fff;font-size:var(--font-card-title);font-weight:700;text-decoration:none}.main-nav{flex-wrap:wrap;gap:4px;display:flex}.main-nav a{color:#fff;font-size:var(--font-body);border-radius:6px;padding:9px 12px;font-weight:600;text-decoration:none}.main-nav a:hover,.main-nav a.is-active{background:#ffffff2e}.user-menu{flex-shrink:0;align-items:center;gap:10px;display:flex}.user-menu__identity{font-size:var(--font-label);font-weight:700}.user-menu__logout{font-size:var(--font-label);background:0 0;border-color:#ffffffb3;padding:8px 10px}.user-menu__logout:hover{background:#ffffff2e;border-color:#fff}.auth-shell{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;max-width:440px;padding:28px;box-shadow:0 12px 30px #083b491a}.auth-brand{color:var(--color-primary);font-size:var(--font-card-title);letter-spacing:.02em;font-weight:700}.auth-subtitle{color:var(--color-muted);font-size:var(--font-body);margin:4px 0 24px}.auth-title{font-size:var(--font-section-title);margin:0 0 18px}.auth-form{gap:16px;display:grid}.auth-form button{width:100%}.page-shell{padding:32px 0 48px}.page-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px 24px;margin-bottom:22px;display:flex}.page-heading h1{letter-spacing:-.01em;margin:0;font-size:26px;line-height:1.2}.section-title{font-size:var(--font-section-title);margin:0;line-height:1.3}.page-heading p,.muted{color:var(--color-muted);font-size:var(--font-body);margin:4px 0 0}.card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:10px;margin-bottom:20px;padding:22px}.card-title{font-size:var(--font-card-title);margin:0 0 14px;line-height:1.3}.button,button{background:var(--color-primary);border:1px solid var(--color-primary);color:#fff;cursor:pointer;font-size:var(--font-button);text-align:center;border-radius:7px;min-height:40px;padding:9px 14px;font-weight:700;line-height:1.2;text-decoration:none;display:inline-block}.button:hover,button:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.button:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:disabled,.button[aria-disabled=true]{background:var(--color-border);border-color:var(--color-border);color:var(--color-muted);cursor:not-allowed;opacity:.8}.button--secondary{background:var(--color-surface);border-color:var(--color-primary);color:var(--color-primary)}.button--secondary:hover{background:var(--color-surface-muted)}.notification-action{margin-top:8px;padding:6px 9px;font-size:14px}.notification-email-body{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius);font-family:inherit;font-size:var(--font-body);white-space:pre-wrap;margin:0;padding:16px;line-height:1.6;overflow-x:auto}.button--danger{background:var(--color-danger);border-color:var(--color-danger)}.button--danger:hover{background:var(--color-danger-hover);border-color:var(--color-danger-hover)}.button-row{flex-wrap:wrap;gap:12px;display:flex}.form-grid,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.form-field{gap:6px;display:grid}.form-field--full,.detail-item--full{grid-column:1/-1}label,.field-label,.detail-label{font-size:var(--font-label);margin-bottom:6px;font-weight:700;display:block}.form-field label{margin-bottom:0}input,select,textarea{background:var(--color-surface);border:1px solid var(--color-input-border);color:var(--color-text);font:inherit;font-size:var(--font-body);border-radius:6px;width:100%;padding:10px 11px}input[type=checkbox],input[type=radio]{accent-color:var(--color-primary);width:auto}textarea{resize:vertical;min-height:96px}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);outline:2px solid var(--color-focus-ring);outline-offset:1px}input::placeholder,textarea::placeholder{color:var(--color-muted);opacity:.8}.form-help,.field-error{font-size:var(--font-label);margin-top:5px;display:block}.form-help{color:var(--color-muted)}.field-error{color:var(--color-danger);font-weight:700}.detail-value{font-size:var(--font-data);margin:0}.table-wrap{overflow-x:auto}.report-filter{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.report-filter .form-field{flex:220px;max-width:320px}.report-filter button{flex:none}.report-heading{margin-bottom:14px}.report-table__subrow td{background:var(--color-surface-muted)}.report-empty{color:var(--color-muted)}.report-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.statement-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.report-total-value{font-size:var(--font-data);margin-top:3px;display:block}.statement-table{min-width:1120px}.statement-money-cell{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.statement-context-cell{min-width:220px}.billing-preview-table{min-width:980px}.billing-history-table{min-width:680px}.billing-confirmation{align-items:flex-start;gap:8px;display:flex}.billing-confirmation input{flex:none;width:auto;margin-top:3px}.billing-submit-row{margin-top:18px}table{border-collapse:collapse;width:100%;min-width:720px}.page-shell table:not(.invoice-main-table):not(.statement-print-table) thead{background:var(--color-surface-muted)}.page-shell table:not(.invoice-main-table):not(.statement-print-table) tbody tr:nth-child(2n){background:color-mix(in srgb, var(--color-surface-muted) 58%, var(--color-surface))}.page-shell table:not(.invoice-main-table):not(.statement-print-table) tbody tr:hover{background:color-mix(in srgb, var(--color-primary) 5%, var(--color-surface))}th,td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:13px 12px}th{color:var(--color-text);font-size:var(--font-label);font-weight:700}td{font-size:var(--font-body)}.number-cell{font-size:var(--font-data);font-variant-numeric:tabular-nums}.report-money-cell,.statement-money-cell{text-align:right}.page-shell a:not(.button):hover{color:var(--color-primary-dark);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.status-pill{font-size:var(--font-label);white-space:nowrap;border-radius:999px;align-items:center;padding:5px 9px;font-weight:700;line-height:1.2;display:inline-flex}.status-available,.status-active{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success)}.status-occupied,.status-maintenance,.status-ended,.status-unavailable{background:var(--color-surface-muted);border:1px solid var(--color-border);color:var(--color-muted)}.alert{border-radius:var(--radius);font-size:var(--font-body);margin-bottom:18px;padding:12px 14px;font-weight:600}.alert--success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success)}.alert--error{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger)}.alert--info{background:var(--color-info-bg);border:1px solid var(--color-info-border);color:var(--color-info)}.alert--warning{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning)}.empty-state{background:var(--color-surface-muted);border:1px dashed var(--color-border);color:var(--color-muted);font-size:var(--font-body);border-radius:8px;margin:0;padding:14px 16px}.payment-search-form{margin-top:18px}.tenant-search-form{margin-bottom:18px}.payment-history-allocations{margin:0;padding-left:22px}.payment-search-results{border-top:1px solid var(--color-border);margin-top:22px;padding-top:18px}.payment-search-result{border:1px solid var(--color-border);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:18px;margin-top:12px;padding:14px;display:flex}.payment-search-result strong{font-size:var(--font-data)}.payment-tenancy-list{margin:8px 0 0;padding-left:22px}.payment-selected-tenant{margin-top:18px}.payment-allocation-heading{justify-content:space-between;align-items:flex-end;margin-top:26px;display:flex}.payment-allocation-table{min-width:1180px}.payment-allocation-input{min-width:138px}.payment-form-error{margin-top:14px}.payment-form-summary{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius);grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;padding:16px;display:grid}.payment-form-summary strong{font-size:var(--font-data);margin-top:4px;display:block}.payment-submit-row{margin-top:18px}.status-unpaid{background:var(--color-surface-muted);border:1px solid var(--color-border);color:var(--color-muted)}.status-partially_paid,.status-partially-paid{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning)}.status-paid{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success)}.status-cancelled{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);color:var(--color-danger)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=700px){.payment-search-result{flex-direction:column;align-items:flex-start}.payment-form-summary,.statement-totals{grid-template-columns:1fr}.site-header__inner{flex-direction:column;align-items:flex-start;gap:8px;padding:14px 0}.main-nav,.user-menu{width:100%}.main-nav a{text-align:center;flex:auto}.form-grid,.detail-grid{grid-template-columns:1fr}.form-field--full,.detail-item--full{grid-column:auto}}.invoice-preview-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;display:flex}.invoice-preview-actions h1{font-size:var(--font-section-title);margin:0;line-height:1.3}.invoice-preview-actions p{color:var(--color-muted);font-size:var(--font-body);margin:4px 0 0}.invoice-preview-canvas{background:#dfe4e6;padding:18px;overflow-x:auto}.invoice-sheet{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#000;background:#fff;flex-direction:column;width:210mm;min-height:297mm;margin:0 auto;padding:15mm 15mm 13mm;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:1.2;display:flex}.invoice-top{grid-template-columns:minmax(0,60fr) minmax(0,40fr);gap:5mm;min-height:0;display:grid}.invoice-header-art{align-items:flex-start;gap:3mm;width:100mm;min-height:15.915mm;display:flex}.invoice-header-logo{width:16mm;height:auto;display:block}.invoice-header-jawi{width:81mm;height:auto;margin-top:1.2mm;display:block}.invoice-company-name{letter-spacing:-.6px;margin-top:1.5mm;margin-bottom:1mm;font-size:12.5px;font-weight:700;line-height:1.15}.invoice-company-name span{white-space:nowrap;display:block}.invoice-company-address{white-space:pre-line;max-width:90mm;font-size:12px;font-weight:400;line-height:1.2}.invoice-company-contact{white-space:nowrap;gap:4mm;margin-top:1mm;font-size:12.5px;font-weight:400;line-height:1.2;display:flex}.invoice-contact-label{font-weight:700}.invoice-identity{text-align:right;padding-top:4mm}.invoice-identity h1{letter-spacing:.3px;margin:.75mm 0 1mm;font-size:24px;line-height:1}.invoice-gst-registration{white-space:nowrap;margin:0 0 1mm;font-size:12px;font-weight:400;line-height:1.15}.invoice-gst-registration span{font-weight:700}.invoice-identity-row{grid-template-columns:minmax(0,1fr) 30mm;max-width:64mm;margin-left:auto;font-size:12px;line-height:1.15;display:grid}.invoice-identity-row>span{border:.5px solid #444;min-height:5.2mm;padding:.5mm 1mm}.invoice-identity-row>span:first-child{text-align:left;border-right:0;font-weight:700}.invoice-identity-row>span:last-child{font-variant-numeric:tabular-nums;text-align:center;font-size:12.5px}.invoice-recipient{min-height:0;margin:4mm 0 3mm}.invoice-recipient-label{color:#fff;background:#555;width:38mm;padding:.35mm 1mm;font-size:12px;font-weight:700;display:inline-block}.invoice-recipient-name{margin-top:2mm;font-size:13px;font-weight:700;line-height:1.25}.invoice-recipient-address{white-space:pre-line;margin-top:2mm;font-size:12.5px;font-weight:400;line-height:1.3}.invoice-main-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0}.invoice-main-table__amount-column{width:28mm}.invoice-main-table th,.invoice-main-table td{color:#000;border:.75px solid #3d3d3d;padding:1.25mm;font-size:12.5px}.invoice-main-table th{color:#fff;text-align:center;background:#555;padding:.8mm 1mm;font-size:12px;font-weight:700}.invoice-description{vertical-align:top;white-space:pre-line;height:74mm;line-height:1.35}.invoice-line-amount{font-variant-numeric:tabular-nums;text-align:right;vertical-align:top;white-space:nowrap;font-size:13px!important}.invoice-total-block{width:53mm;margin-top:0;margin-left:auto}.invoice-total-row{grid-template-columns:minmax(0,1fr) 22mm;min-height:4.5mm;font-size:12px;line-height:1.1;display:grid}.invoice-total-row>span{border-bottom:.75px solid #3d3d3d;padding:.3mm .75mm}.invoice-total-row>span:first-child{font-weight:700}.invoice-total-row>span:last-child{font-variant-numeric:tabular-nums;text-align:right;background:0 0}.invoice-total-row--grand>span{border-top:.75px solid #3d3d3d;font-weight:700}.invoice-bottom{justify-content:space-between;min-height:31mm;margin-top:-4mm;display:flex}.invoice-prepared{width:58%;font-size:12px;font-weight:700}.invoice-signature-space{min-height:22mm}.invoice-signature-line{border-top:.75px solid #3d3d3d;width:53mm;height:1px}.invoice-bank{align-self:flex-end;width:53mm;font-size:12px;line-height:1.15}.invoice-bank strong{font-size:12px;display:block}.invoice-footer{text-align:center;margin-top:22.5mm;font-size:12px;line-height:1.2}.invoice-print-body{background:#fff}@media (width<=700px){.invoice-preview-canvas{padding:8px}}@page{size:A4 portrait;margin:15mm 15mm 13mm}@media print{html,body{width:auto;background:#fff!important;min-width:0!important}.site-header,.no-print,.invoice-preview-actions{display:none!important}.page-shell{width:auto!important;margin:0!important;padding:0!important}.invoice-preview-canvas{background:#fff!important;padding:0!important;overflow:visible!important}.invoice-sheet{width:180mm;min-height:269mm;padding:0;box-shadow:none!important;margin:0!important}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.report-table{min-width:1320px}.report-table th,.report-table td{vertical-align:top}.report-table th{text-align:center}.report-period-label{font-size:var(--font-label);font-weight:400}.report-receipt-links{color:var(--color-muted);font-size:var(--font-label)}.report-print-page{background:#fff;min-width:0}.report-print-shell{width:min(100%,1440px);margin:0 auto}.report-print-actions{justify-content:flex-end;align-items:center;gap:10px;margin:18px auto;display:flex}.report-print-header{margin:0 0 16px}.report-print-header h1{margin:0;font-size:20px;line-height:1.25}.report-print-header p{font-size:var(--font-body);margin:4px 0 0}.report-print-sheet{width:100%}@page rental-payment-report{size:A4 landscape;margin:12mm}@media print{.report-print-page{page:rental-payment-report}.report-print-page,.report-print-page body{color:#000!important;background:#fff!important;width:auto!important;min-width:0!important}.report-print-shell,.report-print-sheet{width:auto!important;margin:0!important}.report-print-header{margin-bottom:8px}.report-print-header h1{font-size:18px}.report-print-header p{font-size:14px}.report-print-page .report-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0;font-size:14px}.report-print-page .report-table th,.report-print-page .report-table td{color:#000;overflow-wrap:anywhere;border:.5pt solid #3d3d3d;padding:5px 6px;font-size:14px;line-height:1.25}.report-print-page .report-table thead{display:table-header-group}.report-print-page .report-table tr{break-inside:avoid;page-break-inside:avoid}.report-print-page .report-table__subrow td{background:#fff}.report-print-page .report-table a{color:inherit;text-decoration:none}.report-print-page .report-col-bil{width:6%}.report-print-page .report-col-name{width:18%}.report-print-page .report-col-rent{width:8%}.report-print-page .report-col-receipt{width:11.333%}.report-print-page .report-totals{border:0;border-radius:0;margin-top:10px;padding:0}.report-print-page .report-total-value{font-size:16px}.report-print-page .report-screen-only,.report-print-page .no-print,.report-print-page .report-print-actions{display:none!important}}.report-tenant-name{font-weight:700}.report-money-cell{text-align:right;white-space:nowrap}@page rental-payment-report{size:A4 landscape;margin:8mm}@media print{.report-print-page{page:rental-payment-report}.report-print-page .report-print-shell,.report-print-page .report-print-sheet,.report-print-page .table-wrap{width:auto!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important}.report-print-page .report-table{border-collapse:collapse;table-layout:fixed;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:100%;min-width:0;font-size:12px}.report-print-page .report-table th,.report-print-page .report-table td{color:#000;overflow-wrap:normal;vertical-align:middle;border:1px solid #9a9a9a;padding:4px 5px;font-size:12px;line-height:1.2}.report-print-page .report-table th{text-align:center;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#d9e3f0;font-weight:700}.report-print-page .report-table thead{display:table-header-group}.report-print-page .report-table tfoot{break-inside:avoid;page-break-inside:avoid;display:table-row-group}.report-print-page .report-table tr{break-inside:avoid;page-break-inside:avoid}.report-print-page .report-table td.report-bil-cell{text-align:center;vertical-align:top}.report-print-page .report-table td.report-tenant-name{text-align:left;vertical-align:top;font-weight:700;line-height:1.18}.report-print-page .report-table td.report-rent-cell{vertical-align:top}.report-print-page .report-table td.report-receipt-date{text-align:center}.report-print-page .report-table td.report-receipt-note{text-align:left}.report-print-page .report-table .report-money-cell{overflow-wrap:normal;text-align:right;white-space:nowrap}.report-print-page .report-table .report-empty-cell{background:#fff}.report-print-page .report-table .report-total-row td{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#e8e8e8;font-weight:700}.report-print-page .report-table .report-total-label-cell{text-align:center}.report-print-page .report-table--dual-period .report-col-bil{width:3%}.report-print-page .report-table--dual-period .report-col-name{width:29%}.report-print-page .report-table--dual-period .report-col-rent{width:9%}.report-print-page .report-table--dual-period .report-col-receipt-date{width:7%}.report-print-page .report-table--dual-period .report-col-receipt-money{width:6.5%}.report-print-page .report-table--dual-period .report-col-receipt-note{width:16%}.report-print-page .report-period-label{font-size:12px}.report-print-page .report-print-actions,.report-print-page .report-screen-only,.report-print-page .no-print{display:none!important}}.statement-print-page{background:#fff;min-width:0}.statement-print-shell{width:min(100%,1180px);margin:0 auto}.statement-print-actions{justify-content:flex-end;align-items:center;gap:10px;margin:18px auto;display:flex}.statement-print-sheet{background:#fff;padding:8px 0 24px}.statement-print-header{border-bottom:2px solid #1f4d5b;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:18px;padding-bottom:14px;display:flex}.statement-print-issuer{align-items:flex-start;gap:12px;max-width:62%;display:flex}.statement-print-logo{object-fit:contain;width:48px;height:48px}.statement-print-company-name,.statement-print-address,.statement-print-contact,.statement-print-title-block p{margin:0}.statement-print-company-name{font-size:15px;font-weight:700;line-height:1.25}.statement-print-address,.statement-print-contact,.statement-print-title-block p{color:var(--color-muted);margin-top:3px;font-size:13px;line-height:1.35}.statement-print-title-block{text-align:right}.statement-print-title-block h1{margin:0;font-size:20px;line-height:1.2}.statement-print-tenant{border:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin-bottom:18px;padding:12px 14px;display:grid}.statement-print-tenant>div{gap:2px;display:grid}.statement-print-label{color:var(--color-muted);text-transform:uppercase;font-size:13px;font-weight:700}.statement-print-tenant strong{font-size:15px}.statement-print-table{border-collapse:collapse;table-layout:fixed;width:100%}.statement-print-table th,.statement-print-table td{overflow-wrap:anywhere;vertical-align:top;border:1px solid #9a9a9a;padding:6px 7px;font-size:13px;line-height:1.3}.statement-print-table th{text-align:left;background:#d9e3f0;font-weight:700}.statement-print-col-date{width:10%}.statement-print-col-context{width:19%}.statement-print-col-reference{width:13%}.statement-print-col-description{width:28%}.statement-print-col-money{width:10%}.statement-print-money{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right!important}.statement-print-table thead{display:table-header-group}.statement-print-table tfoot{display:table-row-group}.statement-print-table tfoot th,.statement-print-table tfoot td{background:#e8e8e8;font-weight:700}.statement-print-table tr{break-inside:avoid;page-break-inside:avoid}.statement-print-empty{color:var(--color-muted);text-align:center}@page tenant-statement{size:A4 portrait;margin:12mm}@media print{.statement-print-page{page:tenant-statement}.statement-print-page,.statement-print-page body{color:#000!important;background:#fff!important;width:auto!important;min-width:0!important}.statement-print-shell,.statement-print-sheet{width:auto!important;max-width:none!important;margin:0!important;padding:0!important}.statement-print-actions,.statement-print-page .no-print{display:none!important}.statement-print-header{border-bottom-width:1px;margin-bottom:10px;padding-bottom:8px}.statement-print-logo{width:38px;height:38px}.statement-print-company-name{font-size:12px}.statement-print-address,.statement-print-contact,.statement-print-title-block p{font-size:11px}.statement-print-title-block h1{font-size:16px}.statement-print-tenant{gap:6px 12px;margin-bottom:10px;padding:7px 9px}.statement-print-label{font-size:11px}.statement-print-tenant strong{font-size:12px}.statement-print-table th,.statement-print-table td{overflow-wrap:normal;padding:4px 5px;font-size:11px;line-height:1.2}.statement-print-table th{text-align:center}.statement-print-table tfoot{break-inside:avoid;page-break-inside:avoid}}.app-shell{grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{background:var(--color-sidebar-bg);color:#fff;z-index:20;flex-direction:column;min-height:100vh;padding:24px 16px 18px;display:flex;position:sticky;top:0;overflow-y:auto}.app-sidebar__brand{border-bottom:1px solid #fff3;margin-bottom:20px;padding:0 10px 20px}.sidebar-brand{color:#fff;flex-direction:column;gap:2px;text-decoration:none;display:inline-flex}.sidebar-brand__name{letter-spacing:.01em;font-size:20px;font-weight:700}.sidebar-brand__context{color:#c7e2e8;letter-spacing:.08em;font-size:14px;font-weight:700}.sidebar-nav{flex-direction:column;gap:6px;display:flex}.sidebar-nav__item,.sidebar-module__toggle,.sidebar-future-module{color:#f5fbfc;border-radius:6px;font-size:15px;line-height:1.3;text-decoration:none}.sidebar-nav__item{padding:11px 12px;display:block}.sidebar-nav__item:hover,.sidebar-nav__item.is-active,.sidebar-module__toggle:hover,.sidebar-module__toggle.is-active{color:#fff;background:#ffffff26}.sidebar-nav__item.is-active,.sidebar-module__toggle.is-active{box-shadow:inset 3px 0 #9edfe6}.sidebar-nav__item:focus-visible,.sidebar-module__toggle:focus-visible,.sidebar-brand:focus-visible,.sidebar-user__logout:focus-visible{outline-offset:2px;outline:2px solid #fff}.sidebar-control:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sidebar-module{margin-top:10px}.sidebar-module__toggle{text-align:left;background:0 0;border:1px solid #0000;justify-content:space-between;align-items:center;width:100%;padding:11px 12px;font-weight:700;display:flex}.sidebar-module__chevron{font-size:18px;line-height:1}.sidebar-submenu{border-left:2px solid #c7e2e873;margin:4px 0 4px 12px;padding-left:8px;display:none}.sidebar-submenu.is-open{display:block}.sidebar-nav__item--nested{color:#d9edf0;padding:9px 12px}.sidebar-nav__item--nested.is-active{color:#083b49;background:#e0f1f3;font-weight:700}.sidebar-future-modules{border-top:1px solid #fff3;gap:6px;margin-top:16px;padding-top:16px;display:grid}.sidebar-future-module{color:#b8d0d4;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.sidebar-future-module__status{color:#91b7bf;font-size:14px}.sidebar-user{border-top:1px solid #fff3;gap:3px;margin-top:auto;padding:20px 10px 0;display:grid}.sidebar-user__label,.sidebar-user__email{color:#b8d0d4;font-size:14px}.sidebar-user__name{font-size:15px}.sidebar-user__email{overflow-wrap:anywhere}.sidebar-user__logout{background:0 0;border-color:#fff9;width:100%;min-height:38px;margin-top:10px;font-size:14px}.sidebar-user__logout:hover{background:#ffffff26;border-color:#fff}.app-main{min-width:0}.app-topbar{background:var(--color-surface);border-bottom:1px solid var(--color-border);align-items:center;gap:14px;min-height:62px;padding:10px 24px;display:flex}.app-topbar__context{color:var(--color-muted);margin-left:auto;font-size:14px;font-weight:700}.sidebar-control{background:var(--color-surface);border-color:var(--color-primary);color:var(--color-primary);padding:8px 11px;font-size:14px}.sidebar-control:hover{background:var(--color-surface-muted);border-color:var(--color-primary);color:var(--color-primary-dark)}.sidebar-control--mobile,.sidebar-overlay{display:none}@media (width>=901px){.app-shell--sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.app-shell--sidebar-collapsed .app-sidebar{visibility:hidden;width:0;min-width:0;padding-left:0;padding-right:0;overflow:hidden}}@media (width<=900px){.app-shell{display:block}.app-sidebar{width:min(88vw,320px);max-width:320px;min-height:0;padding-top:20px;transition:transform .16s;position:fixed;bottom:0;left:0;transform:translate(-105%);box-shadow:8px 0 24px #083b4933}.app-shell--mobile-open .app-sidebar{transform:translate(0)}.app-shell--mobile-open .sidebar-overlay{z-index:15;background:#083b4973;border:0;padding:0;display:block;position:fixed;inset:0}.sidebar-control--desktop{display:none}.sidebar-control--mobile{display:inline-block}.app-topbar{z-index:10;min-height:58px;padding:10px 16px;position:sticky;top:0}.app-topbar__context{font-size:14px}.page-shell{width:min(100% - 32px,1180px)}}@media print{.app-sidebar,.app-topbar,.sidebar-overlay{display:none!important}.app-shell{min-height:0!important;display:block!important}.app-main,.app-shell .page-shell{width:auto!important;margin:0!important;padding:0!important}}.dashboard-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.dashboard-heading h1{margin:2px 0 4px;font-size:28px;line-height:1.2}.dashboard-heading p{color:var(--color-muted);margin:0;font-size:16px}.dashboard-kicker{color:var(--color-primary);letter-spacing:.06em;font-size:14px;font-weight:700;display:block}.dashboard-date{color:var(--color-muted);white-space:nowrap;font-size:15px;font-weight:700}.dashboard-module,.dashboard-panel,.dashboard-future-modules{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);border-radius:10px;padding:22px}.dashboard-module{margin-bottom:18px}.dashboard-module__heading,.dashboard-panel__heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:20px;display:flex}.dashboard-module__heading h2,.dashboard-panel__heading h2{margin:2px 0 0;font-size:18px;line-height:1.3}.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.dashboard-kpi-card{background:var(--color-surface-muted);border:1px solid var(--color-border);color:var(--color-text);border-radius:9px;flex-direction:column;gap:8px;min-width:0;min-height:146px;padding:18px;text-decoration:none;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.dashboard-kpi-card:hover,.dashboard-kpi-card:focus-visible{border-color:var(--color-primary);box-shadow:var(--shadow-floating);color:var(--color-text);transform:translateY(-1px)}.dashboard-kpi-card:focus-visible,.dashboard-attention-item:focus-visible,.dashboard-quick-actions a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.dashboard-kpi-card__label{color:var(--color-muted);font-size:15px;font-weight:700}.dashboard-kpi-card__value{color:var(--color-primary-dark);overflow-wrap:anywhere;font-size:28px;line-height:1.1}.dashboard-kpi-card__detail{color:var(--color-muted);margin-top:auto;font-size:14px;line-height:1.35}.dashboard-content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;display:grid}.dashboard-panel{min-width:0}.dashboard-empty-state{background:var(--color-success-bg);border-radius:var(--radius);color:var(--color-success);border:1px solid #92ceaa;margin:0;padding:14px;font-size:15px;font-weight:700}.dashboard-attention-list{gap:10px;display:grid}.dashboard-attention-item{color:var(--color-text);border:1px solid #e4c98b;border-left:4px solid #b77a00;border-radius:6px;align-items:flex-start;gap:10px;padding:12px;text-decoration:none;display:flex}.dashboard-attention-item:hover{color:var(--color-text);background:#fffaf0}.dashboard-attention-item strong,.dashboard-attention-item span{display:block}.dashboard-attention-item strong{font-size:15px}.dashboard-attention-item span span{color:var(--color-muted);margin-top:3px;font-size:14px}.dashboard-attention-item__marker{background:#b77a00;border-radius:50%;flex:0 0 9px;width:9px;height:9px;margin-top:5px}.dashboard-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.dashboard-quick-actions a{background:var(--color-surface-muted);border:1px solid var(--color-border);color:var(--color-primary);text-align:left;border-radius:6px;align-items:center;min-height:68px;padding:12px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.dashboard-quick-actions a:hover{background:var(--color-background);border-color:var(--color-primary)}.dashboard-future-modules{margin-bottom:18px}.dashboard-future-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.dashboard-future-card{background:var(--color-surface-muted);border:1px dashed var(--color-border);border-radius:9px;flex-direction:column;gap:4px;padding:16px;display:flex}.dashboard-future-card strong{color:var(--color-text);font-size:15px}.dashboard-future-card span{color:var(--color-muted);font-size:14px}@media (width<=1100px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.dashboard-heading{flex-direction:column;align-items:flex-start;gap:8px}.dashboard-content-grid,.dashboard-kpi-grid,.dashboard-future-grid{grid-template-columns:1fr}.dashboard-module,.dashboard-panel,.dashboard-future-modules{padding:16px}}@media print{.dashboard-heading,.dashboard-module,.dashboard-content-grid,.dashboard-future-modules{display:none!important}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-primary:#75cbd7;--color-primary-hover:#4eafbd;--color-primary-dark:#b3e8ed;--color-surface:#1c2a2e;--color-surface-muted:#24363b;--color-background:#10191c;--color-border:#496067;--color-input-border:#6e8388;--color-text:#edf5f6;--color-muted:#b4c5c8;--color-focus-ring:#75cbd773;--color-success:#8bdfad;--color-success-bg:#163925;--color-success-border:#4d8d67;--color-danger:#ffb0b0;--color-danger-bg:#432329;--color-danger-hover:#70242b;--color-danger-border:#a8646c;--color-info:#8ed7e4;--color-info-bg:#17383f;--color-info-border:#3c7f89;--color-warning:#ffd878;--color-warning-bg:#403516;--color-warning-border:#8d7537;--color-sidebar-bg:#092a34;--shadow-card:0 2px 10px #00000029;--shadow-floating:0 8px 20px #0000003d}[data-theme=dark] .app-sidebar{background:var(--color-sidebar-bg)}[data-theme=dark] .app-topbar,[data-theme=dark] .sidebar-control{background:var(--color-surface)}[data-theme=dark] .sidebar-control:hover{background:var(--color-surface-muted);color:var(--color-primary)}[data-theme=dark] .dashboard-kpi-card,[data-theme=dark] .dashboard-quick-actions a,[data-theme=dark] .dashboard-future-card{background:var(--color-surface-muted)}[data-theme=dark] .dashboard-quick-actions a:hover{background:#2d454b}[data-theme=dark] .dashboard-future-card strong{color:var(--color-text)}[data-theme=dark] .dashboard-attention-item{background:#2e281a;border-color:#8b7135 #8b7135 #8b7135 #e0ad3e}[data-theme=dark] .dashboard-attention-item:hover{background:#3a311d}[data-theme=dark] .dashboard-attention-item__marker{background:#e0ad3e}[data-theme=dark] .invoice-preview-canvas{background:#1d2a2e}[data-theme=dark] .settings-theme-option{background:var(--color-surface-muted)}.sidebar-settings-link{margin-top:8px}.settings-heading{align-items:flex-start}.settings-section{max-width:900px}.settings-page{max-width:960px}.settings-section__heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.settings-section__heading .card-title{margin-bottom:0}.settings-kicker{color:var(--color-primary);font-size:var(--font-label);letter-spacing:.06em;margin:0 0 4px;font-weight:700}.settings-section__hint{color:var(--color-muted);font-size:var(--font-label);text-align:right}.settings-theme-options{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 0;padding:0;display:grid}.settings-theme-option{background:var(--color-surface-muted);border:1px solid var(--color-border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;margin:0;padding:16px;transition:background-color .12s,border-color .12s,box-shadow .12s;display:flex}.settings-theme-option:hover{border-color:var(--color-primary)}.settings-theme-option:has(input:checked){border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 30%, transparent)}.settings-theme-option input{accent-color:var(--color-primary);flex:none;width:auto;margin:3px 0 0}.settings-theme-option span{gap:3px;display:grid}.settings-theme-option strong{font-size:var(--font-body)}.settings-theme-option small{color:var(--color-muted);font-size:var(--font-label);font-weight:400}.settings-account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0 0;display:grid}.settings-account-item{border-bottom:1px solid var(--color-border);padding-bottom:12px}.settings-account-item dt{color:var(--color-muted);font-size:var(--font-label);margin-bottom:4px;font-weight:700}.settings-account-item dd{font-size:var(--font-data);overflow-wrap:anywhere;margin:0}.settings-password-form{gap:16px;max-width:560px;margin-top:18px;display:grid}@media (width<=700px){.settings-theme-options,.settings-account-grid{grid-template-columns:1fr}.settings-section__heading{flex-direction:column;gap:6px}.settings-section__hint{text-align:left}}@media print{html{--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important}}@media screen and (width<=760px){.page-shell{padding-top:24px;padding-bottom:36px}.page-heading h1{font-size:24px}.card,.dashboard-module,.dashboard-panel,.dashboard-future-modules{padding:18px}.form-grid,.detail-grid,.report-totals,.statement-totals{grid-template-columns:1fr}.table-wrap{overscroll-behavior-inline:contain;max-width:100%}}@media screen and (width<=560px){.page-heading{gap:12px;margin-bottom:18px}.page-heading .button-row{width:100%}.page-heading .button-row>.button,.page-heading .button-row>button{flex:auto}.button-row{gap:8px}.app-topbar__context{font-size:13px}}
