/* Local experiments, isolated from the accepted single-row component. */
.lc-line-experiment .lc-equipment-rows { display: grid; gap: 10px; }
.lc-line-experiment .lc-line-scroll { padding-left: 32px; padding-right: 32px; }
.lc-line-experiment .lc-equipment-row { position: relative; border: 1px solid transparent; border-radius: 10px; transition: border-color .25s ease, background-color .25s ease; }
.lc-line-experiment .lc-row-heading { padding: 14px 8px 0; text-align: center; }
.lc-line-experiment .lc-row-heading h2 { font-size: clamp(28px, 2.5vw, 36px); font-weight: 700; line-height: 1.2; margin: 12px 0; }
.lc-line-experiment .lc-row-heading p { margin: 6px auto 0; max-width: 680px; color: #65758c; font-size: 14px; line-height: 1.6; }
.lc-line-experiment .lc-line-track { min-width: 1440px; aspect-ratio: 5.2; }
.lc-line-experiment .lc-additional-row .lc-line-track { min-width: 1440px; aspect-ratio: 5.6; gap: 10px; }
.lc-line-experiment .lc-line-stage:hover, .lc-line-experiment .lc-line-track:not(:has(.lc-line-stage:hover)) .lc-line-stage:focus-visible { --stage-layer: 3; --stage-scale: 1.05; --stage-filter: drop-shadow(0 0 8px #ff660070); --marker-opacity: 0; --label-opacity: 1; }
.lc-line-experiment [data-line-asset="conveyor"] .lc-line-label, .lc-line-experiment [data-line-asset="aoi"] .lc-line-label { display: block; }
.lc-line-experiment [data-line-asset="conveyor"] { --stage-layer: 0; }
.lc-line-experiment [data-line-asset="aoi"] { --stage-layer: 1; }
.lc-line-experiment [data-line-asset="laser"] { --stage-layer: 1; }
.lc-line-experiment [data-line-asset="cleaner"] .lc-line-marker { top: 55%; }
.lc-line-experiment [data-line-asset="buffer"] .lc-line-marker { top: 73%; }
.lc-line-experiment .lc-additional-row .lc-line-track { border-bottom-color: #ccd8e4; }
.lc-line-experiment .lc-bga-stack { position: absolute; left: 0; bottom: 0; width: 100%; display: flex; flex-direction: column; align-items: center; pointer-events: none; }
.lc-line-experiment .lc-bga-stack .lc-line-visual { position: relative; left: auto; bottom: auto; flex: none; }
.lc-line-experiment .lc-line-stage .lc-bga-bench { width: 100%; height: auto; transform: none; filter: none; transition: none; pointer-events: none; }
.lc-line-experiment [data-line-asset="bga"]:focus-visible { outline: none; }
.lc-line-experiment [data-line-asset="bga"]:focus-visible .lc-line-visual { outline: 2px solid #ff6600; outline-offset: 3px; border-radius: 4px; }
.lc-line-experiment .lc-equipment-row::after { content: ""; position: absolute; inset: 0; z-index: 8; background: #f3f7fb; border-radius: inherit; opacity: 0; pointer-events: none; transition: opacity .25s ease; }
.lc-focus-a { --row-deemphasis: .62; }
.lc-focus-b { --row-deemphasis: .20; }
.lc-equipment-rows:has(.lc-main-row:hover) .lc-additional-row::after,
.lc-equipment-rows:has(.lc-additional-row:hover) .lc-main-row::after,
.lc-equipment-rows:not(:has(.lc-equipment-row:hover)):has(.lc-main-row:focus-within) .lc-additional-row::after,
.lc-equipment-rows:not(:has(.lc-equipment-row:hover)):has(.lc-additional-row:focus-within) .lc-main-row::after { opacity: var(--row-deemphasis); }
.lc-focus-b .lc-equipment-row:hover,
.lc-focus-b .lc-equipment-rows:not(:has(.lc-equipment-row:hover)) .lc-equipment-row:focus-within { border-color: #ffb17d; background: #ffffff60; }
@media (hover: none) { .lc-line-experiment .lc-equipment-row::after { display: none; } }
@media (prefers-reduced-motion: reduce) { .lc-line-experiment .lc-equipment-row, .lc-line-experiment .lc-equipment-row::after { transition: none; } }
