/* Original rules remain intact. Only new model controls and narrow-screen reachability. */
#demo-disclosure{position:fixed;left:28px;bottom:146px;z-index:66;font:8px/1.6 var(--mono);letter-spacing:.08em;color:var(--steel);padding:5px 8px;border:1px solid var(--line);background:rgba(10,14,20,.85);pointer-events:none}
#s-parts{cursor:pointer;text-decoration:underline;text-underline-offset:3px}#d-error{font:11px/1.6 var(--mono);color:var(--red);min-height:18px;margin-top:10px}canvas#gl{touch-action:none}button:focus-visible,[role=button]:focus-visible,canvas:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.bottomstrip .controls{min-width:0;overflow:auto;flex:1;white-space:nowrap}.bottomstrip .ctl{flex-shrink:0}
#inventory-modal{width:min(850px,calc(100vw - 32px));max-height:85svh;background:var(--bg1);color:var(--txt);border:1px solid var(--line2);padding:22px;font:12px/1.7 var(--mono)}#inventory-modal::backdrop{background:#02050ac9}.inventory-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.inventory-head h2{font:17px var(--disp);color:var(--amber)}.inventory-scroll{max-height:48svh;overflow:auto;margin:18px 0}#inventory-modal table{width:100%;border-collapse:collapse;font-size:11px}#inventory-modal th,#inventory-modal td{padding:9px;border-bottom:1px solid var(--line);text-align:left}#inventory-modal th{position:sticky;top:0;background:var(--bg2)}#inventory-modal th:last-child,#inventory-modal td:last-child{text-align:right}
@media(max-width:860px){.bottomstrip .stats{display:none}#demo-disclosure{left:12px;bottom:142px;font-size:7px}.hero{left:18px;width:290px}.drawer{max-width:calc(100vw - 24px)}}
@media(max-width:600px){.topbar .rail{display:none}.topbar .right .chain{display:none}.topbar .logo .sub{display:none}.topbar .right{gap:6px}.topbar .btn{padding:8px 10px;font-size:9px}.hero{top:82px;width:270px}.hero h1{font-size:34px}.hero p{font-size:12px}.hero .chips{margin-top:12px;gap:4px}.hero .ctas{margin-top:14px}.modcard{left:12px;max-width:calc(100vw - 24px);top:80px}.mc-metrics{gap:10px}.bottomstrip .controls{overflow:auto}.bottomstrip .ctl{font-size:9px;padding:0 9px}.livepill{display:none}.faq-modal{width:calc(100vw - 24px);max-height:80svh}.faq-title{font-size:18px}.faq-body{padding:18px}#demo-disclosure{max-width:calc(100vw - 24px)}.drawer{width:calc(100vw - 24px)}.modrail{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:600px){.topbar .brand{padding:0 10px;gap:7px;min-width:0}.topbar .brand .nm{font-size:20px}.topbar .brand .sub{display:none}.topbar .mark{width:30px;height:30px}.topbar .right{margin-left:auto;padding:0 10px}.hero p{max-width:260px}}

.scene-picker{display:flex;align-items:center;gap:6px;font:9px var(--mono);color:var(--steel);flex-shrink:0}.scene-picker select{color:var(--amber);background:var(--bg1);border:1px solid var(--line2);font:10px var(--mono);padding:7px 6px;max-width:150px}.scene-picker select:focus-visible{outline:2px solid var(--amber);outline-offset:2px}

/* Facility focus: stationary selectors and clear product-context separation. */
.hotspot-pulse{animation:none}
.facility-context{color:#d8e3ee;margin-bottom:12px}
.mechanism-context{font-size:10px;letter-spacing:.06em;color:#94a3b8;margin-bottom:7px}

/* One facility index, kept at the right edge on every viewport - luxurious semi-transparent frosted glass */
#modrail{display:flex;right:22px;top:92px;width:228px;background:rgba(8,14,24,.45);border:1px solid rgba(0,240,255,.25);box-shadow:0 12px 40px rgba(0,0,0,.45),inset 0 0 16px rgba(0,240,255,.04);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-radius:8px;padding:10px 7px;z-index:30}
#modrail .railhead{border-bottom:1px solid rgba(255,255,255,.1);padding:2px 6px 9px;margin-bottom:7px;color:rgba(148,163,184,.85)}
#modrail .mod-item{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);border-radius:5px;margin-bottom:4px;padding:9px 12px;opacity:1;transition:all .2s ease;min-height:44px;box-sizing:border-box;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
#modrail .mod-item .n{color:#00F0FF;font-size:12px;font-weight:700;text-shadow:0 0 10px rgba(0,240,255,.6)}
#modrail .mod-item .t{color:rgba(255,255,255,.92);font-size:12.5px;font-weight:600;letter-spacing:.08em;opacity:1;text-shadow:0 1px 4px rgba(0,0,0,.8)}
#modrail .mod-item:hover{background:rgba(255,255,255,.08);border-color:rgba(0,240,255,.45);transform:translateX(-2px);box-shadow:0 4px 16px rgba(0,240,255,.15)}
#modrail .mod-item:hover .t{color:#ffffff;text-shadow:0 0 8px rgba(255,255,255,.5)}
#modrail .mod-item.active{background:linear-gradient(90deg,rgba(255,160,40,.22),rgba(255,160,40,.06));border-color:rgba(255,160,40,.75);box-shadow:0 0 18px rgba(255,160,40,.25),inset 0 0 12px rgba(255,160,40,.1)}
#modrail .mod-item.active .n{color:#FFA028;text-shadow:0 0 10px rgba(255,160,40,.7)}
#modrail .mod-item.active .t{color:#ffffff;font-weight:700;text-shadow:0 0 8px rgba(255,160,40,.4)}
#modrail .mod-item .bar{opacity:.85;width:3.5px;border-radius:2px}
#modrail .mod-item:focus-visible{outline:2px solid var(--amber);outline-offset:-2px;background:rgba(255,160,40,.15)}
@media(max-width:1100px){#modrail{display:flex;right:10px;top:90px;width:190px;background:rgba(8,14,22,.55);border:1px solid rgba(0,240,255,.2);border-radius:6px;padding:6px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.modrail .mod-item{min-height:44px;box-sizing:border-box}.modrail .t{font-size:10px}}
@media(max-width:680px){#modrail{right:8px;top:88px;width:48px;padding:2px;gap:2px;max-height:calc(100svh - 180px);overflow-y:auto}#modrail .railhead{display:none}#modrail .mod-item{position:relative;justify-content:center;padding:0;min-height:44px;width:44px;gap:0}#modrail .n{font-size:13px;width:auto}#modrail .t{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}#modrail .bar{position:absolute;right:2px;height:24px;width:2px} .hero{max-width:calc(100vw - 82px)} .modcard{max-width:calc(100vw - 80px)}}

/* User requested: hide useless clutter buttons in bottom bar and streamline essential controls */
#ctl-explode,
#ctl-asm,
#ctl-grid,
#ctl-quality,
#ctl-wire,
#ctl-speed,
#ctl-parts,
#ctl-patrol {
    display: none !important;
}

.bottomstrip .controls {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 16px;
}
.bottomstrip .ctl {
    font-family: var(--mono);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .12em;
    color: #e2e8f0;
    border: 1px solid rgba(0, 240, 255, 0.28);
    background: rgba(14, 20, 32, 0.88);
    backdrop-filter: blur(10px);
    border-radius: 4px;
    padding: 8px 14px;
    cursor: pointer;
    transition: all 0.18s ease;
    white-space: nowrap;
}
.bottomstrip .ctl:hover {
    color: #ffffff;
    border-color: #00F0FF;
    background: rgba(0, 240, 255, 0.15);
    box-shadow: 0 0 14px rgba(0, 240, 255, 0.28);
    transform: translateY(-1px);
}
#ctl-zoom-in, #ctl-zoom-out {
    order: 1;
    color: #FFA028;
    border-color: rgba(255, 160, 40, 0.4);
    font-weight: 700;
}
#ctl-zoom-in:hover, #ctl-zoom-out:hover {
    border-color: #FFA028;
    background: rgba(255, 160, 40, 0.18);
    box-shadow: 0 0 14px rgba(255, 160, 40, 0.35);
    color: #ffffff;
}
#ctl-rotate { order: 2; }
#ctl-machine { order: 3; }
.scene-picker { order: 4; }
#ctl-power { order: 5; }
#ctl-isolate { order: 6; }

/* User requested: hide large hero headline and paragraph, but restore marketing chip group (.chips) */
.hero {
    position: absolute;
    left: 28px;
    top: 96px;
    pointer-events: none;
    z-index: 20;
}
.hero .overline,
.hero h1,
.hero p,
.hero .ctas,
.hero .specsheet {
    display: none !important;
}
.hero .chips {
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 0;
    pointer-events: auto;
}
.hero .chip {
    background: rgba(10, 16, 26, 0.85) !important;
    border: 1px solid rgba(0, 240, 255, 0.35) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4), inset 0 0 10px rgba(0, 240, 255, 0.08);
    backdrop-filter: blur(10px);
    border-radius: 4px;
    padding: 7px 13px;
    font-size: 9.5px;
    letter-spacing: .15em;
    color: #e2e8f0;
    cursor: default;
    transition: all 0.2s ease;
}
.hero .chip:hover {
    border-color: var(--amber) !important;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(255, 160, 40, 0.25);
}
.hero .chip i {
    color: #00F0FF;
    font-style: normal;
    margin-right: 6px;
    font-weight: 700;
}
