/* Presentation-only controls. Existing command panels and hit areas stay intact. */
.v3-toolbar{position:absolute;z-index:8;bottom:16px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);padding:12px 16px;background:rgba(13,23,29,.94);border:1px solid #52696b;border-radius:12px;color:#d5e0dd;box-shadow:0 12px 40px #0006;font:11px/1.4 system-ui,sans-serif;pointer-events:auto}
.v3-title{display:flex;align-items:center;gap:8px;margin-bottom:9px;letter-spacing:1.5px;font-size:10px}.v3-title small{margin-left:auto;font-size:10px;color:#8da3a2;letter-spacing:0}
.v3-dot{width:6px;height:6px;border-radius:50%;background:#a1d9bd;box-shadow:0 0 12px #a1d9bd66}
.v3-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.v3-controls button,.v3-controls select{font:inherit;color:#bbcecd;background:#1d3038;border:1px solid #3c565d;border-radius:6px;padding:6px 9px;cursor:pointer;min-height:30px}.v3-controls button[aria-pressed=true]{background:#bdd9cc;color:#152622;border-color:#bdd9cc}.v3-controls button:hover{border-color:#b7d9d1}.v3-controls label{display:flex;align-items:center;gap:6px;color:#8fa7a5;margin-left:6px}.v3-controls input{width:65px;accent-color:#bdd9cc}.v3-status{font-size:10px;margin-top:7px;color:#8aa19f}
.ulbl-ico svg{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pvo-volume .ulbl-root{visibility:hidden}
.v3-labels{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}.v3-badge{position:absolute;top:0;left:0;pointer-events:auto;display:flex;align-items:center;gap:4px;color:#c0e5da;background:#122930eb;border:1px solid #567976;border-radius:4px;padding:2px 5px;font:9px/1.2 ui-monospace,monospace;white-space:nowrap;cursor:pointer;box-shadow:0 3px 8px #0005}.v3-badge svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.v3-badge:after{content:"";position:absolute;top:100%;left:50%;height:8px;width:1px;background:currentColor;opacity:.4}.v3-badge.v3-foe{color:#edb29c;border-color:#8d6456;background:#302521eb}.v3-badge.v3-ghost{opacity:.5;border-style:dashed}.v3-badge:hover{border-color:#f1e7c6;color:#fff}.v3-badge:focus-visible{outline:2px solid #f1e7c6}
.pvo-volume .ulbl-wrap{margin-top:-30px}.pvo-volume .ulbl-box{border-radius:5px;background:rgba(15,28,34,.9);border-color:#5f7b7d;box-shadow:0 3px 10px #0005}.pvo-volume .ulbl-wrap:after{content:"";position:absolute;left:50%;height:10px;bottom:-11px;width:1px;background:#89aaa780}.pvo-volume .ulbl-name{font-size:10px}.pvo-volume .ulbl-hp{height:2px}
.pvo-volume #top{background:linear-gradient(110deg,#15262c,#101a23);border-bottom-color:#364c54}.pvo-volume .panel{background:rgba(15,25,33,.96)}
@media(max-width:800px){.v3-toolbar{bottom:8px;padding:8px 10px}.v3-title{margin-bottom:5px}.v3-volume{display:flex!important}.v3-status{max-width:280px}.v3-controls{gap:4px}.v3-controls button,.v3-controls select{padding:7px}.pvo-volume .ulbl-name{max-width:80px;overflow:hidden;text-overflow:ellipsis}}
@media(prefers-reduced-motion:reduce){.v3-dot{box-shadow:none}}
.unit-preview{margin:0 14px 10px;border:1px solid #39525b;border-radius:8px;overflow:hidden;background:#132a32}.unit-preview[hidden],.unit-preview [hidden]{display:none!important}.up-stage{height:150px;position:relative;background:radial-gradient(ellipse at 50% 70%,#35524b,#11262e 75%)}.up-stage canvas{width:100%;height:150px;display:block;touch-action:none;cursor:grab}.up-caption{position:absolute;top:9px;left:10px;font:9px system-ui;letter-spacing:1.5px;color:#9ab6b1;pointer-events:none}.up-turn{position:absolute;right:7px;bottom:6px;display:flex;gap:4px}.up-turn button{background:#152a30;color:#c7ded5;border:1px solid #5a7876;border-radius:4px;width:32px;height:28px;cursor:pointer}.up-readiness{padding:9px 10px;background:#101f28}.up-values{display:flex;justify-content:space-between;gap:10px;font:10px system-ui;color:#a5bfbc}.up-values b{color:#d3e6de}.up-readiness meter{width:100%;height:12px;accent-color:#95ccb5}.up-state{margin-top:5px;color:#9eb7b6;font:10px/1.4 system-ui}
.plan-timeline{margin:10px 0 14px;border:1px solid #3d5a62;border-radius:8px;padding:12px 10px;background:#10252d}.plan-timeline[hidden]{display:none}.pt-heading{font:9px system-ui;letter-spacing:1.3px;color:#b9d2cb;margin-bottom:10px}.pt-axis{display:flex;justify-content:space-between;margin-left:58px;color:#8ea7a9;font:9px monospace;margin-bottom:6px}.pt-rows{max-height:170px;overflow:auto;padding-right:5px}.pt-row{display:flex;align-items:center;gap:8px;width:100%;padding:8px 5px;border:0;background:none;text-align:left;color:#c7ded6;cursor:pointer;border-radius:4px}.pt-row:hover,.pt-row:focus-visible{background:#25434a;outline:1px solid #7baba7}.pt-caption{width:47px;flex-shrink:0;font:10px monospace}.pt-rail{position:relative;flex:1;height:2px;background:#395960;margin:0 4px}.pt-rail i{position:absolute;top:-4px;width:10px;height:10px;transform:translateX(-50%) rotate(45deg);background:#bdd7a6;border:2px solid #193139}.pt-fired .pt-rail i{background:#65928a}
.up-readiness meter::-webkit-meter-bar{background:#294049;border:0;border-radius:4px}.up-readiness meter::-webkit-meter-optimum-value{background:#95ccb5;border-radius:4px}.up-readiness meter::-moz-meter-bar{background:#95ccb5}.pt-caption{white-space:nowrap;font-size:9px}
.pt-active .pt-row{display:grid;grid-template-columns:50px 1fr;gap:5px 8px;cursor:default;opacity:1}.pt-status{grid-column:1/-1;font:10px/1.4 system-ui;color:#a0b9ba}.pt-fired .pt-status{color:#a5d8ba}.pt-failed .pt-status{color:#efbc8d}.pt-now{position:absolute;top:-7px;height:16px;border-left:1px solid #f0d8a0;pointer-events:none}.pt-now[hidden]{display:none}.pt-active .pt-row:hover{background:none}.pt-active .pt-rows{max-height:230px}
.pt-demo-play{padding:9px 12px;border:1px solid #648980;border-radius:5px;background:#24453e;color:#d5e5d8;cursor:pointer}.pt-demo-play:disabled{opacity:.5;cursor:default}
