/* Daumen + gemeinsamer Kommentar. Nutzt die Tokens aus mappe.css. */
.abst { grid-column: 2 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 8px; }
.karte > .abst { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line-2); }
.abst button { font: inherit; font-size: 13px; font-weight: 600; min-height: 32px; padding: 4px 11px; border-radius: 999px;
  border: 1px solid var(--line-strong); background: var(--card); color: var(--ink-2); cursor: pointer; display: inline-flex; align-items: center; gap: 5px; }
.abst button:hover { border-color: var(--ink); color: var(--ink); }
.abst button:active { transform: translateY(1px); }
.abst button:disabled { opacity: .5; cursor: not-allowed; }
.abst .hoch[aria-pressed="true"] { background: var(--success-soft); border-color: var(--success); color: var(--success-ink); }
.abst .runter[aria-pressed="true"] { background: var(--danger-soft); border-color: var(--danger); color: var(--danger-ink); }
.abst .km-knopf[aria-expanded="true"] { background: var(--neutral-soft); }
.abst .wer { font-size: 12.5px; color: var(--muted); }
.abst .km { flex-basis: 100%; }
.abst textarea { width: 100%; min-height: 72px; resize: vertical; font: inherit; font-size: 14px; padding: 9px 11px; border-radius: 10px;
  border: 1px solid var(--line-strong); background: var(--card); color: var(--ink); }
.abst textarea:focus-visible { outline: 2px solid var(--ring); outline-offset: 1px; }
.abst .km-status { display: block; font-size: 12px; color: var(--muted); min-height: 1.4em; }
.abst .km-status.fehler { color: var(--danger); }

.abst-leiste { position: fixed; z-index: 50; right: 16px; bottom: 16px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  max-width: calc(100vw - 32px); padding: 8px 10px 8px 14px; border-radius: 14px; border: 1px solid var(--line-strong);
  background: var(--card); color: var(--ink); font-size: 13px; box-shadow: 0 6px 24px rgba(0,0,0,.12); }
.abst-leiste .p { display: inline-flex; border: 1px solid var(--line-strong); border-radius: 999px; overflow: hidden; }
.abst-leiste .p button { font: inherit; font-weight: 600; border: 0; background: transparent; color: var(--ink-2); padding: 5px 12px; min-height: 30px; cursor: pointer; }
.abst-leiste .p button:hover { background: var(--neutral-soft); }
.abst-leiste .p button[aria-pressed="true"] { background: var(--ink); color: var(--paper); }
.abst-leiste.waehlen { border-color: var(--accent); outline: 3px solid var(--accent-soft); }
.abst-leiste .zaehl { color: var(--muted); }
.abst-leiste .meldung { flex-basis: 100%; font-size: 12.5px; }
.abst-leiste .meldung:empty { display: none; }
.abst-leiste .meldung.fehler { color: var(--danger); }
.kachel .abst-sum { display: block; font-size: 12px; color: var(--muted); padding: 0 12px 10px; margin-top: -4px; font-weight: 600; }
@media (max-width: 700px) { .abst-leiste { left: 16px; right: 16px; bottom: 10px; } body { padding-bottom: 96px; } }
