:root{--font-sans:"Manrope","Segoe UI",sans-serif;--ink:#0f172a;--ink-soft:#334155;--muted:#64748b;--line:#dbe3ee;--surface:#fff;--surface-soft:#f7f9fc;--brand:#0f766e;--brand-hover:#0d9488;--brand-ink:#134e4a;--accent:#1d4ed8;--accent-hover:#1e40af;--danger:#b91c1c;--danger-hover:#dc2626;--warn:#b45309;--warn-hover:#d97706;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 8px 24px #0f172a1a;--shadow-lg:0 18px 48px #0f172a2e;--radius:10px;--radius-sm:8px}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;background:radial-gradient(1200px 500px at 10% -10%,#0f766e14,#0000 55%),radial-gradient(900px 420px at 100% 0,#1d4ed80f,#0000 50%),#eef2f6;color:#0f172a;color:var(--ink);font-family:Manrope,Segoe UI,sans-serif;font-family:var(--font-sans);margin:0}.layout{display:flex;min-height:100vh;min-width:0;position:relative}.sidebar{background:linear-gradient(180deg,#0b1220,#111827 55%,#0f172a);border-right:1px solid #94a3b81f;box-shadow:4px 0 24px #0f172a2e;color:#fff;display:flex;flex-direction:column;flex-shrink:0;gap:8px;padding:22px 14px;width:236px}.sidebar-toggle-btn{background:#334155d9;border:1px solid #94a3b840;color:#fff;font-weight:600;letter-spacing:.01em;text-align:center}.sidebar-toggle-btn:hover{background:#475569}.layout.sidebar-collapsed .sidebar{overflow:hidden;padding:0;width:0}.layout.sidebar-collapsed .content{width:100%}.sidebar-reopen-btn{background:#0f172a;border:1px solid #94a3b84d;border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 8px 24px #0f172a1a;box-shadow:var(--shadow-md);color:#fff;left:12px;position:fixed;top:12px;z-index:1000}.sidebar h2{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;margin:4px 0 16px}.sidebar button{background:#0000;border:none;border-radius:8px;border-radius:var(--radius-sm);color:#cbd5e1;cursor:pointer;font-weight:500;padding:10px 12px;text-align:left;transition:background .14s ease,color .14s ease,transform .14s ease}.sidebar button.active,.sidebar button:hover{background:#2dd4bf1f;color:#fff}.sidebar button.active{box-shadow:inset 3px 0 0 #2dd4bf;font-weight:700}.sidebar-divider{border-top:1px solid #334155e6;margin:10px 0}.sidebar-main-btn{font-weight:600}.sidebar-footer{display:flex;flex-direction:column;gap:10px;margin-top:auto;width:100%}.data-reset-btn{background:#b45309;background:var(--warn);color:#fff;font-weight:600}.data-reset-btn:hover{background:#d97706;background:var(--warn-hover);color:#fff}.modal-overlay{align-items:center;animation:modal-fade-in .16s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a94;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2000}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.modal-card{animation:modal-rise .18s ease;border:1px solid #e2e8f0e6;box-shadow:0 18px 48px #0f172a2e;box-shadow:var(--shadow-lg);margin:0;max-height:min(90vh,900px);overflow:auto;width:min(720px,94vw)}.modal-card-sm{width:min(420px,94vw)}@keyframes modal-rise{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:flex-start;display:flex;gap:12px;grid-column:1/-1;justify-content:space-between;margin-bottom:4px}.modal-header h3{margin:0}.modal-close-btn{background:#e2e8f0;border-radius:8px;color:#334155;flex-shrink:0;font-size:1.25rem;height:34px;line-height:1;padding:0;width:34px}.modal-close-btn:hover{background:#cbd5e1;color:#0f172a}.reset-confirm-card{box-shadow:0 18px 48px #0f172a2e;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:8px;margin:0;width:min(420px,92vw)}.reset-confirm-card h3{margin:0 0 4px}.reset-confirm-warning{color:#b45309;color:var(--warn);font-size:.9rem;line-height:1.45;margin:0 0 8px}.reset-confirm-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.btn-danger,.danger-btn,button.danger{background:#b91c1c;background:var(--danger);border:none;color:#fff;font-weight:600}.btn-danger:hover:not(:disabled),.danger-btn:hover:not(:disabled),button.danger:hover:not(:disabled){background:#dc2626;background:var(--danger-hover)}.logout-btn{background:#b91c1c;background:var(--danger);color:#fff;font-weight:600}.logout-btn:hover{background:#dc2626;background:var(--danger-hover)}.content{flex:1 1;min-width:0;overflow-x:hidden;padding:28px;transition:background-color .2s ease}.content h1{color:#0f172a;color:var(--ink);font-size:1.75rem;font-weight:800;letter-spacing:-.03em;margin:0 0 18px}.section-header-row{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.section-header-row h3{margin:0 0 6px}.entity-VTPL .content{background:linear-gradient(180deg,#eef6ff,#f5f8fc)}.entity-RNS .content{background:linear-gradient(180deg,#ecfdf5,#f5faf7)}.entity-HUF .content{background:linear-gradient(180deg,#fffbeb,#faf8f2)}.entity-TRS .content{background:linear-gradient(180deg,#f5f3ff,#f7f6fb)}.cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.action-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.card{background:#fff;background:var(--surface);border:1px solid #e2e8f0f2;border-radius:10px;border-radius:var(--radius);box-shadow:0 1px 2px #0f172a0f;box-shadow:var(--shadow-sm);margin-bottom:16px;padding:18px}.stat-card p{color:#64748b;color:var(--muted);margin:0}.stat-card h3{margin-top:8px}.form-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.form-grid h3{grid-column:1/-1;margin:0 0 6px}button,input,select,textarea{border:1px solid #cbd5e1;border-radius:8px;border-radius:var(--radius-sm);font-family:inherit;font-size:14px;padding:10px 12px}input,select,textarea{background:#fff;color:#0f172a;color:var(--ink);transition:border-color .14s ease,box-shadow .14s ease}input:focus,select:focus,textarea:focus{border-color:#5eead4;box-shadow:0 0 0 3px #0f766e26;outline:none}button{background:#1d4ed8;background:var(--accent);border:none;color:#fff;cursor:pointer;font-weight:600;letter-spacing:.01em;transition:background .14s ease,transform .12s ease,box-shadow .14s ease}button:hover:not(:disabled){background:#1e40af;background:var(--accent-hover)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.55}.btn-secondary,button.secondary{background:#475569;color:#fff}.btn-secondary:hover:not(:disabled),button.secondary:hover:not(:disabled){background:#334155}.btn-primary{background:#0f766e;background:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:#0d9488;background:var(--brand-hover)}.small-btn{font-size:.8rem;font-weight:600;margin-right:8px;padding:6px 10px}.form-actions{display:flex;flex-wrap:wrap;gap:10px;grid-column:1/-1;margin-top:4px}.property-row{grid-gap:12px;align-items:end;display:grid;gap:12px;grid-template-columns:1fr 220px}.property-row h3{grid-column:1/-1;margin:0}.table-card{overflow-x:auto}.pill-row{display:flex;flex-wrap:wrap;gap:10px}.pill-btn{background:#e2e8f0;color:#0f172a}.pill-btn.active-pill{background:#2563eb;color:#fff}.property-list-wrap{display:flex;flex-direction:column;gap:12px}.property-block{border:1px solid #e2e8f0;border-radius:8px;padding:10px}.property-header{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:8px}.property-title-static{margin:0}.property-meta{color:#475569;margin:0 0 10px}.property-details-section h3{margin-top:0}.add-property-inline{border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;padding-bottom:16px}.add-property-inline input{flex:1 1;min-width:200px}.property-details-list{display:flex;flex-direction:column;gap:16px}.property-detail-card{background:#fafbfc;border:1px solid #e2e8f0;border-radius:8px;padding:14px 16px}.property-detail-card-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.property-detail-card-header h4{margin:0}.property-detail-fields{grid-gap:10px;display:grid;gap:10px;margin:0}.property-detail-fields>div{grid-gap:8px 12px;align-items:start;display:grid;gap:8px 12px;grid-template-columns:140px 1fr}.property-detail-fields dt{color:#475569;font-weight:600;margin:0}.property-detail-fields dd{color:#1e293b;margin:0;word-break:break-word}.map-link{color:#2563eb;font-weight:600;text-decoration:none}.map-link:hover{text-decoration:underline}.property-details-form{margin-top:4px}.rental-table:not(.financial-table){table-layout:fixed}.financial-table-wrap{-webkit-overflow-scrolling:touch;border-radius:6px;margin-bottom:4px;max-width:100%;overflow-x:auto}.financial-table-wrap .table-scroll-hint,.totals-table-wrap .table-scroll-hint{color:#64748b;display:none;font-size:.75rem;margin:0 0 8px}.financial-table{min-width:100%;table-layout:auto;width:max-content}.financial-table td,.financial-table th{overflow-wrap:normal;vertical-align:middle;white-space:nowrap;word-break:normal}.financial-table td:first-child,.financial-table th:first-child{min-width:120px;white-space:normal}.financial-table td:nth-child(10),.financial-table td:nth-child(2),.financial-table td:nth-child(3),.financial-table td:nth-child(4),.financial-table td:nth-child(5),.financial-table td:nth-child(6),.financial-table td:nth-child(7),.financial-table td:nth-child(8),.financial-table td:nth-child(9),.financial-table th:nth-child(10),.financial-table th:nth-child(2),.financial-table th:nth-child(3),.financial-table th:nth-child(4),.financial-table th:nth-child(5),.financial-table th:nth-child(6),.financial-table th:nth-child(7),.financial-table th:nth-child(8),.financial-table th:nth-child(9){min-width:96px}.financial-table td:nth-child(11),.financial-table th:nth-child(11){min-width:100px}.financial-table td:nth-child(12),.financial-table th:nth-child(12){min-width:140px;white-space:normal;word-break:break-word}.financial-table td:nth-child(13),.financial-table th:nth-child(13){min-width:150px}.financial-table .small-btn{display:inline-block;margin:0 6px 0 0;white-space:nowrap}.financial-table .tenant-detail td{white-space:normal}.financials-split{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:1fr 1fr}.financials-panel{margin-bottom:0;min-width:0}.financials-panel h3{margin-top:0}.monthly-panel-hint{color:#475569;font-size:.9rem;margin:0 0 16px}.financials-main-column{display:flex;flex-direction:column;gap:16px;min-width:0}.monthly-calc-panel,.monthly-record-panel{margin-bottom:0}.tenant-calc-list{display:flex;flex-direction:column;gap:12px}.tenant-calc-card{background:#fafbfc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px}.tenant-calc-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.tenant-calc-property{color:#64748b;display:block;font-size:.82rem;font-weight:400;margin-top:2px}.tenant-calc-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.tenant-calc-grid{grid-gap:8px 14px;display:grid;font-size:.88rem;gap:8px 14px;grid-template-columns:repeat(auto-fill,minmax(128px,1fr))}.tenant-calc-label{color:#64748b;display:block;font-size:.72rem;margin-bottom:2px}.tenant-calc-recv{background:#dcfce7;border-radius:6px;color:#166534;font-weight:600;padding:6px 8px}.property-record-list{display:flex;flex-direction:column;gap:18px}.property-record-block{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px}.property-record-block h4{border-bottom:1px solid #e2e8f0;margin:0 0 12px;padding-bottom:8px}.property-record-empty{color:#64748b;font-size:.9rem;margin:0}.record-row{border-bottom:1px solid #f1f5f9;padding:12px 0}.record-row:last-child{border-bottom:none;padding-bottom:0}.record-row-main{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.record-tenant-name{flex:1 1 140px;font-weight:600;min-width:120px}.record-balance{font-feature-settings:"tnum";border-radius:4px;font-size:.84rem;font-variant-numeric:tabular-nums;padding:4px 8px;white-space:nowrap}.record-row-meta{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.record-success{background:#dcfce7;border-radius:6px;color:#166534;font-size:.85rem;font-weight:600;padding:5px 12px}.record-remark{font-size:.82rem}.record-btn{margin-left:auto}.financials-summary{margin-bottom:20px}.financials-summary-label{color:#475569;font-size:.95rem;font-weight:600;margin:0 0 12px}.monthly-payments-heading{color:#334155;font-size:.95rem;margin:18px 0 10px}.monthly-receipts-table,.rent-structure-table,.totals-table{border-collapse:collapse;min-width:100%;table-layout:auto;width:max-content}.monthly-receipts-table td,.monthly-receipts-table th,.rent-structure-table td,.rent-structure-table th,.totals-table td,.totals-table th{border:1px solid #e2e8f0;font-size:.84rem;line-height:1.35;padding:8px 10px;vertical-align:middle}.monthly-receipts-table th,.rent-structure-table th,.totals-table th{background:#f8fafc;color:#334155;font-size:.78rem;font-weight:700;letter-spacing:0;max-width:110px;overflow-wrap:anywhere;text-transform:none;white-space:normal;word-break:break-word}.monthly-receipts-table td,.rent-structure-table td,.totals-table td{overflow-wrap:anywhere;white-space:normal;word-break:break-word}.monthly-receipts-table .cell-amount,.rent-structure-table .cell-amount,.totals-table .cell-amount{font-feature-settings:"tnum";font-size:.8rem;font-variant-numeric:tabular-nums;min-width:92px;text-align:right;white-space:nowrap}.monthly-receipts-table td:first-child,.monthly-receipts-table th:first-child,.rent-structure-table td:first-child,.rent-structure-table th:first-child,.totals-table td:first-child,.totals-table th:first-child{max-width:180px;min-width:108px;text-align:left;white-space:normal}.rent-structure-table td:nth-child(8),.rent-structure-table th:nth-child(8){max-width:none;min-width:72px;text-align:center;white-space:nowrap}.monthly-receipts-table .remarks-cell{font-size:.78rem;max-width:200px;min-width:100px;white-space:normal}.monthly-receipts-table td:nth-child(7),.monthly-receipts-table th:nth-child(7){max-width:none;min-width:72px;white-space:nowrap}.totals-table td:nth-child(2),.totals-table td:nth-child(3),.totals-table td:nth-child(4),.totals-table th:nth-child(2),.totals-table th:nth-child(3),.totals-table th:nth-child(4){min-width:100px}.totals-table td:nth-child(5),.totals-table th:nth-child(5){max-width:120px;min-width:88px;white-space:normal}.totals-table td:nth-child(6),.totals-table th:nth-child(6){font-size:.78rem;max-width:180px;min-width:100px;white-space:normal}.totals-table td:nth-child(7),.totals-table th:nth-child(7){min-width:72px;text-align:center;white-space:nowrap}.totals-edit-row{background:#f8fafc}.totals-edit-input{font-feature-settings:"tnum";border:1px solid #cbd5e1;border-radius:6px;font-size:.82rem;font-variant-numeric:tabular-nums;min-width:88px;padding:6px 8px;width:100%}.totals-edit-remarks{min-width:120px}.totals-edit-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.totals-remarks-cell{color:#475569;font-size:.78rem;white-space:normal;word-break:break-word}.totals-tenant-current{background:#dcfce7!important;color:#166534!important;font-weight:600}.totals-table td.totals-tenant-current.cell-amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.monthly-recv-current{background:#dcfce7;color:#166534;font-weight:600}.monthly-balance-overdue{background:#fee2e2;color:#b91c1c;font-weight:600}.monthly-receipt-draft-row{background:#f8fafc}.monthly-date-input,.monthly-month-select,.monthly-received-input{border:1px solid #cbd5e1;border-radius:6px;font-size:.82rem;max-width:140px;min-width:0;padding:6px 8px;width:100%}.monthly-received-full{align-items:center;display:flex;flex-wrap:wrap;font-size:.78rem;gap:6px;margin-right:0;max-width:180px}.monthly-received-input{max-width:110px}.fy-range-label{color:#475569;font-size:.9rem;margin:0 0 16px}.property-fy-label{color:#64748b;font-size:.85rem;white-space:nowrap}.fy-start-hint{color:#64748b;font-size:.8rem;font-weight:500}.totals-table-wrap{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.totals-table{border-collapse:collapse;min-width:100%;table-layout:auto;width:max-content}.totals-table td,.totals-table th{vertical-align:middle}.totals-table td:first-child,.totals-table th:first-child{min-width:108px;white-space:normal}.property-total-row{background:#f1f5f9}.property-total-row td{border-top:2px solid #cbd5e1}.entity-grand-total{grid-gap:8px;background:#e0f2fe;border:1px solid #bae6fd;border-radius:8px;display:grid;font-size:1rem;gap:8px;grid-template-columns:1.4fr 1fr 1fr 1fr;margin-top:20px;padding:14px 16px}.entity-grand-total span:not(:first-child){text-align:right}@media (max-width:1600px){.financials-split{grid-template-columns:1fr}}@media (max-width:900px){.section-header-row{align-items:stretch;flex-direction:column}.section-header-row .btn-primary{width:100%}.modal-card{max-height:88vh;width:min(96vw,720px)}.content{padding:14px}.financial-table-wrap .table-scroll-hint,.totals-table-wrap .table-scroll-hint{display:block}.monthly-receipts-table th,.rent-structure-table th,.totals-table th{font-size:.72rem;max-width:88px;padding:6px 8px}.monthly-receipts-table td,.rent-structure-table td,.totals-table td{font-size:.78rem;padding:6px 8px}.monthly-receipts-table .cell-amount,.rent-structure-table .cell-amount,.totals-table .cell-amount{font-size:.74rem;min-width:80px}.entity-grand-total{font-size:.88rem;grid-template-columns:1fr 1fr;padding:12px}.entity-grand-total span:first-child{grid-column:1/-1;margin-bottom:4px}}.property-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.doc-property-block h4{margin:0 0 10px}.pass-sheet-table-wrap{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}@media (max-width:720px){html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{overflow-x:hidden}.layout{flex-direction:row;min-height:100vh;min-height:100dvh}.layout.sidebar-collapsed .content{width:100%}.sidebar{-webkit-overflow-scrolling:touch;bottom:0;box-shadow:4px 0 24px #0f172a59;flex-direction:column;flex-wrap:nowrap;gap:8px;left:0;max-width:88vw;overflow-x:hidden;overflow-y:auto;padding:16px 14px;position:fixed;top:0;transform:translateX(0);transition:transform .2s ease;width:min(280px,88vw);z-index:1100}.layout.sidebar-collapsed .sidebar{overflow:hidden;padding:16px 14px;pointer-events:none;transform:translateX(-105%);width:min(280px,88vw)}.sidebar h2{font-size:1.15rem;margin:0 0 12px;width:auto}.sidebar button{flex:none;font-size:.9rem;padding:10px 12px;text-align:left;width:100%}.sidebar-footer{flex:none;margin-top:auto;width:100%}.data-reset-btn,.logout-btn{flex:none;margin-top:0;width:100%}.sidebar-reopen-btn{font-size:.85rem;left:max(10px,env(safe-area-inset-left,10px));padding:10px 14px;top:max(10px,env(safe-area-inset-top,10px));z-index:1001}.content{-webkit-overflow-scrolling:touch;flex:1 1;min-width:0;overflow-x:hidden;overflow-y:auto;padding:max(48px,calc(env(safe-area-inset-top, 0px) + 44px)) 12px max(16px,env(safe-area-inset-bottom,16px));width:100%}.layout:not(.sidebar-collapsed) .content{pointer-events:none;-webkit-user-select:none;user-select:none}.content h1{font-size:1.35rem;margin:0 0 12px;word-break:break-word}.card{margin-bottom:12px;padding:12px}.cards{gap:10px;grid-template-columns:1fr}.stat-card h3{font-size:1.1rem;word-break:break-word}.action-row{flex-direction:column}.action-row button{margin:0;width:100%}.form-grid{gap:10px;grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}.property-row{grid-template-columns:1fr}.add-property-inline{flex-direction:column}.add-property-inline button,.add-property-inline input{min-width:0;width:100%}.property-detail-card-header{align-items:stretch;flex-direction:column}.property-detail-actions{width:100%}.property-detail-actions .small-btn{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;margin:0}.property-detail-fields>div{gap:4px;grid-template-columns:1fr}.property-header{align-items:stretch;flex-direction:column}.financials-panel{padding:10px}.property-block{padding:8px}.tenant-calc-header{align-items:stretch;flex-direction:column}.tenant-calc-actions{justify-content:flex-start;width:100%}.tenant-calc-actions .small-btn{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;margin:0}.tenant-calc-grid{gap:10px 8px;grid-template-columns:repeat(2,minmax(0,1fr))}.record-row-main{align-items:stretch;flex-direction:column}.record-tenant-name{flex:none;min-width:0}.record-btn{align-self:stretch;margin-left:0;width:100%}.record-row-meta{align-items:stretch;flex-direction:column}.record-success{width:100%;word-break:break-word}.monthly-date-input,.monthly-month-select,.monthly-received-full,.monthly-received-input{max-width:none;width:100%}.pass-sheet-upload{align-items:stretch;flex-direction:column}.apply-pass-sheet-btn,.pass-sheet-upload button,.pass-sheet-upload input[type=file]{width:100%}.login-card{margin:0 12px;max-width:360px;width:100%}.table-card{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.financial-table-wrap .table-scroll-hint,.totals-table-wrap .table-scroll-hint{display:block}.monthly-receipts-table th,.rent-structure-table th,.totals-table th{font-size:.72rem;max-width:88px;padding:6px 8px}.monthly-receipts-table td,.rent-structure-table td,.totals-table td{font-size:.78rem;padding:6px 8px}.monthly-receipts-table .cell-amount,.rent-structure-table .cell-amount,.totals-table .cell-amount{font-size:.74rem;min-width:0}.entity-grand-total{font-size:.88rem;gap:10px;grid-template-columns:1fr 1fr;padding:12px}.entity-grand-total span:first-child{grid-column:1/-1;margin-bottom:4px}.entity-grand-total span:not(:first-child){font-size:.82rem;word-break:break-word}.responsive-data-table thead{display:none}.responsive-data-table tbody tr{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:block;margin-bottom:12px;padding:4px 8px 8px}.responsive-data-table tbody tr.monthly-receipt-draft-row,.responsive-data-table tbody tr.totals-edit-row{background:#f8fafc}.responsive-data-table tbody tr.property-total-row{background:#f1f5f9;padding:10px 8px}.responsive-data-table tbody tr.tenant-missing{background:#fef2f2}.responsive-data-table td{align-items:flex-start;border:none;border-bottom:1px solid #f1f5f9;display:flex;gap:10px;justify-content:space-between;max-width:none!important;min-width:0!important;padding:8px 4px;text-align:right;white-space:normal;width:auto!important}.responsive-data-table td:last-child{border-bottom:none}.responsive-data-table td:before{color:#475569;content:attr(data-label);flex:0 0 42%;font-size:.76rem;font-weight:600;max-width:42%;text-align:left;white-space:normal;word-break:break-word}.responsive-data-table td.cell-empty-label:before,.responsive-data-table td[data-label=""]:before{content:none}.responsive-data-table td.cell-action{border-bottom:none;justify-content:flex-end;padding-top:10px}.responsive-data-table td.cell-action:before{content:none}.responsive-data-table td.totals-edit-actions{align-items:stretch;flex-direction:column}.responsive-data-table td.totals-edit-actions:before{content:none}.responsive-data-table td.totals-edit-actions .small-btn{margin:0;width:100%}.responsive-data-table td.cell-span-all{display:block;text-align:center}.responsive-data-table td.cell-span-all:before{content:none}.responsive-data-table .cell-amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:right;white-space:normal;word-break:break-word}.responsive-data-table .totals-edit-input{max-width:none}.pass-sheet-approve-table.responsive-data-table td{align-items:flex-start}.pass-sheet-approve-table.responsive-data-table .pass-sheet-month-checkboxes{justify-content:flex-end;max-height:none}.pass-sheet-approve-table.responsive-data-table .pass-sheet-month-summary{text-align:right}.financial-table-wrap,.pass-sheet-table-wrap,.totals-table-wrap{overflow-x:visible}.financial-table{min-width:0}.small-btn{margin-right:0}.info{font-size:.88rem;word-break:break-word}}@media (max-width:400px){.entity-grand-total,.tenant-calc-grid{grid-template-columns:1fr}.entity-grand-total span:not(:first-child){display:flex;gap:8px;justify-content:space-between;text-align:left}}.rent-mode-hint{color:#475569;font-size:.9rem;grid-column:1/-1;margin:0}.tenant-details-hint{color:#475569;font-size:.9rem;margin:0 0 16px}.tenant-details-table td,.tenant-details-table th{vertical-align:top;white-space:normal;word-break:break-word}.tenant-details-table td:nth-child(5),.tenant-details-table th:nth-child(5){font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.rental-table:not(.financial-table) td,.rental-table:not(.financial-table) th{vertical-align:middle}.rental-table:not(.financial-table) td:first-child,.rental-table:not(.financial-table) th:first-child{width:18%}.rental-table:not(.financial-table) td:nth-child(2),.rental-table:not(.financial-table) td:nth-child(3),.rental-table:not(.financial-table) td:nth-child(4),.rental-table:not(.financial-table) td:nth-child(5),.rental-table:not(.financial-table) td:nth-child(6),.rental-table:not(.financial-table) th:nth-child(2),.rental-table:not(.financial-table) th:nth-child(3),.rental-table:not(.financial-table) th:nth-child(4),.rental-table:not(.financial-table) th:nth-child(5),.rental-table:not(.financial-table) th:nth-child(6){width:12%}.rental-table:not(.financial-table) td:nth-child(7),.rental-table:not(.financial-table) th:nth-child(7){width:16%}.rental-table:not(.financial-table) td:nth-child(8),.rental-table:not(.financial-table) th:nth-child(8){width:18%}.remarks-cell{line-height:1.35;overflow-wrap:anywhere;white-space:normal;word-break:break-word}.tenant-link{background:#0000;border:none;color:#2563eb;padding:0;text-decoration:underline}.tenant-detail{background:#f8fafc}.due-current{background:#fef9c3;color:#713f12;font-weight:600}.due-overdue{background:#fee2e2;color:#991b1b;font-weight:700}.edit-tenant-summary{grid-column:1/-1;margin:0;padding:.5rem 0}.computed-field{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;color:#334155;font-size:14px;font-weight:600;padding:10px}.pass-sheet-section h3{margin-top:0}.pass-sheet-help{color:#475569;line-height:1.5;margin-bottom:16px}.pass-sheet-settings{border-bottom:1px solid #e2e8f0;margin-bottom:16px;padding-bottom:16px}.full-width-label{color:#334155;font-weight:600;grid-column:1/-1}.pass-sheet-upload{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.checkbox-label{align-items:center;color:#475569;display:flex;gap:6px}.pass-sheet-results{margin-top:8px}.pass-sheet-approve-table{border-collapse:collapse;max-width:900px;table-layout:auto;width:100%}.pass-sheet-approve-table td,.pass-sheet-approve-table th{border:1px solid #e2e8f0;padding:10px 12px;vertical-align:middle;white-space:normal;word-break:break-word}.pass-sheet-approve-table td:first-child,.pass-sheet-approve-table th:first-child{width:72px}.pass-sheet-approve-table td:nth-child(3),.pass-sheet-approve-table th:nth-child(3){width:90px}.pass-sheet-approve-table td:nth-child(4),.pass-sheet-approve-table td:nth-child(5),.pass-sheet-approve-table th:nth-child(4),.pass-sheet-approve-table th:nth-child(5){text-align:right;width:120px}.pass-sheet-date-cell{color:#475569;font-size:.85rem;white-space:nowrap}.pass-sheet-month-checkboxes{display:flex;flex-wrap:wrap;gap:4px 10px;max-height:88px;overflow-y:auto;padding:4px 0}.pass-sheet-month-option{align-items:center;color:#334155;cursor:pointer;display:inline-flex;font-size:.78rem;gap:4px;white-space:nowrap}.pass-sheet-month-option input{margin:0}.pass-sheet-month-summary{color:#0f766e;font-size:.82rem;font-weight:600;margin-top:6px}.pass-sheet-subsection{margin-top:20px}.pass-sheet-subsection ul{margin:8px 0 0;padding-left:20px}.apply-pass-sheet-btn{background:#16a34a;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;margin-top:16px;padding:10px 18px}.apply-pass-sheet-btn:hover{background:#15803d}.amount-mismatch{background:#fff7ed}.tenant-missing{background:#fef2f2}.rounding-tag{color:#0d9488}.rounding-tag,.warning-tag{font-size:.85rem;font-weight:600}.warning-tag{color:#dc2626}.pass-sheet-rules-hint{border-top:1px solid #e2e8f0;color:#64748b;margin-top:24px;padding-top:16px}.pass-sheet-rules-hint h4{color:#334155;margin:0 0 8px}.pass-sheet-rules-hint ul{margin:0;padding-left:20px}.pass-sheet-alert{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:20px;padding:14px 16px}.pass-sheet-alert h4{color:#991b1b;margin:0 0 8px}.pass-sheet-alert ul{color:#7f1d1d;margin:0;padding-left:20px}.pass-sheet-alert-note{color:#9a3412;font-size:.9rem;margin:10px 0 0}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid #e2e8f0;overflow-wrap:anywhere;padding:10px;text-align:left;vertical-align:top;white-space:normal;word-break:break-word}.login-wrapper{align-items:center;background:radial-gradient(900px 420px at 15% 10%,#0f766e29,#0000 55%),radial-gradient(800px 380px at 90% 20%,#1d4ed81f,#0000 50%),#0f172a;display:flex;justify-content:center;min-height:100vh}.login-card{border:1px solid #e2e8f0e6;box-shadow:0 18px 48px #0f172a2e;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:8px;width:360px}.login-card-wide{width:min(420px,92vw)}.totp-qr{align-self:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;height:200px;padding:8px;width:200px}.totp-secret{color:#475569;font-size:.85rem;word-break:break-all}.totp-secret code{font-size:.8rem}.error{color:#dc2626}.info{background:linear-gradient(180deg,#ecfeff,#e0f2fe);border:1px solid #a5f3fc;border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 1px 2px #0f172a0f;box-shadow:var(--shadow-sm);color:#155e75;font-weight:600;padding:12px 14px}.complete-summary-panel{padding-bottom:12px}.complete-summary-toolbar{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:12px}.complete-summary-toolbar h3{margin:0 0 6px}.cs-export-btn{background:#0f766e;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.9rem;font-weight:600;padding:10px 14px}.cs-export-btn:hover:not(:disabled){background:#0d9488}.cs-export-btn:disabled{cursor:not-allowed;opacity:.5}.complete-summary-hint{color:#475569;font-size:.88rem;margin:0}.complete-summary-scroll{background:#fff;border:1px solid #e2e8f0;border-radius:8px;max-width:100%;overflow-x:auto;overflow-y:visible}.complete-summary-table{border-collapse:collapse;font-size:.74rem;line-height:1.3;min-width:100%;width:max-content}.cs-excel-sheet{background:#fff}.complete-summary-table td,.complete-summary-table th{border:1px solid #b0b8c4;padding:0;vertical-align:top}.complete-summary-table thead th{background:#e8ecf1;color:#1e293b;font-weight:600;padding:5px 6px;text-align:center;white-space:nowrap}.cs-excel-cell{background:#fff;padding:0!important}.cs-cell-value{display:block;min-height:26px;overflow:hidden;padding:5px 6px;text-overflow:ellipsis;white-space:nowrap}.cs-cell-amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.cs-excel-stack{display:flex;flex-direction:column}.cs-excel-line{border-bottom:1px solid #d8dee8;display:block;min-height:26px;overflow:hidden;padding:5px 6px;text-overflow:ellipsis;white-space:nowrap}.cs-excel-line:last-child{border-bottom:none}.cs-excel-date-col{max-width:88px;min-width:72px}.cs-excel-ref-col{max-width:160px;min-width:100px}.cs-excel-ref-col .cs-excel-line{overflow:visible;overflow-wrap:anywhere;text-overflow:clip;white-space:normal;word-break:break-word}.cs-excel-amt-col{max-width:96px;min-width:80px}.cs-amt-head{text-align:right}.cs-row-editing,.cs-row-editing .cs-excel-cell{background:#fffbeb}.cs-sticky{background:#fff;position:sticky;z-index:2}.cs-col-entity{font-weight:600;left:0;max-width:58px;min-width:52px;text-align:center}.cs-col-property{left:52px;max-width:120px;min-width:90px}.cs-col-tenant{left:142px;max-width:130px;min-width:90px}.cs-col-carry{left:232px;max-width:80px;min-width:64px}.cs-col-actions{left:296px;max-width:52px;min-width:44px}.cs-actions-cell{padding:2px!important;text-align:center}.cs-action-btns{display:flex;flex-direction:column;gap:2px;padding:2px}.cs-edit-btn{background:#0000;border:1px solid #cbd5e1;border-radius:3px;color:#64748b;font-size:.62rem;line-height:1.2;margin:0;padding:2px 5px}.cs-edit-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8;color:#334155}.cs-edit-btn:disabled{cursor:default;opacity:.4}.cs-mini-btn{background:#e2e8f0;border:1px solid #cbd5e1;border-radius:3px;color:#334155;font-size:.62rem;line-height:1.2;margin:0;padding:2px 5px}.cs-mini-btn:hover{background:#cbd5e1}.cs-mini-muted{background:#0000;color:#64748b}.complete-summary-table thead .cs-sticky{background:#e8ecf1;z-index:3}.cs-spacer-col{background:#f1f5f9!important;border-left:2px solid #94a3b8!important;border-right:2px solid #94a3b8!important;max-width:12px;min-width:12px;padding:0!important;width:12px}.cs-month-group-head{background:#d1d9e6!important;font-size:.76rem;letter-spacing:.02em}.cs-subhead{font-size:.7rem;font-weight:600;min-width:72px}.cs-total-head{min-width:80px}.cs-edit-stack{display:flex;flex-direction:column;gap:3px;padding:3px}.cs-edit-line{align-items:center;display:flex;gap:2px}.cs-edit-input{background:#fff;border:1px solid #94a3b8;border-radius:2px;font-size:.72rem;min-width:0;padding:4px 5px;width:100%}.cs-edit-amt{text-align:right}.cs-del-btn{background:#fee2e2;border:none;border-radius:2px;color:#b91c1c;cursor:pointer;flex-shrink:0;font-size:.85rem;height:22px;line-height:1;min-width:18px;padding:0;width:18px}.cs-add-btn{align-self:flex-start;background:#f8fafc;border:1px dashed #94a3b8;border-radius:3px;cursor:pointer;font-size:.65rem;margin-top:2px;padding:2px 6px}.cs-month-total-cell{min-width:80px;padding:3px!important;text-align:center;vertical-align:bottom!important}.cs-month-total{font-feature-settings:"tnum";background:#f8fafc;border:1px solid #b0b8c4;border-radius:2px;color:#1e293b;cursor:pointer;font-size:.72rem;font-variant-numeric:tabular-nums;font-weight:600;margin:3px;padding:5px 4px;white-space:nowrap;width:calc(100% - 6px)}.cs-month-total:disabled{color:#1e293b;cursor:default;opacity:1}.cs-month-total:hover:not(:disabled){background:#f1f5f9}.cs-total-correct{background:#dcfce7!important;border-color:#86efac!important;color:#166534!important}.cs-total-incorrect{background:#fee2e2!important;border-color:#fca5a5!important;color:#b91c1c!important}@media (max-width:720px){.cs-col-entity{left:0;min-width:44px}.cs-col-property{left:44px;min-width:72px}.cs-col-tenant{left:116px;min-width:72px}.cs-col-carry{left:188px;min-width:56px}.cs-col-actions{left:244px;min-width:40px}}
/*# sourceMappingURL=main.54b9b244.css.map*/