:root{color:#17201c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3f6f2;font-family:Inter,Segoe UI Variable Text,Segoe UI,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}*{box-sizing:border-box}html{background:#f3f6f2;min-width:320px}body{min-width:320px;min-height:100svh;margin:0}#root{min-height:100svh}:root{--font-sans:Inter, "Segoe UI Variable Text", "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--canvas:#f4f7f5;--surface:#fff;--surface-soft:#f8faf8;--ink:#17201c;--ink-soft:#33413b;--muted:#6f7c76;--line:#dce6df;--line-strong:#c9d7ce;--teal:#0f766e;--teal-dark:#0b4f49;--gold:#b7791f;--blue:#315fd7;--red:#b42318;--green:#157347;--shadow-sm:0 1px 2px #17201c0f, 0 8px 18px #17201c0f;--shadow-md:0 2px 4px #17201c0f, 0 18px 42px #17201c1a;--shadow-lg:0 24px 60px #11231f38;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--sidebar-width:276px;--sidebar-rail:78px;--topbar-height:60px}body{color:var(--ink);background:var(--canvas);font-family:var(--font-sans)}.sidebar-toggle.desktop-only{display:none}.sidebar-toggle.mobile-only{display:grid}.app-shell{min-height:100svh;color:var(--ink);background:var(--canvas);font-family:var(--font-sans);display:block}.mobile-topbar{z-index:40;height:var(--topbar-height);align-items:center;gap:var(--space-3);padding:0 var(--space-4);color:#ecfdf5;box-shadow:var(--shadow-sm);background:#11231f;display:flex;position:sticky;top:0}.mobile-nav-toggle{border-radius:var(--radius-sm);cursor:pointer;background:#ffffff14;border:1px solid #ecfdf529;place-items:center;width:42px;height:42px;min-height:42px;padding:0;display:grid}.hamburger-icon,.hamburger-icon:before,.hamburger-icon:after{background:#ecfdf5;border-radius:2px;width:18px;height:2px;transition:transform .2s;display:block}.hamburger-icon{position:relative}.hamburger-icon:before,.hamburger-icon:after{content:"";position:absolute;left:0}.hamburger-icon:before{top:-6px}.hamburger-icon:after{top:6px}.mobile-brand{align-items:center;gap:var(--space-3);font-weight:640;display:flex}.mobile-brand .brand-mark{width:36px;height:36px;font-size:13px}.mobile-brand-name{letter-spacing:.2px;font-size:16px}.sidebar-backdrop{z-index:50;opacity:0;visibility:hidden;background:#0a141180;transition:opacity .25s,visibility .25s;position:fixed;inset:0}.app-shell.drawer-open .sidebar-backdrop{opacity:1;visibility:visible}.sidebar{z-index:60;width:min(var(--sidebar-width), 84vw);height:100svh;max-height:100svh;padding:var(--space-6) var(--space-5);color:#ecfdf5;box-shadow:var(--shadow-lg);background:#11231f;flex-direction:column;transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;overflow:hidden;transform:translate(-100%)}.app-shell.drawer-open .sidebar{transform:translate(0)}.sidebar .nav-list{overflow-y:auto}@media (width>=900px){.sidebar-toggle.desktop-only{display:grid}.sidebar-toggle.mobile-only{display:none}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);display:grid}.app-shell.sidebar-collapsed{grid-template-columns:var(--sidebar-rail) minmax(0, 1fr)}.mobile-topbar,.sidebar-backdrop{display:none}.sidebar{width:auto;transition:none;position:sticky;transform:none;box-shadow:14px 0 40px #11231f29}}.brand-block{border-bottom:1px solid #ecfdf51f;align-items:center;gap:14px;margin-bottom:34px;padding:0 4px 22px;display:flex}.sidebar-toggle{color:#cfe0da;cursor:pointer;background:#ffffff14;border:1px solid #ecfdf529;border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;min-height:32px;margin-left:auto;padding:0;font-size:16px;line-height:1;display:grid}.sidebar-toggle:hover{color:#13352f;background:#f8fbf7}.brand-mark{color:#17201c;background:#f0c35b;border-radius:8px;place-items:center;width:48px;height:48px;font-size:16px;font-weight:680;display:grid;box-shadow:0 10px 26px #f0c35b3d}.brand-block h1,.topbar h2,.section-heading h3{margin:0}.brand-block h1{color:#fff;letter-spacing:0;font-size:21px;font-weight:620;line-height:1.15}.brand-block .eyebrow{color:#ecfdf59e}.eyebrow{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:650}.nav-list{gap:8px;display:grid}.nav-list a{color:#b7c7c1;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;min-height:44px;padding:0 14px;font-size:14px;font-weight:580;text-decoration:none;display:flex}.nav-icon{flex-shrink:0;place-items:center;width:22px;font-size:14px;font-weight:650;display:grid}.nav-list a[aria-current=page],.nav-list a:hover{color:#13352f;background:#f8fbf7;border-color:#ffffff38;box-shadow:0 10px 24px #00000024}@media (width>=900px){.app-shell.sidebar-collapsed{grid-template-columns:var(--sidebar-rail) minmax(0, 1fr)}.sidebar-collapsed .sidebar{padding:var(--space-6) var(--space-3)}.sidebar-collapsed .brand-text,.sidebar-collapsed .nav-label,.sidebar-collapsed .sidebar-account-email,.sidebar-collapsed .sidebar-account-role{display:none}.sidebar-collapsed .brand-block{flex-direction:column;gap:12px;padding:0 0 18px}.sidebar-collapsed .sidebar-toggle{margin-left:0}.sidebar-collapsed .nav-list a{justify-content:center;gap:0;padding:0}.sidebar-collapsed .nav-icon{width:auto}.sidebar-collapsed .sidebar-logout{justify-content:center;padding:0}}.workspace{min-width:0;padding:clamp(var(--space-4), 3vw, var(--space-10))}.topbar,.section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.topbar{align-items:flex-end;margin-bottom:26px}.topbar-copy{max-width:720px}.topbar-note{color:var(--muted);margin:10px 0 0;font-size:15px;font-weight:480;line-height:1.45}.topbar h2{color:var(--ink);letter-spacing:0;font-size:42px;font-weight:680;line-height:1.04}.actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}button,.button-link{border:1px solid var(--line-strong);min-height:42px;color:var(--ink-soft);font:inherit;cursor:pointer;background:#fffffff0;border-radius:8px;padding:0 16px;font-weight:600;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s;box-shadow:0 1px 2px #17201c0a}.button-link{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.icon-button{justify-content:center;align-items:center;width:42px;min-width:42px;padding:0;display:inline-flex}.icon-button svg{width:18px;height:18px}.icon-button.active{color:#fff;background:var(--teal-dark);border-color:var(--teal-dark);box-shadow:0 10px 24px #0b4f492e}.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}button:hover,button:focus-visible,.button-link:hover,.button-link:focus-visible{border-color:var(--teal);box-shadow:var(--shadow-sm)}button:hover,.button-link:hover{transform:translateY(-1px)}button:focus-visible,.button-link:focus-visible{outline-offset:2px;outline:3px solid #0f766e29}button.primary,.button-link.primary{color:#fff;background:var(--teal-dark);border-color:var(--teal-dark);box-shadow:0 10px 24px #0b4f492e}button.primary:hover,.button-link.primary:hover{background:var(--teal);border-color:var(--teal)}button:disabled{cursor:not-allowed;opacity:.55;transform:none}input,select,textarea{border:1px solid var(--line-strong);width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fbfcf9;border-radius:8px;padding:10px 12px;font-weight:500}input[type=checkbox]{width:auto;min-height:0}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--teal);outline:3px solid #0f766e29}.login-shell{background:radial-gradient(120% 120% at 0% 0%, #0f766e1f, transparent 60%), var(--canvas);place-items:center;min-height:100svh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);width:min(420px,100%);box-shadow:var(--shadow-md);border-radius:18px;padding:32px}.login-card-checking{text-align:center;justify-items:center;gap:14px;display:grid}.login-brand{align-items:center;gap:14px;margin-bottom:18px;display:flex}.login-brand h1{margin:0;font-size:1.4rem}.login-brand .eyebrow{margin:0}.login-intro{color:var(--muted);margin:0 0 22px}.login-form{gap:16px;display:grid}.login-form .field{gap:6px;display:grid}.login-form .field span{color:var(--ink-soft);font-size:.86rem;font-weight:600}.login-error{color:var(--red);background:#b4231814;border-radius:10px;margin:0;padding:10px 12px;font-size:.88rem}.login-submit{justify-content:center;width:100%;margin-top:4px}.sidebar-account{border-top:1px solid #ffffff1f;gap:6px;margin-top:auto;padding-top:18px;display:grid}.sidebar-account-email{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.9rem;font-weight:600;overflow:hidden}.sidebar-account-role{color:#ffffff9e;text-transform:capitalize;margin:0;font-size:.78rem}.sidebar-logout{justify-content:center;align-items:center;gap:10px;width:100%;margin-top:6px;display:flex}.dashboard-hero{grid-template-columns:minmax(0,1.48fr) minmax(300px,.52fr);align-items:start;gap:20px;margin-bottom:24px;display:grid}.dashboard-hero-flow{gap:18px;min-width:0;display:grid}.dashboard-hero-main,.dashboard-hero-side,.dashboard-insight,.arrears-item{background:var(--surface);box-shadow:var(--shadow-sm);border:1px solid #c9d7ced1;border-radius:8px}.dashboard-hero-main,.dashboard-hero-side{padding:24px}.dashboard-hero-main{color:#fff;background:radial-gradient(circle at 100% 0,#2dd4bf33,#0000 36%),linear-gradient(160deg,#10211d 0%,#0f1d1a 100%);border-color:#10211d;gap:20px;display:grid;position:relative;overflow:hidden}.dashboard-hero-main:after{content:"";pointer-events:none;opacity:.38;background-image:linear-gradient(135deg,#ffffff0d 1px,#0000 1px),linear-gradient(225deg,#ffffff08 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000000e6,#0000 95%);mask-image:linear-gradient(#000000e6,#0000 95%)}.dashboard-hero-main>*{z-index:1;position:relative}.dashboard-hero-header,.dashboard-snapshot-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-live-badge,.dashboard-snapshot-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:650;display:inline-flex}.dashboard-live-badge{color:#d8f3ea;background:#ffffff14;border:1px solid #ffffff1f}.dashboard-snapshot-badge{color:var(--teal-dark);background:#e6faf4;border:1px solid #0f766e29}.dashboard-hero-intro{gap:12px;display:grid}.dashboard-hero-main .eyebrow{color:#ecfdf5ad}.dashboard-hero-copy{color:#ecfdf5cc;max-width:58ch;margin:0;font-size:15px;font-weight:460;line-height:1.55}.dashboard-hero-copy-subtle{color:var(--muted)}.dashboard-hero-main h3,.dashboard-hero-side h3{letter-spacing:0;margin:0;font-size:40px;font-weight:680;line-height:1.05}.dashboard-hero-side h3{color:var(--ink);font-size:28px}.dashboard-hero-stats,.dashboard-hero-side dl{gap:14px;margin:0;display:grid}.dashboard-hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-stat-card{background:#ffffff0d;border:1px solid #ffffff1c;border-radius:14px;padding:14px 16px}.dashboard-hero-stats div,.dashboard-hero-side dl div{min-width:0}.dashboard-hero-stats dt,.dashboard-hero-side dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:650}.dashboard-hero-main dt{color:#ecfdf5a8}.dashboard-hero-stats dd,.dashboard-hero-side dd{color:var(--ink);overflow-wrap:anywhere;margin:6px 0 0;font-size:20px;font-weight:660}.dashboard-hero-main dd{color:#fff}.dashboard-findings{flex-wrap:wrap;gap:10px;display:flex}.dashboard-findings span{color:#d8f3ea;background:#ffffff14;border:1px solid #ffffff1f;border-radius:999px;align-items:center;min-height:32px;padding:0 12px;font-size:13px;font-weight:580;display:inline-flex}.dashboard-action-strip{flex-wrap:wrap;gap:10px;padding-top:2px;display:flex}.dashboard-action-strip .button-link:not(.primary){color:#d8f3ea;background:#ffffff14;border-color:#ffffff24}.dashboard-action-strip .button-link:not(.primary):hover{border-color:#d8f3ea80}.dashboard-hero-side{background:linear-gradient(#fff 0%,#fbfdfb 100%);gap:18px;display:grid}.dashboard-hero-side dl{gap:12px}.dashboard-hero-side dl div{border-bottom:1px solid var(--line);padding:12px 0}.dashboard-hero-side dl div:last-child{border-bottom:0;padding-bottom:0}.dashboard-snapshot-foot{flex-wrap:wrap;gap:10px;display:flex}.dashboard-snapshot-foot span{min-height:30px;color:var(--ink-soft);border:1px solid var(--line);background:#f4f8f5;border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:580;display:inline-flex}.dashboard-insight-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;margin-bottom:0;display:grid}.dashboard-insight{border-left:4px solid var(--teal);grid-column:span 2;min-height:148px;padding:20px}.dashboard-insight.featured{min-height:176px;box-shadow:var(--shadow-md);background:linear-gradient(#fff 0%,#f7fbf8 100%);border-top:1px solid #c9d7ced1;border-bottom:1px solid #c9d7ced1;border-right:1px solid #c9d7ced1;grid-column:span 6}.dashboard-insight p{color:var(--muted);text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:650}.dashboard-insight strong{color:var(--ink);font-size:26px;font-weight:680;line-height:1.05;display:block}.dashboard-insight span{color:var(--muted);margin-top:12px;font-size:14px;font-weight:500;line-height:1.4;display:block}.dashboard-insight.due{border-left-color:var(--gold)}.dashboard-insight.settled{border-left-color:var(--green)}.dashboard-insight.balance{border-left-color:var(--blue)}.dashboard-insight.tenants{border-left-color:#8a5cf6}.dashboard-hero-flow .dashboard-insight-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.dashboard-hero-flow .dashboard-insight,.dashboard-hero-flow .dashboard-insight.featured{grid-column:auto;min-height:132px;padding:18px}.dashboard-hero-flow .dashboard-insight.featured{box-shadow:var(--shadow-sm)}.dashboard-hero-flow .dashboard-insight strong{font-size:23px}.dashboard-hero-flow .dashboard-insight span{font-size:13px;line-height:1.35}.dashboard-workspace{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);align-items:start;gap:24px;display:grid}.dashboard-panel{min-width:0}.dashboard-simple-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.structure-panel,.assignment-examples-panel{margin-bottom:18px}.structure-note{color:var(--muted);margin:0 0 14px;font-weight:650;line-height:1.45}.structure-grid,.assignment-example-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.assignment-example-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.structure-grid div,.assignment-example-card{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;min-width:0;padding:14px}.structure-grid strong,.assignment-example-card h4{color:var(--ink);margin:0 0 8px;font-size:15px;font-weight:660;line-height:1.2;display:block}.structure-grid span,.assignment-example-card strong{color:var(--ink-soft);font-size:13px;font-weight:540;line-height:1.42;display:block}.assignment-example-card strong{color:var(--teal-dark)}.unit-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.dashboard-summary-card{background:var(--surface);border:1px solid #c9d7ced1;border-left:4px solid var(--teal);min-height:126px;box-shadow:var(--shadow-sm);border-radius:8px;padding:18px}.dashboard-summary-card.urgent{border-left-color:var(--red);background:linear-gradient(#fff 0%,#fff9f8 100%)}.dashboard-summary-card p,.occupancy-dashboard-grid p{color:var(--muted);text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:650}.dashboard-summary-card strong,.occupancy-dashboard-grid strong{color:var(--ink);font-size:26px;font-weight:680;line-height:1.05;display:block}.dashboard-summary-card span,.occupancy-dashboard-grid span{color:var(--muted);margin-top:10px;font-size:13px;font-weight:650;line-height:1.4;display:block}.dashboard-focus-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:start;gap:24px;margin-bottom:20px;display:grid}.dashboard-period-pill{min-height:34px;color:var(--teal-dark);background:#e6faf4;border:1px solid #0f766e29;border-radius:999px;align-items:center;padding:0 12px;font-size:12px;font-weight:640;display:inline-flex}.tenant-dashboard-table table{min-width:980px}.tenant-dashboard-table td strong{color:var(--ink);font-size:14px;font-weight:680;display:block}.tenant-dashboard-table td span:not(.status-pill){color:var(--muted);margin-top:3px;font-size:12px;font-weight:540;display:block}.tenant-action-list{gap:12px;display:grid}.tenant-action-item{text-align:left;background:var(--surface-soft);border:1px solid var(--line);cursor:pointer;border-radius:8px;width:100%;padding:14px;transition:border-color .15s,box-shadow .15s,transform 50ms;display:block}.tenant-action-item:hover{border-color:var(--teal);box-shadow:var(--shadow-sm)}.tenant-action-item:active{transform:translateY(1px)}.tenant-action-item:focus-visible{outline-offset:1px;outline:3px solid #0f766e47}.tenant-action-item-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.tenant-action-item h4{color:var(--ink);margin:0;font-size:15px;font-weight:660;line-height:1.2}.tenant-action-amount{color:var(--red);white-space:nowrap;flex-shrink:0;font-size:13px;font-weight:640}.tenant-action-points{gap:4px;margin:10px 0 0;padding-left:18px;display:grid}.tenant-action-points li{color:var(--ink-soft);font-size:13px;font-weight:500;line-height:1.4}.dashboard-occupancy-section{margin-bottom:20px}.occupancy-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.occupancy-dashboard-grid div{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;min-width:0;padding:16px}.trend-list,.arrears-list{gap:12px;display:grid}.trend-row{background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;grid-template-columns:150px minmax(160px,1fr) minmax(120px,auto);align-items:center;gap:16px;padding:14px 16px;display:grid}.trend-row:last-child{border-bottom:0}.trend-row strong,.arrears-item h4{color:var(--ink);margin:0;font-size:15px;font-weight:660;line-height:1.2;display:block}.trend-row span,.trend-row small,.arrears-item span{color:var(--muted);margin-top:3px;font-size:13px;font-weight:650;display:block}.trend-meter{appearance:none;width:100%;height:14px}.trend-meter::-webkit-meter-bar{background:#edf3ee;border:0;border-radius:999px}.trend-meter::-webkit-meter-optimum-value{background:var(--teal);border-radius:999px}.trend-meter::-webkit-meter-suboptimum-value{background:var(--teal);border-radius:999px}.trend-meter::-webkit-meter-even-less-good-value{background:var(--teal);border-radius:999px}.trend-meter::-moz-meter-bar{background:var(--teal);border-radius:999px}.arrears-item{border-radius:14px;justify-content:space-between;align-items:flex-start;gap:14px;padding:16px;display:flex}.arrears-item strong{color:var(--red);white-space:nowrap;font-size:16px;font-weight:680}.ledger-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.ledger-summary-card{background:var(--surface);border:1px solid #c9d7ced1;border-left:3px solid var(--teal);min-height:104px;box-shadow:var(--shadow-sm);border-radius:8px;padding:16px}.ledger-summary-card p{color:var(--muted);text-transform:uppercase;margin:0 0 9px;font-size:11px;font-weight:650}.ledger-summary-card strong{color:var(--ink);font-size:23px;font-weight:680;line-height:1.05;display:block}.ledger-summary-card span{color:var(--muted);margin-top:9px;font-size:13px;font-weight:500;line-height:1.35;display:block}.ledger-summary-card.due{border-left-color:var(--gold)}.ledger-summary-card.settled{border-left-color:var(--green)}.ledger-summary-card.balance{border-left-color:var(--blue)}.ledger-summary-card.tenants{border-left-color:#8a5cf6}.ledger-workspace{grid-template-columns:1fr;align-items:start;gap:20px;margin-bottom:20px;display:grid}.ledger-current-panel{margin-bottom:0}.tenant-ledger-panel{margin-bottom:20px}.tenant-ledger-header{grid-template-columns:minmax(280px,.42fr) minmax(0,1fr);align-items:end;gap:18px;margin-bottom:20px;display:grid}.tenant-ledger-header label{color:var(--ink-soft);gap:6px;font-size:12px;font-weight:650;display:grid}.tenant-ledger-header label span{text-transform:uppercase}.tenant-ledger-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;display:grid}.tenant-ledger-summary div{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;min-width:0;padding:12px}.tenant-ledger-summary dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:650}.tenant-ledger-summary dd{color:var(--ink);overflow-wrap:anywhere;margin:5px 0 0;font-size:16px;font-weight:660}.tenant-ledger-receipt-panel{margin-bottom:20px}.paid-rent-table table{min-width:960px}.row-actions{align-items:center;gap:12px;display:flex}.ledger-current-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.ledger-current-stats div{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;min-width:0;padding:10px}.ledger-current-stats dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:650}.ledger-current-stats dd{color:var(--ink);overflow-wrap:anywhere;margin:5px 0 0;font-size:15px;font-weight:660}.ledger-queue-list{border-top:1px solid var(--line);gap:10px;margin-top:16px;padding-top:16px;display:grid}.ledger-queue-item{border:1px solid var(--line);background:#fffdfa;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.ledger-queue-item h4{color:var(--ink);margin:0;font-size:14px;font-weight:660;line-height:1.2}.ledger-queue-item strong{color:var(--red);white-space:nowrap;font-size:15px;font-weight:680}.ledger-panel,.focus-panel,.state-panel,.workflow-panel,.tenant-card,.report-panel,.report-detail-panel{background:var(--surface);box-shadow:var(--shadow-sm);border:1px solid #c9d7ced1;border-radius:8px}.content-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:24px;display:grid}.receipt-workspace{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;gap:24px;margin-bottom:20px;display:grid}.receipt-workspace.single-panel{grid-template-columns:minmax(0,1fr)}.ledger-panel,.focus-panel,.state-panel,.workflow-panel,.report-detail-panel{padding:22px}.workflow-panel{background:var(--surface)}.import-panel,.tenant-management-panel,.ledger-operation-panel,.ledger-filter-panel,.report-statement-panel,.advance-ledger-panel{margin-bottom:20px}.state-panel{max-width:560px}.state-panel h2{color:var(--ink);margin:0 0 10px;font-size:24px;font-weight:640}.state-panel p:not(.eyebrow){color:var(--muted);margin:0 0 18px;line-height:1.5}.section-heading{margin-bottom:20px}.section-heading.compact{margin-bottom:12px}.section-heading h3{color:var(--ink);letter-spacing:0;font-size:21px;font-weight:640;line-height:1.12}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-grid label{color:var(--ink-soft);gap:6px;font-size:12px;font-weight:650;display:grid}.form-grid label span{text-transform:uppercase}.form-wide{grid-column:1/-1}.form-actions{margin-top:16px}.nested-form{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.ledger-filters,.ledger-operation-grid,.report-statement-controls,.advance-entry-grid{align-items:end}.report-statement-controls .form-actions{margin-top:0}.check-row{color:var(--ink-soft);align-items:center;gap:10px;margin-top:16px;font-weight:600;display:inline-flex}.import-actions{align-self:end;margin-top:0}.inline-summary,.receipt-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0 0;display:grid}.receipt-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.import-counts{grid-template-columns:repeat(4,minmax(0,1fr))}.inline-summary div,.receipt-preview-grid div{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;min-width:0;padding:14px}.inline-summary dt,.receipt-preview-grid dt,.tenant-card dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:650}.inline-summary dd,.receipt-preview-grid dd,.tenant-card dd{color:var(--ink);overflow-wrap:anywhere;margin:5px 0 0;font-weight:600}.action-message,.muted{color:var(--muted);margin:14px 0 0;font-weight:500;line-height:1.45}.action-message.success{color:#12613e}.action-message.error{color:var(--red)}.action-message.loading{color:var(--blue)}.import-summary,.statement-result{gap:16px;display:grid}.compact-table table{min-width:620px}.compact-table td:last-child{white-space:normal;max-width:520px}.table-wrap{border-radius:var(--radius-sm);-webkit-overflow-scrolling:touch;scrollbar-width:thin;overscroll-behavior-x:contain;overflow-x:auto}table{border-collapse:separate;border-spacing:0;width:100%;min-width:720px}th,td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:14px}th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;background:#f6f9f5;font-size:11px;font-weight:650}td{color:var(--ink-soft);font-size:14px;font-weight:500}tbody tr:hover td{background:#fbfdf8}.selected-row td{background:#ecfdf5}.table-action{min-height:0;color:var(--teal-dark);box-shadow:none;background:0 0;border:0;padding:0;font-weight:640}.table-action:disabled{color:var(--muted);cursor:not-allowed}.table-action:hover,.table-action:focus-visible{color:var(--teal);box-shadow:none;border-color:#0000;transform:none}.status-pill{color:#9a5b10;background:#fff6dd;border:1px solid #9a5b1029;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:12px;font-weight:640;display:inline-flex}.status-pill.active,.status-pill.available,.status-pill.paid{color:#12613e;background:#e8f7ee;border-color:#12613e24}.status-pill.occupied{color:#145a8a;background:#e8f3fb;border-color:#145a8a24}.status-pill.unpaid,.status-pill.error{color:var(--red);background:#fff0ee;border-color:#b4231824}.status-pill.partial,.status-pill.maintenance,.status-pill.warning{color:#9a5b10;background:#fff6dd;border-color:#9a5b1029}.status-pill.nocharge,.status-pill.vacated,.status-pill.suspended,.status-pill.archived,.status-pill.inactive,.status-pill.notgenerated,.status-pill.nooccupancy{color:#59665f;background:#f0f4f1;border-color:#59665f24}.empty-row{color:var(--muted);text-align:center}.focus-list{color:var(--ink-soft);margin:0;padding-left:20px}.focus-list li{border-bottom:1px solid var(--line);padding:10px 0;font-weight:680}.focus-list li:last-child{border-bottom:0}.tenant-grid,.unit-grid,.report-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.unit-management-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;display:grid}.tenant-card,.unit-management-panel,.report-panel{padding:22px}.tenant-table-panel{padding:0;overflow:hidden}.tenant-table-panel table{min-width:980px}.tenant-table-panel td:first-child strong{color:var(--ink);font-size:15px;line-height:1.25;display:block}.cell-note{color:var(--muted);margin-top:4px;font-size:12px;font-weight:540;display:block}.table-action-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tenant-card,.unit-card{gap:20px;display:grid}.tenant-card h3,.report-panel h3{color:var(--ink);letter-spacing:0;margin:0;font-size:22px;font-weight:640;line-height:1.2}.tenant-card dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;display:grid}.unit-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.unit-card-wide{grid-column:1/-1}.tenant-card .status-pill{justify-self:start}.tenant-card-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding-top:2px;display:flex}.tenant-card-actions{flex-wrap:wrap;gap:12px;display:flex}.advance-ledger-table{margin-top:18px}.report-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-panel.active{box-shadow:inset 0 4px 0 var(--teal), var(--shadow-sm);border-color:#0f766e6b}.report-panel p:last-child{color:var(--muted);margin:12px 0 0;font-weight:650;line-height:1.45}.report-panel .table-action{margin-top:14px}.report-detail-panel{margin:22px 0}.report-tabs{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.report-tabs button.active{color:#fff;background:var(--teal-dark);border-color:var(--teal-dark)}@media (width<=1120px){.dashboard-hero,.dashboard-workspace,.content-grid,.receipt-workspace,.unit-management-grid,.unit-overview-grid,.unit-grid,.tenant-grid,.report-grid,.ledger-summary-grid,.tenant-ledger-header,.tenant-ledger-summary,.ledger-current-stats{grid-template-columns:1fr}.dashboard-insight.featured,.dashboard-insight{grid-column:span 1}.topbar,.section-heading,.dashboard-hero-header,.dashboard-snapshot-header{align-items:flex-start}}@media (width<=1040px){.workspace{padding:var(--space-6)}.content-grid,.receipt-workspace,.dashboard-hero,.dashboard-workspace,.dashboard-focus-grid,.ledger-workspace,.tenant-ledger-header,.dashboard-insight-grid,.ledger-summary-grid,.dashboard-simple-summary,.report-grid{grid-template-columns:1fr 1fr}}@media (width<=700px){.workspace{padding:var(--space-4)}.topbar,.section-heading{flex-direction:column;align-items:flex-start}.topbar h2{font-size:26px}.actions,.actions button,.actions .button-link,.section-heading button{width:100%}.dashboard-hero,.dashboard-hero-stats,.dashboard-insight-grid,.dashboard-simple-summary,.dashboard-focus-grid,.occupancy-dashboard-grid,.structure-grid,.assignment-example-grid,.unit-management-grid,.unit-overview-grid,.unit-grid,.ledger-summary-grid,.ledger-workspace,.ledger-current-stats,.tenant-ledger-header,.tenant-ledger-summary,.dashboard-workspace,.content-grid,.receipt-workspace,.tenant-grid,.report-grid,.form-grid,.inline-summary,.receipt-preview-grid,.import-counts,.tenant-card dl{grid-template-columns:1fr}.dashboard-hero-main h3{font-size:30px}.dashboard-hero-side h3,.dashboard-insight strong{font-size:24px}.trend-row{grid-template-columns:1fr;gap:8px}.arrears-item{flex-direction:column;align-items:flex-start}.ledger-queue-item{flex-direction:column}.table-wrap.cards-on-mobile{overflow-x:visible}.cards-on-mobile table{width:100%;min-width:0}.cards-on-mobile thead{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.cards-on-mobile tbody{gap:var(--space-3);display:grid}.cards-on-mobile tbody tr{gap:var(--space-1);padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:grid}.cards-on-mobile tbody tr:hover td{background:0 0}.cards-on-mobile .selected-row{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal), var(--shadow-sm)}.cards-on-mobile td{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--line);white-space:normal;text-align:right;display:flex}.cards-on-mobile td:last-child{border-bottom:0}.cards-on-mobile td:before{content:attr(data-label);color:var(--muted);letter-spacing:.02em;text-transform:uppercase;text-align:left;flex-shrink:0;font-size:11px;font-weight:650}.cards-on-mobile td:first-child{margin-bottom:var(--space-1);padding-bottom:var(--space-3);text-align:left;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.cards-on-mobile td:first-child:before{display:none}.cards-on-mobile td:first-child strong{color:var(--ink);font-size:16px;font-weight:660}.cards-on-mobile td:first-child span{color:var(--muted);font-size:12px;font-weight:540}.cards-on-mobile .row-actions,.cards-on-mobile .table-action-row{flex-wrap:wrap;justify-content:flex-end}}
