/* ---------- Leitstand-Cockpit (dunkel, wie auf der bisherigen DYNAMIS-Seite) ---------- */
.lc { position: relative; overflow: hidden; border-radius: var(--radius); background: radial-gradient(80% 70% at 50% 45%, #13161a, #050607 70%); color: #e9e6dd; text-align: left; font-size: 12px; box-shadow: 0 40px 90px -40px rgba(0,0,0,.6); border: 1px solid #1d2125; }
.lc-top { display: grid; grid-template-columns: 150px repeat(7, 1fr); border-bottom: 1px solid #1d2125; }
.lc-logo { display: flex; align-items: center; gap: 8px; padding: 0 16px; border-right: 1px solid #1d2125; }
.lc-logo img { width: 92px; height: auto; }
.lc-logo span { font-size: 9px; font-weight: 800; letter-spacing: .14em; color: var(--accent); }
.lc-kpi { padding: 11px 12px; border-right: 1px solid #1d2125; min-width: 0; }
.lc-kpi:last-child { border-right: 0; }
.lc-kpi small { display: block; font-size: 9.5px; color: #8c8a83; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lc-kpi b { display: block; margin-top: 3px; font-size: 16px; font-weight: 700; color: #fff; white-space: nowrap; font-variant-numeric: tabular-nums; }
.lc-kpi i { font-style: normal; font-size: 9.5px; font-weight: 700; }
.lc-kpi i.g { color: #3fb67a; } .lc-kpi i.r { color: #e5484d; } .lc-kpi i.n { color: #8c8a83; }
.lc-kpi.blink b { color: var(--accent); transition: color .2s; }

.lc-mitte { display: grid; grid-template-columns: 215px 1fr 230px; min-height: 470px; padding-bottom: 46px; }
.lc-links, .lc-rechts { margin: 12px; padding: 14px; border-radius: 12px; background: rgba(14,16,19,.92); border: 1px solid #1d2125; }
.lc-hallo { display: block; font-size: 15px; color: #fff; }
.lc-links > small { color: #8c8a83; font-size: 10.5px; }
.lc-links h6 { display: flex; justify-content: space-between; margin: 14px 0 6px; padding-top: 10px; border-top: 1px solid #1d2125; font-size: 8.5px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #8c8a83; font-family: "JetBrains Mono", ui-monospace, monospace; }
.lc-links h6 em { font-style: normal; }
.lc-links h6 em.rot { min-width: 16px; height: 16px; border-radius: 50%; display: grid; place-items: center; background: #e5484d; color: #fff; font-size: 9px; }
.lc-links p { display: flex; justify-content: space-between; gap: 8px; margin: 0 0 5px; font-size: 11px; color: #d8d5cc; }
.lc-links p em { font-style: normal; color: #8c8a83; }
.lc-links p.warn span::before { content: "▲ "; color: var(--accent); font-size: 9px; }

.lc-buehne { position: relative; display: grid; place-items: center; min-width: 0; }
.lc-werk { width: 100%; height: auto; max-height: 460px; }
.lc-raster { stroke: rgba(245,197,24,.06); stroke-width: .6; fill: none; }
.lc-boden { fill: rgba(245,197,24,.025); stroke: rgba(245,197,24,.55); stroke-width: .9; }
.lc-wand { fill: none; stroke: rgba(245,197,24,.35); stroke-width: .8; }
.lc-masch { fill: none; stroke: rgba(245,197,24,.6); stroke-width: .7; }
.lc-ring { fill: none; stroke: #3fb67a; stroke-width: 1.2; opacity: 0; transform-box: fill-box; transform-origin: center; animation: lcRing 3.6s var(--d) infinite ease-out; }
@keyframes lcRing { 0% { opacity: .0; transform: scale(.55); } 25% { opacity: .55; } 100% { opacity: 0; transform: scale(1.15); } }
.lc-fluss { fill: none; stroke: rgba(245,197,24,.55); stroke-width: 1; stroke-dasharray: 3 7; animation: lcFluss 1.6s linear infinite; }
@keyframes lcFluss { to { stroke-dashoffset: -20; } }
.lc-puls { fill: #ffd84a; stroke: rgba(245,197,24,.35); stroke-width: 4; }
.lc-name { fill: rgba(233,230,221,.55); font: 600 7.5px var(--sans); text-anchor: middle; }
.lc-chip rect { fill: rgba(10,12,14,.85); stroke: rgba(245,197,24,.45); stroke-width: .6; }
.lc-chip text { fill: #f3f1ea; font: 600 7.2px var(--sans); text-anchor: middle; }
.lc-zone .lc-chip { animation: lcChip 3.6s var(--d) infinite; }
@keyframes lcChip { 0%, 100% { opacity: .75; } 30% { opacity: 1; } }

.lc-ki { display: flex; align-items: center; gap: 10px; }
.lc-ki i { width: 24px; height: 24px; border-radius: 50%; border: 2px solid var(--accent); box-shadow: 0 0 12px rgba(245,197,24,.45); animation: lcKi 2.4s infinite; }
@keyframes lcKi { 50% { box-shadow: 0 0 2px rgba(245,197,24,.2); } }
.lc-ki b { display: block; color: #fff; font-size: 12.5px; }
.lc-ki small { color: #8c8a83; font-size: 10px; }
.lc-chat { display: grid; gap: 10px; margin-top: 14px; min-height: 270px; align-content: start; }
.lc-msg { padding: 10px 11px; border-radius: 10px; border: 1px solid #23272c; background: #0f1215; font-size: 11px; line-height: 1.5; color: #e9e6dd; animation: lcIn .4s var(--ease) both; }
.lc-msg small { display: block; margin-bottom: 4px; font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 8.5px; letter-spacing: .16em; color: #8c8a83; }
.lc-msg--ki { border-color: rgba(245,197,24,.35); }
.lc-msg--ki small { color: var(--accent); }
.lc-msg .cur { display: inline-block; width: 6px; height: 11px; margin-left: 2px; background: var(--accent); vertical-align: -1px; animation: lcCur .8s steps(1) infinite; }
@keyframes lcCur { 50% { opacity: 0; } }
@keyframes lcIn { from { opacity: 0; transform: translateY(6px); } }
.lc-eingabe { margin-top: 12px; padding: 9px 10px; border-radius: 8px; border: 1px solid #23272c; color: #6d6b65; font-size: 10.5px; }

@media (max-width: 980px) {
  .lc-top { grid-template-columns: repeat(4, 1fr); }
  .lc-logo { display: none; }
  .lc-kpi:nth-child(n+6) { display: none; }
  .lc-mitte { grid-template-columns: 1fr; }
  .lc-links { display: none; }
  .lc-rechts { margin-top: 0; }
  .lc-chat { min-height: 210px; }
}
@media (max-width: 520px) {
  .lc-top { grid-template-columns: repeat(2, 1fr); }
  .lc-kpi:nth-child(n+6) { display: none; }
  .lc-kpi { border-bottom: 1px solid #1d2125; }
}
@media (prefers-reduced-motion: reduce) {
  .lc-ring, .lc-fluss, .lc-zone .lc-chip, .lc-ki i, .lc-msg .cur { animation: none; }
  .lc-ring { opacity: .35; }
  .lc-puls { display: none; }
}
.p-hero--demo .p-stage:has(.lc) { max-width: 1180px; }
.lc + .flow { margin-top: -40px; }
@media (max-width: 900px) { .lc + .flow { margin-top: 18px; } }
