.room-compiler{background:url('../assets/art/compiler-room-v1.png') center/cover}
#compilerDialog .mp-board p{color:#f4e3be!important}.cp-circuit{display:flex;align-items:center;justify-content:center;gap:22px;position:relative;min-height:160px;padding:20px;overflow-x:auto}
.cp-wires{position:absolute;left:5%;right:5%;top:42px;height:6px;background:#b9824a;border-top:2px solid #372316;box-shadow:0 68px 0 #b9824a;pointer-events:none}
.cp-slot{width:90px;height:110px;min-width:70px;background:#3d3249;border:4px solid #6c577f;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;color:#e3d3bd}.cp-slot.loaded{background:#423e61;border-color:#a68bcf}.cp-slot b{position:absolute;bottom:4px;background:#5b5499;color:#fff5d8;border:3px solid #b6a5eb;padding:6px 10px;font-size:24px}.cp-slot>small{position:absolute;bottom:-25px;font-size:14px;color:#ffe3ad}
.cp-double{display:flex;flex-direction:column;align-items:center;justify-content:space-between;height:76px;color:#fff394;position:relative}.cp-double i{font-style:normal;font-size:22px;line-height:24px;z-index:1}.cp-double em{position:absolute;top:16px;bottom:16px;width:4px;background:#ffd84d;left:calc(50% - 2px)}.cp-input{line-height:22px;font-size:16px;z-index:1;background:#282332}.cp-probe{display:flex;flex-direction:column;justify-content:center;background:#355c68;border:4px solid #ad8951;padding:12px;z-index:1;font-size:30px}.cp-probe small{font-size:14px}
.cp-stations{display:flex;align-items:center;justify-content:center;gap:16px;margin:32px auto}.cp-station{display:flex;flex-direction:column;gap:14px;align-items:center;padding:12px;border:4px solid #8d633d;background:#352d42;min-width:85px}.cp-station small{font-size:16px}.cp-passenger{display:block;border:3px solid #aa9ed7;background:#65558d;color:#fff5d8;padding:12px;font-size:24px}.cp-rail{font-style:normal;color:#dcb474;font-size:24px}.cp-route,.cp-demo-schedule{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin:24px 0}.cp-timetable{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.cp-time{min-height:200px;background:#352d42;border:3px solid #69547e;padding:10px}.cp-time>button{width:100%;font-size:16px!important;padding:6px!important}.cp-task{background:#4d6074;border:3px solid #7aa9be;color:#f6edce;padding:12px 4px;margin-top:12px;animation:mpPop .3s steps(2)}.cp-task small{display:block;font-size:14px;margin-top:6px}.cp-comparison{margin-top:32px;border-top:3px solid #69547e;padding-top:12px}.cp-attention{outline:3px solid #ffd84d!important;outline-offset:3px}.cp-disk{color:#d4b3ef;background:#46345d}
@container(max-width:600px){.cp-timetable{grid-template-columns:repeat(2,1fr)}.cp-stations{gap:5px}.cp-station{padding:6px;min-width:64px}.cp-rail{font-size:18px}.cp-circuit{justify-content:flex-start;gap:12px}.cp-slot{min-width:65px}.cp-probe{min-width:55px}}
/* Both rails are real elements: shared workshop shadow resets must not erase q1. */
#compilerDialog .cp-wires{top:calc(50% - 28px);height:56px;border:0;background:none;box-shadow:none;display:flex;flex-direction:column;justify-content:space-between}
#compilerDialog .cp-wires i{display:block;flex:none;height:4px;background:#b9824a;border-top:1px solid #e9be77;border-bottom:1px solid #372316}
#compilerDialog .cp-input{height:76px;display:flex;flex-direction:column;justify-content:space-between;line-height:24px}
#compilerDialog .cp-slot::before{content:'';position:absolute;left:0;right:0;top:calc(50% - 28px);height:56px;background:linear-gradient(to bottom,#826947 0 4px,transparent 4px 52px,#826947 52px 56px);pointer-events:none}
#compilerDialog .cp-slot b{top:calc(50% + 26px);bottom:auto;transform:translateY(-50%);z-index:2}
#compilerDialog .cp-double{z-index:2}
