:root {
  --bg: #f5f7fa;
  --surface: #ffffff;
  --surface-muted: #f0f3f6;
  --text: #17212b;
  --muted: #627080;
  --border: #d9e0e7;
  --brand: #0b4651;
  --brand-strong: #073840;
  --accent: #1f7a88;
  --danger: #a4303f;
  --warning: #8a5b00;
  --success: #246b45;
  --shadow: 0 8px 30px rgba(22, 37, 49, .08);
  --radius: 14px;
}
* { box-sizing: border-box; }
html { font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--text); background: var(--bg); }
body { margin: 0; min-height: 100vh; }
a { color: var(--brand); }
button, input, select { font: inherit; }
button, .button { min-height: 44px; border: 0; border-radius: 10px; padding: 0 16px; font-weight: 700; cursor: pointer; }
.button-primary { background: var(--brand); color: #fff; }
.button-primary:hover, .button-primary:focus-visible { background: var(--brand-strong); }
.button-secondary { background: var(--surface-muted); color: var(--text); border: 1px solid var(--border); }
.button-link { background: transparent; color: var(--brand); padding-inline: 4px; }
input, select { width: 100%; min-height: 44px; border: 1px solid var(--border); border-radius: 10px; padding: 9px 12px; background: #fff; color: var(--text); }
input:focus, select:focus, button:focus-visible, a:focus-visible { outline: 3px solid rgba(31, 122, 136, .22); outline-offset: 2px; }
label { display: block; font-weight: 700; margin-bottom: 6px; }
.field { margin-bottom: 18px; }
.help { color: var(--muted); font-size: .92rem; margin-top: 6px; }
.alert { border-radius: 10px; padding: 12px 14px; margin: 0 0 18px; border: 1px solid var(--border); background: var(--surface-muted); }
.alert-error { border-color: #e6b8bf; background: #fff1f3; color: #7d1e2c; }
.alert-warning { border-color: #ead29b; background: #fff9e8; color: #704b00; }
.alert-success { border-color: #b8d9c7; background: #effaf4; color: #1f5c3d; }
.auth-shell { min-height: 100vh; display: grid; place-items: center; padding: 28px 18px; }
.auth-card { width: min(100%, 470px); background: var(--surface); border: 1px solid var(--border); border-radius: 20px; box-shadow: var(--shadow); padding: 28px; }
.brand { display: flex; gap: 12px; align-items: center; margin-bottom: 24px; }
.brand-mark { width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; background: var(--brand); color: white; font-weight: 800; }
.brand-title { font-weight: 800; }
.brand-subtitle { color: var(--muted); font-size: .9rem; }
h1 { font-size: clamp(1.55rem, 4vw, 2rem); margin: 0 0 10px; }
h2 { margin-top: 0; }
p { line-height: 1.55; }
.form-actions { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.app-shell { min-height: 100vh; display: grid; grid-template-columns: 240px 1fr; }
.sidebar { background: #0e2e35; color: #fff; padding: 20px 14px; display: flex; flex-direction: column; gap: 22px; }
.sidebar .brand { margin: 0; padding: 0 6px; }
.sidebar .brand-subtitle { color: rgba(255,255,255,.65); }
.nav { display: grid; gap: 5px; }
.nav a, .nav .nav-disabled { color: #fff; text-decoration: none; padding: 10px 12px; border-radius: 9px; display: block; }
.nav a.active, .nav a:hover { background: rgba(255,255,255,.12); }
.nav-disabled { opacity: .45; cursor: default; }
.sidebar-footer { margin-top: auto; font-size: .82rem; color: rgba(255,255,255,.58); padding: 0 8px; }
.main { min-width: 0; }
.topbar { min-height: 68px; background: var(--surface); border-bottom: 1px solid var(--border); display: flex; align-items: center; justify-content: space-between; padding: 10px 24px; gap: 16px; }
.org-switch { display: flex; align-items: center; gap: 8px; min-width: 0; }
.org-switch strong { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.topbar-actions { display: flex; align-items: center; gap: 12px; }
.user-name { color: var(--muted); }
.content { padding: 26px; max-width: 1280px; margin: 0 auto; }
.page-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 22px; }
.eyebrow { color: var(--accent); text-transform: uppercase; letter-spacing: .08em; font-size: .76rem; font-weight: 800; }
.grid { display: grid; gap: 16px; }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 18px; box-shadow: 0 3px 12px rgba(22,37,49,.035); }
.metric { font-size: 1.85rem; font-weight: 800; margin: 4px 0; }
.muted { color: var(--muted); }
.setup-list { display: grid; gap: 9px; margin-top: 12px; }
.setup-item { display: flex; gap: 10px; align-items: center; padding: 10px; background: var(--surface-muted); border-radius: 9px; }
.setup-dot { width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid var(--border); }
.setup-item.done .setup-dot { background: var(--success); color: #fff; border-color: var(--success); }
.list { display: grid; gap: 10px; }
.list-item { border: 1px solid var(--border); border-radius: 10px; padding: 12px; }
.badge { display: inline-flex; align-items: center; min-height: 28px; padding: 2px 9px; border-radius: 999px; font-size: .82rem; font-weight: 750; background: var(--surface-muted); }
.badge-trial { background: #e8f4f7; color: #145965; }
.badge-readonly { background: #fff3d9; color: #704b00; }
.choice-list { display: grid; gap: 10px; }
.choice { border: 1px solid var(--border); border-radius: 12px; padding: 14px; display: flex; justify-content: space-between; align-items: center; gap: 14px; }
.code-input { letter-spacing: .35em; text-align: center; font-size: 1.4rem; font-weight: 800; }
.mobile-title { display: none; }
@media (max-width: 960px) {
  .grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .app-shell { display: block; }
  .sidebar { display: none; }
  .topbar { padding: 10px 14px; }
  .mobile-title { display: inline; font-weight: 800; }
  .content { padding: 18px 14px 88px; }
  .grid-4, .grid-2 { grid-template-columns: 1fr; }
  .page-header { display: block; }
  .user-name { display: none; }
  .auth-card { padding: 22px; }
}
.checkbox { width: auto; min-height: auto; margin-right: 7px; }
.section-gap { margin-top: 16px; }
textarea { width: 100%; border: 1px solid var(--border); border-radius: 10px; padding: 10px 12px; background: #fff; color: var(--text); font: inherit; resize: vertical; }
textarea:focus { outline: 3px solid rgba(31,122,136,.22); outline-offset: 2px; }
.nav-heading { margin: 18px 12px 4px; color: rgba(255,255,255,.55); font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.card-link { display: block; color: inherit; text-decoration: none; transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease; }
.card-link:hover, .card-link:focus-visible { border-color:#a8c9ce; background:#fbfdfd; box-shadow:0 6px 18px rgba(22,79,89,.08); transform:translateY(-1px); outline:none; }
.card-link:focus-visible { box-shadow:0 0 0 3px rgba(31,122,136,.18),0 6px 18px rgba(22,79,89,.08); }
.section-head { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.check-card { margin:0; border:1px solid var(--border); border-radius:10px; padding:12px; display:flex; align-items:center; gap:8px; font-weight:600; }
.card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.mini-card { border:1px solid var(--border); border-radius:12px; padding:14px; }
.meta-row { display:flex; gap:12px; flex-wrap:wrap; margin-top:10px; color:var(--muted); font-size:.88rem; }
.back-link { display:inline-block; margin-bottom:10px; text-decoration:none; }
.copy-row { display:grid; grid-template-columns:1fr auto; gap:8px; margin-top:10px; }
.button-small { min-height:36px; padding:0 10px; font-size:.9rem; }
.details { margin-top:10px; }
.details summary { cursor:pointer; color:var(--brand); font-weight:700; }
.form-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:12px; align-items:end; }
.inline-check { display:flex; align-items:center; gap:7px; margin:0; font-weight:600; }
.table-wrap { overflow:auto; }
table { width:100%; border-collapse:collapse; }
th, td { text-align:left; padding:11px 10px; border-bottom:1px solid var(--border); vertical-align:top; }
th { font-size:.82rem; color:var(--muted); text-transform:uppercase; letter-spacing:.04em; }
.actions-cell { white-space:nowrap; }
.filter-bar { display:grid; grid-template-columns:minmax(200px,2fr) repeat(3,minmax(130px,1fr)) auto; gap:10px; align-items:end; }
code { background:var(--surface-muted); padding:2px 5px; border-radius:5px; }
.mobile-nav { display:none; }
.setup-item[href] { color:inherit; text-decoration:none; }
.setup-item[href]:hover { background:#e8edf1; }
@media (max-width: 1000px) { .card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .filter-bar { grid-template-columns:1fr 1fr; } }
@media (max-width:760px) {
  /* Mobile actions keep the WCAG-sized touch target even when desktop uses compact buttons. */
  .button-small { min-height:44px; }
  .mobile-nav { position:fixed; display:grid; grid-template-columns:repeat(4,1fr); left:0; right:0; bottom:0; z-index:20; background:#fff; border-top:1px solid var(--border); }
  .mobile-nav a { text-align:center; padding:13px 4px; text-decoration:none; font-size:.82rem; color:var(--muted); }
  .mobile-nav a.active { color:var(--brand); font-weight:800; }
  .check-grid,.card-grid,.filter-bar { grid-template-columns:1fr; }
  .copy-row { grid-template-columns:1fr; }
  th,td { padding:9px 7px; }
}
.invite-context { margin-top: 18px; padding: 12px 14px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface-muted); display: grid; gap: 3px; }
.table-actions { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.assignment-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.assignment-card { border: 1px solid var(--border); border-radius: 12px; padding: 16px; background: var(--surface); }
.assignment-card h3 { margin: 0 0 14px; }
@media (max-width: 800px) { .assignment-grid { grid-template-columns: 1fr; } }
.button-danger { background: var(--danger); color: #fff; }
.button-danger:hover, .button-danger:focus-visible { filter: brightness(.92); }
.danger-zone { border-color: #e6b8bf; background: #fffafb; }
.danger-zone .eyebrow { color: var(--danger); }
.empty-state { padding: 22px 4px 8px; text-align: center; }
.schedule-list .mini-card h3 { margin: 14px 0 8px; }
.schedule-date { margin-top: 12px; }
.schedule-status-open { background: #e8f4f7; color: #145965; }
.schedule-status-finalized { background: #effaf4; color: #1f5c3d; }
.schedule-status-cancelled { background: #f2f3f4; color: #66717d; }
.badge-success { background: #dff3e8; color: #1f5c3d; }
.badge-best { background: #fff3d9; color: #704b00; }
.slot-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 12px; }
.participant-role-grid { display: grid; gap: 9px; }
.participant-role-row { display: grid; grid-template-columns: minmax(0,1fr) 180px; gap: 16px; align-items: center; border: 1px solid var(--border); border-radius: 10px; padding: 11px 12px; }
.schedule-slot-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(230px,1fr)); gap: 12px; }
.schedule-slot-card { border: 1px solid var(--border); border-radius: 12px; padding: 14px; background: var(--surface); }
.schedule-slot-card.is-best, .schedule-choice.is-best { border-color: #d8b760; background: #fffaf0; }
.schedule-slot-card.is-selected { border-color: #83b89c; background: #f2fbf6; }
.schedule-score { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px 10px; margin-top: 13px; color: var(--muted); font-size: .84rem; }
.schedule-score b { color: var(--text); }
.schedule-matrix th:not(:first-child), .schedule-matrix td:not(:first-child) { text-align: center; min-width: 104px; }
.availability { display: inline-flex; align-items: center; justify-content: center; min-height: 28px; padding: 3px 9px; border-radius: 999px; font-size: .82rem; font-weight: 750; white-space: nowrap; }
.availability-yes { background: #e2f4e9; color: #1f5c3d; }
.availability-maybe { background: #fff3d9; color: #704b00; }
.availability-no { background: #fff0f2; color: #7d1e2c; }
.availability-open { background: var(--surface-muted); color: var(--muted); }
.schedule-choice { align-items: flex-start; }
.public-schedule-list { display: grid; gap: 12px; margin-top: 20px; }
.public-slot { border: 1px solid var(--border); border-radius: 12px; padding: 14px; margin: 0; }
.public-slot legend { padding: 0 6px; }
.availability-options { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.availability-options label { margin: 0; display: flex; gap: 7px; align-items: center; border: 1px solid var(--border); border-radius: 9px; padding: 9px; font-weight: 600; }
.availability-options input { width: auto; min-height: auto; }
@media (max-width:760px) {
  .mobile-nav { grid-template-columns: repeat(5,1fr); }
  .slot-fields, .availability-options { grid-template-columns: 1fr; }
  .participant-role-row { grid-template-columns: 1fr; }
  .schedule-score { grid-template-columns: 1fr 1fr; }
  .mobile-nav a { font-size: .74rem; }
}

/* Scheduling polish / Patch 026 */
button, .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  line-height: 1.15;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.button:hover, .button:focus-visible { text-decoration: none; }
.button-primary { box-shadow: 0 4px 12px rgba(11,70,81,.14); }
.button-primary:hover { transform: translateY(-1px); }
.button-secondary:hover, .button-secondary:focus-visible { background: #e7edf1; border-color: #c5d0d8; }
.button-danger:hover { transform: translateY(-1px); }
.page-header-actions { align-items: center; }
.card-emphasis { padding: 22px; border-radius: 16px; box-shadow: 0 5px 18px rgba(22,37,49,.045); }
.card-emphasis h2 { margin-bottom: 6px; }
.help-before { margin: -1px 0 10px; }
.label-optional { color: var(--muted); font-weight: 500; font-size: .86rem; }
.is-hidden { display: none !important; }

.poll-group-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.poll-group-card { margin: 0; display: flex; gap: 10px; align-items: flex-start; padding: 12px 13px; border: 1px solid var(--border); border-radius: 11px; background: #fff; cursor: pointer; font-weight: 600; transition: border-color .15s ease, background .15s ease, box-shadow .15s ease; }
.poll-group-card:hover { border-color: #b9c8d1; }
.poll-group-card.is-selected { border-color: #76a8b0; background: #f1f8f9; box-shadow: inset 0 0 0 1px rgba(31,122,136,.08); }
.poll-group-card .checkbox { margin-top: 3px; }
.poll-group-card-main { display: grid; min-width: 0; }
.poll-group-card-main .help { margin-top: 2px; font-weight: 500; }

.schedule-filter-hint { padding: 22px; border: 1px dashed #c7d2da; border-radius: 12px; background: #f8fafb; text-align: center; display: grid; gap: 4px; color: var(--muted); }
.schedule-filter-hint strong { color: var(--text); }
.schedule-person-count { flex: 0 0 auto; }
.participant-role-row { padding: 13px 14px; border-radius: 11px; transition: border-color .15s ease, background .15s ease; }
.participant-role-row:hover { border-color: #c2ced6; background: #fbfcfd; }
.participant-person { min-width: 0; }
.person-code { margin-left: 7px; display: inline-flex; align-items: center; padding: 2px 6px; border-radius: 6px; background: var(--surface-muted); color: var(--muted); font-size: .78rem; font-weight: 750; letter-spacing: .03em; }
.form-actions-sticky { padding: 12px 0 2px; }

.schedule-list { grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); }
.schedule-list-card { min-height: 190px; display: flex; flex-direction: column; }
.schedule-list-card h3 { font-size: 1.08rem; line-height: 1.3; }
.schedule-groups-line { color: var(--accent); font-weight: 700; font-size: .88rem; }
.schedule-list-card .schedule-date { margin-top: auto; padding-top: 18px; display: grid; gap: 3px; }
.schedule-detail-header .schedule-group-chips { margin-top: 12px; }
.schedule-group-chips { display: flex; flex-wrap: wrap; gap: 7px; }
.group-chip { display: inline-flex; align-items: center; min-height: 30px; padding: 4px 10px; border-radius: 999px; background: #eaf4f6; color: #145965; font-size: .84rem; font-weight: 750; }
.schedule-description { line-height: 1.6; color: #334452; }
.schedule-slot-grid { grid-template-columns: repeat(auto-fit,minmax(250px,1fr)); }
.schedule-slot-card { border-radius: 14px; padding: 16px; }
.schedule-slot-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.schedule-slot-time { display: block; font-size: .98rem; line-height: 1.35; }
.badge-best, .badge-success { white-space: nowrap; }
.schedule-score { padding-top: 12px; border-top: 1px solid rgba(217,224,231,.8); }
.schedule-matrix tbody tr:hover { background: #fafcfd; }
.schedule-matrix td:first-child { min-width: 180px; }
.schedule-link-list .list-item { padding: 14px; }
.schedule-finalize-list { grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); }
.schedule-choice { position: relative; justify-content: flex-start; border-radius: 13px; cursor: pointer; min-height: 84px; }
.schedule-choice:hover { border-color: #b9c8d1; }
.schedule-choice:has(.schedule-choice-radio:checked) { border-color: #76a8b0; background: #f1f8f9; box-shadow: inset 0 0 0 1px rgba(31,122,136,.08); }
.schedule-choice-radio { width: auto; min-height: auto; margin: 3px 0 0; flex: 0 0 auto; }
.schedule-choice-content { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.schedule-choice-content .help { flex-basis: 100%; margin-top: 0; }

.auth-card-wide { width: min(100%, 640px); }
.public-poll-header { margin-bottom: 18px; }
.public-poll-header h1 { margin-top: 4px; }
.invite-context-note { background: #f8fafb; }
.invite-context-deadline { background: #f1f5f7; padding: 15px 16px; }
.public-schedule-list { gap: 15px; }
.public-slot { border-radius: 14px; padding: 16px; background: #fff; }
.public-slot legend { padding: 0 8px; line-height: 1.4; }
.availability-options { gap: 10px; margin-top: 3px; }
.availability-options label.availability-choice { min-height: 52px; justify-content: center; padding: 10px 12px; border-radius: 11px; cursor: pointer; font-weight: 750; transition: border-color .15s ease, background .15s ease, box-shadow .15s ease; }
.availability-choice input { margin: 0 3px 0 0; accent-color: var(--brand); }
.availability-choice-yes:has(input:checked) { border-color: #83b89c; background: #eff9f3; box-shadow: inset 0 0 0 1px rgba(36,107,69,.07); }
.availability-choice-maybe:has(input:checked) { border-color: #d8b760; background: #fff9ea; box-shadow: inset 0 0 0 1px rgba(138,91,0,.06); }
.availability-choice-no:has(input:checked) { border-color: #d8a2aa; background: #fff4f5; box-shadow: inset 0 0 0 1px rgba(164,48,63,.05); }
.public-token-note { border-top: 1px solid var(--border); padding-top: 14px; }

@media (max-width:760px) {
  .poll-group-grid { grid-template-columns: 1fr; }
  .card-emphasis { padding: 17px; }
  .page-header-actions .button { width: 100%; margin-top: 12px; }
  .schedule-detail-header .meta-row { gap: 7px 12px; }
  .schedule-slot-grid, .schedule-finalize-list { grid-template-columns: 1fr; }
  .auth-card-wide { width: 100%; }
}

/* Scheduling time editor + meeting invitations / Patch 027 */
.schedule-slot-editor { min-width: 0; }
.schedule-slot-edit-list { display: grid; gap: 10px; margin-top: 16px; }
.schedule-slot-edit-row {
  display: grid;
  grid-template-columns: 34px minmax(145px,1.2fr) minmax(110px,.75fr) minmax(92px,.6fr) 44px;
  gap: 10px;
  align-items: end;
  padding: 11px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #fbfcfd;
}
.schedule-slot-edit-row .field { margin: 0; }
.schedule-slot-edit-row label { font-size: .82rem; color: var(--muted); margin-bottom: 5px; }
.schedule-slot-number { width: 30px; height: 30px; align-self: center; display: grid; place-items: center; border-radius: 50%; background: #eaf4f6; color: var(--brand); font-size: .84rem; font-weight: 800; }
.schedule-slot-end { min-height: 44px; display: grid; align-content: center; gap: 1px; padding: 5px 2px; }
.schedule-slot-end span { color: var(--muted); font-size: .78rem; }
.schedule-slot-end strong { white-space: nowrap; }
.button-icon { min-width: 44px; padding-inline: 0; font-size: 1.25rem; }
.schedule-slot-add-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-top: 12px; }
.schedule-slot-add-row .help { margin: 0; }

.meeting-created-link { display: flex; align-items: center; justify-content: space-between; gap: 14px; background: #f1f8f9; border-color: #b9d7dc; }
.meeting-overview-grid { align-items: start; }
.meeting-detail-header .schedule-group-chips { margin-top: 10px; }
.meeting-time-row { display: grid; grid-template-columns: minmax(150px,1.2fr) minmax(110px,.7fr) minmax(130px,.85fr); gap: 12px; }
.meeting-time-row .field { margin-bottom: 10px; }
.meeting-end-preview { margin: -1px 0 18px; padding: 8px 10px; border-radius: 9px; background: var(--surface-muted); }
.meeting-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.meeting-facts > div { padding: 12px; border: 1px solid var(--border); border-radius: 10px; display: grid; gap: 3px; }
.meeting-facts span, .public-meeting-fact span, .public-meeting-date span { color: var(--muted); font-size: .82rem; }
.meeting-note-box { margin-top: 14px; padding: 14px; border-radius: 11px; background: #f8fafb; border: 1px solid var(--border); line-height: 1.6; }
.meeting-rsvp-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin: 18px 0; }
.meeting-rsvp-metrics > div { min-width: 0; padding: 12px 8px; border: 1px solid var(--border); border-radius: 11px; text-align: center; background: #fbfcfd; }
.meeting-rsvp-metrics strong { display: block; font-size: 1.35rem; }
.meeting-rsvp-metrics span { display: block; color: var(--muted); font-size: .78rem; margin-top: 2px; }
.meeting-status-draft { background: #edf1f4; color: #55636f; }
.meeting-status-scheduled { background: #e8f4f7; color: #145965; }
.meeting-status-cancelled { background: #fff0f2; color: #7d1e2c; }
.meeting-list-card { min-height: 205px; }
.meeting-participants-table td:first-child { min-width: 180px; }
.invitation-version-list .list-item { padding: 14px; }

.public-meeting-header { margin-bottom: 18px; }
.public-meeting-header h1 { margin-top: 4px; }
.public-meeting-summary { display: grid; grid-template-columns: minmax(180px,1.2fr) repeat(2,minmax(130px,1fr)); gap: 10px; margin: 18px 0 14px; }
.public-meeting-date, .public-meeting-fact { min-height: 76px; display: grid; align-content: center; gap: 4px; padding: 13px 14px; border: 1px solid var(--border); border-radius: 12px; background: #f8fafb; }
.public-meeting-date strong { font-size: 1.15rem; }
.public-meeting-fact a { font-weight: 700; overflow-wrap: anywhere; }
.public-meeting-actions { margin: 14px 0 20px; }
.public-rsvp-section { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--border); }
.rsvp-choice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 14px; }
.rsvp-choice { margin: 0; display: flex; gap: 11px; align-items: center; min-height: 82px; padding: 14px; border: 1px solid var(--border); border-radius: 12px; cursor: pointer; background: #fff; transition: border-color .15s ease, background .15s ease, box-shadow .15s ease; }
.rsvp-choice input { width: auto; min-height: auto; margin: 0; accent-color: var(--brand); }
.rsvp-choice span { display: grid; gap: 2px; }
.rsvp-choice small { color: var(--muted); font-weight: 500; }
.rsvp-yes:has(input:checked) { border-color: #83b89c; background: #eff9f3; box-shadow: inset 0 0 0 1px rgba(36,107,69,.06); }
.rsvp-no:has(input:checked) { border-color: #d8a2aa; background: #fff4f5; box-shadow: inset 0 0 0 1px rgba(164,48,63,.05); }

@media (max-width: 880px) {
  .schedule-slot-edit-row { grid-template-columns: 30px minmax(135px,1fr) minmax(105px,.75fr) 90px 44px; }
  .public-meeting-summary { grid-template-columns: 1fr 1fr; }
  .public-meeting-date { grid-column: 1 / -1; }
}
@media (max-width: 620px) {
  .schedule-slot-edit-row { grid-template-columns: 30px 1fr 1fr; gap: 9px; }
  .schedule-slot-number { grid-row: 1 / span 2; align-self: center; }
  .schedule-slot-end { grid-column: 2; min-height: auto; padding: 2px 0; }
  .schedule-slot-remove { grid-column: 3; justify-self: end; }
  .meeting-time-row, .meeting-facts, .public-meeting-summary, .rsvp-choice-grid { grid-template-columns: 1fr; }
  .public-meeting-date { grid-column: auto; }
  .meeting-created-link { align-items: stretch; flex-direction: column; }
  .meeting-created-link .button { width: 100%; }
}

/* Meeting preparation, central confirmations & scheduling polish / Patch 028 */
.schedule-create-grid { grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); }
.schedule-slot-edit-row {
  grid-template-columns: 30px minmax(126px,1fr) 96px 72px 40px;
  gap: 8px;
  padding: 10px;
}
.schedule-slot-edit-row > *, .schedule-slot-edit-row .field, .schedule-slot-edit-row input, .schedule-slot-edit-row select { min-width: 0; }
.schedule-slot-edit-row input, .schedule-slot-edit-row select { padding-inline: 10px; }
.schedule-slot-end { padding-inline: 0; }
.schedule-slot-remove { justify-self: end; }

.confirm-modal[hidden] { display: none !important; }
body.modal-open { overflow: hidden; }
.confirm-modal { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 20px; }
.confirm-modal-backdrop { position: absolute; inset: 0; background: rgba(11, 26, 34, .52); backdrop-filter: blur(2px); }
.confirm-modal-dialog {
  position: relative;
  width: min(100%, 470px);
  display: grid;
  grid-template-columns: 48px minmax(0,1fr);
  gap: 14px 16px;
  padding: 22px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 18px;
  box-shadow: 0 24px 70px rgba(10, 27, 35, .24);
}
.confirm-modal-icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; background: #eaf4f6; color: var(--brand); font-size: 1.25rem; font-weight: 900; }
.confirm-modal.is-danger .confirm-modal-icon { background: #fff0f2; color: var(--danger); }
.confirm-modal-copy { min-width: 0; align-self: center; }
.confirm-modal-copy h2 { margin: 0 0 5px; font-size: 1.18rem; }
.confirm-modal-copy p { margin: 0; color: var(--muted); }
.confirm-modal-actions { grid-column: 1 / -1; display: flex; justify-content: flex-end; gap: 9px; padding-top: 4px; }

.header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; flex-wrap: wrap; }
.agenda-summary { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.agenda-list { display: grid; gap: 12px; margin-top: 16px; counter-reset: agenda; }
.agenda-item { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 12px; padding: 16px; border: 1px solid var(--border); border-radius: 14px; background: #fff; }
.agenda-item.is-confidential { border-style: dashed; background: #fbfbfc; }
.agenda-item-number, .public-agenda-number { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: #eaf4f6; color: var(--brand); font-weight: 850; }
.agenda-item-body { min-width: 0; }
.agenda-item-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.agenda-item-head h3 { margin: 5px 0 2px; font-size: 1.06rem; }
.agenda-item-kickers { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
.agenda-type { display: inline-flex; align-items: center; min-height: 26px; padding: 2px 8px; border-radius: 999px; font-size: .76rem; font-weight: 800; }
.agenda-type-info { background: #e8f4f7; color: #145965; }
.agenda-type-discussion { background: #fff3d9; color: #704b00; }
.agenda-type-decision { background: #e5f4eb; color: #1f5c3d; }
.agenda-type-election { background: #eee9fb; color: #513b86; }
.agenda-order-actions { display: flex; gap: 5px; flex: 0 0 auto; }
.agenda-order-actions form { margin: 0; }
.agenda-preparation { margin-top: 12px; padding: 12px 13px; border-left: 3px solid #b8ced3; background: #f7fafb; border-radius: 0 9px 9px 0; line-height: 1.55; }
.agenda-material-list { display: grid; gap: 7px; margin-top: 12px; }
.agenda-material { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 9px 11px; border: 1px solid var(--border); border-radius: 9px; background: #fbfcfd; }
.agenda-material > div { display: flex; align-items: center; gap: 7px; min-width: 0; flex-wrap: wrap; }
.agenda-material a { overflow-wrap: anywhere; }
.agenda-material-icon { color: var(--accent); font-weight: 900; }
.agenda-remove-link { min-height: 32px; font-size: .86rem; }
.agenda-manage, .agenda-add { margin-top: 14px; border-top: 1px solid var(--border); padding-top: 12px; }
.agenda-manage > summary, .agenda-add > summary { cursor: pointer; color: var(--brand); font-weight: 800; }
.agenda-manage-grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(280px,.95fr); gap: 18px; margin: 16px 0; }
.agenda-edit-form, .agenda-material-tools { min-width: 0; }
.agenda-material-tools { display: grid; gap: 10px; align-content: start; }
.agenda-material-tools h4 { margin: 0; }
.agenda-material-form { padding: 12px; border: 1px solid var(--border); border-radius: 11px; background: #fbfcfd; }
.agenda-material-form .field { margin-bottom: 11px; }
.agenda-add-form { margin-top: 14px; }
.agenda-empty, .public-agenda-empty { display: grid; gap: 4px; padding: 18px; border: 1px dashed #c7d2da; border-radius: 12px; background: #f8fafb; color: var(--muted); }
.agenda-empty strong, .public-agenda-empty strong { color: var(--text); }
.participant-response-form { margin: 0; min-width: 140px; }
.participant-response-form select { min-height: 38px; padding-block: 6px; }
.meeting-rsvp-metrics { grid-template-columns: repeat(4,minmax(0,1fr)); }

.auth-card-invitation { width: min(100%, 780px); padding: 32px; }
.preview-banner { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 12px 14px; margin: -4px 0 22px; border: 1px solid #b9d7dc; border-radius: 11px; background: #f1f8f9; }
.preview-banner span { color: var(--muted); font-size: .9rem; }
.public-invitation-hero { padding-bottom: 18px; border-bottom: 1px solid var(--border); }
.public-invitation-hero h1 { margin: 5px 0 10px; font-size: clamp(1.75rem,5vw,2.35rem); line-height: 1.12; }
.public-person-line { margin-top: 14px; color: var(--muted); }
.public-person-line strong { color: var(--text); }
.public-meeting-summary-rich { grid-template-columns: minmax(180px,1.15fr) repeat(2,minmax(150px,1fr)); }
.public-invitation-note { margin: 14px 0; }
.public-meeting-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.public-cancelled { display: grid; grid-template-columns: 44px 1fr; gap: 13px; padding: 16px; margin: 18px 0; border: 1px solid #e6b8bf; border-radius: 13px; background: #fff1f3; color: #7d1e2c; }
.public-cancelled-mark { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; background: #f8d8dd; font-weight: 900; }
.public-cancelled p { margin: 5px 0 0; }
.public-agenda-section { margin-top: 26px; padding-top: 24px; border-top: 1px solid var(--border); }
.public-agenda-section h2 { margin: 2px 0 0; }
.public-agenda-list { display: grid; gap: 11px; margin-top: 14px; }
.public-agenda-item { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 12px; padding: 15px; border: 1px solid var(--border); border-radius: 13px; background: #fff; }
.public-agenda-body { min-width: 0; }
.public-agenda-title-row { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.public-agenda-title-row h3 { margin: 5px 0 2px; font-size: 1.04rem; }
.public-agenda-duration { flex: 0 0 auto; padding: 4px 8px; border-radius: 999px; background: var(--surface-muted); color: var(--muted); font-size: .78rem; font-weight: 750; }
.public-agenda-preparation { margin-top: 10px; padding: 11px 12px; border-radius: 9px; background: #f7fafb; line-height: 1.55; }
.public-materials { display: grid; gap: 6px; margin-top: 11px; padding-top: 10px; border-top: 1px solid var(--border); }
.public-material { min-width: 0; }
.public-material a, .public-material span { display: inline-flex; gap: 5px; align-items: center; overflow-wrap: anywhere; }
.rsvp-choice-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.rsvp-maybe:has(input:checked) { border-color: #d8b760; background: #fff9ea; box-shadow: inset 0 0 0 1px rgba(138,91,0,.06); }
.button.is-disabled { cursor: default; opacity: .56; pointer-events: none; }

@media (max-width: 1100px) {
  .schedule-create-grid { grid-template-columns: 1fr; }
}
@media (max-width: 880px) {
  .agenda-manage-grid { grid-template-columns: 1fr; }
  .auth-card-invitation { padding: 26px; }
  .public-meeting-summary-rich { grid-template-columns: 1fr 1fr; }
  .public-meeting-summary-rich .public-meeting-date { grid-column: 1 / -1; }
}
@media (max-width: 680px) {
  .schedule-slot-edit-row { grid-template-columns: 28px minmax(0,1fr) 92px 38px; align-items: end; }
  .schedule-slot-edit-row .schedule-slot-end { grid-column: 2 / 4; grid-row: 2; padding: 2px 0 0; min-height: auto; display: flex; gap: 6px; align-items: baseline; }
  .schedule-slot-remove { grid-column: 4; grid-row: 1 / span 2; align-self: center; }
  .schedule-slot-number { grid-row: 1 / span 2; }
  .agenda-item, .public-agenda-item { grid-template-columns: 32px minmax(0,1fr); padding: 13px; gap: 9px; }
  .agenda-item-number, .public-agenda-number { width: 30px; height: 30px; }
  .agenda-item-head, .public-agenda-title-row { gap: 8px; }
  .agenda-material { align-items: flex-start; flex-direction: column; }
  .meeting-rsvp-metrics, .rsvp-choice-grid-3 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .auth-card-invitation { padding: 22px; }
  .preview-banner { align-items: flex-start; flex-direction: column; }
  .public-meeting-summary-rich { grid-template-columns: 1fr; }
  .public-meeting-summary-rich .public-meeting-date { grid-column: auto; }
}
@media (max-width: 480px) {
  .schedule-slot-edit-row { grid-template-columns: 28px minmax(0,1fr) 38px; }
  .schedule-slot-edit-row .field:nth-of-type(2) { grid-column: 2; }
  .schedule-slot-edit-row .schedule-slot-end { grid-column: 2; }
  .schedule-slot-remove { grid-column: 3; }
  .confirm-modal-dialog { grid-template-columns: 40px minmax(0,1fr); padding: 18px; }
  .confirm-modal-icon { width: 40px; height: 40px; border-radius: 12px; }
  .confirm-modal-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .meeting-rsvp-metrics, .rsvp-choice-grid-3 { grid-template-columns: 1fr; }
}

/* Communication & scheduling presentation / Patch 029 */
.schedule-create-grid { grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr); }
.schedule-slot-edit-list { gap: 12px; }
.schedule-slot-edit-row {
  grid-template-columns: 32px minmax(0,1fr) 42px;
  gap: 12px;
  align-items: start;
  padding: 14px;
  background: #fff;
  border-radius: 14px;
}
.schedule-slot-number { margin-top: 25px; }
.schedule-slot-main { min-width: 0; display: grid; gap: 8px; }
.schedule-slot-fields { display: grid; grid-template-columns: minmax(150px,1.3fr) minmax(102px,.7fr); gap: 10px; align-items: end; }
.schedule-slot-fields .field { margin: 0; min-width: 0; }
.schedule-slot-summary { display: flex; align-items: baseline; gap: 7px; min-height: 22px; color: var(--muted); font-size: .82rem; }
.schedule-slot-summary strong { color: var(--text); font-size: .94rem; }
.schedule-slot-remove { margin-top: 24px; align-self: start; }
.schedule-slot-edit-row.is-duplicate { border-color: #d99da7; background: #fffafb; box-shadow: inset 0 0 0 1px rgba(164,48,63,.05); }
.schedule-slot-row-error { color: var(--danger); font-size: .8rem; font-weight: 700; }
.schedule-slot-duplicate-alert { margin: 14px 0 0; }

.calendar-menu { position: relative; display: inline-block; }
.calendar-menu > summary { list-style: none; cursor: pointer; }
.calendar-menu > summary::-webkit-details-marker { display: none; }
.calendar-menu > summary::after { content: '⌄'; margin-left: 8px; font-size: .9em; transition: transform .15s ease; }
.calendar-menu[open] > summary::after { transform: rotate(180deg); }
.calendar-menu-panel {
  position: absolute;
  z-index: 40;
  right: 0;
  top: calc(100% + 7px);
  width: min(300px, calc(100vw - 28px));
  display: grid;
  gap: 4px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(16,34,53,.16);
}
.calendar-menu-panel a { display: grid; gap: 2px; padding: 10px 11px; border-radius: 8px; color: var(--text); text-decoration: none; }
.calendar-menu-panel a:hover, .calendar-menu-panel a:focus-visible { background: var(--surface-muted); text-decoration: none; }
.calendar-menu-panel strong { font-size: .92rem; }
.calendar-menu-panel span { color: var(--muted); font-size: .78rem; }
.header-actions .calendar-menu-panel { right: 0; }
.public-meeting-actions .calendar-menu-panel { left: 0; right: auto; }

@media (max-width: 1100px) {
  .schedule-create-grid { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .schedule-slot-edit-row { grid-template-columns: 30px minmax(0,1fr) 38px; gap: 9px; padding: 12px; }
  .schedule-slot-fields { grid-template-columns: 1fr; gap: 8px; }
  .schedule-slot-number, .schedule-slot-remove { margin-top: 25px; }
  .schedule-slot-summary { flex-wrap: wrap; }
  .calendar-menu { width: 100%; }
  .calendar-menu > summary { width: 100%; }
  .calendar-menu-panel { position: static; width: 100%; margin-top: 6px; box-shadow: none; }
}
@media (max-width: 680px) {
  .schedule-slot-remove { grid-column: 3; grid-row: auto; align-self: start; }
  .schedule-slot-number { grid-row: auto; }
  .schedule-slot-fields .field { grid-column: auto; grid-row: auto; }
}
@media (max-width: 480px) {
  .schedule-slot-fields .field:nth-of-type(2) { grid-column: auto; }
}

/* Patch 031: Sitzungsdurchführung / Protokoll */
.meeting-conduct-header{align-items:flex-start}.meeting-live-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-radius:14px;border:1px solid var(--border,#d7e0e8);margin-top:14px}.meeting-live-bar>div{display:flex;flex-direction:column;gap:3px}.meeting-live-bar.is-live{background:#eef8f5;border-color:#bddfd3}.meeting-live-bar.is-live strong{color:#176348}.meeting-live-bar.is-completed{background:#f1f4f7}.meeting-start-card{margin-top:14px}.attendance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.attendance-person{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid #d7e0e8;border-radius:12px;background:#fff;cursor:pointer}.attendance-person.is-present{background:#f0f8f4;border-color:#a9d4bd}.attendance-person span{display:flex;flex-direction:column;gap:2px}.attendance-person small{color:#6b7b88}.conduct-agenda-list{display:grid;gap:14px}.conduct-agenda-card{background:#fff;border:1px solid #d7e0e8;border-radius:16px;padding:18px}.conduct-agenda-card.is-complete{border-color:#bfdcca;background:#fbfefc}.conduct-agenda-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start}.conduct-agenda-head h3{margin:3px 0 0}.conduct-notes-form{margin-top:16px}.conduct-note-actions{align-items:end}.conduct-note-actions .form-actions{padding-bottom:1px}.conduct-outcomes-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.conduct-outcome{border:1px solid #e0e6eb;border-radius:12px;padding:14px;background:#f9fbfc}.conduct-outcome h4{margin:0}.outcome-list{display:grid;gap:8px;margin:10px 0}.decision-item,.task-item{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border-radius:10px;background:#fff;border:1px solid #e2e8ed}.decision-item .outcome-icon{display:grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:#e7f5ed;color:#176348;font-weight:800}.task-item{justify-content:space-between;align-items:center}.task-item.is-complete strong{text-decoration:line-through;color:#71808b}.conduct-add{margin-top:10px}.conduct-add>summary{cursor:pointer;font-weight:700;color:#1b5661}.conduct-add form{margin-top:12px}.minutes-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.minutes-summary>div{padding:14px;border:1px solid #dce4ea;border-radius:12px;background:#f7f9fb}.minutes-summary span{display:block;font-size:12px;color:#6b7b88;margin-bottom:3px}.minutes-summary strong{font-size:22px}.agenda-type{display:inline-flex;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#1b5661}.meeting-status-in_progress{background:#fff3d8;color:#7a5400}.meeting-status-completed{background:#e9f5ee;color:#176348}
@media(max-width:800px){.conduct-outcomes-grid{grid-template-columns:1fr}.conduct-agenda-head{grid-template-columns:auto minmax(0,1fr)}.conduct-agenda-head>.badge{grid-column:2}.meeting-live-bar{align-items:stretch;flex-direction:column}.minutes-summary{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.attendance-grid{grid-template-columns:1fr}.minutes-summary{grid-template-columns:1fr}.conduct-agenda-card{padding:14px}}
.minutes-version-state{display:flex;justify-content:space-between;gap:14px;margin-top:14px;padding:11px 13px;border-radius:10px;font-size:13px}.minutes-version-state span{color:#657582}.minutes-version-state.is-current{background:#eef8f3;border:1px solid #c5e2d2}.minutes-version-state.has-changes{background:#fff8e7;border:1px solid #ead8a5}.minutes-browser-preview{margin-top:16px;border:1px solid #dbe3e9;border-radius:14px;background:#fff;padding:18px}.minutes-preview-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #e2e8ed}.minutes-preview-head span,.minutes-preview-attendance{color:#647481;font-size:13px}.minutes-preview-attendance{padding:12px 0}.minutes-preview-item{padding:14px 0;border-top:1px solid #edf1f4}.minutes-preview-item>div:first-child{display:flex;gap:9px;align-items:center}.minutes-preview-item>div:first-child>span{display:grid;place-items:center;min-width:25px;height:25px;border-radius:999px;background:#edf5f6;color:#1b5661;font-weight:800}.minutes-preview-item p{margin:9px 0 0 34px}.minutes-preview-decision,.minutes-preview-tasks{margin:9px 0 0 34px;padding:9px 11px;border-radius:9px;background:#f2f8f5}.minutes-preview-decision strong,.minutes-preview-tasks>strong{display:block;color:#1b5661;font-size:12px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}@media(max-width:640px){.minutes-preview-head,.minutes-version-state{flex-direction:column}.minutes-preview-item p,.minutes-preview-decision,.minutes-preview-tasks{margin-left:0}}
.conduct-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:14px;border-top:1px solid #e4eaee}.conduct-role-grid .field{margin:0}@media(max-width:640px){.conduct-role-grid{grid-template-columns:1fr}}
.minutes-preview-roles{display:flex;gap:16px;flex-wrap:wrap;padding:11px 0 0;color:#647481;font-size:13px}.minutes-preview-roles strong{color:#334452}

/* Patch 032: live meeting autosave, voting rights, quorum and vote recording */
.section-gap-small{margin-top:8px}.attendance-person{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;cursor:default}.attendance-main{display:flex;align-items:center;gap:10px;min-width:0;cursor:pointer}.attendance-main>span{min-width:0}.voting-toggle{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border-radius:9px;background:#f5f7f9;color:#44545f;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.attendance-person.is-present .voting-toggle{background:#fff}.voting-toggle>span{display:block}.quorum-config,.quorum-panel{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(190px,.7fr) minmax(220px,1fr);gap:14px;align-items:end;padding:15px;border:1px solid #d9e2e8;border-radius:13px;background:#f8fafb}.quorum-config .field,.quorum-panel .field{margin:0}.quorum-status{display:flex;flex-direction:column;align-self:stretch;justify-content:center;gap:3px;padding:4px 2px}.quorum-status>strong{font-size:18px}.quorum-status>span:last-child{font-size:13px;color:#647481}.quorum-panel.is-met{background:#f0f8f4;border-color:#b9dbc9}.quorum-panel.is-met .quorum-status>strong{color:#176348}.quorum-panel.is-not-met{background:#fff5f3;border-color:#edc5bf}.quorum-panel.is-not-met .quorum-status>strong{color:#9b3028}.quorum-panel.is-open{background:#f8fafb}.autosave-state{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;letter-spacing:.01em;padding:5px 9px;border-radius:999px;white-space:nowrap}.autosave-state.is-saved{background:#eaf6ef;color:#176348}.autosave-state.is-saving{background:#eef4f8;color:#355c70}.autosave-state.is-dirty{background:#fff6dd;color:#7a5700}.autosave-state.is-error{background:#fff0ef;color:#a02d27}.conduct-notes-form .field>label{display:flex;align-items:center;justify-content:space-between;gap:12px}.decision-with-vote{align-items:flex-start}.decision-content{min-width:0;flex:1}.vote-result{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin-top:9px;padding:8px 10px;border-radius:9px;background:#eef8f3;color:#2d454c;font-size:12px}.vote-result>strong{color:#176348}.vote-result>small{margin-left:auto;color:#6a7881}.vote-editor{margin-top:8px;border-top:1px solid #e6ecef;padding-top:8px}.vote-editor>summary{cursor:pointer;color:#1b5661;font-weight:700;font-size:13px}.vote-editor form{margin-top:10px}.vote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.vote-grid .field{margin:0}.check-row{display:flex;align-items:flex-start;gap:8px;margin-top:10px;font-size:12px;color:#44545f;cursor:pointer}.check-row input{margin-top:2px}.vote-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.minutes-governance{display:flex;flex-direction:column;gap:3px;margin-top:14px;padding:11px 13px;border-radius:10px;font-size:13px}.minutes-governance.is-met{background:#eef8f3;border:1px solid #c5e2d2}.minutes-governance.is-met strong{color:#176348}.minutes-governance.is-not-met{background:#fff2ef;border:1px solid #edc6bf}.minutes-governance.is-not-met strong{color:#9b3028}.minutes-governance span{color:#657582}.minutes-preview-decision small{display:block;margin-top:5px;color:#526570;font-weight:700}.conduct-note-actions{grid-template-columns:minmax(180px,260px) 1fr}
@media(max-width:900px){.quorum-config,.quorum-panel{grid-template-columns:1fr 1fr}.quorum-config>div:first-child,.quorum-panel>.quorum-status{grid-column:1/-1}.attendance-person{grid-template-columns:1fr}.voting-toggle{justify-self:start}}
@media(max-width:640px){.quorum-config,.quorum-panel,.vote-grid{grid-template-columns:1fr}.vote-editor-footer{align-items:stretch;flex-direction:column}.vote-editor-footer .button{width:100%}.conduct-note-actions{grid-template-columns:1fr}}

/* Patch 033: Sitzungstyp, Governance-Profile und verifizierbares Autosave */
.meeting-type-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.meeting-type-choice-compact{gap:12px}
.meeting-type-card{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:11px;padding:14px 15px;border:1px solid #d7e1e7;border-radius:13px;background:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease;min-height:88px}
.meeting-type-card:hover{border-color:#9fbfc7;background:#fbfdfd}
.meeting-type-card.is-selected{border-color:#6fa7b2;background:#eef7f8;box-shadow:0 0 0 1px rgba(27,86,97,.04)}
.meeting-type-card>input{position:absolute;opacity:0;pointer-events:none}
.meeting-type-marker{width:24px;height:24px;border:1.5px solid #9babb5;border-radius:8px;background:#fff;display:grid!important;place-items:center;margin-top:1px;transition:all .15s ease}
.meeting-type-card.is-selected .meeting-type-marker{background:#1b5661;border-color:#1b5661}
.meeting-type-card.is-selected .meeting-type-marker::after{content:'✓';color:#fff;font-size:14px;font-weight:900;line-height:1}
.meeting-type-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.meeting-type-card strong{font-size:15px;color:#102235;line-height:1.25}
.meeting-type-card small{font-size:12.5px;line-height:1.45;color:#667781}
.gv-scope-card{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr);gap:18px;padding:15px 16px;border:1px solid #cfe0e4;background:#f5fafb;border-radius:13px}
.gv-scope-card strong{font-size:17px}.gv-scope-card p{margin:5px 0 0}.gv-scope-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;align-content:center}.gv-scope-stats span{display:flex;flex-direction:column;gap:1px;padding:9px 8px;background:#fff;border:1px solid #dce7ea;border-radius:9px;text-align:center;font-size:11px;color:#667781}.gv-scope-stats b{font-size:17px;color:#173342}
.gv-member-summary{display:flex;gap:9px;flex-wrap:wrap}.gv-member-summary span{padding:8px 10px;border-radius:9px;background:#f4f7f9;border:1px solid #dce4ea;color:#667781;font-size:12.5px}.gv-member-summary strong{color:#102235}
.gv-guest-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:9px}.gv-guest-card{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border:1px solid #d9e2e8;border-radius:11px;background:#fff}.gv-guest-card span{display:flex;flex-direction:column;gap:2px}.gv-guest-card small{color:#71808b}

.autosave-state.is-idle{background:#f1f4f6;color:#667781}

/* Governance is intentionally compact for normal meetings and prominent for GVs. */
.governance-details{border:1px solid #d9e2e8;border-radius:13px;background:#f8fafb;overflow:hidden}
.governance-details>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;cursor:pointer}
.governance-details>summary::-webkit-details-marker{display:none}
.governance-details>summary>span:first-child{display:flex;flex-direction:column;gap:2px}
.governance-details>summary strong{font-size:14px;color:#1b2b36}
.governance-details>summary small{font-size:12px;color:#6a7982;font-weight:500}
.governance-details-body{padding:0 15px 15px;border-top:1px solid #e3e9ed}
.governance-details-body>.help{margin:12px 0 8px}
.governance-card{padding:15px;border:1px solid #d9e2e8;border-radius:13px;background:#f8fafb}
.governance-card-gv{border-color:#a9cbd1;background:#f0f8f9}
.governance-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:12px}
.governance-card-head>div{min-width:0}
.governance-card-head strong{display:block;font-size:16px;margin:2px 0 4px;color:#102235}
.governance-card-head .help{margin:0;max-width:780px}
.governance-enable{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:#fff;border:1px solid #dbe4e9;font-size:13px;font-weight:700;color:#30444f;cursor:pointer;margin:2px 0 10px}
.governance-rule-grid{display:grid;grid-template-columns:minmax(150px,.42fr) minmax(260px,1fr);gap:12px;align-items:end}
.governance-rule-grid .field{margin:0}
.governance-rule-grid input:disabled{background:#f3f5f6;color:#829099;cursor:not-allowed}
.quorum-panel.governance-card-gv{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(360px,1.1fr);gap:14px;align-items:center;padding:15px}
.quorum-panel.governance-card-gv>.quorum-status{grid-row:1/3}
.quorum-panel.governance-card-gv>.governance-enable{margin:0;justify-self:start}
.quorum-panel.governance-card-gv>.governance-rule-grid{grid-column:2}
.quorum-status.compact{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:11px 0 4px;background:transparent!important}
.quorum-status.compact strong{font-size:14px}
.quorum-status.compact span{font-size:12px;color:#657582}

@media(max-width:900px){
  .quorum-panel.governance-card-gv{grid-template-columns:1fr}
  .quorum-panel.governance-card-gv>.quorum-status,.quorum-panel.governance-card-gv>.governance-rule-grid{grid-column:1;grid-row:auto}
}
@media(max-width:700px){
  .meeting-type-choice,.governance-rule-grid{grid-template-columns:1fr}
  .governance-card-head{flex-direction:column;gap:8px}
  .quorum-status.compact{align-items:flex-start;flex-direction:column}
}

/* Patch 034: direct meetings + live minutes */
.direct-meeting-grid{align-items:start}.direct-meeting-form .meeting-type-choice{margin-top:2px}.direct-meeting-form .participant-role-grid{max-height:520px;overflow:auto;padding-right:2px}.direct-meeting-form .card{height:100%}.minutes-browser-preview{transition:opacity .15s ease}.autosave-state.is-saving~* [data-minutes-live]{opacity:.88}@media(max-width:800px){.direct-meeting-grid{grid-template-columns:1fr}.direct-meeting-form .participant-role-grid{max-height:none}}

@media(max-width:760px){.gv-scope-card{grid-template-columns:1fr}.gv-scope-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.gv-scope-stats{grid-template-columns:1fr}.meeting-type-card{min-height:auto}}

.gv-template-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;margin-bottom:16px;border:1px solid #d7d1ec;background:#f7f5fc;border-radius:13px}.gv-template-callout strong{font-size:15px}.gv-template-callout p{margin:3px 0 0}@media(max-width:680px){.gv-template-callout{align-items:stretch;flex-direction:column}.gv-template-callout form .button{width:100%}}

/* Patch 036: compact meeting type switch + GV scope + hierarchical agenda */
.meeting-type-choice-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.meeting-type-choice-compact .meeting-type-card{grid-template-columns:38px minmax(0,1fr) 22px;align-items:center;gap:11px;min-height:0;padding:12px 13px;border-radius:12px}
.meeting-type-card .meeting-type-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#eef3f5;color:#31515c;font-size:12px;font-weight:850;letter-spacing:.02em}
.meeting-type-card .meeting-type-check{display:grid;place-items:center;width:21px;height:21px;border:1px solid #c8d5da;border-radius:50%;color:transparent;font-size:12px;font-weight:900;background:#fff}
.meeting-type-card.is-selected .meeting-type-icon{background:#1b5661;color:#fff}
.meeting-type-card.is-selected .meeting-type-check{border-color:#1b5661;background:#1b5661;color:#fff}
.meeting-type-card .meeting-type-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.meeting-type-card .meeting-type-copy strong{font-size:14.5px;line-height:1.2}
.meeting-type-card .meeting-type-copy small{font-size:12px;line-height:1.35;color:#667781}
.meeting-type-card>input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none}
.meeting-type-marker{display:none!important}

/* Keep meeting-type sections visually correct even before JS has toggled disabled fields. */
[data-meeting-type-form]:has(input[name="meeting_type"][value="GENERAL_ASSEMBLY"]:checked) [data-meeting-board-only]{display:none!important}
[data-meeting-type-form]:has(input[name="meeting_type"][value="GENERAL_ASSEMBLY"]:checked) [data-meeting-gv-only]{display:block!important}
[data-meeting-type-form]:has(input[name="meeting_type"][value="BOARD"]:checked) [data-meeting-gv-only]{display:none!important}
[data-meeting-type-form]:has(input[name="meeting_type"][value="BOARD"]:checked) [data-meeting-board-only]{display:block!important}
.gv-scope-copy strong{font-size:16px}
.gv-auto-members-note{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid #cfe2d7;border-radius:12px;background:#f3faf6}
.gv-auto-members-note>div{display:flex;flex-direction:column;gap:2px}.gv-auto-members-note>div>span{font-size:12.5px;color:#61736d}
.gv-auto-members-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#dff2e7;color:#176348;font-weight:900}

.agenda-item.agenda-depth-1{margin-left:34px}
.agenda-item.agenda-depth-2{margin-left:68px}
.agenda-item.agenda-depth-1 .agenda-item-number,.agenda-item.agenda-depth-2 .agenda-item-number{min-width:42px;width:auto;padding:0 7px;border-radius:999px;font-size:12px}
.conduct-agenda-card.agenda-depth-1{margin-left:30px}
.conduct-agenda-card.agenda-depth-2{margin-left:60px}
.minutes-preview-item.agenda-depth-1{margin-left:20px}
.minutes-preview-item.agenda-depth-2{margin-left:40px}

@media(max-width:760px){
  .meeting-type-choice-compact{grid-template-columns:1fr}
  .agenda-item.agenda-depth-1,.agenda-item.agenda-depth-2,.conduct-agenda-card.agenda-depth-1,.conduct-agenda-card.agenda-depth-2{margin-left:0}
  .minutes-preview-item.agenda-depth-1{margin-left:10px}.minutes-preview-item.agenda-depth-2{margin-left:20px}
}

/* Patch 037: GV-Antragsfrist & Traktandierungsbegehren */
.gv-request-admin{overflow:visible}
.gv-deadline-form{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,340px) auto;gap:14px;align-items:end;padding:15px;border:1px solid #d8e3e8;border-radius:13px;background:#f8fbfc}
.gv-deadline-form .field{margin:0}.gv-deadline-copy{display:flex;flex-direction:column;gap:3px;align-self:center}.gv-deadline-copy strong{font-size:15px}.gv-deadline-copy span{font-size:12.5px;color:#657783;line-height:1.45}.gv-deadline-status{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:10px;padding:10px 12px;border-radius:10px;background:#eef8f4;border:1px solid #cce4d7;color:#31564b}.gv-deadline-status span{font-weight:750}.gv-request-list{display:grid;gap:12px}.gv-request-card{padding:16px;border:1px solid #d9e2e8;border-radius:14px;background:#fff}.gv-request-card .section-head{margin-bottom:7px}.gv-request-card h3{margin:5px 0 0}.gv-request-text,.gv-request-motion{margin-top:12px;padding:11px 12px;border-radius:10px;background:#f7f9fb}.gv-request-motion{background:#f1f8f6;border:1px solid #d6e9e1}.gv-request-text strong,.gv-request-motion strong,.gv-request-files>strong{display:block;font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:#536a76;margin-bottom:4px}.gv-request-text p,.gv-request-motion p{margin:0;line-height:1.55}.gv-request-files{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:11px}.gv-request-files a{font-weight:700;color:#1b5661}.gv-request-actions{display:flex;gap:9px;align-items:flex-start;flex-wrap:wrap;margin-top:14px}.gv-request-actions details{position:relative}.gv-request-actions details>summary{list-style:none}.gv-request-actions details>summary::-webkit-details-marker{display:none}.gv-request-more{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1fr);gap:12px;position:absolute;z-index:15;right:0;top:calc(100% + 7px);width:min(680px,85vw);padding:14px;border:1px solid #d6e0e6;border-radius:13px;background:#fff;box-shadow:0 15px 38px rgba(18,42,58,.14)}.gv-request-more .field{margin-top:0}.compact-alert{margin:11px 0 0;padding:9px 11px}.gv-request-status-agenda{border-color:#c5e2d2}.gv-request-status-rejected,.gv-request-status-withdrawn{opacity:.82}.gv-request-status-merged{border-color:#d5dce2;background:#fbfcfd}
@media(max-width:860px){.gv-deadline-form{grid-template-columns:1fr 1fr}.gv-deadline-copy{grid-column:1/-1}.gv-request-more{grid-template-columns:1fr}}
@media(max-width:620px){.gv-deadline-form{grid-template-columns:1fr}.gv-deadline-form .button{width:100%}.gv-deadline-status{align-items:flex-start;flex-direction:column}.gv-request-actions{flex-direction:column}.gv-request-actions>.button,.gv-request-actions>form,.gv-request-actions>form .button,.gv-request-actions details,.gv-request-actions details>summary{width:100%}.gv-request-more{position:static;width:100%;margin-top:8px}}

/* Patch 038: focused meeting conduct */
body.focus-panel-open{overflow:hidden}
.meeting-focus-shell{--focus-max:1180px}
.meeting-focus-shell.is-running{position:fixed;inset:0;z-index:850;background:#f3f6f8;overflow:auto;padding:0 22px 40px}
.meeting-focus-shell.is-running .meeting-focus-topbar{position:sticky;top:0;z-index:20;margin:0 -22px;padding:12px max(22px,calc((100vw - var(--focus-max))/2));background:rgba(255,255,255,.96);border-bottom:1px solid #d8e1e7;box-shadow:0 3px 14px rgba(16,34,53,.06);backdrop-filter:blur(10px)}
.meeting-focus-topbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center}
.meeting-focus-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:5px 12px;align-items:baseline;min-width:0}
.meeting-focus-title .eyebrow{grid-column:1/-1;margin:0}.meeting-focus-title strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-focus-title>span{font-size:13px;color:#657783;white-space:nowrap}
.meeting-focus-stats{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.meeting-focus-stats span{padding:6px 9px;border-radius:999px;background:#edf4f5;color:#36525c;font-size:12.5px;white-space:nowrap}.meeting-focus-stats b{color:#154d58}
.meeting-focus-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.meeting-focus-actions form{margin:0}
.meeting-focus-main{width:min(100%,var(--focus-max));margin:26px auto 0}.meeting-focus-progress{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:11px;color:#647781;font-size:12.5px}.meeting-focus-progress>div{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.progress-track{appearance:none;-webkit-appearance:none;height:5px;border:0;border-radius:999px;background:#dfe7eb;overflow:hidden;flex:1;max-width:280px}.progress-track::-webkit-progress-bar{background:#dfe7eb;border-radius:999px}.progress-track::-webkit-progress-value{background:#1b5661;border-radius:999px}.progress-track::-moz-progress-bar{background:#1b5661;border-radius:999px}
.focus-agenda-card{padding:24px;border:1px solid #d7e1e6;border-radius:18px;background:#fff;box-shadow:0 10px 34px rgba(25,50,65,.07)}
.focus-agenda-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;padding-bottom:18px;border-bottom:1px solid #e3e9ed}.agenda-number-large{min-width:46px;width:auto;padding:0 10px;border-radius:13px;height:46px;font-size:14px}.focus-agenda-head h1{margin:5px 0 0;font-size:clamp(1.35rem,2.6vw,1.9rem);line-height:1.18}.member-motion-origin{display:inline-flex;align-items:center;margin-top:8px;padding:4px 8px;border-radius:999px;background:#f5effb;color:#624584;font-size:12px;font-weight:750}
.focus-agenda-card .meeting-note-box{margin-top:16px}.conduct-notes-form{margin-top:18px}.conduct-notes-form>.field textarea{font-size:15px;line-height:1.55;min-height:170px}.focus-inline-settings{display:grid;grid-template-columns:minmax(150px,.34fr) minmax(220px,.42fr) minmax(220px,.6fr);gap:12px;align-items:end;margin-top:12px}.focus-inline-settings .field{margin:0}.focus-secondary{margin-top:10px;border:1px solid #e0e7eb;border-radius:11px;background:#fafcfd}.focus-secondary>summary{padding:10px 12px;cursor:pointer;font-weight:700;color:#425964}.focus-secondary>*:not(summary){margin:0 12px 12px}.label-optional{font-weight:500;color:#77858d;font-size:12px}
.focus-outcomes{padding-top:20px;border-top:1px solid #e3e9ed}.focus-decision{padding:15px;border:1px solid #d9e2e7;border-radius:13px;background:#fbfcfd;margin-top:10px}.focus-decision-text p{margin:5px 0 0;line-height:1.55}.vote-result-large{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:baseline;margin-top:12px;padding:12px 13px;border-radius:10px;background:#edf7f3;border:1px solid #cee7db}.vote-result-large strong{grid-row:1/3;color:#176348}.vote-result-large span{font-size:13px}.vote-result-large small{color:#687982}.vote-editor{margin-top:10px}.vote-editor>summary,.conduct-add>summary{cursor:pointer;color:#1b5661;font-weight:800}.vote-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}.vote-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px}.conduct-add{margin-top:12px}.conduct-add form{margin-top:10px;padding:13px;border-radius:11px;background:#f7fafb;border:1px solid #e0e7eb}.focus-tasks.is-secondary{padding:0 12px 12px}.focus-secondary.section-gap{margin-top:18px}
.exclusion-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0}.exclusion-list label{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e0e7eb;border-radius:9px;background:#fff;cursor:pointer}
.meeting-focus-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin:14px 0 40px}.meeting-focus-nav>:last-child{justify-self:end}.meeting-focus-nav form{margin:0}

.attendance-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}.attendance-list-compact{display:grid;gap:6px}.attendance-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:9px 11px;border:1px solid #dce5e9;border-radius:10px;background:#fff;transition:.15s ease}.attendance-row.is-present{border-color:#b9d9c8;background:#f3faf6}.attendance-row-main,.voting-toggle{display:flex;align-items:center;gap:9px;cursor:pointer}.attendance-row-main>span{display:flex;flex-direction:column;min-width:0}.attendance-row-main strong{font-size:13.5px}.attendance-row-main small{font-size:11.5px;color:#6d7c84;white-space:normal}.voting-toggle{font-size:12px;color:#4c616c}.attendance-row input.checkbox{width:18px;height:18px;min-height:0;margin:0}
.gv-rule-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.45fr) minmax(210px,.45fr);gap:14px;align-items:end;padding:14px;border:1px solid #c9dfe3;border-radius:13px;background:#f2f9fa}.gv-rule-card h3{margin:2px 0 4px;font-size:15px}.gv-rule-card .field{margin:0}

.focus-panel[hidden]{display:none!important}.focus-panel{position:fixed;inset:0;z-index:930;display:grid;grid-template-columns:minmax(0,1fr) min(520px,92vw)}.focus-panel-wide{grid-template-columns:minmax(0,1fr) min(820px,94vw)}.focus-panel-backdrop{background:rgba(8,22,31,.46);backdrop-filter:blur(2px)}.focus-panel>section{grid-column:2;position:relative;height:100vh;overflow:auto;padding:20px;background:#fff;box-shadow:-18px 0 50px rgba(8,27,38,.18)}.focus-panel>section>header{position:sticky;top:-20px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-20px -20px 16px;padding:18px 20px;border-bottom:1px solid #dce4e9;background:rgba(255,255,255,.97)}.focus-panel>section>header h2{margin:0}.focus-agenda-nav{display:grid;gap:7px}.focus-agenda-nav a{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid #dce4e9;border-radius:10px;color:#263c47;text-decoration:none}.focus-agenda-nav a>span{display:grid;place-items:center;min-height:30px;border-radius:8px;background:#edf3f5;font-weight:800;font-size:12px}.focus-agenda-nav a strong{font-size:13.5px}.focus-agenda-nav a small{color:#6b7c84;font-size:11px}.focus-agenda-nav a.is-current{border-color:#7fadb5;background:#f1f8f9}.focus-agenda-nav a.is-complete{opacity:.72}.focus-agenda-nav a.is-complete>span{background:#e4f3ea;color:#176348}.icon-button{width:36px;height:36px;min-height:0;padding:0;border:1px solid #d6e0e5;border-radius:10px;background:#fff;color:#415864;font-size:22px;cursor:pointer}

.public-rsvp-gv-state{padding:14px;border:1px solid #d3e3e7;border-radius:12px;background:#f6fafb}.public-rsvp-gv-state strong{display:block;margin-bottom:4px}.public-gv-decline{margin-top:12px;padding:13px;border:1px solid #ead9aa;border-radius:11px;background:#fffaf0}.public-gv-decline textarea{margin-top:6px}.public-gv-decline .form-actions{margin-top:9px}.public-gv-decline-reason{margin-top:8px;color:#5f6f77;font-size:13px}

@media(max-width:900px){
 .meeting-focus-shell.is-running{padding:0 14px 30px}.meeting-focus-shell.is-running .meeting-focus-topbar{margin:0 -14px;padding:10px 14px}.meeting-focus-topbar{grid-template-columns:1fr auto}.meeting-focus-actions{grid-column:1/-1;justify-content:flex-start}.meeting-focus-title{grid-template-columns:1fr}.meeting-focus-title .eyebrow{grid-column:auto}.meeting-focus-title>span{white-space:normal}.focus-inline-settings,.gv-rule-card{grid-template-columns:1fr 1fr}.gv-rule-card>div:first-child{grid-column:1/-1}.vote-grid-4{grid-template-columns:1fr 1fr}.exclusion-list{grid-template-columns:1fr}
}
@media(max-width:620px){
 .meeting-focus-stats{display:none}.meeting-focus-topbar{grid-template-columns:1fr}.meeting-focus-actions{gap:5px}.meeting-focus-actions .button{font-size:11.5px;padding:7px 9px}.meeting-focus-main{margin-top:14px}.focus-agenda-card{padding:16px;border-radius:14px}.focus-agenda-head{grid-template-columns:auto minmax(0,1fr)}.focus-agenda-head>.badge{grid-column:2}.focus-inline-settings,.gv-rule-card,.vote-grid-4{grid-template-columns:1fr}.gv-rule-card>div:first-child{grid-column:auto}.meeting-focus-nav{grid-template-columns:1fr 1fr}.meeting-focus-nav form{grid-column:1/-1;grid-row:1}.meeting-focus-nav form .button{width:100%}.meeting-focus-nav>a{font-size:12px}.attendance-row{grid-template-columns:1fr}.voting-toggle{padding-left:27px}.focus-panel,.focus-panel-wide{grid-template-columns:1fr}.focus-panel-backdrop{display:none}.focus-panel>section{grid-column:1;width:100vw}.vote-editor-footer{align-items:stretch;flex-direction:column}.vote-editor-footer .button{width:100%}
}

/* Patch 039: prepared proposals, vote mode and focus exit */
.agenda-proposal{margin-top:10px;padding:11px 13px;border:1px solid #cfe0e4;border-radius:10px;background:#f1f7f8;display:grid;gap:4px;color:#314750}.agenda-proposal strong{color:#1b5661;font-size:12px;text-transform:uppercase;letter-spacing:.035em}.agenda-proposal span{line-height:1.5}.agenda-proposal-field{padding:12px;border:1px solid #dce6ea;border-radius:11px;background:#f8fafb}.agenda-proposal-field.is-hidden{display:none}.vote-mode-choice{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.vote-mode-card{position:relative;display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #d8e2e7;border-radius:11px;background:#fff;cursor:pointer}.vote-mode-card:has(input:checked){border-color:#79aeb7;background:#eef7f8;box-shadow:inset 0 0 0 1px rgba(27,86,97,.08)}.vote-mode-card input{width:18px;height:18px;min-height:0;margin:2px 0 0}.vote-mode-card span{display:grid;gap:2px}.vote-mode-card strong{font-size:13px;color:#102235}.vote-mode-card small{font-size:11.5px;line-height:1.35;color:#647781}.focus-decision-text>strong{display:inline-flex;padding:3px 7px;border-radius:999px;background:#eef4f5;color:#1b5661;font-size:11.5px}.meeting-focus-actions>a.button{white-space:nowrap}.minutes-preview-decision .decision-kind{display:inline-block;margin-right:5px;color:#1b5661}.minutes-preview-decision .decision-result{display:block;margin-top:6px;padding:7px 9px;border-radius:8px;background:#eef7f3;color:#274c3c;font-size:12px;line-height:1.45}.minutes-preview-decision .decision-result strong{display:inline;color:#176348;font-size:inherit;text-transform:none;letter-spacing:0;margin:0}.minutes-preview-signoff{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;padding-top:14px;border-top:1px solid #dfe7eb}.minutes-preview-signoff>div{display:grid;gap:3px}.minutes-preview-signoff span{font-size:12px;color:#6a7a84}.minutes-preview-signoff strong{font-size:13px;color:#102235}.minutes-preview-location-date{margin-top:12px;color:#637682;font-size:12px}@media(max-width:640px){.vote-mode-choice,.minutes-preview-signoff{grid-template-columns:1fr}}

/* Patch 040: ruhige Sitzungsvorbereitung, Delegation & Sitzungsleitungs-Notizen */
.meeting-prep-tabs{display:flex;gap:6px;align-items:center;overflow:auto;margin:18px 0 16px;padding:5px;border:1px solid var(--border,#d7e0e8);border-radius:14px;background:#fff;position:sticky;top:8px;z-index:24;box-shadow:0 8px 24px rgba(16,34,53,.05)}
.meeting-prep-tabs a{white-space:nowrap;text-decoration:none;color:var(--muted,#627486);font-weight:700;font-size:.86rem;padding:9px 12px;border-radius:9px}.meeting-prep-tabs a:hover,.meeting-prep-tabs a.is-active{background:#edf5f6;color:#174f59;text-decoration:none}
.meeting-prep-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:20px;align-items:start}.meeting-prep-main{min-width:0}.meeting-prep-sidebar{position:sticky;top:72px}.meeting-prep-sidebar-card{background:#fff;border:1px solid var(--border,#d7e0e8);border-radius:16px;padding:16px;box-shadow:0 10px 30px rgba(16,34,53,.06)}.meeting-prep-sidebar-card h3{margin:4px 0 13px}.meeting-prep-side-nav{display:grid;gap:4px}.meeting-prep-side-nav a{display:flex;align-items:center;justify-content:space-between;gap:8px;text-decoration:none;color:var(--text,#102235);font-weight:700;padding:9px 10px;border-radius:9px}.meeting-prep-side-nav a span{color:var(--muted,#627486);font-size:.73rem;font-weight:600;text-align:right}.meeting-prep-side-nav a:hover,.meeting-prep-side-nav a.is-active{background:#edf5f6;color:#174f59;text-decoration:none}
.prep-checklist{border-top:1px solid #e6ecef;margin-top:14px;padding-top:14px;display:grid;gap:8px}.prep-checklist>strong{font-size:.83rem}.prep-check{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start;padding:8px;border-radius:9px;background:#f7f9fb}.prep-check>span{display:grid;place-items:center;width:22px;height:22px;border-radius:99px;font-weight:800;background:#e9eef2;color:#647481}.prep-check b,.prep-check small{display:block}.prep-check b{font-size:.77rem}.prep-check small{color:#70808c;font-size:.7rem;margin-top:2px}.prep-check.is-ok{background:#f0f8f4}.prep-check.is-ok>span{background:#dcefe5;color:#176348}.prep-check.is-open{background:#fff8e8}.prep-check.is-open>span{background:#f5e5b9;color:#795400}.prep-sidebar-actions{display:grid;gap:7px;margin-top:14px}.prep-sidebar-actions .button{width:100%}
.agenda-list-preparation{gap:10px}.agenda-prep-item{scroll-margin-top:80px;transition:border-color .15s ease,box-shadow .15s ease}.agenda-prep-item:target{border-color:#70a8af;box-shadow:0 0 0 3px rgba(27,86,97,.08)}.agenda-prep-item.is-delegated{border-color:#acd6c2;background:#fcfffd}.agenda-preview-snippet{max-height:76px;overflow:hidden;position:relative}.agenda-preview-snippet:after{content:'';position:absolute;left:0;right:0;bottom:0;height:18px;background:linear-gradient(transparent,#fff)}.agenda-material-list-compact{margin-top:10px}.agenda-prep-editor{margin-top:12px;border-top:1px solid #e3e9ed;padding-top:10px}.agenda-prep-editor>summary{font-weight:800;color:#174f59;cursor:pointer;list-style:none;display:flex;align-items:center;gap:7px}.agenda-prep-editor>summary::-webkit-details-marker{display:none}.agenda-prep-editor>summary:before{content:'＋';font-size:1rem}.agenda-prep-editor[open]>summary:before{content:'−'}.agenda-prep-editor-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:14px;margin-top:14px}.agenda-preparation-form,.agenda-material-tools{min-width:0}.prep-fieldset{border:1px solid #e0e7eb;border-radius:12px;padding:14px;background:#fff;margin-bottom:11px}.prep-fieldset-internal{background:#f8fafb;border-style:dashed}.prep-fieldset-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:11px}.prep-fieldset-head strong{font-size:.9rem;color:#173b44}.prep-fieldset-head span{font-size:.73rem;color:#70808c}.agenda-material-tools>.prep-fieldset-head{margin:2px 0 10px}.agenda-material-tools .agenda-material-form{padding:12px;border:1px solid #e4eaee;border-radius:11px;background:#f9fbfc;margin-bottom:9px}.agenda-material-tools .agenda-material-form .button{margin-top:8px}.agenda-add{border:1px dashed #b9c9d1;border-radius:13px;padding:13px 14px;margin-top:14px;background:#fbfcfd}.agenda-add>summary{cursor:pointer;font-weight:800;color:#174f59}.agenda-add-form{margin-top:14px}.member-motion-origin{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;background:#fff3d8;color:#795400;font-size:.72rem;font-weight:800}.agenda-item .meta-row{gap:10px}.agenda-item .meta-row span{font-size:.76rem}
#overview,#invitation,#agenda,#participants,#agenda-requests,#invitation-history,#danger-zone{scroll-margin-top:82px}
@media(max-width:1180px){.meeting-prep-layout{grid-template-columns:1fr}.meeting-prep-sidebar{position:static;order:-1}.meeting-prep-sidebar-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.meeting-prep-sidebar-card>.eyebrow,.meeting-prep-sidebar-card>h3{grid-column:1/-1}.prep-checklist{border-top:0;margin-top:0;padding-top:0}.prep-sidebar-actions{grid-column:1/-1;display:flex;flex-wrap:wrap}.prep-sidebar-actions .button{width:auto}.meeting-prep-side-nav{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}
@media(max-width:820px){.meeting-prep-tabs{position:static}.agenda-prep-editor-grid{grid-template-columns:1fr}.meeting-prep-sidebar-card{grid-template-columns:1fr}.prep-sidebar-actions{grid-column:auto}.prep-fieldset-head{align-items:flex-start;flex-direction:column;gap:2px}}
@media(max-width:560px){.meeting-prep-tabs{margin-inline:-4px;border-radius:10px}.meeting-prep-tabs a{padding:8px 9px}.agenda-prep-item{padding:13px}.prep-fieldset{padding:12px}.agenda-prep-editor>summary{padding:3px 0}}

/* Patch 041: compact meeting preparation roles & agenda workspace */
.meeting-role-strip{margin:12px 0 14px;padding:12px 13px;border:1px solid #dce6ea;border-radius:12px;background:#f8fbfc}
.meeting-role-strip-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.meeting-role-strip-head>div{display:flex;align-items:baseline;gap:8px;min-width:0}.meeting-role-strip-head strong{font-size:.9rem;color:#173b44}.meeting-role-strip-head span:not(.badge){font-size:.74rem;color:#70808c}.meeting-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.meeting-role-grid .field{margin:0}.meeting-role-strip>.help{display:block;margin-top:7px}.badge-ok{background:#e5f4eb!important;color:#176348!important}
.prep-fieldset-basics{padding:12px 13px}.prep-title-field{margin-bottom:9px}.prep-compact-grid{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(130px,.85fr) minmax(90px,.5fr);gap:9px}.prep-assignment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:9px;padding-top:10px;border-top:1px solid #e8edef}.prep-compact-grid .field,.prep-assignment-grid .field{margin:0}.prep-assignment-grid .help{margin-top:4px;line-height:1.35}
.agenda-prep-editor-grid{grid-template-columns:minmax(0,1.55fr) minmax(220px,.45fr);gap:12px}.agenda-preparation-form .prep-fieldset{margin-bottom:9px}.agenda-preparation-form textarea{min-height:78px}.agenda-preparation-form .prep-fieldset-internal textarea{min-height:88px}.agenda-preparation-form .form-actions{margin-top:7px}.agenda-material-tools-collapsible{align-self:start;border:1px solid #e0e7eb;border-radius:12px;background:#f9fbfc;overflow:hidden}.agenda-material-tools-collapsible>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 13px;font-weight:800;color:#173b44}.agenda-material-tools-collapsible>summary::-webkit-details-marker{display:none}.agenda-material-tools-collapsible>summary:before{content:'＋';margin-right:2px;color:#1b5661}.agenda-material-tools-collapsible[open]>summary:before{content:'−'}.agenda-material-tools-collapsible>summary span{margin-right:auto}.agenda-material-tools-collapsible>summary small{font-size:.7rem;font-weight:600;color:#70808c}.agenda-material-tools-body{padding:0 10px 10px}.agenda-material-tools .agenda-material-form{padding:10px;margin-bottom:7px;background:#fff}.agenda-material-tools .agenda-material-form:last-child{margin-bottom:0}.agenda-material-tools .agenda-material-form .field{margin-bottom:8px}.agenda-material-tools .agenda-material-form .form-row{gap:8px}.agenda-prep-item .meta-row{margin-top:5px}.agenda-prep-item .agenda-prep-editor{margin-top:9px;padding-top:9px}.agenda-prep-item{padding-top:14px;padding-bottom:14px}
.meeting-prep-sidebar-card{padding:14px}.meeting-prep-side-nav a{padding:8px 9px}.prep-checklist{margin-top:12px;padding-top:12px;gap:6px}.prep-check{padding:7px}.prep-sidebar-actions{margin-top:12px;gap:6px}
@media(max-width:900px){.prep-compact-grid{grid-template-columns:1fr 1fr}.prep-compact-grid .field:last-child{grid-column:1/-1}.prep-assignment-grid,.meeting-role-grid{grid-template-columns:1fr}.agenda-prep-editor-grid{grid-template-columns:1fr}.agenda-material-tools-collapsible{margin-top:0}}
@media(max-width:560px){.meeting-role-strip-head{align-items:flex-start}.meeting-role-strip-head>div{display:block}.meeting-role-strip-head>div span{display:block;margin-top:2px}.prep-compact-grid{grid-template-columns:1fr}.prep-compact-grid .field:last-child{grid-column:auto}.prep-fieldset-basics{padding:11px}}


/* Patch 042: Abschnittstraktanden */
.agenda-type-section{background:#eef3f4;color:#31535a;border-color:#d7e2e5}
.agenda-section-note{margin-top:6px;font-size:.84rem;color:var(--muted,#667985);font-weight:600}
.agenda-own-action{margin-top:10px;border-top:1px solid var(--line,#d8e1e6);padding-top:8px}
.agenda-own-action>summary{cursor:pointer;font-weight:700;color:#31535a;font-size:.88rem}
.focus-agenda-section{display:grid;grid-template-columns:2.25rem 1fr auto;gap:.55rem;align-items:center;padding:.7rem .75rem;margin:.35rem 0 .15rem;border-radius:10px;background:#f1f5f6;color:#31535a}
.focus-agenda-section span{font-weight:800}.focus-agenda-section strong{font-size:.92rem}.focus-agenda-section small{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}
.focus-agenda-section.agenda-depth-1{margin-left:.65rem}.focus-agenda-section.agenda-depth-2{margin-left:1.3rem}

.minutes-preview-item.is-section{background:#f6f8f9;border-left:3px solid #c9d8dc}.agenda-section-label{margin-left:.5rem;color:#607782;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}

/* Patch 043: hierarchische Agenda & Wahlmodus */
.agenda-prep-item.is-section{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0;margin:18px 0 4px;grid-template-columns:auto minmax(0,1fr);gap:12px}
.agenda-prep-item.is-section .agenda-item-number{background:transparent;border-radius:0;width:auto;height:auto;min-width:44px;padding:0;color:#1b5661;font-size:1.05rem;place-items:start;font-weight:900}
.agenda-prep-item.is-section .agenda-item-head{align-items:center;padding:0 0 10px;border-bottom:1px solid #d9e2e7}
.agenda-prep-item.is-section .agenda-item-kickers,.agenda-prep-item.is-section .meta-row,.agenda-prep-item.is-section>.agenda-item-body>.agenda-preparation,.agenda-prep-item.is-section>.agenda-item-body>.agenda-material-list-compact{display:none}
.agenda-prep-item.is-section .agenda-item-head h3{margin:0;font-size:1.22rem;line-height:1.2}
.agenda-prep-item.is-section.agenda-depth-1{margin:12px 0 2px 30px}
.agenda-prep-item.is-section.agenda-depth-1 .agenda-item-head{border-bottom:0;padding-bottom:4px}
.agenda-prep-item.is-section.agenda-depth-1 .agenda-item-head h3{font-size:1.02rem;color:#174f59}
.agenda-prep-item.is-section.agenda-depth-2{margin-left:54px}
.agenda-prep-item.is-section .agenda-prep-editor{margin-top:4px;border-top:0;padding-top:0}
.agenda-prep-item.is-section .agenda-prep-editor>summary{font-size:.78rem;font-weight:700;color:#607681}
.agenda-prep-item.is-section .agenda-prep-editor>summary:before{font-size:.8rem}

.minutes-preview-item.is-section{margin-top:18px;padding:10px 0 6px;background:transparent;border:0;border-bottom:1px solid #dce4e8;border-left:0}
.minutes-preview-item.is-section>div:first-child>span{background:transparent;border-radius:0;min-width:auto;height:auto;color:#1b5661;font-size:.95rem}
.minutes-preview-item.is-section>div:first-child>strong{font-size:1.05rem}
.minutes-preview-item.is-section.agenda-depth-1{margin-top:10px;margin-left:24px;border-bottom:0;padding-bottom:2px}
.minutes-preview-item.is-section.agenda-depth-1>div:first-child>strong{font-size:.95rem;color:#174f59}

.focus-agenda-section{background:transparent;border:0;border-bottom:1px solid #dce5e9;border-radius:0;padding:.68rem .35rem .45rem;margin:.45rem 0 .1rem;color:#173b44}
.focus-agenda-section small{color:#71818b;font-size:.68rem}
.focus-agenda-section.agenda-depth-1{margin-left:1rem;border-bottom:0;padding-top:.45rem}
.focus-agenda-section.agenda-depth-1 strong{font-size:.87rem;color:#1b5661}

.prep-election-card{border:1px solid #dce5e9;border-radius:12px;padding:14px;background:#fbfcfd;margin-bottom:11px}
.election-setup-grid{display:grid;grid-template-columns:150px minmax(180px,.8fr) minmax(220px,1.2fr);gap:10px;align-items:end}
.election-candidate-chips{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
.election-candidate-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:#edf5f2;color:#244e46;font-weight:750;font-size:.84rem}
.election-candidate-chip form{display:inline}.election-candidate-chip button{border:0;background:transparent;color:#7a3434;font-size:1rem;cursor:pointer;padding:0 2px}
.election-candidate-add{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:9px;align-items:end;margin-top:10px}
.focus-election .election-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}
.election-summary>div{padding:10px 12px;border:1px solid #dce5e9;border-radius:10px;background:#f8fafb}.election-summary span{display:block;color:#6b7c87;font-size:.72rem}.election-summary strong{display:block;margin-top:3px;font-size:.96rem}
.election-empty{padding:14px;border:1px dashed #b9cbd1;border-radius:12px;background:#fafcfd}.election-empty p{margin:4px 0 12px;color:#667984}
.election-candidate-add-inline{margin:12px 0 4px}
.election-round-form{margin-top:14px;padding:14px;border:1px solid #cfdde2;border-radius:13px;background:#fff}
.election-round-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.election-round-head span{display:block;color:#6c7d87;font-size:.8rem}
.election-ballot-list{display:grid;gap:7px}.election-ballot-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 110px;gap:10px;align-items:center;padding:8px 10px;border-radius:9px;background:#f7f9fa}.election-ballot-row label:first-child{font-weight:800}.election-ballot-row input[type=number]{width:100%}.election-manual-elect{font-size:.78rem;color:#365a61;display:flex;gap:5px;align-items:center}
.election-round-footer{display:grid;grid-template-columns:150px 150px auto;gap:10px;align-items:end;margin-top:12px}.election-round-footer .button{justify-self:end}
.election-history{margin-top:16px}.election-history h3{margin-bottom:8px}.election-history article{border-top:1px solid #e0e7eb;padding:10px 0}.election-history-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px;color:#526873;font-size:.82rem}.election-history-results{display:grid;gap:5px}.election-history-results>div{display:grid;grid-template-columns:minmax(0,1fr) 70px 90px;gap:8px;padding:6px 8px;border-radius:8px;background:#f7f9fa}.election-history-results .is-elected{background:#eaf6ef;color:#1f6549}.election-history-results .is-runoff{background:#fff6df;color:#7b5b13}.election-history-results small{text-align:right}
.election-complete{padding:12px 14px;border-radius:11px;background:#eaf6ef;border:1px solid #c6e3d2;display:flex;justify-content:space-between;gap:12px;color:#205d47}
.minutes-preview-election{margin:9px 0 0 34px;padding:10px 11px;border-radius:9px;background:#eef6f7;color:#1c4e57}.minutes-preview-election>strong{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.election-protocol-results{display:flex;flex-wrap:wrap;gap:8px 14px;margin:7px 0;font-size:.84rem}
@media(max-width:900px){.election-setup-grid,.election-candidate-add{grid-template-columns:1fr 1fr}.election-candidate-add .button{grid-column:1/-1;justify-self:start}.focus-election .election-summary{grid-template-columns:1fr 1fr}.election-round-footer{grid-template-columns:1fr 1fr}.election-round-footer .button{grid-column:1/-1;justify-self:start}}
@media(max-width:640px){.agenda-prep-item.is-section.agenda-depth-1,.agenda-prep-item.is-section.agenda-depth-2{margin-left:12px}.election-setup-grid,.election-candidate-add,.focus-election .election-summary,.election-round-footer{grid-template-columns:1fr}.election-ballot-row{grid-template-columns:minmax(0,1fr) 90px}.election-manual-elect{grid-column:1/-1}.minutes-preview-election{margin-left:0}}
.election-locked-rule{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;padding:.65rem .75rem;border-radius:10px;background:#f5f7f8;color:#34515a;font-size:.86rem}
.election-locked-rule span{font-weight:750}.election-locked-rule small{margin-left:auto;color:#74858e}


/* Patch 044: klare Agenda-Hierarchie & Kandidatur-UX */
.agenda-list-preparation{position:relative}
.agenda-prep-item.is-section{position:relative;margin-top:24px;margin-bottom:4px;gap:10px}
.agenda-prep-item.is-section .agenda-item-number{min-width:56px;font-size:1.18rem;line-height:1.1;color:#164f59}
.agenda-prep-item.is-section .agenda-item-head{position:relative;border-bottom:0;padding:0 0 11px}
.agenda-prep-item.is-section .agenda-item-head:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#d6e1e5}
.agenda-prep-item.is-section .agenda-item-head h3{font-size:1.3rem;letter-spacing:-.01em}
.agenda-prep-item.is-section.agenda-depth-1{margin:13px 0 2px 38px;padding-left:16px;border-left:2px solid #d8e6e8}
.agenda-prep-item.is-section.agenda-depth-1 .agenda-item-number{min-width:54px;font-size:.94rem;color:#3c6b73}
.agenda-prep-item.is-section.agenda-depth-1 .agenda-item-head{padding-bottom:4px}
.agenda-prep-item.is-section.agenda-depth-1 .agenda-item-head:after{display:none}
.agenda-prep-item.is-section.agenda-depth-1 .agenda-item-head h3{font-size:1.03rem;color:#173b44}
.agenda-prep-item.is-section.agenda-depth-2{margin-left:72px;padding-left:14px;border-left:2px solid #e3ecee}
.agenda-prep-item:not(.is-section).agenda-depth-1{margin-left:54px;border-left:3px solid #e1ecee}
.agenda-prep-item:not(.is-section).agenda-depth-2{margin-left:92px;border-left:3px solid #d7e7e9}

.minutes-preview-item.is-section{display:grid;grid-template-columns:54px minmax(0,1fr);gap:8px;margin:22px 0 5px;padding:0 0 10px;background:transparent;border:0;border-bottom:1px solid #d7e2e6}
.minutes-preview-item.is-section>div:first-child{display:contents}
.minutes-preview-item.is-section>div:first-child>span{font-size:1.05rem;font-weight:900;color:#1b5661}
.minutes-preview-item.is-section>div:first-child>strong{font-size:1.13rem;align-self:center}
.minutes-preview-item.is-section.agenda-depth-1{margin:10px 0 4px 34px;padding:3px 0 4px 14px;border:0;border-left:2px solid #dbe7e9;grid-template-columns:48px minmax(0,1fr)}
.minutes-preview-item.is-section.agenda-depth-1>div:first-child>strong{font-size:.95rem;color:#294c54}
.minutes-preview-item:not(.is-section).agenda-depth-1{margin-left:52px}.minutes-preview-item:not(.is-section).agenda-depth-2{margin-left:84px}

.focus-agenda-section{grid-template-columns:3rem minmax(0,1fr);padding:.8rem .15rem .5rem;margin:.7rem 0 .15rem;border-bottom:1px solid #d9e3e7;color:#102c34}
.focus-agenda-section small{display:none}.focus-agenda-section span{font-size:.9rem;color:#1b5661}.focus-agenda-section strong{font-size:1rem}
.focus-agenda-section.agenda-depth-1{margin:.25rem 0 .05rem 1.15rem;padding:.55rem .25rem .35rem .7rem;border:0;border-left:2px solid #dbe7e9;grid-template-columns:3.2rem minmax(0,1fr)}
.focus-agenda-section.agenda-depth-1 strong{font-size:.88rem;color:#294c54}

.election-prep-compact{padding:13px;background:#f9fbfc}
.election-prep-layout{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(300px,1.2fr);gap:16px;align-items:start}
.election-prep-rules{padding-right:15px;border-right:1px solid #e0e8eb}.election-prep-rules>.help{margin:0 0 9px}
.election-prep-candidacies{min-width:0}.election-candidacy-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}.election-candidacy-head strong{font-size:.9rem}.election-candidacy-head small{color:#75858e;font-size:.72rem}
.election-empty-mini{padding:9px 10px;border:1px dashed #cad7dc;border-radius:9px;color:#6a7b85;font-size:.82rem;margin-bottom:8px}
.election-candidate-add{grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) auto;gap:8px;margin-top:8px}.election-candidate-add .field{margin:0}.election-candidate-add .button{align-self:end}
.single-candidacy-card{border:1px solid #cfdfe3;border-radius:13px;background:#f9fbfc;padding:14px}
.single-candidacy-person{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 10px;align-items:center;padding-bottom:12px;border-bottom:1px solid #e1e8eb}.single-candidacy-person .agenda-type{grid-row:1/3}.single-candidacy-person strong{font-size:1.06rem}.single-candidacy-person small{color:#6d7e87}
.single-candidacy-votes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:12px}.single-candidacy-votes .field{margin:0}.single-candidacy-votes input{font-weight:800;text-align:center}
.single-candidacy-manual{margin:12px 0 0;max-width:340px}.election-round-submit{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.single-election-history{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:8px 10px;border-radius:8px;background:#f7f9fa}.single-election-history span{font-size:.82rem;color:#526873}.single-election-history small{font-weight:800;color:#8a4242}.single-election-history .is-elected-text{color:#176348}
.election-protocol-single{display:grid;gap:3px;margin-top:7px}.election-protocol-single span{font-size:.84rem}.election-protocol-single>b{color:#176348}
@media(max-width:900px){.election-prep-layout{grid-template-columns:1fr}.election-prep-rules{padding-right:0;padding-bottom:12px;border-right:0;border-bottom:1px solid #e0e8eb}.single-candidacy-votes{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.agenda-prep-item.is-section.agenda-depth-1,.agenda-prep-item.is-section.agenda-depth-2,.agenda-prep-item:not(.is-section).agenda-depth-1,.agenda-prep-item:not(.is-section).agenda-depth-2{margin-left:8px;padding-left:10px}.minutes-preview-item.is-section.agenda-depth-1,.minutes-preview-item:not(.is-section).agenda-depth-1,.minutes-preview-item:not(.is-section).agenda-depth-2{margin-left:8px}.election-candidate-add,.single-candidacy-votes{grid-template-columns:1fr}.election-round-submit{align-items:stretch;flex-direction:column}.election-round-submit .button{width:100%}.single-election-history{grid-template-columns:1fr}.single-election-history small{text-align:left}}

/* Patch 044: election block occupies the full preparation width without squeezing */
.agenda-prep-editor-grid>.agenda-preparation-form{grid-column:1;grid-row:1}
.agenda-prep-editor-grid>.agenda-material-tools-collapsible{grid-column:2;grid-row:1}
.agenda-prep-editor-grid>.prep-election-card{grid-column:1/-1;grid-row:2}
@media(max-width:820px){.agenda-prep-editor-grid>.agenda-preparation-form,.agenda-prep-editor-grid>.agenda-material-tools-collapsible,.agenda-prep-editor-grid>.prep-election-card{grid-column:auto;grid-row:auto}}


/* Patch 045: Wahlvorbereitung als einheitlicher Vorbereitungsschritt */
.election-prep-compact{margin-top:10px;margin-bottom:0;padding:14px 15px;background:#f9fbfc}
.election-prep-layout-v2{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(360px,1.28fr);gap:18px;align-items:start}
.election-prep-rules-v2{padding-right:18px;border-right:1px solid #dfe8eb}
.election-prep-copy{display:grid;gap:2px;margin-bottom:10px}.election-prep-copy strong{font-size:.9rem}.election-prep-copy span{font-size:.78rem;color:#6e7f88}
.election-setup-grid-v2{display:grid;grid-template-columns:110px minmax(170px,1fr);gap:9px}.election-setup-grid-v2 .field{margin:0}.election-setup-grid-v2 .election-other-rule{grid-column:1/-1}
.election-prep-candidacies-v2{min-width:0}.election-prep-candidacies-v2 .election-candidacy-head{margin-bottom:10px}.election-candidacy-head>div{display:grid;gap:1px}.election-candidacy-head>div small{display:block}
.election-candidacy-list{display:grid;gap:7px}.election-candidacy-row{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(190px,.9fr) auto;gap:8px;align-items:end;padding:9px;border:1px solid #e1e8eb;border-radius:10px;background:#fff}.election-candidacy-row .field{margin:0}.election-candidacy-row label{font-size:.76rem}.election-candidacy-row .election-candidacy-remove{align-self:center;margin-top:16px;color:#8a4242;white-space:nowrap}.election-candidacy-row .is-muted-field input{background:#f4f7f8;color:#71818a}.election-candidacy-add{margin-top:8px}
.prep-save-actions{display:flex;justify-content:flex-end;padding-top:11px;margin-top:10px!important;border-top:1px solid #e3eaed}.prep-save-actions .button{min-width:170px}
@media(max-width:980px){.election-prep-layout-v2{grid-template-columns:1fr}.election-prep-rules-v2{padding-right:0;padding-bottom:12px;border-right:0;border-bottom:1px solid #dfe8eb}}
@media(max-width:700px){.election-candidacy-row{grid-template-columns:1fr}.election-candidacy-row .election-candidacy-remove{margin-top:0;justify-self:start}.election-setup-grid-v2{grid-template-columns:1fr}.election-setup-grid-v2 .election-other-rule{grid-column:auto}.prep-save-actions{justify-content:stretch}.prep-save-actions .button{width:100%}}


/* Patch 046: Wahlvorbereitung, Kandidaturen in Einladung, Einzelkandidatur */
.election-prep-layout-v2{display:block}
.election-prep-rules-v2{padding:0 0 14px;border-right:0;border-bottom:1px solid #dfe8eb}
.election-setup-grid-v2{display:grid;grid-template-columns:120px minmax(220px,320px) minmax(220px,1fr);gap:10px;align-items:end}
.election-setup-grid-v2 .election-other-rule{grid-column:auto}
.election-prep-candidacies-v2{padding-top:14px}
.election-candidacy-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:10px}
.election-candidacy-count{font-size:.76rem;color:#6c7d87;white-space:nowrap}
.election-candidacy-list{display:grid;gap:8px}
.election-candidacy-row{display:grid;grid-template-columns:minmax(260px,1.15fr) minmax(210px,.85fr) auto;gap:10px;align-items:end;padding:10px 12px;border:1px solid #dce6ea;border-radius:11px;background:#fff}
.election-candidacy-row .election-candidacy-remove{align-self:end;margin:0 0 9px;padding:4px 2px}
.election-candidacy-add{margin-top:10px}
.prep-election-card .prep-fieldset-head{margin-bottom:8px}
.prep-save-actions{margin-top:14px;padding-top:14px;border-top:1px solid #e5ecef;justify-content:flex-end}
.public-election-candidacies{margin-top:10px;padding:10px 12px;border-radius:10px;background:#f4f8f9;border:1px solid #dbe8eb}
.public-election-candidacies>strong{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.035em;color:#245b63;margin-bottom:6px}
.public-election-candidacies>div{display:flex;flex-wrap:wrap;gap:6px}
.public-election-candidacies span{display:inline-flex;padding:5px 8px;border-radius:999px;background:#fff;border:1px solid #d5e2e6;font-size:.86rem;font-weight:700;color:#173640}
.single-election-mode{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}
.single-election-mode .vote-mode-option{display:flex;gap:9px;align-items:flex-start;padding:11px 12px;border:1px solid #d6e1e5;border-radius:11px;background:#fff;cursor:pointer}
.single-election-mode .vote-mode-option:has(input:checked){border-color:#76aeb5;background:#eef7f7}
.single-election-mode .vote-mode-option input{margin-top:3px}
.single-election-mode .vote-mode-option span{display:grid;gap:2px}
.single-election-mode .vote-mode-option small{color:#687c86;font-size:.78rem}
@media(max-width:920px){.election-setup-grid-v2{grid-template-columns:120px minmax(200px,1fr)}.election-setup-grid-v2 .election-other-rule{grid-column:1/-1}.election-candidacy-row{grid-template-columns:1fr 1fr auto}}
@media(max-width:680px){.election-setup-grid-v2,.election-candidacy-row,.single-election-mode{grid-template-columns:1fr}.election-candidacy-row .election-candidacy-remove{justify-self:start;margin:0}.election-candidacy-count{white-space:normal}.prep-save-actions .button{width:100%}}

/* Patch 046b: Wahltraktandum nutzt die volle Vorbereitungsbreite */
.agenda-preparation-form.has-election-prep{grid-column:1/-1}
.agenda-preparation-form.has-election-prep + .agenda-material-tools-collapsible{grid-column:1/-1}
.agenda-preparation-form.has-election-prep .prep-save-actions{justify-content:flex-end}


/* Patch 047: Wahl-Controls, Live-Protokoll und Vorbereitungsaktionen */
.single-election-mode{gap:10px}
.single-election-mode .vote-mode-option{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;min-height:64px}
.single-election-mode .vote-mode-option input[type="radio"]{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;padding:0!important;margin:0!important;flex:0 0 18px;accent-color:#1b5661}
.single-election-mode .vote-mode-option span{align-self:center;gap:1px}
.single-election-mode .vote-mode-option strong{font-size:.9rem;line-height:1.2}
.single-election-mode .vote-mode-option small{font-size:.74rem;line-height:1.3}
.prep-item-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #e3eaed}
.prep-item-actions form{margin:0}.prep-item-actions .button{min-width:170px;justify-content:center}
.minutes-preview-election{display:grid;gap:5px}
.minutes-preview-election>div:first-of-type{font-size:.86rem;color:#36515b}
.election-protocol-single{padding-top:3px}.election-protocol-single>b{margin-top:2px}
@media(max-width:680px){.single-election-mode{grid-template-columns:1fr}.prep-item-actions{align-items:stretch;flex-direction:column-reverse}.prep-item-actions form,.prep-item-actions .button{width:100%}}


/* Patch 049: Unterlagen-Akkordeon bei Wahlvorbereitung unter das Formular setzen */
.agenda-preparation-form.has-election-prep + .agenda-material-tools-collapsible{grid-column:1/-1;grid-row:auto}

/* Patch 050: geführter Protokoll-Freigabeprozess */
.minutes-approval-badge{white-space:nowrap}.minutes-approval-badge.status-approved{background:#eaf6ef;color:#176348}.minutes-approval-badge.status-in_review{background:#edf5f8;color:#315f70}.minutes-approval-badge.status-changes_requested{background:#fff3de;color:#7a5700}
.minutes-approval-card{margin:16px 0 18px;padding:16px;border:1px solid #dbe5e8;border-radius:14px;background:#f9fbfc;display:grid;gap:13px}.minutes-approval-card.status-approved{background:#f2faf6;border-color:#bfddcc}.minutes-approval-card.status-changes_requested{background:#fffaf0;border-color:#ead8ae}.minutes-approval-card.status-in_review{background:#f4f9fb;border-color:#c9dde5}
.minutes-approval-card p{margin:0}.minutes-approval-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.minutes-approval-head h3{margin:2px 0 0;font-size:1.05rem}.minutes-approval-flow{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:.73rem;color:#71818a}.minutes-approval-flow span{padding:4px 7px;border-radius:999px;background:#edf2f4;font-weight:750}.minutes-approval-flow span.is-active{background:#1b5661;color:#fff}.minutes-approval-flow b{font-weight:600;color:#9aa7ad}
.minutes-review-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);gap:12px;align-items:stretch}.minutes-reject-form,.minutes-approve-form{border:1px solid #dde6e9;border-radius:12px;padding:13px;background:#fff;display:grid;gap:10px}.minutes-reject-form .field,.minutes-approve-form .field{margin:0}.minutes-reject-form textarea{min-height:82px}.minutes-approve-form{grid-template-columns:1fr 1fr}.minutes-approve-form>.field{min-width:0}.minutes-approve-form>.help,.minutes-approve-form>.button{grid-column:1/-1}.minutes-approve-form>.button{justify-self:end}.minutes-rejection-note{padding:12px 13px;border-radius:10px;background:#fff4df;border:1px solid #ead8ae}.minutes-rejection-note p{margin-top:5px}
.minutes-approved-summary{display:grid;gap:3px;padding:13px 14px;border-radius:11px;background:#fff;border:1px solid #c6e0d1}.minutes-approved-summary>strong{color:#176348}.minutes-approved-summary span{font-size:.86rem;color:#425a63}.minutes-approval-history{border-top:1px solid #dfe7ea;padding-top:10px}.minutes-approval-history>summary{cursor:pointer;font-weight:750;color:#315f68}.minutes-approval-history>div{margin-top:8px;display:grid;gap:0}.minutes-approval-history p{padding:8px 0;border-bottom:1px solid #e7edef;font-size:.8rem}.minutes-approval-history p:last-child{border-bottom:0}
.minutes-digital-approval{margin-top:22px;padding:15px 16px;border:1px solid #bddaca;border-radius:11px;background:#f3faf6;display:grid;gap:3px}.minutes-digital-approval>span{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#4f7462;font-weight:800}.minutes-digital-approval>strong{color:#174f3d}.minutes-digital-approval>div{font-size:.86rem}.minutes-digital-approval>small{color:#667c72}.minutes-preview-approval-pending{margin-top:22px;padding:13px 14px;border:1px dashed #cad7dc;border-radius:10px;display:grid;gap:3px;color:#607681}.minutes-preview-approval-pending strong{color:#425b65}
@media(max-width:760px){.minutes-approval-head{flex-direction:column}.minutes-review-actions{grid-template-columns:1fr}.minutes-approve-form{grid-template-columns:1fr}.minutes-approve-form>.field,.minutes-approve-form>.help,.minutes-approve-form>.button{grid-column:1}.minutes-approve-form>.button{justify-self:stretch}.minutes-approval-card .button{width:100%}}


/* Hotfix 050h: echter Korrektur-Editor nach Protokoll-Rückweisung */
.minutes-correction-editor{margin-top:16px;border:1px solid #cfdde2;border-radius:14px;background:#fbfcfd;overflow:hidden}
.minutes-correction-editor>summary{cursor:pointer;list-style:none;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#173b44}
.minutes-correction-editor>summary::-webkit-details-marker{display:none}
.minutes-correction-editor>summary span{display:flex;flex-direction:column;gap:3px}
.minutes-correction-editor>summary strong{font-size:1rem}
.minutes-correction-editor>summary small{font-size:.78rem;color:#657984;font-weight:500}
.minutes-correction-editor>summary:after{content:'＋';font-size:1.1rem;color:#1b5661;font-weight:800}
.minutes-correction-editor[open]>summary:after{content:'−'}
.minutes-correction-body{padding:0 17px 17px;border-top:1px solid #e0e8eb}
.minutes-correction-list{display:grid;gap:12px;margin-top:15px}
.minutes-correction-item{padding:14px;border:1px solid #e0e7eb;border-radius:12px;background:#fff}
.minutes-correction-item-head{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.minutes-correction-item-head>span{display:inline-grid;place-items:center;min-width:31px;height:31px;padding:0 7px;border-radius:999px;background:#eef5f6;color:#174f59;font-weight:900;font-size:.82rem}
.minutes-correction-item-head>strong{font-size:.95rem}
.minutes-correction-item textarea{min-height:110px}
.minutes-correction-save{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid #e3eaed}
.minutes-correction-save .help{margin:0;text-align:right}
@media(max-width:680px){.minutes-correction-editor>summary{padding:13px}.minutes-correction-body{padding:0 13px 13px}.minutes-correction-save{align-items:stretch;flex-direction:column}.minutes-correction-save .button{width:100%}.minutes-correction-save .help{text-align:left}}


/* Hotfix 050i: Korrekturmodus polish + Cache-Version */
.minutes-correction-editor{margin:18px 0 20px;box-shadow:0 5px 18px rgba(18,56,65,.045)}
.minutes-correction-editor>summary{background:#f7fafb;border-bottom:0}
.minutes-correction-editor[open]>summary{background:#f2f7f8;border-bottom:1px solid #e0e8eb}
.minutes-correction-editor>summary span{min-width:0}
.minutes-correction-editor>summary strong{display:block;line-height:1.25}
.minutes-correction-editor>summary small{display:block;line-height:1.35;margin-top:2px}
.minutes-correction-body{border-top:0}
.minutes-correction-item .field{margin:0}
.minutes-correction-item textarea{width:100%;resize:vertical;background:#fff}
@media(max-width:680px){.minutes-correction-editor>summary span{gap:4px}}

/* Patch 051: Versand freigegebener Protokolle */
.minutes-distribution{margin-top:16px;border:1px solid #d9e4e8;border-radius:13px;background:#fbfcfd;overflow:hidden}.minutes-distribution>summary{cursor:pointer;list-style:none;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;color:#173b44}.minutes-distribution>summary::-webkit-details-marker{display:none}.minutes-distribution>summary:before{content:'＋';color:#1b5661;font-weight:900;margin-right:9px}.minutes-distribution[open]>summary:before{content:'−'}.minutes-distribution>summary span{display:flex;flex-direction:column;gap:2px}.minutes-distribution>summary small{font-size:.76rem;color:#6c7e87;font-weight:600}.minutes-distribution-body{padding:0 16px 16px}.minutes-distribution-body>p{margin-top:0;color:#526671}.minutes-recipient-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:13px 0}.minutes-recipient{display:flex;align-items:flex-start;gap:9px;border:1px solid #dce5e9;border-radius:10px;background:#fff;padding:10px 11px;cursor:pointer}.minutes-recipient input{margin-top:2px}.minutes-recipient span{display:flex;flex-direction:column;min-width:0}.minutes-recipient strong{font-size:.88rem}.minutes-recipient small{font-size:.73rem;color:#6c7e87;overflow-wrap:anywhere}.minutes-recipient.is-disabled{opacity:.58;cursor:not-allowed;background:#f5f7f8}.minutes-send-actions{align-items:center;gap:12px;flex-wrap:wrap}.minutes-send-actions .help{margin:0;max-width:520px}.minutes-distribution-history{margin-top:12px}.minutes-distribution-history>summary{cursor:pointer;color:#1b5661;font-weight:750;font-size:.84rem}.minutes-distribution-history>div{margin-top:8px;padding:8px 12px;border-left:3px solid #d8e7e9}.minutes-distribution-history p{margin:5px 0;font-size:.82rem}.minutes-distribution-history span{color:#687b85}
@media(max-width:700px){.minutes-recipient-list{grid-template-columns:1fr}.minutes-send-actions{align-items:stretch;flex-direction:column}.minutes-send-actions .button{width:100%}}


/* Patch 052: Aufgaben-Cockpit V1 */
.tasks-page-header{margin-bottom:18px}
.task-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.task-summary-card{display:flex;flex-direction:column;gap:4px;min-width:0;padding:15px 16px;border:1px solid var(--border);border-radius:13px;background:#fff;color:inherit;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.task-summary-card:hover{border-color:#a9c7cc;box-shadow:0 7px 22px rgba(28,69,79,.07);transform:translateY(-1px)}
.task-summary-card.active{border-color:#6fa8b0;box-shadow:0 0 0 2px rgba(27,86,97,.08);background:#f7fbfb}
.task-summary-card.has-alert strong{color:#a6342d}
.task-summary-card>span{font-size:.78rem;font-weight:800;color:#49616c;text-transform:uppercase;letter-spacing:.035em}
.task-summary-card>strong{font-size:1.75rem;line-height:1.05;color:#173b44}
.task-summary-card>small{font-size:.75rem;color:#71818a;line-height:1.25}
.task-list-card{padding:0;overflow:hidden}
.task-list-card>.section-head{padding:18px 20px 14px;margin:0;border-bottom:1px solid #e4ebee}
.task-list{display:grid}
.task-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:start;padding:17px 20px;border-bottom:1px solid #e8edef;background:#fff}
.task-row:last-child{border-bottom:0}
.task-row.is-overdue{background:#fffdfb}
.task-row.is-done{background:#fafcfc}
.task-state-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#eaf3f4;color:#1b5661;font-weight:900;font-size:.88rem;margin-top:1px}
.task-row.is-overdue .task-state-icon{background:#fff0ed;color:#a6342d}
.task-row.is-done .task-state-icon{background:#edf6f0;color:#277057}
.task-row-main{min-width:0}
.task-row-titleline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.task-row-titleline h3{margin:0;font-size:1rem;line-height:1.3;color:#173640}
.task-row.is-done .task-row-titleline h3{color:#64767f;text-decoration:line-through;text-decoration-thickness:1px}
.task-mine-badge{font-size:.67rem;padding:3px 7px;background:#eef6f7;color:#1b5661}
.task-description{margin:7px 0 0;color:#4e626c;font-size:.87rem;line-height:1.45;white-space:normal}
.task-meta{display:flex;gap:6px 16px;flex-wrap:wrap;margin-top:10px;font-size:.76rem;color:#647782}
.task-meta strong{color:#445861}
.task-due-overdue,.task-due-overdue strong{color:#a6342d!important}
.task-origin{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px;padding-top:9px;border-top:1px dashed #dfe7ea;font-size:.78rem;color:#596e78}
.task-origin a{color:#17545f;text-decoration:none}
.task-origin a:hover{text-decoration:underline}
.task-origin-label{display:inline-flex;padding:3px 7px;border-radius:999px;background:#f0f4f5;color:#667982;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.025em}
.task-completed-note{margin-top:8px;color:#71818a;font-size:.73rem}
.task-row-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:7px;flex-wrap:wrap;min-width:155px}
.task-row-actions form{margin:0}
.task-edit-panel{margin-top:14px;padding:14px;border:1px solid #d9e4e8;border-radius:10px;background:#fbfcfd}
.task-edit-form{margin:0}
.task-edit-actions{grid-column:1/-1;justify-content:flex-end;margin-top:2px;padding-top:12px;border-top:1px solid #e3eaed}
.task-readonly{font-size:.73rem;color:#85939a;padding-top:7px}
.task-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;padding:42px 20px;color:#617680}
.task-empty strong{font-size:1rem;color:#31515a}
.task-empty span{font-size:.85rem;max-width:520px}
@media(max-width:960px){.task-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-row{grid-template-columns:30px minmax(0,1fr)}.task-row-actions{grid-column:2;justify-content:flex-start;min-width:0}.task-row-actions .button{width:auto}}
@media(max-width:620px){.task-summary-grid{grid-template-columns:1fr 1fr;gap:8px}.task-summary-card{padding:12px}.task-summary-card>strong{font-size:1.45rem}.task-summary-card>small{display:none}.task-list-card>.section-head{padding:15px}.task-row{padding:15px;gap:10px}.task-meta{display:grid;gap:5px}.task-row-actions .button{width:100%}.task-row-actions form{width:100%}}
@media(max-width:800px){.mobile-nav{display:flex;grid-template-columns:none}.mobile-nav a{flex:1 1 0;min-width:0;font-size:.69rem;padding-inline:2px}}

/* Patch 053: Manuelle Aufgaben im Aufgaben-Cockpit */
.task-create-panel{margin:0 0 18px}
.task-create-panel>summary{list-style:none;width:max-content;cursor:pointer;margin-left:auto}
.task-create-panel>summary::-webkit-details-marker{display:none}
.task-create-panel[open]>summary{margin-bottom:10px}
.task-create-card{padding:18px 20px;background:#fbfcfd;border-color:#d9e4e8}
.task-create-card .section-head{margin-bottom:14px}
.task-create-grid{display:grid;grid-template-columns:minmax(260px,1.3fr) minmax(220px,1fr) minmax(150px,.65fr);gap:12px 14px;align-items:start}
.task-create-grid .field{margin:0}
.task-create-title{grid-column:1/2}
.task-create-description{grid-column:1/-1}
.task-create-description textarea{min-height:88px;resize:vertical}
.task-create-actions{justify-content:flex-end;margin-top:14px;padding-top:14px;border-top:1px solid #e3eaed}
.task-priority-high{font-size:.67rem;padding:3px 7px;background:#fff0ed;color:#a6342d}
@media(max-width:900px){.task-create-grid{grid-template-columns:1fr 1fr}.task-create-title,.task-create-description{grid-column:1/-1}}
@media(max-width:620px){.task-create-panel>summary{width:100%;margin-left:0;justify-content:center}.task-create-grid{grid-template-columns:1fr}.task-create-title,.task-create-description{grid-column:auto}.task-create-card{padding:15px}.task-create-actions .button{width:100%}.task-edit-panel{padding:12px}.task-edit-actions{grid-column:auto}.task-edit-actions .button{width:100%}}

/* Patch 055: Vereinsadministration, Branding & Rechnungsdaten */
.admin-section-nav{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px}
.admin-section-nav a{display:inline-flex;align-items:center;min-height:36px;padding:7px 11px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--text);font-size:.82rem;font-weight:800;text-decoration:none}
.admin-section-nav a:hover{border-color:var(--accent);color:var(--accent)}
.admin-settings-card{scroll-margin-top:88px}
.admin-settings-form{display:grid;gap:12px}
.admin-settings-form .field{margin:0}

.governance-admin-action{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface-muted)}
.governance-admin-action>div{display:grid;gap:3px}.governance-admin-action span{color:var(--muted);font-size:.82rem}
.governance-page-header{align-items:flex-start}.governance-form{display:grid;gap:0}.governance-form-section{display:grid;gap:14px}.governance-form-section .field{margin:0}
.governance-current-card{display:grid;gap:8px}.governance-current-card .section-head{margin:0}.governance-current-meta{margin:0}.governance-source-line{margin:2px 0 0;color:var(--muted)}
.governance-existing-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.governance-existing-facts>div{display:grid;gap:3px;padding:12px 14px;border:1px solid var(--border);border-radius:11px;background:var(--surface-muted)}.governance-existing-facts span{font-size:.72rem;color:var(--muted)}
.governance-upload-card{display:grid;gap:12px}.governance-upload-card .section-head{margin:0}.governance-upload-form{display:grid;gap:12px;max-width:760px}.governance-upload-fields{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:12px;align-items:end}.governance-upload-fields .field{margin:0}.governance-upload-file input[type=file]{width:100%;min-width:0}.governance-upload-group{grid-column:1/-1;max-width:360px}.governance-upload-actions{margin:0;justify-content:flex-start}.governance-source-card{scroll-margin-top:90px}.governance-source-link{font-weight:800}.governance-source-pending{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin:0 0 14px;padding:11px 12px;border:1px solid #bdd8dc;border-radius:12px;background:#f2f9fa}.governance-source-pending>div{display:grid;gap:2px;min-width:0}.governance-source-pending strong{font-size:.9rem}.governance-source-pending small{color:var(--muted);line-height:1.4}.governance-source-pending .button{white-space:nowrap}
.input-suffix{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden}.input-suffix input{border:0!important;border-radius:0!important;box-shadow:none!important}.input-suffix span{padding:0 12px;color:var(--muted);font-size:.78rem;font-weight:700;white-space:nowrap}
.governance-text-grid textarea{min-height:110px;resize:vertical}.governance-confirm-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.governance-confirm-card p{margin:.3rem 0 0;color:var(--muted);max-width:760px}.governance-confirm-card .button{flex:0 0 auto}
@media(max-width:900px){.governance-source-pending{grid-template-columns:auto minmax(0,1fr)}.governance-source-pending .button{grid-column:2;justify-self:start}}
@media(max-width:760px){.governance-admin-action,.governance-confirm-card{align-items:stretch;flex-direction:column}.governance-admin-action .button,.governance-confirm-card .button{width:100%;justify-content:center}.governance-existing-facts,.governance-upload-fields{grid-template-columns:1fr}.governance-upload-group{grid-column:auto;max-width:none}.governance-upload-actions .button{width:100%;justify-content:center}.governance-text-grid{grid-template-columns:1fr}.governance-source-pending{grid-template-columns:1fr;align-items:start}.governance-source-pending .button{grid-column:auto;justify-self:stretch;justify-content:center}}
.admin-address-grid{grid-template-columns:minmax(110px,.35fr) minmax(0,1fr)}
.admin-billing-address-grid{grid-template-columns:minmax(110px,.3fr) minmax(0,1fr) minmax(90px,.25fr)}
.branding-settings-grid{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:22px;align-items:start}
.branding-logo-preview{display:grid;place-items:center;min-height:150px;padding:18px;border:1px solid var(--border);border-radius:14px;background:#fbfcfd}
.branding-logo-preview img{display:block;max-width:100%;max-height:150px;width:auto;height:auto;object-fit:contain}
.branding-logo-placeholder{display:grid;gap:5px;text-align:center;color:var(--muted)}
.branding-logo-placeholder strong{color:var(--text);font-size:1rem}
.admin-secondary-action{margin-top:8px}
.admin-role-explainer{margin:0 0 16px;padding:12px;border:1px solid var(--border);border-radius:12px;background:#f8fafb}
.admin-role-explainer>div{display:grid;gap:3px}
.admin-role-explainer span{font-size:.78rem;color:var(--muted)}
@media(max-width:760px){.branding-settings-grid{grid-template-columns:1fr}.admin-billing-address-grid,.admin-address-grid{grid-template-columns:1fr}.admin-section-nav{gap:6px}.admin-section-nav a{font-size:.76rem;padding:6px 9px}}


/* Patch 056b: Vereinsbranding im Cockpit und in öffentlichen Einladungen */
.brand-mark-logo{background:#fff!important;border:1px solid var(--border);padding:4px;overflow:hidden}.brand-mark-logo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.brand-association .brand-title{font-size:1.04rem}.cockpit-brand-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:18px 20px;border:1px solid var(--border);border-radius:16px;background:#fff}.cockpit-brand-identity{display:flex;align-items:center;gap:14px;min-width:0}.cockpit-brand-logo{width:72px;height:58px;display:grid;place-items:center;border:1px solid var(--border);border-radius:12px;background:#fbfcfd;padding:6px;flex:0 0 auto}.cockpit-brand-logo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.cockpit-brand-initial{background:var(--brand);color:#fff;font-size:1.45rem;font-weight:850;border:0}.cockpit-brand-identity strong{display:block;font-size:1.25rem;line-height:1.2}.cockpit-brand-identity span{display:block;margin-top:3px;color:var(--muted);font-size:.86rem}.cockpit-brand-powered{color:var(--muted);font-size:.76rem;font-weight:700;text-align:right}@media(max-width:680px){.cockpit-brand-hero{align-items:flex-start;flex-direction:column}.cockpit-brand-powered{text-align:left}.cockpit-brand-logo{width:60px;height:50px}}

/* Patch 059: Hilfe & Feedback */
.topbar-support{display:flex;align-items:center;gap:4px;padding-right:8px;border-right:1px solid var(--border)}
.topbar-support a{display:inline-flex;align-items:center;min-height:32px;padding:5px 8px;border-radius:8px;color:var(--muted);font-size:.78rem;font-weight:800;text-decoration:none}
.topbar-support a:hover,.topbar-support a.active{background:#eef5f6;color:var(--accent)}
.help-section-list{display:grid;gap:14px}.help-section{padding:0}.help-section>.section-head{padding:18px 20px 10px;margin:0}.help-faq-list{display:grid;padding:0 20px 18px}.help-faq{border-top:1px solid var(--border)}.help-faq:first-child{border-top:0}.help-faq>summary{cursor:pointer;list-style:none;position:relative;padding:13px 32px 13px 0;color:var(--text);font-weight:800}.help-faq>summary::-webkit-details-marker{display:none}.help-faq>summary:after{content:'＋';position:absolute;right:2px;top:12px;color:var(--accent);font-size:1rem}.help-faq[open]>summary:after{content:'−'}.help-faq>div{padding:0 36px 14px 0;color:#526873;font-size:.9rem;line-height:1.55}
.help-context-card,.help-contact-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.help-context-card h2{margin:2px 0 4px}.help-contact-card>div{display:grid;gap:3px}.help-contact-card span{font-size:.86rem;color:var(--muted)}
.feedback-card{max-width:900px}.feedback-kind-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}.feedback-kind{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;padding:13px;border:1px solid var(--border);border-radius:12px;background:#fff;cursor:pointer}.feedback-kind:has(input:checked){border-color:#76aeb5;background:#eef7f7}.feedback-kind input{width:18px!important;height:18px!important;min-height:18px!important;padding:0!important;margin:2px 0 0}.feedback-kind span{display:grid;gap:3px}.feedback-kind strong{font-size:.88rem}.feedback-kind small{font-size:.76rem;line-height:1.35;color:var(--muted)}.feedback-card textarea{min-height:180px;resize:vertical}.feedback-context-check{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;margin-top:14px;padding:12px;border:1px solid var(--border);border-radius:11px;background:#f8fafb;cursor:pointer}.feedback-context-check input{margin:2px 0 0}.feedback-context-check span{display:grid;gap:3px}.feedback-context-check strong{font-size:.84rem}.feedback-context-check small{font-size:.76rem;line-height:1.4;color:var(--muted)}.feedback-origin{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;font-size:.76rem;color:var(--muted)}.feedback-origin code{max-width:100%;overflow-wrap:anywhere}.feedback-actions{justify-content:flex-end;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}
@media(max-width:760px){.topbar-support{padding-right:4px}.topbar-support a{font-size:.72rem;padding:5px 6px}.feedback-kind-grid{grid-template-columns:1fr}.help-context-card,.help-contact-card{align-items:stretch;flex-direction:column}.help-context-card .button,.help-contact-card .button,.feedback-actions .button{width:100%}}
@media(max-width:520px){.topbar-actions{gap:6px}.user-name{display:none}.help-section>.section-head{padding:15px 15px 8px}.help-faq-list{padding:0 15px 15px}.feedback-card{padding:15px}}

/* Patch 060: Jahresrad / Jahresprogramm V1 */
.annual-page-head{align-items:flex-end}.annual-year-nav{display:flex;gap:8px;flex-wrap:wrap}.annual-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}.annual-summary-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border:1px solid var(--border);border-radius:13px;background:#fff}.annual-summary-card span{font-size:.78rem;color:var(--muted);font-weight:700}.annual-summary-card strong{font-size:1.35rem;color:var(--text)}
.annual-tools{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.annual-create-panel{flex:1}.annual-create-panel>summary{list-style:none;width:max-content;cursor:pointer}.annual-create-panel>summary::-webkit-details-marker{display:none}.annual-create-panel[open]>summary{margin-bottom:10px}.annual-create-card{padding:18px 20px;background:#fbfcfd}.annual-template-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 14px;font-size:.76rem;color:var(--muted)}.annual-template-row span{font-weight:800;color:var(--text)}.annual-template-row a{display:inline-flex;padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--accent);font-weight:800;text-decoration:none}.annual-template-row a:hover{border-color:var(--accent)}
.annual-form-grid{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(180px,.8fr) minmax(180px,.8fr);gap:12px 14px}.annual-form-grid .field{margin:0}.annual-title-field{grid-column:1/2}.annual-description-field{grid-column:1/-1}.annual-description-field textarea{min-height:88px;resize:vertical}.annual-repeat-check{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;align-items:start;margin-top:14px;padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:#fff;cursor:pointer}.annual-repeat-check input{margin:2px 0 0}.annual-repeat-check span{display:grid;gap:2px}.annual-repeat-check strong{font-size:.84rem}.annual-repeat-check small{font-size:.74rem;color:var(--muted)}.annual-create-actions{justify-content:flex-end;margin-top:14px}.annual-carry-form{margin:0}
.annual-month-list{display:grid;gap:22px}.annual-month{display:grid;grid-template-columns:94px minmax(0,1fr);gap:14px}.annual-month-head{position:sticky;top:72px;align-self:start;padding:10px 0}.annual-month-head span{display:block;color:var(--accent);font-size:.72rem;font-weight:900;letter-spacing:.08em}.annual-month-head h2{margin:2px 0 0;font-size:1rem}.annual-month-items{display:grid;gap:10px}.annual-item{padding:15px 16px;scroll-margin-top:86px}.annual-item-main{display:grid;grid-template-columns:74px minmax(0,1fr);gap:14px}.annual-item-date{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:8px 10px;border-radius:11px;background:#eef6f7;color:#184f59;min-height:58px}.annual-item-date strong{font-size:1.45rem;line-height:1}.annual-item-date span{margin-top:5px;font-size:.7rem;font-weight:800;color:#55717a}.annual-item-kickers{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.annual-item-content h3{margin:7px 0 4px;font-size:1.03rem}.annual-item-content p{margin:0;color:#4f646e;font-size:.87rem;line-height:1.45}.annual-item-meta{display:flex;gap:6px 16px;flex-wrap:wrap;margin-top:9px;color:#647781;font-size:.75rem}.annual-item-meta strong{color:#445861}.annual-status-pill{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:.68rem;font-weight:850}.annual-status-planned{background:#eef3f5;color:#536a74}.annual-status-in_progress{background:#fff3d8;color:#795400}.annual-status-done{background:#eaf6ef;color:#176348}.annual-status-cancelled{background:#f3f3f3;color:#78868c}.annual-repeat-badge{background:#eef0fb;color:#505a91}
.annual-item-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:13px;padding-top:12px;border-top:1px solid var(--border)}.annual-item-actions>form{display:flex;gap:7px;align-items:center;margin:0}.annual-item-actions select{min-width:130px}.annual-edit{min-width:170px}.annual-edit>summary{cursor:pointer;color:var(--accent);font-size:.78rem;font-weight:850;padding:8px 0;list-style:none}.annual-edit>summary::-webkit-details-marker{display:none}.annual-edit[open]{flex-basis:100%;padding-top:8px}.annual-edit-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:10px 12px;padding:13px;border:1px solid var(--border);border-radius:12px;background:#f9fbfc}.annual-edit-grid .field{margin:0}.annual-edit-description{grid-column:1/-1}.annual-edit-description textarea{min-height:80px}.annual-edit .form-actions{justify-content:flex-end;margin-top:10px}.annual-delete{margin-top:8px;color:#a6342d}.annual-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;padding:42px 20px;color:var(--muted)}.annual-empty strong{color:var(--text)}
@media(max-width:900px){.annual-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.annual-form-grid{grid-template-columns:1fr 1fr}.annual-title-field,.annual-description-field{grid-column:1/-1}.annual-month{grid-template-columns:1fr}.annual-month-head{position:static;padding:0}.annual-month-head span,.annual-month-head h2{display:inline}.annual-month-head h2{margin-left:6px}.annual-edit-grid{grid-template-columns:1fr 1fr}.annual-edit-description{grid-column:1/-1}}
@media(max-width:620px){.annual-page-head{align-items:stretch}.annual-year-nav .button{flex:1}.annual-summary-grid{gap:8px}.annual-summary-card{padding:11px}.annual-tools{flex-direction:column}.annual-create-panel,.annual-create-panel>summary,.annual-carry-form,.annual-carry-form .button{width:100%}.annual-create-panel>summary{justify-content:center}.annual-form-grid,.annual-edit-grid{grid-template-columns:1fr}.annual-title-field,.annual-description-field,.annual-edit-description{grid-column:auto}.annual-create-card{padding:15px}.annual-item{padding:13px}.annual-item-main{grid-template-columns:58px minmax(0,1fr);gap:10px}.annual-item-date{padding:7px;min-height:52px}.annual-item-date strong{font-size:1.2rem}.annual-item-actions{align-items:stretch;flex-direction:column}.annual-item-actions>form{align-items:stretch;flex-direction:column}.annual-item-actions select,.annual-item-actions .button{width:100%}.annual-edit{width:100%}}

/* Patch 060c: echtes Jahresrad + Rad/Liste-Umschaltung */
.annual-view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 16px}.annual-view-switch{display:inline-flex;gap:6px;padding:4px;border:1px solid var(--border);border-radius:12px;background:#fff}.annual-view-switch .button{min-width:92px;border-color:transparent;background:transparent;box-shadow:none}.annual-view-switch .button.is-active{background:#eaf3f4;color:#174f59;border-color:#bcd6da}.annual-view-hint{font-size:.76rem;color:var(--muted)}.annual-view-panel[hidden]{display:none!important}
.annual-wheel-card{padding:20px 22px}.annual-wheel-layout{display:grid;grid-template-columns:minmax(420px,1.15fr) minmax(280px,.85fr);gap:24px;align-items:center}.annual-wheel-stage{min-width:0}.annual-wheel{display:block;width:min(100%,620px);aspect-ratio:1;margin:0 auto;overflow:visible}.annual-wheel-ring-bg{fill:none;stroke:#e8eff1;stroke-width:120}.annual-wheel-sector{fill:#eef5f6;stroke:#fff;stroke-width:2;cursor:pointer;outline:none;transition:fill .18s ease,opacity .18s ease,filter .18s ease}.annual-wheel-sector:nth-of-type(4n+1){fill:#edf6f5}.annual-wheel-sector:nth-of-type(4n+3){fill:#f3f7f8}.annual-wheel-sector:hover,.annual-wheel-sector:focus-visible,.annual-wheel-sector.is-active{fill:#b9dadd;filter:drop-shadow(0 4px 8px rgba(22,79,89,.18))}.annual-wheel.is-interacting .annual-wheel-sector:not(.is-active){opacity:.48}.annual-wheel-label{pointer-events:none;transition:opacity .18s ease}.annual-wheel-label:not(.is-active){opacity:.84}.annual-wheel-label.is-active{opacity:1}.annual-wheel-month-name{font-size:18px;font-weight:850;fill:#214d56;text-anchor:middle;dominant-baseline:middle}.annual-wheel-month-count{font-size:12px;font-weight:900;fill:#fff;text-anchor:middle;dominant-baseline:middle;paint-order:stroke;stroke:#1b6974;stroke-width:7px;stroke-linejoin:round}.annual-wheel-core{fill:#fff;stroke:#d9e6e8;stroke-width:2;filter:drop-shadow(0 8px 18px rgba(20,69,78,.08))}.annual-wheel-year{font-size:34px;font-weight:900;fill:#173b44;text-anchor:middle}.annual-wheel-core-label{font-size:14px;font-weight:750;fill:#71838b;text-anchor:middle}.annual-wheel-legend{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:-8px;font-size:.7rem;color:#667b84}.annual-wheel-legend span{display:inline-flex;align-items:center;gap:5px}.annual-wheel-legend span:before{content:"";width:8px;height:8px;border-radius:50%;background:#8aa2aa}.annual-wheel-legend .is-progress:before{background:#d7a83f}.annual-wheel-legend .is-done:before{background:#4e9b78}
.annual-wheel-focus{min-width:0;align-self:stretch;display:flex;align-items:stretch}.annual-wheel-month-panel{width:100%;padding:18px;border-left:1px solid var(--border);display:flex;flex-direction:column;gap:13px}.annual-wheel-month-panel[hidden]{display:none}.annual-wheel-focus-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.annual-wheel-focus-head>div>span{display:block;font-size:.7rem;font-weight:900;letter-spacing:.08em;color:var(--accent)}.annual-wheel-focus-head h2{margin:2px 0 0;font-size:1.35rem}.annual-wheel-focus-head>strong{display:grid;place-items:center;min-width:34px;height:34px;border-radius:999px;background:#eef5f6;color:#174f59;font-size:.9rem}.annual-wheel-focus-list{display:grid;gap:8px}.annual-wheel-focus-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:10px 11px;border:1px solid var(--border);border-left:4px solid #9eb2b9;border-radius:11px;background:#fff;color:var(--text);text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.annual-wheel-focus-item:hover,.annual-wheel-focus-item:focus-visible{transform:translateX(3px);border-color:#a8c9ce;box-shadow:0 6px 18px rgba(22,79,89,.08);outline:none}.annual-wheel-focus-item.annual-status-in_progress{border-left-color:#d7a83f}.annual-wheel-focus-item.annual-status-done{border-left-color:#4e9b78}.annual-wheel-focus-item.annual-status-cancelled{border-left-color:#b4bdc1;opacity:.72}.annual-wheel-focus-date{font-size:.72rem;font-weight:850;color:#5c717a}.annual-wheel-focus-copy{display:grid;gap:2px;min-width:0}.annual-wheel-focus-copy strong{font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.annual-wheel-focus-copy small{font-size:.69rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.annual-wheel-empty-month{margin:0;padding:20px 0;color:var(--muted);font-size:.84rem}.annual-wheel-open-list{margin-top:auto;align-self:flex-start}.annual-list-view{animation:annual-view-in .16s ease}.annual-wheel-view{animation:annual-view-in .16s ease}@keyframes annual-view-in{from{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(max-width:980px){.annual-wheel-layout{grid-template-columns:1fr}.annual-wheel{max-width:580px}.annual-wheel-month-panel{border-left:0;border-top:1px solid var(--border);padding:16px 2px 2px}.annual-wheel-focus-list{grid-template-columns:repeat(2,minmax(0,1fr))}.annual-wheel-open-list{margin-top:4px}}
@media(max-width:700px){.annual-view-toolbar{align-items:stretch;flex-direction:column}.annual-view-switch{display:grid;grid-template-columns:1fr 1fr}.annual-view-switch .button{width:100%}.annual-view-hint{padding-left:2px}.annual-wheel-card{padding:12px}.annual-wheel{min-width:430px}.annual-wheel-stage{overflow-x:auto;padding:0 4px 8px}.annual-wheel-focus-list{grid-template-columns:1fr}.annual-wheel-focus-item{grid-template-columns:48px minmax(0,1fr) auto}.annual-wheel-month-name{font-size:17px}}
@media(prefers-reduced-motion:reduce){.annual-wheel-sector,.annual-wheel-focus-item,.annual-list-view,.annual-wheel-view{transition:none!important;animation:none!important}}
.annual-item.is-spotlight{border-color:#6ea8b0;box-shadow:0 0 0 4px rgba(27,86,97,.10),0 8px 24px rgba(22,79,89,.09);transition:border-color .2s ease,box-shadow .2s ease}
.annual-wheel-sector.is-empty{fill:#f3f6f7}.annual-wheel-sector.is-planned{fill:#dfeaed}.annual-wheel-sector.is-progress{fill:#f3dfae}.annual-wheel-sector.is-done{fill:#cfe7da}.annual-wheel-sector.is-cancelled{fill:#eceff0}.annual-wheel-sector:hover,.annual-wheel-sector:focus-visible,.annual-wheel-sector.is-active{fill:#9fcdd2}

/* Patch 060d: Mehrmonatige Vorhaben als Bögen im Jahresrad */
.annual-wheel-span{fill:none;stroke:#6c8e96;stroke-width:5;stroke-linecap:round;cursor:pointer;opacity:.88;outline:none;transition:stroke-width .16s ease,opacity .16s ease,filter .16s ease}
.annual-wheel-span.annual-status-planned{stroke:#6f98a1}.annual-wheel-span.annual-status-in_progress{stroke:#d1a23a}.annual-wheel-span.annual-status-done{stroke:#438c6c}.annual-wheel-span.annual-status-cancelled{stroke:#a9b3b7;stroke-dasharray:4 5;opacity:.58}
.annual-wheel-span:hover,.annual-wheel-span:focus-visible,.annual-wheel-span.is-active{stroke-width:8;opacity:1;filter:drop-shadow(0 3px 5px rgba(22,79,89,.25))}
.annual-wheel.is-span-interacting .annual-wheel-sector:not(.is-span-active){opacity:.27}.annual-wheel.is-span-interacting .annual-wheel-sector.is-span-active{opacity:1;fill:#b9dadd}
.annual-wheel.is-span-interacting .annual-wheel-label:not(.is-span-active){opacity:.35}.annual-wheel-label.is-span-active{opacity:1}
.annual-wheel-span-hint{margin-left:4px;padding-left:12px;border-left:1px solid #d9e4e7;color:#526b74;font-weight:700}
.annual-wheel-focus-date small{font-size:.64rem;color:#7b8b91;font-weight:750}
@media(max-width:700px){.annual-wheel-span{stroke-width:6}.annual-wheel-span-hint{flex-basis:100%;margin-left:0;padding-left:0;border-left:0;justify-content:center}}
@media(prefers-reduced-motion:reduce){.annual-wheel-span{transition:none!important}}

/* Patch 061: Standardpaket Verein */
.annual-starter-panel{position:relative}.annual-starter-panel>summary{list-style:none;cursor:pointer}.annual-starter-panel>summary::-webkit-details-marker{display:none}.annual-starter-card{margin-top:10px;padding:18px;max-width:980px}.annual-starter-settings{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(240px,.8fr);gap:14px;align-items:start}.annual-starter-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;margin:15px 0;padding:13px;border:1px solid var(--border);border-radius:12px;background:#f8fafb}.annual-starter-preview>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;min-width:0;padding:5px 2px}.annual-starter-preview>div>span{color:#5e8b94;font-weight:900}.annual-starter-preview strong{font-size:.79rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.annual-starter-preview small{font-size:.69rem;color:var(--muted);white-space:nowrap}.annual-starter-note{margin:10px 0 4px;padding:10px 12px;border-radius:10px;background:#eef5f6;color:#365861;font-size:.78rem}.annual-starter-panel .form-actions{align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:760px){.annual-starter-settings,.annual-starter-preview{grid-template-columns:1fr}.annual-starter-preview>div{grid-template-columns:auto minmax(0,1fr)}.annual-starter-preview small{grid-column:2;white-space:normal}}


/* Patch 060e: Jahresrad Feinschliff und Jahr verwalten */
.annual-wheel-stage{padding-bottom:8px}.annual-wheel-legend{margin-top:10px;position:relative;z-index:2;background:#fff;padding-top:4px}.annual-year-manage{flex:0 0 auto}.annual-year-manage>summary{list-style:none;cursor:pointer}.annual-year-manage>summary::-webkit-details-marker{display:none}.annual-year-manage[open]{flex-basis:100%}.annual-year-manage-card{margin-top:10px;padding:17px 18px;background:#fbfcfd;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:18px;align-items:end}.annual-year-manage-card p{margin:5px 0 0}.annual-year-manage-form{display:flex;align-items:end;gap:10px}.annual-year-manage-form .field{margin:0;flex:1}.annual-year-manage-form select{min-width:180px}
@media(max-width:760px){.annual-year-manage{width:100%}.annual-year-manage>summary{width:100%;justify-content:center}.annual-year-manage-card{grid-template-columns:1fr}.annual-year-manage-form{align-items:stretch;flex-direction:column}.annual-year-manage-form select,.annual-year-manage-form .button{width:100%}}


/* Patch 061b: Mitglieder-Jahresprogramm */
.annual-view-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.annual-member-check{background:#f4faf7;border-color:#cfe4d8}.annual-member-badge{background:#eaf6ef;color:#176348}
@media(max-width:760px){.annual-view-toolbar{align-items:stretch;flex-direction:column}.annual-view-actions{margin-left:0;width:100%}.annual-view-actions .button{width:100%;justify-content:center}}

/* Patch 061e: Freigabe & Versand Jahresprogramm */
.annual-program-flow,.annual-program-send,.annual-program-delivery{margin-top:16px}
.annual-program-flow-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.annual-program-flow-head h2{margin:.15rem 0 0}.annual-program-steps{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.annual-program-steps span{padding:5px 9px;border-radius:999px;background:#eef3f5;color:#6b7c85;font-size:.75rem;font-weight:800}.annual-program-steps span.is-active{background:#1b5661;color:#fff}.annual-program-steps b{color:#9aabb2}
.annual-program-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.annual-program-facts>div{padding:12px 14px;border:1px solid #dce5e9;border-radius:11px;background:#f8fafb}.annual-program-facts span{display:block;font-size:.72rem;color:#70808c}.annual-program-facts strong{display:block;margin-top:4px;font-size:1.35rem;color:#173640}
.annual-program-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.annual-program-actions form{margin:0}.annual-program-note{margin:14px 0;padding:13px 15px;border-radius:11px;background:#f4f8f9;border:1px solid #d8e5e8}.annual-program-note p{margin:5px 0 0}.annual-program-note.is-warning{background:#fff8e8;border-color:#ead9aa}
.annual-program-review{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(300px,1.3fr) auto;align-items:end;gap:14px;margin-top:16px;padding-top:16px;border-top:1px solid #e2eaed}.annual-program-review form{margin:0}.annual-program-review .field{margin:0}.annual-program-approved{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px;padding:13px 15px;border-radius:11px;background:#eef8f3;border:1px solid #c6e0d2}.annual-program-approved strong{color:#176348}.annual-program-approved span{color:#536970;font-size:.88rem}
.annual-program-physical-warning{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin:14px 0;padding:13px 15px;border:1px solid #ead9aa;border-radius:11px;background:#fff8e8}.annual-program-physical-warning details{justify-self:end}.annual-program-physical-warning ul{margin:8px 0 0;padding-left:20px}.annual-program-recipient-list{border:1px solid #dce5e9;border-radius:12px;overflow:hidden}.annual-program-recipient-head{display:flex;justify-content:space-between;gap:12px;padding:11px 13px;background:#f6f9fa;border-bottom:1px solid #dce5e9}.annual-program-recipient-list>label{display:flex;align-items:center;gap:10px;padding:10px 13px;border-bottom:1px solid #edf1f3}.annual-program-recipient-list>label:last-child{border-bottom:0}.annual-program-recipient-list label span{display:flex;flex-direction:column}.annual-program-recipient-list small{color:#71808a}.annual-program-physical-list{display:grid;gap:7px}.annual-program-physical-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid #e0e7eb;border-radius:9px}.annual-program-physical-list form{margin:0}
.annual-physical-sheet table{width:100%;border-collapse:collapse}.annual-physical-sheet th,.annual-physical-sheet td{padding:13px 10px;border-bottom:1px solid #dce5e9;text-align:left}.annual-physical-sheet td:last-child{height:42px}.annual-physical-sheet small{display:block;color:#71808a;margin-top:3px}.annual-physical-check{width:70px;font-size:1.2rem}
@media(max-width:820px){.annual-program-flow-head,.annual-program-approved{align-items:flex-start;flex-direction:column}.annual-program-facts{grid-template-columns:1fr 1fr}.annual-program-review{grid-template-columns:1fr}.annual-program-physical-warning{grid-template-columns:1fr}.annual-program-physical-warning details{justify-self:start}}
@media(max-width:560px){.annual-program-facts{grid-template-columns:1fr}.annual-program-actions .button,.annual-program-actions form,.annual-program-actions form .button{width:100%}.annual-program-physical-list>div{align-items:stretch;flex-direction:column}.annual-program-physical-list .button{width:100%}}
@media print{.annual-physical-head .button,.app-header,.app-nav,.mobile-nav{display:none!important}.app-shell{display:block!important}.app-main{padding:0!important}.annual-physical-sheet{border:0!important;box-shadow:none!important}.annual-physical-sheet tr{break-inside:avoid}}


/* Patch 061f: Jahresrad-Werkzeuge bleiben bei geöffneten Panels stabil */
.annual-tools{flex-wrap:wrap}
.annual-tools>details[open]{flex:1 0 100%;min-width:0}
.annual-tools>.annual-create-panel[open],.annual-tools>.annual-starter-panel[open],.annual-tools>.annual-year-manage[open]{flex-basis:100%}
.annual-tools>details[open]>.card{width:100%;max-width:none;box-sizing:border-box}
.annual-tools>.annual-starter-panel[open]>.annual-starter-card,.annual-tools>.annual-year-manage[open]>.annual-year-manage-card{max-width:none}
@media(max-width:760px){.annual-tools{align-items:stretch}.annual-tools>details,.annual-tools>form{max-width:100%}}


/* Patch 061i: Branding & Navigation Übergabeliste Jahresprogramm */
.annual-physical-head{align-items:flex-start}.annual-physical-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.annual-physical-back{display:inline-flex;margin-bottom:8px}
.annual-physical-brand{display:flex;align-items:center;gap:14px;margin:-20px -20px 18px;padding:16px 20px;background:#155864;color:#fff;border-radius:14px 14px 0 0}.annual-physical-brand img{display:block;width:auto;height:auto;max-width:74px;max-height:54px;padding:4px;background:#fff;border-radius:5px;object-fit:contain}.annual-physical-brand>div{display:flex;flex-direction:column;gap:2px}.annual-physical-brand strong{font-size:1.15rem}.annual-physical-brand span{font-size:.76rem;color:rgba(255,255,255,.82)}
.annual-physical-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px;color:#536970}.annual-physical-meta strong{color:#173640}.annual-physical-footer{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:11px;border-top:1px solid #dce5e9;color:#71808a;font-size:.75rem}.annual-physical-footer strong{color:#536970}
@media(max-width:680px){.annual-physical-actions{width:100%}.annual-physical-actions .button{flex:1}.annual-physical-meta,.annual-physical-footer{align-items:flex-start;flex-direction:column}.annual-physical-brand{margin:-16px -16px 16px;padding:14px 16px}}
@media print{.annual-physical-head,.sidebar,.topbar,.mobile-nav{display:none!important}.main{display:block!important;margin:0!important}.content{padding:0!important;max-width:none!important}.annual-physical-sheet{border:0!important;box-shadow:none!important;padding:0!important}.annual-physical-brand{margin:0 0 8mm;padding:5mm 6mm;border-radius:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}.annual-physical-brand img{max-width:24mm;max-height:15mm}.annual-physical-meta{font-size:9pt}.annual-physical-footer{font-size:8pt}.annual-physical-sheet tr{break-inside:avoid}@page{size:A4;margin:14mm}}

/* Patch 061j: Übergabeliste – einfache Navigation und mehr Luft zum Branding */
.annual-physical-head{margin-bottom:22px}
.annual-physical-actions{padding-top:8px}
@media(max-width:680px){.annual-physical-head{margin-bottom:18px}.annual-physical-actions{width:auto}.annual-physical-actions .button{flex:none;width:auto}}

/* Patch 062: Dokumente V1 */
.document-toolbar-card{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;padding:12px 14px}.document-view-switch{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--border);border-radius:10px;background:#f7fafb}.document-view-switch a{display:inline-flex;align-items:center;min-height:32px;padding:5px 10px;border-radius:7px;color:var(--muted);font-size:.8rem;font-weight:800;text-decoration:none}.document-view-switch a.active{background:#fff;color:var(--accent);box-shadow:0 1px 3px rgba(22,63,72,.08)}.document-filter{display:flex;align-items:end;gap:8px;margin:0}.document-filter label{display:block;margin-bottom:3px;font-size:.72rem;font-weight:800;color:var(--muted)}.document-filter select{min-width:220px}
.document-list{display:grid;gap:10px}.document-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px 16px}.document-type-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#eaf3f4;color:#1b5661;font-size:.67rem;font-weight:900;letter-spacing:.04em}.document-row-main{min-width:0}.document-row-kickers{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:.74rem}.document-row-main h2{margin:5px 0 3px;font-size:1.02rem}.document-row-main h2 a{color:var(--text);text-decoration:none}.document-row-main h2 a:hover{color:var(--accent)}.document-row-main p{margin:4px 0;color:#536970;font-size:.84rem;line-height:1.4}.document-meta{display:flex;align-items:center;gap:7px 12px;flex-wrap:wrap;margin-top:6px;color:#71808a;font-size:.72rem}.document-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.badge-muted{background:#f0f2f3;color:#63757e}
.document-create-card{margin-top:18px;scroll-margin-top:82px}.document-create-form{display:grid;gap:12px}.document-create-form .field{margin:0}.form-row-3{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(180px,.8fr) minmax(190px,.8fr);gap:12px}.document-create-form textarea{min-height:82px;resize:vertical}.info-card p{margin:.35rem 0 0;color:var(--muted)}
.document-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:14px}.document-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.document-facts>div{padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:#f8fafb}.document-facts dt{font-size:.7rem;font-weight:800;color:var(--muted)}.document-facts dd{margin:4px 0 0;font-weight:800}.document-description{margin-top:14px;padding-top:13px;border-top:1px solid var(--border)}.document-description p{margin:5px 0 0;line-height:1.5}.document-new-version{margin-top:14px}.inline-upload-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.inline-upload-form .field{margin:0}.document-version-list{display:grid}.document-version-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid var(--border)}.document-version-row:first-child{border-top:0;padding-top:0}.document-version-row strong{margin-right:7px}.document-archive-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px}.document-archive-card p{margin:.25rem 0 0}.document-archive-card form{margin:0}
@media(max-width:900px){.document-detail-grid{grid-template-columns:1fr}.form-row-3{grid-template-columns:1fr 1fr}.form-row-3>.field:first-child{grid-column:1/-1}}
@media(max-width:680px){.document-toolbar-card{align-items:stretch;flex-direction:column}.document-filter{align-items:stretch;flex-direction:column}.document-filter select,.document-filter .button{width:100%}.document-row{grid-template-columns:40px minmax(0,1fr)}.document-type-mark{width:38px;height:38px}.document-row-actions{grid-column:1/-1;justify-content:stretch}.document-row-actions .button{flex:1}.form-row-3{grid-template-columns:1fr}.form-row-3>.field:first-child{grid-column:auto}.inline-upload-form{grid-template-columns:1fr}.inline-upload-form .button{width:100%}.document-version-row,.document-archive-card{align-items:stretch;flex-direction:column}.document-version-row .button,.document-archive-card .button{width:100%}.document-facts{grid-template-columns:1fr}}


/* Patch 062b: Dokumente – kompakte Navigation, Upload-Panel und stabileres Layout */
.documents-page-header{margin-bottom:12px}
.document-page-nav{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 16px;padding:0 2px 8px;border-bottom:1px solid var(--border)}
.document-tabs{display:flex;align-items:center;gap:20px}
.document-tabs a{position:relative;padding:8px 1px 10px;color:var(--muted);font-size:.86rem;font-weight:800;text-decoration:none}
.document-tabs a:hover{color:var(--accent);text-decoration:none}
.document-tabs a.active{color:var(--accent)}
.document-tabs a.active:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:3px;border-radius:3px;background:var(--accent)}
.document-page-nav .document-filter{margin-left:auto}
.document-create-panel{margin:0 0 16px}
.document-create-panel>summary{display:inline-flex;list-style:none;cursor:pointer}
.document-create-panel>summary::-webkit-details-marker{display:none}
.document-create-panel[open]>summary{margin-bottom:10px}
.document-create-card{margin:0}
.document-create-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.55fr);gap:12px}
.document-create-grid .field{margin:0}
.document-create-title,.document-create-description,.document-create-file{grid-column:1/-1}
.document-create-description textarea{min-height:88px}
.document-empty{margin-top:0}
.document-no-group{margin-bottom:16px}
@media(max-width:760px){.document-page-nav{align-items:stretch;flex-direction:column}.document-tabs{width:100%;gap:18px}.document-page-nav .document-filter{width:100%;margin-left:0}.document-create-grid{grid-template-columns:1fr}.document-create-title,.document-create-description,.document-create-file{grid-column:auto}.document-create-panel>summary{width:100%;justify-content:center}}

/* Patch 062c: Dokument-Speicher, Versionen und Detailnavigation */
.document-storage-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);gap:18px;align-items:center;margin-bottom:16px;padding:15px 17px}
.document-storage-copy .eyebrow{margin-bottom:5px}.document-storage-value{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.document-storage-value strong{font-size:1.25rem;color:var(--text)}.document-storage-value span{font-size:.84rem;font-weight:800;color:var(--muted)}.document-storage-copy p{margin:.35rem 0 0;font-size:.78rem;line-height:1.45}.document-storage-meter{display:grid;gap:5px}.document-storage-meter progress{appearance:none;-webkit-appearance:none;width:100%;height:10px;border:0;border-radius:999px;overflow:hidden;background:#e7edef}.document-storage-meter progress::-webkit-progress-bar{background:#e7edef;border-radius:999px}.document-storage-meter progress::-webkit-progress-value{background:#2d7b83;border-radius:999px}.document-storage-meter progress::-moz-progress-bar{background:#2d7b83;border-radius:999px}.storage-state-warning .document-storage-meter progress::-webkit-progress-value{background:#a87919}.storage-state-warning .document-storage-meter progress::-moz-progress-bar{background:#a87919}.storage-state-critical .document-storage-meter progress::-webkit-progress-value{background:#b1463e}.storage-state-critical .document-storage-meter progress::-moz-progress-bar{background:#b1463e}.document-storage-meter small{color:var(--muted);font-size:.72rem;text-align:right}
.document-history-storage{display:flex;flex-direction:column;align-items:flex-end;gap:1px}.document-history-storage strong{font-size:.92rem}.document-history-storage small{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.document-version-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.document-version-actions form{margin:0}.document-version-delete{color:#9b332f}.document-version-delete:hover{color:#7c211e}.document-version-row>.help{display:block;margin-top:5px}
@media(max-width:760px){.document-storage-card{grid-template-columns:1fr}.document-storage-meter small{text-align:left}.document-history-storage{align-items:flex-start}.document-version-actions{width:100%;justify-content:stretch}.document-version-actions .button{flex:1}}


/* Patch 062d: kompakte Speicher-UX, Vereinsverwaltung und Dokument löschen */
.documents-storage-compact{display:flex;align-items:center;justify-content:flex-end;gap:7px 10px;margin:-3px 2px 12px;color:var(--muted);font-size:.76rem}
.documents-storage-compact>span{font-weight:700}.documents-storage-compact>strong{color:var(--text);font-size:.8rem}.documents-storage-compact>a{color:var(--accent);font-weight:800;text-decoration:none}.documents-storage-compact>a:hover{text-decoration:underline}
.documents-storage-compact.storage-state-warning>strong{color:#8c681b}.documents-storage-compact.storage-state-critical>strong{color:#a43832}.compact-alert{margin-bottom:12px;padding:10px 12px;font-size:.82rem}
.admin-storage-card{scroll-margin-top:80px}.admin-storage-summary{display:grid;grid-template-columns:minmax(180px,.55fr) minmax(280px,1fr);gap:20px;align-items:center;padding:14px 15px;border:1px solid var(--border);border-radius:12px;background:#f8fafb}.admin-storage-value{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.admin-storage-value strong{font-size:1.35rem;color:var(--text)}.admin-storage-value span{font-size:.85rem;font-weight:750;color:var(--muted)}.admin-storage-meter{display:grid;gap:6px}.admin-storage-meter progress{appearance:none;-webkit-appearance:none;width:100%;height:9px;border:0;border-radius:999px;overflow:hidden;background:#e5ecef}.admin-storage-meter progress::-webkit-progress-bar{background:#e5ecef}.admin-storage-meter progress::-webkit-progress-value{background:#2d7b83}.admin-storage-meter progress::-moz-progress-bar{background:#2d7b83}.admin-storage-card.storage-state-warning .admin-storage-meter progress::-webkit-progress-value{background:#a87919}.admin-storage-card.storage-state-warning .admin-storage-meter progress::-moz-progress-bar{background:#a87919}.admin-storage-card.storage-state-critical .admin-storage-meter progress::-webkit-progress-value{background:#b1463e}.admin-storage-card.storage-state-critical .admin-storage-meter progress::-moz-progress-bar{background:#b1463e}.admin-storage-meter small{text-align:right;color:var(--muted);font-size:.74rem}.admin-storage-note{margin:12px 0 0;font-size:.84rem}.admin-storage-note.warning{color:#7a5c18}.admin-storage-note.critical{color:#9d3530}
.document-management-card{margin-top:14px}.document-management-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:13px 0;border-top:1px solid var(--border)}.document-management-actions:first-of-type{border-top:0;padding-top:0}.document-management-actions p{margin:.25rem 0 0}.document-management-actions form{margin:0}.document-delete-action{margin-top:2px}.document-delete-action>div>strong{color:#8f302c}
@media(max-width:760px){.documents-storage-compact{justify-content:flex-start;flex-wrap:wrap}.admin-storage-summary{grid-template-columns:1fr}.admin-storage-meter small{text-align:left}.document-management-actions{grid-template-columns:1fr;align-items:stretch}.document-management-actions .button{width:100%}}


/* Patch 062e: Speicher im Seitenkopf + auswählbare Zusatzpakete */
.documents-page-header{align-items:flex-start}
.documents-storage-head{flex:0 0 auto;display:grid;gap:1px;min-width:142px;padding:8px 11px;border:1px solid var(--border);border-radius:10px;background:#fff;text-align:right;text-decoration:none;box-shadow:0 2px 8px rgba(17,54,64,.04)}
.documents-storage-head span{font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.documents-storage-head strong{font-size:.82rem;color:var(--text);white-space:nowrap}
a.documents-storage-head:hover{border-color:var(--accent);box-shadow:0 3px 11px rgba(17,54,64,.08)}
.documents-storage-head.storage-state-warning strong{color:#8c681b}.documents-storage-head.storage-state-critical strong{color:#a43832}
.storage-upgrade-block{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
.storage-upgrade-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px 18px;flex-wrap:wrap;margin-bottom:10px}.storage-upgrade-head>strong{font-size:1rem}.storage-upgrade-head>span{font-size:.8rem;color:var(--muted)}
.storage-package-form{margin:0}.storage-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.storage-package-option{position:relative;display:block;cursor:pointer}.storage-package-option input{position:absolute;opacity:0;pointer-events:none}.storage-package-option span{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:12px 13px;border:1px solid var(--border);border-radius:11px;background:#fff;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.storage-package-option strong{font-size:.96rem;color:var(--text)}.storage-package-option small{font-size:.74rem;color:var(--muted);white-space:nowrap}.storage-package-option input:checked+span{border-color:var(--accent);background:#f3f8f9;box-shadow:0 0 0 2px rgba(31,93,104,.10)}.storage-package-option input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.storage-billing-note{margin-top:12px;padding:11px 13px;border-radius:10px;background:#f6f8f9;border:1px solid #e1e8eb}.storage-billing-note>strong{font-size:.83rem}.storage-billing-note p{margin:.25rem 0 .2rem;font-size:.8rem;color:var(--text);line-height:1.45}.storage-billing-note small{display:block;color:var(--muted);font-size:.74rem;line-height:1.4}
.storage-package-form .form-actions{margin-top:12px}
@media(max-width:760px){.documents-page-header{gap:12px}.documents-storage-head{width:auto;min-width:0;text-align:left}.storage-package-grid{grid-template-columns:1fr}.storage-package-option span{justify-content:flex-start}.storage-upgrade-head{display:grid;gap:2px}}

/* Patch 062f: Dokumenten-Audit – CSS-Reparatur, Rechte & Speicher-Härtung */

/* 062g: document source/context links */
.document-references-card{margin-top:14px}.document-reference-list{display:grid}.document-reference-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid var(--border)}.document-reference-row:first-child{border-top:0;padding-top:0}.document-reference-copy{min-width:0}.document-reference-copy strong{display:block}.document-reference-row .document-meta{margin-top:4px}.document-reference-row .button{flex:0 0 auto}
@media(max-width:680px){.document-reference-row{align-items:stretch;flex-direction:column}.document-reference-row .button{width:100%}}
/* Patch 062h – Desktop-Hauptnavigation bleibt sichtbar.
   Nur die Navigationsliste scrollt intern; Branding und Footer bleiben stehen. */
@media (min-width: 761px) {
  .sidebar {
    position: sticky;
    top: 0;
    align-self: start;
    height: 100vh;
    max-height: 100vh;
    overflow: hidden;
  }
  .sidebar .brand { flex: 0 0 auto; }
  .sidebar .nav {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    align-content: start;
    padding-right: 2px;
  }
  .sidebar-footer {
    flex: 0 0 auto;
    margin-top: 0;
  }
}


/* Patch 063 – Vereinswissen & Funktionsübergaben */
.knowledge-page-header,.handover-page-header{align-items:flex-start}
.knowledge-page-nav,.handover-page-nav{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 0 16px}
.knowledge-filter{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap;margin:0}
.knowledge-filter>div{display:grid;gap:4px}.knowledge-filter label{font-size:.7rem;font-weight:800;color:var(--muted)}
.knowledge-filter input{min-width:220px}.knowledge-filter select{min-width:170px}
.knowledge-create-panel,.handover-create-panel{margin:0 0 16px}.knowledge-create-panel>summary,.handover-create-panel>summary{list-style:none;width:max-content;cursor:pointer}.knowledge-create-panel>summary::-webkit-details-marker,.handover-create-panel>summary::-webkit-details-marker{display:none}.knowledge-create-panel[open]>summary,.handover-create-panel[open]>summary{margin-bottom:10px}
.knowledge-create-card,.handover-create-card{padding:18px 20px;background:#fbfcfd}.knowledge-create-grid{display:grid;grid-template-columns:minmax(250px,1.25fr) minmax(180px,.75fr) minmax(180px,.75fr);gap:12px 14px}.knowledge-create-grid .field,.handover-create-grid .field{margin:0}.knowledge-title-field{grid-column:1/2}.knowledge-body-field{grid-column:1/-1}.knowledge-body-field textarea{min-height:180px;resize:vertical}.knowledge-form .form-actions,.handover-create-card .form-actions{justify-content:flex-end;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.knowledge-list,.handover-list{display:grid;gap:10px}.knowledge-row,.handover-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px}.knowledge-row-main,.handover-row-main{min-width:0;flex:1}.knowledge-row h2,.handover-row h2{margin:5px 0 6px;font-size:1.05rem}.knowledge-row h2 a,.handover-row h2 a{color:var(--text);text-decoration:none}.knowledge-row h2 a:hover,.handover-row h2 a:hover{color:var(--accent)}.knowledge-row p{margin:.2rem 0 .5rem;color:#536a75;font-size:.86rem;line-height:1.45}.knowledge-kickers,.handover-kickers,.knowledge-meta{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap;color:var(--muted);font-size:.72rem}.knowledge-kickers>span:not(.badge),.handover-kickers>span:not(.badge),.knowledge-meta>span{position:relative}.knowledge-kickers>span:not(:first-child):not(.badge):before,.handover-kickers>span:not(:first-child):not(.badge):before,.knowledge-meta>span:not(:first-child):before{content:'·';margin-right:9px;color:#a3b2b8}
.knowledge-detail-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:14px;align-items:start}.knowledge-body-card,.knowledge-side-card,.knowledge-edit-card,.knowledge-history-card,.knowledge-management-card{margin-bottom:14px}.knowledge-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-bottom:14px;margin-bottom:17px;border-bottom:1px solid var(--border)}.knowledge-facts>div{display:grid;gap:2px}.knowledge-facts span{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.knowledge-facts strong{font-size:.9rem}.knowledge-facts small{font-size:.72rem;color:var(--muted)}.knowledge-body-text{font-size:.94rem;line-height:1.65;color:var(--text);overflow-wrap:anywhere}.knowledge-document-list{display:grid}.knowledge-document-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 9px;align-items:center;padding:10px 0;border-top:1px solid var(--border)}.knowledge-document-row:first-child{border-top:0;padding-top:0}.knowledge-document-row>div{min-width:0}.knowledge-document-row strong,.knowledge-document-row small{display:block}.knowledge-document-row strong{font-size:.86rem;overflow-wrap:anywhere}.knowledge-document-row small{margin-top:2px;color:var(--muted);font-size:.7rem}.knowledge-document-row form{grid-column:2;margin:0;text-align:right}.knowledge-link-form{display:grid;gap:8px;margin-top:13px;padding-top:13px;border-top:1px solid var(--border)}.knowledge-link-form .field{margin:0}.knowledge-link-form .button{justify-self:start}.knowledge-edit-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.55fr) minmax(200px,.75fr);gap:12px 14px}.knowledge-edit-grid .field{margin:0}.knowledge-edit-body{grid-column:1/-1}.knowledge-edit-body textarea{min-height:220px;resize:vertical}.knowledge-version-list{display:grid}.knowledge-version-row{padding:10px 0;border-top:1px solid var(--border)}.knowledge-version-row:first-child{padding-top:0;border-top:0}.knowledge-version-row strong{font-size:.86rem}
.handover-create-grid{display:grid;grid-template-columns:minmax(260px,1.25fr) minmax(220px,1fr) minmax(170px,.6fr);gap:12px 14px}.handover-people{display:flex;align-items:center;gap:8px;margin:5px 0 10px;color:#526873;font-size:.84rem}.handover-people strong{color:var(--accent)}.handover-progress-line{display:flex;align-items:center;gap:9px;max-width:360px}.handover-progress-line progress,.handover-progress-large progress{appearance:none;-webkit-appearance:none;border:0;border-radius:999px;overflow:hidden;background:#e5ecef}.handover-progress-line progress{width:100%;height:7px}.handover-progress-line progress::-webkit-progress-bar,.handover-progress-large progress::-webkit-progress-bar{background:#e5ecef}.handover-progress-line progress::-webkit-progress-value,.handover-progress-large progress::-webkit-progress-value{background:#2d7b83}.handover-progress-line progress::-moz-progress-bar,.handover-progress-large progress::-moz-progress-bar{background:#2d7b83}.handover-progress-line span{min-width:34px;color:var(--muted);font-size:.72rem;text-align:right}.handover-summary-card{margin-bottom:14px}.handover-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.handover-summary-grid>div{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#f8fafb}.handover-summary-grid span{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.handover-summary-grid strong{font-size:.88rem}.handover-progress-large{display:grid;gap:5px;margin-top:13px}.handover-progress-large progress{width:100%;height:9px}.handover-progress-large small{color:var(--muted);font-size:.72rem;text-align:right}.handover-basics{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.handover-basics>summary,.handover-add-item>summary{cursor:pointer;color:var(--accent);font-size:.8rem;font-weight:800}.handover-basics-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,.45fr) auto;gap:10px;align-items:end;margin-top:10px}.handover-basics-form .field{margin:0}.handover-checklist-card{margin-bottom:14px}.handover-checklist{display:grid}.handover-check-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px 0;border-top:1px solid var(--border)}.handover-check-item:first-child{border-top:0;padding-top:0}.handover-check-item.done .handover-check-copy strong{text-decoration:line-through;text-decoration-thickness:1px;color:#62747c}.handover-check-control form{margin:0}.handover-check-button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid #9fb3ba;border-radius:8px;background:#fff;color:#fff;font-weight:900;cursor:pointer}.handover-check-item.done .handover-check-button{border-color:#2d7b83;background:#2d7b83}.handover-check-button.static{cursor:default}.handover-check-copy{min-width:0}.handover-check-copy strong{display:block;font-size:.9rem}.handover-check-copy p{margin:.25rem 0;color:#526873;font-size:.82rem;line-height:1.45}.handover-check-copy small{display:block;color:var(--muted);font-size:.7rem}.handover-check-item>form{margin:0}.handover-add-item{margin-top:10px;padding-top:11px;border-top:1px solid var(--border)}.handover-add-item>form{margin-top:11px}.handover-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.handover-context-grid>.card{margin:0}.handover-context-list{display:grid}.handover-context-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--border)}.handover-context-list>div:first-child{padding-top:0;border-top:0}.handover-context-list>div>div{min-width:0}.handover-context-list strong,.handover-context-list small{display:block}.handover-context-list strong{font-size:.86rem;overflow-wrap:anywhere}.handover-context-list small{margin-top:2px;color:var(--muted);font-size:.7rem}.handover-empty-context{display:grid;gap:9px}.handover-empty-context p{margin:0;color:var(--muted);font-size:.84rem}.handover-actions-card{margin-bottom:14px}.handover-admin-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.handover-admin-links form{margin:0}
.badge.handover-status-ready{background:#e8f5ee;color:#246a45}.badge.handover-status-completed{background:#e9f1f5;color:#315e73}.badge.handover-status-cancelled{background:#f2f3f4;color:#66747b}
@media(max-width:980px){.knowledge-detail-grid{grid-template-columns:1fr}.handover-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.handover-create-grid,.knowledge-create-grid{grid-template-columns:1fr 1fr}.knowledge-title-field,.knowledge-body-field{grid-column:1/-1}.knowledge-edit-grid{grid-template-columns:1fr 1fr}.knowledge-edit-body{grid-column:1/-1}}
@media(max-width:760px){.knowledge-page-nav,.handover-page-nav{align-items:stretch;flex-direction:column}.knowledge-filter{display:grid;grid-template-columns:1fr 1fr;align-items:end}.knowledge-filter input,.knowledge-filter select{min-width:0;width:100%}.knowledge-filter .button{grid-column:1/-1;width:100%}.knowledge-create-grid,.handover-create-grid,.knowledge-edit-grid,.handover-basics-form{grid-template-columns:1fr}.knowledge-title-field,.knowledge-body-field,.knowledge-edit-body{grid-column:auto}.knowledge-row,.handover-row{align-items:stretch;flex-direction:column}.knowledge-row>.button,.handover-row>.button{width:100%}.handover-context-grid{grid-template-columns:1fr}.handover-summary-grid{grid-template-columns:1fr 1fr}.handover-context-list>div{align-items:stretch;flex-direction:column}.handover-context-list .button{width:100%}.knowledge-document-row{grid-template-columns:1fr}.knowledge-document-row>a,.knowledge-document-row form{grid-column:1}.knowledge-document-row .button{width:100%}.knowledge-link-form .button{width:100%;justify-self:stretch}}
@media(max-width:520px){.knowledge-filter{grid-template-columns:1fr}.knowledge-filter .button{grid-column:auto}.knowledge-create-card,.handover-create-card{padding:15px}.knowledge-facts,.handover-summary-grid{grid-template-columns:1fr}.handover-check-item{grid-template-columns:34px minmax(0,1fr)}.handover-check-item>form{grid-column:2}.handover-progress-large small{text-align:left}.handover-admin-links{align-items:stretch;flex-direction:column}.handover-admin-links .button,.handover-admin-links form,.handover-admin-links form .button{width:100%}}
/* 063: lesbarer Wissens-Versionsverlauf */
.knowledge-version-row{display:block}.knowledge-version-row>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer}.knowledge-version-row>summary::-webkit-details-marker{display:none}.knowledge-version-open{flex:0 0 auto;color:var(--accent);font-size:.72rem;font-weight:800}.knowledge-version-row[open] .knowledge-version-open{font-size:0}.knowledge-version-row[open] .knowledge-version-open:after{content:'Schliessen';font-size:.72rem}.knowledge-version-snapshot{margin-top:10px;padding:12px 13px;border:1px solid var(--border);border-radius:10px;background:#f8fafb;font-size:.86rem;line-height:1.55}.knowledge-version-snapshot h3{margin:7px 0 8px;font-size:.94rem}.knowledge-version-snapshot>div:last-child{overflow-wrap:anywhere}
@media(max-width:620px){.knowledge-version-row>summary{align-items:flex-start;flex-direction:column}.knowledge-version-open{align-self:flex-start}}

/* Patch 063a – Dokument-Upload direkt in Wissen */
.knowledge-document-actions{display:grid;gap:10px;margin-top:13px;padding-top:13px;border-top:1px solid var(--border)}
.knowledge-upload-panel>summary{cursor:pointer;color:var(--accent);font-size:.8rem;font-weight:800;list-style:none}.knowledge-upload-panel>summary::-webkit-details-marker{display:none}.knowledge-upload-panel>summary:before{content:'+ ';font-weight:900}.knowledge-upload-panel[open]>summary{margin-bottom:9px}
.knowledge-upload-form{display:grid;gap:9px;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:#f8fafb}.knowledge-upload-form .field{margin:0}.knowledge-upload-form .button{justify-self:start}.knowledge-upload-note{margin:0;color:var(--muted);font-size:.76rem;line-height:1.45}.knowledge-document-actions .knowledge-link-form{margin-top:0;padding-top:10px}
@media(max-width:760px){.knowledge-upload-form .button{width:100%;justify-self:stretch}}

/* Patch 063c: einheitliche, ruhigere Datei-Auswahl im gesamten Cockpit */
input[type="file"] {
  padding: 5px 7px;
  color: var(--muted);
  cursor: pointer;
}
input[type="file"]::file-selector-button,
input[type="file"]::-webkit-file-upload-button {
  min-height: 32px;
  margin-right: 10px;
  border: 1px solid #c7d2d9;
  border-radius: 7px;
  padding: 0 11px;
  background: var(--surface-muted);
  color: var(--text);
  font: inherit;
  font-weight: 750;
  cursor: pointer;
  transition: background .14s ease, border-color .14s ease, box-shadow .14s ease;
}
input[type="file"]:hover::file-selector-button,
input[type="file"]:hover::-webkit-file-upload-button {
  background: #e7edf1;
  border-color: #b7c5cd;
}
input[type="file"]:focus-visible::file-selector-button,
input[type="file"]:focus-visible::-webkit-file-upload-button {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(31,122,136,.10);
}
/* Patch 063f – Aufgaben und Jahresrad in Funktionsübergaben */
.handover-context-readonly{flex:0 0 auto;color:var(--muted);font-size:.72rem;font-weight:750;white-space:nowrap}
.task-row[id]{scroll-margin-top:18px}
@media(max-width:760px){.handover-context-readonly{align-self:flex-start}}


/* Patch 063g – einheitlich klickbare Karten und Listenzeilen
 * Hat ein Eintrag genau ein Detailziel, ist die ganze Karte/Zeile klickbar.
 * Sekundaeraktionen bleiben eigenstaendig bedienbar.
 */
.cockpit-click-row{position:relative;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
.cockpit-click-row:hover{border-color:#a8c9ce;background:#fbfdfd;box-shadow:0 6px 18px rgba(22,79,89,.08);transform:translateY(-1px)}
.cockpit-row-primary{color:inherit;text-decoration:none}
.cockpit-row-primary:hover{color:inherit;text-decoration:none}
.cockpit-row-primary:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;cursor:pointer}
.cockpit-row-primary:focus-visible{outline:none}
.cockpit-row-primary:focus-visible:after{outline:3px solid rgba(31,122,136,.22);outline-offset:2px}
.cockpit-row-actions,.cockpit-row-actions a,.cockpit-row-actions button,.cockpit-row-actions form{position:relative;z-index:2}
.cockpit-row-chevron{display:grid;place-items:center;flex:0 0 auto;min-width:28px;height:28px;border-radius:999px;background:#eef5f6;color:#1b5661;font-size:1.2rem;font-weight:800;line-height:1;pointer-events:none;transition:background .16s ease,transform .16s ease}
.cockpit-click-row:hover .cockpit-row-chevron{background:#dcecee;transform:translateX(2px)}
.document-row.cockpit-click-row .document-row-main h2 a,.knowledge-row.cockpit-click-row h2 a,.handover-row.cockpit-click-row h2 a{color:var(--text)}
.document-row.cockpit-click-row .document-row-actions{flex-wrap:nowrap}
.handover-context-row{margin:0 -7px;padding-left:7px!important;padding-right:7px!important;border-radius:9px}
.handover-context-list>.handover-context-row:first-child{padding-top:10px}
.document-reference-row.cockpit-click-row{margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px;border-radius:10px}
.knowledge-document-row.cockpit-click-row{margin-left:-7px;margin-right:-7px;padding-left:7px;padding-right:7px;border-radius:9px}
.knowledge-document-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;position:relative;z-index:2}
.knowledge-document-row-actions form{grid-column:auto;margin:0}
@media(max-width:760px){.knowledge-row>.cockpit-row-chevron,.handover-row>.cockpit-row-chevron{align-self:flex-end}.handover-context-list>.handover-context-row{align-items:center;flex-direction:row}.knowledge-document-row-actions{justify-content:space-between;width:100%}.knowledge-document-row-actions form{margin-left:auto;width:auto}.knowledge-document-row-actions .button{width:auto}}
@media(prefers-reduced-motion:reduce){.card-link,.cockpit-click-row,.cockpit-row-chevron{transition:none!important}.card-link:hover,.card-link:focus-visible,.cockpit-click-row:hover{transform:none}.cockpit-click-row:hover .cockpit-row-chevron{transform:none}}

/* 063k – Übergabe: fehlende E-Mail direkt im Arbeitskontext erfassen */
.handover-email-missing{display:flex;align-items:center;justify-content:space-between;gap:14px}
.handover-email-missing>div{min-width:0}
.handover-email-modal{display:none;position:fixed;inset:0;z-index:1100;place-items:center;padding:20px}
.handover-email-modal:target{display:grid}
.handover-email-backdrop{position:absolute;inset:0;background:rgba(11,26,34,.52);backdrop-filter:blur(2px)}
.handover-email-dialog{position:relative;z-index:1;width:min(520px,100%);max-height:min(88vh,720px);overflow:auto;padding:24px;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:0 24px 70px rgba(12,34,44,.24)}
.handover-email-dialog h2{margin:.25rem 0 .55rem;font-size:1.28rem}
.handover-email-dialog>p{margin:0 0 16px;color:var(--muted);line-height:1.5}
.handover-email-dialog .field{margin:0}
.handover-email-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}
@media(max-width:620px){
  .handover-email-missing{align-items:stretch;flex-direction:column}
  .handover-email-missing .button{width:100%}
  .handover-email-dialog{padding:19px}
  .handover-email-actions{display:grid;grid-template-columns:1fr}
  .handover-email-actions .button{width:100%}
}

/* Patch 064 – globaler UX-Fit: Arbeitskontext, Rückmeldung, Gruppenaktionen */
.ux-toast-region{position:fixed;z-index:1400;top:18px;right:18px;display:grid;gap:8px;width:min(390px,calc(100vw - 28px));pointer-events:none}
.ux-toast{opacity:0;transform:translateY(-7px);padding:11px 14px;border:1px solid var(--border);border-radius:11px;background:#fff;box-shadow:0 12px 34px rgba(22,37,49,.16);font-size:.84rem;font-weight:700;line-height:1.4;transition:opacity .16s ease,transform .16s ease}
.ux-toast.is-visible{opacity:1;transform:translateY(0)}
.ux-toast-success{border-color:#b8d9c7;background:#effaf4;color:#1f5c3d}
.ux-toast-warning{border-color:#ead29b;background:#fff9e8;color:#704b00}
.ux-context-restored{animation:ux-context-pulse 1.15s ease-out}
@keyframes ux-context-pulse{0%{box-shadow:0 0 0 3px rgba(31,122,136,.2)}100%{box-shadow:0 0 0 0 rgba(31,122,136,0)}}
.group-person-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 18px;align-items:center;scroll-margin-top:18px}
.group-person-main{min-width:0}
.group-person-main strong{display:block;overflow-wrap:anywhere}
.group-person-main .muted{margin-top:3px;overflow-wrap:anywhere}
.group-person-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap}
.group-person-actions form{margin:0;flex:0 0 auto}
.group-person-remove{min-height:36px;color:#8e3b3b;font-weight:700;white-space:nowrap}
.group-person-remove:hover,.group-person-remove:focus-visible{color:#6f2828;background:#fff4f4}
.group-function-assignment{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:center;padding:8px 0;border-top:1px solid var(--border);scroll-margin-top:18px}
.group-function-assignment:first-of-type{border-top:0}
.group-function-assignment-copy{min-width:0;overflow-wrap:anywhere}
.group-function-assignment form{margin:0}
.group-function-assignment .button-link{white-space:nowrap}
@media(max-width:820px){
  .group-person-row{grid-template-columns:1fr;align-items:stretch}
  .group-person-actions{justify-content:stretch;flex-wrap:wrap}
  .group-person-actions form:first-child{flex:1 1 220px}
  .group-person-actions form:first-child button,.group-person-actions form:first-child .button{width:100%}
  .group-person-actions .group-person-remove-form{flex:0 1 auto}
  .group-function-assignment{grid-template-columns:1fr;align-items:start}
  .group-function-assignment form{justify-self:start}
}
@media(max-width:520px){
  .ux-toast-region{top:10px;right:10px;width:calc(100vw - 20px)}
  .group-person-actions{display:grid;grid-template-columns:1fr}
  .group-person-actions form,.group-person-actions form:first-child,.group-person-actions .group-person-remove-form{width:100%}
  .group-person-actions button,.group-person-actions .button{width:100%}
}
@media(prefers-reduced-motion:reduce){.ux-toast{transition:none}.ux-context-restored{animation:none}}


/* Patch 065 – geführtes, jederzeit fortsetzbares Vereins-Onboarding */
.onboarding-header{align-items:flex-end}
.onboarding-progress{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:140px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-muted)}
.onboarding-progress strong{font-size:1.35rem;line-height:1}.onboarding-progress span{font-size:.76rem;color:var(--muted);font-weight:700}
.onboarding-step{margin-top:14px;scroll-margin-top:18px}.onboarding-step.is-done{border-color:#c5ddd0}
.onboarding-step-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start}.onboarding-step-head h2{margin:2px 0 0}.onboarding-step-head p{margin:5px 0 0}
.onboarding-step-number{display:grid;place-items:center;width:31px;height:31px;border-radius:999px;border:1px solid var(--border);background:var(--surface-muted);font-weight:850;color:var(--accent)}
.onboarding-step.is-done .onboarding-step-number{background:var(--success);border-color:var(--success);color:#fff}
.onboarding-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}.onboarding-facts>div{padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:#f8fafb}.onboarding-facts span{display:block;color:var(--muted);font-size:.73rem;font-weight:700;margin-bottom:3px}.onboarding-facts strong{overflow-wrap:anywhere}
.onboarding-preset-grid{margin-top:15px}.onboarding-preset{align-items:flex-start}.onboarding-preset>span{display:grid;gap:2px}.onboarding-preset small{color:var(--muted);font-size:.72rem;font-weight:600}.onboarding-preset.is-existing{background:#f1f7f4;border-color:#c9ded2}.onboarding-preset input:disabled{opacity:.8}
.onboarding-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.onboarding-start-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:15px}.onboarding-start-grid .mini-card{display:grid;gap:5px}.onboarding-start-grid .mini-card span{line-height:1.45}
.onboarding-finish{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;border-color:#bcd8dd;background:#f7fbfb}.onboarding-finish h2{margin:2px 0 0}.onboarding-finish p{margin:5px 0 0}.onboarding-finish-actions{display:flex;align-items:center;gap:9px;flex:0 0 auto}.onboarding-finish-actions form{margin:0}
.setup-list-compact{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.setup-list-compact .setup-item{align-items:flex-start}.setup-list-compact small{font-size:.68rem}
@media(max-width:1000px){.onboarding-start-grid{grid-template-columns:1fr 1fr}.setup-list-compact{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.onboarding-header{align-items:stretch}.onboarding-progress{align-items:flex-start;width:100%}.onboarding-step-head{grid-template-columns:auto minmax(0,1fr)}.onboarding-step-head>.badge{grid-column:2;justify-self:start}.onboarding-facts,.onboarding-start-grid,.setup-list-compact{grid-template-columns:1fr}.onboarding-finish{align-items:stretch;flex-direction:column}.onboarding-finish-actions{display:grid;grid-template-columns:1fr}.onboarding-finish-actions form,.onboarding-finish-actions .button,.onboarding-finish-actions button{width:100%}.onboarding-actions{display:grid;grid-template-columns:1fr}.onboarding-actions .button{width:100%}.onboarding-dashboard-card .section-head{align-items:stretch;flex-direction:column}.onboarding-dashboard-card .section-head .button{width:100%}}

/* Patch 073 – Anlassakte als gemeinsame Sicht auf bestehende Cockpit-Ressourcen */
.event-back{margin-bottom:10px}.event-back a{font-weight:750;text-decoration:none}
.event-detail-header{align-items:flex-start}.event-detail-meta{display:flex;gap:8px 14px;flex-wrap:wrap;margin-top:8px;color:var(--muted);font-size:.84rem}.event-detail-meta span{display:inline-flex;align-items:center;gap:5px}
.event-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.event-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:16px 0}.event-summary-card{display:grid;gap:3px;padding:14px;text-decoration:none;color:inherit}.event-summary-card:hover{border-color:#b8cdd3}.event-summary-card span{font-size:.76rem;font-weight:800;color:var(--muted)}.event-summary-card strong{font-size:1.5rem;line-height:1.05}.event-summary-card small{font-size:.72rem;color:var(--muted)}
.event-overview-card{margin-bottom:14px}.event-overview-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:18px}.event-overview-grid>div>span{display:block;margin-bottom:6px;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.event-overview-grid p{margin:0;line-height:1.55}
.event-section{margin-top:14px;scroll-margin-top:18px}.event-section>.section-head{align-items:center;margin-bottom:8px}.event-section>.section-head h2{margin:0}.event-add{position:relative}.event-add>summary{list-style:none;cursor:pointer;color:var(--accent);font-weight:800}.event-add>summary::-webkit-details-marker{display:none}.event-add[open]{width:min(720px,80vw)}
.event-inline-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-muted)}.event-form-wide{grid-column:1/-1}.event-inline-form .field{margin:0}.event-inline-form .form-actions{margin:0}
.event-resource-list{display:grid}.event-resource-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px 12px;align-items:center;padding:11px 0;border-top:1px solid var(--border)}.event-resource-row:first-child{border-top:0}.event-resource-row.is-done{opacity:.7}.event-resource-state{display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--border);border-radius:999px;font-weight:850}.event-resource-main{min-width:0}.event-resource-main>strong{display:block;line-height:1.4;overflow-wrap:anywhere}.event-resource-main a{text-decoration:none}.event-resource-meta{display:flex;gap:6px 12px;flex-wrap:wrap;margin-top:4px;color:var(--muted);font-size:.76rem}.event-resource-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.event-resource-actions form{margin:0}.event-empty-line{margin:8px 0 2px}
.event-secondary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.event-secondary-grid .event-section{margin-top:14px}.event-secondary-grid .event-resource-row{grid-template-columns:minmax(0,1fr) auto}.event-secondary-grid .event-resource-row .event-resource-state{display:none}
.event-link-card{margin-top:14px}.event-link-card details>summary{cursor:pointer;font-weight:800}.event-link-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:12px;align-items:end}.event-link-form select{min-width:0}
.annual-item-actions>a.button{align-self:flex-start}
@media(max-width:1050px){.event-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.event-secondary-grid{grid-template-columns:1fr 1fr}.event-inline-form{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.event-detail-header{gap:12px}.event-header-actions{justify-content:flex-start}.event-summary-grid{grid-template-columns:1fr 1fr}.event-overview-grid,.event-secondary-grid,.event-inline-form{grid-template-columns:1fr}.event-form-wide{grid-column:auto}.event-add[open]{width:100%}.event-resource-row{grid-template-columns:auto minmax(0,1fr)}.event-resource-actions{grid-column:2;justify-content:flex-start}.event-secondary-grid .event-resource-row{grid-template-columns:1fr}.event-secondary-grid .event-resource-actions{grid-column:1}.event-link-form{grid-template-columns:1fr}.event-link-form .button{width:100%}}


/* Patch 073a: Anlässe als eigener Arbeitsbereich */
.event-list-card{padding:0;overflow:hidden}.event-list-card>.section-head{padding:22px 24px 14px;margin:0}.event-list{display:flex;flex-direction:column}.event-list-row{display:grid;grid-template-columns:150px minmax(0,1fr) auto 24px;gap:16px;align-items:center;padding:16px 24px;border-top:1px solid var(--border,#d9e2e7);text-decoration:none;color:inherit;transition:background .15s ease}.event-list-row:hover{background:rgba(27,86,97,.055)}.event-list-date{font-weight:700;font-variant-numeric:tabular-nums}.event-list-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.event-list-copy strong{font-size:1rem}.event-list-copy small{color:var(--muted,#667985);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-list-badges{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.event-list-arrow{font-size:1.25rem}.event-list-empty{padding:0 24px 22px}.event-list-card details>summary{cursor:pointer;padding:18px 24px;font-weight:700;display:flex;justify-content:space-between}.event-list-card details[open]>summary{border-bottom:1px solid var(--border,#d9e2e7)}.event-list-past .event-list-row{opacity:.82}.annual-item-event-link{color:inherit;text-decoration:none}.annual-item-event-link:hover{text-decoration:underline}.annual-wheel-focus-item[href]{text-decoration:none;color:inherit}.annual-program-events{padding:0;overflow:hidden}.annual-program-events>.section-head{padding:18px 22px 10px}.annual-program-event-list,.dashboard-event-list{display:flex;flex-direction:column}.annual-program-event-list>a,.dashboard-event-list>a{display:grid;grid-template-columns:110px minmax(0,1fr) 20px;gap:14px;align-items:center;padding:13px 22px;border-top:1px solid var(--border,#d9e2e7);text-decoration:none;color:inherit}.annual-program-event-list>a:hover,.dashboard-event-list>a:hover{background:rgba(27,86,97,.055)}.annual-program-event-list>a>span:first-child,.dashboard-event-list>a>span:first-child{font-variant-numeric:tabular-nums;color:var(--muted,#667985)}.dashboard-events{padding:0;overflow:hidden}.dashboard-events>.section-head{padding:18px 22px 10px}.dashboard-event-list>a{grid-template-columns:125px minmax(0,1fr) 20px}
@media(max-width:760px){.event-list-row{grid-template-columns:1fr 24px;padding:14px 18px;gap:6px 12px}.event-list-date{grid-column:1}.event-list-copy{grid-column:1}.event-list-badges{grid-column:1;justify-content:flex-start;margin-top:4px}.event-list-arrow{grid-column:2;grid-row:1/4;align-self:center}.annual-program-event-list>a,.dashboard-event-list>a{grid-template-columns:1fr 20px;padding:13px 18px}.annual-program-event-list>a>span:first-child,.dashboard-event-list>a>span:first-child{grid-column:1}.annual-program-event-list>a>strong,.dashboard-event-list>a>strong{grid-column:1}.annual-program-event-list>a>span:last-child,.dashboard-event-list>a>span:last-child{grid-column:2;grid-row:1/3;align-self:center}}

.event-relative-fields{display:grid;grid-template-columns:4.75rem auto minmax(6.25rem,1fr);align-items:center;gap:.45rem;white-space:nowrap}.event-relative-fields input[type=number]{width:100%;min-width:0}.event-relative-fields select{width:100%;min-width:0}.event-relative-fields>span{white-space:nowrap}.event-task-deadline{margin-top:.35rem}.event-task-deadline>summary{cursor:pointer;color:var(--link-color,#255f85);font-size:.88rem;list-style:none}.event-task-deadline>summary::-webkit-details-marker{display:none}.event-deadline-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:.65rem;padding:.75rem;border:1px solid var(--border-color,#dfe5ea);border-radius:.65rem;background:var(--surface-muted,#f8fafb)}.event-deadline-form .form-actions{align-self:end}@media(max-width:760px){.event-deadline-form{grid-template-columns:1fr}}


/* Patch 074e – Aufgabenbearbeitung passt sich an die verfügbare Breite an */
.task-edit-form.task-create-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14.5rem),1fr))}
.task-edit-form .task-create-description,.task-edit-form .task-edit-actions{grid-column:1/-1}
@media(max-width:620px){.task-edit-form.task-create-grid{grid-template-columns:1fr}.task-edit-form .task-create-title,.task-edit-form .task-create-description,.task-edit-form .task-edit-actions{grid-column:auto}}

/* EVT-003 – Vereinsgedächtnis / Vorjahresübernahme */
.event-memory-card{margin:14px 0;padding:20px}.event-memory-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);gap:18px;align-items:end}.event-memory-head h2{margin:.2rem 0 .35rem}.event-memory-head p{margin:0}.event-memory-source-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 9px;align-items:end}.event-memory-source-form label{grid-column:1/-1;font-size:.72rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.event-memory-source-form select{min-width:0}.event-memory-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:16px 0}.event-memory-summary>div{display:grid;gap:2px;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.event-memory-summary span{font-size:.7rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.035em}.event-memory-summary strong{font-size:1.05rem}.event-memory-summary small{font-size:.7rem;color:var(--muted)}.event-memory-form{display:grid;gap:14px;padding-top:14px;border-top:1px solid var(--border)}.event-memory-form fieldset{min-width:0;margin:0;padding:13px 14px;border:1px solid var(--border);border-radius:11px}.event-memory-form legend{padding:0 5px;font-weight:850}.event-memory-form fieldset>p{margin:0 0 10px;font-size:.8rem}.event-memory-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.event-memory-option{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.event-memory-option input{margin-top:.2rem}.event-memory-option span{display:grid;gap:2px;min-width:0}.event-memory-option strong{font-size:.86rem;line-height:1.3;overflow-wrap:anywhere}.event-memory-option small{font-size:.72rem;color:var(--muted);line-height:1.35}.event-memory-option.is-disabled{opacity:.62;background:var(--surface-muted)}.event-memory-role{max-width:680px}.event-memory-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.event-memory-empty h2{margin:.2rem 0 .35rem}.event-memory-empty p{margin:0}
@media(max-width:1050px){.event-memory-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.event-memory-options{grid-template-columns:1fr}}
@media(max-width:720px){.event-memory-card{padding:16px}.event-memory-head{grid-template-columns:1fr}.event-memory-source-form{grid-template-columns:1fr}.event-memory-source-form label{grid-column:1}.event-memory-source-form .button{width:100%}.event-memory-summary{grid-template-columns:1fr 1fr}.event-memory-actions{align-items:stretch}.event-memory-actions .button{width:100%}}
/* Patch 077 – EVT-004 Lessons Learned */
.event-memory-lessons-fieldset{background:var(--surface-muted)}.event-memory-lessons{display:grid;gap:8px}.event-memory-lesson{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;padding:10px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.event-memory-lesson input{margin-top:.2rem}.event-memory-lesson span{display:grid;gap:3px;min-width:0}.event-memory-lesson strong{font-size:.86rem;line-height:1.4;font-weight:750}.event-memory-lesson small{font-size:.72rem;color:var(--muted)}.event-memory-lesson.is-disabled{opacity:.62}.event-memory-readonly-lessons{margin-top:14px;padding:13px 14px;border:1px solid var(--border);border-radius:11px;background:var(--surface-muted)}.event-memory-readonly-lessons h3{margin:0 0 9px;font-size:.95rem}.event-lessons-card{margin:14px 0;padding:20px}.event-lessons-card h2{margin:.2rem 0 .25rem}.event-lessons-list{display:grid;gap:8px;margin-top:12px}.event-lesson-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:12px 13px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.event-lesson-item p{margin:0 0 8px;line-height:1.45}.event-lesson-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.event-lesson-form textarea{min-height:84px;resize:vertical}.event-lesson-form .button{align-self:stretch;white-space:nowrap}
@media(max-width:900px){.event-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.event-memory-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.event-lessons-card{padding:16px}.event-lesson-item{grid-template-columns:1fr}.event-lesson-item .button{justify-self:start}.event-lesson-form{grid-template-columns:1fr}.event-lesson-form .button{width:100%}}
/* Patch 077a – sichtbarer Anlassbezug im Vereinswissen */
.knowledge-event-references{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:.35rem 0 .55rem}
.knowledge-event-reference-link{position:relative;z-index:2;display:inline-flex;align-items:center;gap:5px 7px;max-width:100%;padding:5px 9px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted);color:var(--text);text-decoration:none;font-size:.74rem;line-height:1.25}
.knowledge-event-reference-link:hover{border-color:#a8c9ce;background:#f7fbfb;text-decoration:none}
.knowledge-event-reference-link>span{color:var(--muted);font-weight:750}
.knowledge-event-reference-link>strong{overflow-wrap:anywhere}
.knowledge-event-reference-link>small{color:var(--muted);white-space:nowrap}
.knowledge-event-references-detail{margin:0 0 16px;padding:0 0 14px;border-bottom:1px solid var(--border)}
@media(max-width:520px){.knowledge-event-reference-link{align-items:flex-start;flex-wrap:wrap}.knowledge-event-reference-link>small{width:100%;padding-left:0}}
/* Patch 078 – EVT-005 automatischer Anlass-Check */
.event-readiness-card{margin:14px 0;padding:20px;border-left:4px solid var(--border)}
.event-readiness-card.is-success{border-left-color:var(--success)}
.event-readiness-card.is-warning{border-left-color:var(--warning)}
.event-readiness-card.is-danger{border-left-color:var(--danger)}
.event-readiness-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.event-readiness-head h2{margin:.2rem 0 0}
.event-readiness-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:7px 11px;border-radius:999px;background:var(--surface-muted);font-size:.78rem;font-weight:850;line-height:1.1}
.event-readiness-card.is-success .event-readiness-badge{background:#effaf4;color:var(--success)}
.event-readiness-card.is-warning .event-readiness-badge{background:#fff7e6;color:var(--warning)}
.event-readiness-card.is-danger .event-readiness-badge{background:#fff1f3;color:var(--danger)}
.event-readiness-summary{margin:10px 0 14px;line-height:1.45}
.event-readiness-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.event-readiness-facts>div,.event-readiness-facts>a{display:grid;gap:3px;min-width:0;padding:10px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted);color:inherit;text-decoration:none}
.event-readiness-facts>a:hover{border-color:#b8cdd3;background:var(--surface)}
.event-readiness-facts span{font-size:.7rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.035em}
.event-readiness-facts strong{font-size:.92rem;line-height:1.25;overflow-wrap:anywhere}
.event-readiness-facts small{font-size:.7rem;color:var(--muted);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:900px){.event-readiness-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.event-readiness-card{padding:16px}.event-readiness-head{align-items:flex-start;flex-direction:column;gap:9px}.event-readiness-facts{grid-template-columns:1fr 1fr}.event-readiness-facts>div:last-child{grid-column:1/-1}}
.event-comparison-card{margin:14px 0;padding:20px}.event-comparison-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.event-comparison-head h2{margin:.2rem 0 .25rem}.event-comparison-head p{margin:0}.event-comparison-head a{text-decoration:none}.event-comparison-head a:hover{text-decoration:underline}.event-comparison-summary{margin:12px 0 14px;line-height:1.45}.event-comparison-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.event-comparison-facts>div{display:grid;gap:3px;min-width:0;padding:10px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted)}.event-comparison-facts span{font-size:.7rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.035em}.event-comparison-facts strong{font-size:.92rem;line-height:1.25;overflow-wrap:anywhere}.event-comparison-facts small{font-size:.7rem;color:var(--muted);line-height:1.3}.event-comparison-caveat{margin:9px 0 0;font-size:.74rem}.event-comparison-history{margin-top:13px;padding-top:12px;border-top:1px solid var(--border)}.event-comparison-history>summary{cursor:pointer;font-weight:800;color:var(--accent)}.event-comparison-history-list{display:grid;gap:6px;margin-top:9px}.event-comparison-history-list>a{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted);color:inherit;text-decoration:none}.event-comparison-history-list>a:hover{border-color:#b8cdd3;background:var(--surface)}.event-comparison-history-list strong{font-size:.82rem}.event-comparison-history-list small{font-size:.72rem;color:var(--muted);line-height:1.35}.event-comparison-source{margin:11px 0 0;font-size:.72rem}
@media(max-width:900px){.event-comparison-facts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.event-comparison-card{padding:16px}.event-comparison-facts{grid-template-columns:1fr 1fr}.event-comparison-facts>div:last-child{grid-column:1/-1}}
.organisation-insights{padding:0;overflow:hidden}.organisation-insights-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;cursor:pointer;list-style:none}.organisation-insights-disclosure>summary::-webkit-details-marker{display:none}.organisation-insights-disclosure>summary strong{display:block;margin-top:2px;font-size:1rem}.organisation-insights-action{font-weight:800;color:var(--accent);white-space:nowrap}.organisation-insights-disclosure[open]>.organisation-insight-list{border-top:1px solid var(--border)}.organisation-insight-list{display:grid;gap:10px;padding:14px 20px 20px}.organisation-insight{display:grid;gap:9px;padding:15px 16px;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:11px;background:var(--surface)}.organisation-insight-heading{display:grid;gap:3px}.organisation-insight-heading>span,.organisation-insight-evidence>span,.organisation-insight-recommendation>span{font-size:.7rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.035em}.organisation-insight-heading>strong{font-size:1rem;line-height:1.3}.organisation-insight>p{margin:0;line-height:1.45}.organisation-insight-evidence,.organisation-insight-recommendation{display:grid;gap:2px;font-size:.82rem;line-height:1.4}.organisation-insight-recommendation{padding:9px 10px;border-radius:8px;background:var(--surface-muted)}.organisation-insight .button{justify-self:start}@media(max-width:620px){.organisation-insights-disclosure>summary{padding:16px}.organisation-insight-list{padding:12px 16px 16px}.organisation-insight{padding:13px 14px}}

/* Patch 081 – mobile-spezifische Hauptnavigation statt gequetschter Desktop-Navigation */
.mobile-topbar-brand,.mobile-account-menu,.mobile-menu-layer{display:none}
@media(max-width:760px){
  body{padding-bottom:env(safe-area-inset-bottom,0px)}
  body.mobile-menu-open{overflow:hidden}
  .desktop-topbar-brand,.desktop-topbar-actions{display:none!important}
  .topbar{position:sticky;top:0;z-index:45;min-height:64px;padding:calc(8px + env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) 8px max(12px,env(safe-area-inset-left,0px));background:rgba(255,255,255,.97);box-shadow:0 2px 10px rgba(22,37,49,.04);backdrop-filter:blur(10px)}
  .mobile-topbar-brand{display:grid;min-width:0;gap:1px}
  .mobile-topbar-brand strong{font-size:1rem;line-height:1.2;color:var(--text);white-space:nowrap}
  .mobile-topbar-brand span{max-width:min(68vw,360px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.72rem;line-height:1.25}
  .mobile-account-menu{display:block;position:relative;margin-left:auto}
  .mobile-account-menu>summary{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--brand);cursor:pointer;list-style:none}
  .mobile-account-menu>summary::-webkit-details-marker{display:none}
  .mobile-account-menu>summary svg{width:22px;height:22px;fill:currentColor}
  .mobile-account-menu[open]>summary{background:#eef6f7;border-color:#b7d0d5}
  .mobile-account-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:80;width:min(290px,calc(100vw - 24px));padding:8px;border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:0 18px 44px rgba(20,39,49,.18)}
  .mobile-account-person{display:grid;gap:2px;padding:9px 10px 11px;margin-bottom:4px;border-bottom:1px solid var(--border)}
  .mobile-account-person strong{font-size:.86rem;overflow-wrap:anywhere}
  .mobile-account-person span{font-size:.72rem;color:var(--muted);overflow-wrap:anywhere}
  .mobile-account-popover>a,.mobile-account-popover form button{display:flex;align-items:center;width:100%;min-height:44px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--text);text-align:left;text-decoration:none;font-size:.86rem;font-weight:700}
  .mobile-account-popover>a:hover,.mobile-account-popover>a:focus-visible,.mobile-account-popover form button:hover,.mobile-account-popover form button:focus-visible{background:var(--surface-muted);text-decoration:none}
  .mobile-account-popover>a.active{background:#eef6f7;color:var(--brand)}
  .mobile-account-popover form{margin:0;padding-top:4px;border-top:1px solid var(--border)}
  .mobile-account-popover form button{color:#7f2935;cursor:pointer}

  .content{padding:18px max(14px,env(safe-area-inset-right,0px)) calc(96px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px))}
  .mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));left:0;right:0;bottom:0;z-index:50;min-height:68px;padding:5px max(5px,env(safe-area-inset-right,0px)) calc(5px + env(safe-area-inset-bottom,0px)) max(5px,env(safe-area-inset-left,0px));background:rgba(255,255,255,.98);border-top:1px solid var(--border);box-shadow:0 -8px 24px rgba(20,39,49,.08);backdrop-filter:blur(12px)}
  .mobile-nav .mobile-nav-item{display:flex;min-width:0;min-height:56px;padding:5px 2px 3px;align-items:center;justify-content:center;flex-direction:column;gap:3px;border:0;border-radius:10px;background:transparent;color:#667681;text-decoration:none;font-size:.66rem;font-weight:700;line-height:1;cursor:pointer}
  .mobile-nav .mobile-nav-item svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
  .mobile-nav .mobile-nav-more svg circle{fill:currentColor;stroke:none}
  .mobile-nav .mobile-nav-item>span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mobile-nav .mobile-nav-item.active{background:#edf6f7;color:var(--brand);font-weight:850}
  .mobile-nav .mobile-nav-item:focus-visible{outline:2px solid rgba(31,122,136,.35);outline-offset:-2px}

  .mobile-menu-layer{position:fixed;inset:0;z-index:70;display:block}
  .mobile-menu-layer[hidden]{display:none!important}
  .mobile-menu-backdrop{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:rgba(11,26,34,.48);cursor:pointer}
  .mobile-more-sheet{position:absolute;left:0;right:0;bottom:0;max-height:min(78vh,680px);overflow:auto;padding:8px 14px calc(18px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0;background:#fff;box-shadow:0 -22px 60px rgba(11,26,34,.22)}
  .mobile-more-head{position:sticky;top:-8px;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 12px;background:#fff;border-bottom:1px solid var(--border)}
  .mobile-more-head>div{display:grid;gap:1px}
  .mobile-more-head span{font-size:.68rem;font-weight:800;color:var(--accent);text-transform:uppercase;letter-spacing:.06em}
  .mobile-more-head strong{font-size:1.02rem}
  .mobile-more-close{display:grid;place-items:center;flex:0 0 auto;width:44px;height:44px;min-height:44px;padding:0;border:1px solid var(--border);border-radius:11px;background:var(--surface-muted);color:var(--text);font-size:1.6rem;font-weight:400;line-height:1;cursor:pointer}
  .mobile-more-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px}
  .mobile-more-links>a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:50px;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:#fff;color:var(--text);text-decoration:none;font-size:.82rem;font-weight:750;line-height:1.25}
  .mobile-more-links>a b{color:#78909a;font-size:1.15rem;font-weight:700}
  .mobile-more-links>a.active{border-color:#aacbd0;background:#eef6f7;color:var(--brand)}
  .mobile-more-links>a.active b{color:var(--brand)}
}
@media(max-width:390px){
  .mobile-nav .mobile-nav-item{font-size:.62rem}
  .mobile-more-links{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.mobile-more-sheet{scroll-behavior:auto}}

/* Patch 082 – produktiver Vereinschat */
.chat-page-header p{margin:.25rem 0 0;color:var(--muted)}
.chat-mobile-back{display:none;text-decoration:none;white-space:nowrap}
.chat-shell{display:grid;grid-template-columns:minmax(260px,310px) minmax(0,1fr);gap:14px;align-items:start}
.chat-sidebar{padding:0;overflow:hidden;position:sticky;top:84px;max-height:calc(100vh - 110px)}
.chat-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 15px;border-bottom:1px solid var(--border)}
.chat-sidebar-head>div{display:flex;align-items:baseline;gap:7px}.chat-sidebar-head strong{font-size:.94rem}.chat-sidebar-head span{font-size:.72rem;color:var(--muted)}
.chat-sidebar-head>a{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:1.35rem;background:var(--surface-muted)}
.chat-conversation-list{display:grid;overflow-y:auto;max-height:calc(100vh - 170px)}
.chat-conversation{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:center;padding:11px 13px;text-decoration:none;color:var(--text);border-top:1px solid var(--border);min-width:0}
.chat-conversation:first-child{border-top:0}.chat-conversation:hover,.chat-conversation:focus-visible,.chat-conversation.active{background:#f1f7f8}.chat-conversation.active{box-shadow:inset 3px 0 0 var(--accent)}
.chat-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#deedf0;color:var(--brand);font-weight:850}
.chat-conversation-main{min-width:0;display:grid;gap:2px}.chat-conversation-title{display:flex;align-items:center;gap:6px;min-width:0}.chat-conversation-title strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem}.chat-conversation-title b{margin-left:auto;min-width:21px;height:21px;padding:0 6px;border-radius:11px;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:.68rem}
.chat-conversation-main small{font-size:.68rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-preview{font-size:.73rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-empty-small{padding:18px 15px;color:var(--muted);font-size:.84rem}
.chat-home{min-width:0}.chat-welcome{padding:22px}.chat-welcome h2{margin:.2rem 0 18px}.chat-start-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.chat-start-card{border:1px solid var(--border);border-radius:12px;padding:15px;background:#fafcfd;display:grid;gap:10px;align-content:start;margin:0;min-width:0}.chat-start-card>strong,.chat-topic-create>summary strong{font-size:.95rem}.chat-start-card p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.4}.chat-start-card .button{margin-top:auto}
.chat-topic-create>summary{list-style:none;cursor:pointer;display:grid;gap:5px}.chat-topic-create>summary::-webkit-details-marker{display:none}.chat-topic-create>summary span{font-size:.78rem;line-height:1.4;color:var(--muted)}.chat-topic-create[open]{grid-column:1/-1}.chat-topic-create[open]>summary{padding-bottom:10px;border-bottom:1px solid var(--border)}.chat-topic-create form{display:grid;gap:12px}.chat-topic-create fieldset{border:1px solid var(--border);border-radius:10px;margin:0;padding:11px}.chat-topic-create legend{font-size:.76rem;font-weight:800;color:var(--muted);padding:0 5px}.chat-topic-create .field{margin:0}
.chat-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:220px;overflow:auto}.chat-choice-grid label{margin:0;display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;padding:8px;border-radius:8px;background:#fff;border:1px solid transparent;font-weight:650;font-size:.8rem}.chat-choice-grid label:hover{border-color:var(--border)}.chat-choice-grid input{width:18px!important;height:18px!important;min-height:18px!important;padding:0!important;margin:1px 0 0}
.chat-room{padding:0;overflow:hidden;min-width:0;min-height:68vh;display:flex;flex-direction:column}.chat-room-head{padding:14px 17px;border-bottom:1px solid var(--border);background:#fff}.chat-room-head h2{margin:0;font-size:1.05rem}.chat-room-head p{margin:3px 0 0;font-size:.72rem;color:var(--muted)}
.chat-history-bar,.chat-older{padding:9px 16px;text-align:center;background:#f8fafb;border-bottom:1px solid var(--border);font-size:.76rem}.chat-older{border-top:1px solid var(--border);border-bottom:0}.chat-history-bar a,.chat-older a{font-weight:700;text-decoration:none}
.chat-live-notice{position:sticky;top:8px;z-index:4;text-align:center;height:0}.chat-live-notice button{min-height:34px;padding:0 12px;border-radius:18px;background:var(--brand);color:#fff;box-shadow:var(--shadow);font-size:.74rem}
.chat-messages{display:flex;flex:1;flex-direction:column;gap:11px;padding:18px;min-height:420px;max-height:calc(100vh - 310px);overflow-y:auto;scroll-behavior:smooth;background:#fbfcfd}
.chat-empty-room{margin:auto;display:grid;gap:4px;text-align:center;color:var(--muted)}.chat-empty-room strong{color:var(--text)}
.chat-message{align-self:flex-start;width:min(78%,720px);display:grid;gap:4px;scroll-margin-top:20px}.chat-message.is-mine{align-self:flex-end}.chat-message-meta{display:flex;gap:7px;align-items:baseline;padding:0 4px;font-size:.66rem;color:var(--muted)}.chat-message-meta strong{font-size:.71rem;color:var(--text)}.chat-message.is-mine .chat-message-meta{justify-content:flex-end}
.chat-bubble{border:1px solid var(--border);border-radius:5px 14px 14px 14px;background:#fff;padding:10px 12px;box-shadow:0 2px 6px rgba(22,37,49,.025);overflow-wrap:anywhere}.chat-message.is-mine .chat-bubble{border-radius:14px 5px 14px 14px;background:#eaf4f5;border-color:#cfe2e5}.chat-bubble p{margin:0;font-size:.88rem;line-height:1.48;white-space:normal}.chat-message.is-deleted .chat-bubble{background:var(--surface-muted);box-shadow:none}.chat-deleted-text{font-style:italic;color:var(--muted)}
.chat-reply-quote{display:grid;gap:2px;margin:-2px -2px 8px;padding:7px 9px;border-left:3px solid var(--accent);background:rgba(255,255,255,.62);border-radius:6px}.chat-reply-quote strong{font-size:.7rem}.chat-reply-quote span{font-size:.7rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-message-actions{display:flex;gap:7px;align-items:flex-start;padding:0 4px;min-height:25px}.chat-message.is-mine .chat-message-actions{justify-content:flex-end}.chat-message-actions>.button-link{min-height:25px;font-size:.68rem;font-weight:700}.chat-own-actions{position:relative}.chat-own-actions>summary{list-style:none;cursor:pointer;color:var(--muted);padding:1px 6px;font-weight:800}.chat-own-actions>summary::-webkit-details-marker{display:none}.chat-own-actions>div{position:absolute;right:0;top:26px;z-index:8;width:min(330px,80vw);padding:11px;border:1px solid var(--border);border-radius:11px;background:#fff;box-shadow:var(--shadow)}.chat-own-actions form{margin:0}.chat-own-actions form+form{margin-top:7px;padding-top:7px;border-top:1px solid var(--border)}.chat-own-actions textarea{min-height:90px;font-size:.8rem}.chat-own-actions .button{margin-top:7px}.chat-delete-link{color:var(--danger);min-height:34px}
.chat-composer{position:sticky;bottom:0;z-index:5;display:grid;gap:8px;padding:11px 14px 12px;border-top:1px solid var(--border);background:rgba(255,255,255,.97);backdrop-filter:blur(8px)}.chat-compose-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.chat-compose-row textarea{min-height:50px;max-height:180px;resize:vertical}.chat-send{align-self:stretch;min-width:82px}.chat-replying{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;border-radius:9px;background:var(--surface-muted);border-left:3px solid var(--accent)}.chat-replying>span{min-width:0;display:grid;gap:1px}.chat-replying strong,.chat-replying small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-replying strong{font-size:.72rem}.chat-replying small{font-size:.69rem;color:var(--muted)}.chat-replying button{min-height:30px;width:30px;padding:0;background:transparent;color:var(--muted)}
.chat-compose-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chat-compose-tools label{display:flex;align-items:center;gap:7px;margin:0;font-size:.7rem;color:var(--muted)}.chat-compose-tools select{min-height:34px;width:auto;max-width:230px;padding:5px 9px;font-size:.72rem}.chat-compose-tools small{font-size:.66rem;color:var(--muted)}

@media (max-width: 900px){.chat-start-grid{grid-template-columns:1fr}.chat-topic-create[open]{grid-column:auto}.chat-choice-grid{grid-template-columns:1fr}.chat-shell{grid-template-columns:minmax(220px,270px) minmax(0,1fr)}}
@media (max-width: 760px){
  .chat-page-header{align-items:center;margin-bottom:14px}.chat-page-header p{font-size:.8rem}.chat-mobile-back{display:inline-flex;min-height:38px;padding:0 11px}
  .chat-shell{display:block}.chat-sidebar{position:static;max-height:none}.chat-shell.has-channel .chat-sidebar{display:none}.chat-conversation-list{max-height:none}.chat-conversation{padding:12px 13px}.chat-avatar{width:42px;height:42px}
  .chat-home{margin-top:12px}.chat-welcome{padding:16px}.chat-start-card{padding:14px}.chat-room{min-height:calc(100dvh - 210px);border-radius:13px}.chat-room-head{padding:12px 13px}
  .chat-messages{min-height:320px;max-height:none;padding:13px 10px 18px;overflow:visible}.chat-message{width:min(91%,680px)}.chat-bubble{padding:10px 11px}.chat-bubble p{font-size:.9rem}.chat-message-meta{font-size:.64rem}
  .chat-composer{bottom:calc(64px + env(safe-area-inset-bottom));margin-bottom:0;padding:9px 10px;background:rgba(255,255,255,.985)}.chat-compose-row{grid-template-columns:minmax(0,1fr) auto}.chat-compose-row textarea{min-height:46px;max-height:135px}.chat-send{min-width:68px;padding-inline:12px}.chat-compose-tools small{display:none}.chat-compose-tools label{width:100%}.chat-compose-tools select{flex:1;max-width:none}
  .chat-own-actions>div{position:fixed;left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));top:auto;width:auto;max-height:55vh;overflow:auto}.chat-live-notice{top:70px}
}
.chat-room-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.chat-participants{position:relative;flex:0 0 auto}.chat-participants>summary{list-style:none;cursor:pointer;font-size:.72rem;font-weight:750;color:var(--brand);padding:4px 0}.chat-participants>summary::-webkit-details-marker{display:none}.chat-participants>div{position:absolute;right:0;top:28px;z-index:9;width:min(260px,75vw);max-height:300px;overflow:auto;display:grid;padding:8px;border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:var(--shadow)}.chat-participants>div span{padding:7px 8px;border-top:1px solid var(--border);font-size:.76rem}.chat-participants>div span:first-child{border-top:0}
@media(max-width:760px){.chat-room-head{gap:8px}.chat-participants>div{position:fixed;left:12px;right:12px;top:auto;bottom:calc(76px + env(safe-area-inset-bottom));width:auto;max-height:48vh}}

/* Patch 083 – Chat-Umfragen, Inline-Erwähnungen und Dokumentreferenzen */
.chat-compose-zone{position:sticky;bottom:0;z-index:6;border-top:1px solid var(--border);background:rgba(255,255,255,.98);backdrop-filter:blur(8px)}
.chat-compose-zone .chat-composer{position:static;bottom:auto;border-top:0;background:transparent;backdrop-filter:none}
.chat-compose-tools{justify-content:space-between;color:var(--muted);font-size:.7rem}
.chat-compose-tools>span{display:flex;align-items:center;gap:3px}.chat-compose-tools>span strong{color:var(--brand);font-size:.78rem}
.chat-compose-tools>.button-link{min-height:30px;font-size:.72rem;font-weight:800}
.chat-inline-suggestions{position:absolute;left:14px;right:14px;bottom:calc(100% - 6px);z-index:20;max-height:280px;overflow:auto;padding:6px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 16px 40px rgba(20,39,49,.18)}
.chat-inline-suggestions[hidden]{display:none!important}
.chat-inline-suggestion{display:flex;width:100%;min-height:42px;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.chat-inline-suggestion:hover,.chat-inline-suggestion.is-active{background:var(--surface-muted)}
.chat-inline-suggestion>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:750}.chat-inline-suggestion small{flex:0 0 auto;font-size:.66rem;color:var(--muted)}
.chat-selected-documents{display:flex;gap:6px;flex-wrap:wrap}.chat-selected-documents[hidden]{display:none!important}
.chat-selected-document{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 7px 4px 9px;border:1px solid #c9dfe3;border-radius:16px;background:#edf6f7;color:var(--brand);font-size:.72rem;font-weight:750}
.chat-selected-document span{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-selected-document button{display:grid;place-items:center;width:24px;height:24px;min-height:24px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.75);color:var(--muted);cursor:pointer}
.chat-document-links{display:grid;gap:6px;margin-top:8px}.chat-document-links>a{display:flex;align-items:center;gap:8px;min-width:0;padding:8px 9px;border:1px solid #cbdfe3;border-radius:9px;background:rgba(237,246,247,.82);color:var(--brand);font-size:.76rem;font-weight:750;text-decoration:none}.chat-document-links>a span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-document-links>a:hover{text-decoration:none;background:#e2f0f2}
.chat-message.is-poll{width:min(86%,760px)}.chat-message.is-poll .chat-bubble{padding:12px}.chat-poll-question{font-weight:780;font-size:.94rem!important}
.chat-poll{display:grid;gap:9px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(105,132,143,.2)}
.chat-poll-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.chat-poll-meta strong{font-size:.69rem;text-transform:uppercase;letter-spacing:.055em;color:var(--accent)}.chat-poll-meta span{font-size:.67rem;color:var(--muted)}
.chat-poll-options{display:grid;gap:7px}.chat-poll-option{display:grid;gap:5px;padding:8px 9px;border:1px solid rgba(107,133,143,.2);border-radius:9px;background:rgba(255,255,255,.7);margin:0}.chat-poll-option.is-selected{border-color:#9fc8ce;background:#f1f8f9}
.chat-poll-choice{display:flex;align-items:flex-start;gap:8px;min-width:0;font-size:.79rem;font-weight:700}.chat-poll-choice input{flex:0 0 auto;width:17px!important;height:17px!important;min-height:17px!important;margin:1px 0 0;padding:0!important}.chat-poll-choice span{min-width:0;overflow-wrap:anywhere}
.chat-poll-result{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.chat-poll-result small{font-size:.64rem;color:var(--muted);white-space:nowrap}.chat-poll-bar{display:block;height:5px;overflow:hidden;border-radius:5px;background:#e8eef0}.chat-poll-bar>span{display:block;height:100%;border-radius:inherit;background:#7fb3bc;transition:width .2s ease}
.chat-poll-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.68rem;color:var(--muted)}.chat-poll-close{margin:0;text-align:right}.chat-poll-close .button-link{min-height:28px;font-size:.67rem;color:var(--muted)}
.chat-poll-composer{display:grid;gap:10px;padding:12px 14px 14px;border-top:1px solid var(--border);background:#fbfcfd}.chat-poll-composer[hidden]{display:none!important}
.chat-poll-composer-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.chat-poll-composer-head strong{font-size:.86rem}.chat-poll-composer-head button{display:grid;place-items:center;width:32px;height:32px;min-height:32px;padding:0;border:0;border-radius:8px;background:var(--surface-muted);color:var(--muted);font-size:1.25rem;cursor:pointer}
.chat-poll-composer .field{margin:0}.chat-poll-option-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.chat-poll-add-option{justify-self:start;min-height:28px;font-size:.7rem}.chat-poll-settings{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px);gap:12px;align-items:end}.chat-poll-settings .checkbox-row{align-self:center;margin:0}.chat-poll-composer .form-actions{margin-top:0}
@media(max-width:900px){.chat-poll-option-fields{grid-template-columns:1fr}.chat-poll-settings{grid-template-columns:1fr}}
@media(max-width:760px){
  .chat-compose-zone{bottom:calc(64px + env(safe-area-inset-bottom));margin-bottom:0}
  .chat-compose-zone .chat-composer{padding:9px 10px}.chat-inline-suggestions{position:fixed;left:10px;right:10px;bottom:calc(138px + env(safe-area-inset-bottom));max-height:38vh}
  .chat-message.is-poll{width:min(96%,760px)}.chat-poll-composer{padding:10px}.chat-poll-footer{align-items:flex-end}.chat-poll-footer .button{flex:0 0 auto}.chat-selected-document span{max-width:62vw}
}

/* Patch 084 – formelle Umlaufbeschlüsse + Chat-Politur */
.chat-room{border:1px solid #cbdbe0;box-shadow:0 8px 24px rgba(22,79,89,.08);background:#fff}
.chat-compose-zone{border-top:1px solid #bfd2d8;box-shadow:0 -6px 18px rgba(22,79,89,.06);background:#fff}
.chat-compose-tools>.button-link[data-chat-poll-toggle]{min-height:38px;padding:7px 11px;border:1px solid #bdd4d9;border-radius:9px;background:#eef7f8;color:var(--brand);font-size:.78rem;font-weight:800;text-decoration:none}
.chat-compose-tools>.button-link[data-chat-poll-toggle]:hover,.chat-compose-tools>.button-link[data-chat-poll-toggle]:focus-visible{background:#e3f1f3;border-color:#8fbac1}
.chat-poll-settings .checkbox-row{display:flex;align-items:center;gap:9px;margin:0;min-height:42px;font-size:.82rem;font-weight:650}
.chat-poll-settings .checkbox-row input[type="checkbox"]{width:18px!important;height:18px!important;min-height:18px!important;max-width:18px!important;padding:0!important;margin:0!important;flex:0 0 18px}

.decision-legal-note{margin:12px 0 16px;padding:11px 13px;border:1px solid #d9e2e6;border-radius:10px;background:#f7fafb;color:var(--muted);font-size:.78rem;line-height:1.45}
.decision-list-card,.decision-create-card,.decision-summary-card,.decision-progress-card,.decision-vote-card,.decision-documents-card,.decision-participants-card,.decision-edit-card,.decision-start-card,.decision-manage-card,.decision-danger-card{margin-top:14px}
.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.section-heading>div{display:grid;gap:2px}.section-heading>div>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.section-heading h2{margin:0;font-size:1.15rem}
.decision-list{display:grid}.decision-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 4px;border-top:1px solid var(--border);color:inherit;text-decoration:none}.decision-row:first-child{border-top:0}.decision-row:hover,.decision-row:focus-visible{background:#f8fbfb;outline:none}.decision-row-main{display:grid;gap:4px;min-width:0}.decision-row-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.decision-row-title strong{font-size:.94rem}.decision-row-main small,.decision-row-meta small{color:var(--muted);font-size:.72rem}.decision-row-meta{display:grid;text-align:right;gap:2px}.decision-row-meta b{font-size:.78rem}
.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:3px 9px;border-radius:999px;font-size:.69rem;font-weight:800;background:#eef2f4;color:#586975}.decision-status-open{background:#e7f3f5;color:#145965}.decision-status-draft{background:#f1f2f4;color:#59646e}.decision-status-closed{background:#e8f4ec;color:#285d3e}.decision-status-cancelled{background:#f6eded;color:#8c3843}
.decision-create-card>summary,.decision-edit-card>summary,.decision-danger-card>summary{cursor:pointer;list-style:none}.decision-create-card>summary::-webkit-details-marker,.decision-edit-card>summary::-webkit-details-marker,.decision-danger-card>summary::-webkit-details-marker{display:none}.decision-create-card>summary>span,.decision-edit-card>summary>span,.decision-danger-card>summary>span{display:grid;gap:3px}.decision-create-card>summary small,.decision-edit-card>summary small{color:var(--muted);font-weight:500}.decision-form{display:grid;gap:14px;margin-top:18px}.form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.decision-participants{margin:0;padding:13px;border:1px solid var(--border);border-radius:12px}.decision-participants legend{padding:0 6px;font-weight:800}.decision-participants>p{margin:0 0 10px;color:var(--muted);font-size:.76rem}.decision-person-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.decision-person{display:flex;align-items:flex-start;gap:9px;margin:0;padding:10px;border:1px solid var(--border);border-radius:9px;background:#fff;cursor:pointer}.decision-person[hidden]{display:none!important}.decision-person input[type="checkbox"]{width:18px!important;height:18px!important;min-height:18px!important;max-width:18px!important;padding:0!important;margin:2px 0 0!important;flex:0 0 18px}.decision-person>span{display:grid;min-width:0}.decision-person strong{font-size:.8rem}.decision-person small{font-size:.68rem;color:var(--muted)}.decision-no-people{padding:12px;text-align:center;color:var(--muted);font-size:.78rem}.decision-form-note{padding:10px 12px;border-radius:9px;background:#f4f7f8;color:var(--muted);font-size:.75rem}
.decision-summary-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.decision-summary-head>div:first-child{min-width:0}.decision-summary-head>div:first-child>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.decision-summary-head p{font-size:1rem;line-height:1.5;margin:8px 0}.decision-summary-head details{margin-top:10px}.decision-summary-head details summary{color:var(--brand);cursor:pointer;font-weight:700}.decision-result{flex:0 0 min(210px,35%);padding:12px;border-radius:12px;display:grid;gap:2px;background:#eef3f5}.decision-result small{font-size:.68rem;text-transform:uppercase;color:var(--muted);font-weight:800}.decision-result strong{font-size:.95rem}.decision-result-accepted{background:#e7f4eb;color:#285d3e}.decision-result-rejected,.decision-result-no_quorum{background:#f7eeee;color:#893844}.decision-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:16px}.decision-facts>div{padding:10px;border:1px solid var(--border);border-radius:10px;background:#f8fafb;display:grid;gap:3px}.decision-facts small{font-size:.66rem;text-transform:uppercase;color:var(--muted);font-weight:800}.decision-facts strong{font-size:.8rem}
.decision-progress{height:9px;border-radius:999px;background:#e7edef;overflow:hidden}.decision-progress>span{display:block;height:100%;background:#73aeb8;border-radius:inherit}.decision-progress-note{margin:9px 0 0;color:var(--muted);font-size:.76rem}.decision-vote-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.decision-vote-totals>div{display:grid;text-align:center;padding:10px;border:1px solid var(--border);border-radius:9px}.decision-vote-totals strong{font-size:1.1rem}.decision-vote-totals span{font-size:.7rem;color:var(--muted)}
.decision-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:13px}.decision-choice{margin:0;position:relative}.decision-choice input{position:absolute;opacity:0;pointer-events:none}.decision-choice span{display:flex;align-items:center;justify-content:center;min-height:48px;padding:8px;border:1px solid var(--border);border-radius:10px;background:#fff;font-weight:800;cursor:pointer}.decision-choice input:checked+span{border-color:#79adb5;background:#edf7f8;color:var(--brand);box-shadow:inset 0 0 0 1px rgba(31,122,136,.15)}.decision-choice input:focus-visible+span{outline:3px solid rgba(31,122,136,.18);outline-offset:2px}.decision-vote-note{margin:10px 0 0;color:var(--muted);font-size:.72rem}
.decision-document-list,.decision-participant-list{display:grid}.decision-document-list>div,.decision-participant-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--border)}.decision-document-list>div:first-child,.decision-participant-list>div:first-child{border-top:0}.decision-document-list a{color:var(--brand);text-decoration:none}.decision-document-list form{margin:0}.decision-document-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;margin-top:12px}.decision-participant-list>div>span{display:grid;gap:2px}.decision-participant-list small,.decision-participant-list time{font-size:.7rem;color:var(--muted)}
.decision-start-card{display:flex;align-items:center;justify-content:space-between;gap:18px;border-color:#b9d7dc;background:#f5fbfb}.decision-start-card p{margin:4px 0 0;color:var(--muted);font-size:.76rem;max-width:760px}.decision-start-card form{margin:0;flex:0 0 auto}.decision-manage-actions{display:grid;grid-template-columns:auto minmax(280px,1fr);gap:14px;align-items:end}.decision-manage-actions form{margin:0}.decision-danger-card{border-color:#ead0d4;background:#fffafb}.decision-danger-card form{display:grid;gap:10px;margin-top:12px}
.public-decision{display:grid;gap:15px}.public-decision h1{margin:0;font-size:1.55rem}.public-decision-text{padding:14px;border:1px solid var(--border);border-radius:11px;background:#fbfcfd}.public-decision-text p{line-height:1.5}.public-decision-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px}.public-decision-facts span{display:grid;gap:2px;padding:10px;border:1px solid var(--border);border-radius:9px}.public-decision-facts small{font-size:.68rem;color:var(--muted)}.public-decision-docs{padding:12px;border:1px solid var(--border);border-radius:10px}.public-decision-docs ul{margin:8px 0;padding-left:20px}.public-decision-docs small,.public-decision-note{font-size:.72rem;color:var(--muted);line-height:1.45}.public-decision-vote{display:grid;gap:12px}.public-decision-result{display:grid;gap:3px;padding:14px;border-radius:10px;background:#edf6f1}.public-decision-result small{color:var(--muted);font-size:.7rem}.public-decision-result strong{font-size:1.05rem}

@media(max-width:760px){
  .chat-compose-tools>.button-link[data-chat-poll-toggle]{min-height:42px;padding:9px 12px;font-size:.82rem}
  .chat-room{box-shadow:0 5px 18px rgba(22,79,89,.09)}
  .form-grid.two,.form-grid.three,.decision-person-grid,.decision-facts{grid-template-columns:1fr}
  .decision-row{grid-template-columns:1fr}.decision-row-meta{text-align:left;grid-template-columns:auto 1fr;align-items:center;gap:8px}
  .decision-summary-head{display:grid}.decision-result{width:100%;max-width:none}.decision-choice-grid{grid-template-columns:1fr 1fr 1fr}
  .decision-start-card{display:grid}.decision-start-card form,.decision-start-card .button{width:100%}.decision-manage-actions{grid-template-columns:1fr}.decision-document-add{grid-template-columns:1fr}.decision-document-add .button{width:100%}
  .public-decision-facts{grid-template-columns:1fr}.decision-participant-list>div{align-items:flex-start}.decision-vote-totals{grid-template-columns:repeat(3,1fr)}
}

/* Patch 084d – Umlaufbeschluss: semantische Abstimmung + zentrale Unterlagen */
.decision-choice-yes span{border-color:#c4ddcd;background:#f4faf6;color:#285d3e}.decision-choice-no span{border-color:#ebc9c4;background:#fff7f5;color:#8d3a34}.decision-choice-abstain span{border-color:#e5d59c;background:#fffbed;color:#705b12}
.decision-choice-yes input:checked+span{border-color:#76af89;background:#e7f4eb;color:#215c36;box-shadow:inset 0 0 0 1px rgba(40,93,62,.13)}.decision-choice-no input:checked+span{border-color:#cf8278;background:#fbeae7;color:#8b322d;box-shadow:inset 0 0 0 1px rgba(139,50,45,.12)}.decision-choice-abstain input:checked+span{border-color:#c9aa43;background:#fff4cc;color:#6b5510;box-shadow:inset 0 0 0 1px rgba(107,85,16,.12)}
.decision-document-actions{display:grid;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.decision-document-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end}.decision-document-upload .field{margin:0}.decision-document-upload input[type=file]{min-height:44px;padding:8px 10px}.public-decision-doc-link{margin-top:4px;width:fit-content}
@media(max-width:640px){.decision-document-upload{grid-template-columns:1fr}.decision-document-upload .button,.public-decision-doc-link{width:100%}.public-decision-doc-link{justify-content:center}}

/* Patch 085 – zentrales Beschlussregister */
.decision-register-card,.decision-register-detail-card,.decision-register-tracking{margin-top:14px}.decision-register-filters{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(150px,.6fr) minmax(170px,.7fr) auto;gap:10px;align-items:end;margin:12px 0 4px}.decision-register-filters .field{margin:0}.decision-register-filter-actions{display:flex;gap:7px;align-items:center;padding-bottom:1px}.decision-register-list .decision-row-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.78rem;line-height:1.42;color:#334650}.decision-validity-active{background:#e8f4ec;color:#285d3e}.decision-validity-future{background:#edf3f8;color:#355e77}.decision-validity-superseded,.decision-validity-expired{background:#f1f2f4;color:#66727b}.decision-validity-pending{background:#fff5db;color:#725916}.decision-validity-not_valid{background:#f7eeee;color:#893844}.decision-register-text{font-size:1rem;line-height:1.55;color:#1c303d}.decision-register-facts{margin-top:16px}.decision-register-facts>div{min-width:0}.decision-source-link{display:inline-flex;margin-top:3px;color:var(--brand);font-size:.72rem;font-weight:700;text-decoration:none}.decision-register-votes{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.decision-register-votes span{display:inline-flex;align-items:baseline;gap:4px;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:#f8fafb;font-size:.72rem}.decision-register-votes b{font-size:.86rem}.decision-register-tracking-form{display:grid;gap:12px}.decision-register-tracking-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.decision-register-tracking-summary>div{display:grid;gap:3px;padding:10px;border:1px solid var(--border);border-radius:10px;background:#f8fafb}.decision-register-tracking-summary small{font-size:.67rem;color:var(--muted);text-transform:uppercase;font-weight:800}.decision-register-tracking-summary strong{font-size:.8rem}.decision-register-relation{display:flex;align-items:center;gap:9px;margin-top:10px;padding:9px 11px;border-radius:9px;background:#f3f7f8;font-size:.76rem}.decision-register-relation>span{font-weight:800;color:var(--muted)}.decision-register-relation a{color:var(--brand);font-weight:700;text-decoration:none}.decision-register-relation.is-replaced{background:#f5f2f2}.decision-register-document-add{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
@media(max-width:900px){.decision-register-filters{grid-template-columns:1fr 1fr}.decision-register-filter-actions{align-self:end}.decision-register-tracking-summary{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.decision-register-filters,.decision-register-tracking-summary{grid-template-columns:1fr}.decision-register-filter-actions{justify-content:stretch}.decision-register-filter-actions .button{flex:1;justify-content:center}.decision-register-list .decision-row{padding:12px 2px}.decision-register-votes{display:grid;grid-template-columns:repeat(3,1fr)}.decision-register-votes span{justify-content:center}}

/* Patch 086 – Konto & Passkeys */
.account-link{color:inherit;text-decoration:none;font-weight:700;border-radius:8px;padding:5px 7px}.account-link:hover,.account-link:focus-visible{background:var(--surface-muted);color:var(--brand)}
.passkey-login{display:grid;gap:8px}.passkey-login-button,.auth-email-button{width:100%;justify-content:center}.auth-divider{display:flex;align-items:center;gap:10px;margin:15px 0;color:var(--muted);font-size:.72rem}.auth-divider::before,.auth-divider::after{content:"";height:1px;background:var(--border);flex:1}.auth-divider span{white-space:nowrap}
.account-security-head{margin-bottom:14px}.account-security-head p{margin:.25rem 0 0}.account-security-card{display:grid;gap:16px}.account-security-section-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.account-security-section-head h2{margin:0}.account-security-section-head p{margin:.25rem 0 0}.passkey-add-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;align-items:end}.passkey-add-row .field{margin:0}.passkey-list{display:grid;border-top:1px solid var(--border)}.passkey-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--border)}.passkey-row-main{display:flex;align-items:center;gap:11px;min-width:0}.passkey-icon{width:38px;height:38px;border-radius:10px;background:var(--surface-muted);display:grid;place-items:center;font-size:1.05rem}.passkey-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.7rem;margin-top:3px}.passkey-actions{flex:0 0 auto}.passkey-actions>summary{cursor:pointer;color:var(--brand);font-size:.76rem;font-weight:750}.passkey-actions>div{display:grid;gap:10px;margin-top:10px;padding:10px;border:1px solid var(--border);border-radius:10px;min-width:240px;background:#fff}.passkey-actions form{margin:0}.passkey-actions .field{margin-bottom:8px}.account-security-fallback{margin:0;color:var(--muted);font-size:.74rem}.compact-empty{padding:15px}
@media(max-width:640px){.passkey-add-row{grid-template-columns:1fr}.passkey-add-row .button{width:100%;justify-content:center}.passkey-row{align-items:flex-start}.passkey-row-main{align-items:flex-start}.passkey-actions>div{min-width:min(250px,70vw)}.account-security-section-head{align-items:center}}

/* Patch 087: Session lifecycle */
.session-timeout[hidden]{display:none!important}
.session-timeout{position:fixed;right:20px;bottom:20px;z-index:1600;width:min(430px,calc(100vw - 32px))}
.session-timeout-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border:1px solid #d9c98c;border-radius:14px;background:#fffdf4;box-shadow:0 18px 50px rgba(20,39,49,.2)}
.session-timeout-card>div{min-width:0;display:grid;gap:3px}
.session-timeout-card strong{font-size:.9rem}
.session-timeout-card span{font-size:.78rem;color:var(--text)}
.session-timeout-card span b{font-variant-numeric:tabular-nums}
.session-timeout-card small{min-height:1em;font-size:.68rem;color:var(--muted)}
.session-timeout-card .button{flex:0 0 auto;white-space:nowrap}
@media(max-width:800px){
  .session-timeout{left:10px;right:10px;bottom:calc(78px + env(safe-area-inset-bottom,0px));width:auto}
  .session-timeout-card{gap:10px;padding:12px}
  .session-timeout-card .button{padding-inline:12px;font-size:.74rem}
}


/* Patch 088 – Produkt- und Unterstützungseinstellungen */
.product-settings-form h3{margin:22px 0 10px}.product-setting-list{display:grid;gap:10px}.product-setting-row{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--border,#dfe4e8);border-radius:12px;padding:14px 16px;cursor:pointer}.product-setting-row span{display:grid;gap:3px}.product-setting-row small{color:var(--muted,#667085);font-weight:400}.product-setting-row input[type="checkbox"]{width:20px;height:20px;min-width:20px;margin:0}.support-intensity-form{display:grid;gap:10px}.support-intensity-option{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--border,#dfe4e8);border-radius:12px;padding:13px 15px;cursor:pointer}.support-intensity-option:has(input:checked){border-color:#8aa7a1;box-shadow:0 0 0 1px #8aa7a1 inset}.support-intensity-option input{width:18px;height:18px;min-width:18px;margin:2px 0 0}.support-intensity-option span{display:grid;gap:2px}.support-intensity-option small{color:var(--muted,#667085)}
@media(max-width:640px){.product-setting-row{align-items:flex-start}.product-setting-row input[type="checkbox"]{margin-top:2px}}

/* Patch 089 – Anlass-Teilnahme, Helferplanung und einheitliche Bestätigungs-Toasts */
.event-participation-card{display:grid;gap:14px}.event-participation-form{display:grid;gap:14px}.participation-checks{display:flex;flex-wrap:wrap;gap:8px 14px;min-height:42px;align-items:center}.participation-checks label{display:flex;align-items:center;gap:7px;font-size:.82rem}.participation-checks input[type="checkbox"]{width:17px;height:17px;min-width:17px;margin:0}.participation-member-picker,.participation-response-list{border:1px solid var(--border);border-radius:12px;padding:0 14px;background:#fbfcfd}.participation-member-picker>summary,.participation-response-list>summary{cursor:pointer;font-weight:700;padding:12px 0}.participation-picker-actions{display:flex;gap:4px;padding:0 0 8px}.participation-member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-bottom:14px;max-height:320px;overflow:auto}.participation-member-grid label{display:flex;align-items:flex-start;gap:9px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:#fff;cursor:pointer}.participation-member-grid input{width:17px;height:17px;min-width:17px;margin:2px 0 0}.participation-member-grid span{display:grid;gap:1px;min-width:0}.participation-member-grid small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.participation-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.participation-stat-grid>div{display:grid;gap:2px;padding:12px;border:1px solid var(--border);border-radius:11px;background:#fbfcfd}.participation-stat-grid strong{font-size:1.2rem}.participation-stat-grid span{font-size:.75rem;color:var(--muted)}.participation-response{font-weight:700}.participation-response.is-yes{color:#2c7048}.participation-response.is-maybe{color:#8a6500}.participation-response.is-no{color:#9a3f3f}.participation-response.is-pending{color:var(--muted)}
.helper-share-row{display:grid;gap:8px;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:#fbfcfd}.helper-share-row>div:first-child{display:grid;gap:2px}.helper-share-row small{color:var(--muted)}.helper-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.helper-admin-grid details{border:1px solid var(--border);border-radius:12px;padding:0 13px;background:#fff}.helper-admin-grid summary{padding:12px 0;cursor:pointer;font-weight:700}.helper-shift-list{display:grid;gap:10px}.helper-shift-card{border:1px solid var(--border);border-radius:12px;padding:13px 14px;background:#fff}.helper-shift-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.helper-shift-head>div{display:grid;gap:2px}.helper-shift-head small{color:var(--muted)}.helper-shift-card>p{margin:9px 0}.helper-signup-list{display:grid;gap:7px;margin-top:10px}.helper-signup-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #edf0f2}.helper-signup-row>div:first-child{display:grid;gap:1px;min-width:0}.helper-signup-row small{color:var(--muted)}.helper-signup-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.helper-signup-actions form{display:flex;align-items:center;gap:6px;margin:0}.helper-signup-actions select{min-width:145px;max-width:210px;padding:7px 30px 7px 9px;font-size:.76rem}.helper-public-shifts{display:grid;gap:9px;margin:14px 0}.helper-public-shift{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid #d8e1e7;border-radius:11px;background:#fff;cursor:pointer}.helper-public-shift.is-full{opacity:.58;cursor:not-allowed}.helper-public-shift input[type="checkbox"]{width:18px;height:18px;min-width:18px;margin:2px 0 0}.helper-public-shift span{display:grid;gap:3px}.helper-public-shift small{color:#667785}.helper-public-shift em{font-size:.8rem;font-style:normal;color:#526b74}.auth-card-wide{max-width:680px}
@media(max-width:760px){.participation-member-grid{grid-template-columns:1fr}.participation-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.helper-admin-grid{grid-template-columns:1fr}.helper-signup-row{align-items:flex-start;flex-direction:column}.helper-signup-actions{width:100%;justify-content:flex-start}.helper-signup-actions form:first-child{flex:1 1 100%}.helper-signup-actions form:first-child select{flex:1;max-width:none}.helper-share-row .copy-row{grid-template-columns:1fr auto}.helper-share-row .copy-row a{grid-column:1/-1}.event-participation-card .event-inline-form{grid-template-columns:1fr}.event-participation-card .event-form-wide{grid-column:auto}}

/* Patch 090 – kompakte RSVP-Radios und bearbeitbare Helfereinsätze */
.vote-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0}
.vote-choice{display:flex;align-items:center;gap:9px;margin:0;padding:11px 12px;border:1px solid var(--border);border-radius:11px;background:#fff;cursor:pointer;font-weight:700}
.vote-choice:has(input:checked){border-color:#76aeb5;background:#eef7f7}
.vote-choice input[type="radio"]{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;padding:0!important;margin:0!important;flex:0 0 18px;accent-color:var(--brand)}
.vote-choice span{min-width:0}
.helper-shift-edit{margin-top:10px;padding-top:9px;border-top:1px solid #edf0f2}
.helper-shift-edit>summary{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--brand);font-size:.78rem;font-weight:750;list-style:none;border:1px solid var(--border);border-radius:9px;background:#f7f9fa;padding:7px 10px;transition:background .15s ease,border-color .15s ease}
.helper-shift-edit>summary:hover{background:#eef3f5;border-color:#bdcbd1}
.helper-shift-edit>summary::-webkit-details-marker{display:none}
.helper-shift-edit>.event-inline-form{margin-top:10px;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fbfcfd}
@media(max-width:460px){.vote-choice-grid{grid-template-columns:1fr}.vote-choice{min-height:44px}}

/* Patch 091 – administrative RSVP capture + clearer participation actions */
.participation-response-rows{display:grid;gap:0}.participation-response-row{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start}.participation-response-edit{min-width:92px}.participation-response-edit>summary{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;list-style:none;border:1px solid var(--border);border-radius:9px;background:#f7f9fa;padding:7px 10px;color:var(--brand);font-size:.76rem;font-weight:750}.participation-response-edit>summary::-webkit-details-marker{display:none}.participation-response-edit[open]{grid-column:1/-1;width:100%;margin-top:8px}.participation-response-edit[open]>summary{margin-left:auto}.participation-response-edit>form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:9px;padding:11px;border:1px solid var(--border);border-radius:10px;background:#fbfcfd}.participation-response-edit .participation-response-note{grid-column:span 2}.participation-response-edit .form-actions{grid-column:1/-1;margin:0}.participation-response-row>.event-resource-main{min-width:0}
@media(max-width:760px){.participation-response-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.participation-response-edit[open]{grid-column:1/-1}.participation-response-edit>form{grid-template-columns:1fr}.participation-response-edit .participation-response-note{grid-column:auto}}

/* Patch 092 – Helferaktion-UI und Mehrtermin-Datumsdarstellung */
.helper-admin-grid{display:grid;grid-template-columns:max-content max-content;gap:8px 10px;align-items:start}
.helper-admin-grid .helper-admin-action{min-width:0;border:0;border-radius:0;padding:0;background:transparent}
.helper-admin-grid .helper-admin-action>summary{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:40px;padding:8px 12px;list-style:none;cursor:pointer;border:1px solid var(--border);border-radius:10px;background:#f7f9fa;color:var(--brand);font-weight:750;transition:background .15s ease,border-color .15s ease}
.helper-admin-grid .helper-admin-action>summary::-webkit-details-marker{display:none}
.helper-admin-grid .helper-admin-action>summary:hover{background:#eef3f5;border-color:#bdcbd1}
.helper-admin-grid .helper-admin-action[open]{grid-column:1/-1;width:100%;padding:12px 13px;border:1px solid var(--border);border-radius:12px;background:#fbfcfd}
.helper-admin-grid .helper-admin-action[open]>summary{background:#eef3f5}
.helper-admin-grid .helper-admin-action>.event-inline-form{margin-top:12px;padding:0;border:0;background:transparent}
.helper-admin-grid .helper-shift-create-form{grid-template-columns:minmax(180px,2fr) 110px minmax(185px,1fr) minmax(185px,1fr)}
.helper-admin-grid .helper-member-assign-form{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;align-items:end}
.helper-admin-grid .helper-member-assign-form .form-actions{grid-column:auto;margin:0;align-self:end}
.helper-admin-grid .helper-member-assign-form .button{min-height:42px}
@media(max-width:900px){.helper-admin-grid .helper-shift-create-form{grid-template-columns:1fr 110px 1fr 1fr}}
@media(max-width:760px){.helper-admin-grid{grid-template-columns:1fr;gap:8px}.helper-admin-grid .helper-admin-action[open]{grid-column:1}.helper-admin-grid .helper-admin-action>summary{width:100%;justify-content:flex-start}.helper-admin-grid .helper-shift-create-form,.helper-admin-grid .helper-member-assign-form{grid-template-columns:1fr}.helper-admin-grid .helper-member-assign-form .form-actions{grid-column:1}.helper-admin-grid .helper-member-assign-form .button{width:100%}}

/* Patch 100 – Helferkommunikation: ruhiger, voller Arbeitsbereich */
.helper-admin-grid{grid-template-columns:max-content max-content minmax(0,1fr)}
.helper-admin-grid .helper-admin-action[open]{box-sizing:border-box}
.helper-information-form{display:grid;gap:14px;margin-top:12px;padding:0;border:0;background:transparent}
.helper-information-fields{display:grid;grid-template-columns:minmax(260px,2fr) minmax(180px,1fr);gap:12px}
.helper-information-form .field{margin:0}
.helper-information-message textarea{min-height:132px}
.helper-information-message .help{display:block;margin-top:6px;color:var(--muted);font-size:.78rem;line-height:1.4}
.helper-information-attachment{display:grid;gap:10px;padding:12px 13px;border:1px solid var(--border);border-radius:11px;background:#fff}
.helper-information-attachment-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.helper-information-attachment-head small{color:var(--muted)}
.helper-information-attachment-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.helper-information-save{margin:0}
.helper-information-send-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.helper-information-send-form .field,.helper-information-send-form .form-actions{margin:0}
.helper-information-send-form .button{min-height:42px}
@media(max-width:900px){.helper-information-fields,.helper-information-attachment-fields{grid-template-columns:1fr}.helper-information-send-form{grid-template-columns:1fr auto}}
@media(max-width:760px){.helper-admin-grid{grid-template-columns:1fr}.helper-information-send-form{grid-template-columns:1fr}.helper-information-send-form .button{width:100%}.helper-information-attachment-head{display:grid;gap:2px}}


/* Patch 101 – Helferkommunikation: persönliche Nachricht und Organisation klar trennen */
.helper-information-mail-head{display:grid;grid-template-columns:minmax(280px,620px);gap:12px}
.helper-information-copy-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.helper-information-copy-card{padding:13px;border:1px solid var(--border);border-radius:11px;background:#fff}
.helper-information-copy-card textarea{min-height:150px}
.helper-information-organisation-card{background:#f7fafb}
.helper-information-operations{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:12px;align-items:start}
.helper-information-operations .helper-information-attachment{height:100%;box-sizing:border-box}
.helper-information-attire{margin:0}
@media(max-width:900px){.helper-information-copy-grid,.helper-information-operations{grid-template-columns:1fr}.helper-information-mail-head{grid-template-columns:1fr}}

/* COCKPIT-110: Jährliches Pflichten-Cockpit */
.governance-page-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.governance-admin-buttons{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.governance-dashboard-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px}
.governance-dashboard-summary>div{display:grid;gap:3px;min-width:0}.governance-dashboard-summary strong{font-size:1rem}
.governance-obligations-header{align-items:flex-start}.governance-obligation-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px}
.governance-obligation-summary-main{min-width:0}.governance-obligation-summary-main h2{margin:.22rem 0 .35rem}.governance-obligation-summary-main p{margin:0;color:var(--muted);max-width:700px}
.governance-obligation-summary-meta{display:grid;gap:6px;justify-items:end;color:var(--muted);font-size:.78rem;white-space:nowrap}.governance-obligation-summary-meta strong{color:var(--text);font-size:1rem}
.governance-obligations-card{display:grid;gap:14px}.governance-obligations-card .section-head{margin:0}.governance-obligation-list{display:grid;gap:9px}
.governance-obligation-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.governance-obligation-row.needs-attention{background:#fffaf0;border-color:#ead6aa}.governance-obligation-state{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--surface-muted);color:var(--muted);font-weight:900}
.governance-obligation-row.is-ok .governance-obligation-state{background:#eaf6ef;color:#277057}.governance-obligation-row.is-check .governance-obligation-state{background:#fff1d2;color:#805d10}
.governance-obligation-copy{display:grid;gap:4px;min-width:0}.governance-obligation-heading{display:flex;align-items:baseline;gap:8px 12px;flex-wrap:wrap}.governance-obligation-heading strong{font-size:.96rem}.governance-obligation-status{font-size:.72rem;font-weight:850;color:var(--accent)}
.governance-obligation-copy p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.42}.governance-obligation-row>.button{white-space:nowrap}
.governance-obligations-empty{display:flex;align-items:center;justify-content:space-between;gap:20px}.governance-obligations-empty h2{margin:.2rem 0 .35rem}.governance-obligations-empty p{margin:0;color:var(--muted);max-width:720px}
.governance-obligation-note{margin:14px 2px 0;color:var(--muted);font-size:.76rem;line-height:1.4}
@media(max-width:760px){.governance-page-actions{width:100%;justify-content:flex-start}.governance-page-actions .button{width:100%;justify-content:center}.governance-admin-buttons{width:100%;display:grid;grid-template-columns:1fr 1fr}.governance-admin-buttons .button{width:100%;justify-content:center}.governance-dashboard-summary,.governance-obligation-summary,.governance-obligations-empty{align-items:stretch;flex-direction:column}.governance-dashboard-summary .button,.governance-obligations-empty .button{width:100%;justify-content:center}.governance-obligation-summary-meta{justify-items:start;white-space:normal}.governance-obligation-row{grid-template-columns:30px minmax(0,1fr)}.governance-obligation-row>.button{grid-column:2;justify-self:start}.governance-obligation-note{margin-bottom:12px}}
@media(max-width:440px){.governance-admin-buttons{grid-template-columns:1fr}.governance-obligation-row>.button{justify-self:stretch;justify-content:center}}

/* COCKPIT-117: FIN-001 Finanzjahr */
.finance-page-header{align-items:flex-start}.finance-year-nav{display:flex;gap:8px;flex-wrap:wrap}.finance-summary-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px}.finance-summary-card h2{margin:.2rem 0 0}.finance-process-card{display:grid;gap:14px}.finance-step-list{display:grid;gap:9px}.finance-step{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.finance-step-number{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--surface-muted);color:var(--muted);font-weight:850}.finance-step.is-ok .finance-step-number,.finance-step.is-skip .finance-step-number{background:#eaf6ef;color:#277057}.finance-step.is-check .finance-step-number{background:#fff1d2;color:#805d10}.finance-step-copy{display:grid;gap:4px;min-width:0}.finance-step-heading{display:flex;align-items:baseline;gap:8px 12px;flex-wrap:wrap}.finance-step-heading strong{font-size:.96rem}.finance-step-heading span{font-size:.72rem;font-weight:850;color:var(--accent)}.finance-step-copy p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.42}.finance-step>.button{white-space:nowrap}.finance-documents-card{display:grid;gap:14px}.finance-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.finance-document-slot{display:grid;align-content:start;gap:11px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fbfcfd;min-width:0}.finance-document-slot-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.finance-document-current{display:grid;gap:2px;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:#fff;text-decoration:none;color:inherit}.finance-document-current:hover{border-color:#b9cbd1}.finance-document-current small,.finance-document-uses small{color:var(--muted)}.finance-document-uses{display:grid;gap:6px}.finance-document-uses a{display:grid;gap:1px;padding:8px 9px;border-radius:9px;background:var(--surface-muted);text-decoration:none;color:inherit}.finance-document-link-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.finance-document-link-form label{display:grid;gap:5px;font-size:.78rem;font-weight:750}.finance-document-link-form select{min-width:0}.finance-document-unlink-form{margin:0}.finance-documents-empty{margin:0;color:var(--muted);font-size:.82rem}
@media(max-width:980px){.finance-document-grid{grid-template-columns:1fr}.finance-document-link-form{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:760px){.finance-page-header{gap:12px}.finance-year-nav{width:100%;display:grid;grid-template-columns:1fr 1fr}.finance-year-nav .button{justify-content:center}.finance-summary-card{align-items:stretch;flex-direction:column}.finance-summary-card .button{width:100%;justify-content:center}.finance-step{grid-template-columns:30px minmax(0,1fr)}.finance-step>.button{grid-column:2;justify-self:start}.finance-document-link-form{grid-template-columns:1fr}.finance-document-link-form .button{width:100%;justify-content:center}}
@media(max-width:440px){.finance-step>.button{justify-self:stretch;justify-content:center}}

/* COCKPIT-119 – Revisionsfreigabe */
.finance-revision-card{display:grid;gap:16px}.finance-revision-form{display:grid;gap:18px}.finance-revision-fieldset{min-width:0;margin:0;padding:0;border:0}.finance-revision-fieldset>legend,.finance-revision-fieldset-head legend{font-size:.86rem;font-weight:850;color:var(--text);padding:0;margin:0 0 9px}.finance-revision-fieldset-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.finance-revision-fieldset-head legend{margin:0}.finance-revision-documents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.finance-revision-document{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:#fbfcfd;cursor:pointer}.finance-revision-document:has(input:checked){border-color:#a8c7cd;background:#f1f8f9}.finance-revision-document input{margin-top:3px}.finance-revision-document span{display:grid;gap:2px;min-width:0}.finance-revision-document strong{overflow-wrap:anywhere}.finance-revision-document small{color:var(--muted);font-size:.76rem;line-height:1.35}.finance-revision-recipients{display:grid;gap:8px}.finance-revision-recipient{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;gap:8px;align-items:end}.finance-revision-recipient label,.finance-revision-sendbar label{display:grid;gap:5px;font-size:.78rem;font-weight:750}.finance-revision-remove{margin-bottom:9px}.finance-revision-sendbar{display:flex;align-items:end;justify-content:flex-end;gap:10px;padding-top:2px}.finance-revision-sendbar select{min-width:120px}.finance-revision-history{border-top:1px solid var(--border);padding-top:16px}.finance-revision-history h3{margin:0 0 10px;font-size:.92rem}.finance-revision-share-list{display:grid;gap:8px}.finance-revision-share{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:#fbfcfd}.finance-revision-share-main{display:grid;gap:1px;min-width:0}.finance-revision-share-main span,.finance-revision-share-main small{color:var(--muted);overflow-wrap:anywhere}.finance-revision-share-main small{font-size:.74rem;line-height:1.4}.finance-revision-share-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.finance-revision-share-actions form{margin:0}.badge-muted{background:var(--surface-muted);color:var(--muted)}
.revision-public{display:grid;gap:18px}.revision-public h1{margin:0}.revision-public-recipient{margin:-7px 0 0;color:var(--muted)}.revision-public-note{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-radius:10px;background:#eef6f7;border:1px solid #c9dde0}.revision-public-note span{color:#526b74;font-size:.85rem}.revision-public-documents{display:grid;gap:9px}.revision-public-document{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--border);border-radius:11px;background:#fff;color:inherit;text-decoration:none}.revision-public-document:hover{border-color:#aac8ce;background:#f9fcfc}.revision-public-document>span:first-child{display:grid;gap:3px;min-width:0}.revision-public-document strong{overflow-wrap:anywhere}.revision-public-document small{color:var(--muted)}.revision-public-download{color:var(--accent);font-weight:800;font-size:.84rem;white-space:nowrap}.revision-public-security{margin:0;padding-top:2px;color:var(--muted);font-size:.8rem;line-height:1.45}
@media(max-width:760px){.finance-revision-documents{grid-template-columns:1fr}.finance-revision-recipient{grid-template-columns:1fr}.finance-revision-remove{justify-self:start;margin:0}.finance-revision-sendbar{align-items:stretch;flex-direction:column}.finance-revision-sendbar label,.finance-revision-sendbar .button{width:100%}.finance-revision-sendbar .button{justify-content:center}.finance-revision-share{align-items:flex-start;flex-direction:column}.finance-revision-share-actions{width:100%;justify-content:space-between}.revision-public-note{align-items:flex-start;flex-direction:column}.revision-public-document{align-items:flex-start;flex-direction:column}.revision-public-download{align-self:stretch;text-align:center;padding-top:6px}}

/* COCKPIT-120 – CTR-001 Vertrags- und Versicherungsregister */
.contracts-page-header,.contracts-detail-header{align-items:flex-start}.contracts-page-header>div,.contracts-detail-header>div{min-width:0}.contracts-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.contracts-stats article{display:grid;gap:2px;padding:15px 17px;border:1px solid var(--border);border-radius:12px;background:#fff}.contracts-stats strong{font-size:1.35rem}.contracts-stats span{color:var(--muted);font-size:.8rem}.contracts-stats article.is-alert{background:#fff8e8;border-color:#ead6aa}.contracts-register-card{display:grid;gap:15px}.contracts-filter{display:grid;grid-template-columns:minmax(220px,1.7fr) minmax(160px,1fr) minmax(130px,.75fr) auto;gap:9px;align-items:end}.contracts-filter label,.contract-form label{display:grid;gap:5px;font-size:.78rem;font-weight:750}.contracts-filter label>span,.contract-form label>span{color:var(--text)}.contracts-list{display:grid;gap:8px}.contract-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,220px) 20px;gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--border);border-radius:11px;background:#fff;color:inherit;text-decoration:none}.contract-row:hover,.contract-row:focus-visible{border-color:#a8c7cd;background:#fbfdfd}.contract-row.is-overdue,.contract-row.is-expired{background:#fff9ee;border-color:#ead8ad}.contract-row-main,.contract-row-deadline{display:grid;gap:4px;min-width:0}.contract-row-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.contract-row-title strong{font-size:.94rem;overflow-wrap:anywhere}.contract-row-meta,.contract-row-deadline small{color:var(--muted);font-size:.76rem;line-height:1.35}.contract-row-deadline{text-align:right}.contract-row-deadline strong{font-size:.82rem;color:var(--accent)}.contract-row.is-overdue .contract-row-deadline strong,.contract-row.is-expired .contract-row-deadline strong{color:#8a6212}.contract-row-arrow{font-size:1.4rem;color:#78909a;text-align:right}.contracts-create-card{display:grid;gap:14px}.contract-form{display:grid;gap:15px}.contract-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contract-form-grid .span-2{grid-column:1/-1}.contract-form label small{color:var(--muted);font-weight:600}.contract-renew-check{display:flex!important;align-items:center;gap:9px!important;min-height:44px;padding-top:19px}.contract-renew-check input{width:18px!important;height:18px!important;min-height:18px!important;margin:0;padding:0!important}.contract-renew-check span{font-size:.82rem}.contracts-detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);gap:12px}.contract-deadline-card,.contract-responsibility-card{display:grid;align-content:start;gap:8px}.contract-deadline-card h2,.contract-responsibility-card h2{margin:0}.contract-deadline-card>p,.contract-responsibility-card>p{margin:0}.contract-deadline-card.is-overdue,.contract-deadline-card.is-expired{background:#fff9ee;border-color:#ead8ad}.contract-deadline-card.is-soon{background:#fffcf5;border-color:#e7d8b8}.contract-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 0}.contract-facts>div{display:grid;gap:2px;padding:9px 10px;border-radius:9px;background:rgba(245,248,249,.82)}.contract-facts dt{font-size:.68rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.035em}.contract-facts dd{margin:0;font-size:.84rem;font-weight:700}.contract-note{padding-top:9px;border-top:1px solid var(--border);font-size:.82rem;line-height:1.45}.contract-planning-card{display:grid;gap:14px}.contract-planning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.contract-planning-grid article{display:grid;align-content:start;gap:9px;padding:13px 14px;border:1px solid var(--border);border-radius:11px;background:#fbfcfd}.contract-planning-grid article>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.contract-planning-grid p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.4}.contract-planning-grid form{margin:0}.contract-edit-card{display:grid;gap:14px}.contract-remove-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.contract-remove-card p{margin:.25rem 0 0}.contract-remove-card form{margin:0}.back-link{display:inline-block;margin-bottom:8px;color:var(--muted);font-size:.78rem;font-weight:700;text-decoration:none}.back-link:hover{color:var(--accent)}
@media(max-width:980px){.contracts-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.contracts-filter .button{align-self:end}.contracts-detail-grid{grid-template-columns:1fr}.contract-form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.contracts-page-header,.contracts-detail-header{gap:12px}.contracts-page-header>.button,.contracts-detail-header>.button{width:100%;justify-content:center}.contracts-stats{grid-template-columns:repeat(3,1fr)}.contracts-stats article{padding:12px}.contracts-stats strong{font-size:1.15rem}.contracts-stats span{font-size:.7rem}.contracts-filter{grid-template-columns:1fr}.contracts-filter .button{width:100%;justify-content:center}.contract-row{grid-template-columns:minmax(0,1fr) 18px;gap:8px 10px}.contract-row-deadline{grid-column:1;text-align:left}.contract-row-arrow{grid-column:2;grid-row:1/3;align-self:center}.contract-form-grid{grid-template-columns:1fr}.contract-form-grid .span-2{grid-column:auto}.contract-renew-check{padding-top:4px}.contract-planning-grid{grid-template-columns:1fr}.contract-remove-card{align-items:stretch;flex-direction:column}.contract-remove-card .button{width:100%;justify-content:center}}
@media(max-width:430px){.contracts-stats{grid-template-columns:1fr}.contracts-stats article{grid-template-columns:auto 1fr;align-items:baseline;gap:8px}.contract-facts{grid-template-columns:1fr 1fr}}

/* COCKPIT-121 – gegliederte Informationsarchitektur für Hauptnavigation */
@media (min-width: 761px) {
  .app-shell { grid-template-columns: 258px 1fr; }
  .sidebar .nav { gap: 0; }
  .nav-group { display: grid; gap: 4px; }
  .nav-group + .nav-group { margin-top: 12px; }
  .nav-group .nav-heading { margin: 0 12px 3px; color: rgba(255,255,255,.52); font-size: .68rem; line-height: 1.25; }
  .nav-group-admin { margin-top: 16px; padding-top: 13px; border-top: 1px solid rgba(255,255,255,.13); }
  .nav-group-admin .nav-heading { color: rgba(255,255,255,.42); }
  .nav-group a { line-height: 1.25; }
}

@media (max-width: 760px) {
  .mobile-more-sheet { max-height: min(84vh, 760px); }
  .mobile-more-groups { display: grid; gap: 17px; padding-top: 13px; }
  .mobile-more-group { display: grid; gap: 7px; min-width: 0; }
  .mobile-more-group-title { margin: 0 2px; color: var(--muted); font-size: .68rem; font-weight: 850; line-height: 1.2; letter-spacing: .035em; text-transform: uppercase; }
  .mobile-more-group .mobile-more-links { padding-top: 0; }
  .mobile-more-admin { padding-top: 14px; border-top: 1px solid var(--border); }
  .mobile-more-admin .mobile-more-links { grid-template-columns: 1fr; }
  .mobile-more-links > a { min-width: 0; }
  .mobile-more-links > a span { min-width: 0; overflow-wrap: anywhere; }
}
@media (max-width: 390px) {
  .mobile-more-links { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 340px) {
  .mobile-more-links { grid-template-columns: 1fr; }
}

/* COCKPIT-124 · Anlass-Pflichtencheck */
.event-requirements{margin:14px 0;padding:0;overflow:hidden}
.event-requirements>summary{list-style:none;cursor:pointer}
.event-requirements>summary::-webkit-details-marker{display:none}
.event-requirements-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px}
.event-requirements-summary>span:first-child{display:grid;gap:3px}
.event-requirements-summary strong{font-size:1.05rem}
.event-requirements-summary-state{flex:0 0 auto;padding:7px 11px;border-radius:999px;background:var(--surface-muted);font-size:.78rem;font-weight:850;color:var(--muted)}
.event-requirements-body{border-top:1px solid var(--border);padding:18px 20px 20px}
.event-requirements-intro{margin:0 0 14px}
.event-requirements-questions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.event-requirement-question{display:grid;gap:10px;margin:0;padding:13px 14px;border:1px solid var(--border);border-radius:10px;min-width:0;background:var(--surface)}
.event-requirement-question legend{padding:0;font-weight:750;line-height:1.35}
.event-requirement-choice{display:flex;gap:6px;flex-wrap:wrap}
.event-requirement-choice label{position:relative;margin:0;cursor:pointer}
.event-requirement-choice input{position:absolute;opacity:0;pointer-events:none}
.event-requirement-choice span{display:inline-flex;align-items:center;justify-content:center;min-width:58px;min-height:34px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);font-size:.84rem;font-weight:750}
.event-requirement-choice input:checked+span{border-color:#8fb7bf;background:#edf7f8;color:var(--primary)}
.event-requirement-choice input:focus-visible+span{outline:3px solid rgba(39,107,119,.22);outline-offset:1px}
.event-requirements-questions>.form-actions{grid-column:1/-1;margin-top:2px}
.event-requirements-results{margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}
.event-requirements-results .section-head{margin-bottom:10px}
.event-requirements-results h3{margin:0;font-size:1.05rem}
.event-requirement-result{display:grid;gap:10px;padding:14px 0;border-top:1px solid var(--border)}
.event-requirement-result:first-of-type{border-top:0}
.event-requirement-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.event-requirement-result-head>div{min-width:0}
.event-requirement-result-head strong{display:block;font-size:.98rem}
.event-requirement-result-head p{margin:3px 0 0;color:var(--muted);line-height:1.42}
.event-requirement-result.is-checked{opacity:.88}
.event-requirement-result.is-muted{opacity:.72}
.event-requirement-evidence{display:flex;gap:7px;flex-wrap:wrap}
.event-requirement-ref{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:8px;background:var(--surface-muted);font-size:.82rem;color:inherit}
.event-requirement-ref>a{color:inherit;text-decoration:none;font-weight:700}
.event-requirement-ref form{display:inline-flex;margin:0}
.event-requirement-ref .button{padding:0 2px;min-height:0}
.event-requirement-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.event-requirement-actions form{margin:0}
.event-requirement-document-form{display:flex;align-items:center;gap:5px}
.event-requirement-document-form select{width:auto;max-width:240px;min-height:34px;padding:5px 28px 5px 8px;font-size:.82rem}
.event-requirements-none{margin:16px 0 0}
@media(max-width:760px){
  .event-requirements-summary{padding:16px}.event-requirements-body{padding:15px 16px 17px}
  .event-requirements-questions{grid-template-columns:1fr}
  .event-requirements-questions>.form-actions{grid-column:auto}
  .event-requirement-result-head{gap:9px}
  .event-requirement-actions{align-items:stretch}
  .event-requirement-actions>.button,.event-requirement-actions>form,.event-requirement-document-form{flex:1 1 auto}
  .event-requirement-actions form .button{width:100%}
  .event-requirement-document-form select{flex:1 1 150px;max-width:none;min-width:0}
}
@media(max-width:430px){
  .event-requirements-summary{align-items:flex-start}.event-requirements-summary-state{font-size:.72rem}
  .event-requirement-choice{display:grid;grid-template-columns:repeat(3,1fr)}.event-requirement-choice label,.event-requirement-choice span{width:100%}
  .event-requirement-result-head{display:grid}.event-requirement-result-head .badge{justify-self:start}
}

/* NOTIF-001 – zentrale In-App-Benachrichtigungen */
.notification-center{position:relative;display:block}
.notification-center>summary{position:relative;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--brand);cursor:pointer;list-style:none;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.notification-center>summary::-webkit-details-marker{display:none}
.notification-center>summary:hover,.notification-center[open]>summary{background:#eef6f7;border-color:#b7d0d5;transform:translateY(-1px)}
.notification-center>summary svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.notification-badge{position:absolute;right:-5px;top:-6px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#b33b4a;color:#fff;font-size:.65rem;font-weight:900;line-height:1}
.notification-badge[hidden]{display:none}
.notification-popover{position:absolute;right:0;top:calc(100% + 10px);z-index:120;width:min(390px,calc(100vw - 28px));overflow:hidden;border:1px solid #d9e3e8;border-radius:18px;background:#fff;box-shadow:0 18px 55px rgba(16,34,53,.18)}
.notification-popover-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 17px 13px;border-bottom:1px solid #edf1f3;background:linear-gradient(135deg,#f8fbfc,#eef6f7)}
.notification-popover-head>div{display:grid;gap:1px}
.notification-popover-head span{font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#71838f}
.notification-popover-head strong{font-size:1rem;color:#102235}
.notification-popover-head button{border:0;background:transparent;color:var(--accent);font:inherit;font-size:.75rem;font-weight:850;cursor:pointer;padding:6px 0}
.notification-list{max-height:min(58vh,440px);overflow:auto;padding:7px}
.notification-empty{padding:25px 17px;text-align:center;color:var(--muted);font-size:.86rem}
.notification-item{display:grid;grid-template-columns:10px 1fr auto;gap:10px;align-items:start;padding:12px 10px;border-radius:13px;color:inherit;text-decoration:none;transition:background .15s ease}
.notification-item:hover{background:#f4f8f9}
.notification-item-dot{width:8px;height:8px;margin-top:7px;border-radius:999px;background:#1b7884;box-shadow:0 0 0 4px #e6f3f5}
.notification-item.is-read .notification-item-dot{background:#bdc8ce;box-shadow:none}
.notification-item-copy{display:grid;gap:3px;min-width:0}
.notification-item-copy strong{font-size:.87rem;line-height:1.25;color:#102235}
.notification-item-copy span{font-size:.78rem;line-height:1.35;color:#5f737f}
.notification-item-copy time{font-size:.67rem;color:#8a99a2;margin-top:2px}
.notification-item-arrow{padding-top:5px;color:#78909a;font-size:1.2rem}
.notification-settings-link{display:flex;justify-content:space-between;align-items:center;padding:12px 17px;border-top:1px solid #edf1f3;background:#fbfcfd;color:var(--accent);text-decoration:none;font-size:.8rem;font-weight:850}
.notification-settings-link span{font-size:1.15rem}
.notification-center-mobile{display:none}
.notification-toast-stack{position:fixed;z-index:220;right:max(18px,env(safe-area-inset-right,18px));top:max(82px,calc(env(safe-area-inset-top,0px) + 82px));display:grid;gap:10px;width:min(390px,calc(100vw - 28px));pointer-events:none}
.notification-toast{pointer-events:auto;display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:start;padding:14px 14px 14px 13px;border:1px solid #cddde2;border-radius:17px;background:rgba(255,255,255,.98);box-shadow:0 20px 55px rgba(16,34,53,.22);backdrop-filter:blur(12px);animation:notification-in .22s ease-out}
.notification-toast-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#e8f5f6;color:#176b76}.notification-toast-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.notification-toast-copy{min-width:0;display:grid;gap:3px;padding-top:1px}
.notification-toast-copy strong{font-size:.9rem;color:#102235}
.notification-toast-copy span{font-size:.79rem;line-height:1.35;color:#5b707c}
.notification-toast-copy b{margin-top:4px;color:#176b76;font-size:.75rem}
.notification-toast-close{border:0;background:transparent;color:#81919a;cursor:pointer;font-size:1.15rem;line-height:1;padding:3px}
.notification-toast.is-leaving{opacity:0;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease}
@keyframes notification-in{from{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:none}}
.notification-settings-head{max-width:900px}
.notification-preferences{max-width:900px;padding:0;overflow:hidden}
.notification-pref-grid{display:grid;grid-template-columns:minmax(0,1fr) 120px 120px;gap:16px;align-items:center;padding:16px 19px;border-top:1px solid #edf1f3}
.notification-pref-grid:first-of-type{border-top:0}
.notification-pref-head{padding-top:11px;padding-bottom:11px;background:#f7fafb;color:#70838d;font-size:.69rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.notification-pref-grid>div{display:grid;gap:3px}
.notification-pref-grid>div strong{font-size:.9rem;color:#102235}
.notification-pref-grid>div small{font-size:.76rem;line-height:1.4;color:#667985}
.notification-channel-toggle{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:800;color:#435966}
.notification-channel-toggle input{width:18px;height:18px;accent-color:#1b7884}
.notification-channel-fixed{display:grid;place-items:center;color:#91a0a8;font-size:.9rem;font-weight:850}
.notification-preferences .form-actions{padding:14px 19px 19px}
@media(max-width:760px){
  .notification-center-desktop{display:none}.notification-center-mobile{display:block;margin-left:auto}
  .notification-center-mobile>summary{width:44px;height:44px}
  .notification-popover{position:fixed;left:12px;right:12px;top:max(72px,calc(env(safe-area-inset-top,0px) + 72px));z-index:260;width:auto;max-height:calc(100dvh - max(88px,calc(env(safe-area-inset-top,0px) + 88px)));border-radius:17px}
  .notification-popover-head{gap:10px;padding:14px}
  .notification-popover-head button{white-space:nowrap}
  .notification-list{max-height:calc(100dvh - max(220px,calc(env(safe-area-inset-top,0px) + 220px)))}
  .notification-toast-stack{top:max(75px,calc(env(safe-area-inset-top,0px) + 75px));right:14px}
  .notification-pref-grid{grid-template-columns:minmax(0,1fr) 76px 76px;gap:9px;padding:14px}
  .notification-pref-head{font-size:.62rem}.notification-channel-toggle{display:grid;justify-items:center;gap:4px;font-size:.68rem}
  .notification-preferences .form-actions{padding-left:14px;padding-right:14px}
}

/* AI-001/003/004/005/006 · lokale Protokoll-AI */
.ai-protocol-panel{border:1px solid var(--line,#d9dee8);border-radius:16px;padding:16px;background:linear-gradient(180deg,rgba(246,248,253,.92),rgba(255,255,255,.98));box-shadow:0 8px 24px rgba(34,47,74,.05)}
.ai-protocol-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.ai-protocol-head h3{margin:.12rem 0 .25rem}.ai-protocol-head p{margin:0;max-width:760px;color:var(--muted,#667085);font-size:.93rem;line-height:1.45}
.ai-protocol-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.ai-protocol-status{font-size:.88rem;color:var(--muted,#667085)}.ai-protocol-status.is-working{font-weight:600}.ai-protocol-status.is-success{color:var(--accent,#176b72);font-weight:600}.ai-protocol-status.is-error{color:#a61b1b;font-weight:600}
.ai-protocol-privacy{margin-top:10px}.ai-protocol-privacy summary{font-size:.86rem;color:var(--muted,#667085);cursor:pointer}.ai-protocol-privacy p{font-size:.86rem;line-height:1.5;color:var(--muted,#667085);max-width:820px}
.ai-suggestion-list{display:grid;gap:10px;margin-top:14px}.ai-suggestion-card{position:relative;border:1px solid var(--line,#d9dee8);border-radius:14px;background:#fff;padding:14px}.ai-suggestion-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ai-suggestion-title>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ai-suggestion-title small{color:var(--muted,#667085)}
.ai-source-quote{margin:0 0 12px;padding:9px 11px;border-left:3px solid #c8d1e2;background:#f7f9fc;border-radius:0 8px 8px 0;font-size:.86rem;color:#475467}.ai-suggestion-form .field{margin-bottom:10px}.ai-suggestion-form .form-row{align-items:end}.ai-suggestion-actions{display:flex;justify-content:flex-end;margin-top:10px}.ai-reject-form{position:absolute;right:126px;bottom:14px}.ai-reject-form .button{min-height:32px;padding-inline:10px}.ai-type-decision{border-left:4px solid #8996aa}.ai-type-task{border-left:4px solid #7788a8}.ai-type-minutes_rewrite{border-left:4px solid #9a8ca8}.ai-type-annual_plan{border-left:4px solid #7f9b8e}.ai-type-knowledge{border-left:4px solid #9c927a}
@media (max-width:720px){.ai-protocol-panel{padding:13px;border-radius:13px}.ai-protocol-head{display:block}.ai-protocol-head>.badge{display:inline-flex;margin-top:8px}.ai-protocol-actions{align-items:stretch}.ai-protocol-actions .button{width:100%}.ai-suggestion-card{padding:12px}.ai-suggestion-form .form-row{grid-template-columns:1fr}.ai-suggestion-actions{justify-content:stretch;padding-top:34px}.ai-suggestion-actions .button{width:100%}.ai-reject-form{left:12px;right:auto;bottom:54px}}
