/* ==================== Tantu „webt die Fäden" — KI-Generierungs-Loader ==================== */
/* Standalone-Kopie der Regeln aus public/gm/css/main.css, damit Seiten ohne main.css */
/* (story-web.html, player/index.html) den Loader nutzen können.                        */
/* NUR Theme-Variablen, KEINE Hex-Farben (CI-Theme-Gate). Setzt --amber, --amber-grad,  */
/* --text-on-dark, --muted im :root der einbindenden Seite voraus.                      */
.tantu-weaving{display:flex;align-items:center;gap:.75rem;color:var(--muted);font-size:1rem;font-family:'Cinzel',serif;padding:.4rem 0}
.tw-svg{width:80px;height:26px;overflow:visible;flex-shrink:0}
.tw-thread{fill:none;stroke-width:2;stroke-linecap:round}
.tw-t1{stroke:var(--amber);stroke-dasharray:30 150;filter:drop-shadow(0 0 2.5px rgba(232,168,56,.7));animation:tw-weave 1.6s linear infinite}
.tw-t2{stroke:var(--amber-grad);opacity:.6;stroke-dasharray:24 156;animation:tw-weave 1.6s linear infinite;animation-delay:-.8s}
@keyframes tw-weave{from{stroke-dashoffset:180}to{stroke-dashoffset:0}}
.tw-shuttle{fill:var(--text-on-dark);filter:drop-shadow(0 0 4px rgba(232,168,56,.95))}
.tw-label{background:linear-gradient(90deg,var(--muted) 25%,var(--amber) 50%,var(--muted) 75%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:tw-shimmer 2.6s linear infinite}
@keyframes tw-shimmer{to{background-position:-200% center}}
@media (prefers-reduced-motion:reduce){.tw-t1,.tw-t2,.tw-shuttle,.tw-label{animation:none}.tw-label{-webkit-text-fill-color:var(--amber);color:var(--amber)}}
