:root {
  font-family: Arial, Helvetica, sans-serif;
  color: #203a58;
  background: #f3f7fa;
  font-synthesis: none;
  --blue: #3469a6;
  --navy: #203a58;
  --line: #dbe5ee;
  --muted: #596d81;
  --red: #a82f36;
}
.action-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  vertical-align: middle;
}
button.icon-only,
button.icon-only.small,
a.icon-only {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  min-width: 44px;
  min-height: 44px;
  padding: 10px;
  vertical-align: middle;
}
a.icon-only {
  border: 1px solid var(--line);
  border-radius: 9px;
  color: var(--blue);
  background: white;
  text-decoration: none;
}
.login-card button.icon-only {
  width: 44px;
}
.account > .muted {
  display: block;
  overflow-wrap: anywhere;
}
td > .edit-person + .actions {
  display: inline-flex;
  vertical-align: middle;
  margin-left: 8px;
}
button.icon-with-text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.action-tooltip {
  position: fixed;
  z-index: 10000;
  max-width: min(280px, calc(100vw - 16px));
  padding: 8px 12px;
  border-radius: 7px;
  background: #203a58;
  color: #fff;
  font-size: 13px;
  line-height: 1.4;
  box-shadow: 0 4px 14px #203a5833;
  pointer-events: none;
}
.action-tooltip[hidden] {
  display: none;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
}
button,
input,
select,
textarea {
  font: inherit;
}
button,
a,
input,
select,
textarea {
  outline-offset: 4px;
}
a {
  color: var(--blue);
}
button {
  cursor: pointer;
  border: 0;
  border-radius: 9px;
  padding: 12px 19px;
  background: var(--blue);
  color: #fff;
  font-weight: 700;
  min-height: 44px;
}
button:hover {
  filter: brightness(0.94);
}
button:disabled {
  opacity: 0.5;
  cursor: wait;
}
button.secondary,
.button.secondary {
  background: white;
  border: 1px solid var(--line);
  color: var(--navy);
}
button.danger {
  background: #fbeaec;
  color: var(--red);
}
button.yes {
  background: #257553;
}
button.no {
  background: #b1353c;
}
button.abstain {
  background: #647386;
}
button.small {
  font-size: 14px;
  padding: 7px 12px;
  min-height: 36px;
}
input,
select,
textarea {
  width: 100%;
  padding: 12px 13px;
  border: 1px solid #c5d5e5;
  border-radius: 8px;
  background: #fff;
  color: var(--navy);
}
textarea {
  min-height: 145px;
  resize: vertical;
}
label {
  display: block;
  font-weight: 700;
  font-size: 14px;
  margin-bottom: 17px;
}
label input,
label select,
label textarea {
  margin-top: 6px;
  font-weight: 400;
}
input[type="checkbox"] {
  width: 19px;
  height: 19px;
  vertical-align: middle;
  accent-color: var(--blue);
  margin: 0 8px 0 0;
}
.check {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 16px;
  font-weight: 400;
  margin: 16px 0;
}
h1,
h2,
h3,
p {
  margin-top: 0;
}
h1 {
  font-size: 32px;
  line-height: 1.2;
  letter-spacing: -0.7px;
  margin-bottom: 10px;
}
h2 {
  font-size: 21px;
  line-height: 1.35;
  margin-bottom: 20px;
}
h3 {
  font-size: 17px;
  margin-bottom: 10px;
}
.muted {
  color: var(--muted);
}
.eyebrow {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 12px;
}
.brand {
  font-family: Georgia, serif;
  font-size: 48px;
  line-height: 1;
  font-weight: 800;
  color: #1d4680;
  letter-spacing: -3px;
  display: inline-block;
}
.brand span {
  color: #ba2f2d;
}
.brand-img {
  max-width: 140px;
  max-height: 72px;
  object-fit: contain;
}
.login {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 40px 20px;
}
.login-card {
  width: 100%;
  max-width: 490px;
  background: white;
  padding: 48px;
  border: 1px solid var(--line);
  border-radius: 22px;
  box-shadow: 0 18px 60px #2844610a;
}
.login-card .brand,
.login-card .brand-img {
  margin-bottom: 50px;
}
.login-card h1 {
  font-size: 38px;
  margin-bottom: 30px;
}
.login-card button {
  width: 100%;
}
.login-card .muted {
  font-size: 14px;
  margin-top: 20px;
}
.error {
  background: #fff1f2;
  color: #982a33;
  border: 1px solid #edb5bc;
  border-radius: 10px;
  padding: 14px;
  margin: 15px 0;
}
.layout {
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr);
  min-height: 100vh;
}
.sidebar {
  background: #fff;
  border-right: 1px solid var(--line);
  padding: 34px 22px;
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 0;
  height: 100vh;
}
.sidebar .brand {
  margin: 0 14px 36px;
}
.sidebar .brand-img {
  margin: 0 14px 28px;
}
.sidebar .org-label {
  font-size: 13px;
  color: var(--muted);
  margin: 0 12px 24px;
}
.sidebar nav {
  display: grid;
  gap: 6px;
}
.sidebar nav a {
  display: block;
  color: var(--muted);
  text-decoration: none;
  padding: 12px 14px;
  border-radius: 9px;
  font-weight: 600;
  font-size: 15px;
}
.sidebar nav a.active {
  color: var(--blue);
  background: #eaf1f9;
}
.sidebar nav a:hover {
  background: #f3f7fa;
}
.sidebar .account {
  margin-top: auto;
  border-top: 1px solid var(--line);
  padding-top: 20px;
  font-size: 13px;
}
.account strong {
  font-size: 14px;
  display: block;
  overflow-wrap: anywhere;
}
.account button {
  margin-top: 16px;
  width: 100%;
}
.workspace {
  min-width: 0;
}
.topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 22px 40px;
  background: #ffffffb8;
  border-bottom: 1px solid var(--line);
  gap: 20px;
}
.topbar select {
  max-width: 260px;
  font-size: 14px;
}
.topbar .muted {
  font-size: 14px;
}
.content {
  max-width: 1360px;
  margin: auto;
  padding: 38px 40px 60px;
}
.page-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 26px;
}
.page-head p {
  margin: 8px 0 0;
  color: var(--muted);
}
.badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 6px;
  background: #eaf1f9;
  color: #315d91;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.badge.test {
  background: #fff0d9;
  color: #825600;
}
.badge.running {
  background: #e4f4ed;
  color: #237354;
}
.badge.closed {
  background: #edf0f4;
  color: #526579;
}
.testbar {
  border: 1px solid #ebd8af;
  background: #fff9ec;
  color: #795c29;
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 14px;
  margin-bottom: 25px;
  display: flex;
  gap: 10px;
  align-items: center;
}
.cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 28px;
}
.stat {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 6px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 13px;
  padding: 22px 24px;
}
.stat span {
  display: block;
  font-size: 14px;
  color: var(--muted);
}
.stat strong {
  display: block;
  margin-top: auto;
  font-size: 34px;
  line-height: 1.6;
  font-weight: 700;
}
.panel {
  background: white;
  border: 1px solid var(--line);
  border-radius: 14px;
  overflow: hidden;
  margin-bottom: 22px;
}
.panel-body {
  padding: 26px;
}
.toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  padding: 20px 24px;
  border-bottom: 1px solid var(--line);
}
.toolbar h2 {
  margin: 0;
}
.toolbar input {
  max-width: 300px;
}
.tabs {
  display: flex;
  gap: 6px;
  background: #e8eef5;
  padding: 4px;
  border-radius: 10px;
  width: max-content;
  margin-bottom: 24px;
}
.tabs button {
  background: transparent;
  color: var(--muted);
  padding: 8px 18px;
  font-size: 14px;
}
.tabs button.selected {
  background: white;
  color: var(--navy);
  box-shadow: 0 1px 3px #0001;
}
.table-wrap {
  overflow: auto;
}
table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
}
th {
  font-size: 12px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--muted);
  background: #f8fafc;
  padding: 14px 20px;
  border-bottom: 1px solid var(--line);
}
td {
  padding: 19px 20px;
  border-bottom: 1px solid #edf1f5;
  font-size: 14px;
  vertical-align: middle;
}
tr:last-child td {
  border-bottom: 0;
}
td strong {
  display: block;
  font-size: 15px;
}
td small {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-top: 4px;
}
tr.clickable {
  cursor: pointer;
}
tr.clickable:hover {
  background: #f8fafc;
}
.empty {
  text-align: center;
  padding: 55px 25px;
  color: var(--muted);
}
.empty h3 {
  color: var(--navy);
  font-size: 20px;
}
.empty .empty-icon {
  font-size: 35px;
  color: #9db4cf;
  margin-bottom: 10px;
}
.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.grid2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 24px;
}
.detail-text {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  line-height: 1.8;
}
.meta {
  font-size: 14px;
  margin: 0;
}
.meta dt {
  color: var(--muted);
  margin-top: 16px;
}
.meta dd {
  margin: 4px 0 0;
  font-weight: 600;
}
.back {
  font-size: 14px;
  display: inline-block;
  margin-bottom: 24px;
  text-decoration: none;
}
.file {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 13px;
  margin: 10px 0;
  overflow-wrap: anywhere;
}
.file a {
  font-size: 14px;
}
.status-yes {
  color: #257553;
}
.status-no {
  color: #a72d36;
}
.status-abstain {
  color: #617185;
}
.notice {
  color: #526579;
  padding: 14px;
  background: #f0f5fa;
  border-radius: 9px;
  font-size: 14px;
}
.personal {
  max-width: 950px;
  margin: auto;
  padding: 35px 22px;
}
.personal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 35px;
}
.personal .vote-actions button {
  flex: 1;
  min-width: 180px;
  padding: 18px;
}
.personal h1 {
  font-size: 30px;
}
.personal .welcome {
  margin-bottom: 25px;
}
.personal .welcome h2 {
  font-size: 20px;
  margin-bottom: 5px;
}
dialog {
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 30px;
  width: 600px;
  max-width: calc(100% - 30px);
  max-height: 90vh;
  color: var(--navy);
  box-shadow: 0 25px 100px #203a5840;
}
dialog::backdrop {
  background: #14263a66;
  backdrop-filter: blur(3px);
}
dialog .actions {
  justify-content: flex-end;
  margin-top: 22px;
}
dialog h2 {
  padding-right: 25px;
}
.form-error:empty {
  display: none;
}
.form-error {
  color: var(--red);
  margin: 12px 0;
}
.form-help {
  font-weight: 400;
  color: var(--muted);
  font-size: 13px;
  display: block;
  margin-top: 5px;
}
#notice:not(:empty) {
  position: fixed;
  bottom: 24px;
  right: 24px;
  max-width: 420px;
  padding: 16px 24px;
  background: #203a58;
  color: #fff;
  border-radius: 12px;
  box-shadow: 0 10px 40px #0002;
  z-index: 100;
}
.loading {
  padding: 60px;
  color: var(--muted);
}
details {
  border-top: 1px solid var(--line);
  padding: 12px 0;
}
summary {
  cursor: pointer;
  font-weight: 600;
}
pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 13px;
  max-height: 300px;
  overflow: auto;
}
progress {
  width: 100%;
  height: 7px;
  accent-color: var(--blue);
}
.right {
  text-align: right;
}
.nowrap {
  white-space: nowrap;
}
@media (max-width: 1050px) {
  .layout {
    grid-template-columns: 200px minmax(0, 1fr);
  }
  .content {
    padding: 28px 24px;
  }
  .topbar {
    padding: 18px 24px;
  }
  .detail-grid {
    grid-template-columns: 1fr;
  }
  .sidebar {
    padding: 25px 14px;
  }
}
@media (max-width: 720px) {
  .layout {
    display: block;
  }
  .sidebar {
    position: static;
    height: auto;
    padding: 18px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .sidebar .brand {
    font-size: 32px;
    margin: 0 0 15px;
  }
  .sidebar .org-label,
  .sidebar .account {
    display: none;
  }
  .sidebar nav {
    display: flex;
    overflow-x: auto;
    gap: 3px;
  }
  .sidebar nav a {
    white-space: nowrap;
    padding: 9px 11px;
    font-size: 13px;
  }
  .topbar {
    padding: 14px 18px;
  }
  .topbar .muted {
    display: none;
  }
  .content {
    padding: 24px 16px;
  }
  .page-head {
    flex-direction: column;
  }
  h1 {
    font-size: 28px;
  }
  .cards {
    gap: 8px;
  }
  .stat {
    padding: 13px;
  }
  .stat span {
    font-size: 12px;
  }
  .stat strong {
    font-size: 27px;
  }
  .grid2 {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .toolbar {
    align-items: flex-start;
    flex-direction: column;
  }
  .toolbar input {
    max-width: none;
  }
  .panel-body {
    padding: 20px;
  }
  .login-card {
    padding: 30px;
  }
  .login-card h1 {
    font-size: 32px;
  }
  .personal-head {
    gap: 20px;
  }
  .personal .vote-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .personal h1 {
    font-size: 25px;
  }
  td,
  th {
    padding: 13px;
  }
  dialog {
    padding: 24px;
  }
  #notice:not(:empty) {
    right: 16px;
    left: 16px;
    bottom: 16px;
  }
  .testbar {
    align-items: flex-start;
  }
  .topbar select {
    max-width: 100%;
  }
}
@media print {
  .sidebar,
  .topbar,
  .actions,
  .tabs,
  .testbar,
  button,
  .back {
    display: none !important;
  }
  .layout,
  .detail-grid {
    display: block;
  }
  .content {
    padding: 0;
  }
  .panel {
    break-inside: avoid;
    border: 0;
  }
  .personal {
    padding: 0;
  }
  body {
    background: white;
  }
}
:root .installed-version {
  position: fixed;
  right: 12px;
  bottom: 5px;
  font-size: 11px;
  line-height: 1.4;
  color: #596d81;
  background: #f3f7faf2;
  padding: 2px 6px;
  border-radius: 3px;
  z-index: 10;
  pointer-events: none;
}
@media print {
  .installed-version {
    display: none !important;
  }
}
.reset-zone {
  margin-top: 32px;
  border: 2px solid #bc2735;
}
.reset-button {
  background: #b51f2e;
  color: #fff;
  border-color: #b51f2e;
}
.reset-button:hover {
  background: #8c1521;
  border-color: #8c1521;
}
.reset-warning {
  background: #fff0f1;
  color: #801723;
  border: 2px solid #b51f2e;
  border-radius: 12px;
  padding: 20px;
}
.reset-warning h3 {
  font-size: 26px;
  line-height: 1.25;
  margin-top: 0;
  color: #a21828;
}

/* Responsive reading width and explicit signature evidence */
.content { width:100%; max-width:1000px; margin-inline:auto; }
.workspace { min-width:0; }
.signature { border-top:1px solid #dbe5ee; padding-block:20px; }
.signature dd { margin:4px 0 16px; overflow-wrap:anywhere; font-size:.9rem; }
.signature dt { font-weight:650; }
.icon-only { border-radius:14px; border:1.5px solid #bfd0e2; }
@media(max-width:600px) { dialog .grid2 { grid-template-columns:1fr; } .personal { padding:16px; } }
@media(max-width:600px){ .table-wrap table { min-width:740px; } }

.reminder-slot { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:14px; }
.reminder-slot input { min-width:0; }
textarea:disabled,input:disabled { opacity:.8; background:#f1f5f8; color:#42586e; }
@media(max-width:600px){ .reminder-slot { grid-template-columns:1fr 1fr; } }

.vote-confirmed{display:grid;gap:8px;padding:20px;margin:18px 0;border:2px solid;border-radius:14px;line-height:1.5}.vote-confirmed strong{font-size:20px}.vote-confirmed-yes{background:#edf8f1;border-color:#347454;color:#234d38}.vote-confirmed-no{background:#fff1f1;border-color:#a53c43;color:#78272e}.vote-confirmed-abstain{background:#f0f3f7;border-color:#637187;color:#344255}.vote-history{margin:20px 0}.vote-history ol{padding-left:22px}.vote-history li{margin:10px 0}.vote-actions .vote{flex-direction:column;white-space:normal}.vote-actions .vote-selected{outline:3px solid #1d3552;outline-offset:4px;box-shadow:0 0 0 7px white}.vote-selected-label{display:block;font-size:12px;margin-top:7px;line-height:1.3}.copy-member-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}

.member-actions{display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;width:max-content;gap:8px;margin:0 0 8px}.member-actions button,.member-actions button.icon-only.small,.copy-member-link{box-sizing:border-box;width:44px;min-width:44px;height:44px;min-height:44px;max-height:44px;padding:11px;margin:0;line-height:1;border:1px solid #c9d7e5;border-radius:8px;background:#fff;color:#34628b;box-shadow:none;vertical-align:middle}.member-actions button:hover{background:#edf4fa;border-color:#799ebf}.member-actions svg{display:block;width:20px;height:20px;flex:0 0 20px;stroke-width:1.8}.member-actions button:focus-visible{outline:3px solid #8cb5d9;outline-offset:2px}button.icon-only.small{border-radius:8px}td>.member-actions+small{display:block}

.connection-success,.connection-failure{padding:12px 16px;border-radius:8px;font-weight:600}.connection-success{color:#216042;background:#edf8f1;border:1px solid #9bcbb0}.connection-failure{color:#9a2631;background:#fff1f2;border:1px solid #e2a2a9}

.delivery-search{display:flex;gap:14px;align-items:end;padding:20px;flex-wrap:wrap}.delivery-search label{margin:0;min-width:130px}.delivery-search .delivery-query{flex:1;min-width:240px}.delivery-search input,.delivery-search select{margin-bottom:0}.delivery-list{display:grid;gap:16px}.delivery-card{padding:22px;margin:0;min-width:0}.delivery-card-head{display:flex;align-items:start;justify-content:space-between;gap:18px}.delivery-card h2{font-size:18px;line-height:1.4;margin:8px 0 12px;overflow-wrap:anywhere}.delivery-tags{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;color:#62768d}.delivery-channel{font-weight:700;color:#3469a6}.delivery-status{flex-shrink:0;font-size:12px;font-weight:700;padding:6px 10px;border-radius:6px;background:#edf2f7;color:#526478}.delivery-status-sent{background:#e9f6ee;color:#246c47}.delivery-status-failed{background:#fff0f1;color:#a12b36}.delivery-status-pending,.delivery-status-sending{background:#fff6e3;color:#926317}.delivery-recipient{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px;overflow-wrap:anywhere}.delivery-resolution{font-size:13px;color:#62768d;margin:8px 0}.delivery-excerpt{font-size:14px;line-height:1.6;color:#425972;overflow-wrap:anywhere;margin:14px 0}.delivery-facts{display:flex;flex-wrap:wrap;gap:5px 18px;font-size:12px;color:#62768d;padding-bottom:16px}.delivery-message{border-top:1px solid #e3eaf2;padding-top:14px}.delivery-message summary{color:#3469a6;font-size:14px;font-weight:600;cursor:pointer}.delivery-message dl{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px;font-size:13px;margin:18px 0}.delivery-message dd{margin:0;overflow-wrap:anywhere}.delivery-message-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65;background:#f5f8fc;border-radius:8px;padding:18px}.delivery-message small{display:block;color:#62768d;overflow-wrap:anywhere;margin-top:10px;font-size:11px}.delivery-card-actions{display:flex;justify-content:flex-end;margin-top:12px}.delivery-pagination{text-align:center;margin:24px 0}.delivery-search button{flex-shrink:0}
@media(max-width:600px){.delivery-search{padding:16px;gap:12px}.delivery-search label{flex:1;min-width:100px}.delivery-search .delivery-query{flex-basis:100%;min-width:0}.delivery-search button{width:100%}.delivery-card{padding:17px}.delivery-card-head{display:block}.delivery-status{display:inline-block;margin-bottom:14px}.delivery-card h2{font-size:17px}.delivery-message dl{grid-template-columns:1fr;gap:3px}.delivery-message dd{margin-bottom:8px}.delivery-message-text{padding:12px}}

.motion-lead{display:block;font-size:15px;font-weight:600;margin:8px 0;color:#203a58}.justification-heading{margin-top:28px!important}

.personal-overview{margin-top:28px;padding-top:20px;border-top:1px solid #dbe5ee}

.import-mapping{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.import-mapping select{width:100%;min-width:0}#import-preview{max-width:100%;margin:14px 0}#import-preview td{max-width:240px;overflow-wrap:anywhere}@media(max-width:600px){.import-mapping{grid-template-columns:minmax(0,1fr)}}

.trial-member{border:1px solid #dbe5ee;border-radius:12px;padding:16px;margin:18px 0;min-width:0}.trial-member legend{font-weight:600;padding:0 6px}.trial-history{padding:14px 0;border-bottom:1px solid #dbe5ee}.trial-history span{display:block;color:#62768d;margin-top:4px}

.delete-warning { padding: 16px; margin-bottom: 20px; border: 2px solid #b42332; border-radius: 12px; background: #fff1f2; color: #8c202c; overflow-wrap: anywhere; }
.delete-warning > strong { font-size: 1.2rem; }

.session-expired{background:#fff3df;border:2px solid #a56a12;border-radius:12px;padding:18px;margin:16px;color:#593b10;position:relative;z-index:2}.session-expired p{font-size:14px;line-height:1.5}
/* Compact member rows with actions aligned to the right. */
.members-table{table-layout:fixed}
.members-table th:first-child{width:auto}
.members-table td,.members-table th{overflow-wrap:anywhere}

.member-actions{width:100%;max-width:100%;flex-wrap:wrap;gap:6px}
.member-deliveries{font-size:12px;color:var(--muted)}
.member-deliveries summary{cursor:pointer;padding:5px 0}
.member-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:14px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;background:#f8fafc}
.vote-counts{display:flex;flex-wrap:wrap;gap:6px}
.vote-counts span{border-radius:6px;padding:3px 7px;font-weight:600}
.count-yes{color:#286444;background:#e8f4ed}.count-no{color:#963b3b;background:#faeded}.count-abstain{color:#526071;background:#e9edf1}
.content,.panel,.panel-body,.detail-grid>*,.page-head>*,.toolbar>*,.file>*{min-width:0}
.panel,.personal,.content,dialog{overflow-wrap:anywhere}
img{max-width:100%;height:auto}
pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
@media(max-width:700px){
 .sidebar nav{flex-wrap:wrap;overflow:visible}
 .table-wrap{overflow:visible}
 .table-wrap table{min-width:0;table-layout:fixed;display:block}
 .table-wrap thead{display:none}
 .table-wrap tbody,.table-wrap tr,.table-wrap td{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box}
 .table-wrap tr{padding:10px 0;border-bottom:1px solid var(--line)}
 .table-wrap td{padding:6px 16px;border:0;overflow-wrap:anywhere;white-space:normal}
 .table-wrap td[data-label]:before{content:attr(data-label);display:block;font-size:11px;font-weight:600;color:var(--muted);margin-bottom:3px}
 .member-summary{padding:12px 16px}
 .member-actions{gap:4px}
 .file,.topbar,.tabs{flex-wrap:wrap}
 .actions{flex-wrap:wrap;max-width:100%}
 input,select,textarea{min-width:0;max-width:100%;font-size:16px}
 .nowrap{white-space:normal}
}

.resolution-overview>div{margin-bottom:14px}
.resolution-overview>div:last-child{margin-bottom:0}
.members-table th,.members-table td{padding:14px 12px}
.members-table .member-vote{width:160px}
.members-table .member-presence{width:100px;font-size:12px;color:var(--muted)}
.members-table th.member-presence{font-size:10px;letter-spacing:0}
.members-table .member-tools{width:172px;text-align:right}
.members-table .member-actions{display:grid;grid-template-columns:repeat(3,44px);justify-content:end;gap:5px;margin-bottom:5px}
.members-table .member-deliveries{text-align:left;font-size:11px}
.members-table .member-deliveries summary{text-align:right;border:0;padding:2px 0}
@media(max-width:700px){
 .resolution-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
 .resolution-overview>div{margin:0;padding:10px;background:#f4f7fb;border:1px solid #e6edf4;border-radius:8px;min-width:0}
 .resolution-overview dt{font-size:11px;margin:0 0 5px;color:var(--muted)}
 .resolution-overview dd{font-size:13px;line-height:1.4;margin:0}
 .resolution-overview dd .muted{font-size:10px}
 .table-wrap .members-table tr{display:grid;grid-template-columns:minmax(0,1fr);gap:5px 10px;padding:14px 12px;align-items:start}
 .table-wrap .members-admin tr{grid-template-columns:minmax(0,1fr) 142px}
 .table-wrap .members-table td{width:auto;padding:0;min-width:0}
 .table-wrap .members-table td:before{display:none}
 .members-table .member-identity{grid-column:1;grid-row:1}
 .members-table .member-vote{grid-column:1;grid-row:2;font-size:13px}
 .members-table .member-presence{grid-column:1;grid-row:3;font-size:11px}
 .table-wrap .members-table .member-presence:before{display:inline;content:'Präsenzsitzung: ';font-size:11px;font-weight:400}
 .members-table .member-tools{grid-column:2;grid-row:1 / span 3;width:142px}
 .members-table td strong{font-size:14px;line-height:1.35}
 .members-table td small{font-size:11px;line-height:1.35;margin-top:3px}
 .members-table .member-deliveries{margin-top:6px}
}
@media(max-width:400px){
 .table-wrap .members-admin tr{grid-template-columns:minmax(0,1fr) 93px}
 .members-table .member-tools{width:93px}
 .members-table .member-actions{grid-template-columns:repeat(2,44px)}
 .members-table .member-deliveries summary{font-size:10px}
}

.member-actions button:disabled{opacity:.35;cursor:not-allowed;background:#f1f4f7;border-color:#dbe3ec;box-shadow:none}
@media(max-width:700px){
 .personal-results .panel-body{padding:16px 16px 10px}
 .personal-results h2{font-size:19px;margin:0}
 .personal-results .table-wrap table{display:table;table-layout:fixed;min-width:0}
 .personal-results .table-wrap thead{display:table-header-group}
 .personal-results .table-wrap tbody{display:table-row-group}
 .personal-results .table-wrap tr{display:table-row}
 .personal-results .table-wrap th,.personal-results .table-wrap td{display:table-cell;width:50%;padding:10px 14px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.4;vertical-align:middle}
 .personal-results .table-wrap th{font-size:10px;padding-top:8px;padding-bottom:8px}
 .personal-results .table-wrap td:before{display:none}
 .personal-results .table-wrap tr:last-child td{border-bottom:0}
 .personal-results .table-wrap th:last-child,.personal-results .table-wrap td:last-child{text-align:right}
}
