.logistics-center-scene {
  background: linear-gradient(180deg, #f5f9fb 0%, #e5edf1 100%);
  border: 1px solid #c8d8df;
  border-radius: 18px;
  overflow: hidden;
}

.logistics-center-scene svg { display: block; width: 100%; height: auto; }
.logistics-center-scene .lc-title { fill: #173747; font-size: 14px; font-weight: 900; letter-spacing: .08em; }
.logistics-center-scene .lc-counter rect,
.logistics-center-scene .lc-timer rect { fill: #183742; stroke: #2d5968; stroke-width: 3; }
.logistics-center-scene .lc-counter text,
.logistics-center-scene .lc-timer text { fill: #eaf4f7; font-size: 11px; font-weight: 700; }
.logistics-center-scene .lc-module-title { fill: #9fe2ff; font-size: 12px; font-weight: 900; letter-spacing: .08em; }
.logistics-center-scene .lc-big { fill: #61e6a8; font-size: 31px; font-weight: 900; }
.logistics-center-scene .lc-time { fill: #ffd47d; font-size: 22px; font-weight: 900; }
.logistics-center-scene .lc-progress-bg { fill: #47606b; stroke: none; }
.logistics-center-scene .lc-progress-fill { fill: #f0b643; stroke: none; }

.logistics-center-scene .lc-roller { fill: #61747e; stroke: #95a8b1; stroke-width: 2; }
.logistics-center-scene.running .lc-roller { animation: lc-spin .8s linear infinite; transform-box: fill-box; transform-origin: center; }
.logistics-center-scene .lc-caption { fill: #254653; font-size: 11px; font-weight: 900; }
.logistics-center-scene .lc-piece-shadow { fill: rgba(20, 35, 44, .18); }
.logistics-center-scene .lc-box { fill: #d59b4e; stroke: #875f2e; stroke-width: 3; }
.logistics-center-scene .lc-box-top { fill: none; stroke: #f2c984; stroke-width: 3; }
.logistics-center-scene .lc-piece.at-sensor .lc-box { fill: #f0bb55; filter: drop-shadow(0 0 8px rgba(240,187,85,.75)); }

.logistics-center-scene .lc-sensor rect { fill: #526a75; stroke: #283f49; stroke-width: 2; }
.logistics-center-scene .lc-sensor line { stroke: #71838c; stroke-width: 2; stroke-dasharray: 5 5; }
.logistics-center-scene .lc-sensor circle { fill: #71838c; }
.logistics-center-scene .lc-sensor text { fill: #254653; font-size: 11px; font-weight: 900; }
.logistics-center-scene .lc-sensor.active rect { fill: #1f9f65; }
.logistics-center-scene .lc-sensor.active line { stroke: #20c778; stroke-width: 4; filter: drop-shadow(0 0 5px rgba(32,199,120,.72)); }
.logistics-center-scene .lc-sensor.active circle { fill: #20c778; }

.logistics-center-scene .lc-buffer > text { fill: #254653; font-size: 11px; font-weight: 900; }
.logistics-center-scene .lc-slot rect { fill: #d9e3e8; stroke: #7e939d; stroke-width: 2; }
.logistics-center-scene .lc-slot text { fill: #657985; font-size: 11px; font-weight: 900; }
.logistics-center-scene .lc-slot.filled rect { fill: #d59b4e; stroke: #875f2e; }
.logistics-center-scene .lc-slot.filled text { fill: #5d3c18; }

.logistics-center-scene .lc-gate rect { fill: #a94d49; stroke: #672a28; stroke-width: 3; transform-origin: 13px 4px; transition: transform .35s ease; }
.logistics-center-scene .lc-gate.open rect { transform: rotate(-76deg); }
.logistics-center-scene .lc-gate text { fill: #71302c; font-size: 11px; font-weight: 900; }
.logistics-center-scene .lc-dispatch-line,
.logistics-center-scene .lc-dispatch-arrow { fill: none; stroke: #46616d; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }

.logistics-center-scene .lc-status rect { fill: rgba(18,39,49,.95); }
.logistics-center-scene .lc-status circle { fill: #87979f; }
.logistics-center-scene.running .lc-status circle { fill: #20c47a; }
.logistics-center-scene.fault .lc-status circle { fill: #e95850; }
.logistics-center-scene .lc-status text { fill: #edf5f7; font-size: 11px; font-weight: 800; }
.logistics-center-scene .lc-status .emergency { fill: #ff8d85; font-weight: 900; }
.logistics-center-scene .lc-alert rect { fill: #a62727; opacity: .96; }
.logistics-center-scene .lc-alert text { fill: #fff; font-size: 12px; font-weight: 900; }

@keyframes lc-spin { to { transform: rotate(360deg); } }

@media (max-width: 760px) {
  .logistics-center-scene .lc-title { font-size: 11px; }
  .logistics-center-scene .lc-status text { font-size: 9px; }
}
