/* SEISMIC CORE · Lava-Schrift, gluehende Risse, Seismograph, Erdstoss alle paar Sekunden */
html[data-theme] .fxt { background: linear-gradient(180deg, #fff3c4 0%, #ffb24a 35%, #ff5a1e 60%, #9a1a06 100%); background-size: 100% 220%; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; filter: drop-shadow(0 0 18px rgba(255, 96, 40, 0.55)) drop-shadow(0 4px 0 #2a0a03); animation: lava 5s ease-in-out 4 alternate; }
@keyframes lava { to { background-position: 0 100%; } }
html[data-theme] .ph-t { font-size: clamp(54px, 13cqi, 140px); line-height: 0.95; }
html[data-theme] .ph-s { letter-spacing: 0.5em; color: #ffb28a; }
html[data-theme] .ph-grid { animation: quake 7s ease-in-out 2.5s infinite; }
@keyframes quake { 0%, 90%, 100% { transform: none; } 91% { transform: translate(-4px, 2px); } 92% { transform: translate(5px, -3px); } 93% { transform: translate(-3px, 3px); } 94% { transform: translate(3px, -1px); } 95% { transform: translate(-1px, 1px); } }
.fx-quake { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
/* Der Riss kommt hinter dem Artwork hervor (Mitte = Cover, --cx/--cy), laeuft nach aussen aus und endet ueber der Frequenzspur */
.fx-quake svg { position: absolute; left: calc(var(--cx, 70%) - min(760px, 56vw)); top: calc(var(--cy, 50%) - min(500px, 37vw)); width: min(1520px, 112vw); height: min(1000px, 74vw); -webkit-mask: radial-gradient(closest-side, #000 62%, transparent 100%); mask: radial-gradient(closest-side, #000 62%, transparent 100%); opacity: 0.8; }
.fx-quake path { fill: none; stroke: #ff7a2a; stroke-width: 2.5; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; stroke-width: 2; filter: drop-shadow(0 0 5px rgba(255, 90, 30, 0.8)); animation: crack 1.4s cubic-bezier(0.7, 0, 0.2, 1) forwards; }
/* Nachgluehen der Risse: ganzes SVG pulsiert (Deckkraft am Element), nicht jeder Pfad einzeln */
.fx-quake svg { animation: glowc 3s ease-in-out 1.9s infinite; }
.fx-quake path:nth-child(2) { animation-delay: 0.2s; } .fx-quake path:nth-child(3) { animation-delay: 0.35s; } .fx-quake path:nth-child(4) { animation-delay: 0.5s; }
@keyframes crack { to { stroke-dashoffset: 0; } }
@keyframes glowc { 50% { opacity: 0.45; } }
.fx-quake .seismo { position: absolute; left: 0; right: 0; bottom: 70px; width: 100%; height: 120px; opacity: 0.9; }
html[data-theme] .ph-cover .glow { background: radial-gradient(closest-side, rgba(255, 96, 40, 0.6), rgba(160, 30, 10, 0.25) 55%, transparent); }
html[data-theme] .btn--acc { background: linear-gradient(180deg, #ffb24a, #e2400f); color: #1a0500; font-family: var(--t-disp); letter-spacing: 0.14em; }
html[data-theme] .pt-card { clip-path: polygon(0 4%, 6% 0, 40% 2%, 52% 0, 100% 3%, 98% 40%, 100% 62%, 97% 100%, 60% 98%, 45% 100%, 3% 97%, 0 60%); border-color: rgba(255, 96, 40, 0.3); background: radial-gradient(70% 60% at 50% 0%, rgba(255, 96, 40, 0.12), transparent 70%), rgba(14, 7, 5, 0.92); }
html[data-theme] .pt-card .br { display: none; }
html[data-theme] .pd .num { font-family: var(--t-disp); background: linear-gradient(180deg, #fff3c4, #ff7a2a 60%, #9a1a06); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
/* Richterskala */
.rc { display: grid; gap: 4px; }
.rc-row { display: grid; grid-template-columns: 90px 190px minmax(0, 1fr) 260px; gap: 20px; align-items: center; padding: 16px 0; border-bottom: 1px solid rgba(255, 96, 40, 0.16); }
.rc-n { font: 400 30px/1 var(--t-disp); color: rgb(var(--acc)); text-shadow: 0 0 16px rgba(255, 96, 40, 0.6); }
.rc-row b { font: 400 22px/1 var(--t-disp); text-transform: uppercase; }
.rc-bar { position: relative; height: 14px; background: rgba(255, 255, 255, 0.05); overflow: hidden; clip-path: polygon(0 0, 100% 0, calc(100% - 8px) 100%, 0 100%); }
.rc-bar i { position: absolute; inset: 0; width: calc(var(--m) * 10%); transform-origin: left; transform: scaleX(0); transition: transform 1.4s var(--ease-io); transition-delay: calc(0.3s + var(--i) * 0.12s);
  background: repeating-linear-gradient(90deg, rgba(0, 0, 0, 0.35) 0 2px, transparent 2px 8px), linear-gradient(90deg, #9a1a06, #ff5a1e 70%, #ffd28a); }
/* Leuchten liegt hinter dem Balken, ausserhalb der schraegen Form (sonst schneidet clip-path es ab) */
.rc-track { position: relative; isolation: isolate; }
.rc-glow { position: absolute; z-index: -1; left: 0; top: 0; height: 14px; width: calc(var(--m) * 10%); box-shadow: 0 0 20px rgba(255, 90, 30, 0.6); transform-origin: left; transform: scaleX(0); transition: transform 1.4s var(--ease-io); transition-delay: calc(0.3s + var(--i) * 0.12s); }
.sx.in .rc-glow { transform: none; }
.sx.in .rc-bar i { transform: none; }
.rc-t { color: var(--fg-2); font-size: 15px; }
@media (max-width: 860px) { .rc-row { grid-template-columns: 60px minmax(0, 1fr); } .rc-track, .rc-t { grid-column: 1 / -1; } }
