:root{--ink:#173e3b;--muted:#647a76;--teal:#14796a;--line:#e0e9e5;--paper:#f4f7f4;--radius:18px}
*{box-sizing:border-box}html{scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 "Segoe UI",system-ui,sans-serif}a{color:var(--teal);text-underline-offset:3px}button,input,select,textarea{font:inherit}button,.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--teal);color:#fff;border:1px solid transparent;border-radius:11px;padding:11px 19px;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s,box-shadow .15s}button:hover,.button:hover{background:#0e6256}button:disabled{opacity:.5;cursor:wait}.quiet{background:#fff;border-color:var(--line);color:var(--ink)}.quiet:hover{background:#edf4f0}.small{min-height:40px;padding:7px 14px;font-size:13px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d89f38;outline-offset:3px}.app-icon{width:21px;height:21px;flex-shrink:0}.skip-link{position:fixed;top:-100px;left:15px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:10px}
.app-shell{min-height:100dvh;display:flex}.sidebar{width:266px;position:fixed;inset:0 auto 0 0;overflow:auto;display:flex;flex-direction:column;padding:32px 18px 22px;background:#113d36;color:#e0ede6;z-index:30}.brand{display:block;color:#fff;font-size:35px;font-weight:750;letter-spacing:-1.8px;line-height:1.15;text-decoration:none;padding:0 13px}.brand span{display:block;margin-top:9px;color:#b2c9bf;font-size:11px;letter-spacing:.2px;font-weight:400}.nav-caption{color:#9cbab0;font-size:10px;letter-spacing:1.4px;font-weight:700;padding:28px 14px 10px}.sidebar nav{display:grid;gap:4px}.sidebar nav a{display:flex;align-items:center;gap:12px;min-height:45px;padding:11px 13px;color:#c6d9d0;text-decoration:none;border-radius:10px;font-size:13px}.sidebar nav a:hover{background:#204d43;color:#fff}.sidebar nav a.active{background:#dceeac;color:#173e30;font-weight:650}.sidebar nav .nav-caption{padding-top:22px}.sidebar-footer{margin-top:auto;padding:30px 13px 0;font-size:11px;color:#aec8bc}.sidebar-footer small{display:block;margin-top:6px;opacity:.75}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#79ab74;margin-right:7px;flex-shrink:0}
.workspace{margin-left:266px;min-width:0;width:calc(100% - 266px);display:flex;flex-direction:column}.topbar{min-height:82px;padding:15px 38px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.75)}.workspace-label{margin-right:auto;color:var(--muted);font-size:13px}.account-name{font-size:12px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-header,.bottom-nav{display:none}main{width:100%;max-width:1420px;padding:32px 38px 44px;flex:1;outline:none}h1{font-size:clamp(26px,3vw,36px);letter-spacing:-1px;line-height:1.2;margin:0 0 14px;font-weight:680}h2{font-size:19px;letter-spacing:-.4px;line-height:1.3;margin:0 0 12px}h3{font-size:17px;letter-spacing:-.3px;line-height:1.3;margin:17px 0 8px}p{max-width:78ch;margin:0 0 18px;color:var(--muted)}main>h1+p{margin-bottom:28px}.page-kicker,.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;color:#678478;text-transform:uppercase;margin-bottom:12px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;margin-bottom:22px;box-shadow:0 4px 20px #183e3204}.panel h2{margin-bottom:18px}.workspace-footer{padding:0 38px 25px;display:flex;justify-content:space-between;gap:15px;color:#778b80;font-size:12px}.workspace-footer>span{font-size:11px}
.welcome{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;background:#e6eddf;border:1px solid #dae4d3;border-radius:24px;padding:35px 38px;overflow:hidden;position:relative;margin-bottom:32px}.welcome-tag{font-size:11px;display:inline-flex;align-items:center;background:#ffffffa6;padding:5px 11px;border-radius:30px;margin-bottom:20px;color:#44684d}.welcome h1{font-size:clamp(30px,3.3vw,47px);line-height:1.12;letter-spacing:-1.8px;margin-bottom:17px}.welcome h1 span{color:#538368}.welcome p{max-width:48ch;font-size:14px;color:#5c7667}.welcome .button{margin-top:5px}.welcome-art{position:relative;min-height:230px;align-self:stretch}.art-sun{position:absolute;width:135px;height:135px;right:12px;top:5px;background:#d3dfb1;border-radius:50%}.art-building{position:absolute;bottom:47px;display:grid;gap:13px;padding:22px;border-radius:8px 8px 0 0;box-shadow:12px 6px 0 #759b6d35;transform:skewY(-4deg)}.art-building.tall{height:180px;width:115px;right:110px;background:#4c7860;grid-template-columns:repeat(2,1fr)}.art-building.short{height:123px;width:106px;right:22px;background:#90ad80;grid-template-columns:repeat(2,1fr)}.art-building i{background:#e5edcf;border-radius:2px}.art-ground{position:absolute;height:2px;background:#8da07d;bottom:45px;right:0;width:280px}.art-label{position:absolute;bottom:5px;right:17px;background:#fff;padding:9px 14px;border:1px solid #d7e1d1;border-radius:10px;font-size:11px;color:#476449;box-shadow:0 6px 15px #153e3410}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:0 0 20px}.section-heading h2{font-size:23px;margin:0}.section-heading>span{color:var(--muted);font-size:12px}.section-heading .page-kicker{margin-bottom:7px}.action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:28px}.action-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:23px;text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}.action-card:hover{transform:translateY(-3px);box-shadow:0 9px 25px #193c3410;border-color:#a0bbac}.card-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#e3efe4;color:#42765a}.card-icon.amber{background:#faf0da;color:#ad8439}.card-icon.blue{background:#e6f0f3;color:#417c8c}.card-icon.violet{background:#edeafa;color:#84709d}.action-card p{font-size:12px;line-height:1.7;margin-bottom:22px}.card-link{font-size:11px;font-weight:650;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:7px;color:var(--teal)}.card-link .app-icon{width:17px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;list-style:none;margin:22px 0 0;padding:0}.steps li{display:flex;gap:13px;align-items:start}.steps li>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f0f4e9;color:#64815c;font-size:11px;font-weight:700;flex-shrink:0}.steps strong{font-size:13px}.steps p{font-size:12px;margin:4px 0 0}.getting-started{padding:26px}.getting-started h2{font-size:21px}
.empty-state{text-align:center;padding:38px 22px}.empty-state .card-icon{margin:0 auto 18px}.empty-state p{margin:0 auto 18px;max-width:48ch}.building-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:18px}.building-grid>.panel{border-top:3px solid #84aa81}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}label{display:block;margin-bottom:18px;font-size:13px;font-weight:600;color:#35564d}input,select,textarea{display:block;width:100%;max-width:100%;min-height:46px;border:1px solid #cbdad1;border-radius:9px;padding:11px 12px;background:#fcfdfb;color:var(--ink);margin-top:6px;font-size:16px}input:hover,select:hover,textarea:hover{border-color:#8bab9a}textarea{min-height:105px;resize:vertical}input[type=checkbox]{display:inline-block;width:20px;min-height:20px;height:20px;margin:0 8px 0 0;vertical-align:middle;accent-color:var(--teal)}input:disabled,select:disabled{background:#f0f3ef;color:#7f9185}fieldset{min-width:0}legend{font-weight:650;padding-bottom:16px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.panel button{margin:6px 7px 6px 0}.unit-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border-bottom:1px solid #e9efea;padding:14px 0;overflow-wrap:anywhere}.unit-row:last-child{border-bottom:0}.unit-row>span{min-width:0}.notice,.error{border-radius:12px;padding:17px 20px;font-size:13px;border:1px solid #d2e4d7;background:#edf4ec;color:#416649}.error{border-color:#f0cbc2;background:#fff1ed;color:#953c2b}.login{max-width:550px;margin-top:22px;padding:30px}.login>button{width:100%}.login fieldset>button[type=submit]{width:100%}.loading{padding:3rem}.consent-row{display:flex;align-items:flex-start;gap:12px;margin:0;font-weight:400;cursor:pointer}.consent-row input[type=checkbox]{flex:0 0 20px;margin:2px 0 0;padding:0}.consent-row span{flex:1;min-width:0}.password-field{margin-bottom:18px}.password-field>label{margin-bottom:0}.password-control{position:relative}.password-control input{padding-right:56px}.panel .password-toggle{position:absolute;right:2px;top:2px;bottom:2px;width:44px;min-height:40px;margin:0;padding:8px;display:flex;align-items:center;justify-content:center;background:transparent;color:#356b56;border:0}.password-toggle svg{width:23px;height:23px}.password-toggle:hover{background:#e8f2e9}.password-control input::-ms-reveal{display:none}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}th{background:#f2f6f0;font-weight:600}.panel:has(table){overflow-x:auto}#blazor-error-ui{display:none;position:fixed;z-index:100;bottom:75px;background:#fff1ed;padding:16px;width:100%}
@media(min-width:1500px){main{margin:0 auto}}
@media(max-width:1200px){.action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{width:244px}.workspace{margin-left:244px;width:calc(100% - 244px)}main{padding:28px}.welcome{padding:29px}.welcome-art{transform:scale(.85);transform-origin:center right}.topbar{padding:16px 28px}}
@media(max-width:900px){.app-shell{display:block}.sidebar{display:none;position:static;width:auto;padding:12px 20px 22px;max-height:65dvh;overflow:auto}.sidebar.is-open{display:flex}.desktop-brand,.sidebar-footer{display:none}.sidebar .nav-caption{padding-top:12px}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar nav .nav-caption{grid-column:1/-1}.workspace{margin:0;width:100%}.mobile-header{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 22px;background:#113d36;color:white}.mobile-header .brand{font-size:29px;padding:0}.mobile-header .brand span{font-size:10px;margin-top:4px}.menu-toggle{background:#245347;border-color:#3c6556;color:#fff;font-size:12px;min-height:44px;padding:8px 12px}.topbar{min-height:60px;padding:10px 22px}.workspace-label{font-size:11px}.account-name{max-width:180px;font-size:11px}.bottom-nav{position:fixed;z-index:40;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#fffffff5;backdrop-filter:blur(12px);border-top:1px solid var(--line);box-shadow:0 -4px 24px #153e3408}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:48px;border-radius:11px;font-size:10px;text-decoration:none;color:#73847a}.bottom-nav a.active{background:#edf4e8;color:#216c4f;font-weight:650}.bottom-nav .app-icon{width:21px;height:21px}main{padding:25px 22px 35px}.workspace{padding-bottom:84px}.workspace-footer{padding:0 22px 20px}.welcome h1{font-size:38px}}
@media(max-width:600px){main{padding:22px 16px 28px}.mobile-header{padding:16px 18px}.topbar{padding:9px 16px;gap:9px}.workspace-label{display:none}.account-name{margin-right:auto;max-width:calc(100% - 100px)}.topbar>.button{margin-left:auto}.sidebar{padding:10px 14px 20px}.sidebar nav{grid-template-columns:1fr}.sidebar nav a{min-height:46px;font-size:14px}.welcome{padding:26px;grid-template-columns:1fr;margin-bottom:25px;border-radius:20px;gap:15px}.welcome h1{font-size:36px;letter-spacing:-1.3px}.welcome p{font-size:13px}.welcome-art{display:none}.welcome .button{width:100%}.section-heading>span{display:none}.section-heading h2{font-size:21px}.action-grid{gap:12px}.action-card{padding:18px 14px;border-radius:15px}.action-card h3{font-size:15px;overflow-wrap:anywhere}.action-card p{font-size:12px;margin-bottom:16px}.card-link{font-size:11px;align-items:start;overflow-wrap:anywhere}.card-link .app-icon{width:14px;flex-shrink:0}.card-icon{width:39px;height:39px;border-radius:11px}.steps{grid-template-columns:1fr;gap:18px}.getting-started{padding:22px}.fields{grid-template-columns:1fr;gap:0}.panel{padding:20px;border-radius:15px}.login{padding:22px}.toolbar{display:grid;grid-template-columns:1fr 1fr;gap:8px}.toolbar button{padding:10px;font-size:12px}.toolbar button:last-child:nth-child(odd){grid-column:1/-1}.unit-row{flex-wrap:wrap;align-items:start}.unit-row>span{flex:1 1 180px}.workspace-footer>span{display:none}.notice,.error{padding:15px;font-size:12px}h1{font-size:28px}th,td{padding:10px 7px}.panel button:not(.password-toggle){max-width:100%}.building-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
h1:focus{outline:none}.skip-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;padding:0;white-space:nowrap}html{scroll-padding-bottom:100px}.estate-section summary{cursor:pointer;font-weight:650;min-height:28px}.estate-section summary span{display:block;color:var(--muted);font-size:12px;font-weight:400;margin:4px 0 0 18px}.estate-section[open] summary{margin-bottom:18px}.estate-section summary:focus-visible{outline:3px solid #d89f38;outline-offset:4px}

.rent-section{border:1px solid var(--line,#d9e4e0);border-radius:12px;padding:18px;margin:24px 0;min-width:0}.rent-section legend,.rent-change legend{font-weight:700;padding:0 8px}.rent-change{border:1px solid #d9e4e0;border-radius:10px;background:#f8faf9;padding:16px;margin:20px 0;min-width:0}.rent-preview{background:#eef6f2;border-radius:12px;padding:18px;margin:20px 0}.rent-section .toolbar{flex-wrap:wrap}.rent-change:disabled{opacity:.8}

/* Einstellungen */
.settings-tabs,.settings-actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.settings-tabs [aria-pressed="true"]{background:#14796a;color:white}.settings-form{margin-top:20px}.settings-form fieldset{border:0;min-width:0;padding:0;margin:0}.settings-form legend{font-size:1.3rem;font-weight:600;margin-bottom:16px}.settings-check{display:flex;align-items:center;gap:10px;margin:12px 0}.settings-check input{width:20px;height:20px;margin:0}.settings-accounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:18px;margin-top:22px}.settings-account{min-width:0;overflow-wrap:anywhere}.settings-account h3{margin-top:0}.settings-account dt{font-size:12px;color:#647a76}.settings-account dd{margin:0 0 12px}.settings-form button{white-space:normal}

/* Invoice cards keep metadata separate from actions; button words never shrink apart. */
.invoice-list-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.invoice-list-heading h2{margin:0}.invoice-list-heading>span{font-size:13px;color:#647a76;white-space:nowrap}.invoice-cards{display:grid;gap:16px}.invoice-card{min-width:0;border:1px solid var(--line);border-radius:14px;padding:22px;background:#fff}.invoice-card-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:22px}.invoice-card-title{min-width:0;overflow-wrap:anywhere}.invoice-reference{font-size:12px;color:#647a76}.invoice-card-title h3{margin:4px 0 6px;font-size:18px;line-height:1.4}.invoice-card-title p{margin:0;font-size:14px;color:#647a76;max-width:none}.invoice-total{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.invoice-total>span:first-child{font-size:12px;color:#647a76}.invoice-total>strong{font-size:24px;line-height:1.3;font-variant-numeric:tabular-nums;white-space:nowrap}.invoice-status{font-size:12px;font-weight:650;border:1px solid transparent;border-radius:30px;padding:4px 11px;max-width:100%}.invoice-status-booked{background:#e9f3ed;color:#276049;border-color:#d0e6d8}.invoice-status-draft{background:#fff7e7;color:#795319;border-color:#eddfbc}.invoice-status-replaced{background:#f1f4f2;color:#5b6d65;border-color:#dce4df}.invoice-facts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr);gap:14px 24px;margin:20px 0;padding:16px;background:#f5f8f5;border-radius:10px}.invoice-facts>div{min-width:0}.invoice-facts dt{font-size:12px;color:#647a76;margin-bottom:4px}.invoice-facts dd{margin:0;font-size:14px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.invoice-payment-status,.invoice-amendment{font-size:13px;margin:12px 0}.invoice-actions{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid var(--line);padding-top:16px}.invoice-list .invoice-actions>button{margin:0;flex:0 0 auto;max-width:100%;min-width:0;white-space:normal;overflow-wrap:normal;word-break:normal}.invoice-payment-details{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}.invoice-payment-details summary{cursor:pointer;font-weight:600;font-size:13px}.invoice-payment-details p{overflow-wrap:anywhere;max-width:none}
.invoice-draft-hint{font-size:13px;color:#795319;background:#fff9ee;border-left:3px solid #d5ae58;border-radius:0 7px 7px 0;padding:10px 12px;max-width:none;margin:0 0 16px}
.invoice-list{container-type:inline-size;container-name:invoice-list}
.invoice-list .invoice-cards{gap:7px}
.invoice-list .invoice-card{padding:0;overflow:hidden;border-radius:10px}
.invoice-row-summary{display:grid;grid-template-columns:14px minmax(0,1fr) auto auto auto;align-items:center;gap:14px;padding:12px 16px;min-height:52px;cursor:pointer;list-style:none}
.invoice-row-summary::-webkit-details-marker{display:none}
.invoice-row-summary::before{content:'›';font-size:23px;line-height:1;color:var(--teal)}
.invoice-card[open]>.invoice-row-summary::before{transform:rotate(90deg)}
.invoice-row-summary:hover,.invoice-card[open]>.invoice-row-summary{background:#f0f6f3}
.invoice-row-summary:focus-visible{outline:3px solid #d89f38;outline-offset:-3px}
.invoice-row-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}
.invoice-row-name .invoice-reference{font-weight:400;margin-right:6px}
.invoice-row-period{white-space:nowrap;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.invoice-row-amount{white-space:nowrap;text-align:right;font-size:15px;font-variant-numeric:tabular-nums}
.invoice-row-summary .invoice-status{white-space:nowrap;padding:3px 9px;font-size:11px}
.invoice-row-details{padding:16px 18px 18px;border-top:1px solid var(--line)}
.invoice-row-details>h3{font-size:17px;line-height:1.4;margin:0 0 5px;overflow-wrap:anywhere}
.invoice-row-details .invoice-scope{font-size:13px;color:var(--muted);margin:0;max-width:none;overflow-wrap:anywhere}
.invoice-row-details .invoice-facts{margin:14px 0;padding:12px}
@container invoice-list (max-width:650px){
    .invoice-row-summary{grid-template-columns:12px minmax(0,1fr) auto;gap:5px 9px;padding:10px 12px}
    .invoice-row-summary::before{grid-column:1;grid-row:1}
    .invoice-row-name{grid-column:2;grid-row:1}
    .invoice-row-summary .invoice-status{grid-column:3;grid-row:1;justify-self:end}
    .invoice-row-period{grid-column:1 / 3;grid-row:2;font-size:12px;padding-left:21px}
    .invoice-row-amount{grid-column:3;grid-row:2;font-size:14px}
    .invoice-row-details{padding:14px}
}
@media(max-width:700px){.invoice-card{padding:16px}.invoice-card-header{grid-template-columns:1fr;gap:14px}.invoice-total{align-items:flex-start}.invoice-total>strong{font-size:23px}.invoice-facts{grid-template-columns:1fr;gap:12px;padding:14px}.invoice-card-title h3{font-size:17px}.invoice-list .invoice-actions>button{flex:1 1 150px;padding:10px 12px;font-size:13px}.invoice-period dd{line-height:1.5}}

/* Gesamtzahlung und Aufteilung */
.payment-form fieldset{border:0;padding:0;margin:0;min-width:0}.payment-form legend{font-size:1.25rem;font-weight:650;margin-bottom:18px}.payment-form details{padding:16px 0}.payment-form summary{cursor:pointer;font-weight:600}.payment-check{display:flex;align-items:center;gap:10px;margin:16px 0}.payment-check input{width:20px;height:20px;margin:0}.payment-help{font-size:13px}.payment-preview{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.payment-parts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:12px}.payment-parts article{background:#edf4f0;border-radius:12px;padding:16px;min-width:0;overflow-wrap:anywhere}.payment-parts h3{font-size:14px;margin:0 0 8px}.payment-parts strong{font-size:21px}.payment-parts p{font-size:12px;margin-bottom:0}.payment-form button{white-space:normal}.payment-receipt{margin-bottom:20px}

/* Mieterkonto */
.payment-history{margin-bottom:28px;min-width:0}.payment-history .fields{align-items:end}.payment-history .fields button{margin-bottom:16px}.payment-entry{border-top:1px solid var(--line);padding:22px 0;overflow-wrap:anywhere}.payment-entry header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px}.payment-entry h3{font-size:16px;margin:0}.payment-entry header>strong{font-size:22px}.payment-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:12px;margin:18px 0}.payment-totals>div{background:#edf4f0;border-radius:10px;padding:12px;min-width:0;overflow-wrap:anywhere}.payment-totals dt{font-size:12px}.payment-totals dd{font-weight:650;margin:5px 0 0;font-variant-numeric:tabular-nums}.payment-purpose{white-space:pre-wrap}.payment-history .settings-actions{align-items:center}.payment-history select{max-width:100%}

.payment-entry-form{margin:22px 0}.payment-entry-form>summary{cursor:pointer;background:#174d40;color:#fff;border-radius:10px;padding:14px 18px;font-weight:650}.payment-entry-form>summary:focus-visible{outline:3px solid #d89f38;outline-offset:3px}.payment-entry-form .payment-form{margin-top:16px}

/* Nur die ausgewählte Mieterabrechnung drucken, keine Navigation oder Formulare. */
@media print {
 @page { size: A4; margin: 16mm; @bottom-right { content: "Seite " counter(page) " von " counter(pages); font: 8pt Arial, sans-serif; color: #52675f; } }
 body:has(.billing-print){background:white;color:#111;font-size:11pt}
 body:has(.billing-print) .app-shell{display:block;min-height:0}
 body:has(.billing-print) .sidebar,body:has(.billing-print) .topbar,body:has(.billing-print) .mobile-header,body:has(.billing-print) .bottom-nav,body:has(.billing-print) .workspace-footer,body:has(.billing-print) .skip-link{display:none!important}
 body:has(.billing-print) .workspace{margin:0;width:100%;display:block;min-height:0;padding-bottom:0}
 body:has(.billing-print) main{padding:0;max-width:none}
 body:has(.billing-print) main>*:not(.billing-print){display:none!important}
 body:has(.billing-print) .billing-print{border:0;box-shadow:none;padding:0}
 body:has(.billing-print) .billing-document{box-shadow:none;border-radius:0}
 body:has(.billing-print) p{color:#111;max-width:none}
}

/* Kompakte Buchungszeilen in Monatsgruppen */
.payment-month{border:1px solid var(--line);border-radius:12px;margin:12px 0;overflow:hidden;min-width:0}.payment-month-summary{display:grid;grid-template-columns:18px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:16px;cursor:pointer;background:#edf4f0;list-style:none;font-weight:650}.payment-month-summary::-webkit-details-marker,.payment-row-summary::-webkit-details-marker{display:none}.payment-month-summary::before,.payment-row-summary::before{content:'›';font-size:23px;line-height:1}.payment-month[open]>.payment-month-summary::before,.payment-row[open]>.payment-row-summary::before{transform:rotate(90deg)}.payment-month-count{font-size:12px;font-weight:400;color:var(--muted)}.payment-month-summary strong,.payment-row-summary strong{white-space:nowrap;font-variant-numeric:tabular-nums}.payment-row.payment-entry{padding:0;border-top:1px solid var(--line)}.payment-row-summary{display:grid;grid-template-columns:14px 100px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;list-style:none;min-height:48px;font-size:14px}.payment-row-contract{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-row-details{padding:8px 20px 20px;background:#f8faf9}.payment-row-summary:focus-visible,.payment-month-summary:focus-visible{outline:3px solid #d89f38;outline-offset:-3px}.payment-row-summary:hover{background:#f4f8f5}
@media(max-width:600px){.payment-month-summary{grid-template-columns:14px minmax(0,1fr) auto;gap:8px;padding:14px 10px;font-size:14px}.payment-month-count{grid-column:2;grid-row:2}.payment-month-summary strong{grid-column:3;grid-row:1/3;font-size:14px}.payment-row-summary{grid-template-columns:10px 70px minmax(0,1fr) auto;gap:6px;padding:12px 8px;font-size:11px}.payment-row-summary time{font-size:10px}.payment-row-details{padding:12px}.payment-row-details .payment-totals{grid-template-columns:repeat(2,minmax(0,1fr))}}
