/* Flight Club Saar · Technik-Hilfe (FPV-Doktor, Arming-Flags, Kompatibilitäts-Check, Vereinswissen, Frage)
   Nur Stile dieser Seite, Präfix th-. Farben und Schriften aus fcs.css. */

/* ---------- Seitenkopf ---------- */
.th-head .bgvid{filter:saturate(1.15) brightness(.5) hue-rotate(-8deg)}
.th-head-lede{margin:14px 0 22px!important;max-width:58ch}
.th-osd-tl{top:clamp(88px,13vh,120px);left:clamp(28px,5vw,64px)}
.th-osd-tr{top:clamp(88px,13vh,120px);right:clamp(28px,5vw,64px)}
.th-osd-warn{position:absolute;z-index:4;right:clamp(28px,8vw,140px);top:38%;font:700 clamp(18px,2.3vw,30px)/1 var(--hud);letter-spacing:.12em;color:var(--amber);text-shadow:0 0 14px rgba(255,176,32,.6),0 0 2px #000;pointer-events:none;text-align:right;white-space:nowrap}
.th-osd-warn.ok{color:var(--green);text-shadow:0 0 14px rgba(62,224,138,.6),0 0 2px #000}
.th-osd-warn::before{content:"";display:block;margin:0 0 10px auto;width:64px;height:2px;background:currentColor;box-shadow:0 0 10px currentColor}
.th-reticle{position:absolute;z-index:3;right:clamp(60px,14vw,260px);top:calc(38% + 60px);width:88px;height:88px;border:1.5px solid rgba(234,244,255,.55);border-radius:50%;pointer-events:none;animation:th-spin 14s linear infinite}
.th-reticle::before,.th-reticle::after{content:"";position:absolute;left:50%;top:50%;background:rgba(234,244,255,.7)}
.th-reticle::before{width:2px;height:120%;transform:translate(-50%,-50%)}
.th-reticle::after{width:120%;height:2px;transform:translate(-50%,-50%)}
@keyframes th-spin{to{transform:rotate(360deg)}}
@media (max-width:820px){.th-osd-warn,.th-reticle{display:none}}
@media (max-width:620px){
  .th-osd-tl,.th-osd-tr{display:none}
  .th-quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .th-quick .btn{justify-content:center;padding:13px 10px;font-size:11.5px;letter-spacing:.08em;min-height:46px;text-align:center}
  .th-quick .btn.solid{grid-column:1/-1}
}

/* ---------- Kompakte Abschnittsköpfe (kurz scrollen) ---------- */
.th-sec{padding:clamp(56px,8vh,96px) 0}
.th-sec .sec-head{gap:10px;margin-bottom:clamp(20px,3vw,30px)}
.th-sec .sec-head .h2{font-size:clamp(38px,5.2vw,76px);margin:0;line-height:.92}
.th-sec .sec-head .lede{margin:0;font-size:clamp(16px,1.35vw,19px);max-width:62ch}
.is-off .th-reticle,.is-off .th-pulse path,.is-off .th-sym-track,.is-off .th-wave,.is-off .th-osdflag,.is-off .dot,.is-off .th-chip.pulse,.is-off .th-typing i,.is-off .th-nudge::before,.is-off .th-flag-hint::before{animation-play-state:paused!important}

/* ---------- Symptom-Laufband ---------- */
.th-strip{position:relative;z-index:6;padding:14px 0 0}
.th-strip-l{display:flex;align-items:center;gap:10px;margin:0 auto 10px;font:600 12px/1.3 var(--hud);letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
.th-strip-l .dot{color:var(--amber);flex:none;animation:th-ping 1.6s ease-out infinite}
.th-sym-track{gap:0;animation-duration:46s}
.th-sym-set{display:inline-flex;align-items:center}
.th-sym-marquee:hover .th-sym-track,.th-sym-marquee:focus-within .th-sym-track{animation-play-state:paused}
.th-sym{display:inline-flex;align-items:center;gap:22px;padding:8px 22px 8px 4px;border:0;background:none;cursor:pointer;font:400 clamp(28px,3.4vw,46px)/1 var(--big);letter-spacing:.04em;text-transform:uppercase;color:var(--osd);min-height:44px;transition:color .25s,-webkit-text-stroke-color .25s}
.th-sym-marquee{padding:12px 0}
/* Touch: kein Laufband (bewegte Knöpfe sind schwer zu treffen), sondern eine Leiste zum Wischen */
@media (hover:none){
  .th-sym-marquee{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  .th-sym-marquee::-webkit-scrollbar{display:none}
  .th-sym-track{animation:none;padding-inline:var(--pad)}
  .th-sym-set[aria-hidden=true]{display:none}
  .th-sym{scroll-snap-align:start}
}
.th-sym::after{content:"";flex:none;width:12px;height:12px;border-radius:50%;background:var(--sig);box-shadow:0 0 14px var(--sig)}
.th-sym:nth-child(even){-webkit-text-stroke:1.4px var(--osd);color:transparent}
.th-sym:hover,.th-sym:focus-visible{color:var(--sig);-webkit-text-stroke-color:var(--sig)}
.th-sym:nth-child(even):hover,.th-sym:nth-child(even):focus-visible{color:var(--sig)}
@keyframes th-ping{0%{box-shadow:0 0 0 0 currentColor}70%{box-shadow:0 0 0 10px transparent}100%{box-shadow:0 0 0 0 transparent}}

/* ---------- FPV-Doktor ---------- */
.th-honest{display:flex;gap:10px;align-items:flex-start;margin:4px 0 0;max-width:68ch;padding:10px 14px;border-radius:12px;border:1px solid rgba(63,224,255,.3);background:rgba(63,224,255,.05);font-size:15px;color:#cfe8f5}
.th-honest .dot{flex:none;margin-top:7px;color:var(--sig)}
.th-honest a{color:var(--sig)}
.th-doc-grid{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);gap:clamp(16px,2vw,28px);align-items:start}
@media (max-width:980px){.th-doc-grid{grid-template-columns:minmax(0,1fr)}}

.th-doc{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:clamp(480px,68svh,640px);border-radius:24px;border:1px solid var(--line-hi);overflow:hidden;isolation:isolate;
  background:radial-gradient(120% 60% at 50% 0%,rgba(31,73,125,.5),transparent 62%),radial-gradient(80% 60% at 100% 100%,rgba(63,224,255,.08),transparent 60%),linear-gradient(180deg,#06101f,#040912);
  box-shadow:0 50px 120px -50px rgba(63,224,255,.35),0 0 0 1px rgba(255,255,255,.02) inset}
.th-doc::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:4;background:repeating-linear-gradient(0deg,rgba(255,255,255,.028) 0 1px,transparent 1px 3px);mix-blend-mode:overlay}
.th-cn{position:absolute;z-index:5;width:18px;height:18px;border:2px solid rgba(63,224,255,.7);pointer-events:none}
.th-cn.tl{top:8px;left:8px;border-right:0;border-bottom:0;border-top-left-radius:8px}
.th-cn.tr{top:8px;right:8px;border-left:0;border-bottom:0;border-top-right-radius:8px}
.th-cn.bl{bottom:8px;left:8px;border-right:0;border-top:0;border-bottom-left-radius:8px}
.th-cn.br{bottom:8px;right:8px;border-left:0;border-top:0;border-bottom-right-radius:8px}
/* Breit: Chat wächst mit dem Flag-Werkzeug daneben mit, keine leere Fläche */
@media (min-width:981px){.th-doc-grid{align-items:stretch}.th-doc{height:auto;min-height:clamp(480px,68svh,640px)}.th-log{contain:size}}

.th-doc-top{position:relative;z-index:3;display:flex;align-items:center;gap:12px;padding:16px 20px 14px 22px;border-bottom:1px solid var(--line);background:rgba(4,9,18,.55);font:600 12px/1 var(--hud);letter-spacing:.16em;text-transform:uppercase}
.th-doc-id{margin:0;display:flex;align-items:center;gap:9px;color:#fff;white-space:nowrap}
.th-doc-id .dot{color:var(--green);animation:th-ping 2s ease-out infinite}
.th-pulse{flex:1;min-width:40px;max-width:220px;height:22px;overflow:visible}
.th-pulse path{fill:none;stroke:var(--sig);stroke-width:1.6;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(63,224,255,.8));stroke-dasharray:60 240;animation:th-ecg 2.4s linear infinite}
@keyframes th-ecg{from{stroke-dashoffset:300}to{stroke-dashoffset:0}}
.th-doc-db{margin:0;color:var(--mute);white-space:nowrap}
.th-restart{margin-left:auto;flex:none;border:1px solid var(--line-hi);background:rgba(255,255,255,.03);border-radius:999px;padding:9px 13px;font:600 11px/1 var(--hud);letter-spacing:.14em;text-transform:uppercase;color:#cfe0f5;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.th-restart:hover{background:var(--sig);border-color:var(--sig);color:var(--night)}
@media (max-width:640px){.th-doc-db{display:none}.th-doc-top{padding:14px 16px}}
@media (max-width:400px){.th-pulse{display:none}}

.th-log{position:relative;z-index:1;overflow-y:auto;overscroll-behavior:contain;padding:20px clamp(12px,2.4vw,26px) 28px;display:flex;flex-direction:column;gap:14px;scrollbar-width:thin;scrollbar-color:rgba(158,196,255,.3) transparent}
.th-log:focus-visible{outline-offset:-4px}
.th-msg{position:relative;max-width:min(94%,660px);padding:14px 16px 15px;border-radius:6px 18px 18px 18px;background:rgba(16,36,74,.66);border:1px solid var(--line);font-size:15.5px;line-height:1.55;color:#e3eefb;align-self:flex-start;overflow-wrap:break-word}
.th-msg.me{align-self:flex-end;border-radius:18px 6px 18px 18px;background:rgba(63,224,255,.12);border-color:rgba(63,224,255,.42);color:#e8fbff}
.th-msg .who{display:flex;align-items:center;gap:8px;font:600 10.5px/1 var(--hud);letter-spacing:.22em;text-transform:uppercase;color:var(--sig);margin-bottom:9px}
.th-msg .who::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.th-msg.me .who{justify-content:flex-end;color:#9fefff}
.th-msg p{margin:0 0 .65em}
.th-msg p:last-child{margin-bottom:0}
.th-msg ol,.th-msg ul{margin:.3em 0 .7em;padding-left:1.35em;display:grid;gap:.5em}
.th-msg li{padding-left:.2em}
.th-msg li::marker{color:var(--sig);font:700 13px var(--hud)}
.th-msg a{color:var(--sig)}
.th-msg code,.th-flag code,.th-tips code,.th-flag-sub code{font:500 .9em var(--hud);background:rgba(63,224,255,.1);border:1px solid rgba(63,224,255,.25);padding:1px 6px;border-radius:6px;color:#bff6ff;overflow-wrap:anywhere}
.th-tt{display:flex;align-items:center;gap:10px;font:700 12.5px/1.25 var(--hud)!important;letter-spacing:.16em;text-transform:uppercase;color:var(--amber);margin-bottom:.7em!important}
.th-tt::before{content:"";width:16px;height:2px;background:currentColor;box-shadow:0 0 8px currentColor;flex:none}
.th-warn{padding:10px 12px;border-radius:10px;border:1px solid rgba(255,75,92,.55);background:rgba(255,75,92,.09);color:#ffd5da}
.th-warn b{color:#ff8d98}
.th-tip{padding:10px 12px;border-radius:10px;border:1px dashed rgba(63,224,255,.42);background:rgba(63,224,255,.05);color:#c9f6ff}
.th-note{font-size:13px;color:var(--mute)}
.th-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.th-chip{border:1px solid rgba(63,224,255,.55);background:rgba(63,224,255,.06);color:#dffaff;border-radius:999px;padding:11px 15px;min-height:42px;font:600 13px/1.15 var(--hud);letter-spacing:.04em;cursor:pointer;text-align:left;transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease),opacity .25s}
.th-chip:hover{background:var(--sig);color:var(--night);border-color:var(--sig)}
.th-chip:active{transform:scale(.96)}
.th-chip.ok{border-color:rgba(62,224,138,.6);background:rgba(62,224,138,.07);color:#c8ffe2}
.th-chip.ok:hover{background:var(--green);color:var(--night)}
.th-chip.ask{border-color:rgba(255,176,32,.65);background:rgba(255,176,32,.07);color:#ffe2a8}
.th-chip.ask:hover{background:var(--amber);color:var(--night)}
.th-chip.alt{border-style:dashed}
.th-chip.used{opacity:.5}
.th-chip.pulse{animation:th-chip-ping 1.8s ease-out infinite}
@keyframes th-chip-ping{0%{box-shadow:0 0 0 0 rgba(63,224,255,.55)}70%{box-shadow:0 0 0 12px rgba(63,224,255,0)}100%{box-shadow:0 0 0 0 rgba(63,224,255,0)}}
.th-nudge{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font:600 11px/1.3 var(--hud);letter-spacing:.18em;text-transform:uppercase;color:var(--amber)}
.th-nudge::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;animation:th-ping 1.4s ease-out infinite}
.th-typing{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:14px 16px;border-radius:6px 18px 18px 18px;background:rgba(16,36,74,.66);border:1px solid var(--line)}
.th-typing i{width:7px;height:7px;border-radius:50%;background:var(--sig);box-shadow:0 0 8px var(--sig);animation:th-dot 1s ease-in-out infinite}
.th-typing i:nth-child(2){animation-delay:.15s}.th-typing i:nth-child(3){animation-delay:.3s}
.th-typing span{margin-left:6px;font:600 10.5px var(--hud);letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
@keyframes th-dot{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(-5px);opacity:1}}
.th-armed{display:inline-block;margin-top:10px;padding:6px 12px;border:2px solid var(--green);border-radius:6px;font:700 14px/1 var(--hud);letter-spacing:.3em;color:var(--green);text-shadow:0 0 10px rgba(62,224,138,.7);box-shadow:0 0 18px rgba(62,224,138,.35) inset}

/* Kanal-Band im Chat */
.th-band{margin:.6em 0 .9em}
.th-band-bar{position:relative;height:46px;border-radius:10px;background:rgba(255,75,92,.1);border:1px solid rgba(255,75,92,.35);overflow:hidden}
.th-band-ok{position:absolute;top:0;bottom:0;background:linear-gradient(180deg,rgba(62,224,138,.24),rgba(62,224,138,.1));border-inline:1px solid rgba(62,224,138,.75)}
.th-band-ok span{position:absolute;left:6px;top:4px;font:600 9.5px var(--hud);letter-spacing:.1em;color:#9ff5c7;white-space:nowrap}
.th-band-ch{position:absolute;bottom:0;width:2px;height:24px;margin-left:-1px;background:currentColor;box-shadow:0 0 8px currentColor}
.th-band-ch.in{color:var(--green)}.th-band-ch.out{color:var(--red)}
.th-band-ch b{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);font:700 10px var(--hud);color:currentColor}
.th-band-ax{display:flex;justify-content:space-between;font:500 10px var(--hud);color:var(--mute);margin-top:4px}
.th-chgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:.5em 0 .8em}
.th-chgrid div{padding:8px 6px;border-radius:9px;border:1px solid;text-align:center;font:600 11px/1.25 var(--hud)}
.th-chgrid b{display:block;font-size:15px;letter-spacing:.06em}
.th-chgrid .in{border-color:rgba(62,224,138,.55);background:rgba(62,224,138,.08);color:#bdf7d6}
.th-chgrid .out{border-color:rgba(255,75,92,.5);background:rgba(255,75,92,.07);color:#ffc2c9}
@media (max-width:420px){.th-chgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Eingabe */
.th-in{position:relative;z-index:3;padding:12px clamp(12px,2.4vw,22px) 14px;border-top:1px solid var(--line);background:rgba(4,9,18,.8);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.th-in-l{display:block;margin-bottom:8px;font:600 11px/1 var(--hud);letter-spacing:.18em;text-transform:uppercase;color:#bcd0ea}
.th-in-row{display:flex;gap:8px}
.th-in input{flex:1;min-width:0;padding:13px 15px;border-radius:12px;border:1px solid var(--line-hi);background:rgba(3,8,18,.75);color:var(--osd);font:400 16px/1.3 var(--body);transition:border-color .25s,box-shadow .25s}
.th-in input:focus{outline:none;border-color:var(--sig);box-shadow:0 0 0 4px rgba(63,224,255,.15)}
.th-send{flex:none;display:inline-flex;align-items:center;gap:8px;padding:0 18px;min-height:48px;border-radius:12px;border:1px solid var(--sig);background:var(--sig);color:var(--night);font:700 13px/1 var(--hud);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:transform .2s,box-shadow .25s}
.th-send svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.th-send:hover{box-shadow:0 0 24px rgba(63,224,255,.55)}
.th-send:active{transform:scale(.95)}
.th-in-hint{margin:8px 0 0;font-size:12.5px;color:var(--mute)}
@media (max-width:420px){.th-send span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.th-send{padding:0 14px}}

/* ---------- Arming-Flag-Werkzeug ---------- */
.th-flag{align-self:start}
.th-flag>summary{align-items:center}
.th-flag-sum{display:grid;gap:6px}
.th-flag-sum small{font:400 14px/1.4 var(--body);text-transform:none;letter-spacing:0;color:var(--mute)}
.th-flag[open] .th-flag-sum small{display:none}
.th-flag-in{display:grid;gap:14px}
.th-flag-sub{margin:0;font-size:14.5px}
.th-osdscr{position:relative;aspect-ratio:2.2/1;border-radius:14px;overflow:hidden;display:grid;place-items:center;border:1px solid var(--line-hi);background:radial-gradient(90% 70% at 50% 40%,#2a4467 0%,#13243b 55%,#070f1c 100%)}
.th-osdscr::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 1px,transparent 1px 3px);pointer-events:none}
.th-osdscr span{position:absolute;font:600 12px/1 var(--hud);letter-spacing:.06em;color:#fff;text-shadow:0 0 3px #000,0 0 6px #000}
.th-osd-v{left:12px;bottom:12px}.th-osd-t{right:12px;bottom:12px}.th-osd-lq{left:12px;top:12px;color:var(--red)!important}.th-osd-m{right:12px;top:12px}
.th-hz{position:absolute;left:24%;right:24%;top:58%;height:2px;background:rgba(255,255,255,.8);box-shadow:0 0 4px #000;transform:rotate(-5deg)}
.th-x{position:absolute;left:50%;top:58%;width:18px;height:18px;margin:-9px 0 0 -9px;border:2px solid rgba(255,255,255,.85);border-radius:50%}
.th-osdflag{position:relative;z-index:2;margin-top:-10%;font:700 clamp(22px,2.6vw,34px)/1 var(--hud);letter-spacing:.1em;color:var(--amber);text-shadow:0 0 14px rgba(255,176,32,.65),0 0 2px #000;animation:blink 1s steps(2,end) infinite}
.th-osdflag.ok{color:var(--green);text-shadow:0 0 14px rgba(62,224,138,.65),0 0 2px #000;animation:none}
.th-flag .field input{text-transform:uppercase;font-family:var(--hud);letter-spacing:.08em}
.th-flagout{min-height:96px}
.th-flagout h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0 0 6px;font:700 15px/1.3 var(--hud);letter-spacing:.04em;text-transform:uppercase;color:#fff}
.th-flagout h3 code{font-size:14px}
.th-flagout p{margin:0 0 8px;font-size:15px;color:#cfe0f5}
.th-flagout ol{margin:0;padding-left:1.3em;display:grid;gap:6px;font-size:15px}
.th-flagout li::marker{color:var(--amber);font:700 13px var(--hud)}
.th-flagout .th-sug{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.th-flagchips{display:grid;gap:8px}
.th-flagchips .lbl{margin:0}
.th-fchips{display:flex;flex-wrap:wrap;gap:6px}
.th-fchip{padding:9px 10px;min-height:40px;border-radius:8px;border:1px solid var(--line-hi);background:rgba(255,255,255,.03);font:600 11.5px/1 var(--hud);letter-spacing:.06em;color:#dbe8f7;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.th-fchip:hover{border-color:var(--amber);color:var(--amber)}
.th-fchip[aria-pressed=true]{background:var(--amber);border-color:var(--amber);color:var(--night)}
.th-fmore{justify-self:start;border:0;background:none;padding:12px 0;min-height:44px;font:600 12px var(--hud);letter-spacing:.12em;text-transform:uppercase;color:var(--sig);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.th-flag-hint{margin:-4px 0 0;font:600 11px/1.3 var(--hud);letter-spacing:.16em;text-transform:uppercase;color:var(--amber);display:flex;align-items:center;gap:8px}
.th-flag-hint::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;animation:th-ping 1.4s ease-out infinite}

/* ---------- Kompatibilitäts-Check ---------- */
.th-check-sec{background:radial-gradient(70% 50% at 50% 40%,rgba(31,73,125,.32),transparent 70%)}
.th-cmp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,1fr);gap:clamp(14px,2vw,26px);align-items:stretch}
.th-cmp-col{margin:0;min-width:0;padding:16px 14px 18px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,rgba(16,36,74,.55),rgba(8,18,38,.7))}
.th-cmp-col legend{display:flex;align-items:center;gap:10px;padding:0 8px;font:600 12px/1.3 var(--hud);letter-spacing:.14em;text-transform:uppercase;color:#cfe0f5}
.th-cmp-col legend b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--sig);color:var(--night);font:700 13px/1 var(--hud);letter-spacing:0;flex:none}
.th-opts{display:grid;gap:8px;margin-top:8px}
.th-opt{position:relative;display:block}
.th-opt input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.th-opt span{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:rgba(3,8,18,.45);font:500 14.5px/1.25 var(--body);color:#dbe7f6;transition:border-color .25s,background .25s,box-shadow .25s,transform .25s var(--ease)}
.th-opt span i{flex:none;width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 10px var(--c)}
.th-opt span small{margin-left:auto;padding-left:6px;font:600 9.5px/1 var(--hud);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.th-opt:hover span{border-color:var(--line-hi);transform:translateX(2px)}
.th-opt input:checked+span{border-color:var(--c);background:rgba(63,224,255,.08);background:color-mix(in srgb,var(--c) 13%,transparent);box-shadow:0 0 0 1px var(--c) inset,0 0 26px -8px var(--c);color:#fff}
.th-opt input:checked+span small{color:var(--c)}
.th-opt input:focus-visible+span{outline:2px solid var(--sig);outline-offset:2px}
.th-cmp-stage{--vc:var(--mute);position:relative;display:grid;align-content:center;justify-items:center;gap:6px;text-align:center;padding:22px 18px;min-height:320px;border-radius:var(--r);border:1px solid var(--line-hi);overflow:hidden;background:radial-gradient(70% 60% at 50% 45%,rgba(63,224,255,.08),transparent 70%),linear-gradient(180deg,#071328,#040a16);transition:border-color .5s}
.th-cmp-stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}
.th-cmp-stage[data-v=ok]{--vc:var(--green);border-color:rgba(62,224,138,.6)}
.th-cmp-stage[data-v=warn]{--vc:var(--amber);border-color:rgba(255,176,32,.6)}
.th-cmp-stage[data-v=no]{--vc:var(--red);border-color:rgba(255,75,92,.6)}
.th-link{width:100%;max-width:440px;height:auto;overflow:visible}
.th-dev rect,.th-dev circle,.th-dev path{fill:rgba(16,36,74,.8);stroke:#cfe0f5;stroke-width:2}
.th-dev path{fill:none}
.th-dev text{fill:var(--mute);font:600 10px var(--hud);letter-spacing:.2em;stroke:none}
.th-beam{stroke:var(--vc);stroke-width:2.5;stroke-dasharray:4 9;opacity:.6;transition:stroke .4s,opacity .4s}
.th-cmp-stage[data-v=ok] .th-beam{stroke-dasharray:none;opacity:1;filter:url(#th-glow)}
.th-cmp-stage[data-v=warn] .th-beam{stroke-dasharray:12 6;opacity:.95}
.th-cmp-stage[data-v=no] .th-beam{opacity:.35}
.th-wave{fill:none;stroke:var(--vc);stroke-width:2.5;stroke-linecap:round;opacity:0;animation:th-wave 2.4s linear infinite;transition:stroke .4s}
.th-wave:nth-child(2){animation-delay:.8s}.th-wave:nth-child(3){animation-delay:1.6s}
@keyframes th-wave{0%{transform:translate(318px,78px);opacity:0}12%{opacity:1}88%{opacity:1}100%{transform:translate(84px,78px);opacity:0}}
.th-cmp-stage[data-v=no] .th-wave{animation-name:th-wave-no}
@keyframes th-wave-no{0%{transform:translate(318px,78px);opacity:0}15%{opacity:1}55%{opacity:.8}70%{transform:translate(215px,78px);opacity:0}100%{transform:translate(215px,78px);opacity:0}}
.th-cmp-stage[data-v=idle] .th-wave{stroke:var(--sig);opacity:.0;animation-duration:3.2s}
.th-break path{fill:none;stroke:var(--red);stroke-width:4;stroke-linecap:round}
.th-break{opacity:0;transition:opacity .3s}
.th-cmp-stage[data-v=no] .th-break{opacity:1}
.th-cmp-stage[data-v=ok] .th-dev-rx rect,.th-cmp-stage[data-v=ok] .th-dev-rx circle{stroke:var(--green)}
.th-verdict{position:relative;z-index:2}
.th-big{display:block;font:400 clamp(52px,5vw,84px)/.92 var(--big);letter-spacing:.02em;text-transform:uppercase;color:var(--vc);text-shadow:0 0 30px color-mix(in srgb,var(--vc) 45%,transparent);transition:color .4s}
.th-sub{display:inline-block;margin-top:.5em;padding:5px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--vc) 55%,transparent);color:var(--vc);font:600 12px/1.2 var(--hud);letter-spacing:.12em;text-transform:uppercase}
.th-sub[hidden]{display:none}
.th-why{max-width:44ch;margin:.6em auto 0;font-size:15px;line-height:1.55;color:#c9d8ec}
.th-cmp-hint{position:relative;z-index:2;display:flex;align-items:center;gap:8px;margin:10px 0 0;font:600 11px/1.3 var(--hud);letter-spacing:.16em;text-transform:uppercase;color:var(--amber)}
.th-cmp-hint .dot{animation:th-ping 1.4s ease-out infinite}
.th-cmp-note{margin:18px auto 0;max-width:70ch;text-align:center;font-size:13.5px;color:var(--mute)}
@media (max-width:980px){
  .th-cmp{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .th-cmp-stage{grid-column:1/-1;order:3;min-height:280px}
}
@media (max-width:640px){
  .th-cmp{grid-template-columns:minmax(0,1fr)}
  .th-opts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .th-opt span{display:grid;grid-template-columns:10px minmax(0,1fr);column-gap:8px;row-gap:3px;align-items:center;align-content:center;font-size:13.5px;min-height:56px;padding:9px 10px}
  .th-opt span small{grid-column:2;margin-left:0;padding-left:0}
  .th-cmp-stage{min-height:0;padding:18px 12px}
  .th-cmp-col{padding:12px 10px 14px}
  .th-cmp-col legend{font-size:11px}
}

/* ---------- Vereinswissen ---------- */
.th-wissen-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:clamp(18px,2.4vw,32px);align-items:start}
@media (max-width:900px){.th-wissen-grid{grid-template-columns:minmax(0,1fr)}}
.th-acc{display:grid;gap:10px}
.th-acc-hint{display:flex;align-items:center;gap:8px;margin:0 0 4px;font:600 11px/1.3 var(--hud);letter-spacing:.16em;text-transform:uppercase;color:var(--amber)}
.th-acc-hint .dot{animation:th-ping 1.4s ease-out infinite}
.th-acc-item{border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,rgba(16,36,74,.5),rgba(8,18,38,.62));overflow:hidden;transition:border-color .35s,box-shadow .35s}
.th-acc-item.open{border-color:rgba(63,224,255,.5);box-shadow:0 20px 60px -30px rgba(63,224,255,.4)}
.th-acc-item h3{margin:0}
.th-acc-btn{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px clamp(14px,2.2vw,24px);border:0;background:none;color:var(--osd);text-align:left;cursor:pointer;font:600 clamp(16px,1.7vw,20px)/1.3 var(--hud);letter-spacing:.01em}
.th-acc-btn .n{font:400 clamp(28px,3vw,40px)/1 var(--big);color:var(--sig);min-width:2ch;transition:transform .45s var(--ease)}
.th-acc-btn:hover .n{transform:translateX(4px)}
.th-acc-ico{position:relative;width:32px;height:32px;border-radius:50%;border:1px solid var(--line-hi);color:var(--osd);transition:transform .5s var(--ease),background .3s,color .3s,border-color .3s}
.th-acc-ico::before,.th-acc-ico::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;background:currentColor;transform:translate(-50%,-50%)}
.th-acc-ico::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .5s var(--ease)}
.th-acc-item.open .th-acc-ico{transform:rotate(180deg);background:var(--sig);border-color:var(--sig);color:var(--night)}
.th-acc-item.open .th-acc-ico::after{transform:translate(-50%,-50%) rotate(0deg)}
.th-acc-panel{overflow:hidden}
.th-acc-inner{padding:0 clamp(14px,2.2vw,24px) 22px calc(clamp(14px,2.2vw,24px) + 2ch + 22px)}
.th-acc-inner ul{margin:0 0 12px;padding-left:1.1em;display:grid;gap:8px;color:#d6e3f3}
.th-acc-inner li::marker{color:var(--sig)}
.th-acc-inner a:not(.btn){color:var(--sig)}
.th-acc-inner p{margin:0}
@media (max-width:620px){.th-acc-inner{padding-left:clamp(14px,2.2vw,24px)}.th-acc-btn{gap:12px}}
.th-acc-more{margin:10px 0 0;color:var(--mute)}
.th-acc-more a{color:var(--sig)}
.th-small{font-size:13.5px}
.th-group{position:sticky;top:150px;display:grid;gap:12px}
.th-group .h3,.th-group p{margin:0}
.th-group-top{display:flex;align-items:center;gap:12px}
.th-group-l{margin:0;font:600 12px/1.2 var(--hud);letter-spacing:.2em;text-transform:uppercase;color:var(--green)}
.th-wa-ico{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:rgba(62,224,138,.12);border:1px solid rgba(62,224,138,.5);color:var(--green)}
.th-wa-ico svg{width:24px;height:24px}
.th-group-n{display:flex;align-items:baseline;gap:10px}
.th-group-n b{font:400 clamp(64px,7vw,96px)/.85 var(--big);color:var(--green);text-shadow:0 0 24px rgba(62,224,138,.45)}
.th-group-n span{font:600 13px var(--hud);letter-spacing:.18em;text-transform:uppercase;color:#cfe0f5}
.th-dots{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:6px;max-width:300px}
.th-dots i{aspect-ratio:1;border-radius:50%;background:var(--green);box-shadow:0 0 8px rgba(62,224,138,.6);opacity:.85}
.th-dots i:nth-child(7n){opacity:.45}
.th-group .btn{justify-self:start}
@media (max-width:900px){.th-group{position:relative;top:auto}}

/* ---------- Frage an den Verein ---------- */
.th-frage-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(18px,2.4vw,32px);align-items:start}
@media (max-width:900px){.th-frage-grid{grid-template-columns:minmax(0,1fr)}}
.th-form{display:grid;gap:18px}
.th-fields{display:grid;gap:18px}
.th-form.sent .th-fields{display:none}
.th-form.flash{animation:th-flash 1.4s var(--ease)}
@keyframes th-flash{0%{box-shadow:0 0 0 0 rgba(255,176,32,.0)}25%{box-shadow:0 0 0 4px rgba(255,176,32,.55),0 0 60px rgba(255,176,32,.25)}100%{box-shadow:0 0 0 0 rgba(255,176,32,0)}}
.th-topics .chips{margin-top:2px}
.th-ok:not([hidden]){display:grid;justify-items:center;text-align:center;gap:10px;padding:24px 10px}
.th-ok-svg{width:110px;height:110px}
.th-ok-svg circle,.th-ok-svg path{fill:none;stroke:var(--green);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 8px rgba(62,224,138,.7))}
.th-form.sent .th-ok-svg circle{animation:th-draw .9s var(--ease) forwards}
.th-form.sent .th-ok-svg path{animation:th-draw .6s .65s var(--ease) forwards}
@keyframes th-draw{to{stroke-dashoffset:0}}
.th-ok-t{margin:0;font:400 clamp(40px,5vw,64px)/.95 var(--big);text-transform:uppercase;color:var(--green)}
.th-ok p{margin:0;max-width:46ch}
.th-bad:not([hidden]){display:block;margin:0;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,75,92,.55);background:rgba(255,75,92,.08);color:#ffd0d6}
.th-side{display:grid;gap:clamp(14px,2vw,22px)}
.th-side .h3{margin:0 0 6px}
.th-wa{display:grid;gap:8px}
.th-wa p{margin:0}
.th-wa-btns{display:grid;gap:10px;margin-top:8px}
.th-wa-btn{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;border:1px solid rgba(62,224,138,.45);background:rgba(62,224,138,.06);text-decoration:none;transition:background .3s,border-color .3s,transform .3s var(--ease)}
.th-wa-btn:hover{background:rgba(62,224,138,.16);border-color:var(--green);transform:translateY(-2px)}
.th-wa-btn svg{flex:none;width:28px;height:28px;color:var(--green)}
.th-wa-btn b{display:block;font:700 15px/1.2 var(--hud);letter-spacing:.04em}
.th-wa-btn small{display:block;font:500 12px/1.3 var(--hud);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.th-wa-btn .arr{margin-left:auto;color:var(--green);transition:transform .3s var(--ease)}
.th-wa-btn:hover .arr{transform:translateX(4px)}
.th-tips>summary{font-size:clamp(15px,1.4vw,18px)}
.th-tips ul{margin:0;padding-left:1.1em;display:grid;gap:8px;color:#d6e3f3}
.th-tips li::marker{color:var(--sig)}

/* ---------- Weiter ---------- */
.th-cards{gap:clamp(14px,2vw,24px)}
.th-card{position:relative;display:grid;align-content:end;justify-items:start;gap:12px;min-height:clamp(240px,26vw,360px);padding:clamp(20px,3vw,34px);border-radius:var(--r);border:1px solid var(--line-hi);overflow:hidden;isolation:isolate;text-decoration:none;color:var(--osd)}
.th-card video,.th-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:brightness(.48) saturate(1.1);transform:scale(1.04);transition:transform 1.2s var(--ease),filter .6s}
.th-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(4,9,18,.05) 20%,rgba(4,9,18,.88) 100%)}
.th-card:hover video,.th-card:hover img,.th-card:focus-visible video,.th-card:focus-visible img{transform:scale(1.1);filter:brightness(.62) saturate(1.2)}
.th-card-h{margin:0;font:400 clamp(34px,4vw,60px)/.9 var(--big);text-transform:uppercase;letter-spacing:.01em}
.th-card-t{max-width:44ch;color:#d3e0f0}
.th-card-go{position:absolute;right:clamp(18px,3vw,30px);top:clamp(18px,3vw,30px);display:grid;place-items:center;width:56px;height:56px;border-radius:50%;border:1px solid var(--line-hi);font:600 22px/1 var(--hud);background:rgba(4,9,18,.4);transition:background .35s,color .35s,transform .45s var(--ease)}
.th-card:hover .th-card-go{background:var(--sig);color:var(--night);transform:rotate(-45deg)}

/* ---------- Bewegung reduzieren ---------- */
@media (prefers-reduced-motion:reduce){
  .th-sym-track{animation:none;flex-wrap:wrap;white-space:normal;justify-content:center}
  .th-sym-set{flex-wrap:wrap;justify-content:center}
  .th-sym-set[aria-hidden=true]{display:none}
  .th-reticle,.th-pulse path{animation:none}
  .th-wave{animation:none;opacity:0}
  .th-cmp-stage[data-v=ok] .th-wave,.th-cmp-stage[data-v=warn] .th-wave{opacity:.9}
  .th-cmp-stage .th-wave:nth-child(1){transform:translate(250px,78px)}
  .th-cmp-stage .th-wave:nth-child(2){transform:translate(200px,78px)}
  .th-cmp-stage .th-wave:nth-child(3){transform:translate(150px,78px)}
  .th-cmp-stage[data-v=no] .th-wave:nth-child(3){opacity:0}
  .th-osdflag{animation:none}
  .th-ok-svg circle,.th-ok-svg path{stroke-dashoffset:0}
}

/* FPV-Doktor: direkte Antwort aus dem Kompatibilitäts-Check */
.th-cv{margin:.3em 0;font:600 13px/1.3 var(--hud);letter-spacing:.1em;text-transform:uppercase}
.th-cv b{font:400 26px/1 var(--big);letter-spacing:.03em;margin-right:4px}
.th-cv-ok{color:var(--green)}
.th-cv-warn{color:var(--amber)}
.th-cv-no{color:var(--red)}

/* Nicht gelöst? */
.th-ask{margin:10px 0 0;padding:10px 14px;border-radius:12px;border:1px solid rgba(255,176,32,.35);background:rgba(255,176,32,.06);font-size:14px;color:#e6eef7;overflow-wrap:anywhere}
.th-ask a{color:var(--sig);text-decoration:underline}
.th-ask-static{margin-top:22px;max-width:68ch}
.th-ask-static h3{margin:0 0 6px}
.th-ask-static p{margin:0;font-size:15px}
