/* Handy-Bedienung (Usability-Test 2026-10-24).
   Tippflaechen mindestens 44 px, Schrift mindestens 12 px. Gilt nur unter 640 px (Ausnahme: die zwei
   Ausblend-Regeln fuer die Hilfe-Bedienelemente, die es nur am Handy gibt).
   Nur Klassen und eine Variable, keine nackten Element-Regeln. Die dichten
   Arbeitsflaechen (Trainingsplaner, Abrechnungstabellen, Hallengitter) bleiben
   absichtlich ausgenommen, dort sprengen 44 px das Layout.
   Diese Datei laedt als letzte, damit sie gleich spezifische Regeln davor schlaegt. */
/* Hilfe: Schalter fuer die Kapitelliste und Inhaltsverzeichnis des Kapitels gibt es nur am Handy. */
.hi-nav-cb { position: absolute; opacity: 0; width: 1px; height: 1px; }
.hi-nav-knopf, .hi-toc-mobil { display: none; }

@media (max-width: 640px) {
    /* Alle einzeiligen Felder und Feld-Knoepfe (siehe "Einheitliche Feldhoehen"). */
    :root { --feld-hoehe: 44px; }
    .aw .aw-filters { --aw-ctl-h: 44px; }

    /* Knoepfe und Reiter */
    .so-btn.so-btn-mini, .ueb-tab, .hb-btn, .aw-btn-g, .pb-btn,
    .abr-hinweis-btn, .ad-btn-klein, .app-hinweis-link, .hero-badge-ghost,
    .aw-seg button, .ad-nav a, .ad-gruppe a, .back-to-top {
        min-height: 44px; box-sizing: border-box;
        display: inline-flex; align-items: center; justify-content: center;
    }
    .so-btn.so-btn-mini { padding-inline: 14px; font-size: 0.8rem; }
    .ad-nav a, .ad-gruppe a { display: flex; justify-content: flex-start; }

    /* Textlinks: Tippflaeche ueber Innenabstand verlaengern, das Layout bleibt */
    .so-person, .page-home .ha-mehr, footer a { display: inline-block; padding-block: 12px; }
    footer a { min-height: 44px; box-sizing: border-box; }

    /* Schrift unter 12 px */
    .page-home .ha-wann, .page-home .ha-anzahl, .page-home .ha-dialog-kopf .ha-wann,
    .ter-art, .ter-ha, .ter-team, .so-team, .so-team em, .pf-lbl, .abw-lbl,
    .hb-tile .l, .aw-fld label, .ad-sec .cnt, .ad-pill, .ad-stat .l, .ad-gruppe > summary, .ti-info > .hb-harz { font-size: 0.75rem; }
    /* Bewusst unveraendert: die Logo-Unterzeile "Inside Portal" (Wortmarke) und das Prozentzeichen im Fortschrittsring. */

    /* Personen: Karte in Karte (.ad-main > .ad-card) verschenkte rund 80 px Zeilenbreite. Nur die Seiten mit der Personenliste. */
    .ad-main:has(.so-liste) { padding: 8px; }
    .ad-card:has(.so-liste) { padding: 12px; }

    /* Hilfe: Kapitelliste zugeklappt, das Inhaltsverzeichnis des Kapitels steht ueber dem Text. */
    .hi-nav-titel, .hi-nav-toc { display: none; }
    .hi-nav-knopf { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 44px; padding: 0 14px; border-radius: 10px;
        border: 1px solid rgba(var(--ink) / 0.24); background: rgba(var(--ink) / 0.08); color: rgb(var(--ink)); font-weight: 700; cursor: pointer; }
    .hi-nav-knopf i { transition: transform .15s ease; }
    .hi-nav-cb:checked + .hi-nav-knopf i { transform: rotate(180deg); }
    .hi-nav-cb:focus-visible + .hi-nav-knopf { outline: 2px solid var(--tigers-yellow); outline-offset: 2px; }
    .hi-nav-cb:not(:checked) ~ ul { display: none; }
    .hi-toc-mobil { display: block; margin: 12px 0; }
    .hi-toc-mobil-titel { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: rgba(var(--ink) / 0.7); margin-bottom: 6px; }
    .hi-toc-mobil a { display: inline-flex; align-items: center; min-height: 44px; box-sizing: border-box; padding: 0 12px; margin: 0 6px 6px 0; border-radius: 10px;
        border: 1px solid rgba(var(--ink) / 0.24); background: rgba(var(--ink) / 0.08); color: rgb(var(--ink)); font-size: 0.85rem; text-decoration: none; }
}
