.conveyor-station-scene {
  background: linear-gradient(180deg, #f5f9fb 0%, #e8f0f4 100%);
  border: 1px solid #c8d8e0;
  border-radius: 18px;
  overflow: hidden;
}

.conveyor-station-scene svg { display: block; width: 100%; height: auto; }
.conveyor-station-scene .conveyor-floor-zone { fill: #d1dce2; }
.conveyor-station-scene .conveyor-title { fill: #173747; font-size: 13px; font-weight: 900; letter-spacing: .08em; }
.conveyor-station-scene .drive-body { fill: #314650; stroke: #172a33; stroke-width: 3; }
.conveyor-station-scene .drive-rotor { fill: #9cb0ba; stroke: #d7e0e4; stroke-width: 5; }
.conveyor-station-scene .drive-cross { stroke: #243943; stroke-width: 5; stroke-linecap: round; }
.conveyor-station-scene .conveyor-drive text { fill: #203944; font-size: 12px; font-weight: 800; }
.conveyor-station-scene.running .drive-rotor { animation: conveyor-spin .7s linear infinite; transform-origin: 36px 36px; transform-box: fill-box; }

.conveyor-station-scene .inspection-frame { fill: #f8fbfc; stroke: #47616e; stroke-width: 4; }
.conveyor-station-scene .inspection-window { fill: #193642; opacity: .92; }
.conveyor-station-scene .inspection-station text { fill: #254553; font-size: 11px; font-weight: 800; }
.conveyor-station-scene .sensor-lamp { fill: #8c9ca4; stroke: #50636c; stroke-width: 2; }
.conveyor-station-scene .sensor-lamp.active { fill: #24ba72; filter: drop-shadow(0 0 7px rgba(36,186,114,.85)); }

.conveyor-station-scene .conveyor-roller { fill: #61747e; stroke: #93a5ae; stroke-width: 2; }
.conveyor-station-scene.running .conveyor-roller { animation: conveyor-spin .85s linear infinite; transform-box: fill-box; transform-origin: center; }
.conveyor-station-scene .belt-edge { stroke: #90a0a8; stroke-width: 3; }
.conveyor-station-scene .piece-shadow { fill: rgba(20,35,44,.18); }
.conveyor-station-scene .piece-box { fill: #d69a4b; stroke: #855d2e; stroke-width: 3; }
.conveyor-station-scene .piece-top { fill: none; stroke: #f2c783; stroke-width: 3; }
.conveyor-station-scene .conveyor-piece text { fill: #563817; font-size: 11px; font-weight: 900; }
.conveyor-station-scene .conveyor-piece.at-sensor .piece-box { fill: #f2bd58; filter: drop-shadow(0 0 8px rgba(242,189,88,.7)); }
.conveyor-station-scene .conveyor-piece.passed-station .piece-box { fill: #d25c57; stroke: #7d2926; }

.conveyor-station-scene .sensor-beam line { stroke: #75858e; stroke-width: 2; stroke-dasharray: 5 5; }
.conveyor-station-scene .sensor-beam circle { fill: #75858e; }
.conveyor-station-scene .sensor-beam.active line { stroke: #24ba72; stroke-width: 4; filter: drop-shadow(0 0 4px rgba(36,186,114,.75)); }
.conveyor-station-scene .sensor-beam.active circle { fill: #24ba72; }

.conveyor-station-scene .conveyor-hud rect { fill: rgba(18,39,49,.94); }
.conveyor-station-scene .conveyor-hud text { fill: #e9f2f5; font-size: 11px; font-weight: 700; }
.conveyor-station-scene .hud-dot.running { fill: #20c47a; }
.conveyor-station-scene .hud-dot.stopped { fill: #87979f; }
.conveyor-station-scene .conveyor-hud .sensor-on { fill: #62e4a8; }
.conveyor-station-scene .conveyor-hud .emergency-on { fill: #ff8b83; font-weight: 900; }

.conveyor-station-scene .conveyor-alert rect { fill: #a62828; opacity: .94; }
.conveyor-station-scene .conveyor-alert text { fill: #fff; font-size: 12px; font-weight: 900; }

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

@media (max-width: 760px) {
  .conveyor-station-scene .conveyor-title { font-size: 11px; }
  .conveyor-station-scene .conveyor-hud text { font-size: 9px; }
}
