/* Globale Korrekturen für Touch-Geräte.
 *
 * Bewusst eine eigene Datei statt eines <style>-Blocks: die App hat neun Seiten mit
 * eigenem <head> (Login, Registrierung, Passwort-Reset, Impressum, Datenschutz, AGB,
 * AVV, Landingpage, App-Header). Eine Regel, die nur im App-Header steht, würde
 * ausgerechnet auf der Login-Seite fehlen — dem ersten, was am Handy aufgeht.
 *
 * Wird NACH dem Tailwind-CDN eingebunden.
 *
 * Zum !important weiter unten: Tailwind setzt die Schriftgröße über Klassen wie
 * .text-sm, ein reiner Element-Selektor (textarea) verliert dagegen. Genau daran
 * scheiterte der erste Versuch — das Chat-Feld ist ein <textarea class="text-sm">
 * und blieb bei 14px, obwohl die Regel dastand. Ein Spezifitäts-Trick wie
 * textarea:not([disabled]) würde zwar reichen, sieht aber willkürlich aus und
 * fällt beim nächsten Aufräumen still wieder raus. Hier ist !important das
 * ehrlichere Werkzeug: eine Geräte-Korrektur, die immer gewinnen muss.
 */

/* ── iOS: kein Auto-Zoom beim Fokus auf Eingabefelder ────────────────────────
 * Safari zoomt die Seite heran, sobald ein Formularfeld mit einer Schriftgröße
 * unter 16px den Fokus bekommt, und zoomt danach NICHT von selbst zurück. Die App
 * nutzt an vielen Stellen text-sm (14px) — betroffen sind unter anderem das
 * Chat- und DM-Eingabefeld, die Suchfelder und alle Modal-Formulare.
 *
 * Gegenmittel ist bewusst NICHT maximum-scale=1 im viewport-Meta: das würde das
 * Auseinanderziehen mit zwei Fingern komplett abschalten und die App für Menschen
 * mit eingeschränktem Sehvermögen unbrauchbar machen.
 *
 * Android/Chrome zoomt hier ohnehin nicht — die Regel schadet dort nicht, sie
 * macht die Felder nur etwas besser lesbar.
 *
 * (hover: none) and (pointer: coarse) trifft echte Touch-Geräte und lässt
 * Notebooks mit Touchscreen und angeschlossener Maus in Ruhe.
 */
@media (hover: none) and (pointer: coarse) {
    input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"]),
    select,
    textarea {
        font-size: 16px !important;
    }
}

/* ── Kein Doppeltipp-Zoom auf Bedienelementen ────────────────────────────────
 * Safari wartet nach einem Tap auf einen möglichen zweiten und zoomt dann heran.
 * Wer zwei Nachrichten schnell hintereinander wegtippt oder zweimal auf die Glocke
 * drückt, landet ungewollt in der vergrößerten Ansicht.
 *
 * `manipulation` erlaubt weiterhin Scrollen und Pinch-Zoom, schaltet aber genau
 * diese Doppeltipp-Geste ab. Nur auf Bedienelementen, nicht auf Textinhalten —
 * dort soll der Doppeltipp zum Vergrößern erhalten bleiben.
 */
button,
[role="button"],
a,
label,
summary,
input:not([type="text"]):not([type="email"]):not([type="password"]):not([type="search"]):not([type="tel"]):not([type="url"]):not([type="number"]),
select {
    touch-action: manipulation;
}
