@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;700&family=Sora:wght@400;500;600;700&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef5f2;--bg-deep:#e3efeb;--panel-border:#265d6d24;--line:#265d6d1f;--surface:#ffffffd1;--surface-strong:#fffffff0;--surface-soft:#f2f8f9e6;--text:#35515b;--muted-text:#617c86;--heading-text:#173440;--accent:#e4ab47;--accent-strong:#1f8aa5;--accent-soft:#1f8aa51a;--success:#2d8a66;--danger:#c95656;--shadow-soft:0 28px 72px #3a5f6824;--shadow-card:0 18px 40px #3a5f681a;--sans:"Sora", "Avenir Next", sans-serif;--heading:"Sora", "Avenir Next", sans-serif;--mono:"IBM Plex Mono", "SFMono-Regular", monospace;color:var(--text);background:var(--bg);font:16px/1.55 var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{background:radial-gradient(circle at top left, #1f8aa538, transparent 28%), radial-gradient(circle at top right, #e4ab472e, transparent 24%), linear-gradient(180deg, #fff8ea, var(--bg-deep));min-height:100%}body{min-height:100svh;color:var(--text);background:0 0;margin:0}body:before{content:"";pointer-events:none;background-image:linear-gradient(#1734400a 1px,#0000 1px),linear-gradient(90deg,#1734400a 1px,#0000 1px);background-size:44px 44px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 78%);mask-image:radial-gradient(circle,#000,#0000 78%)}body:after{content:"";pointer-events:none;background:radial-gradient(circle at 20% 0,#ffffffc7,#0000 24%),radial-gradient(circle at 80% 12%,#fff5d6b8,#0000 22%);position:fixed;inset:0}#root{z-index:1;width:min(1480px,100% - 32px);min-height:100svh;margin:0 auto;padding:28px 0 40px;position:relative}h1,h2,h3,p{margin:0}h1{font:700 clamp(2.4rem, 4vw, 4.6rem) / .98 var(--heading);letter-spacing:-.05em;color:var(--heading-text);max-width:12ch}h2{font:600 clamp(1.3rem, 1.4vw + .95rem, 2rem) / 1.05 var(--heading);color:var(--heading-text)}h3{font:600 .95rem/1.3 var(--heading);color:var(--heading-text)}button,input,textarea,select{font:inherit}a{color:inherit}::selection{color:var(--heading-text);background:#1f8aa52e}@media (width<=840px){#root{width:min(100%,100% - 16px);padding-top:16px;padding-bottom:24px}}.app-shell{display:grid}.selection-shell,.viewer-shell{gap:20px;display:grid}.panel,.session-card{border:1px solid var(--panel-border);background:linear-gradient(180deg, var(--surface-strong), var(--surface-soft));box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:relative;overflow:hidden}.panel:before,.session-card:before{content:"";background:linear-gradient(90deg,#e4ab4747,#1f8aa529);width:100%;height:1px;position:absolute;inset:auto auto 0 0}.selection-header,.viewer-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-kicker,.field span,.summary-chip{font-family:var(--mono);text-transform:uppercase;letter-spacing:.14em}.page-kicker{color:var(--accent-strong);margin:0;font-size:.75rem}.page-copy{max-width:58ch;color:var(--muted-text)}.secondary-button,.ghost-button{appearance:none;cursor:pointer;min-height:48px;font:600 .92rem/1 var(--heading);border-radius:999px;padding:.85rem 1.1rem;transition:transform .14s,border-color .14s,background .14s,box-shadow .14s}.secondary-button{color:var(--heading-text);box-shadow:var(--shadow-card);background:linear-gradient(#fff,#def1f5f0);border:1px solid #1f8aa538}.ghost-button{border:1px solid var(--panel-border);color:var(--text);background:#ffffffa8}.secondary-button:hover,.ghost-button:hover,.session-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.secondary-button:disabled,.ghost-button:disabled{opacity:.6;cursor:progress;transform:none}.compact-panel,.viewer-stage-panel,.scrubber-panel,.knob-panel,.empty-panel{border-radius:24px;padding:18px 20px}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.stage-shell{position:relative}.echogram-surface{cursor:grab;touch-action:none;background:radial-gradient(circle at top,#76c5d54d,#0000 42%),linear-gradient(#fbfdfffa,#eaf3f5f5);border:1px solid #265d6d24;border-radius:24px;width:100%;min-height:68svh;overflow:hidden;box-shadow:inset 0 1px #fffc}.echogram-surface.is-dragging{cursor:grabbing}.stage-overlay,.stage-depth-rail{z-index:1;pointer-events:none;position:absolute}.stage-overlay{gap:8px;max-width:min(34ch,100% - 104px);display:grid;top:18px;left:18px}.stage-overlay-chip,.stage-depth-label{width:fit-content;min-height:30px;color:var(--heading-text);font:700 .72rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd1;border:1px solid #265d6d24;border-radius:999px;align-items:center;padding:.35rem .7rem;display:inline-flex}.stage-overlay-copy{color:#173440c2;margin:0;font-size:.88rem;line-height:1.45}.stage-depth-rail{grid-template-rows:auto minmax(0,1fr) auto;justify-items:end;gap:10px;display:grid;top:18px;bottom:18px;right:18px}.stage-tooltip{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;white-space:nowrap;background:#ffffffeb;border:1px solid #265d6d29;border-radius:12px;gap:4px;padding:.5rem .7rem;display:grid;position:absolute;top:0;left:0;box-shadow:0 8px 24px #1734402e}.stage-tooltip-title{font:700 .74rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-strong)}.stage-tooltip-meta{font:500 .82rem/1.2 var(--sans);color:var(--heading-text)}.column-modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#091a216b;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.column-modal{border:1px solid var(--panel-border);background:linear-gradient(180deg, var(--surface-strong), var(--surface-soft));border-radius:24px;grid-template-rows:auto auto minmax(0,1fr);gap:16px;width:min(720px,100%);max-height:min(80vh,720px);padding:22px 24px;display:grid;box-shadow:0 24px 60px #091a2147}.column-modal-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.column-modal-header h2{margin:.2rem 0 0}.column-modal-toolbar{align-items:center;gap:12px;display:flex}.column-modal-data{border:1px solid var(--panel-border);color:#cfe8f0;font:500 .82rem/1.5 var(--mono);white-space:pre-wrap;word-break:break-word;background:#03141be6;border-radius:16px;margin:0;padding:14px 16px;overflow:auto}.stage-depth-track{background:linear-gradient(#76c5d538,#ffffffbd);border:1px solid #265d6d2e;border-radius:999px;width:12px;height:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff80}.stage-depth-window{background:linear-gradient(#f0c363f0,#e56a52db);border-radius:999px;min-height:14px;position:absolute;left:0;right:0;box-shadow:0 0 18px #e4ab4738}.session-list,.knob-stack{gap:18px;display:grid}.field-grid{gap:16px;display:grid}.field-grid.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}.field{gap:8px;display:grid}.field.field-span{grid-column:1/-1}.field span{color:var(--muted-text);justify-content:space-between;align-items:center;gap:12px;font-size:.72rem;display:flex}.field strong{color:var(--heading-text);font:700 .78rem/1 var(--mono)}.field-copy{color:var(--muted-text);margin:0;font-size:.92rem;line-height:1.5}.field input,.field select,.field textarea{border:1px solid var(--panel-border);width:100%;color:var(--heading-text);font:500 .97rem/1.3 var(--sans);box-sizing:border-box;background:#ffffffeb;border-radius:16px;padding:.88rem .95rem;box-shadow:inset 0 1px #ffffffdb}.field input[type=range]{accent-color:var(--accent);padding:0}.field input[type=color]{min-height:52px;padding:.3rem}.field textarea{resize:vertical;min-height:108px}.swatch-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.swatch-row-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.swatch-field{gap:8px;display:grid}.swatch-field span{font:600 .76rem/1 var(--mono);color:var(--muted-text)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.secondary-button:focus-visible,.ghost-button:focus-visible,.session-card:focus-visible{outline-offset:2px;outline:2px solid #1f8aa547}.session-card{text-align:left;cursor:pointer;width:100%;color:var(--text);border-radius:22px;gap:12px;padding:20px;text-decoration:none;display:grid}.session-card.is-last-viewed{box-shadow:0 0 0 2px #1f8aa552, var(--shadow-card);border-color:#1f8aa58c}.session-card-main,.viewer-title-block,.range-field,.panel-heading-row{gap:8px;display:grid}.ping-jump{align-items:flex-end;gap:12px;margin-top:16px;display:flex}.ping-jump .field{flex:1}.ping-jump button{flex-shrink:0}.ping-jump-hint{margin-top:8px}.session-card h2,.viewer-title-block h2{margin:0}.session-card-meta{color:var(--muted-text);flex-wrap:wrap;gap:10px;font-size:.9rem;display:flex}.session-card-meta span,.summary-chip,.endpoint-preview{min-height:36px;color:var(--muted-text);background:#1f8aa512;border:1px solid #1f8aa51f;border-radius:999px;align-items:center;padding:.45rem .8rem;display:inline-flex}.session-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.session-filter{border:1px solid var(--panel-border);background:linear-gradient(180deg, var(--surface-strong), var(--surface-soft));box-shadow:var(--shadow-soft);border-radius:999px;align-items:center;gap:10px;padding:.35rem .35rem .35rem .95rem;display:inline-flex}.session-filter span{font:700 .72rem/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--accent-strong);white-space:nowrap}.session-filter input[type=date]{border:1px solid var(--panel-border);color:var(--heading-text);font:500 .92rem/1 var(--sans);background:#ffffffeb;border-radius:999px;padding:.5rem .85rem}.session-filter input[type=date]:focus-visible{outline-offset:2px;outline:2px solid #1f8aa547}.refreshing-chip{color:var(--accent-strong);border-color:#1f8aa547}.session-soft-error{color:#9a3a2f;font-size:.9rem}.viewer-stage-panel{padding:12px}.range-field strong{color:var(--heading-text);font:700 .88rem/1 var(--mono)}.range-field input[type=range]{width:100%;accent-color:var(--accent)}.slider-grid{gap:16px;display:grid}.action-row{flex-wrap:wrap;gap:12px;display:flex}.compact-action{min-height:42px;padding:.7rem .95rem}.panel-heading-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;margin-bottom:18px}.empty-panel{color:var(--muted-text)}.streaming-progress{border:1px solid var(--panel-border);background:linear-gradient(180deg, var(--surface-strong), var(--surface-soft));box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:999px;gap:8px;padding:12px 18px;display:grid}.streaming-progress-header{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;justify-content:space-between;align-items:center;gap:12px;font-size:.72rem;display:flex}.streaming-progress-label{color:var(--accent-strong);font-weight:700}.streaming-progress-count{color:var(--muted-text)}.streaming-progress-track{background:var(--accent-soft);border-radius:999px;height:6px;position:relative;overflow:hidden}.streaming-progress-fill{background:linear-gradient(90deg, var(--accent-strong), var(--accent));border-radius:999px;transition:width .22s;position:absolute;inset:0 auto 0 0}@media (width<=1120px){.compact-grid,.swatch-row-wide{grid-template-columns:1fr 1fr}}@media (width<=840px){.selection-header,.viewer-header,.panel-heading-row,.compact-grid,.swatch-row,.swatch-row-wide{grid-template-columns:1fr;display:grid}.echogram-surface{min-height:54svh}.stage-overlay{max-width:calc(100% - 88px)}}
