.sidebar .brand { padding-bottom:10px; }
.sidebar .nav-label { margin:17px 12px 5px; font-size:8px; }
.sidebar nav { gap:2px; }
.sidebar nav a { min-height:34px; padding:6px 11px; font-size:12px; }
.sidebar nav[aria-label="Belegart auswählen"] a>span { font-size:10px; color:#a9c6c5; }
.mobile-menu-toggle,.mobile-menu-overlay { display:none; }
.billing-progress>div { display:flex; flex-wrap:wrap; gap:12px; }.billing-progress>div>span { background:#f1f4f6; padding:9px 16px; border-radius:6px; font-size:12px; color:var(--muted); }.billing-progress .step-done { color:#166446; background:#e9f4ed; }.billing-progress .step-active { background:var(--accent); color:#fff; }
.payment-indicator { display:inline-flex; gap:7px; align-items:center; font-size:11px; font-weight:600; white-space:nowrap; }
.payment-indicator i { width:7px; height:7px; border-radius:50%; flex-shrink:0; }
.payment-paid { color:#186647; }.payment-paid i { background:#238451; }
.payment-open { color:#a72d36; }.payment-open i { background:#c93b48; }
.payment-closed { color:var(--muted); }.payment-closed i { background:#8898a0; }
.editable-record { cursor:pointer; }.editable-record:hover { background:#f4f8f7; }
#record-editor { width:min(1120px,94vw); height:90vh; max-width:94vw; max-height:94vh; padding:0; border:1px solid #cbd9dd; border-radius:12px; color:var(--ink); box-shadow:0 24px 80px #102c4050; }
#record-editor::backdrop { background:#10233080; }
#record-editor>header { display:flex; align-items:center; justify-content:space-between; padding:12px 20px; border-bottom:1px solid var(--line); background:white; height:62px; }
#record-editor>header strong { font-size:13px; }
#record-editor iframe { display:block; width:100%; height:calc(100% - 62px); border:0; }
.embedded-editor .sidebar,.embedded-editor .topbar,.embedded-editor footer,.embedded-editor .mobile-menu-toggle,.embedded-editor .mobile-menu-overlay { display:none!important; }
.embedded-editor .workspace { margin-left:0!important; }.embedded-editor main { padding:26px; min-height:0; }
.invoice-editor { grid-template-columns:minmax(0,1.15fr) minmax(300px,.8fr); align-items:start; }
.invoice-section-heading { display:flex; gap:12px; align-items:flex-start; margin:27px 0 20px; padding-top:24px; border-top:1px solid var(--line); }
.invoice-section-heading:first-of-type { margin-top:0; border-top:0; padding-top:0; }
.invoice-section-heading>span { border:1px solid #ccded6; color:var(--accent); border-radius:50%; width:28px; height:28px; font-size:10px; display:grid; place-items:center; flex-shrink:0; }
.invoice-section-heading h2 { margin-bottom:3px; font-size:17px; }.invoice-section-heading p { font-size:11px; color:var(--muted); margin-bottom:0; }
.invoice-customer-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.invoice-customer-fields p { min-width:0; margin:0; }.invoice-customer-fields label { font-size:11px; }.invoice-wide { grid-column:1/-1; }
.item-row.invoice-item { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px 10px; padding:17px; border:1px solid var(--line); border-radius:8px; background:#f9fbfc; margin-bottom:13px; }
.invoice-item p { margin:0; min-width:0; }.invoice-item label,.invoice-field-label { font-size:10px; margin-bottom:7px; display:block; }.invoice-item input { padding:10px 7px; font-size:12px; }.invoice-description { grid-column:1/-1; }.invoice-row-sum strong { display:block; padding-top:8px; font-size:12px; font-variant-numeric:tabular-nums; }.invoice-item .invoice-delete { grid-column:1/-1; display:flex; gap:7px; align-items:center; justify-content:flex-end; }.invoice-delete input { width:auto; min-height:auto; }.invoice-delete label { display:inline; margin:0; font-size:10px; color:var(--muted); }.invoice-item-removed { opacity:.55; }
.invoice-summary { padding:19px 0; margin-top:17px; border-block:1px solid var(--line); }.invoice-summary>div { display:flex; justify-content:space-between; gap:14px; margin-bottom:7px; font-size:12px; }.invoice-summary>div:last-child { font-size:16px; margin:15px 0 0; padding-top:12px; border-top:1px solid var(--line); }.invoice-summary strong { font-variant-numeric:tabular-nums; }.invoice-save-note { font-size:11px; line-height:1.8; margin:18px 0 0; }.invoice-order-context { background:#f2f7f5; padding:14px; margin:15px 0 20px; border-radius:6px; }.invoice-order-context strong,.invoice-order-context span { display:block; }.invoice-order-context span,.invoice-order-context a { font-size:12px; }.linked-deposit { border-top:1px solid var(--line); margin-top:23px; padding-top:19px; }.linked-deposit strong { font-size:12px; }.linked-deposit p { font-size:11px; color:var(--muted); margin:7px 0 12px; }.linked-deposit button { font-size:12px; }
@media(max-width:1100px) { .invoice-editor { grid-template-columns:minmax(0,1fr); } }
@media(max-width:720px) {
 .mobile-menu-toggle { display:block; position:fixed; top:13px; left:16px; z-index:8; background:white; border:1px solid #c5d5d9; color:var(--ink); border-radius:6px; padding:8px 14px; font-size:12px; cursor:pointer; }
 .mobile-nav-checkbox:focus-visible+.mobile-menu-toggle { outline:3px solid #268c80; outline-offset:3px; }
 .app-shell .topbar { min-height:68px; padding-left:100px; }
 .sidebar { position:fixed; width:min(290px,86vw); height:100dvh; inset:0 auto 0 0; padding:70px 17px 20px; overflow-y:auto; z-index:7; transform:translateX(-110%); }
 #mobile-nav-toggle:checked~.sidebar { transform:translateX(0); }
 #mobile-nav-toggle:checked~.mobile-menu-overlay { display:block; position:fixed; inset:0; z-index:6; background:#0e263e70; cursor:pointer; }
 .sidebar .nav-label { display:block; }.sidebar nav { display:grid; grid-template-columns:1fr; gap:2px; }.sidebar nav a { text-align:left; font-size:12px; padding:7px 10px; }.sidebar nav a>span { display:inline-block; width:23px; font-size:15px; }.sidebar nav[aria-label="Verwaltung"] { display:grid; }
 .sidebar .sidebar-bottom { display:flex; }
 .invoice-customer-fields { grid-template-columns:1fr; }.invoice-wide { grid-column:auto; }.item-row.invoice-item { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #record-editor { width:96vw; max-width:96vw; height:94dvh; max-height:96dvh; }.embedded-editor main { padding:20px 16px; }
}
