/* WAVE v6 semantic instrument array — presentation only. */
.piv-section{--piv-bull:var(--bull);--piv-bear:var(--bear);--piv-neutral:#9aa0a8;--piv-hairline:rgba(255,255,255,.07);--piv-surface:#090a0d;--piv-ease:cubic-bezier(.22,.61,.36,1);position:relative;z-index:1;flex:0 0 auto;display:flex;flex-direction:column;align-self:center;width:min(calc(100vw - 40px),1760px);gap:8px;padding:12px;background:linear-gradient(180deg,#101216,var(--piv-surface));border:1px solid rgba(255,255,255,.09);border-radius:var(--r-panel);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 5px 24px rgba(0,0,0,.5)}

.piv-head{display:flex;align-items:center;justify-content:flex-end;min-height:24px}
.piv-loading{padding:18px;text-align:center;color:#6b7079;font-size:10px;letter-spacing:.18em}

.piv-health{font:700 8px/1 var(--font-mono);letter-spacing:.16em;padding:6px 10px;border-radius:var(--r-pill);color:#8a8f98;border:1px solid rgba(255,255,255,.14);background:#08090b}
.piv-health.health-live{color:var(--bull);border-color:color-mix(in srgb,var(--bull) 48%,transparent)}
.piv-health.health-stale,.piv-health.health-warming,.piv-health.health-no-data,.piv-health.health-error{color:var(--gold);border-color:rgba(232,162,61,.5)}

.piv-command{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:10px}
.piv-cross,.piv-volatility{min-height:76px;padding:10px 14px;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:linear-gradient(180deg,#14171c,#0a0c10);box-shadow:inset 0 1px rgba(255,255,255,.045),0 6px 18px rgba(0,0,0,.22)}
.piv-cross{display:flex;align-items:center;background:radial-gradient(70% 150% at 50% 50%,color-mix(in srgb,var(--state) 8%,transparent),transparent 72%),linear-gradient(180deg,#14171c,#0a0c10)}
.piv-command-label{display:flex;flex-direction:column;gap:3px}
.piv-command-label span{font-size:7px;font-weight:700;letter-spacing:.2em;color:#6d737c}
.piv-command-label b{font-size:11px;letter-spacing:.08em;color:#dfe2e6}
.piv-mode-tracks{width:100%;display:grid;gap:8px}
.piv-mode-track{display:grid;grid-template-columns:44px 1fr 14px;align-items:center;gap:10px;font:700 8px/1 var(--font-mono);letter-spacing:.14em;color:#8f959d}
.piv-mode-track>div{position:relative;height:6px;background:linear-gradient(90deg,rgba(255,77,141,.7),rgba(255,77,141,.2) 42%,#30343a 48%,#30343a 52%,rgba(34,211,238,.2) 58%,rgba(34,211,238,.7));border:1px solid rgba(255,255,255,.07);border-radius:4px;box-shadow:inset 0 2px 4px rgba(0,0,0,.6)}
.piv-mode-track>div:after{content:"";position:absolute;left:50%;top:-4px;width:1px;height:12px;background:#7a818b;opacity:.8}
.piv-mode-track i{position:absolute;top:50%;width:11px;height:11px;border:2px solid currentColor;background:#0b0c0f;transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 4px #fff,0 0 12px currentColor;transition:left .65s cubic-bezier(.22,.61,.36,1)}

.piv-volatility{display:grid;grid-template-columns:105px 1fr;grid-template-rows:1fr auto;align-items:center;gap:7px 14px}
.piv-volatility .piv-command-label{min-width:0}
.piv-volatility .piv-command-label span{font-size:8px;color:#8a9098}
.piv-volatility .piv-command-label b{font-size:14px;color:#f0f2f4}
.piv-vol-bars{height:31px;display:flex;align-items:flex-end;gap:5px}
.piv-vol-bars i{flex:1;height:13px;border:1px solid #393e46;background:#181b20;transform:skewX(-10deg)}
.piv-vol-bars i:nth-child(2){height:17px}
.piv-vol-bars i:nth-child(3){height:21px}
.piv-vol-bars i:nth-child(4){height:26px}
.piv-vol-bars i:nth-child(5){height:31px}
.piv-vol-bars i.on{background:linear-gradient(90deg,#c5c8cc,var(--gold));border-color:rgba(232,162,61,.76);box-shadow:0 0 10px rgba(232,162,61,.3)}
.piv-volatility>.piv-scale-ends{grid-column:2;font-size:7px;color:#737a84}

.piv-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.piv-engine{--state:var(--piv-neutral);position:relative;min-width:0;overflow:hidden;display:grid;grid-template-rows:auto 108px 152px 104px 116px 112px auto;padding:0 11px;border:1px solid var(--piv-hairline);border-radius:8px;background:linear-gradient(180deg,#0d0e11 0,#0d0e11 22%,#0a0b0e 100%);box-shadow:inset 0 1px rgba(255,255,255,.035)}

.is-bull{--state:var(--piv-bull);color:var(--piv-bull)}
.is-bear{--state:var(--piv-bear);color:var(--piv-bear)}
.is-neutral{--state:var(--piv-neutral);color:var(--piv-neutral)}
.is-unavailable{--state:#59606a;color:#737981}
.piv-engine-head{display:flex;align-items:center;padding:0 3px;border-bottom:1px solid var(--piv-hairline)}
.piv-engine-head>div{display:flex;align-items:baseline;gap:9px}
.piv-engine-index{font:700 8px/1 var(--font-mono);color:var(--gold)}
.piv-engine h3{margin:0;font-size:14px;letter-spacing:.24em;color:#eaecef}

.piv-cluster{display:contents}
.piv-instrument{min-width:0;padding:11px 10px 9px;border-bottom:1px solid var(--piv-hairline);background:radial-gradient(100% 80% at 50% 85%,color-mix(in srgb,var(--state) 4%,transparent),transparent 66%)}
.piv-instrument-head{display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:700;letter-spacing:.16em;color:#8a8f98}
.piv-instrument-head i{font:600 7px/1 var(--font-mono);font-style:normal;letter-spacing:.1em;color:#4f555e}
.piv-scale-ends{display:flex;justify-content:space-between;font:600 6px/1 var(--font-mono);letter-spacing:.08em;color:#555b63}
.piv-scale-ends span:nth-child(2):not(:last-child){text-align:center}
.piv-pressure>.piv-scale-ends{font-size:7.5px;letter-spacing:.11em;color:#858b94;padding-inline:4px}

.piv-pressure{display:flex;flex-direction:column;justify-content:space-between}
.piv-pressure-read{display:flex;align-items:center;gap:9px}
.piv-pressure-read b{font-size:12px;color:var(--state);text-shadow:0 0 10px color-mix(in srgb,var(--state) 65%,transparent)}
.piv-pressure-read strong{font-size:18px;letter-spacing:.065em;color:var(--state);text-shadow:0 0 14px color-mix(in srgb,var(--state) 24%,transparent)}
.piv-pressure-scale{position:relative;height:24px;margin:0 4px;border:1px solid rgba(255,255,255,.08);border-radius:3px;background:repeating-linear-gradient(90deg,transparent 0 calc(12.5% - 1px),rgba(255,255,255,.13) calc(12.5% - 1px) 12.5%),linear-gradient(90deg,rgba(255,77,141,.82) 0%,rgba(255,77,141,.48) 34%,#24282e 47%,#181b20 50%,#24282e 53%,rgba(34,211,238,.48) 66%,rgba(34,211,238,.82) 100%);box-shadow:inset 0 2px 7px rgba(0,0,0,.72),inset 0 1px rgba(255,255,255,.07)}
.piv-pressure-scale:before,.piv-pressure-scale:after{content:"";position:absolute;top:4px;bottom:4px;width:18%;opacity:.3}
.piv-pressure-scale:before{left:0;background:linear-gradient(90deg,var(--piv-bear),transparent)}
.piv-pressure-scale:after{right:0;background:linear-gradient(270deg,var(--piv-bull),transparent)}
.piv-pressure-marker{position:absolute;z-index:2;left:var(--piv-position);top:-5px;width:4px;height:34px;border:1px solid color-mix(in srgb,var(--state) 84%,white);border-radius:2px;background:var(--state);transform:translateX(-50%);box-shadow:0 0 4px #fff,0 0 13px color-mix(in srgb,var(--state) 90%,transparent),0 0 25px color-mix(in srgb,var(--state) 45%,transparent);transition:left .65s var(--piv-ease)}
.piv-pressure-marker:after{content:"";position:absolute;left:50%;top:-5px;width:9px;height:9px;background:var(--state);border:1px solid color-mix(in srgb,var(--state) 75%,white);transform:translateX(-50%) rotate(45deg);box-shadow:0 0 9px color-mix(in srgb,var(--state) 75%,transparent)}

.piv-power{display:grid;grid-template-rows:auto 1fr auto auto;gap:5px}
.piv-power-read{display:flex;align-items:baseline;justify-content:space-between}
.piv-power-read strong{font-size:17px;letter-spacing:.075em;color:#edf0f3;text-shadow:0 0 12px rgba(234,236,239,.18)}
.piv-power-meter{position:relative;height:29px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:3px;background:repeating-linear-gradient(90deg,transparent 0 calc(20% - 1px),rgba(255,255,255,.16) calc(20% - 1px) 20%),linear-gradient(180deg,#1b1e23,#111318);box-shadow:inset 0 3px 8px rgba(0,0,0,.72),inset 0 1px rgba(255,255,255,.08)}
.piv-power-meter:after{content:"";position:absolute;inset:5px;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(0,0,0,.55);pointer-events:none}
.piv-power-fill{position:absolute;inset:3px auto 3px 3px;width:var(--power);min-width:0;max-width:calc(100% - 6px);overflow:visible;border-radius:2px;background:linear-gradient(90deg,#787f88 0%,#d9dde1 54%,#f3c66d 82%,var(--gold-bright) 100%);box-shadow:0 0 10px rgba(234,236,239,.3),0 0 18px rgba(232,162,61,.16);transition:width .65s var(--piv-ease)}
.piv-power-fill i{position:absolute;right:-2px;top:-3px;width:3px;height:27px;background:#fff3d5;box-shadow:0 0 7px #fff,0 0 13px var(--gold)}

.piv-rpm{--speed-live:var(--state);display:grid;grid-template-rows:auto 1fr auto}
.piv-rpm.speed-level-0{--speed-live:#9aa0a8}
.piv-rpm.speed-level-1{--speed-live:color-mix(in srgb,var(--state) 58%,#8a8f98)}
.piv-rpm.speed-level-2{--speed-live:color-mix(in srgb,var(--state) 76%,white)}
.piv-rpm.speed-level-3,.piv-rpm.speed-level-4{--speed-live:color-mix(in srgb,var(--state) 90%,white)}
.piv-rpm-dial{min-height:0;margin-top:-2px}
.piv-rpm-dial svg{width:100%;height:100%;overflow:visible}
.rpm-zone{fill:none;stroke-width:8;stroke-linecap:butt}
.zone-bear-1{stroke:rgba(255,77,141,.24)}
.zone-bear-2{stroke:rgba(255,77,141,.42)}
.zone-bear-3{stroke:rgba(255,77,141,.66)}
.zone-bear-4{stroke:#ff4d8d;filter:drop-shadow(0 0 3px rgba(255,77,141,.45))}
.zone-bull-1{stroke:rgba(34,211,238,.24)}
.zone-bull-2{stroke:rgba(34,211,238,.42)}
.zone-bull-3{stroke:rgba(34,211,238,.66)}
.zone-bull-4{stroke:#22d3ee;filter:drop-shadow(0 0 3px rgba(34,211,238,.45))}
.rpm-tick{stroke:rgba(225,229,234,.32);stroke-width:1}
.rpm-tick.major{stroke:rgba(238,241,244,.7);stroke-width:2}
.rpm-label{fill:#656b74;font:700 7px/1 var(--font-mono);letter-spacing:.12em}
.rpm-label-fall{text-anchor:start}
.rpm-label-stable{text-anchor:middle}
.rpm-label-rise{text-anchor:end}
.rpm-needle,.rpm-ghost{transform-origin:120px 109px}
.rpm-needle{transform:rotate(var(--rpm-angle));transition:transform .65s var(--piv-ease)}
.rpm-needle line{stroke:var(--speed-live);stroke-width:2}
.rpm-needle path{fill:var(--speed-live);stroke:color-mix(in srgb,var(--speed-live) 70%,white);stroke-width:1;filter:drop-shadow(0 0 5px var(--speed-live))}
.rpm-needle circle:first-of-type{fill:#090a0c;stroke:var(--speed-live);stroke-width:3;filter:drop-shadow(0 0 5px var(--speed-live))}
.rpm-needle circle:last-of-type{fill:#eef1f4}
.rpm-ghost{opacity:0;transform:rotate(var(--rpm-ghost-angle));transition:transform .65s var(--piv-ease),opacity .3s}
.rpm-ghost line{stroke:var(--speed-live);stroke-width:1;stroke-dasharray:3 4}
.rpm-ghost circle{fill:var(--speed-live);filter:drop-shadow(0 0 4px var(--speed-live))}
.motion-accelerating .rpm-ghost,.motion-slowing .rpm-ghost,.motion-reversing .rpm-ghost,.motion-reversing-up .rpm-ghost,.motion-reversing-down .rpm-ghost{opacity:.62}
.motion-accelerating .rpm-needle path{filter:drop-shadow(0 0 8px var(--speed-live))}
.motion-reversing .rpm-ghost,.motion-reversing-up .rpm-ghost,.motion-reversing-down .rpm-ghost{opacity:.9}
.piv-rpm-read{display:flex;align-items:baseline;justify-content:space-between;gap:7px}
.piv-rpm-read strong{font-size:14px;letter-spacing:.07em;color:var(--speed-live);text-shadow:0 0 10px color-mix(in srgb,var(--speed-live) 35%,transparent)}
.motion-cue{font-size:7px;font-weight:700;letter-spacing:.1em;color:#a6abb2}
.motion-accelerating .motion-cue{color:var(--gold-bright)}

.piv-sync{display:grid;grid-template-rows:auto 1fr auto auto;gap:7px}
.piv-cohesion-read{display:flex;align-items:end;justify-content:space-between;gap:10px}
.piv-cohesion-read strong{min-width:0;font-size:18px;line-height:1;letter-spacing:.07em;color:#eef1f4;white-space:nowrap;text-shadow:0 0 12px rgba(238,241,244,.16)}
.piv-cohesion-read span{font:700 7px/1 var(--font-mono);letter-spacing:.14em;color:#666d76}
.piv-cohesion-bar{--cohesion-glow:0;height:32px;display:flex;align-items:flex-end;gap:5px;padding:4px;border:1px solid rgba(255,255,255,.09);border-radius:4px;background:linear-gradient(180deg,#16191e,#0c0e12);box-shadow:inset 0 3px 8px rgba(0,0,0,.68),0 0 20px rgba(232,162,61,var(--cohesion-glow));transition:box-shadow .35s}
.cohesion-step{flex:1;height:55%;border:1px solid #343941;border-radius:2px 2px 1px 1px;background:#1c2026;transform:skewX(-6deg);transition:height .55s var(--piv-ease),background-color .35s,box-shadow .35s,opacity .35s}
.cohesion-step:nth-child(2){height:62%}.cohesion-step:nth-child(3){height:69%}.cohesion-step:nth-child(4){height:76%}.cohesion-step:nth-child(5){height:84%}.cohesion-step:nth-child(6){height:92%}.cohesion-step:nth-child(7){height:100%}
.cohesion-step.on{background:linear-gradient(180deg,#e7eaed,#848b94);border-color:#b9bec5;box-shadow:0 0 7px rgba(225,229,234,.2)}
.cohesion-step:nth-child(1).on{opacity:.10}.cohesion-step:nth-child(2).on{opacity:.25}.cohesion-step:nth-child(3).on{opacity:.40}.cohesion-step:nth-child(4).on{opacity:.55}.cohesion-step:nth-child(5).on{opacity:.70}.cohesion-step:nth-child(6).on{opacity:.85}.cohesion-step:nth-child(7).on{opacity:1}
.cohesion-step:nth-child(5).on{background:linear-gradient(180deg,#f0d69f,#9d8554);border-color:#d5b878}
.cohesion-step:nth-child(6).on{background:linear-gradient(180deg,#ffd98b,#b37d28);border-color:#e3ad51;box-shadow:0 0 9px rgba(232,162,61,.28)}
.cohesion-step:nth-child(7).on{background:linear-gradient(180deg,#ffe5af,var(--gold));border-color:var(--gold-bright);box-shadow:0 0 12px rgba(232,162,61,.46)}
.cohesion-level-4 .piv-cohesion-bar{--cohesion-glow:.05}.cohesion-level-5 .piv-cohesion-bar{--cohesion-glow:.10}.cohesion-level-6 .piv-cohesion-bar{--cohesion-glow:.15}
.piv-cohesion-scale{display:flex;justify-content:space-between;font:700 7px/1 var(--font-mono);letter-spacing:.08em;color:#727983}

.piv-ribbon{min-width:0;display:flex;flex-direction:column;gap:9px;padding:10px;border-bottom:1px solid rgba(255,255,255,.07);background:#090a0d}
.piv-ribbon-bank{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
.piv-ribbon-cell{position:relative;height:24px;display:grid;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:5px;padding:4px 6px;border:1px solid rgba(255,255,255,.075);background:#101216;outline:none}
.piv-ribbon-cell:focus-visible{box-shadow:0 0 0 2px var(--info);z-index:2}
.piv-ribbon-cell>span:first-child{font:700 7.5px/1 var(--font-mono);color:#bcc1c7}
.piv-tf-zero{position:relative;height:10px;border-top:1px solid #3d434c;border-bottom:1px solid #171a1e;background:linear-gradient(90deg,rgba(255,77,141,.1),transparent 47%,transparent 53%,rgba(34,211,238,.1))}
.piv-tf-zero:after{content:"";position:absolute;left:50%;top:-3px;width:1px;height:12px;background:#747a83;opacity:.72}
.piv-tf-zero i{position:absolute;top:1px;height:4px;width:var(--tf-magnitude);background:var(--state);box-shadow:0 0 5px color-mix(in srgb,var(--state) 50%,transparent)}
.piv-ribbon-cell.is-bull .piv-tf-zero i{left:50%}
.piv-ribbon-cell.is-bear .piv-tf-zero i{right:50%}
.piv-ribbon-cell.is-neutral .piv-tf-zero i,.piv-ribbon-cell.is-unavailable .piv-tf-zero i{display:none}
.piv-tf-zero b{position:absolute;z-index:2;left:var(--tf-position);top:50%;width:3px;height:8px;background:var(--state);transform:translate(-50%,-50%);box-shadow:0 0 4px color-mix(in srgb,var(--state) 60%,transparent)}

.piv-data{margin:0;border-top:1px solid rgba(255,255,255,.055);color:#8a8f98}
.piv-data summary{min-height:28px;display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;outline:none}
.piv-data summary::-webkit-details-marker{display:none}
.piv-data summary:before{content:"+";font:700 10px/1 var(--font-mono);color:var(--gold)}
.piv-data[open] summary:before{content:"−"}
.piv-data summary:focus-visible{box-shadow:0 0 0 2px var(--info)}
.piv-data summary span{font-size:7px;font-weight:700;letter-spacing:.18em;color:#9ca1a8}
.piv-data summary i{font-size:6px;font-style:normal;letter-spacing:.12em;color:#4f555e}
.piv-data-layout{display:grid;grid-template-columns:minmax(170px,.28fr) minmax(0,1.72fr);gap:7px;padding-bottom:3px}
.piv-data-scroll{max-width:100%;overflow:auto}
.piv-data-table{width:100%;border-collapse:collapse;font:500 7px/1.35 var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;background:#08090b}
.piv-data-table th,.piv-data-table td{padding:4px 6px;border:1px solid #202329;text-align:left}
.piv-data-table th{color:#747a83;font-weight:600}
.piv-data-table td{color:#bdc1c6}
.piv-summary-table th{width:62%}
.piv-system-data{margin:0}
.piv-system-data>.piv-data-scroll{max-height:260px}
.piv-system-data .piv-data-table{width:auto;min-width:420px}

.is-unavailable .piv-pressure-scale,.is-unavailable .piv-rpm-dial,.is-unavailable .piv-cohesion-bar,.is-unavailable .piv-mode-track>div,.is-unavailable .piv-ribbon-cell,.is-unavailable .piv-power-meter{filter:grayscale(1);opacity:.45}
.is-unavailable .piv-pressure-marker{box-shadow:none;border-style:dashed}
.is-unavailable .piv-vol-bars i{background:#17191d;border-color:#2b2f35;box-shadow:none}

@media (max-width:1050px){
.piv-modes{gap:6px}
.piv-engine{padding-inline:7px}
.piv-engine h3{font-size:12px}
.piv-instrument{padding-inline:7px}
}

@media (max-width:900px){
.piv-section{width:calc(100vw - 30px)}
.piv-modes{grid-template-columns:1fr}
.piv-engine{padding-inline:11px}
.piv-instrument{padding-inline:10px}
}

@media (max-width:767px){body{overflow-x:hidden}
#app{overflow-x:clip!important}
.piv-section{width:calc(100vw - 20px);padding:10px}
.piv-head{flex-wrap:wrap}
.piv-health{margin-left:auto}
.piv-command{grid-template-columns:1fr}
.piv-modes{grid-template-columns:1fr}
.piv-data-layout{grid-template-columns:1fr}
.piv-summary-table{width:100%}
}

@media (prefers-reduced-motion:reduce){.piv-section *{scroll-behavior:auto!important}
.piv-pressure-marker,.rpm-needle,.rpm-ghost,.cohesion-step,.piv-cohesion-bar,.piv-power-fill,.piv-mode-track i{transition:none!important}
}
