.app-shell{min-height:100vh}.app-header{border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface) 94%, transparent);align-items:center;gap:clamp(16px,2.5vw,36px);min-height:72px;padding:0 clamp(18px,4vw,56px);display:flex}.app-logo{color:var(--color-text);align-items:center;gap:10px;font-size:1.08rem;font-weight:800;text-decoration:none;display:inline-flex}.app-logo-mark{width:36px;height:36px;color:var(--color-on-primary);background:var(--color-primary);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;border-radius:11px;flex:none;padding:7px}.header-actions{flex:none;align-items:center;gap:10px;margin-left:auto;display:flex}.rate-chip{color:var(--color-primary);background:var(--color-primary-soft);border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:750}.icon-button,.logout-button{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:var(--color-surface);cursor:pointer}.icon-button{width:38px;height:38px}.logout-button{padding:9px 13px}.app-nav{scrollbar-width:thin;flex:auto;gap:8px;min-width:0;display:flex;overflow-x:auto}.app-nav a{border-radius:var(--radius-sm);color:var(--color-text-muted);white-space:nowrap;padding:8px 13px;font-size:.9rem;font-weight:650;text-decoration:none}.app-nav a:hover{color:var(--color-primary);background:var(--color-primary-soft)}.app-nav a.active,.app-nav a.active:hover{color:var(--color-on-primary);background:var(--color-primary)}.app-content{width:min(100% - 36px,1280px);margin:0 auto;padding:34px 0}.placeholder-page{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:32px}.placeholder-page h1{margin:0 0 8px}.placeholder-page p{color:var(--color-text-muted);margin:0}@media (width<=900px){.app-header{flex-wrap:wrap;min-height:64px;padding-block:12px}.app-nav{flex-basis:100%;order:3}}@media (width<=640px){.app-header{gap:10px}.app-logo-name,.rate-chip{display:none}.logout-button{padding-inline:10px}}.page-header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.page-header h1,.section-card h2,.section-card h3{margin:0}.page-header p,.section-heading p,.empty-state,.muted-text{color:var(--color-text-muted)}.page-header p,.section-heading p{margin:6px 0 0}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.metric-card,.section-card,.apartment-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card)}.metric-card{padding:20px}.metric-label{color:var(--color-text-muted);letter-spacing:.09em;text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:600;display:block}.metric-card strong{color:var(--color-text);font-size:clamp(1.25rem,3vw,1.75rem);display:block}.metric-note{border-radius:8px;width:max-content;max-width:100%;margin-top:8px;padding:4px 8px;font-size:12.5px;font-weight:600;line-height:1.3;display:block}.note-pos{color:var(--chart-rent);background:color-mix(in srgb, var(--chart-rent) 13%, transparent)}.note-neg{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 13%, transparent)}.content-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:20px;display:grid}.upcoming-billing-card{margin-bottom:24px}.upcoming-billing-table td{vertical-align:middle}.upcoming-billing-warning td{color:var(--color-warning);background:var(--color-warning-soft)}.upcoming-billing-link{color:inherit;font-weight:700;text-decoration:none}.upcoming-billing-link:hover{color:var(--color-primary);text-decoration:underline}.section-card{padding:22px}.section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.apartments-grid{display:grid}.dashboard-apartments-list{gap:10px}.apartment-management-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}.dashboard-apartment-row{color:var(--color-text);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;text-decoration:none;display:grid}.apartment-management-card{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:20px;display:grid}.apartment-card:hover{border-color:var(--color-primary)}.card-row,.attention-item{justify-content:space-between;align-items:center;gap:12px;display:flex}.apartment-card h2,.apartment-card h3{margin:0;font-size:1.05rem}.apartment-card h2 a{color:inherit}.apartment-title-row{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.apartment-state-badge{white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:.7rem;font-weight:750;display:inline-flex}.apartment-state-badge.active{color:var(--color-primary);background:var(--color-primary-soft)}.apartment-state-badge.archived{color:var(--color-text-muted);background:var(--color-surface-muted)}.apartment-avatar{width:38px;height:38px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:12px;place-items:center;font-weight:750;display:grid}.apartment-details{min-width:0}.apartment-address{color:var(--color-text-muted);margin:3px 0 0;font-size:.82rem}.apartment-rent{color:var(--color-text-muted);margin-top:5px;font-size:.82rem;display:block}.apartment-summary{text-align:right;flex-direction:column;align-items:flex-end;gap:7px;display:flex}.apartment-summary small{color:var(--color-text-muted);font-size:.72rem}.apartment-summary strong{font-variant-numeric:tabular-nums}.apartment-management-actions{border-top:1px solid var(--color-border);grid-column:2/-1;justify-content:flex-end;padding-top:12px}.card-row{margin-top:8px;font-size:.9rem}.status-badge{color:var(--color-primary);background:var(--color-primary-soft);white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:750;display:inline-flex}.status-badge.paid{color:#397053;background:#dcecdf}.status-badge.issued,.status-badge.unpaid{color:#93611f;background:#f5e8cb}.status-badge.draft{color:var(--color-text-muted);background:var(--color-surface-muted)}.status-badge.overdue{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 14%, transparent)}.attention-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.attention-item{justify-content:initial;border-bottom:1px solid var(--color-border);padding:12px 0}.attention-item:last-child{border-bottom:0}.attention-item a{color:var(--color-text);font-weight:700;text-decoration:none}.attention-dot{border-radius:50%;flex:none;width:8px;height:8px}.attention-dot.rose{background:var(--color-danger)}.attention-dot.amber{background:var(--chart-elec)}.attention-dot.muted{background:var(--color-text-muted)}.attention-details{flex:1;min-width:0}.button,.secondary-button,.danger-button{border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;padding:9px 14px;font-weight:700}.button{color:var(--color-surface);background:var(--color-primary)}.secondary-button{color:var(--color-primary);background:0 0}.danger-button{border-color:var(--color-danger);color:var(--color-danger);background:0 0}.button:disabled,.secondary-button:disabled,.danger-button:disabled{opacity:.5;cursor:not-allowed}.success-message{border-radius:var(--radius-sm);color:#397053;background:#dcecdf;padding:12px 14px}.settings-section+.settings-section{margin-top:20px}.settings-form,.settings-form fieldset,.settings-form label,.import-form,.import-form label{gap:10px;display:grid}.settings-form{gap:18px}.settings-form fieldset{border:1px solid var(--color-border);border-radius:var(--radius-sm);margin:0;padding:18px}.settings-form legend{padding:0 7px;font-weight:750}.settings-form label,.import-form label{color:var(--color-text-muted);font-size:.82rem;font-weight:700}.settings-form input:not([type=checkbox]),.import-form input,.import-form select{border:1px solid var(--color-border);min-width:0;color:var(--color-text);background:var(--color-surface);border-radius:8px;padding:10px 11px}.settings-form .checkbox-field{align-items:center;display:flex}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.schedule-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.import-form{grid-template-columns:minmax(180px,.6fr) minmax(260px,1.4fr);align-items:end}.import-form .form-actions{grid-column:1/-1}.import-report{border-top:1px solid var(--color-border);margin-top:20px;padding-top:20px}.import-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.import-summary div{border-radius:var(--radius-sm);background:var(--color-surface-muted);padding:14px}.import-summary dt{color:var(--color-text-muted);font-size:.78rem}.import-summary dd{margin:6px 0 0;font-size:1.35rem;font-weight:750}.detail-grid{grid-template-columns:minmax(240px,.55fr) minmax(0,1.45fr);gap:20px;display:grid}.apartment-detail-meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;font-size:.85rem;display:flex}.apartment-facts{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.apartment-fact,.stats-summary-tile{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);display:grid}.apartment-fact{gap:7px;padding:16px}.apartment-fact span{color:var(--color-text-muted);letter-spacing:.09em;text-transform:uppercase;font-size:11px;font-weight:600}.tenant-section{grid-column:1/-1}.services-section{grid-column:1/-1;min-width:0}.tenant-card{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);margin-top:18px;padding:18px}.tenant-card-heading,.tenant-card-heading div,.tenant-actions,.tenant-end-form,.attachment-form,.tenant-files li,.tenant-history li{align-items:center;gap:10px;display:flex}.tenant-card-heading{justify-content:space-between}.tenant-card-heading div,.tenant-history li{flex-direction:column;align-items:flex-start;gap:3px}.tenant-card-heading strong{font-size:1.1rem}.tenant-card-heading span,.tenant-history span{color:var(--color-text-muted);font-size:.82rem}.tenant-details{margin-top:14px}.tenant-actions,.tenant-end-form,.tenant-files{margin-top:16px}.tenant-end-form label{color:var(--color-text-muted);gap:5px;font-size:.82rem;font-weight:700;display:grid}.tenant-end-form input,.tenant-form textarea{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface);border-radius:8px;padding:9px 10px}.tenant-contact-link{color:var(--color-primary);text-decoration:none}.tenant-contact-link:hover{text-decoration:underline}.tenant-files{border-top:1px solid var(--color-border);padding-top:16px}.tenant-files h3{margin:0 0 10px;font-size:.95rem}.tenant-files ul,.tenant-history ul{margin:0 0 12px;padding:0;list-style:none}.tenant-files li{justify-content:space-between;padding:7px 0}.attachment-picker{cursor:pointer;align-items:center;display:inline-flex}.file-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.tenant-files .selected-files{color:var(--color-text-muted);margin-top:10px;font-size:.85rem}.tenant-files .selected-files li{margin-left:18px;padding:2px 0;list-style:outside;display:list-item}.tenant-form .tenant-notes{grid-column:1/-1}.tenant-form textarea{resize:vertical;min-height:76px}.tenant-history{color:var(--color-text-muted);margin-top:18px}.tenant-history ul{gap:10px;margin-top:12px;display:grid}.tenant-history strong{color:var(--color-text)}.details-list{grid-template-columns:auto 1fr;gap:10px 16px;margin:20px 0 0;display:grid}.details-list dt{color:var(--color-text-muted)}.details-list dd{margin:0;font-weight:650}.table-wrap{overflow-x:auto}.services-table{border-collapse:collapse;width:100%}.services-table th,.services-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:12px 10px}.services-table th{color:var(--color-text-muted);text-transform:uppercase;font-size:.78rem}.service-name{align-items:center;gap:7px;display:inline-flex}.service-dot{border-radius:50%;flex:none;width:8px;height:8px}.service-dot.gas{background:var(--chart-gas)}.service-dot.elec{background:var(--chart-elec)}.service-dot.water{background:var(--chart-water)}.table-action{color:var(--color-primary);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.inline-form{border-radius:var(--radius-sm);background:var(--color-surface-muted);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 24px;padding:18px;display:grid}.inline-form label{color:var(--color-text-muted);gap:6px;font-size:.82rem;font-weight:700;display:grid}.inline-form .checkbox-label{align-self:end;align-items:center;display:flex}.inline-form .checkbox-label input{width:auto}.inline-form input,.inline-form select{border:1px solid var(--color-border);min-width:0;color:var(--color-text);background:var(--color-surface);border-radius:8px;padding:10px 11px}.form-actions,.tariff-form{align-items:flex-end;gap:10px;display:flex}.tariff-form{margin-top:10px}.tariff-form label{gap:4px;font-size:.78rem;display:grid}.tariff-history{color:var(--color-text-muted);margin-top:8px;font-size:.78rem}.tariff-history ul{margin:6px 0 0;padding-left:18px}.tariff-form input{width:130px;padding:7px}.error-message{border-radius:var(--radius-sm);color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 10%, transparent);padding:12px 14px}.invoice-filters,.invoice-actions,.invoice-totals{align-items:center;gap:12px;display:flex}.invoice-filters{margin-bottom:18px}.invoice-filters label,.rate-field{color:var(--color-text-muted);gap:6px;font-size:.82rem;font-weight:700;display:grid}.invoice-filters select,.rate-field input,.invoice-lines input{border:1px solid var(--color-border);min-width:0;color:var(--color-text);background:var(--color-surface);border-radius:8px;padding:9px 10px}.invoice-lines input{width:120px}.invoice-readonly-value{color:var(--color-text);font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:700}.warning-box{border:1px solid color-mix(in srgb, #b9832c 45%, var(--color-border));border-radius:var(--radius-sm);color:#7d571c;background:color-mix(in srgb, #e7b65f 15%, var(--color-surface));margin-top:18px;padding:14px 16px}.warning-box ul{margin:8px 0 0;padding-left:20px}.invoice-totals{flex-wrap:wrap;justify-content:flex-end;margin:20px 0}.invoice-totals span{min-width:150px;color:var(--color-text-muted);gap:4px;display:grid}.invoice-totals strong{color:var(--color-text);font-size:1.05rem}.invoice-totals .grand-total{border-left:1px solid var(--color-border);padding-left:18px}.invoice-totals .grand-total strong{font-size:1.35rem}.stats-apartment-select{min-width:220px;color:var(--color-text-muted);gap:6px;font-size:.82rem;font-weight:700;display:grid}.stats-apartment-select select{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface);border-radius:8px;padding:9px 10px}.stats-period-panel{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;padding:12px;display:flex}.period-switch,.custom-period-fields{align-items:center;gap:6px;display:flex}.period-switch{flex-wrap:wrap}.period-switch button{color:var(--color-text-muted);background:var(--color-surface-muted);cursor:pointer;border:1px solid #0000;border-radius:999px;padding:8px 12px;font-weight:700}.period-switch button.active{border-color:var(--color-primary);color:var(--color-on-primary);background:var(--color-primary)}.custom-period-fields label{color:var(--color-text-muted);gap:4px;font-size:.78rem;font-weight:700;display:grid}.custom-period-fields input{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-bg);border-radius:8px;padding:7px 9px}.stats-section+.stats-section{margin-top:20px}.stats-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0;display:grid}.stats-summary-tile{gap:6px;padding:18px}.stats-summary-tile-link{color:inherit;cursor:pointer;text-decoration:none;transition:border-color .15s,background-color .15s}.stats-summary-tile-link:hover,.stats-summary-tile-link:focus-visible{border-color:var(--color-primary);background:var(--color-surface-muted)}.stats-summary-tile span,.stats-summary-tile small{color:var(--color-text-muted)}.stats-summary-tile span{font-size:.82rem;font-weight:700}.stats-summary-tile strong{font-size:1.25rem}.stats-summary-tile small{font-size:.78rem}.consumption-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.consumption-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);min-width:0;padding:16px}.chart-tooltip rect{fill:var(--color-text);stroke:var(--color-border)}.chart-tooltip text{fill:var(--color-surface);font-size:10px}.chart-card-heading,.chart-legend,.scope-switch{align-items:center;display:flex}.chart-card-heading{justify-content:space-between;gap:12px}.chart-card-heading h3{margin:0 0 3px;font-size:1rem}.chart-card-heading span,.chart-label{color:var(--color-text-muted)}.chart-card-heading span{font-size:.78rem}.chart-card-heading strong{font-size:1.2rem}.mini-chart,.income-chart{width:100%;height:auto;display:block;overflow:visible}.mini-chart{margin-top:10px}.chart-axis{stroke:var(--color-border);stroke-width:1px}.chart-gridline{stroke:var(--color-border);stroke-width:.5px;vector-effect:non-scaling-stroke}.chart-label{fill:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:10px}.income-value-label{fill:var(--color-text);font-size:11px;font-weight:700}.chart-point,.income-rent,.income-utilities,.income-adjustment-marker{cursor:help}.chart-point:focus,.income-rent:focus,.income-utilities:focus,.income-adjustment-marker:focus{filter:brightness(1.12);stroke:var(--color-text);stroke-width:2px;outline:none}.income-heading{align-items:center}.scope-switch{background:var(--color-surface-muted);border-radius:9px;padding:3px}.scope-switch button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 12px;font-weight:700}.scope-switch button.active{color:var(--color-text);background:var(--color-surface);box-shadow:0 2px 8px var(--color-shadow)}.scope-switch button:disabled{opacity:.5;cursor:not-allowed}.chart-legend{color:var(--color-text-muted);justify-content:flex-end;gap:18px;margin-bottom:8px;font-size:.82rem}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.chart-legend i{border-radius:3px;width:10px;height:10px}.rent-swatch{background:var(--chart-rent)}.utilities-swatch{background:var(--chart-util)}.income-adjustment-marker{fill:var(--color-danger);stroke:var(--color-surface);stroke-width:2px}@media (width<=900px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid,.detail-grid,.consumption-grid,.stats-summary-grid,.schedule-grid,.import-summary{grid-template-columns:1fr}.invoice-header{flex-direction:column;align-items:flex-start}}@media (width<=600px){.page-header,.section-heading,.income-heading{flex-direction:column;align-items:flex-start}.dashboard-grid,.inline-form,.settings-grid,.import-form{grid-template-columns:1fr}.apartment-management-card{grid-template-columns:38px minmax(0,1fr)}.apartment-management-card .apartment-summary{text-align:left;grid-column:2;align-items:flex-start}.invoice-filters,.invoice-actions,.invoice-totals{flex-direction:column;align-items:stretch}.invoice-totals .grand-total{border-left:0;padding-left:0}.stats-apartment-select,.scope-switch,.custom-period-fields{width:100%}.custom-period-fields{flex-direction:column;align-items:stretch}.scope-switch button{flex:1}.chart-legend{flex-direction:column;align-items:flex-start;gap:7px}}.login-page{background:radial-gradient(circle at 20% 15%, var(--color-primary-soft), transparent 34%), var(--color-bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(100%,440px);box-shadow:var(--shadow-card);padding:42px}.login-brand{width:48px;height:48px;color:var(--color-surface);background:var(--color-primary);letter-spacing:-.04em;border-radius:15px;place-items:center;margin-bottom:28px;font-weight:800;display:grid}.login-eyebrow{color:var(--color-primary);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:750}.login-card h1{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,6vw,2.35rem)}.login-lead{color:var(--color-text-muted);margin:12px 0 30px;line-height:1.55}.login-card form{gap:10px;display:grid}.login-card label{margin-top:8px;font-size:.88rem;font-weight:700}.login-card input{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text);background:var(--color-bg);padding:13px 14px}.login-card button{border-radius:var(--radius-sm);color:var(--color-surface);background:var(--color-primary);cursor:pointer;border:0;margin-top:14px;padding:13px 18px;font-weight:750}.login-card button:hover:not(:disabled){background:var(--color-primary-hover)}.login-card button:disabled{cursor:wait;opacity:.65}.login-error{color:var(--color-danger);margin:8px 0 0;font-size:.9rem}@media (width<=520px){.login-page{padding:14px}.login-card{padding:30px 24px}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;--color-bg:#f6f5f1;--color-surface:#fff;--color-surface-muted:#fbfaf7;--color-text:#2f3833;--color-text-muted:#8c958e;--color-primary:#4e7a6a;--color-primary-hover:#5e7059;--color-primary-soft:#dfeae4;--color-on-primary:#fff;--color-border:#e7e5dd;--color-danger:#a14e4e;--color-warning:#7d571c;--color-warning-soft:#fff4dc;--color-shadow:#303d331a;--chart-gas:#eb6834;--chart-elec:#eda100;--chart-water:#2a78d6;--chart-rent:#1baf7a;--chart-util:#4a3aa7;--chart-tenant-marker:#9c6644;--radius-sm:10px;--radius-md:12px;--radius-lg:24px;--shadow-card:0 1px 2px #2f38330d, 0 4px 14px #2f38330a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#141613;--color-surface:#1f211d;--color-surface-muted:#24261f;--color-text:#e9eae4;--color-text-muted:#8a9089;--color-primary:#7fab97;--color-primary-hover:#bbccb5;--color-primary-soft:#2a3630;--color-on-primary:#14251e;--color-border:#33362f;--color-danger:#e69595;--color-warning:#e2b767;--color-warning-soft:#3b3020;--color-shadow:#00000047;--chart-gas:#d95926;--chart-elec:#c98500;--chart-water:#3987e5;--chart-rent:#199e70;--chart-util:#9085e9;--chart-tenant-marker:#d6a36f;--shadow-card:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#141613;--color-surface:#1f211d;--color-surface-muted:#24261f;--color-text:#e9eae4;--color-text-muted:#8a9089;--color-primary:#7fab97;--color-primary-hover:#bbccb5;--color-primary-soft:#2a3630;--color-on-primary:#14251e;--color-border:#33362f;--color-danger:#e69595;--color-warning:#e2b767;--color-warning-soft:#3b3020;--color-shadow:#00000047;--chart-gas:#d95926;--chart-elec:#c98500;--chart-water:#3987e5;--chart-rent:#199e70;--chart-util:#9085e9;--chart-tenant-marker:#d6a36f;--shadow-card:none}}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--color-text);background:var(--color-bg);margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb, var(--color-primary) 42%, transparent);outline-offset:2px}.loading-screen{min-height:100vh;color:var(--color-text-muted);place-items:center;display:grid}
