.tv-root{--bg: #0b0f17;--bg-2: #111827;--bg-3: #1a2335;--panel: #131a28;--border: #243049;--border-soft: #1c2638;--text: #e6edf6;--text-dim: #93a1b8;--text-faint: #5e6b82;--accent: #6aa6ff;--radius: 12px;font-synthesis:none;min-height:100%;background:radial-gradient(1200px 600px at 70% -10%,#16203a 0%,var(--bg) 55%);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}.tv-root code,.tv-root pre,.tv-root .mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.tv-root .app{min-height:100%;display:flex;flex-direction:column}.tv-root .topbar{display:flex;align-items:center;gap:16px;padding:12px 22px;border-bottom:1px solid var(--border);background:#0b0f17b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:30}.tv-root .topbar__brand{font-weight:700;letter-spacing:.2px}.tv-root .topbar__file{color:var(--text-dim);font-size:13px;margin-left:auto;display:inline-flex;align-items:center;gap:8px}.tv-root .source-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:6px;border:1px solid transparent}.tv-root .source-badge--datadog{background:#632ca640;border-color:#632ca6;color:#c4a7ec}.tv-root .source-badge--groundcover{background:#10b9812e;border-color:#10b981;color:#6ee7b7}.tv-root .btn{background:var(--accent);color:#06101f;border:none;border-radius:8px;padding:9px 16px;font-weight:600;cursor:pointer;font-size:13px}.tv-root .btn:hover{filter:brightness(1.08)}.tv-root .btn:disabled{opacity:.6;cursor:default}.tv-root .btn--ghost{background:transparent;color:var(--text-dim);border:1px solid var(--border)}.tv-root .btn--ghost:hover{color:var(--text);border-color:var(--accent)}.tv-root .app--empty .empty-main{max-width:760px;margin:7vh auto;padding:0 20px;display:flex;flex-direction:column;gap:22px}.tv-root .mode-toggle{display:inline-flex;align-self:center;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:4px;gap:4px}.tv-root .mode-toggle__btn{background:none;border:none;color:var(--text-dim);font-size:13px;font-weight:600;padding:8px 18px;border-radius:7px;cursor:pointer}.tv-root .mode-toggle__btn--on{background:var(--accent);color:#06101f}.tv-root .fetcher{border:1px solid var(--border);border-radius:16px;padding:28px 24px;background:#131a2880;display:flex;flex-direction:column;gap:16px}.tv-root .fetcher__sources{display:flex;gap:10px}.tv-root .fetcher__source{flex:1;background:var(--bg-2);border:1px solid var(--border);color:var(--text-dim);border-radius:10px;padding:12px;font-weight:600;cursor:pointer;font-size:14px}.tv-root .fetcher__source--on.fetcher__source--datadog{border-color:#632ca6;color:#c4a7ec;background:#632ca626}.tv-root .fetcher__source--on.fetcher__source--groundcover{border-color:#10b981;color:#6ee7b7;background:#10b9811f}.tv-root .fetcher__row{display:flex;gap:10px}.tv-root .fetcher__input{flex:1;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:9px;padding:11px 14px;font-size:14px;font-family:ui-monospace,monospace}.tv-root .fetcher__input:focus{outline:none;border-color:var(--accent)}.tv-root .fetcher__hint{color:var(--text-faint);font-size:12px}.tv-root .fetcher__hint code{background:var(--bg-3);padding:1px 5px;border-radius:4px;color:var(--text-dim)}.tv-root .fetcher__status{color:var(--accent);font-size:13px}.tv-root .filedrop{border:2px dashed var(--border);border-radius:16px;padding:44px 24px;text-align:center;cursor:pointer;transition:all .15s ease;background:#131a2880}.tv-root .filedrop--drag,.tv-root .filedrop:hover{border-color:var(--accent);background:#6aa6ff0f}.tv-root .filedrop__icon{font-size:40px;opacity:.7}.tv-root .filedrop__title{font-size:18px;font-weight:600;margin-top:8px}.tv-root .filedrop__hint{color:var(--text-dim);margin-bottom:18px}.tv-root .filedrop__privacy{color:var(--text-faint);font-size:12px;margin-top:14px}.tv-root .empty-help{color:var(--text-dim)}.tv-root .empty-help h3{color:var(--text)}.tv-root .legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px}.tv-root .legend__item{display:inline-flex;align-items:center;gap:7px;font-size:13px}.tv-root .error{background:#f43f5e1f;border:1px solid rgba(244,63,94,.4);color:#fda4b3;padding:10px 14px;border-radius:8px}.tv-root .dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none}.tv-root .muted{color:var(--text-dim)}.tv-root .err{color:#fda4b3}.tv-root .main{max-width:1240px;width:100%;margin:0 auto;padding:22px;display:flex;flex-direction:column;gap:20px}.tv-root .banner{background:linear-gradient(180deg,var(--bg-3),var(--panel));border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px}.tv-root .banner__head{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:flex-start}.tv-root .banner__title{margin:0;font-size:20px}.tv-root .banner__sub{color:var(--text-dim);font-size:13px;margin-top:4px}.tv-root .banner__stats{display:flex;gap:10px;flex-wrap:wrap}.tv-root .stat{background:var(--bg-2);border:1px solid var(--border-soft);border-radius:10px;padding:8px 14px;text-align:center;min-width:72px}.tv-root .stat__value{font-size:18px;font-weight:700}.tv-root .stat__label{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px}.tv-root .stat--ok .stat__value{color:#4ade80}.tv-root .stat--warn .stat__value{color:#fbbf24}.tv-root .stat--accent .stat__value{color:#fb923c}.tv-root .lineage{display:flex;align-items:stretch;gap:4px;flex-wrap:wrap;margin-top:20px}.tv-root .lineage__node-wrap{display:flex;align-items:stretch}.tv-root .lineage__node{display:flex;flex-direction:column;gap:2px;text-align:left;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:10px 14px;cursor:pointer;color:var(--text)}.tv-root .lineage__node:hover{border-color:var(--accent)}.tv-root .lineage__node--final{border-color:#4ade80}.tv-root .lineage__node-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim)}.tv-root .lineage__node-id{font-family:ui-monospace,monospace;font-size:13px}.tv-root .lineage__node-time{font-size:11px;color:var(--text-faint)}.tv-root .lineage__node-by{font-size:11px}.tv-root .lineage__arrow{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 6px;min-width:92px}.tv-root .lineage__arrow-line{width:100%;height:2px;background:linear-gradient(90deg,transparent,#fb923c,transparent);position:relative}.tv-root .lineage__arrow-line:after{content:"▶";position:absolute;right:-2px;top:-8px;color:#fb923c;font-size:11px}.tv-root .lineage__arrow-label{font-size:10px;color:#fb923c;margin-top:4px;text-align:center}.tv-root .lineage__arrow-label em{color:var(--text-faint);font-style:normal}.tv-root .banner__note{margin-top:18px;padding:12px 14px;background:#6aa6ff14;border:1px solid rgba(106,166,255,.25);border-radius:10px;color:var(--text-dim);font-size:13px}.tv-root .banner__note strong{color:var(--text)}.tv-root .panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.tv-root .panel__title{margin:0 0 12px;font-size:15px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.6px}.tv-root .panel__head{display:flex;justify-content:space-between;align-items:center}.tv-root .timeline{display:flex;flex-direction:column;gap:10px}.tv-root .timeline__scroll{overflow-x:auto}.tv-root .timeline__inner{min-width:720px}.tv-root .timeline__axis,.tv-root .timeline__lane{display:flex;align-items:stretch}.tv-root .timeline__lane-label{width:150px;flex:none;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dim);padding-right:10px}.tv-root .timeline__lane-count{margin-left:auto;background:var(--bg-3);border-radius:20px;padding:0 8px;font-size:11px}.tv-root .timeline__track{position:relative;flex:1;height:34px;border-left:1px solid var(--border-soft)}.tv-root .timeline__axis .timeline__track{height:22px}.tv-root .timeline__lane{border-top:1px solid var(--border-soft)}.tv-root .timeline__tick{position:absolute;top:0;bottom:0}.tv-root .timeline__tick-label{position:absolute;top:2px;left:4px;font-size:10px;color:var(--text-faint);white-space:nowrap}.tv-root .timeline__guide{position:absolute;top:0;bottom:0;width:2px;opacity:.85}.tv-root .timeline__guide--faint{opacity:.22;width:1px}.tv-root .timeline__node{position:absolute;top:9px;height:16px;min-width:5px;border:none;border-radius:4px;cursor:pointer;padding:0;opacity:.78;transition:opacity .1s,transform .1s}.tv-root .timeline__node:hover{opacity:1;transform:scaleY(1.25)}.tv-root .timeline__node--key{opacity:1;height:18px;top:8px}.tv-root .timeline__node--selected{outline:2px solid #fff;outline-offset:1px;opacity:1}.tv-root .timeline__node-flag{position:absolute;top:-7px;left:50%;transform:translate(-50%) rotate(45deg);width:7px;height:7px;border-radius:1px}.tv-root .timeline__note{border-top:1px solid var(--border-soft);padding-top:10px;font-size:12px;color:var(--text-faint)}.tv-root .timeline__legend,.tv-root .timeline__selected{border-top:1px solid var(--border-soft);padding-top:10px;font-size:12px;color:var(--text-dim);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.tv-root .filters{margin-bottom:12px}.tv-root .filters__row{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:center}.tv-root .filters__actors{display:flex;gap:8px;flex-wrap:wrap}.tv-root .chip{display:inline-flex;align-items:center;gap:7px;background:var(--bg-2);border:1px solid var(--border);color:var(--text-dim);border-radius:20px;padding:5px 12px;font-size:12px;cursor:pointer}.tv-root .chip--off{opacity:.4}.tv-root .filters__inputs{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tv-root .filters__check{display:inline-flex;gap:6px;align-items:center;font-size:12px;color:var(--text-dim)}.tv-root .filters__select,.tv-root .filters__search{background:var(--bg-2);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:7px 10px;font-size:12px}.tv-root .filters__search{min-width:180px}.tv-root .filters__count{font-size:12px;color:var(--text-faint)}.tv-root .feed{display:flex;flex-direction:column;gap:8px;max-height:70vh;overflow-y:auto;padding-right:4px}.tv-root .feed__empty{color:var(--text-dim);padding:20px;text-align:center}.tv-root .card{background:var(--bg-2);border:1px solid var(--border-soft);border-left:3px solid var(--accent);border-radius:10px;overflow:hidden;flex:none}.tv-root .card--key{background:linear-gradient(90deg,rgba(251,146,60,.06),var(--bg-2) 40%)}.tv-root .card--selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.tv-root .card__head{display:grid;grid-template-columns:118px 130px minmax(0,1fr) auto auto;gap:12px;align-items:start;width:100%;background:none;border:none;color:var(--text);cursor:pointer;padding:11px 14px;text-align:left}.tv-root .card__head:hover{background:#ffffff05}.tv-root .card__time{font-size:12px;font-family:ui-monospace,monospace;display:flex;flex-direction:column;padding-top:2px}.tv-root .card__offset{color:var(--text-faint);font-size:10px}.tv-root .card__actor{font-size:11px;font-weight:600;color:#06101f;padding:3px 8px;border-radius:6px;text-align:center;white-space:nowrap}.tv-root .card__summary{font-size:13px;color:var(--text);min-width:0;line-height:1.5;overflow-wrap:anywhere}.tv-root .card__badges{display:flex;gap:6px;align-items:flex-start;padding-top:1px;flex-wrap:wrap;justify-content:flex-end;max-width:220px}.tv-root .card__dur{font-size:11px;color:var(--text-faint)}.tv-root .card__chevron{color:var(--text-faint);font-size:18px;transition:transform .15s}.tv-root .card__chevron--open{transform:rotate(90deg)}.tv-root .param{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.86em;background:#6aa6ff21;border:1px solid rgba(106,166,255,.3);color:#aecbff;padding:0 5px;border-radius:5px;overflow-wrap:anywhere;white-space:normal}.tv-root .param--empty{background:#94a3b81f;border-color:#94a3b84d;color:var(--text-faint)}.tv-root .badge{font-size:10px;font-weight:700;color:#06101f;padding:2px 7px;border-radius:6px;white-space:nowrap}.tv-root .badge--status{background:#334155;color:#cbd5e1}.tv-root .badge--err{background:#f43f5e;color:#fff}.tv-root .client-pill{display:inline-flex;align-items:center;gap:5px;max-width:260px;font-size:11px;font-weight:600;padding:2px 8px 2px 6px;border-radius:999px;border:1px solid transparent;white-space:nowrap}.tv-root .client-pill__arrow{font-size:12px;line-height:1;opacity:.85}.tv-root .client-pill__key{text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:800;opacity:.8}.tv-root .client-pill__text{overflow:hidden;text-overflow:ellipsis;font-weight:600}.tv-root .client-pill--ok{background:#22c55e29;border-color:#22c55e73;color:#7ee2a8}.tv-root .client-pill--pending{background:#eab30829;border-color:#eab30873;color:#f4d774}.tv-root .client-pill--error{background:#ef44442e;border-color:#ef44448c;color:#fca5a5}.tv-root .card__body{border-top:1px solid var(--border-soft);padding:12px 14px}.tv-root .card__props{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--text-dim);margin-bottom:10px}.tv-root .card__props code{color:var(--text);background:var(--bg-3);padding:1px 6px;border-radius:5px}.tv-root .card__lines{display:flex;flex-direction:column;gap:6px}.tv-root .logline{background:var(--bg);border:1px solid var(--border-soft);border-radius:8px;padding:8px 10px}.tv-root .logline--key{border-color:#fb923c66}.tv-root .logline--client{border-width:1px;border-left-width:4px}.tv-root .logline--client-ok{border-left-color:#22c55e;background:#22c55e0f}.tv-root .logline--client-pending{border-left-color:#eab308;background:#eab3080f}.tv-root .logline--client-error{border-left-color:#ef4444;background:#ef444412}.tv-root .client-tag{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:2px 7px;border-radius:6px;background:#6aa6ff2e;color:#aecbff}.tv-root .client-result{display:flex;align-items:center;gap:9px;margin-top:7px;padding:7px 10px;border-radius:7px;background:var(--bg-2);border:1px solid var(--border-soft);font-size:13px}.tv-root .client-result__badge{font-size:10px;font-weight:800;color:#06101f;padding:2px 8px;border-radius:6px;white-space:nowrap}.tv-root .client-result__body{color:var(--text);overflow-wrap:anywhere}.tv-root .client-result__body strong{color:var(--text-dim);font-weight:600;margin-right:2px}.tv-root .client-result__code{margin-left:8px;font-family:ui-monospace,monospace;font-size:.85em;background:var(--bg-3);padding:1px 6px;border-radius:5px;color:var(--text-dim)}.tv-root .logline__head{display:flex;align-items:center;gap:10px;font-size:11px;flex-wrap:wrap}.tv-root .logline__time{font-family:ui-monospace,monospace;color:var(--text-dim)}.tv-root .logline__level{padding:1px 6px;border-radius:5px;background:var(--bg-3);color:var(--text-dim)}.tv-root .logline__level--warning{background:#fbbf2433;color:#fbbf24}.tv-root .logline__level--error{background:#f43f5e33;color:#fda4b3}.tv-root .logline__ctx{color:var(--accent);font-family:ui-monospace,monospace}.tv-root .logline__raw-toggle{margin-left:auto;background:none;border:1px solid var(--border);color:var(--text-faint);border-radius:5px;font-size:10px;padding:1px 7px;cursor:pointer}.tv-root .logline__msg{margin-top:5px;font-size:13px}.tv-root .logline__meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:5px;font-size:11px;color:var(--text-dim)}.tv-root .logline__json{margin-top:8px;background:#05080e;border:1px solid var(--border-soft);border-radius:6px;padding:10px;font-size:11px;overflow-x:auto;color:#c4d0e3;max-height:320px}.tv-root ::-webkit-scrollbar{width:10px;height:10px}.tv-root ::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}.tv-root ::-webkit-scrollbar-track{background:transparent}.tv-root .topbar{position:static}/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/dm-sans-normal-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/dm-sans-normal-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/dm-sans-italic-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/dm-sans-italic-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer bq-theme{:root,:host{--font-sans:"DM Sans", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--color-violet-50:oklch(96.9% .016 293.756);--color-violet-100:oklch(94.3% .029 294.588);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-400:oklch(70.2% .183 293.541);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-violet-800:oklch(43.2% .232 292.759);--color-violet-900:oklch(38% .189 293.745);--color-neutral-50:oklch(98.5% 0 0);--color-neutral-100:oklch(97% 0 0);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-300:oklch(87% 0 0);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-600:oklch(43.9% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-neutral-900:oklch(20.5% 0 0);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-snug:1.375;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer bq-utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.my-3{margin-block:calc(var(--spacing) * 3)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-2{height:calc(var(--spacing) * 2)}.h-8{height:calc(var(--spacing) * 8)}.min-h-full{min-height:100%}.w-8{width:calc(var(--spacing) * 8)}.w-12{width:calc(var(--spacing) * 12)}.w-full{width:100%}.flex-1{flex:1}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-neutral-200{border-color:var(--color-neutral-200)}.border-neutral-300{border-color:var(--color-neutral-300)}.border-transparent{border-color:#0000}.border-violet-200{border-color:var(--color-violet-200)}.border-violet-300{border-color:var(--color-violet-300)}.bg-\[\#0b0f17\]{background-color:#0b0f17}.bg-neutral-50{background-color:var(--color-neutral-50)}.bg-neutral-100{background-color:var(--color-neutral-100)}.bg-neutral-200{background-color:var(--color-neutral-200)}.bg-violet-50\/60{background-color:#f5f3ff99}@supports (color:color-mix(in lab,red,red)){.bg-violet-50\/60{background-color:color-mix(in oklab,var(--color-violet-50) 60%,transparent)}}.bg-violet-100\/50{background-color:#ede9fe80}@supports (color:color-mix(in lab,red,red)){.bg-violet-100\/50{background-color:color-mix(in oklab,var(--color-violet-100) 50%,transparent)}}.bg-violet-200{background-color:var(--color-violet-200)}.bg-violet-600{background-color:var(--color-violet-600)}.bg-white{background-color:var(--color-white)}.stroke-neutral-200{stroke:var(--color-neutral-200)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-\[\#e8eaf0\]{color:#e8eaf0}.text-neutral-200{color:var(--color-neutral-200)}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-600{color:var(--color-neutral-600)}.text-neutral-800{color:var(--color-neutral-800)}.text-neutral-900{color:var(--color-neutral-900)}.text-violet-600{color:var(--color-violet-600)}.text-violet-700{color:var(--color-violet-700)}.text-violet-900{color:var(--color-violet-900)}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-violet-600{accent-color:var(--color-violet-600)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-\[stroke-dashoffset\]{transition-property:stroke-dashoffset;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-500{--tw-duration:.5s;transition-duration:.5s}@media (hover:hover){.hover\:bg-neutral-100:hover{background-color:var(--color-neutral-100)}.hover\:bg-neutral-300:hover{background-color:var(--color-neutral-300)}}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.lg\:w-80{width:calc(var(--spacing) * 80)}.lg\:flex-row{flex-direction:row}.lg\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.lg\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.lg\:p-6{padding:calc(var(--spacing) * 6)}.lg\:p-8{padding:calc(var(--spacing) * 8)}}@media (min-width:80rem){.xl\:col-span-2{grid-column:span 2/span 2}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}.bq-dark .dark\:border-\[\#2a2f3d\]{border-color:#2a2f3d}.bq-dark .dark\:border-violet-700{border-color:var(--color-violet-700)}.bq-dark .dark\:border-violet-700\/60{border-color:#7008e799}@supports (color:color-mix(in lab,red,red)){.bq-dark .dark\:border-violet-700\/60{border-color:color-mix(in oklab,var(--color-violet-700) 60%,transparent)}}.bq-dark .dark\:border-violet-800\/50{border-color:#5d0ec080}@supports (color:color-mix(in lab,red,red)){.bq-dark .dark\:border-violet-800\/50{border-color:color-mix(in oklab,var(--color-violet-800) 50%,transparent)}}.bq-dark .dark\:bg-\[\#1a2335\]{background-color:#1a2335}.bq-dark .dark\:bg-\[\#14171f\]{background-color:#14171f}.bq-dark .dark\:bg-\[\#111827\]{background-color:#111827}.bq-dark .dark\:bg-violet-900\/20{background-color:#4d179a33}@supports (color:color-mix(in lab,red,red)){.bq-dark .dark\:bg-violet-900\/20{background-color:color-mix(in oklab,var(--color-violet-900) 20%,transparent)}}.bq-dark .dark\:bg-violet-900\/40{background-color:#4d179a66}@supports (color:color-mix(in lab,red,red)){.bq-dark .dark\:bg-violet-900\/40{background-color:color-mix(in oklab,var(--color-violet-900) 40%,transparent)}}.bq-dark .dark\:stroke-\[\#2a2f3d\]{stroke:#2a2f3d}.bq-dark .dark\:text-\[\#2a2f3d\]{color:#2a2f3d}.bq-dark .dark\:text-\[\#93a1b8\]{color:#93a1b8}.bq-dark .dark\:text-\[\#e8eaf0\]{color:#e8eaf0}.bq-dark .dark\:text-violet-200{color:var(--color-violet-200)}.bq-dark .dark\:text-violet-300{color:var(--color-violet-300)}.bq-dark .dark\:text-violet-400{color:var(--color-violet-400)}@media (hover:hover){.bq-dark .dark\:hover\:bg-\[\#1a2335\]:hover{background-color:#1a2335}.bq-dark .dark\:hover\:bg-\[\#243049\]:hover{background-color:#243049}}}.bq-root input[type=number]{-moz-appearance:auto}.bq-root input[type=number]::-webkit-inner-spin-button{opacity:1}.bq-root input[type=number]::-webkit-outer-spin-button{opacity:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}:root{--color-bg: #0b0d12;--color-bg-elevated: #14171f;--color-surface: #1b1f2a;--color-surface-hover: #232838;--color-border: #2a2f3d;--color-text: #e8eaf0;--color-text-muted: #9aa3b2;--color-text-faint: #6b7280;--color-primary: #6366f1;--color-primary-hover: #7c7ff5;--color-danger: #ef4444;--color-success: #22c55e;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--shadow-md: 0 8px 30px rgba(0, 0, 0, .35);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;background:var(--color-bg-elevated);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:10}.app-brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px;letter-spacing:.2px}.app-brand .logo{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--color-primary),#a855f7);display:grid;place-items:center;color:#fff;font-weight:800}.app-nav{display:flex;align-items:center;gap:4px;margin-left:18px}.app-nav a{padding:7px 12px;border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:14px;font-weight:500;transition:background .15s,color .15s}.app-nav a:hover{background:var(--color-surface);color:var(--color-text)}.app-nav a.active{color:var(--color-text);background:var(--color-surface)}.app-header-right{display:flex;align-items:center;gap:12px;margin-left:auto}.user-chip{display:flex;align-items:center;gap:9px;padding:5px 10px 5px 5px;border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border)}.user-chip img,.user-chip .avatar-fallback{width:28px;height:28px;border-radius:50%;object-fit:cover}.avatar-fallback{display:grid;place-items:center;background:var(--color-primary);color:#fff;font-weight:700;font-size:13px}.user-chip .user-name{font-size:13px;font-weight:500;color:var(--color-text);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:36px 24px 64px}.app-main--full{max-width:none;padding:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 14px;border-radius:var(--radius-sm);border:1px solid transparent;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,opacity .15s}.btn-ghost{background:transparent;color:var(--color-text-muted);border-color:var(--color-border)}.btn-ghost:hover{background:var(--color-surface);color:var(--color-text)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn:disabled{opacity:.55;cursor:not-allowed}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 600px at 50% -10%,rgba(99,102,241,.18),transparent 60%),var(--color-bg)}.login-card{width:100%;max-width:400px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:36px 32px;box-shadow:var(--shadow-md);text-align:center}.login-logo{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,var(--color-primary),#a855f7);display:grid;place-items:center;color:#fff;font-weight:800;font-size:26px;margin:0 auto 20px}.login-card h1{font-size:22px;margin:0 0 6px}.login-card p{color:var(--color-text-muted);font-size:14px;margin:0 0 28px;line-height:1.5}.google-btn-wrap{display:flex;flex-direction:column;align-items:center;gap:12px;min-height:44px}.google-btn-loading{display:flex;align-items:center;gap:8px;color:var(--color-text-muted);font-size:13px}.spinner-sm{width:14px;height:14px;border-radius:50%;border:2px solid var(--color-border);border-top-color:var(--color-primary);animation:spin .8s linear infinite}.login-domain-note{margin-top:22px;font-size:12.5px;color:var(--color-text-faint)}.login-domain-note strong{color:var(--color-text-muted)}.error-banner{margin-top:20px;padding:11px 14px;border-radius:var(--radius-sm);background:#ef44441f;border:1px solid rgba(239,68,68,.4);color:#fca5a5;font-size:13px;text-align:left;line-height:1.45}.page-header{margin-bottom:28px}.page-header h1{font-size:26px;margin:0 0 6px}.page-header p{color:var(--color-text-muted);margin:0;font-size:15px}.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.tool-card{display:flex;flex-direction:column;gap:10px;padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:background .15s,border-color .15s,transform .1s;position:relative}a.tool-card:hover{background:var(--color-surface-hover);border-color:#3a414f;transform:translateY(-2px)}.tool-card.disabled{opacity:.6;cursor:not-allowed}.tool-card .tool-icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:#6366f126;font-size:20px}.tool-card h3{margin:0;font-size:16px}.tool-card p{margin:0;font-size:13.5px;color:var(--color-text-muted);line-height:1.5}.tool-badge{position:absolute;top:16px;right:16px;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--color-bg-elevated);color:var(--color-text-faint);border:1px solid var(--color-border)}.empty-state{padding:48px 24px;text-align:center;color:var(--color-text-muted);border:1px dashed var(--color-border);border-radius:var(--radius-md)}.center-status{min-height:100vh;display:grid;place-items:center;text-align:center;padding:24px;color:var(--color-text-muted)}.spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--color-border);border-top-color:var(--color-primary);animation:spin .8s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}
