:root{font-family:Inter,system-ui,sans-serif;color:#1f2933;background:#f4f6f7}*{box-sizing:border-box}body{margin:0}header{background:#4a6070;color:white;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;height:68px}.brand{font-size:1.25rem;font-weight:700}.brand span{font-weight:400;opacity:.7;font-size:.85rem}nav a{color:white;text-decoration:none;margin-left:1.5rem}main{width:100%;max-width:1800px;margin:32px auto;padding:0 clamp(14px,2vw,32px)}h1{margin:0 0 20px}.lead{font-size:1.15rem}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.cards,.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.card,section{background:white;border:1px solid #d9e0e4;border-radius:8px;padding:24px}.card{text-decoration:none;color:inherit}.card:hover{border-color:#4a6070}.button,button{background:#4a6070;color:white;border:0;border-radius:5px;padding:10px 16px;text-decoration:none;cursor:pointer}.secondary{background:#6b7780}table{width:100%;border-collapse:collapse;background:white;border:1px solid #d9e0e4}th,td{text-align:left;padding:12px;border-bottom:1px solid #e6eaed;vertical-align:top}th{background:#edf1f3}.form{max-width:720px;background:white;padding:24px;border:1px solid #d9e0e4;border-radius:8px;display:grid;gap:16px}.form.two{grid-template-columns:1fr 1fr}.form.two button{grid-column:1/-1}.form label,.upload label{display:grid;gap:6px;font-weight:600}input,select,textarea{width:100%;padding:10px;border:1px solid #b8c2c8;border-radius:4px;font:inherit}.search,.inline-form{display:flex;gap:10px;margin-bottom:18px}.search input{max-width:520px}.upload{display:grid;grid-template-columns:2fr 1fr 1fr 2fr auto;gap:12px;align-items:end;margin-bottom:20px}dl{display:grid;grid-template-columns:130px 1fr;gap:8px}dt{font-weight:700}dd{margin:0}@media(max-width:800px){.cards,.grid,.form.two{grid-template-columns:1fr}.upload{grid-template-columns:1fr}.form.two button{grid-column:auto}header{align-items:flex-start;height:auto;padding-top:16px;padding-bottom:16px;gap:12px;flex-direction:column}nav a{margin:0 1rem 0 0}table{display:block;overflow-x:auto}}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.5rem 0}.stats div{background:#fff;border:1px solid #d7dde1;border-radius:8px;padding:1.2rem}.stats strong{display:block;font-size:2rem}.stats span{color:#667}.filter{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:.8rem;align-items:end;margin:1rem 0}.filter label,.upload label{display:flex;flex-direction:column;gap:.3rem}.compact{grid-template-columns:2fr 1fr auto}.wide{grid-column:1/-1}.clean{list-style:none;padding:0}.clean li{display:flex;justify-content:space-between;border-bottom:1px solid #eee;padding:.5rem 0}.link-button{border:0;background:none;color:#5a7080;text-decoration:underline;cursor:pointer}.timeline{list-style:none;padding:0}.timeline li{display:grid;grid-template-columns:150px 1fr;gap:1rem;padding:.5rem 0;border-bottom:1px solid #eee}.timeline time{color:#667;font-size:.9rem}@media(max-width:800px){.stats,.filter{grid-template-columns:1fr}.timeline li{grid-template-columns:1fr}}
.userbox{display:flex;align-items:center;gap:.8rem;font-size:.9rem}.userbox form,.inline{display:inline}.login-page{display:grid;min-height:100vh;place-items:center;background:#eef1f4}.login-card{width:min(420px,calc(100% - 2rem));background:white;padding:2rem;border-radius:10px;box-shadow:0 8px 30px rgba(0,0,0,.12)}.login-card label{display:block;margin:1rem 0}.login-card input{width:100%;box-sizing:border-box}.error{background:#fee2e2;color:#991b1b;padding:.75rem;border-radius:6px}
tr.overdue td{background:#ffe3e3}tr.due-today td{background:#fff4cc}
.calendar-nav{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin:1rem 0}.calendar-nav h2{margin:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekdays div{font-weight:700;background:#edf1f3;padding:.7rem;border:1px solid #d9e0e4}.month-grid{background:white;border-left:1px solid #d9e0e4;border-top:1px solid #d9e0e4}.calendar-day{min-height:150px;padding:.45rem;border-right:1px solid #d9e0e4;border-bottom:1px solid #d9e0e4}.calendar-day.outside{background:#f2f3f4;color:#87929a}.calendar-day.today{outline:3px solid #4a6070;outline-offset:-3px}.day-head{display:flex;justify-content:space-between;font-weight:700;margin-bottom:.4rem}.day-head a{text-decoration:none;font-size:1.15rem}.cal-item{display:block;text-decoration:none;color:#1f2933;border-left:5px solid #6b7780;background:#eef2f4;border-radius:4px;padding:.35rem .45rem;margin:.3rem 0;font-size:.82rem}.cal-item strong,.cal-item small{display:block}.event-gericht{border-color:#7c3aed}.event-besprechung{border-color:#2563eb}.event-telefon{border-color:#0891b2}.event-intern{border-color:#64748b}.event-abwesenheit{border-color:#d97706}.task-frist{border-color:#dc2626;background:#fee2e2}.task-wiedervorlage{border-color:#16a34a;background:#dcfce7}.status-erledigt,.status-abgesagt{opacity:.55;text-decoration:line-through}.calendar-filter{grid-template-columns:1fr 1fr auto;max-width:700px}.checkbox{display:flex!important;flex-direction:row!important;align-items:center;gap:.5rem}.checkbox input{width:auto}.calendar-edit{max-width:none}.notice{background:#fff4cc;padding:1rem;border-radius:6px}@media(max-width:900px){.weekdays{display:none}.calendar-grid.month-grid{display:block}.calendar-day{min-height:auto}.calendar-day.outside{display:none}.calendar-filter{grid-template-columns:1fr}}

/* Outlook-aehnliche Wochenansicht ab v0.6.1 */
.week-calendar-shell{overflow-x:auto;border:1px solid #b8c2c8;border-radius:8px;background:#fff;box-shadow:0 2px 8px rgba(31,41,51,.06)}
.week-calendar{display:grid;grid-template-columns:72px repeat(7,minmax(125px,1fr));grid-template-rows:58px minmax(74px,auto) 720px;min-width:980px;position:relative}
.week-corner,.week-day-head,.all-day-label,.all-day-cell,.time-axis,.day-column{border-right:1px solid #cbd3d8;border-bottom:1px solid #cbd3d8}
.week-corner{display:grid;place-items:center;background:#e8edf0;font-weight:700;color:#52636e}
.week-day-head{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#edf1f3}.week-day-head strong{font-size:.95rem}.week-day-head span{font-size:.86rem;color:#52636e}
.week-day-head.is-today{background:#dfeaf0;box-shadow:inset 0 -4px #4a6070}.week-day-head.is-weekend,.all-day-cell.is-weekend,.day-column.is-weekend{background-color:#f7f8f9}
.all-day-label{padding:10px 6px;background:#edf1f3;font-size:.78rem;font-weight:700;text-align:center;line-height:1.35}
.all-day-cell{padding:5px;min-height:74px;background:#fff}.all-day-cell.is-today{background:#f4f9fb}
.week-chip{display:block;margin:2px 0;padding:4px 5px;border-radius:4px;border-left:5px solid #64748b;background:#eef2f4;color:#1f2933;text-decoration:none;font-size:.72rem;line-height:1.2;overflow:hidden}.week-chip strong,.week-chip small{display:block}.week-chip small{opacity:.78;margin-top:2px}
.time-axis{position:relative;background:#f8fafb}.time-label{position:absolute;right:7px;transform:translateY(-8px);font-size:.72rem;color:#64727c;z-index:2;background:#f8fafb;padding-left:3px}
.day-column{position:relative;height:720px;background:#fff;overflow:hidden}.day-column.is-today{background:#fbfdfe}
.hour-cell{position:absolute;left:0;right:0;height:60px;border-top:1px solid #d8dee2;border-bottom:1px dotted #edf0f2;text-decoration:none}.hour-cell:hover{background:rgba(74,96,112,.07)}
.week-event{position:absolute;left:3px;right:3px;z-index:4;border:1px solid rgba(0,0,0,.18);border-left-width:5px;border-radius:4px;padding:4px 5px;overflow:hidden;text-decoration:none;color:#17212b;font-size:.72rem;line-height:1.2;box-shadow:0 1px 3px rgba(0,0,0,.12)}.week-event strong,.week-event small{display:block}.week-event small{margin-top:2px;opacity:.8}
.event-besprechung{background:#dbeafe!important;border-color:#2563eb!important}.event-telefon{background:#cffafe!important;border-color:#0891b2!important}.event-gericht{background:#fee2e2!important;border-color:#dc2626!important}.event-ausserhaus{background:#ffedd5!important;border-color:#ea580c!important}.event-intern{background:#e5e7eb!important;border-color:#64748b!important}.event-abwesenheit{background:#fef3c7!important;border-color:#d97706!important}.event-sonstiges{background:#ede9fe!important;border-color:#7c3aed!important}.task-frist{background:#fee2e2!important;border-color:#dc2626!important}.task-wiedervorlage{background:#dcfce7!important;border-color:#16a34a!important}
.current-time-line{position:absolute;left:0;right:0;height:2px;background:#dc2626;z-index:8;pointer-events:none}.current-time-line:before{content:"";position:absolute;left:-1px;top:-3px;width:8px;height:8px;border-radius:50%;background:#dc2626}
.calendar-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.calendar-legend span{padding:5px 9px;border-radius:4px;font-size:.78rem;border-left:5px solid}.legend-besprechung{background:#dbeafe;border-color:#2563eb!important}.legend-gericht,.legend-frist{background:#fee2e2;border-color:#dc2626!important}.legend-ausserhaus{background:#ffedd5;border-color:#ea580c!important}.legend-telefon{background:#cffafe;border-color:#0891b2!important}.legend-wv{background:#dcfce7;border-color:#16a34a!important}
.week-nav{flex-wrap:wrap}.week-nav h2{min-width:250px;text-align:center}
@media(max-width:800px){main{padding:0 10px}.week-calendar-shell{border-radius:4px}.week-calendar{grid-template-columns:58px repeat(7,125px)}.calendar-legend{font-size:.72rem}}
.task-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.task-tabs a{padding:.55rem .8rem;border:1px solid #cbd5e1;border-radius:.4rem;background:#fff;color:#334155;text-decoration:none}.priority{display:inline-block;padding:.2rem .5rem;border-radius:.35rem;font-size:.85rem}.priority-niedrig{background:#e2e8f0}.priority-normal{background:#dbeafe}.priority-hoch{background:#fed7aa}.priority-dringend{background:#fecaca;font-weight:700}

.email-form{max-width:900px}.email-form fieldset{border:1px solid #d9e0e4;border-radius:6px;padding:1rem}.email-body{white-space:pre-wrap;background:#f8fafb;border:1px solid #d9e0e4;padding:1rem;border-radius:6px;font:inherit}

/* Breite, zweispaltige Aktenansicht ab v0.8.1 */
body:has(.case-page) main{max-width:none;width:100%;margin:24px auto;padding:0 clamp(12px,2vw,32px)}
.case-page{width:100%;max-width:1800px;margin:0 auto}
.case-top-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-bottom:20px}
.case-module{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:20px;align-items:start;margin-bottom:20px;padding:20px}
.case-module-list{min-width:0}.case-module-tool{min-width:0;background:#f7f9fa;border:1px solid #d9e0e4;border-radius:7px;padding:16px;position:sticky;top:16px}
.case-module-tool h3{margin:0 0 12px}.case-module-tool hr{border:0;border-top:1px solid #d9e0e4;margin:18px 0}
.tool-form{display:grid;grid-template-columns:1fr;gap:11px;margin-top:12px}.tool-form label{display:grid;gap:5px;font-weight:600}.tool-form button{justify-self:start}
.table-wrap{width:100%;overflow-x:auto}.table-wrap table{min-width:680px}
.case-module details{border-top:1px solid #d9e0e4;padding-top:12px;margin-top:12px}.case-module details:first-child{border-top:0;padding-top:0;margin-top:0}.case-module summary{font-weight:700;cursor:pointer}
.version-form{min-width:170px}.version-form input{font-size:.78rem;padding:5px}
@media(max-width:1000px){body:has(.case-page) main{padding:0 12px}.case-top-grid,.case-module{grid-template-columns:1fr}.case-module{padding:14px}.case-module-tool{position:static}.case-heading{align-items:flex-start;gap:12px;flex-direction:column}.case-heading>div:last-child{display:flex;flex-wrap:wrap;gap:8px}}
@media(max-width:600px){.case-top-grid{gap:12px}.case-page section{padding:14px}.case-module{gap:14px}.case-module .heading{align-items:flex-start;gap:8px;flex-direction:column}.table-wrap table{min-width:620px}.tool-form button,.case-module-tool .button{width:100%;text-align:center}}

/* Aktenbuchhaltung v0.9.0 */
.money{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}.money-open{color:#b42318}.money-credit{color:#067647}.case-module-list .lead{margin:.2rem 0 0;font-size:1rem}.case-module-tool textarea{width:100%;box-sizing:border-box}
.invoice-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.invoice-summary>div{border:1px solid #d7dee8;padding:1rem;border-radius:.5rem}.money-open{color:#a61b1b}.money-credit{color:#176b35}@media print{header,nav,.userbox,button,.case-module-tool{display:none!important}main{max-width:none!important;margin:0!important;padding:0!important}section{box-shadow:none!important;border:0!important}}

.searchbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;max-width:900px}.search-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1rem}.search-results section,.panel{background:#fff;border:1px solid #d9dee7;border-radius:8px;padding:1rem}.result{display:block;padding:.55rem .2rem;border-bottom:1px solid #edf0f4;text-decoration:none}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin:1rem 0}.card{background:#fff;border:1px solid #d9dee7;border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.4rem}.card span{font-size:1.35rem}

.inline-form{display:inline;margin-left:.35rem}.inline-form button{padding:0;border:0}.document-actions{display:flex;gap:.4rem;flex-wrap:wrap}

.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.settings-card{display:flex;flex-direction:column;gap:.45rem;padding:1.2rem;border:1px solid #cbd5e1;border-radius:10px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 1px 3px rgba(15,23,42,.08)}.settings-card:hover{border-color:#64748b;box-shadow:0 4px 12px rgba(15,23,42,.12)}.settings-card strong{font-size:1.05rem}.settings-card span{color:#475569;line-height:1.4}

.signature-preview{border:1px solid #d7dde5;border-radius:8px;padding:14px;background:#fff;margin:12px 0;overflow:auto}.signature-preview img{display:block;max-width:280px;max-height:140px;object-fit:contain;margin:0 0 10px}.button.danger,button.danger{background:#a61b1b;color:#fff}.overdue{color:#9b1c1c}

.inbox-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,1fr);gap:1rem;align-items:start}.inbox-tool{position:sticky;top:1rem}.selected-row{background:#eef5ff}.notice{margin-top:1rem;padding:1rem;border:1px solid #cbd5e1;border-radius:8px;background:#f8fafc}.danger{color:#991b1b}@media(max-width:1000px){.inbox-layout{grid-template-columns:1fr}.inbox-tool{position:static}}


/* Einheitlicher Aktenverlauf v1.2.2 */
.case-actionbar{margin-bottom:20px}.case-actionbar h2{margin-top:0}.quick-actions{display:flex;flex-wrap:wrap;gap:.65rem}
.case-timeline-section{margin-bottom:20px}.timeline-filters{display:flex;gap:.45rem;flex-wrap:wrap;margin:0 0 1.2rem}.timeline-filters a{padding:.48rem .75rem;border:1px solid #cbd5e1;border-radius:999px;text-decoration:none;color:#334155;background:#fff}.timeline-filters a.active{background:#4a6070;color:#fff;border-color:#4a6070}
.unified-timeline{list-style:none;padding:0;margin:0}.timeline-entry{display:grid;grid-template-columns:20px 112px minmax(0,1fr);gap:.8rem;position:relative;padding:0 0 1.2rem}.timeline-entry:before{content:"";position:absolute;left:9px;top:18px;bottom:-2px;width:2px;background:#dbe2e7}.timeline-entry:last-child:before{display:none}.timeline-marker{width:18px;height:18px;border:4px solid #fff;border-radius:50%;background:#64748b;box-shadow:0 0 0 2px #cbd5e1;margin-top:4px;z-index:1}.category-eingang .timeline-marker{background:#2563eb}.category-ausgang .timeline-marker{background:#16a34a}.category-fristen .timeline-marker{background:#dc2626}.category-aufgaben .timeline-marker{background:#d97706}.category-termine .timeline-marker{background:#7c3aed}.timeline-time{font-weight:700;color:#475569;padding-top:2px}.timeline-time small{display:block;font-weight:400;margin-top:.15rem}.timeline-entry article{background:#fff;border:1px solid #d9e0e4;border-radius:8px;padding:1rem;min-width:0}.timeline-entry-head{display:flex;justify-content:space-between;gap:.75rem;align-items:center}.timeline-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;font-weight:800;color:#52636e}.status-badge{display:inline-block;padding:.22rem .5rem;border-radius:999px;background:#e2e8f0;font-size:.75rem;white-space:nowrap}.status-versandt,.status-erledigt{background:#dcfce7;color:#166534}.status-offen,.status-entwurf{background:#fff4cc;color:#7c5800}.timeline-entry h3{margin:.45rem 0 .25rem;font-size:1.05rem}.timeline-entry h3 a{text-decoration:none;color:#1f2933}.timeline-entry p{margin:.15rem 0;color:#64748b}.timeline-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:.7rem;font-size:.9rem}.timeline-related{margin-top:.65rem;border-top:1px solid #e6eaed;padding-top:.55rem}.related-item{padding:.4rem 0}.empty-timeline{padding:1.5rem;text-align:center;color:#64748b;background:#f8fafc;border-radius:8px}
.case-extra-views{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:1rem}.case-extra-views>summary{font-size:1.15rem;font-weight:800;cursor:pointer}.case-extra-views>.lead{font-size:.95rem}.subview{border-top:1px solid #e2e8f0;padding:.8rem 0}.subview>summary{font-weight:700;cursor:pointer;padding:.35rem}.subview>.case-module,.subview>section{margin:1rem 0 0}.subview .case-module{border:0;padding:0}.case-top-grid details{margin-top:1rem}.case-top-grid summary{font-weight:700;cursor:pointer}
@media(max-width:700px){.timeline-entry{grid-template-columns:18px minmax(0,1fr)}.timeline-time{grid-column:2;font-size:.85rem}.timeline-entry article{grid-column:2}.timeline-entry-head{align-items:flex-start}.quick-actions .button{width:100%;text-align:center}}


/* Überarbeitete Aktenansicht v1.2.4 */
.case-attention-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px;align-items:start}
.attention-panel{background:#fff;border:1px solid #cbd5e1;border-top:5px solid #64748b;border-radius:9px;padding:0;box-shadow:0 2px 7px rgba(15,23,42,.08);overflow:hidden}
.attention-deadlines{border-top-color:#dc2626}.attention-tasks{border-top-color:#d97706}.attention-events{border-top-color:#7c3aed}
.attention-panel>.case-module{display:grid;grid-template-columns:1fr;margin:0;padding:14px;gap:12px;border:0;box-shadow:none}
.attention-panel .case-module-tool{position:static;background:#f8fafc;padding:12px}
.attention-panel .table-wrap table{min-width:560px}.attention-panel h2{font-size:1.15rem;margin-top:0}
.category-intern .timeline-marker{background:#7c3aed}.timeline-attachments{margin-top:.65rem;padding:.55rem .7rem;background:#f8fafc;border-left:3px solid #94a3b8;border-radius:4px;font-size:.9rem}
.case-timeline-section{border-top:4px solid #334155}
@media(max-width:1250px){.case-attention-grid{grid-template-columns:1fr}.attention-panel>.case-module{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}}
@media(max-width:800px){.attention-panel>.case-module{grid-template-columns:1fr}.attention-panel .table-wrap table{min-width:620px}}

.primary-document-action{margin:1rem 0 1.25rem;padding:1.1rem 1.25rem;border:2px solid #2f5597;border-radius:12px;background:#f4f8fd}.primary-document-action h2{margin-top:0}.document-create-form{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:.75rem;align-items:end}.document-create-form button{min-height:42px}.participant-list>li{align-items:flex-start;gap:1rem}.participant-list details{margin:.2rem 0}.tool-form.compact{min-width:min(520px,80vw)}@media(max-width:900px){.document-create-form{grid-template-columns:1fr 1fr}}@media(max-width:600px){.document-create-form{grid-template-columns:1fr}}

/* v1.3.1 – verständliche Fehlerseiten und robuste Statusdarstellung */
.error-card{max-width:720px;margin:8vh auto;background:#fff;border:1px solid #d9e2ec;border-radius:12px;padding:2rem;box-shadow:0 8px 30px rgba(31,45,61,.08)}
.error-code{font-size:3rem;font-weight:700;color:#7b8794;line-height:1}
.error-card .actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}
.button.secondary{background:#eef2f6;color:#22303c}
.status-badge{white-space:nowrap}


/* v1.4.0 – serverseitige Kontaktsuche */
.contact-search-widget { position: relative; grid-column: 1 / -1; }
.contact-search-help { color: var(--muted, #667085); font-size: .86rem; margin-top: -.35rem; }
.contact-search-results {
  display: none;
  position: absolute;
  z-index: 40;
  left: 0;
  right: 0;
  max-height: 22rem;
  overflow-y: auto;
  background: #fff;
  border: 1px solid #cbd5e1;
  border-radius: .55rem;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .16);
}
.contact-search-results.open { display: block; }
.contact-search-result {
  width: 100%;
  display: block;
  text-align: left;
  padding: .75rem .85rem;
  border: 0;
  border-bottom: 1px solid #e5e7eb;
  background: #fff;
  color: inherit;
  cursor: pointer;
}
.contact-search-result:hover,
.contact-search-result:focus { background: #eef4ff; outline: none; }
.contact-search-result strong,
.contact-search-result small { display: block; }
.contact-search-result small { margin-top: .2rem; color: #667085; }
.contact-search-empty { padding: .85rem; color: #667085; }
.selected-contact-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: .8rem;
  border: 1px solid #9db5df;
  border-radius: .55rem;
  background: #f4f7fc;
}
.selected-contact-card[hidden] { display: none; }
.contact-new-link { margin: .5rem 0 0; }
.compact-button { padding: .4rem .7rem; white-space: nowrap; }



/* v1.4.3 – Eingabeformulare in der Akte standardmäßig geschlossen */
.compact-create-form {
  margin-top: .65rem;
}
.compact-create-form > summary {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  list-style: none;
  user-select: none;
}
.compact-create-form > summary::-webkit-details-marker {
  display: none;
}
.compact-create-form[open] > summary {
  margin-bottom: .8rem;
}
.compact-create-form > .tool-form {
  margin-top: .4rem;
}

/* v1.5.0 – durchgehender Dokumentworkflow */
.optional-recipient { opacity: .78; }
.workflow-finish { display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.6fr);gap:1rem;align-items:start; }
.finish-actions { display:grid;gap:.65rem; }
.attachment-selection { display:grid;gap:.45rem;padding:.7rem 0; }
@media (max-width:800px){.workflow-finish{grid-template-columns:1fr;}}

/* v1.5.2 – Bearbeitungssperren */
.document-lock{display:inline-block;padding:.2rem .45rem;border-radius:.35rem;background:#fff3cd;border:1px solid #e7cf79;font-size:.88rem;font-weight:600}

/* v1.5.5 – Dokumentversionsverwaltung */
.document-versions{margin-top:.7rem;border-top:1px solid #e3e6ea;padding-top:.55rem}
.document-versions summary{cursor:pointer;font-weight:600}
.version-list{display:grid;gap:.45rem;margin-top:.55rem}
.version-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.55rem .65rem;border:1px solid #dfe3e8;border-radius:.45rem;background:#fff}
.version-row.current-version{background:#eef8f0;border-color:#a9cfb0}
.version-current-label{display:inline-block;margin-left:.35rem;padding:.08rem .35rem;border-radius:.3rem;background:#d8eedc;font-size:.78rem}
.version-actions{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:800px){.version-row{align-items:flex-start;flex-direction:column}.version-actions{justify-content:flex-start}}

/* v1.5.6 – kompaktere Aktenansicht */
.case-detail{gap:.8rem}
.case-detail .heading{margin-bottom:.45rem}
.case-detail .heading h2{margin-bottom:.1rem}
.case-detail .lead{margin:.15rem 0 .5rem;line-height:1.35}
.case-detail section,
.case-detail .case-module,
.case-detail .attention-panel{margin-bottom:.7rem}
.case-detail .case-module{gap:.7rem}
.case-detail .case-module-list,
.case-detail .case-module-tool,
.case-detail .attention-panel,
.case-timeline-section,
.case-extra-views{padding:.75rem}
.case-detail table th,
.case-detail table td{padding:.42rem .5rem;vertical-align:top}
.case-detail form label{gap:.2rem}
.case-detail input,
.case-detail select,
.case-detail textarea{padding:.45rem .55rem}
.case-detail .button,
.case-detail button{min-height:auto}
.case-detail details.subview>summary,
.case-extra-views>summary{padding:.55rem .65rem}
.case-detail .timeline-filters{margin:.35rem 0 .55rem;gap:.35rem}
.case-detail .timeline-filters a{padding:.3rem .55rem}
.unified-timeline{gap:.4rem}
.unified-timeline .timeline-entry{grid-template-columns:5.8rem .7rem minmax(0,1fr);gap:.45rem}
.unified-timeline .timeline-entry article{padding:.6rem .7rem}
.unified-timeline .timeline-entry h3{margin:.12rem 0;font-size:1rem}
.unified-timeline .timeline-entry p{margin:.15rem 0;line-height:1.35}
.timeline-entry-head{gap:.4rem}
.timeline-actions{margin-top:.35rem;gap:.55rem}
.timeline-related,
.timeline-attachments,
.document-versions{margin-top:.4rem}
.version-list{gap:.3rem;margin-top:.4rem}
.version-row{padding:.4rem .5rem}
.timeline-entry-hidden{display:none !important}
.timeline-load-controls{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.7rem;padding-top:.65rem;border-top:1px solid #dfe3e8}
.timeline-load-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}
.timeline-count{font-size:.9rem;color:#58616b}
.compact-button{padding:.38rem .65rem}
.hidden-control{display:none !important}
@media(max-width:800px){
  .case-detail .case-module-list,.case-detail .case-module-tool,.case-detail .attention-panel,.case-timeline-section,.case-extra-views{padding:.6rem}
  .unified-timeline .timeline-entry{grid-template-columns:4.7rem .55rem minmax(0,1fr)}
  .timeline-load-controls{align-items:flex-start;flex-direction:column}
  .timeline-load-actions{justify-content:flex-start}
}

/* v1.6.0 – vollständiger Dokumentworkflow */
.incoming-processing{margin-top:.45rem;border-top:1px solid #e0e4e8;padding-top:.4rem}
.incoming-processing summary{cursor:pointer;font-weight:600}
.compact-processing-form{display:grid;grid-template-columns:1.1fr 1.5fr .8fr 1fr auto;gap:.45rem;align-items:end;margin-top:.5rem}
.compact-processing-form label{margin:0}
.workflow-card{max-width:850px}
.notice{padding:.55rem .7rem;background:#f4f7fa;border-radius:.4rem}
@media(max-width:1050px){.compact-processing-form{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.compact-processing-form{grid-template-columns:1fr}}

/* v1.7.0 Kontakte */
.contact-list-filter{display:grid;grid-template-columns:1fr minmax(220px,.45fr) auto;gap:.5rem}.contact-person-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.55rem}.contact-person-card{display:flex;justify-content:space-between;gap:.7rem;padding:.65rem;border:1px solid #dfe3e8;border-radius:.45rem;background:#fff}.duplicate-warning{padding:.7rem;border:1px solid #d5a63c;background:#fff8df;border-radius:.45rem}@media(max-width:760px){.contact-list-filter{grid-template-columns:1fr}.contact-person-card{flex-direction:column}}

/* v1.8.0 – Aktenanlage und Übersicht */
.case-create-layout{display:grid;gap:.75rem;max-width:1050px}
.case-form-section{padding:.8rem;border:1px solid #dfe3e8;border-radius:.5rem;background:#fff}
.case-form-section h2{margin-top:0}
.case-list-filter{display:grid;grid-template-columns:1.4fr repeat(5,minmax(130px,.65fr)) auto;gap:.45rem;align-items:end}
.case-priority-medium{background:#fffaf0}
.case-priority-high{background:#fff0f0}
@media(max-width:1200px){.case-list-filter{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.case-list-filter{grid-template-columns:1fr}}

/* v1.9.0 – Tagesübersicht, Fristen und Aufgaben */
.day-overview-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.daily-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.daily-overview-grid>div{padding:.7rem;border:1px solid #dfe3e8;border-radius:.45rem;background:#fff}
.daily-overview-grid h3{margin-top:0}
.pre-due-active{font-weight:700;text-decoration:underline}
.calendar-pre-due{border-left:4px solid #d18b00;background:#fff8e6}
@media(max-width:650px){.day-overview-heading{align-items:flex-start;flex-direction:column}.daily-overview-grid{grid-template-columns:1fr}}

/* v1.10.0 – Gebührenberechnung */
.fee-settings,.fee-add-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:.75rem;align-items:end}
.fee-add-grid .wide{grid-column:span 2}.fee-live-total{padding:.75rem;background:#f4f7fa;border-radius:.4rem;margin-top:.6rem}
.amount{text-align:right;white-space:nowrap}.badge{padding:.35rem .65rem;border:1px solid #cbd3dc;border-radius:1rem;background:#fff}
.notice{padding:.8rem 1rem;margin:.7rem 0 1rem;border-left:4px solid #386a9b;background:#eef5fb}
textarea#clipboard-text{width:100%;font-family:monospace}
@media(max-width:800px){.fee-settings,.fee-add-grid{grid-template-columns:1fr}.fee-add-grid .wide{grid-column:auto}}

.form-error{color:#a40000;font-weight:700;margin:.4rem 0 0}.fee-add-grid select[size]{min-height:17rem;width:100%}

/* v1.10.4 – editierbare Gebührenberechnung und sauberer Kopiertext */
textarea#clipboard-text{
  width:100%;
  font-family:"Liberation Mono","Courier New",monospace;
  white-space:pre;
  overflow:auto;
  line-height:1.45;
  tab-size:4;
}


/* v1.13.2 – Buchhaltungsnavigation und Rechnungszahlungs-Workflow */
.accounting-nav{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin:1.1rem 0 1.4rem;
}
.accounting-nav-group{
  min-width:0;
  border:1px solid #d7dde1;
  border-radius:8px;
  background:#fff;
  padding:.75rem;
}
.accounting-nav-title{
  display:block;
  margin:0 0 .55rem;
  color:#5c6871;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.accounting-nav-links{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
}
.accounting-nav-links a{
  display:inline-flex;
  align-items:center;
  min-height:2.25rem;
  padding:.45rem .7rem;
  border:1px solid #cbd4da;
  border-radius:5px;
  background:#eef2f6;
  color:#22303c;
  text-decoration:none;
  line-height:1.15;
  white-space:normal;
}
.accounting-nav-links a:hover,
.accounting-nav-links a:focus{
  background:#dfe9ef;
  border-color:#91a7b5;
}
.booking-main-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.booking-main-grid label,
.invoice-loader-row label{
  display:flex;
  flex-direction:column;
  gap:.35rem;
  font-weight:600;
}
.booking-main-grid .wide{grid-column:1/-1}
.invoice-loader{
  border-left:4px solid #4a6070;
}
.invoice-loader-row{
  display:grid;
  grid-template-columns:minmax(18rem,1fr) auto;
  align-items:end;
  gap:.8rem;
  max-width:56rem;
}
.invoice-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.75rem;
  margin-top:1rem;
}
.invoice-summary div{
  padding:.8rem;
  border:1px solid #d7dde1;
  border-radius:7px;
  background:#f8fafb;
}
.invoice-summary strong,.invoice-summary span{display:block}
.invoice-summary strong{font-size:1.15rem}
.invoice-summary span{margin-top:.2rem;color:#667}
.invoice-matches{
  display:grid;
  gap:.45rem;
  margin-top:.8rem;
}
.invoice-match{
  text-align:left;
  background:#eef2f6;
  color:#22303c;
  border:1px solid #cbd4da;
}
.booking-counter-heading{align-items:end}
.booking-counter-table select,
.booking-counter-table input{
  min-width:9rem;
}
.booking-counter-table td:first-child select{min-width:15rem}
.booking-totals{grid-template-columns:repeat(3,minmax(0,1fr))}
.form-error{color:#9c2b21!important}

@media(max-width:1050px){
  .accounting-nav{grid-template-columns:1fr}
  .booking-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .invoice-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .booking-main-grid{grid-template-columns:1fr}
  .booking-main-grid .wide{grid-column:auto}
  .invoice-loader-row{grid-template-columns:1fr}
  .invoice-summary{grid-template-columns:1fr}
  .booking-totals{grid-template-columns:1fr}
}

/* v1.13.3 – intelligente Splitbuchung */
.counter-preview{display:grid;gap:.15rem;min-width:8.5rem;font-size:.82rem;color:#5d6870}
.counter-preview span{white-space:nowrap}
.booking-counter-table tr[data-auto="true"]{background:#f8fbfd}
.booking-counter-table tr[data-auto="true"] .counter-amount{border-color:#82a9bc}
#post-booking:disabled{opacity:.45;cursor:not-allowed}

/* v1.13.5 – Aktenarchiv */
.archive-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.archive-banner{border-left:5px solid #735c1d;background:#fff8dc}
.archived-case .case-actionbar,
.archived-case .primary-document-action,
.archived-case .participant-assignment,
.archived-case form:not(.search):not(.filter){display:none!important}
.archived-case .document-actions{display:flex!important}
.archive-form button:disabled{opacity:.45;cursor:not-allowed}
.archive-filter{grid-template-columns:2fr 1fr 2fr auto}
@media(max-width:800px){
  .archive-check-grid{grid-template-columns:1fr}
  .archive-filter{grid-template-columns:1fr}
}

/* v1.13.6 – Buchhaltungsexporte */
.export-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.export-filter-grid label,.account-sheet-export label{display:flex;flex-direction:column;gap:.35rem;font-weight:600}
.export-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.export-grid section{margin:0}
.export-package{grid-column:1/-1;border-left:4px solid #4a6070}
.account-sheet-export{display:grid;grid-template-columns:minmax(18rem,1fr) auto auto;gap:.75rem;align-items:end}
@media(max-width:850px){
  .export-filter-grid,.export-grid{grid-template-columns:1fr}
  .export-package{grid-column:auto}
  .account-sheet-export{grid-template-columns:1fr}
}

/* v1.13.7 – Systemdiagnose */
.diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.diagnostic-card{margin:0;border-left:5px solid #88949c}
.diagnostic-card .heading{align-items:center}
.diagnostic-ok{border-left-color:#2f7d4a;background:#f4fbf6}
.diagnostic-warning{border-left-color:#b37a00;background:#fff9e8}
.diagnostic-error{border-left-color:#b42318;background:#fff3f2}
.diagnostic-overall{margin-bottom:1rem}
.diagnostic-card details ul{max-height:18rem;overflow:auto}
@media(max-width:850px){.diagnostic-grid{grid-template-columns:1fr}}

/* v1.14.0 – zentrale Suche */
.header-quick-search{background:#eef2f4;padding:.45rem 1rem;border-bottom:1px solid #d7dfe3}
.header-quick-search form{position:relative;display:flex;max-width:55rem;margin:0 auto;gap:.4rem}
.header-quick-search input{flex:1;margin:0}
.header-quick-search button{width:auto}
.header-search-suggestions{position:absolute;left:0;right:5.5rem;top:calc(100% + .2rem);z-index:100;background:#fff;border:1px solid #cdd6db;border-radius:.35rem;box-shadow:0 .5rem 1.5rem rgba(0,0,0,.16);max-height:28rem;overflow:auto}
.header-search-suggestions a{display:grid;grid-template-columns:auto 1fr auto;gap:.6rem;padding:.65rem .8rem;border-bottom:1px solid #edf0f2;text-decoration:none;color:inherit}
.header-search-suggestions a:hover{background:#f3f7f9}
.header-search-suggestions small{color:#66757e}
.global-search-form{display:grid;grid-template-columns:minmax(18rem,2fr) repeat(3,minmax(9rem,1fr)) auto;gap:.75rem;align-items:end;margin-bottom:1rem}
.global-search-form label{display:flex;flex-direction:column;gap:.3rem;font-weight:600}
.search-summary{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:1rem 0;padding:.8rem 1rem;background:#eef4f6;border-radius:.4rem}
.search-counts{display:flex;flex-wrap:wrap;gap:.35rem .8rem}
.search-results-v2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.search-results-v2 section{margin:0}
.search-results-v2 h2{display:flex;justify-content:space-between}
.search-results-v2 h2 span{font-size:.8em;color:#62717a}
.search-result-card{display:flex;flex-direction:column;gap:.2rem;padding:.7rem 0;border-bottom:1px solid #e2e7ea;text-decoration:none;color:inherit}
.search-result-card:hover{background:#f7fafb}
.search-result-card>div{display:flex;justify-content:space-between;gap:.5rem}
.search-result-card small{color:#62717a}
.archive-mark,.status-mark{font-size:.78rem;padding:.1rem .4rem;border-radius:1rem;background:#e8eef1;font-weight:600;white-space:nowrap}
@media(max-width:1050px){
 .global-search-form{grid-template-columns:1fr 1fr}
 .global-search-query{grid-column:1/-1}
 .search-results-v2{grid-template-columns:1fr}
}
@media(max-width:650px){
 .global-search-form{grid-template-columns:1fr}
 .global-search-query{grid-column:auto}
 .search-summary{align-items:flex-start;flex-direction:column}
 .header-search-suggestions{right:0}
}

/* v1.14.1 – Dokumentenablage */
.document-card-list{display:flex;flex-direction:column;gap:.7rem}
.document-card{border:1px solid #dce3e7;border-radius:.45rem;padding:.8rem;background:#fff}
.document-card-main{display:grid;grid-template-columns:4rem 1fr;gap:.8rem}
.document-card-number{font-size:1.15rem;font-weight:700;color:#52636d}
.document-card h3{margin:.05rem 0 .2rem}
.document-card p{margin:.15rem 0}
.document-links{display:flex;flex-wrap:wrap;gap:.35rem .8rem;margin-top:.45rem}
.document-management-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:.7rem}
.drop-zone{display:flex!important;min-height:9rem;align-items:center;justify-content:center;text-align:center;border:2px dashed #8799a3;border-radius:.55rem;padding:1rem;cursor:pointer;background:#f7fafb}
.drop-zone span{font-weight:400}
.drop-zone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.drop-zone.drag-active{border-color:#315f78;background:#eaf4f8}
.selected-file-list{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}
.selected-file-list div{padding:.3rem .45rem;background:#eef3f5;border-radius:.3rem}
.document-preview-panel{padding:0;overflow:hidden}
.document-preview-panel iframe{display:block;width:100%;height:75vh;border:0;background:#e9eef0}
@media(max-width:950px){
  .document-management-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .document-card-main{grid-template-columns:1fr}
}

/* v1.14.2 – aufgeräumte Dokumentenverwaltung */
.document-management{
  margin-top:.75rem;
  border-top:1px solid #e1e6e9;
  padding-top:.65rem;
}
.document-management>summary{
  display:inline-flex;
  align-items:center;
  min-height:2rem;
  color:#354955;
}
.document-management-stack{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1rem;
  max-width:58rem;
  margin-top:.75rem;
}
.document-management-primary,
.document-secondary-actions{
  margin:0;
  padding:1rem;
  border:1px solid #dce3e7;
  border-radius:.45rem;
  background:#f8fafb;
}
.document-management-primary h4,
.document-secondary-actions h4{
  margin:0 0 .8rem;
}
.document-meta-form{
  display:grid;
  grid-template-columns:minmax(15rem,2fr) minmax(11rem,1fr) minmax(10rem,1fr);
  gap:.75rem;
  align-items:end;
}
.document-meta-form label,
.document-action-form label{
  display:grid;
  gap:.35rem;
  min-width:0;
  font-weight:600;
}
.document-meta-action{
  grid-column:1/-1;
}
.document-meta-action button,
.document-action-form button{
  width:auto;
  min-width:10rem;
}
.document-secondary-actions{
  background:#fff;
}
.document-action-panel{
  margin:0!important;
  padding:.7rem 0!important;
  border-top:1px solid #e2e7ea!important;
}
.document-action-panel:first-of-type{
  border-top:0!important;
}
.document-action-panel>summary{
  color:#405663;
}
.document-action-form{
  display:grid;
  grid-template-columns:minmax(15rem,1fr) auto;
  gap:.75rem;
  align-items:end;
  margin-top:.75rem;
  padding:.75rem;
  border-radius:.35rem;
  background:#f7f9fa;
}
.document-trash-form{
  margin-top:.85rem;
  padding-top:.85rem;
  border-top:1px solid #e2e7ea;
}
.document-trash-button{
  padding:0;
  border:0;
  background:transparent;
  color:#a3231b;
  font-weight:600;
  text-decoration:underline;
}
.document-trash-button:hover,
.document-trash-button:focus{
  color:#7e1711;
  background:transparent;
}
.case-module-tool>details{
  margin-top:0;
  padding:.75rem 0;
}
.case-module-tool>details+details{
  margin-top:.2rem;
}
.case-module-tool>details>summary{
  padding:.25rem 0;
}
.case-module-tool .tool-form{
  margin-top:.8rem;
}
.document-card details[open]{
  margin-bottom:.2rem;
}
@media(max-width:900px){
  .document-meta-form,
  .document-action-form{
    grid-template-columns:1fr;
  }
  .document-meta-action{
    grid-column:auto;
  }
}
@media(max-width:600px){
  .document-management-primary,
  .document-secondary-actions{
    padding:.8rem;
  }
  .document-meta-action button,
  .document-action-form button{
    width:100%;
  }
}

/* v1.14.3 – Dokumenten- und E-Mail-Workflow */
.email-compose-form{
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(20rem,1fr);
  gap:1rem;
  align-items:start;
}
.email-compose-main,
.email-attachment-panel{
  margin:0;
}
.email-compose-main{
  display:grid;
  gap:1rem;
}
.email-compose-main>label{
  display:grid;
  gap:.35rem;
  font-weight:600;
}
.email-recipient-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.75rem;
}
.email-recipient-grid label{
  display:grid;
  gap:.35rem;
  font-weight:600;
}
.email-office-copy{
  display:flex!important;
  flex-direction:row!important;
  align-items:center;
  gap:.55rem!important;
  font-weight:500!important;
}
.email-office-copy input{
  width:auto;
}
.email-attachment-panel{
  position:sticky;
  top:1rem;
}
.email-attachment-panel>p{
  color:#5d6b73;
}
.email-attachment-panel details{
  border-top:1px solid #dde4e7;
  padding-top:.75rem;
  margin-top:.75rem;
}
.email-attachment-list{
  display:flex;
  flex-direction:column;
  gap:.45rem;
  margin-top:.7rem;
  max-height:25rem;
  overflow:auto;
}
.email-attachment-option{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:.6rem;
  align-items:start;
  padding:.65rem;
  border:1px solid #dce3e7;
  border-radius:.4rem;
  background:#fff;
  cursor:pointer;
}
.email-attachment-option.recommended{
  border-left:4px solid #4f7a8f;
}
.email-attachment-option input{
  width:auto;
  margin-top:.2rem;
}
.email-attachment-option span{
  display:grid;
  gap:.15rem;
}
.email-attachment-option small{
  color:#65747d;
}
.email-compose-actions{
  grid-column:1/-1;
  display:flex;
  justify-content:flex-end;
  gap:.75rem;
  padding-top:1rem;
  border-top:1px solid #dce3e7;
}
.email-compose-actions button:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.email-list,
.case-email-list{
  display:flex;
  flex-direction:column;
  gap:.55rem;
}
.email-list-card,
.case-email-card{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:.8rem;
  border:1px solid #dce3e7;
  border-radius:.45rem;
  background:#fff;
  color:inherit;
  text-decoration:none;
}
.email-list-card:hover,
.case-email-card:hover{
  background:#f7fafb;
}
.email-list-main,
.case-email-card>div{
  display:grid;
  gap:.15rem;
}
.email-list-card>div:last-child{
  display:flex;
  align-items:flex-start;
  gap:.4rem;
}
.email-direction,
.email-status{
  display:inline-flex;
  align-items:center;
  min-height:1.7rem;
  padding:.15rem .5rem;
  border-radius:1rem;
  font-size:.78rem;
  font-weight:700;
  background:#e8eef1;
}
.email-status-gesendet,
.email-status-eingegangen{
  background:#e2f3e7;
  color:#25613a;
}
.email-status-entwurf,
.email-status-vorbereitet{
  background:#fff2cf;
  color:#775800;
}
.email-status-fehlgeschlagen{
  background:#fde4e1;
  color:#9b2119;
}
.email-detail-grid{
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(18rem,1fr);
  gap:1rem;
}
.email-detail-grid>div,
.email-detail-grid>aside{
  min-width:0;
}
.email-detail-attachments{
  display:flex;
  flex-direction:column;
  gap:.55rem;
}
.email-detail-attachments a{
  display:grid;
  gap:.15rem;
  padding:.7rem;
  border:1px solid #dce3e7;
  border-radius:.4rem;
  color:inherit;
  text-decoration:none;
}
.email-detail-attachments a:hover{
  background:#f7fafb;
}
.email-detail-attachments span{
  color:#65747d;
  font-size:.88rem;
}
@media(max-width:1000px){
  .email-compose-form,
  .email-detail-grid{
    grid-template-columns:1fr;
  }
  .email-attachment-panel{
    position:static;
  }
}
@media(max-width:650px){
  .email-recipient-grid{
    grid-template-columns:1fr;
  }
  .email-compose-actions{
    flex-direction:column;
  }
  .email-compose-actions button{
    width:100%;
  }
  .email-list-card,
  .case-email-card{
    flex-direction:column;
  }
}

/* v1.15.0 – Organisation und Betriebsfreigabe */
.task-vorfrist,.legend-vorfrist{background:#fff0c7!important;color:#765500!important}
.row-edit{min-width:9rem;margin-top:.35rem}
.row-edit>summary{cursor:pointer;color:#405663;font-weight:600}
.row-edit-form{display:grid;gap:.55rem;min-width:22rem;margin-top:.55rem;padding:.75rem;border:1px solid #dce3e7;border-radius:.4rem;background:#f8fafb}
.row-edit-form label{display:grid;gap:.25rem;font-weight:600}
.calendar-filter{grid-template-columns:repeat(4,minmax(10rem,1fr)) auto}
@media(max-width:900px){
  .calendar-filter{grid-template-columns:1fr 1fr}
  .row-edit-form{min-width:16rem}
}
@media(max-width:600px){
  .calendar-filter{grid-template-columns:1fr}
  .row-edit-form{min-width:0}
}

/* v1.18.1 – breiter Arbeitsbereich und entspannteres Desktop-Layout */
@media(min-width:1200px){
  .daily-overview-grid>div{min-height:10rem;padding:1rem}
  .booking-counter-table{table-layout:auto}
  .booking-counter-table select,.booking-counter-table input{min-width:10.5rem}
  .booking-counter-table td:first-child select{min-width:18rem}
  body:has(.booking-counter-table) main{max-width:1900px}
}
@media(max-width:900px){
  .daily-overview-grid{grid-template-columns:1fr}
}

/* v1.19.0 */
.participant-tabs{display:flex;gap:.6rem;flex-wrap:wrap;margin:.8rem 0}.participant-mode-panel[hidden]{display:none}.duplicate-warning{border:1px solid #d97706;background:#fff7ed;padding:1rem;border-radius:.5rem;margin:.8rem 0}.document-links{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center}.timeline-entry{grid-template-columns:20px 128px minmax(0,1fr)}.timeline-time{position:relative;z-index:2;min-width:0}.timeline-entry article{position:relative;z-index:1}.narrow-page{max-width:1100px;margin:0 auto}.optional-recipient small{color:#166534}@media(max-width:800px){.timeline-entry{grid-template-columns:18px minmax(0,1fr)}.timeline-time{grid-column:2}.timeline-entry article{grid-column:2}}


/* v1.20.1 – besser lesbare Dokumentliste */
.document-card-list{gap:0}
.document-card{
  border-width:0 0 1px;
  border-color:#d7e0e5;
  border-radius:0;
  padding:1rem;
  transition:background-color .15s ease, box-shadow .15s ease;
}
.document-card:first-child{border-top:1px solid #d7e0e5}
.document-card:nth-child(odd){background:#fff}
.document-card:nth-child(even){background:#f5f8fa}
.document-card:hover{
  background:#edf4f7;
  box-shadow:inset 3px 0 0 #7894a3;
}
.document-card-main>div:last-child{min-width:0}
.document-card h3{font-weight:700}
.document-links{
  justify-content:flex-end;
  align-items:center;
  min-height:2rem;
  padding-top:.2rem;
}
.document-card>.document-action-panel{
  margin-left:4.8rem!important;
  padding-left:.85rem!important;
  border-left:3px solid #d9e4e9!important;
}
.document-card>.document-action-panel[open]{
  background:rgba(255,255,255,.58);
  border-radius:.35rem;
  padding-right:.75rem!important;
  padding-bottom:.75rem!important;
}
.document-card>.document-action-panel p{padding-left:.15rem}
@media(max-width:600px){
  .document-card{padding:.85rem}
  .document-links{justify-content:flex-start}
  .document-card>.document-action-panel{margin-left:0!important}
}

/* v1.20.1 – seltene Gebühren-Sonderfälle hinter Auswahlfeldern */
.fee-special-options{display:grid;gap:.8rem}
.fee-special-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;padding:1rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted,#f7f8fa)}
.fee-special-panel[hidden]{display:none}
.check-line{display:flex;align-items:center;gap:.55rem;font-weight:600}
.check-line input{width:auto;margin:0}

.claim-table th,.claim-table td{white-space:nowrap}.claim-table th:nth-child(2),.claim-table td:nth-child(2){white-space:normal;min-width:320px}.claim-table td:nth-child(n+3){text-align:right;font-variant-numeric:tabular-nums}.claim-table .projected,.projected{background:#f1f5f8}.optional-case-tools{margin-top:1rem}.disabled-button{opacity:.55;cursor:not-allowed}.wide-page{max-width:1800px;margin:0 auto}.accounting-wide-page{max-width:1900px;margin:0 auto}

/* v1.23.0 – eingebundener Unterhaltsrechner */
.maintenance-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,520px);gap:1rem;align-items:end}
.maintenance-note{padding:.8rem 1rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted);font-size:.92rem}
.maintenance-calculator-frame{display:block;width:100%;height:calc(100vh - 210px);min-height:760px;border:1px solid var(--border);border-radius:12px;background:#fff}
@media(max-width:900px){.maintenance-head{grid-template-columns:1fr}.maintenance-calculator-frame{height:calc(100vh - 250px);min-height:680px}}


/* v1.24.1 – aktenbezogene Unterhaltsberechnungen und sauberer Aktenverlauf */
.maintenance-workspace{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:1rem;align-items:start}
.maintenance-sidebar{position:sticky;top:1rem;display:grid;gap:1rem;padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface,#fff);max-height:calc(100vh - 2rem);overflow:auto}
.maintenance-sidebar .heading{display:flex;align-items:center;justify-content:space-between;gap:.7rem}
.maintenance-sidebar .heading h2{margin:0;font-size:1.1rem}
.maintenance-saved-list{display:grid;gap:.55rem}
.maintenance-saved-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem;align-items:start;padding:.7rem;border:1px solid var(--border);border-radius:8px;background:#fff}
.maintenance-saved-card.active{border-color:#496f84;background:#eef5f8}
.maintenance-saved-card>a{display:grid;gap:.15rem;text-decoration:none;color:inherit;min-width:0}
.maintenance-saved-card span,.maintenance-saved-card small{color:#60717b;font-size:.82rem}
.maintenance-save-box{display:grid;gap:.65rem;padding-top:.8rem;border-top:1px solid var(--border)}
.empty-hint,.help-text{color:#60717b;font-size:.88rem}
.link-button{border:0;background:none;padding:.15rem;cursor:pointer;text-decoration:underline}.link-button.danger{color:#a33}
.case-timeline-section .unified-timeline .timeline-entry{display:grid!important;grid-template-columns:20px 132px minmax(0,1fr)!important;gap:.75rem!important;align-items:start}
.case-timeline-section .timeline-marker{grid-column:1;margin-top:.35rem}
.case-timeline-section .timeline-time{grid-column:2;position:static!important;padding:.25rem 0 0;line-height:1.25;white-space:nowrap}
.case-timeline-section .timeline-entry article{grid-column:3;min-width:0;padding:.8rem 1rem!important}
.case-timeline-section .timeline-entry-head{align-items:flex-start;flex-wrap:wrap}
.case-timeline-section .timeline-entry p{overflow-wrap:anywhere}
@media(max-width:1050px){.maintenance-workspace{grid-template-columns:1fr}.maintenance-sidebar{position:static;max-height:none}.maintenance-calculator-frame{min-height:780px}}
@media(max-width:760px){.case-timeline-section .unified-timeline .timeline-entry{grid-template-columns:18px minmax(0,1fr)!important;gap:.55rem!important}.case-timeline-section .timeline-marker{grid-column:1;grid-row:1 / span 2}.case-timeline-section .timeline-time{grid-column:2;grid-row:1;white-space:normal}.case-timeline-section .timeline-entry article{grid-column:2;grid-row:2}}


/* v1.24.1 – Dokumentrichtung und Posteingangs-/Mehrvergleichs-Workflow */
.document-meta-line{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}
.direction-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.18rem .48rem;border-radius:999px;font-size:.78rem;font-weight:700;line-height:1.2;border:1px solid transparent}
.direction-badge::before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:currentColor}
.direction-eingang{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}
.direction-ausgang{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}
.direction-intern{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}
.bank-review-table tbody tr{cursor:pointer}.bank-review-table tbody tr:hover{background:var(--surface-2,#f3f6f8)}.bank-review-table small{display:block;color:#65727d;margin-top:.25rem;max-width:60rem}.bank-review-table .amount{white-space:nowrap;font-weight:700}.bank-review-table .negative{font-weight:700}.bank-unreviewed{border-left:5px solid #d8a200}.bank-reviewed{border-left:5px solid #2878b5}.bank-posted{border-left:5px solid #2f8b57}.bank-ignored{border-left:5px solid #78838d}.bank-pending{opacity:.7}.bank-source .booking-main-grid>div{display:flex;flex-direction:column;gap:.25rem;padding:.7rem;border:1px solid #dce2e7;border-radius:.4rem}.bank-source span{font-size:.85rem;color:#65727d}.button-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}

/* v1.25.2: unverbindliche Buchungsvorschläge */
.suggestion-placeholder::placeholder { color: #7b8492; opacity: 1; font-style: italic; }
.booking-rule-choice { border-left: 4px solid #8a96a6; }
.bank-source small, .booking-main-grid label small, .booking-rules small { display: block; margin-top: .25rem; color: var(--muted, #667085); }

/* v1.26.2: Hauptdokumente und Anlagen */
.document-main-card{border-left:4px solid var(--accent,#2e5f7f)}
.document-attachments{margin:.8rem 0;border-top:1px solid #d9e0e5;padding-top:.55rem}
.document-attachments>summary{font-weight:700;cursor:pointer}
.attachment-list{display:grid;gap:.55rem;margin-top:.55rem}
.attachment-card{background:#f7f9fa;border:1px solid #dce3e7;border-radius:.45rem;padding:.65rem .8rem}
.attachment-card>div:first-child{display:flex;gap:.6rem;align-items:baseline;flex-wrap:wrap}
.attachment-card small{display:block;flex-basis:100%;color:#5d6770}
.attachment-label{display:inline-block;background:#e4ebef;border-radius:999px;padding:.12rem .45rem;font-size:.8rem;font-weight:700}

/* v1.26.2: Historie für Fristen, Wiedervorlagen und Aufgaben */
.history-completed td:not(:last-child),
.history-completed td:not(:last-child) a,
.history-cancelled td:not(:last-child),
.history-cancelled td:not(:last-child) a {
  color: #7a7f87;
  text-decoration: line-through;
}
.history-completed,
.history-cancelled {
  background: #f2f3f5;
}
.history-cancelled td:nth-last-child(2) {
  font-weight: 600;
}
.task-tabs a.active {
  background: #eef2f6;
  color: #22303c;
  font-weight: 700;
  text-decoration: underline;
}
.task-view-heading {
  align-items: center;
  margin-bottom: .8rem;
}
.compact-button {
  padding: .35rem .65rem;
  min-height: auto;
  font-size: .85rem;
}
.cancel-dialog {
  width: min(34rem, calc(100vw - 2rem));
  border: 1px solid #c7cbd1;
  border-radius: .5rem;
  padding: 1.25rem;
}
.cancel-dialog::backdrop {
  background: rgba(0,0,0,.35);
}
.cancel-dialog textarea {
  width: 100%;
  min-height: 7rem;
}
.dialog-actions {
  display: flex;
  justify-content: flex-end;
  gap: .75rem;
  margin-top: 1rem;
}
.heading-actions {
  display: flex;
  align-items: center;
  gap: .5rem;
}

/* v1.27.0.1 – Formularvorlagen und Zwangsvollstreckung */
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:end}.form-grid>label{display:grid;gap:.35rem;font-weight:600}.form-grid .span-2,.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}.compact-form{gap:.65rem}.compact-form input,.compact-form select,.compact-form textarea{padding:.55rem}.filter-bar{display:grid;grid-template-columns:minmax(260px,2fr) minmax(170px,1fr) minmax(210px,1fr) auto;gap:.75rem;align-items:end;margin:1rem 0}.filter-bar label{display:grid;gap:.3rem;font-weight:600}.template-field-list{display:grid;gap:.8rem}.template-field-card{background:#fff;border:1px solid #d8e0e5;border-radius:8px;padding:1rem}.template-field-card>header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.template-field-card>header span{display:block;color:#62717a;font-size:.85rem;margin-top:.2rem}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem}.button.small,button.small{padding:.45rem .7rem;font-size:.86rem}.historical-entry{opacity:.72;background:#f3f4f6}.enforcement-title{padding:.8rem 0}.cancel-form{display:flex!important;gap:.5rem;align-items:center;margin-top:.7rem}.cancel-form input{max-width:32rem}.notice.success{background:#ecfdf3;border-color:#a7f3d0;color:#166534}.warning{background:#fff7ed;border:1px solid #fdba74;padding:.8rem;border-radius:6px}.muted{color:#66757e}.case-admin-actions{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin:1rem 0}.case-admin-actions .inline-form{display:flex;margin:0;gap:.5rem;align-items:center}.case-admin-actions .inline-form select{width:auto}
@media(max-width:900px){.form-grid,.filter-bar{grid-template-columns:1fr}.form-grid .span-2,.form-grid .wide{grid-column:auto}.template-field-card>header{flex-direction:column}.cancel-form{align-items:stretch;flex-direction:column}.cancel-form input{max-width:none}}

/* v1.27.2 – ausführbarer ZV-Workflow und amtliche Formularerzeugung */
.workflow-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.workflow-card{display:flex;flex-direction:column;justify-content:space-between;gap:1rem;min-height:210px;padding:1rem;border:1px solid var(--border);border-radius:12px;background:#fff}
.workflow-card h3{margin:.25rem 0 .45rem}
.workflow-card p{margin:0;color:#5f6d76}
.workflow-card.disabled{background:#f5f6f7;color:#707981}
.workflow-kicker{display:inline-block;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:800;color:#496f84}
.workflow-card.disabled .workflow-kicker{color:#7b838a}
.workflow-blocked{padding:.7rem;border:1px solid #e7c36b;border-radius:8px;background:#fff9e8;font-size:.9rem}
.workflow-status-list{margin:.45rem 0 0;padding-left:1.2rem}
.workflow-status-list li+li{margin-top:.25rem}
.option-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
.option-card{display:flex!important;align-items:flex-start;gap:.7rem;padding:.85rem;border:1px solid var(--border);border-radius:10px;background:#fff;cursor:pointer;font-weight:400!important}
.option-card:has(input:checked){border-color:#496f84;background:#eef5f8}
.option-card input{width:auto;margin:.2rem 0 0;flex:0 0 auto}
.option-card span{display:grid;gap:.2rem}.option-card small{color:#63717a}
.compact-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
.compact-summary-grid>div{display:grid;gap:.25rem;padding:.75rem;border:1px solid var(--border);border-radius:8px;background:#fff}
.compact-summary-grid span{font-size:.82rem;color:#66757e}
.claim-summary-box{margin-top:1rem}.claim-summary{display:flex;gap:1rem;flex-wrap:wrap;padding:.75rem;border:1px solid var(--border);border-radius:8px;background:#f7f9fa}.claim-summary span{display:grid;gap:.15rem;font-size:.85rem}.claim-summary strong{font-variant-numeric:tabular-nums}
.final-action-panel{text-align:center}.final-action-panel .primary-action{font-size:1rem;padding:.75rem 1.1rem}
.status-badge{display:inline-flex;padding:.18rem .48rem;border-radius:999px;font-size:.78rem;font-weight:700;background:#eef1f3}.status-aktiv{background:#ecfdf3;color:#166534}.status-entwurf{background:#fff7ed;color:#9a4510}.document-links{display:flex;gap:.6rem;flex-wrap:wrap}
@media(max-width:1100px){.workflow-card-grid,.option-card-grid{grid-template-columns:1fr 1fr}.compact-summary-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.workflow-card-grid,.option-card-grid,.compact-summary-grid{grid-template-columns:1fr}}

/* v1.27.6: vereinfachte, formularartige ZV-Feldzuordnung */
.form-template-simple-filter{display:flex;gap:.7rem;align-items:end;margin:1rem 0}.form-template-simple-filter label{display:grid;gap:.3rem;font-weight:600;min-width:min(34rem,100%)}
.form-template-pages{display:grid;gap:1.2rem}.form-template-page{background:#fff;border:1px solid #d8e0e5;border-radius:9px;overflow:hidden}.form-template-page>header{padding:.75rem 1rem;background:#f3f6f8;border-bottom:1px solid #d8e0e5}.form-template-rows{display:grid}.form-template-row{display:grid;grid-template-columns:minmax(220px,1.15fr) minmax(260px,1.4fr) auto;gap:1rem;align-items:center;padding:.8rem 1rem;border-bottom:1px solid #edf0f2}.form-template-row:last-child{border-bottom:0}.form-template-row.open{background:#fff8e8}.form-template-field-name{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}.required-marker{font-size:.74rem;padding:.15rem .4rem;border-radius:999px;background:#fef2f2;color:#991b1b}.form-template-proposal{display:grid;gap:.15rem}.proposal-label{font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:#71808a}.form-template-edit summary{cursor:pointer;color:#244f67;font-weight:600;white-space:nowrap}.form-template-edit[open]{grid-column:1/-1;padding-top:.7rem;border-top:1px dashed #cbd5db}.form-template-edit[open] summary{margin-bottom:.7rem}.form-template-edit form{background:#f8fafb;border-radius:7px;padding:.8rem}
@media(max-width:900px){.form-template-simple-filter{align-items:stretch;flex-direction:column}.form-template-row{grid-template-columns:1fr}.form-template-edit[open]{grid-column:auto}}

/* v1.27.6 – formularnahe ZV-Eingabemaske */
.official-form-section {
  margin: 1rem 0;
  padding: 1.15rem;
  border: 1px solid var(--border, #d7dce2);
  border-radius: .65rem;
  background: var(--surface, #fff);
}
.official-form-section > h2,
.official-form-section .heading h2 {
  margin-top: 0;
  margin-bottom: .25rem;
  font-size: 1.15rem;
}
.official-form-intro {
  margin: 0 0 1rem;
  color: var(--muted, #59636e);
  line-height: 1.45;
}
.official-form-section .form-grid {
  align-items: end;
}
.official-form-section label > input,
.official-form-section label > select,
.official-form-section label > textarea {
  margin-top: .28rem;
}

/* v1.28.0 Eskalation und vollständige Aktenchronik */
.escalation-warning{background:#fffbea!important}.escalation-orange{background:#fff1dd!important}.escalation-danger{background:#fee2e2!important}.escalation-critical{background:#fecaca!important;border-left:5px solid #991b1b}.escalation-badge{display:inline-block;margin-top:.25rem;padding:.18rem .45rem;border-radius:999px;font-size:.78rem;font-weight:700}.level-warning{background:#fef3c7;color:#854d0e}.level-orange{background:#fed7aa;color:#9a3412}.level-danger{background:#fecaca;color:#991b1b}.level-critical{background:#991b1b;color:#fff}.chronology-filters{display:flex;gap:.4rem;flex-wrap:wrap;margin:.5rem 0 1rem}.chronology-filters a{padding:.35rem .6rem;border:1px solid #cbd5e1;border-radius:999px;background:#fff;text-decoration:none;color:#334155}.chronology-filters a.active{background:#334155;color:#fff}.chronology-list{display:grid;gap:.55rem}.chronology-item{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:.8rem;padding:.75rem;border:1px solid #d9e0e4;border-left:4px solid #64748b;border-radius:7px;background:#fff}.chronology-item.category-dokumente{border-left-color:#2563eb}.chronology-item.category-kommunikation{border-left-color:#16a34a}.chronology-item.category-organisation{border-left-color:#d97706}.chronology-item.category-finanzen{border-left-color:#7c3aed}.chronology-item.category-zv{border-left-color:#0f766e}.chronology-head{display:flex;justify-content:space-between;gap:.75rem}.chronology-head span{color:#64748b;font-size:.85rem}.chronology-details{margin:.45rem 0}.chronology-details dl{display:grid;grid-template-columns:5rem 1fr;gap:.2rem .5rem;margin:.4rem 0}.chronology-details dt{font-weight:700}.chronology-details dd{margin:0;overflow-wrap:anywhere}@media(max-width:700px){.chronology-item{grid-template-columns:1fr}.chronology-head{display:block}}


/* v1.28.3 – mehr Innenabstand im ZV-Modul */
.enforcement-page > .heading {
  padding-inline: .2rem;
}
.enforcement-page > .attention-panel {
  padding: 1.15rem 1.35rem;
}
.enforcement-page > .attention-panel > h2:first-child,
.enforcement-page > .attention-panel > .heading:first-child {
  margin-top: 0;
}
.enforcement-page > .case-module {
  padding: 1.15rem 1.35rem;
}
.enforcement-page > section {
  margin-bottom: 1rem;
}
@media(max-width:700px){
  .enforcement-page > .attention-panel,
  .enforcement-page > .case-module {
    padding: .9rem 1rem;
  }
}

/* v1.28.3 – kompakte Kennzahlen in der Tagesansicht */
.dashboard-stats{grid-template-columns:repeat(9,minmax(92px,1fr));gap:.55rem;margin:1rem 0 1.25rem}
.dashboard-stats>div{min-height:66px;padding:.5rem .65rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.dashboard-stats strong{font-size:1.45rem;line-height:1.05;margin:0 0 .18rem}
.dashboard-stats span{font-size:.76rem;line-height:1.15;color:#667}
@media(max-width:1250px){.dashboard-stats{grid-template-columns:repeat(5,minmax(100px,1fr))}}
@media(max-width:800px){.dashboard-stats{grid-template-columns:repeat(3,minmax(88px,1fr));gap:.45rem}.dashboard-stats>div{min-height:62px;padding:.45rem}.dashboard-stats strong{font-size:1.3rem}.dashboard-stats span{font-size:.72rem}}

/* v1.28.4 – Aktenbetreff, Vollmacht und Platzhalterübersicht */
.case-subject-line{margin:.25rem 0 0;color:#52606d;max-width:75rem}.quick-actions form{margin:0}.quick-actions form .button{height:100%}.template-special-card{border-left:5px solid #4a6070}.placeholder-nav{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0 1.5rem}.placeholder-nav a{padding:.45rem .7rem;border:1px solid #cbd5e1;border-radius:999px;text-decoration:none;background:#fff}.placeholder-section code{white-space:nowrap;font-weight:700}.placeholder-section{scroll-margin-top:1rem}

.document-dispatch-summary{display:inline-block;margin:.35rem 0}.document-dispatch-summary>summary{cursor:pointer;list-style:none;border:1px solid var(--border,#cbd5e1);border-radius:999px;padding:.18rem .65rem;font-size:.86rem;font-weight:600;background:#f8fafc}.document-dispatch-summary>summary::-webkit-details-marker{display:none}.document-dispatch-details{margin:.35rem 0 .6rem;padding:.5rem .7rem;border-left:3px solid #94a3b8;background:#f8fafc}.document-dispatch-details p{margin:.2rem 0}.inline-create{margin:0 0 1rem}.inline-create>summary{display:inline-block;cursor:pointer;list-style:none}.inline-create>summary::-webkit-details-marker{display:none}.inline-create[open]>summary{margin-bottom:.75rem}

/* v1.29.7 – Wiedervorlage als kompakter digitaler Umlaufzettel */
.wv-details > summary { cursor: pointer; list-style-position: inside; }
.wv-details > summary small { font-weight: 400; color: var(--muted, #666); }
.wv-note { margin-top: .55rem; white-space: pre-wrap; line-height: 1.4; max-width: 52rem; }
.document-action-form textarea, .deadline-create textarea { min-height: 5.5rem; }

/* v1.29.7 – kompakte Dokumentenliste mit Kontextmenü */
.compact-document-card{padding:0!important;border-radius:0!important;border-left:1px solid #d7e0e5;border-right:1px solid #d7e0e5}
.compact-document-card .document-row-details>summary::-webkit-details-marker{display:none}
.compact-document-card .document-row-details>summary{list-style:none}
.document-compact-row{display:grid;grid-template-columns:4.2rem 5.3rem minmax(15rem,1fr) 6.2rem 4.4rem 6.4rem 7.6rem;gap:.55rem;align-items:center;min-height:2.65rem;padding:.42rem .7rem;cursor:pointer;user-select:none}
.document-compact-row:hover{background:#edf4f7}
.document-row-details[open]>.document-compact-row{background:#e9f1f5;border-bottom:1px solid #d7e0e5}
.document-compact-number{font-variant-numeric:tabular-nums;font-weight:700;color:#586873}
.document-compact-direction{display:inline-flex;justify-content:center;border-radius:999px;padding:.17rem .45rem;font-size:.76rem;font-weight:700;white-space:nowrap}
.document-compact-direction.direction-eingang{background:#e7f1fb;color:#245a82}
.document-compact-direction.direction-ausgang{background:#edf6ec;color:#38623a}
.document-compact-direction.direction-intern{background:#f1f1f1;color:#555}
.document-compact-title{font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.document-compact-date{font-size:.86rem;color:#586873;font-variant-numeric:tabular-nums;white-space:nowrap}
.document-compact-status{display:inline-flex;justify-content:center;border:1px solid #d8e0e4;border-radius:999px;padding:.14rem .42rem;font-size:.74rem;line-height:1.25;color:#77838a;background:#fafbfc;white-space:nowrap}
.document-compact-status.is-active{color:#334f60;background:#eef5f8;border-color:#c9d8df}
.document-compact-status.is-sent{color:#2f6239;background:#edf7ee;border-color:#c8dfcc}
.document-full-detail{padding:.8rem .9rem 1rem;background:#fff}
.document-full-detail>.document-card-main{margin-bottom:.35rem}
.document-context-menu{position:fixed;z-index:2500;min-width:13rem;padding:.28rem;background:#fff;border:1px solid #cbd5db;border-radius:.45rem;box-shadow:0 8px 24px rgba(20,35,45,.18)}
.document-context-menu a,.document-context-menu button{display:block;width:100%;box-sizing:border-box;border:0;background:transparent;color:#20343f;text-align:left;text-decoration:none;padding:.48rem .62rem;border-radius:.28rem;font:inherit;cursor:pointer}
.document-context-menu a:hover,.document-context-menu button:hover{background:#edf3f6}
.document-context-menu .context-separator{height:1px;background:#e3e8eb;margin:.24rem .2rem}
@media(max-width:1050px){.document-compact-row{grid-template-columns:3.8rem 5rem minmax(10rem,1fr) 5.8rem 4.2rem 5.8rem}.document-compact-status:last-child{display:none}}
@media(max-width:760px){.document-compact-row{grid-template-columns:3.6rem 4.8rem minmax(8rem,1fr) 4rem}.document-compact-date,.document-compact-status:nth-last-child(2),.document-compact-status:last-child{display:none}}


/* v1.29.8 – getrennte Akten- und Steuerungsansicht */
.case-view-switch{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}
.control-tabs{margin-bottom:1rem}
.control-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:1rem;align-items:start}
.control-card{background:var(--surface,#fff);border:1px solid var(--border,#d8dde3);border-radius:8px;padding:1rem;min-width:0}
.control-card-wide{grid-row:span 2}
.control-card .heading{margin-bottom:.65rem;align-items:center}
.control-list{display:flex;flex-direction:column;gap:.35rem}
.control-row{display:grid;grid-template-columns:105px minmax(0,1fr) auto;gap:.75rem;align-items:start;padding:.55rem .2rem;border-top:1px solid var(--border,#e5e7eb)}
.control-row:first-child{border-top:0}
.control-date{font-variant-numeric:tabular-nums;white-space:nowrap}
.control-main{min-width:0}
.control-main summary{cursor:pointer}
.control-actions{white-space:nowrap}
.control-finances{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:.5rem 1rem;margin:0}
.control-finances dt,.control-finances dd{margin:0}
.control-finances dd{text-align:right;font-variant-numeric:tabular-nums}
.control-finance-actions{margin-top:1rem}
.document-focus-flash{outline:2px solid currentColor;outline-offset:2px}
@media(max-width:1000px){.control-grid{grid-template-columns:1fr}.control-card-wide{grid-row:auto}}

/* v1.29.10 – schlanke Kontextaktionen */
.context-target{cursor:context-menu}
.janjur-context-menu button.disabled-context-item{opacity:.45;cursor:not-allowed}
.context-target.context-flash{outline:2px solid currentColor;outline-offset:2px}

/* v1.30.3 – Fristen/WV und Termine in der Akte über volle Seitenbreite */
.case-page .case-attention-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:.85rem;
  width:100%;
  margin-bottom:20px;
  align-items:start;
}
.case-page .attention-panel{
  width:100%;
  min-width:0;
}
.case-page .attention-panel>.case-module{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  width:100%;
  margin:0;
  padding:14px;
  gap:.75rem;
  border:0;
  box-shadow:none;
}
.case-page .attention-panel .case-module-list,
.case-page .attention-panel .case-module-tool{
  width:100%;
  min-width:0;
}
.case-page .attention-panel .case-module-tool{
  position:static;
  padding-top:.2rem;
}
.case-page .attention-panel .table-wrap{
  overflow-x:visible;
  width:100%;
}
.case-page .attention-panel .table-wrap table{
  min-width:0;
  width:100%;
  table-layout:auto;
}
.case-page .attention-panel .table-wrap th,
.case-page .attention-panel .table-wrap td{
  vertical-align:top;
}
.case-page .attention-panel .table-wrap th:first-child,
.case-page .attention-panel .table-wrap td:first-child{
  white-space:nowrap;
}
.case-page .task-inline-edit-row td{
  background:#fff !important;
  border-top:0;
  padding:.35rem .55rem .75rem;
}
.case-page .task-inline-edit-form{
  padding:.8rem;
  border:1px solid #d8e0e5;
  border-radius:.45rem;
  background:#f8fafb;
}
.case-page .task-inline-edit-grid{
  display:grid;
  grid-template-columns:110px minmax(220px,1.4fr) 160px 160px minmax(180px,1fr);
  gap:.65rem;
  align-items:end;
}
.case-page .task-inline-edit-grid label{
  display:grid;
  gap:.25rem;
  font-weight:600;
}
.case-page .task-inline-edit-grid .task-inline-note{grid-column:1/-1}
.case-page .task-inline-edit-grid textarea{
  width:100%;
  box-sizing:border-box;
  resize:vertical;
}
.case-page .task-inline-edit-actions{
  display:flex;
  gap:.55rem;
  margin-top:.65rem;
}
.case-page tr.escalation-critical td,
.case-page tr.escalation-danger td,
.case-page tr.escalation-orange td,
.case-page tr.escalation-warning td{background:inherit}
@media(max-width:1050px){
  .case-page .task-inline-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .case-page .task-inline-edit-grid .task-inline-note{grid-column:1/-1}
}
@media(max-width:650px){
  .case-page .attention-panel .table-wrap{overflow-x:auto}
  .case-page .attention-panel .table-wrap table{min-width:620px}
  .case-page .task-inline-edit-grid{grid-template-columns:1fr}
  .case-page .task-inline-edit-grid .task-inline-note{grid-column:auto}
}

/* v1.29.12 – einfache Interessenkollisionsprüfung */
.conflict-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.8rem}.interest-conflict-warning{border:1px solid #b45309;background:#fff7ed;padding:.8rem 1rem;border-radius:.5rem}.interest-conflict-warning p{margin:.35rem 0}.interest-conflict-warning .interest-conflict-results{margin:.45rem 0}.interest-conflict-warning .interest-conflict-results p{padding:.4rem .5rem;border-left:3px solid #d97706;background:rgba(255,255,255,.65)}.interest-conflict-warning small{color:#5f4b32}@media(max-width:760px){.conflict-check-grid{grid-template-columns:1fr}}

/* v1.29.13 – Aufbewahrung und Datenschutz */
.retention-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 1rem}
.retention-tabs a{padding:.45rem .7rem;border:1px solid var(--border,#d7dce2);border-radius:.35rem;text-decoration:none;background:#fff}
.retention-tabs a.active{font-weight:700;border-color:#777}
.privacy-summary{margin-bottom:1rem}
.privacy-anonymize{margin-top:1rem}
.privacy-anonymize .danger{margin-top:.65rem}

/* v1.30.0 – schlanke aktenbezogene Zeiterfassung */
.time-tracking-module{align-items:flex-start}
.time-running{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(360px,1.3fr);gap:1rem;align-items:start;padding:.85rem 1rem;margin:.4rem 0 1rem;border:1px solid var(--border);border-radius:.65rem;background:var(--surface-soft,#f7f7f7)}
.time-running-value{font-variant-numeric:tabular-nums;font-size:1.35rem}
.time-stop-form{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(140px,.5fr) auto;gap:.6rem;align-items:end}
.time-stop-form label:first-child{min-width:0}
.time-stats{margin-bottom:.7rem}
.time-entry-running td{font-style:italic}
.time-tools .compact-table{font-size:.9rem}
.time-tools details+details{margin-top:.75rem}
@media (max-width:1000px){.time-running{grid-template-columns:1fr}.time-stop-form{grid-template-columns:1fr 1fr}.time-stop-form label:first-child{grid-column:1/-1}}

/* v1.30.0 – Offene-Posten-Arbeitsansicht */
.op-overdue td{background:color-mix(in srgb, #b74a4a 8%, transparent);}
.op-overdue td:first-child{border-left:3px solid #b74a4a;}
.op-actions{white-space:nowrap;}
.op-actions .button{margin:.1rem .15rem .1rem 0;}
.button.small{padding:.32rem .52rem;font-size:.88rem;}

/* v1.30.2: schlanker Arbeitsbereich und Buchungsnavigation */
.booking-pager{display:flex;align-items:end;gap:.65rem;flex-wrap:wrap;margin:.75rem 0 1rem;padding:.55rem 0;border-bottom:1px solid var(--line,#d9e0e6)}
.booking-pager .button{margin:0}
.booking-pager .button.disabled{opacity:.45;pointer-events:none}
.booking-sort-form{margin-left:auto;display:flex;align-items:end}
.booking-sort-form label{margin:0;min-width:230px}
.vat-summary{margin-top:1rem}
.vat-totals{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1rem}
@media(max-width:760px){.booking-sort-form{margin-left:0;width:100%}.booking-sort-form label{width:100%}.vat-totals{grid-template-columns:1fr}}

/* v1.30.3 – JanJur-Markenkennzeichnung und kompakte Startansicht */
.brand { display:flex; align-items:center; gap:.4rem; }
.brand-icon { width:24px; height:24px; flex:0 0 24px; display:block; }
.login-logo { display:block; width:min(280px, 88%); height:auto; margin:0 auto 1.15rem; }
.dashboard-brand-heading { display:flex; align-items:center; gap:1.15rem; min-width:0; }
.dashboard-logo { width:180px; max-width:28vw; height:auto; flex:0 0 auto; }
@media (max-width:760px){
  .dashboard-brand-heading { align-items:flex-start; gap:.75rem; }
  .dashboard-logo { width:130px; max-width:38vw; }
}
