/* DIE AUFTRAGSZEILE IN DER CLAUDE-SCHALE - EIN TEXTFELD, KEIN EINZEILER
   ===========================================================================

   WARUM ES DIESE DATEI GIBT, und das ist ein GEMESSENER Befund vom
   16.10.2026: die Claude-Schale baute ihre Zeile bis heute als
   `<input class="composer__input" type="text">`. Damit konnte sie weder
   "Enter sendet, Shift+Enter bricht um" noch "das Feld waechst mit" - zwei
   Zusagen aus Julias Spezifikation vom 25.09.2026 (Abschnitte 6 und 7), die
   in der alten Schale seit damals gebaut sind.

   `_composer` liefert jetzt in BEIDEN Schalen dasselbe `<textarea>`. Die
   alten Regeln dafuer stehen in `alphatest.css` unter `.spido`
   (`.spido .auftragszeile textarea`) - eine Klasse, die der Koerper der
   Claude-Seiten nicht traegt. `spido-system.css` kennt nur den Einzeiler:
   `.composer__input` setzt Rahmen, Schrift und Farbe, aber kein `resize` und
   keine Zeilenhoehe. Ein Textfeld ohne diese zwei Angaben bekommt vom Browser
   seinen Anfasser unten rechts in die Pille gezeichnet.

   WARUM NICHT IN `claude/spido-system.css`: die Blaetter unter
   `statisch/claude/` kommen mit jeder Designuebergabe neu und liegen dort
   unveraendert. Wer dort eine Regel nachtraegt, verliert sie bei der naechsten
   Uebergabe - oder, schlimmer, haelt sie fuer Teil der Uebergabe. Dasselbe
   Vorgehen und dieselbe Begruendung wie bei `antwortmarken.css` (15.10.2026).

   KEINE ZWEITE WAHRHEIT: hier steht keine Farbe, keine Schrift, kein Abstand
   und keine Groesse neu, die `spido-system.css` schon setzt. Nur das, was ein
   `<textarea>` an der Stelle eines `<input>` braucht. */

/* `resize:none` - die Hoehe rechnet das Skript aus `scrollHeight` (bis 200 px,
   danach scrollt das Feld innen). Ein Anfasser daneben waere ein zweiter Weg
   zur selben Hoehe, und er zieht die Pille auseinander.
   `overflow-y:hidden` ist der Ausgangszustand; das Skript setzt ihn auf
   `auto`, sobald der Text ueber die Grenze waechst. Ohne das zeigt mancher
   Browser schon in der ersten Zeile eine Rollleiste.
   Die Zeilenhoehe steht hier, weil sie in die Hoehenrechnung eingeht: ohne
   eigene Angabe erbt das Feld `normal`, und das ist je Schrift etwas anderes. */
textarea.composer__input {
  resize: none;
  overflow-y: hidden;
  line-height: 1.45;
  padding-top: 0;
  padding-bottom: 0;
  max-height: 200px;
}

/* WAS HIER NICHT STEHT, UND WARUM - gemessen am 16.10.2026, nicht geraten.
   ===========================================================================
   Der erste Entwurf dieses Blattes hat die Zeile unten ausgerichtet
   (`align-items:flex-end`), so wie die alte Schale es tut
   (`.spido .auftragszeile`). Am Glas gemessen sass das Textfeld damit 8 px
   unter der Mitte der ruhenden Zeile: es ist 20 px hoch, der Senden-Knopf 36,
   und wer beide am Boden ausrichtet, bekommt zwei verschiedene Mitten.

   Es gerade zu biegen hiesse, dem Feld eine Ruhehoehe zu geben, die zur Hoehe
   des Senden-Knopfes passt - und die ist in `spido-system.css` je Breakpoint
   eine andere (42 / 38 / 36 px). Diese Zahlen hier zu wiederholen waere eine
   zweite Wahrheit ueber dieselbe Gestalt, und sie liefe beim naechsten
   Designstand auseinander.

   DESHALB BLEIBT `align-items:center` DER UEBERGABE STEHEN. In Ruhe sitzt
   alles auf einer Linie - gemessen 0 px Abweichung. Waechst das Feld, stehen
   Mikrofon und Senden mittig daneben statt am Boden; das ist die Geometrie,
   die das uebergebene Blatt fuer diese Pille vorgibt, und sie ist keine
   Verschlechterung, sondern die Vorgabe. Wer sie aendern will, aendert sie
   dort - nicht hier daneben. */

/* WAEHREND DER AUFNAHME IST DAS MIKROFON ROT UND PULST - man soll nicht raten
   muessen, ob gerade zugehoert wird. Die Zustandsklassen setzt
   `_ZEILENSKRIPT` (`laeuft`, `wartet`); in `alphatest.css` sind sie seit dem
   25.09.2026 gezeichnet, in der Claude-Schale gab es sie nie, weil es dort
   kein verdrahtetes Mikrofon gab. Dieselben Farben, damit nicht zwei
   Oberflaechen verschieden rot werden. */
.composer__icon.laeuft { color: #C0322B; background: #FDECEA;
  animation: zpuls 1.4s ease-in-out infinite; }
.composer__icon.wartet { opacity: .55; }
@keyframes zpuls { 0%, 100% { opacity: 1 } 50% { opacity: .45 } }
@media (prefers-reduced-motion: reduce) {
  .composer__icon.laeuft { animation: none }
}

/* "Spido arbeitet ..." - derselbe Hinweis wie in der alten Schale, dort
   `.spido .zarbeitet`. `_ARBEITET` legt den Absatz beim Absenden hinter dem
   Formular an; ohne Regel stuende er in Fliesstextgroesse mitten in der
   Zeile. `antwortmarken.css` nennt `.zarbeitet` in seinem Kopf als eine der
   Klassen, die den Claude-Blaettern fehlen, definiert sie aber nicht - hier
   gehoert sie hin, weil sie zur Zeile gehoert. */
.composer-area .zarbeitet { margin: 4px 0 0; font-size: 11px; line-height: 1.4;
  color: #6F6A79; }
.composer-area .zarbeitet[hidden] { display: none }
.composer__send:disabled { opacity: .45; cursor: default }
@media print { .composer-area .zarbeitet { display: none } }
