:root{--bg: #FBF8F6;--surface: #F6F3F2;--text: #2E2E2B;--muted: #80706A;--accent: #10B981;--accent-contrast: #FFFFFF;--link: #15803D;--focus: rgba(52, 211, 153, .18)}@media(prefers-color-scheme:dark){:root{--bg: #071018;--surface: #0b1312;--text: #E6E6E6;--accent: #10B981;--accent-contrast: #FFFFFF;--link: #34D399;--focus: rgba(52, 211, 153, .18)}}:root[data-analyzer]{--panel: var(--surface);--panel-raised: #EFEAE7;--border: #E2DAD5;--text-muted: var(--muted);--accent-dim: var(--focus);--danger: #B45309;--analyzer-grid: rgba(46, 46, 43, .16);--analyzer-grid-minor: rgba(46, 46, 43, .07);--analyzer-zero-line: rgba(46, 46, 43, .55);--analyzer-axis-label: rgba(128, 112, 106, .95);--analyzer-trace-l: var(--accent);--analyzer-trace-r: #0284C7;--analyzer-trace-mix: var(--accent);--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media(prefers-color-scheme:dark){:root[data-analyzer]{--panel-raised: #101a19;--border: #1D2B28;--text-muted: #8FA09A;--danger: #F59E0B;--analyzer-grid: rgba(230, 230, 230, .15);--analyzer-grid-minor: rgba(230, 230, 230, .06);--analyzer-zero-line: rgba(230, 230, 230, .5);--analyzer-axis-label: rgba(230, 230, 230, .62);--analyzer-trace-l: var(--link);--analyzer-trace-r: #38BDF8;--analyzer-trace-mix: var(--link)}}*,*:before,*:after{box-sizing:border-box}html[data-analyzer]{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}html[data-analyzer] body{margin:0;min-height:100vh}.shell{max-width:none;margin:0;padding:0 clamp(.75rem,4vw,50px) .75rem}.topbar{position:relative;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.4rem .15rem;border-bottom:1px solid var(--border);margin-bottom:.5rem}.topbar__title{margin:0;font-size:.95rem;font-weight:600;letter-spacing:.02em;white-space:nowrap}.topbar__back{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;flex:none;color:var(--text-muted);text-decoration:none;font-size:1.05rem;border-radius:6px;transition:color .12s ease,background .12s ease}.topbar__back:hover,.topbar__back:focus-visible{color:var(--accent);background:var(--panel)}html[data-analyzer] :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.content{display:flex;flex-direction:column;gap:.5rem}.transport{display:inline-flex;align-items:center;gap:.45rem;padding:.32rem .8rem;background:var(--accent);color:var(--accent-contrast);border:1px solid transparent;border-radius:7px;font-size:.82rem;font-weight:600;white-space:nowrap;cursor:pointer;transition:filter .12s ease}.transport:hover:not(:disabled){filter:brightness(1.08)}.transport:disabled{opacity:.5;cursor:default}.transport__dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.55}.transport.is-running .transport__dot{opacity:1;animation:analyzer-pulse 1.6s ease-in-out infinite}@keyframes analyzer-pulse{0%,to{opacity:1}50%{opacity:.25}}@media(prefers-reduced-motion:reduce){.transport.is-running .transport__dot{animation:none}}.status{font-family:var(--mono);font-size:.74rem;color:var(--text-muted);margin-left:auto;white-space:nowrap}.iconbtn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;flex:none;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:7px;font-size:1.05rem;cursor:pointer;transition:color .12s ease,border-color .12s ease}.iconbtn:hover,.iconbtn[aria-expanded=true]{color:var(--accent);border-color:var(--accent)}.iconbtn__badge{position:absolute;top:-5px;right:-5px;min-width:1.05rem;height:1.05rem;padding:0 .2rem;display:inline-flex;align-items:center;justify-content:center;background:var(--danger);color:#fff;border:1px solid var(--bg);border-radius:999px;font-family:var(--mono);font-size:.62rem;font-weight:700;line-height:1}.iconbtn__badge[hidden]{display:none}.settings{position:absolute;top:calc(100% + .3rem);right:0;z-index:20;width:min(22rem,calc(100vw - 1.5rem));display:flex;flex-direction:column;gap:.9rem;padding:.9rem;background:var(--panel-raised);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px #00000038}.settings[hidden]{display:none}.settings__group{display:flex;flex-direction:column;gap:.4rem}.settings__label{font-family:var(--mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.settings__label--warning{display:inline-flex;align-items:center;gap:.3rem;color:var(--danger)}.settings__items{display:flex;gap:.4rem;flex-wrap:wrap}.settings__hint{margin:0;font-size:.72rem;line-height:1.45;color:var(--text-muted)}.seg{display:inline-flex;gap:2px;padding:2px;background:var(--bg);border:1px solid var(--border);border-radius:7px}.seg__btn{flex:1;padding:.25rem .6rem;background:transparent;color:var(--text-muted);border:none;border-radius:5px;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .12s ease,color .12s ease}.seg__btn:hover:not(.is-active):not(:disabled){color:var(--text);background:var(--panel-raised)}.seg__btn.is-active{background:var(--accent);color:var(--accent-contrast);box-shadow:0 1px 3px #0000004d}.seg__btn:disabled{opacity:.45;cursor:not-allowed}#device-group[hidden]{display:none}#device-select{width:100%;padding:.45rem .55rem;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:7px;font-size:.85rem}#device-select:disabled{color:var(--text-muted)}.chip{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .7rem;background:var(--bg);border:1px solid var(--border);border-radius:999px;font-size:.82rem;cursor:pointer;transition:border-color .12s ease}.chip:hover{border-color:var(--accent)}.chip input{accent-color:var(--accent);margin:0}.warnings{margin:0;padding:.55rem .7rem .55rem 1.6rem;list-style:disc;background:#f59e0b17;border:1px solid rgba(245,158,11,.35);border-radius:8px;color:var(--danger);font-size:.78rem;line-height:1.45}.warnings li+li{margin-top:.35rem}.panels{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.5rem}.placeholder{flex:1 1 100%;margin:0;padding:3rem 1rem;text-align:center;color:var(--text-muted);font-size:.85rem;border:1px dashed var(--border);border-radius:10px}#analyzer-panels .panel{position:relative;flex:none;width:100%;background:var(--panel);border:1px solid var(--border);border-radius:10px}#analyzer-panels .panel__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.35rem .6rem;border-bottom:1px solid var(--border);border-radius:9px 9px 0 0;background:var(--panel-raised)}#analyzer-panels .panel__title{font-family:var(--mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}#analyzer-panels .panel__controls{display:flex;align-items:center;gap:.7rem}#analyzer-panels .panel__body{position:relative;overflow:hidden;border-radius:0 0 9px 9px}#analyzer-panels .panel canvas{display:block;width:100%;height:100%}#analyzer-panels .panel-modes{display:inline-flex;gap:2px;padding:2px;background:var(--bg);border:1px solid var(--border);border-radius:7px}#analyzer-panels .panel-mode{padding:.2rem .7rem;background:transparent;color:var(--text-muted);border:none;border-radius:5px;font-family:var(--mono);font-size:.72rem;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:background .12s ease,color .12s ease}#analyzer-panels .panel-mode:hover:not(.is-active){color:var(--text);background:var(--panel-raised)}#analyzer-panels .panel-mode.is-active{background:var(--accent);color:var(--accent-contrast);box-shadow:0 1px 3px #0000004d}#analyzer-panels .panel-legend{display:flex;gap:.6rem;font-family:var(--mono);font-size:.7rem;color:var(--text-muted)}#analyzer-panels .panel-legend__item{display:inline-flex;align-items:center;gap:.3rem}#analyzer-panels .panel-legend__swatch{width:.55rem;height:.55rem;border-radius:2px}#analyzer-panels .panel-settings{position:relative;display:inline-flex}#analyzer-panels .panel-settings__btn{display:inline-flex;align-items:center;justify-content:center;width:1.55rem;height:1.55rem;padding:0;background:var(--bg);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:color .12s ease,border-color .12s ease}#analyzer-panels .panel-settings__btn:hover,#analyzer-panels .panel-settings__btn.is-active{color:var(--accent);border-color:var(--accent)}#analyzer-panels .panel-settings__pop{position:absolute;top:calc(100% + .35rem);right:0;z-index:30;width:15rem;display:flex;flex-direction:column;gap:.7rem;padding:.75rem;background:var(--panel-raised);border:1px solid var(--border);border-radius:9px;box-shadow:0 12px 32px #0000003d}#analyzer-panels .panel-settings__pop[hidden]{display:none}#analyzer-panels .panel-settings__group{font-family:var(--mono);font-size:.64rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);padding-bottom:.15rem;border-bottom:1px solid var(--border)}#analyzer-panels .panel-setting+.panel-settings__group{margin-top:.35rem}#analyzer-panels .panel-setting{display:flex;flex-direction:column;gap:.25rem;cursor:pointer}#analyzer-panels .panel-setting__head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;font-size:.74rem;color:var(--text)}#analyzer-panels .panel-setting__value{font-family:var(--mono);font-size:.7rem;color:var(--text-muted)}#analyzer-panels .panel-setting input[type=range]{width:100%;margin:0;accent-color:var(--accent)}#analyzer-panels .panel-setting__select{width:100%;padding:.3rem .4rem;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:.78rem}#analyzer-panels .panel-settings__reset{align-self:flex-start;padding:.2rem .55rem;background:transparent;color:var(--text-muted);border:1px solid var(--border);border-radius:6px;font-size:.72rem;cursor:pointer;transition:color .12s ease,border-color .12s ease}#analyzer-panels .panel-settings__reset:hover{color:var(--accent);border-color:var(--accent)}#analyzer-panels .resizer{position:absolute;z-index:2;touch-action:none}#analyzer-panels .resizer:after{content:"";position:absolute;background:var(--border);border-radius:2px;transition:background .12s ease}#analyzer-panels .resizer:hover:after,#analyzer-panels .resizer:focus-visible:after,#analyzer-panels .resizer.is-dragging:after{background:var(--accent)}#analyzer-panels .resizer--y{left:0;right:12px;bottom:0;height:10px;cursor:ns-resize}#analyzer-panels .resizer--y:after{left:50%;bottom:3px;width:2.2rem;height:2px;transform:translate(-50%)}#analyzer-panels .resizer--x{top:0;bottom:12px;right:0;width:10px;cursor:ew-resize}#analyzer-panels .resizer--x:after{top:50%;right:3px;width:2px;height:2.2rem;transform:translateY(-50%)}#analyzer-panels .resizer--xy{right:0;bottom:0;width:14px;height:14px;cursor:nwse-resize}#analyzer-panels .resizer--xy:after{right:3px;bottom:3px;width:6px;height:6px;border-radius:1px}html[data-analyzer].is-resizing,html[data-analyzer].is-resizing *{user-select:none}
