:root{--app-header-height: 60px;--bottom-nav-height: 72px;--app-page-bottom-space: calc(var(--bottom-nav-height) + 88px);color:#17211b;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;background:#f6f8f6}#root{min-height:100vh;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;overflow-x:hidden}.app-header{position:sticky;top:0;z-index:20;display:flex;min-height:var(--app-header-height);align-items:center;background:#fff;border-bottom:1px solid #e4e9e5;padding:8px 16px;box-shadow:0 4px 14px #17211b0d}.app-header>div{width:min(100%,760px);margin:0 auto}.app-header h1{margin:1px 0 0;font-size:17px;line-height:1.15;letter-spacing:0}.app-kicker{margin:0;color:#5d6b62;font-size:10px;font-weight:700;text-transform:uppercase}.app-main{width:min(100%,760px);margin:0 auto;padding:14px 16px calc(var(--app-page-bottom-space) + env(safe-area-inset-bottom));overflow-x:hidden}.login-page{display:grid;min-height:100dvh;place-items:center;background:#f6f8f6;padding:18px}.login-card{display:grid;width:min(100%,420px);gap:14px;border:1px solid #dfe7e1;border-radius:12px;background:#fff;padding:22px;box-shadow:0 14px 36px #17211b1f}.login-brand{display:grid;gap:4px;margin-bottom:4px}.login-brand p{margin:0;color:#15803d;font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}.login-brand h1{margin:0;color:#17211b;font-size:24px;line-height:1.15}.login-brand span{width:fit-content;border-radius:999px;background:#ecfdf3;color:#15803d;padding:4px 8px;font-size:12px;font-weight:850}.login-card label{display:grid;gap:7px;color:#425047;font-size:13px;font-weight:850}.login-card input{min-height:46px;width:100%;border:1px solid #dce4de;border-radius:8px;padding:0 12px;color:#17211b;font:inherit}.auth-loading-screen{display:grid;min-height:100dvh;place-items:center;background:#f6f8f6;color:#425047;font-weight:850}.page-stack{display:grid;gap:14px}.summary-band{background:#15803d;color:#fff;border-radius:8px;padding:18px}.summary-band p,.summary-band h2,.summary-band span{margin:0}.summary-band p,.summary-band span{color:#dbffe8;font-size:14px}.summary-band h2{margin:7px 0;font-size:32px}.stats-grid,.summary-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card,.shed-card,.detail-panel,.payment-row,.list-panel,.form-panel{background:#fff;border:1px solid #e1e7e2;border-radius:8px;box-shadow:0 8px 24px #17211b0d}.stat-card{display:grid;min-height:88px;align-content:space-between;padding:13px}.stat-card p{margin:0;color:#647067;font-size:13px}.stat-card strong{display:block;color:#15231a;margin-top:10px;font-size:22px;line-height:1.15}.stat-card--success strong{color:#15803d}.stat-card--danger strong{color:#c62828}.stat-card--warning strong{color:#c26a00}.shed-card{display:grid;gap:10px;padding:14px}.shed-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.shed-card h2{margin:0;color:#15231a;font-size:17px;line-height:1.2}.shed-card p{margin:5px 0 0;color:#5d6b62;font-size:13px}.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.page-toolbar h2{margin:0;color:#15231a;font-size:20px}.compact-add-button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:7px;border-radius:8px;background:#15803d;color:#fff;padding:0 12px;font-size:14px;font-weight:850;white-space:nowrap}.payment-row h2,.list-panel h2,.form-panel h2,.section-heading h2{margin:0;color:#15231a;font-size:18px;line-height:1.2}.section-heading p,.payment-row p,.list-panel p{margin:6px 0 0;color:#5d6b62}.payment-row span{display:inline-block;margin-top:8px;color:#15803d;font-size:13px;font-weight:700}.shed-metrics{display:flex;flex-wrap:wrap;gap:7px;margin-top:2px}.shed-metrics span{margin-top:0;border-radius:999px;background:#eef5f0;padding:5px 9px;color:#425047;font-size:12px;font-weight:800}.shed-status{width:fit-content}.icon-actions{display:flex;flex:0 0 auto;align-items:center;gap:6px}.icon-button{display:inline-grid;width:34px;height:34px;place-items:center;border:1px solid #dce4de;border-radius:8px;background:#fff;color:#425047;cursor:pointer}.icon-button--primary{border-color:#bbf7d0;color:#15803d}.icon-button--danger{border-color:#fecaca;color:#b91c1c}.toggle-row{display:inline-flex;align-items:center;gap:10px;color:#425047;font-weight:850}.toggle-row input{width:18px;min-height:18px}.text-link{color:#15803d;font-weight:800;width:fit-content}.split-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.shed-detail-page{display:grid;gap:12px}.shed-detail-hero{display:grid;gap:6px}.shed-detail-hero__nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.shed-detail-title h2{margin:0;color:#15231a;font-size:22px;line-height:1.15}.shed-detail-title p{margin:3px 0 0;color:#5d6b62;font-size:13px;font-weight:700;text-transform:capitalize}.shed-detail-page .summary-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.shed-detail-page .stat-card{min-height:62px;max-height:72px;align-content:space-between;border-radius:8px;padding:8px 6px}.shed-detail-page .stat-card p{font-size:10px;line-height:1.15;overflow-wrap:anywhere}.shed-detail-page .stat-card strong{margin-top:4px;font-size:17px;line-height:1.1;overflow-wrap:anywhere}.detail-section{display:grid;gap:7px}.detail-section h3,.section-title-row h3{margin:0;color:#15231a;font-size:16px;line-height:1.2}.section-title-row{display:grid;gap:8px}.slot-legend{display:flex;flex-wrap:nowrap;gap:6px;color:#5d6b62;font-size:11px;font-weight:700;overflow-x:auto;scrollbar-width:none}.slot-legend span{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px}.slot-legend::-webkit-scrollbar{display:none}.legend-dot{width:10px;height:10px;border-radius:999px}.legend-dot--free{background:#16a34a}.legend-dot--occupied{background:#d32f2f}.legend-dot--pending{background:#f59e0b}.slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-bottom:16px}.slot-card{display:grid;min-height:64px;max-height:72px;place-items:center;align-content:center;border-radius:8px;padding:7px 8px;color:#fff;text-align:center}.slot-card strong{font-size:16px}.slot-card span{margin-top:3px;font-size:10px;font-weight:800;line-height:1.2}.slot-card--free{background:#16a34a}.slot-card--occupied{background:#d32f2f}.slot-card--overdue,.slot-card--pending,.slot-card--payment_pending{background:#f59e0b;color:#281500}.detail-panel{padding:16px}.slot-detail-free-page{padding-bottom:160px}.free-slot-panel{display:grid;gap:16px}.free-slot-message{margin:0;border-radius:8px;background:#f0fdf4;color:#166534;padding:12px;font-weight:850}.slot-history-collapsed{padding:0;overflow:hidden}.detail-panel__top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid #edf1ee;padding-bottom:16px}.detail-panel__top p,.detail-panel__top h2{margin:0}.detail-panel__top p{color:#5d6b62;font-size:14px}.detail-panel__top h2{margin-top:4px;font-size:28px}.status-pill{border-radius:999px;padding:8px 10px;font-size:12px;font-weight:900;white-space:nowrap}.status-pill--free{background:#dcfce7;color:#166534}.status-pill--occupied{background:#fee2e2;color:#b91c1c}.status-pill--overdue,.status-pill--pending,.status-pill--payment_pending{background:#ffedd5;color:#9a3412}.detail-list{display:grid;gap:13px;margin:16px 0 0}.detail-list div{display:grid;gap:4px}.detail-list dt{color:#647067;font-size:13px;font-weight:700}.detail-list dd{margin:0;color:#17211b;font-weight:800}.action-grid{display:grid;gap:10px}.action-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:8px;border:1px solid #dce4de;border-radius:8px;background:#fff;color:#17211b;cursor:pointer;font-weight:850}.action-button--primary{border-color:#15803d;background:#15803d;color:#fff}.action-button--full{width:100%}.action-button--danger{border-color:#fecaca;color:#b91c1c}.action-button--whatsapp{border-color:#16a34a;color:#15803d}.action-button.is-disabled{pointer-events:none;opacity:.45}.quick-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-action-grid .action-button{min-height:44px;font-size:13px}.select-shed-page{display:grid;gap:14px;padding-bottom:160px}.select-shed-list{display:grid;gap:10px}.select-shed-card{display:grid;gap:10px;border:1px solid #e1e7e2;border-radius:8px;background:#fff;box-shadow:0 8px 22px #142b1b0d;padding:12px}.select-shed-card h3,.select-shed-card p{margin:0}.select-shed-card h3{color:#15231a;font-size:16px;line-height:1.2}.select-shed-card p{margin-top:4px;color:#5d6b62;font-size:13px;font-weight:750}.change-shed-button{min-height:40px;font-size:13px}.payment-row{display:flex;justify-content:space-between;gap:12px;padding:16px}.payment-row__amount{display:grid;gap:7px;justify-items:end;white-space:nowrap}.status-text{text-transform:capitalize;font-weight:900}.status-text--paid{color:#15803d}.status-text--pending,.status-text--partial{color:#c26a00}.status-badge{border-radius:999px;padding:7px 9px;font-size:12px;font-weight:900;text-transform:capitalize;white-space:nowrap}.status-badge--paid{background:#dcfce7;color:#166534}.status-badge--pending,.status-badge--partial{background:#ffedd5;color:#9a3412}.status-badge--upcoming{background:#eef5f0;color:#425047}.filter-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:8px}.filter-tabs button{min-height:42px;border:1px solid #dce4de;border-radius:8px;background:#fff;color:#425047;font-weight:850;text-transform:capitalize}.filter-tabs button.is-active{border-color:#15803d;background:#15803d;color:#fff}.payment-card{display:grid;gap:12px;background:#fff;border:1px solid #e1e7e2;border-radius:8px;box-shadow:0 8px 24px #17211b0d;padding:14px}.payment-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.payment-card h2{margin:0;color:#15231a;font-size:18px}.payment-card p,.payment-card span{margin:6px 0 0;color:#5d6b62}.tenant-name-link h2{color:#15803d}.compact-panel{gap:10px}.payment-card span{display:block;color:#15803d;font-size:13px;font-weight:800}.payments-page{display:grid;gap:11px;max-width:100%;overflow-x:hidden;padding-bottom:0}.payments-header h2{margin:0;color:#15231a;font-size:22px;line-height:1.15}.payments-header p{margin:3px 0 0;color:#5d6b62;font-size:14px;font-weight:700}.payment-shed-select{display:grid;gap:6px}.payment-shed-select label{color:#425047;font-size:13px;font-weight:850}.payment-shed-select select{width:100%;min-height:44px;border:1px solid #dce4de;border-radius:8px;background:#fff;padding:8px 10px;color:#17211b}.payment-shed-select p{margin:0;color:#647067;font-size:13px;font-weight:700}.payment-section{display:grid;gap:8px}.payment-section h3{margin:0;color:#15231a;font-size:16px}.payment-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.payment-summary-card{display:grid;min-height:72px;align-content:space-between;border:1px solid #e1e7e2;border-radius:8px;background:#fff;box-shadow:0 8px 24px #17211b0a;padding:10px}.payment-summary-card p{margin:0;color:#647067;font-size:12px;font-weight:750}.payment-summary-card strong{margin-top:7px;color:#15231a;font-size:18px;line-height:1.15;white-space:nowrap}.payment-summary-card--warning strong{color:#c26a00}.payment-summary-card--success strong{color:#15803d}.payment-filter-chips{display:flex;gap:8px;max-width:100%;overflow-x:auto;flex-wrap:nowrap;padding:1px 16px 6px 0;scroll-padding-inline:0 16px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.payment-filter-chips:after{content:"";flex:0 0 8px}.payment-filter-chips::-webkit-scrollbar{display:none}.payment-filter-chips button{display:inline-flex;min-height:34px;flex:0 0 auto;flex-shrink:0;align-items:center;gap:6px;border:1px solid #dce4de;border-radius:999px;background:#fff;color:#425047;padding:0 10px;font-size:12px;font-weight:850}.payment-filter-chips button span{display:inline-grid;min-width:22px;height:22px;place-items:center;border-radius:999px;background:#eef5f0;color:#425047;font-size:12px}.payment-filter-chips button.is-active{border-color:#15803d;background:#15803d;color:#fff}.payment-filter-chips button.is-active span{background:#dcfce7;color:#166534}.payment-list{display:grid;gap:8px;min-width:0}.payment-card--compact{gap:7px;min-width:0;padding:10px}.payment-card--compact .payment-card__top{align-items:flex-start;gap:10px}.payment-card--compact h2{font-size:15px;line-height:1.2;overflow-wrap:anywhere}.payment-meta-row,.payment-date-row{display:flex;flex-wrap:wrap;gap:4px 12px;color:#5d6b62;font-size:12px;line-height:1.25}.payment-meta-row span,.payment-date-row span{margin:0;color:inherit;font-size:inherit;font-weight:750}.payment-date-row strong{color:#17211b;white-space:nowrap}.payment-amount-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0}.payment-amount-row div{min-width:0}.payment-amount-row dt{color:#647067;font-size:11px;font-weight:800}.payment-amount-row dd{margin:3px 0 0;color:#17211b;font-size:clamp(11px,3vw,12px);font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:0;white-space:nowrap;overflow:visible}.payment-actions--compact{display:grid;grid-template-columns:1fr;gap:7px}.payment-actions--compact .action-button{min-height:40px;flex:initial;font-size:13px}.details-toggle{display:inline-flex;width:fit-content;min-height:26px;align-items:center;gap:5px;border:0;background:transparent;color:#15803d;padding:0;font-size:13px;font-weight:850}.payment-expanded{display:grid;gap:6px;border-top:1px solid #edf1ee;padding-top:9px}.payment-expanded p{display:flex;justify-content:space-between;gap:12px;margin:0;color:#647067;font-size:12px;line-height:1.3}.payment-expanded strong{color:#17211b;text-align:right;overflow-wrap:anywhere}.payment-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.payment-metrics div{border-radius:8px;background:#f6f8f6;padding:10px}.payment-metrics dt{color:#647067;font-size:12px;font-weight:800}.payment-metrics dd{margin:5px 0 0;color:#17211b;font-weight:900}.payment-actions{display:flex;flex-wrap:wrap;gap:10px}.payment-actions .action-button{flex:1 1 160px}.payment-history{display:grid;gap:10px;margin-top:18px;border-top:1px solid #edf1ee;padding-top:16px}.payment-history h3{margin:0;color:#15231a;font-size:15px}.history-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid #edf1ee;border-radius:8px;padding:11px}.history-row div{display:grid;gap:4px}.history-row span{color:#647067;font-size:12px;font-weight:700}.history-row b{text-align:right}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;height:100dvh;align-items:center;background:#17211b5c;padding:12px;overflow:hidden;overscroll-behavior:contain}.modal-panel{display:grid;gap:12px;width:min(100%,520px);max-height:90dvh;margin:0 auto;overflow-y:auto;overscroll-behavior:contain;border-radius:12px;background:#fff;padding:0 14px 14px;box-shadow:0 20px 60px #17211b38}.modal-panel h2,.modal-panel p{margin:0}.modal-panel h2{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid #edf1ee;padding:14px 0 12px}.modal-panel label{display:grid;gap:7px;color:#425047;font-size:14px;font-weight:800}.modal-panel input,.modal-panel select,.modal-panel textarea{width:100%;min-height:46px;border:1px solid #dce4de;border-radius:8px;background:#fff;padding:10px 12px;color:#17211b}.modal-actions{position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 -14px -14px;border-top:1px solid #edf1ee;background:#fff;padding:12px 14px calc(12px + env(safe-area-inset-bottom))}.modal-actions--stack{grid-template-columns:1fr}.settlement-readonly{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.settlement-readonly div{min-width:0;border-radius:8px;background:#f6f8f6;padding:9px}.settlement-readonly dt{color:#647067;font-size:12px;font-weight:800}.settlement-readonly dd{margin:4px 0 0;color:#17211b;font-size:13px;font-weight:900;overflow-wrap:anywhere}.settlement-card{display:grid;gap:6px;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4;padding:12px}.settlement-card--due{border-color:#fed7aa;background:#fff7ed}.settlement-card p,.settlement-card span,.settlement-card strong{margin:0}.settlement-card p{color:#425047;font-size:13px;font-weight:900}.settlement-card span{color:#5d6b62;font-size:13px;font-weight:750}.settlement-card strong{color:#15803d;font-size:16px}.settlement-card--due strong{color:#c26a00}.list-panel{display:grid;gap:12px;padding:14px}.form-panel{display:grid;gap:14px;padding:14px}.form-panel label{display:grid;gap:7px;color:#425047;font-size:14px;font-weight:800}.form-panel input,.form-panel select,.form-panel textarea{width:100%;min-height:46px;border:1px solid #dce4de;border-radius:8px;padding:10px 12px;color:#17211b;background:#fff}.form-panel textarea{min-height:92px;resize:vertical}.tenant-form{gap:16px;padding-bottom:190px}.form-section{display:grid;gap:12px}.form-section h3,.document-gallery h3{margin:0;color:#15231a;font-size:15px}.checkbox-row{display:flex;align-items:flex-start;gap:10px;border:1px solid #dce4de;border-radius:8px;padding:12px;line-height:1.35}.checkbox-row input{width:18px;min-height:18px;margin-top:2px}.settings-toggle-row{margin-top:10px}.preview-tools{display:grid;gap:10px;margin-top:14px;border-top:1px solid #edf1ee;padding-top:14px}.preview-tools h3{margin:0;color:#17211b;font-size:15px}.document-upload{display:grid;gap:8px}.document-preview,.document-gallery__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.document-preview{align-items:start}.document-preview img,.document-gallery img{width:100%;aspect-ratio:4 / 3;border:1px solid #dce4de;border-radius:8px;object-fit:cover;background:#f6f8f6}.document-preview button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:6px;border:1px solid #fecaca;border-radius:8px;background:#fff;color:#b91c1c;font-weight:850}.document-gallery{display:grid;gap:12px;margin-top:18px;border-top:1px solid #edf1ee;padding-top:16px}.document-gallery figure{margin:0}.document-gallery figcaption{margin-top:6px;color:#5d6b62;font-size:12px;font-weight:800}.sticky-submit{position:sticky;bottom:calc(var(--bottom-nav-height) + 12px);z-index:12;margin:0 -16px;border-top:1px solid #e1e7e2;background:#fff;box-shadow:0 -8px 20px #17211b14;padding:12px 16px}.sticky-submit .action-button{width:100%}.form-error,.form-note{margin:0;border-radius:8px;padding:11px 12px;font-size:14px;font-weight:800}.form-error{background:#fee2e2;color:#b91c1c}.form-note{background:#eef5f0;color:#425047}.prorate-preview{display:grid;gap:5px;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4;padding:10px}.success-panel{gap:12px}.success-actions{display:grid;gap:9px}.settings-form textarea{min-height:96px}.settings-subform{display:grid;gap:14px}.settings-subform--password{margin-top:18px;border-top:1px solid #e2e8f0;padding-top:18px}.settings-subform h3{margin:0;color:#102118;font-size:16px}.tenant-welcome-button{margin-top:4px}.prorate-preview strong{color:#15803d;font-size:14px}.prorate-preview span{color:#425047;font-size:13px;font-weight:750}.prorated-badge{display:inline-flex;width:fit-content;align-items:center;border-radius:999px;background:#eef5f0;color:#425047;margin-left:6px;padding:2px 6px;font-size:10px;font-style:normal;font-weight:900;line-height:1.2;vertical-align:middle;white-space:nowrap}.empty-state{color:#5d6b62;text-align:center}.empty-card{margin:0;border:1px solid #e1e7e2;border-radius:8px;background:#fff;padding:18px;color:#5d6b62;text-align:center;font-weight:800}.report-line{line-height:1.5}.reports-page{display:grid;gap:14px;padding-bottom:180px}.reports-header{display:grid;gap:4px;padding-top:2px}.reports-header h2{margin:0;color:#15231a;font-size:24px;line-height:1.15}.reports-header p{margin:0;color:#5d6b62;font-size:13px;line-height:1.35}.reports-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.reports-summary-grid .stat-card{min-height:72px;padding:10px}.reports-summary-grid .stat-card strong{font-size:19px}.reports-summary-grid .stat-card p{font-size:11px;line-height:1.15;white-space:nowrap}.reports-summary-grid--wide{gap:8px}.report-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:100%}.report-controls label{display:grid;gap:6px;min-width:0;color:#425047;font-size:12px;font-weight:850}.report-controls select,.report-controls input{width:100%;min-width:0;min-height:42px;border:1px solid #dce4de;border-radius:8px;background:#fff;padding:8px 10px;color:#17211b}.report-filter-copy{display:grid;gap:4px;margin-top:-8px}.report-scope,.report-filter-note{margin:0;color:#647067;font-size:12px;font-weight:800}.report-filter-note{margin:0;color:#738077;font-weight:700;line-height:1.35}.report-tab-scroll{display:flex;max-width:100%;gap:8px;overflow-x:auto;padding:0 28px 6px 2px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.report-tab-scroll:after{content:"";flex:0 0 18px}.report-tab-scroll::-webkit-scrollbar{display:none}.report-tab-scroll button{display:inline-flex;min-height:34px;flex:0 0 auto;flex-shrink:0;align-items:center;justify-content:center;border:1px solid #dce4de;border-radius:999px;background:#fff;color:#425047;padding:0 12px;font-size:13px;font-weight:850}.report-tab-scroll button.is-active{border-color:#15803d;background:#15803d;color:#fff}.report-tab-panel{display:grid;gap:12px}.summary-helper-note{margin:0;color:#738077;font-size:12px;font-weight:700;line-height:1.35}.report-records-link{min-height:42px}.report-section{display:grid;gap:8px}.report-section h2{margin:0;color:#15231a;font-size:16px;line-height:1.2}.report-list{display:grid;gap:8px}.report-card,.report-empty{border:1px solid #e1e7e2;border-radius:8px;background:#fff;box-shadow:0 8px 22px #142b1b0d}.report-card{display:grid;gap:8px;min-width:0;padding:10px}.report-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}.report-card h3{margin:0;color:#15231a;font-size:15px;line-height:1.25;overflow-wrap:anywhere}.report-card p{margin:3px 0 0;color:#5d6b62;font-size:13px;line-height:1.35}.report-meta-grid,.report-money-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-money-grid--settlement{grid-template-columns:repeat(2,minmax(0,1fr))}.report-field{display:grid;gap:3px;min-width:0;border-radius:8px;background:#f7faf7;padding:9px}.report-field span{color:#647067;font-size:11px;font-weight:800;line-height:1.2}.report-field strong{color:#15231a;font-size:13px;line-height:1.2;overflow-wrap:anywhere}.report-field--warning strong{color:#c26a00}.report-field--success strong{color:#15803d}.report-note{border-top:1px solid #edf1ee;padding-top:9px}.report-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-actions .action-button{min-height:40px;font-size:13px}.overdue-detail-list{display:grid;gap:8px;border-top:1px solid #edf1ee;padding-top:10px}.overdue-detail-row{display:grid;gap:8px;border:1px solid #edf1ee;border-radius:8px;background:#fbfdfb;padding:10px}.overdue-detail-row div{display:grid;gap:4px}.overdue-detail-row strong{color:#15231a;font-size:13px}.overdue-detail-row span,.overdue-detail-row em{color:#647067;font-size:12px;font-style:normal;font-weight:750}.overdue-detail-row b{color:#c26a00;font-size:13px}.settlement-badge{flex:0 0 auto;border-radius:999px;padding:7px 9px;font-size:12px;font-weight:900;line-height:1;white-space:nowrap}.settlement-badge--refund{background:#dcfce7;color:#166534}.settlement-badge--balance{background:#ffedd5;color:#9a3412}.settlement-badge--clear{background:#eef5f0;color:#425047}.settlement-total{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #edf1ee;padding-top:10px}.settlement-total span{color:#5d6b62;font-size:13px;font-weight:800}.settlement-total strong{color:#15231a;font-size:16px}.report-empty{padding:16px;color:#5d6b62;text-align:center;font-size:13px;font-weight:800}.tenant-records-page,.tenant-detail-page{display:grid;gap:14px;max-width:100%;overflow-x:hidden;padding-bottom:20px}.tenant-records-page{padding-bottom:180px}.tenant-detail-page{gap:10px;padding-bottom:240px}.tenant-detail-page>:last-child{margin-bottom:32px}.tenant-search{display:flex;min-width:0;min-height:44px;align-items:center;gap:9px;border:1px solid #dce4de;border-radius:8px;background:#fff;padding:0 12px;color:#647067}.tenant-search input{width:100%;min-width:0;height:42px;border:0;outline:0;background:transparent;color:#17211b;font-size:14px;line-height:1.2}.tenant-search input::placeholder{color:#7a857d;opacity:1}.tenant-filter-scroll{display:flex;max-width:100%;gap:8px;overflow-x:auto;padding:0 32px 7px 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tenant-filter-scroll:after{content:"";flex:0 0 22px}.tenant-filter-scroll::-webkit-scrollbar{display:none}.tenant-filter-scroll button{display:inline-flex;min-height:34px;flex:0 0 auto;flex-shrink:0;align-items:center;justify-content:center;border:1px solid #dce4de;border-radius:999px;background:#fff;color:#425047;padding:0 12px;font-size:13px;font-weight:850}.tenant-filter-scroll button.is-active{border-color:#15803d;background:#15803d;color:#fff}.tenant-card-list{display:grid;gap:8px}.tenant-record-card{display:grid;gap:8px;min-width:0;border:1px solid #e1e7e2;border-radius:8px;background:#fff;box-shadow:0 8px 22px #142b1b0d;padding:10px}.tenant-record-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.tenant-record-card h3{margin:0;color:#15231a;font-size:15px;line-height:1.25}.tenant-record-card p{margin:3px 0 0;color:#5d6b62;font-size:12px;font-weight:750}.tenant-compact-details{display:grid;gap:7px;margin:0}.tenant-compact-details div{display:grid;grid-template-columns:minmax(84px,auto) minmax(0,1fr);min-width:0;align-items:start;gap:12px}.tenant-compact-details dt{color:#647067;font-size:11px;font-weight:800;white-space:nowrap}.tenant-compact-details dd{margin:0;color:#17211b;font-size:12px;font-weight:900;line-height:1.25;text-align:right;min-width:0;overflow-wrap:anywhere;word-break:break-word}.tenant-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.tenant-card-actions .action-button{min-height:38px;font-size:13px}.tenant-card-actions .action-button:first-child{grid-column:1 / -1}.tenant-detail-section{gap:8px;padding:10px 11px}.tenant-detail-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.detail-list--compact{gap:0;margin:0}.detail-list--compact div{display:grid;grid-template-columns:minmax(104px,auto) minmax(0,1fr);gap:12px;min-width:0;align-items:start;border-bottom:1px solid #edf1ee;border-radius:0;background:transparent;padding:7px 0}.detail-list--compact div:first-child{padding-top:0}.detail-list--compact div:last-child{border-bottom:0;padding-bottom:0}.detail-list--compact dt{color:#647067;font-size:12px;font-weight:800;line-height:1.3}.detail-list--compact dd{color:#17211b;font-size:13px;font-weight:850;line-height:1.3;text-align:right;min-width:0;overflow-wrap:anywhere;word-break:break-word}.tenant-detail-section .empty-card{padding:10px;font-size:13px}.document-gallery__grid figure{margin:0}.document-gallery__grid figcaption{margin-top:6px;color:#5d6b62;font-size:12px;font-weight:800}.tenant-quick-summary{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.tenant-quick-summary span,.tenant-quick-summary b{border-radius:999px;background:#eef5f0;color:#425047;padding:4px 7px;font-size:11px;font-weight:850}.tenant-quick-summary b{background:#ffedd5;color:#9a3412}.tenant-payment-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tenant-summary-tile{display:grid;gap:4px;border-radius:8px;background:#f7faf7;padding:8px}.tenant-summary-tile span{color:#647067;font-size:11px;font-weight:850}.tenant-summary-tile strong{color:#15231a;font-size:16px;line-height:1.1}.tenant-summary-tile--warning strong{color:#c26a00}.tenant-accordion{gap:8px;padding:0;overflow:hidden}.tenant-accordion__header{display:flex;min-height:44px;width:100%;align-items:center;justify-content:space-between;gap:10px;border:0;background:#fff;color:#15231a;padding:11px;text-align:left;font-weight:900}.tenant-accordion__header b{color:#15803d;font-size:12px}.compact-record-list{display:grid;gap:8px;padding:0 10px 10px}.compact-payment-record,.compact-history-row{display:grid;gap:7px;border:1px solid #edf1ee;border-radius:8px;background:#fbfdfb;padding:9px}.compact-payment-record__top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.compact-payment-record h3,.compact-history-row strong{margin:0;color:#15231a;font-size:14px;line-height:1.2}.compact-payment-record p,.compact-history-row span,.compact-history-row p{margin:2px 0 0;color:#5d6b62;font-size:12px;font-weight:750}.compact-payment-record__meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.compact-payment-record__meta span{color:#647067;font-size:12px;font-weight:850}.compact-payment-record__meta .details-toggle{min-height:24px;white-space:nowrap}.tenant-record-whatsapp{display:inline-flex;width:fit-content;min-height:30px;align-items:center;justify-content:center;gap:6px;border:1px solid #b8e0c3;border-radius:8px;background:#ecfdf3;color:#15803d;padding:5px 10px;font-size:12px;font-weight:850;text-decoration:none}.compact-payment-expanded{padding-top:8px}.compact-history-row b{font-size:12px}.compact-history-row b.is-success{color:#15803d}.compact-history-row b.is-warning{color:#c26a00}.compact-history-row b.is-neutral{color:#425047}.edit-tenant-page{padding-bottom:36px}.edit-tenant-page .form-panel input,.edit-tenant-page .form-panel select,.edit-tenant-page .form-panel textarea{min-height:44px}.bottom-nav{position:fixed;right:0;bottom:0;left:0;z-index:30;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:var(--bottom-nav-height);border-top:1px solid #dfe6e1;background:#fff;box-shadow:0 -8px 20px #17211b14;padding:8px 6px max(8px,env(safe-area-inset-bottom))}.bottom-nav__item{display:grid;min-height:56px;place-items:center;gap:3px;color:#68736b;font-size:11px;font-weight:800}.bottom-nav__item.is-active{color:#15803d}@media(min-width:720px){.app-header{padding-inline:20px}.app-main{padding:16px 20px calc(var(--app-page-bottom-space) + env(safe-area-inset-bottom))}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.slot-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}}@media(min-width:520px)and (max-width:719px){.slot-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(min-width:380px)and (max-width:519px){.slot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:339px){.shed-detail-page .summary-card-grid,.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:374px){.payment-actions--compact,.tenant-card-actions{grid-template-columns:1fr}.payment-summary-card{padding:10px}.payment-summary-card strong{font-size:16px}}@media(min-width:380px){.payment-actions--compact:has(.action-button+.action-button){grid-template-columns:repeat(2,minmax(0,1fr))}}
