:root{--bg:#050810;--surface:#0c1120;--surface2:#111827;--surface3:#161f33;--border:#1e2d4a;--border2:#2a3a5c;--gold:#f5a623;--saffron:#ff6b1a;--blue:#3b82f6;--cyan:#06b6d4;--purple:#8b5cf6;--green:#10b981;--red:#f87171;--yellow:#fbbf24;--text:#e2e8f0;--muted:#64748b;--dim:#94a3b8;--r:14px;--r-sm:9px}.viz-brand-om{-webkit-text-fill-color:var(--gold);font-size:1.05rem;animation:4s ease-in-out infinite viz-float}.viz-live-badge{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);background:#06b6d414;border:1px solid #06b6d440;border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .7rem;font-family:JetBrains Mono,monospace;font-size:.62rem;display:inline-flex}.viz-live-dot{background:var(--green);border-radius:50%;width:7px;height:7px;animation:2s infinite viz-pulse}@keyframes viz-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(1.35)}}:root{--fpv-sign:var(--gold);--fpv-sign-dim:#f5a6231f;--fpv-sign-bd:#f5a62373;--fpv-exp:var(--saffron);--fpv-exp-dim:#ff6b1a1f;--fpv-exp-bd:#ff6b1a73;--fpv-mant:var(--cyan);--fpv-mant-dim:#06b6d41f;--fpv-mant-bd:#06b6d46b}.fpv-app{z-index:1;grid-template-columns:1fr 1fr;gap:1.25rem;max-width:1180px;margin:0 auto;padding:1.5rem 1.5rem 4rem;display:grid;position:relative}.fpv-controls,.fpv-bits,.fpv-demo{grid-column:1/-1}@media (width<=880px){.fpv-app{grid-template-columns:1fr}}.fpv-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:1.1rem 1.2rem}.fpv-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.9rem;display:flex}.fpv-panel-title{font-family:var(--font-sans);color:var(--text);font-size:.92rem;font-weight:700}.fpv-panel-hint{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-family:JetBrains Mono,monospace;font-size:.62rem}.fpv-controls{flex-wrap:wrap;align-items:flex-end;gap:1.25rem;display:flex}.fpv-field{flex:240px}.fpv-label,.fpv-mode-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.45rem;font-family:JetBrains Mono,monospace;font-size:.64rem;display:block}.fpv-input{background:var(--bg);border:1px solid var(--border2);border-radius:var(--r-sm);width:100%;color:var(--text);padding:.7rem .9rem;font-family:JetBrains Mono,monospace;font-size:1.05rem}.fpv-input:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-color:var(--gold)}.fpv-err{color:var(--red);min-height:1em;margin:.45rem 0 0;font-size:.8rem}.fpv-seg{border:1px solid var(--border2);border-radius:999px;gap:.2rem;padding:.2rem;display:inline-flex}.fpv-seg-btn{color:var(--dim);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.4rem .8rem;font-family:JetBrains Mono,monospace;font-size:.72rem;transition:background .15s,color .15s}.fpv-seg-btn:hover{color:var(--text)}.fpv-seg-on{background:linear-gradient(135deg, var(--gold), var(--saffron));color:#000;font-weight:700}.fpv-seg-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.fpv-presets{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.fpv-chip{color:var(--cyan);cursor:pointer;background:#06b6d41a;border:1px solid #06b6d44d;border-radius:999px;padding:.32rem .7rem;font-family:JetBrains Mono,monospace;font-size:.72rem;transition:all .15s}.fpv-chip:hover{border-color:var(--cyan);background:#06b6d438}.fpv-chip:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.fpv-bitgroups{flex-wrap:wrap;gap:1rem 1.4rem;margin-bottom:1rem;display:flex}.fpv-bitgroup{flex-direction:column;gap:.45rem;min-width:0;display:flex}.fpv-bitgroup-mant{flex:100%}.fpv-bitgroup-label{text-transform:uppercase;letter-spacing:.08em;font-family:JetBrains Mono,monospace;font-size:.66rem}.fpv-bitgroup-sign .fpv-bitgroup-label{color:var(--fpv-sign)}.fpv-bitgroup-exp .fpv-bitgroup-label{color:var(--fpv-exp)}.fpv-bitgroup-mant .fpv-bitgroup-label{color:var(--fpv-mant)}.fpv-bitrow{flex-wrap:wrap;gap:3px;display:flex}.fpv-bit{width:1.7rem;height:1.9rem;color:var(--dim);border:1px solid var(--border);cursor:pointer;background:#ffffff08;border-radius:5px;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:700;transition:transform .1s,border-color .12s,background .12s;display:inline-flex}.fpv-bit:hover{transform:translateY(-1px)}.fpv-bit:focus-visible{outline:2px solid var(--gold);outline-offset:1px}.fpv-bit-sign{border-color:var(--fpv-sign-bd)}.fpv-bit-exp{border-color:var(--fpv-exp-bd)}.fpv-bit-mant{border-color:var(--fpv-mant-bd)}.fpv-bit-sign.fpv-bit-on{background:var(--fpv-sign-dim);border-color:var(--fpv-sign-bd);color:var(--fpv-sign)}.fpv-bit-exp.fpv-bit-on{background:var(--fpv-exp-dim);border-color:var(--fpv-exp-bd);color:var(--fpv-exp)}.fpv-bit-mant.fpv-bit-on{background:var(--fpv-mant-dim);border-color:var(--fpv-mant-bd);color:var(--fpv-mant)}.fpv-legend{border-top:1px solid var(--border);flex-direction:column;gap:.45rem;margin:0;padding:.9rem 0 0;list-style:none;display:flex}.fpv-legend-item{color:var(--dim);align-items:baseline;gap:.5rem;font-size:.78rem;line-height:1.4;display:flex}.fpv-legend-item strong{color:var(--text)}.fpv-swatch{border:1px solid;border-radius:3px;flex-shrink:0;width:12px;height:12px;transform:translateY(1px)}.fpv-sw-sign{background:var(--fpv-sign-dim);border-color:var(--fpv-sign-bd)}.fpv-sw-exp{background:var(--fpv-exp-dim);border-color:var(--fpv-exp-bd)}.fpv-sw-mant{background:var(--fpv-mant-dim);border-color:var(--fpv-mant-bd)}.fpv-readout-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.9rem;display:flex}.fpv-kind-pill{text-transform:uppercase;letter-spacing:.06em;color:var(--dim);background:#ffffff0d;border-radius:999px;padding:.18rem .5rem;font-family:JetBrains Mono,monospace;font-size:.64rem}.fpv-kind-normal{color:var(--fpv-mant);background:var(--fpv-mant-dim)}.fpv-kind-subnormal,.fpv-kind-zero{color:var(--gold);background:var(--fpv-sign-dim)}.fpv-kind-inf,.fpv-kind-nan{color:var(--red);background:#f871711f}.fpv-value{color:var(--gold);overflow-wrap:anywhere;margin:0;font-family:JetBrains Mono,monospace;font-size:clamp(1.3rem,4vw,1.9rem);font-weight:800}.fpv-value-exact{color:var(--dim);overflow-wrap:anywhere;margin:.3rem 0 1rem;font-family:JetBrains Mono,monospace;font-size:.78rem}.fpv-value-exact span{color:var(--text)}.fpv-breakdown{flex-direction:column;gap:.4rem;margin:0 0 1rem;display:flex}.fpv-bd-row{border-bottom:1px dashed var(--border);justify-content:space-between;gap:.75rem;padding-bottom:.4rem;font-size:.82rem;display:flex}.fpv-bd-row dt{color:var(--dim);white-space:nowrap;align-items:center;gap:.4rem;display:flex}.fpv-bd-row dd{color:var(--text);text-align:right;overflow-wrap:anywhere;margin:0;font-family:JetBrains Mono,monospace}.fpv-dot{border-radius:2px;flex-shrink:0;width:9px;height:9px}.fpv-dot-sign{background:var(--fpv-sign)}.fpv-dot-exp{background:var(--fpv-exp)}.fpv-dot-mant{background:var(--fpv-mant)}.fpv-formula-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .35rem;font-family:JetBrains Mono,monospace;font-size:.66rem}.fpv-formula{color:var(--text);border-left:3px solid var(--gold);overflow-wrap:anywhere;background:#ffffff0a;border-radius:0 8px 8px 0;margin:0 0 1.1rem;padding:.6rem .75rem;font-family:JetBrains Mono,monospace;font-size:.82rem;line-height:1.5}.fpv-line{border-top:1px solid var(--border);padding-top:.9rem}.fpv-line-title{color:var(--dim);margin:0 0 .55rem;font-size:.78rem}.fpv-line-list{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.fpv-line-row{justify-content:space-between;gap:.75rem;font-family:JetBrains Mono,monospace;font-size:.78rem;display:flex}.fpv-line-tag{color:var(--muted);white-space:nowrap}.fpv-line-val{color:var(--text);text-align:right;overflow-wrap:anywhere}.fpv-line-current .fpv-line-tag,.fpv-line-current .fpv-line-val{color:var(--saffron)}.fpv-line-gap{color:var(--dim);margin:.6rem 0 0;font-size:.74rem;line-height:1.5}.fpv-btn{background:linear-gradient(135deg, var(--gold), var(--saffron));color:#000;border-radius:var(--r-sm);cursor:pointer;border:1px solid #0000;padding:.5rem .9rem;font-family:JetBrains Mono,monospace;font-size:.82rem;font-weight:700;transition:transform .15s,box-shadow .15s}.fpv-btn:hover{transform:translateY(-1px);box-shadow:0 0 18px #f5a62366}.fpv-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.fpv-btn-ghost{color:var(--gold);border:1px solid var(--border2);box-shadow:none;background:0 0;margin-top:.8rem}.fpv-btn-ghost:hover{background:var(--fpv-sign-dim);color:var(--gold);box-shadow:none}.fpv-demo-intro{color:var(--dim);margin:0 0 1rem;font-size:.85rem;line-height:1.55}.fpv-demo-out{flex-direction:column;gap:.7rem;display:flex}.fpv-demo-row{border:1px solid var(--border);background:#ffffff05;border-radius:10px;padding:.7rem .8rem}.fpv-demo-rowhead{flex-wrap:wrap;justify-content:space-between;gap:.6rem;margin-bottom:.35rem;display:flex}.fpv-demo-name{color:var(--text);font-family:JetBrains Mono,monospace;font-weight:700}.fpv-demo-num{color:var(--saffron);font-family:JetBrains Mono,monospace;font-size:.78rem}.fpv-demo-truth{color:var(--dim);overflow-wrap:anywhere;margin-bottom:.4rem;font-family:JetBrains Mono,monospace;font-size:.74rem}.fpv-demo-bits{letter-spacing:.5px;word-break:break-all;font-family:JetBrains Mono,monospace;font-size:.62rem;line-height:1.5}.fpv-bs-sign{color:var(--fpv-sign)}.fpv-bs-exp{color:var(--fpv-exp)}.fpv-bs-mant{color:var(--fpv-mant)}.fpv-demo-verdict{color:var(--text);border-left:3px solid var(--saffron);background:#ffffff0a;border-radius:0 8px 8px 0;margin:.3rem 0 0;padding:.7rem .85rem;font-size:.84rem;line-height:1.6}.fpv-demo-verdict strong{color:var(--saffron)}.fpv-demo-verdict code{background:var(--fpv-sign-dim);color:var(--gold);border-radius:4px;padding:.1em .35em;font-family:JetBrains Mono,monospace}@media (prefers-reduced-motion:reduce){.fpv-bit,.fpv-chip,.fpv-btn{transition:none}.viz-brand-om,.viz-live-dot{animation:none}}
