/* =====================================================
   DGhK Schleswig-Holstein – Vereinsportal
   Farbschema: identisch mit dghk-sh.info
   Primär:  #4087c0  (--ast-global-color-0)
   Hover:   #5250a5  (--ast-global-color-1)
   Hellblau:#8eaacc  (--ast-global-color-6)
   ===================================================== */

/* Open Sans – lokal gehostet (DSGVO-konform, kein Google-Request) */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('../fonts/open-sans-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('../fonts/open-sans-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --dghk-blau:       #4087c0;
    --dghk-blau-dunkel:#5250a5;
    --dghk-blau-hell:  #e8f2f9;
    --bs-primary:      #4087c0;
    --bs-primary-rgb:  64, 135, 192;
}

/* ─── Formulare ───────────────────────────────────── */
::placeholder { color: #bbb !important; opacity: 1; }

/* ─── Grundgerüst ─────────────────────────────────── */
body {
    font-family: 'Open Sans', sans-serif;
    background-color: #f4f6f9;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    color: #333;
    overflow-x: hidden;
    overflow-y: scroll;
}

main {
    flex: 1;
}

/* ─── Navigationsleiste ───────────────────────────── */
.navbar {
    background-color: #fff !important;
    border-bottom: 3px solid var(--dghk-blau);
    box-shadow: 0 2px 8px rgba(0,0,0,.07);
    padding-top: .5rem;
    padding-bottom: .5rem;
}

.navbar-brand img {
    height: 52px;
    width: auto;
}

/* Nav-Links: dunkelgrau, Hover = DGhK-Blau */
.navbar-nav .nav-link {
    color: #444 !important;
    font-weight: 500;
    font-size: .92rem;
    padding: .5rem .9rem !important;
    border-radius: 4px;
    transition: color .15s, background .15s;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
    color: var(--dghk-blau) !important;
    background: var(--dghk-blau-hell);
}

.navbar-nav .nav-link.active {
    color: var(--dghk-blau) !important;
}

.navbar-toggler {
    border-color: var(--dghk-blau);
}

.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%234087c0' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Dropdown */
.dropdown-menu {
    border: 1px solid #e0eaf4;
    box-shadow: 0 4px 16px rgba(0,0,0,.08);
    border-radius: 8px;
}

.dropdown-item:hover {
    background-color: var(--dghk-blau-hell);
    color: var(--dghk-blau);
}

/* User-Badge in der Nav */
.navbar-nav .badge {
    font-size: .7rem;
    vertical-align: middle;
}

/* ─── Buttons ─────────────────────────────────────── */
.btn-primary {
    background-color: var(--dghk-blau);
    border-color:     var(--dghk-blau);
    font-weight: 500;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--dghk-blau-dunkel);
    border-color:     var(--dghk-blau-dunkel);
}

.btn-outline-primary {
    color:        var(--dghk-blau);
    border-color: var(--dghk-blau);
}

.btn-outline-primary:hover {
    background-color: var(--dghk-blau);
    border-color:     var(--dghk-blau);
}

/* ─── Links ───────────────────────────────────────── */
a {
    color: var(--dghk-blau);
}

a:hover {
    color: var(--dghk-blau-dunkel);
}

/* ─── Login & Registrierung ───────────────────────── */
.auth-wrapper {
    min-height: calc(100vh - 130px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 0;
}

.auth-card {
    width: 100%;
    max-width: 460px;
    border: none;
    border-radius: 12px;
    box-shadow: 0 4px 28px rgba(64,135,192,.12);
}

.auth-card .card-header {
    background-color: #fff;
    border-bottom: 2px solid var(--dghk-blau-hell);
    border-radius: 12px 12px 0 0 !important;
    padding: 1.75rem 1.5rem 1.25rem;
    text-align: center;
}

.auth-card .card-header img {
    height: 56px;
    width: auto;
    margin-bottom: .75rem;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.auth-card .card-header h5 {
    color: var(--dghk-blau);
    font-weight: 600;
    margin: 0;
    font-size: 1.05rem;
}

/* ─── Dashboard ───────────────────────────────────── */
.welcome-bar {
    background: var(--dghk-blau);
    color: white;
    border-radius: 10px;
    padding: 1.5rem 2rem;
    margin-bottom: 1.5rem;
    border-left: 3px solid var(--dghk-blau-dunkel);
}

.welcome-bar h4 {
    margin: 0;
    font-weight: 600;
}

.welcome-bar p {
    margin: .3rem 0 0;
    opacity: .9;
    font-size: .95rem;
}

/* Dashboard-Kacheln */
.dashboard-card {
    border: 1px solid #e4edf6;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(64,135,192,.06);
    transition: transform .15s, box-shadow .15s, border-color .15s;
    height: 100%;
}

.dashboard-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(64,135,192,.12);
    border-color: var(--dghk-blau);
}

.dashboard-card .bi {
    color: var(--dghk-blau);
}

/* Statistik-Kacheln */
.stat-card {
    border: none;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,.05);
    padding: 1.25rem;
    text-align: center;
}

.stat-card .stat-zahl {
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1;
}

/* ─── Tabellen ────────────────────────────────────── */
.table-portal thead th {
    background-color: var(--dghk-blau);
    color: white;
    font-weight: 500;
    border-color: var(--dghk-blau-dunkel);
    font-size: .88rem;
}

.table-portal tbody tr:hover {
    background-color: var(--dghk-blau-hell);
}

/* ─── Karten allgemein ────────────────────────────── */
.card {
    border-radius: 10px;
}

/* ─── Footer ──────────────────────────────────────── */
.footer {
    background-color: #fff;
    border-top: 2px solid #e4edf6;
    padding: .9rem 0;
    font-size: .83rem;
    color: #888;
}

.footer a {
    color: #888;
    text-decoration: none;
}

.footer a:hover {
    color: var(--dghk-blau);
}

/* ─── Alerts ──────────────────────────────────────── */
.alert-info {
    background-color: var(--dghk-blau-hell);
    border-color: #b8d6ef;
    color: #5250a5;
}

.alert-dismissible .btn-close {
    top: 50%;
    transform: translateY(-50%);
}

/* ─── Tabelle → Karten (Mobile) ──────────────────── */
@media (max-width: 767.98px) {
    .table-cards thead { display: none !important; }

    .table-cards { display: block !important; width: 100%; padding: 3px; }
    .table-cards tbody { display: block !important; width: 100%; }

    .table-cards tr { display: block; width: 100%; }

    /* Jede Datenzeile wird eine Karte */
    .table-cards tbody tr {
        border: 1px solid #e4edf6;
        border-radius: 10px;
        margin: 0 0 .75rem;
        padding: .75rem 1rem;
        background: #fff;
        box-shadow: 0 1px 6px rgba(64,135,192,.07);
    }

    /* Farbige Zeilen: farbiger Linker Rand statt Hintergrundfarbe */
    .table-cards tbody tr.table-danger  { border-left: 3px solid #dc3545; background: var(--bs-table-bg); }
    .table-cards tbody tr.table-warning { border-left: 3px solid #ffc107; background: #fffdf0; }

    /* Kategorie-Trennzeilen */
    .table-cards tbody tr.table-light,
    .table-cards tbody tr.kategorie-header {
        background: var(--dghk-blau-hell);
        box-shadow: none;
        border-color: rgba(64,135,192,.2);
        padding: .3rem .75rem;
        margin-bottom: .25rem;
        border-radius: 6px;
    }
    .table-cards tbody tr.table-light td,
    .table-cards tbody tr.kategorie-header td,
    .table-cards tbody tr.table-light:active,
    .table-cards tbody tr.kategorie-header:active,
    .table-cards tbody tr.table-light:active td,
    .table-cards tbody tr.kategorie-header:active td {
        background-color: var(--dghk-blau-hell) !important;
        --bs-table-bg: transparent;
        --bs-table-bg-state: transparent;
    }
    .table-cards tbody tr.table-light td::before,
    .table-cards tbody tr.kategorie-header td::before { display: none; }

    /* Jede Zelle: Flex mit Label links, Wert rechts */
    .table-cards tbody td {
        display: flex !important;
        justify-content: space-between;
        align-items: center;
        gap: .5rem;
        padding: .25rem 0;
        border: none !important;
        font-size: .88rem;
    }

    /* Label aus data-label Attribut */
    .table-cards tbody td[data-label]::before {
        content: attr(data-label);
        font-size: .72rem;
        font-weight: 600;
        color: #999;
        text-transform: uppercase;
        letter-spacing: .05em;
        white-space: nowrap;
        flex-shrink: 0;
        min-width: 90px;
    }

    /* Titelzeile (erste Zelle, fett) */
    .table-cards tbody td.card-title {
        font-size: 1rem;
        font-weight: 600;
        padding-bottom: .4rem;
        margin-bottom: .1rem;
        border-bottom: 1px solid #f0f4f8 !important;
        justify-content: flex-start;
    }
    .table-cards tbody td.card-title::before { display: none; }

    /* Aktions-Zeile (Buttons, letzte Zelle) */
    .table-cards tbody td.card-actions {
        justify-content: flex-end;
        padding-top: .4rem;
        margin-top: .1rem;
        border-top: 1px solid #f0f4f8 !important;
        flex-wrap: wrap;
        gap: .4rem;
    }
    .table-cards tbody td.card-actions::before { display: none; }

    /* iOS-Zoom verhindern: alle Eingabefelder ≥ 16px */
    input, textarea, select,
    .form-control, .form-select,
    .form-control-sm, .form-select-sm {
        font-size: 1rem !important;
    }

    /* Bootstrap-CSS-Variablen für Table-Hover zurücksetzen */
    .table-hover > tbody > tr:hover > *,
    .table-hover > tbody > tr:active > * {
        --bs-table-bg-state: transparent;
        --bs-table-color-state: inherit;
    }
    .dashboard-card:hover,
    .dashboard-card:active { box-shadow: 0 1px 3px rgba(0,0,0,.08) !important; }
}

/* ─── Mobile / Responsive ─────────────────────────── */
@media (max-width: 575.98px) {
    main.container {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .welcome-bar {
        padding: 1rem 1.25rem;
        margin-bottom: 1rem;
    }

    .welcome-bar h4 { font-size: 1rem; }
    .welcome-bar p  { font-size: .88rem; }

    /* Touch targets: override Bootstrap utility padding removal */
    .btn-sm {
        min-height: 40px;
        padding-top:    .4rem  !important;
        padding-bottom: .4rem  !important;
        padding-left:   .65rem !important;
        padding-right:  .65rem !important;
    }

    /* Modal: avoid touching screen edges */
    .modal-dialog { margin: .75rem; }

    /* Flex forms: let select fill available space on wrap */
    .form-flex-wrap > .flex-select-wrap { flex: 1 1 100%; }

    /* Card header with buttons: allow wrapping */
    .card-header { flex-wrap: wrap; gap: .5rem; }
}

/* Dashboard stat numbers on small screens */
@media (max-width: 767.98px) {
    .stat-card .stat-zahl { font-size: 1.75rem; }
    .display-6            { font-size: 1.5rem !important; }
}

/* ─── Dark Mode ───────────────────────────────────── */
[data-bs-theme="dark"] {
    --dghk-blau-hell: #0d2e45;
}

[data-bs-theme="dark"] body {
    background-color: #0d1117;
    color: #e6edf3;
}

[data-bs-theme="dark"] .navbar {
    background-color: #161b22 !important;
    border-bottom-color: var(--dghk-blau);
    box-shadow: 0 2px 8px rgba(0,0,0,.3);
}

[data-bs-theme="dark"] .navbar-nav .nav-link {
    color: #c9d1d9 !important;
}

[data-bs-theme="dark"] .navbar-nav .nav-link.active {
    color: var(--dghk-blau) !important;
}

[data-bs-theme="dark"] .dashboard-card {
    background: #161b22;
    border-color: #30363d;
    box-shadow: 0 2px 10px rgba(0,0,0,.3);
}

[data-bs-theme="dark"] .welcome-bar {
    background: #1a3a52;
    border-left-color: var(--dghk-blau);
}

[data-bs-theme="dark"] .stat-card {
    background: #161b22;
    box-shadow: 0 2px 10px rgba(0,0,0,.3);
}

[data-bs-theme="dark"] .footer {
    background-color: #161b22;
    border-top-color: #30363d;
    color: #8b949e;
}

[data-bs-theme="dark"] .footer a       { color: #8b949e; }
[data-bs-theme="dark"] .footer a:hover { color: var(--dghk-blau); }

[data-bs-theme="dark"] .alert-info {
    background-color: #0d2e45;
    border-color: #1a4a6e;
    color: #8ac4e8;
}

[data-bs-theme="dark"] .bg-white {
    background-color: #1c2128 !important;
}

[data-bs-theme="dark"] .bg-light {
    background-color: #2d333b !important;
}

[data-bs-theme="dark"] .text-dark {
    color: #e6edf3 !important;
}

[data-bs-theme="dark"] .card-header.bg-white,
[data-bs-theme="dark"] .card-footer.bg-white {
    background-color: #1c2128 !important;
    border-color: #30363d;
}

[data-bs-theme="dark"] .auth-card .card-header {
    background-color: #161b22 !important;
    border-bottom-color: #30363d;
}

[data-bs-theme="dark"] .auth-card .card-header h5 {
    color: var(--dghk-blau);
}

/* table-light in Tabellen-Kopfzeilen und Kategorie-Trennzeilen */
[data-bs-theme="dark"] thead.table-light th,
[data-bs-theme="dark"] tr.table-light td,
[data-bs-theme="dark"] tr.kategorie-header td {
    background-color: #1c2128;
    color: #8b949e;
    border-color: #30363d;
}

[data-bs-theme="dark"] tr.table-light,
[data-bs-theme="dark"] tr.kategorie-header {
    --bs-table-hover-bg: #1c2128;
    --bs-table-hover-color: #8b949e;
}

/* Mobile table-cards in dark mode */
@media (max-width: 767.98px) {
    [data-bs-theme="dark"] .table-cards tbody tr {
        background: #1c2128;
        border-color: #30363d;
        box-shadow: none;
    }

    [data-bs-theme="dark"] .table-cards tbody tr.table-danger  { background: #2d1519; border-left-color: #dc3545; }
    [data-bs-theme="dark"] .table-cards tbody tr.table-warning { background: #2b1d00; border-left-color: #ffc107; }

    [data-bs-theme="dark"] .table-cards tbody tr.table-light,
    [data-bs-theme="dark"] .table-cards tbody tr.kategorie-header,
    [data-bs-theme="dark"] .table-cards tbody tr.table-light:active,
    [data-bs-theme="dark"] .table-cards tbody tr.kategorie-header:active {
        background: #0d2e45 !important;
        border-color: rgba(64,135,192,.3);
    }
    [data-bs-theme="dark"] .table-cards tbody tr.table-light td,
    [data-bs-theme="dark"] .table-cards tbody tr.kategorie-header td,
    [data-bs-theme="dark"] .table-cards tbody tr.table-light:active td,
    [data-bs-theme="dark"] .table-cards tbody tr.kategorie-header:active td {
        background-color: #0d2e45 !important;
        --bs-table-bg: transparent;
        --bs-table-bg-state: transparent;
    }

    [data-bs-theme="dark"] .table-cards tbody td.card-title   { border-bottom-color: #30363d !important; }
    [data-bs-theme="dark"] .table-cards tbody td.card-actions { border-top-color:    #30363d !important; }

}

/* ── Bild-Löschbutton in gerenderten Kommentaren ───────────── */
.md-bild-wrap {
    position: relative;
    display: inline-block;
    max-width: 100%;
}
.md-bild-loeschen {
    display: none;
    position: absolute;
    top: .3rem;
    right: .3rem;
    background: rgba(0,0,0,.55);
    color: #fff;
    border: none;
    border-radius: .3rem;
    padding: .15rem .35rem;
    font-size: .75rem;
    cursor: pointer;
    line-height: 1.4;
    z-index: 10;
}
.md-bild-wrap:hover .md-bild-loeschen { display: inline-block; }
.md-bild-loeschen:hover { background: rgba(185,28,28,.85); }

/* ── @mention Dropdown ─────────────────────────────────────── */
.mention-dropdown {
    position: absolute;
    min-width: 220px;
    max-width: 320px;
    background: var(--bs-body-bg, #fff);
    border: 1px solid #dee2e6;
    border-radius: .5rem;
    box-shadow: 0 4px 16px rgba(0,0,0,.12);
    z-index: 9999;
    overflow: hidden;
    display: none;
}
.mention-item {
    padding: 8px 14px;
    cursor: pointer;
    font-size: .875rem;
}
.mention-item:hover,
.mention-item.aktiv {
    background: var(--dghk-blau-hell, #e8f2f9);
    color: var(--dghk-blau, #4087c0);
}
[data-bs-theme="dark"] .mention-dropdown {
    background: #1c2128;
    border-color: #30363d;
}
[data-bs-theme="dark"] .mention-item:hover,
[data-bs-theme="dark"] .mention-item.aktiv {
    background: #0d2e45;
    color: #e6edf3;
}

/* ── EasyMDE ───────────────────────────────────────────────── */
.EasyMDEContainer .CodeMirror {
    border: 1px solid #dee2e6;
    border-radius: 0 0 .375rem .375rem;
    font-family: inherit;
    font-size: .9rem;
    color: #212529;
    background: #fff;
    line-height: 1.6;
}
.EasyMDEContainer .CodeMirror-scroll {
    min-height: 80px;
    background: #fff;
    -webkit-tap-highlight-color: transparent;
}
[data-bs-theme="dark"] .EasyMDEContainer .CodeMirror-scroll {
    background: #1c2128;
}
.EasyMDEContainer .CodeMirror:focus-within {
    border-color: var(--dghk-blau);
    box-shadow: 0 0 0 .2rem rgba(64,135,192,.2);
}
.EasyMDEContainer .editor-toolbar {
    border: 1px solid #dee2e6;
    border-bottom: none;
    border-radius: .375rem .375rem 0 0;
    background: #f8f9fa;
    opacity: 1;
}
.EasyMDEContainer .editor-toolbar button {
    color: #6c757d !important;
}
.EasyMDEContainer .editor-toolbar button:hover,
.EasyMDEContainer .editor-toolbar button.active {
    background: #e9ecef !important;
    border-color: #dee2e6 !important;
    color: #212529 !important;
}
.EasyMDEContainer .editor-toolbar i.separator { border-color: #dee2e6; }
.EasyMDEContainer .editor-preview {
    background: #fff;
    font-size: .875rem;
    line-height: 1.6;
    color: #212529;
}
.EasyMDEContainer .editor-preview h1 { font-size: 1.1rem;  font-weight: 700; margin: .5rem 0 .25rem; }
.EasyMDEContainer .editor-preview h2 { font-size: 1rem;    font-weight: 700; margin: .5rem 0 .25rem; }
.EasyMDEContainer .editor-preview h3 { font-size: .9rem;   font-weight: 600; margin: .4rem 0 .2rem;  }
.EasyMDEContainer .CodeMirror .cm-header-1 { font-size: 1.1rem; }
.EasyMDEContainer .CodeMirror .cm-header-2 { font-size: 1rem; }
.EasyMDEContainer .CodeMirror .cm-header-3 { font-size: .9rem; }
.md-rendered { font-size: .875rem; line-height: 1.7; }
.md-rendered p:last-child { margin-bottom: 0; }
.md-rendered ul, .md-rendered ol { padding-left: 1.25rem; }
.md-rendered pre { background: #f8f9fa; border-radius: .375rem; padding: .75rem; font-size: .8rem; }
.md-rendered code { background: #f8f9fa; padding: .1em .3em; border-radius: 3px; font-size: .85em; }
.md-rendered blockquote { border-left: 3px solid var(--dghk-blau); padding-left: .75rem; color: #6c757d; }
.md-rendered img { max-width: 100%; height: auto; border-radius: .375rem; cursor: zoom-in; }

/* ── Bild-Lightbox ────────────────────────────────────────────────────────── */
#mdLightbox {
    display: none;
    position: fixed; inset: 0; z-index: 10000;
    background: rgba(0,0,0,.85);
    align-items: center; justify-content: center;
    cursor: zoom-out;
}
#mdLightbox.aktiv { display: flex; }
#mdLightbox img {
    max-width: 92vw; max-height: 92vh;
    border-radius: .5rem;
    box-shadow: 0 8px 40px rgba(0,0,0,.6);
    object-fit: contain;
}

/* ── Markdown Checkliste ──────────────────────────────────────────────────── */
.md-rendered ul:has(.md-checkbox) { list-style: none; padding-left: 0; }
.md-rendered li:has(.md-checkbox) { display: flex; align-items: flex-start; gap: .45rem; margin: .2rem 0; }
.md-checkbox {
    flex-shrink: 0;
    width: 16px; height: 16px;
    margin-top: .18em;
    display: inline-block;
    cursor: pointer;
    transition: transform .1s, opacity .1s;
}
.md-checkbox--checked { color: var(--dghk-blau, #4087c0); }
.md-checkbox:hover    { transform: scale(1.15); opacity: .8; }
.md-rendered li:has(.md-checkbox--checked) { color: var(--bs-secondary-color, #6c757d); }

/* EasyMDE Dark Mode */
[data-bs-theme="dark"] .EasyMDEContainer .CodeMirror {
    background: #1c2128;
    color: #e6edf3;
    border-color: #30363d;
}
[data-bs-theme="dark"] .EasyMDEContainer .CodeMirror-cursor { border-left-color: #e6edf3; }
[data-bs-theme="dark"] .EasyMDEContainer .CodeMirror-selectedtext,
[data-bs-theme="dark"] .EasyMDEContainer .CodeMirror-selected { background: #2d4a8a !important; }
[data-bs-theme="dark"] .EasyMDEContainer .editor-toolbar {
    background: #161b22;
    border-color: #30363d;
}
[data-bs-theme="dark"] .EasyMDEContainer .editor-toolbar button { color: #8b949e !important; }
[data-bs-theme="dark"] .EasyMDEContainer .editor-toolbar button:hover,
[data-bs-theme="dark"] .EasyMDEContainer .editor-toolbar button.active {
    background: #30363d !important;
    border-color: #30363d !important;
    color: #e6edf3 !important;
}
[data-bs-theme="dark"] .EasyMDEContainer .editor-toolbar i.separator { border-color: #30363d; }
[data-bs-theme="dark"] .EasyMDEContainer .editor-preview {
    background: #1c2128;
    color: #e6edf3;
}
[data-bs-theme="dark"] .EasyMDEContainer .CodeMirror:focus-within {
    border-color: var(--dghk-blau);
    box-shadow: 0 0 0 .2rem rgba(64,135,192,.25);
}
[data-bs-theme="dark"] .md-rendered pre  { background: #161b22; }
[data-bs-theme="dark"] .md-rendered code { background: #161b22; color: #e6edf3; }
[data-bs-theme="dark"] .md-rendered blockquote { color: #8b949e; }

textarea.auto-resize { overflow-y: hidden; resize: none; }

/* iOS Safari: Modal-Inhalt bleibt beim Öffnen der virtuellen Tastatur sichtbar */
.modal-content {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
