:root{--o-font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--o-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--o-bg:#f6f7f9;--o-surface:#fff;--o-text:#1d2129;--o-muted:#6b7280;--o-line:#e3e6eb;--o-accent:#2563eb;--o-accent-text:#fff;--o-success:#15803d;--o-warning:#b45309;--o-danger:#b91c1c;--o-radius:8px;--o-gap:16px;--o-shadow:0 1px 2px #0000000f, 0 1px 3px #00000014;--o-chart-0:#2563eb;--o-chart-1:#16a34a;--o-chart-2:#d97706;--o-chart-3:#9333ea;--o-chart-4:#dc2626;--o-chart-5:#0891b2;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--o-bg:#0f1115;--o-surface:#171a21;--o-text:#e6e8ec;--o-muted:#9aa1ad;--o-line:#2a2f3a;--o-accent:#60a5fa;--o-accent-text:#0b1220;--o-success:#4ade80;--o-warning:#fbbf24;--o-danger:#f87171;--o-shadow:none}}*{box-sizing:border-box}body{background:var(--o-bg);color:var(--o-text);font:15px/1.5 var(--o-font);margin:0}a{color:var(--o-accent);text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:var(--o-mono);font-size:.9em}.o-app{flex-direction:column;min-height:100vh;display:flex}.o-header{background:var(--o-surface);border-bottom:1px solid var(--o-line);z-index:10;align-items:center;gap:24px;padding:10px 24px;display:flex;position:sticky;top:0}.o-brand{color:var(--o-text);align-items:center;gap:8px;font-weight:650;display:flex}.o-brand img{height:28px}.o-nav{flex-wrap:wrap;flex:1;gap:4px;display:flex}.o-nav a{color:var(--o-muted);border-radius:6px;padding:6px 10px}.o-nav a:hover{background:var(--o-bg);color:var(--o-text);text-decoration:none}.o-nav a.o-nav-active{color:var(--o-text);background:var(--o-bg);font-weight:550}.o-main{width:100%;max-width:1200px;margin:0 auto;padding:24px 16px 64px}.o-center{place-items:center;min-height:60vh;display:grid}.o-stack{flex-direction:column;display:flex}.o-row{flex-wrap:wrap;align-items:center;display:flex}.o-columns{gap:var(--o-gap);align-items:start;display:grid}.o-gap-none{gap:0}.o-gap-sm{gap:8px}.o-gap-md{gap:var(--o-gap)}.o-gap-lg{gap:28px}.o-align-start{align-items:flex-start}.o-align-center{align-items:center}.o-align-end{align-items:flex-end}.o-align-stretch{align-items:stretch}.o-justify-start{justify-content:flex-start}.o-justify-center{justify-content:center}.o-justify-end{justify-content:flex-end}.o-justify-between{justify-content:space-between}.o-card{background:var(--o-surface);border:1px solid var(--o-line);border-radius:var(--o-radius);box-shadow:var(--o-shadow);flex-direction:column;gap:12px;padding:16px;display:flex}.o-card-title{margin:0;font-size:1rem}.o-divider{border:0;border-top:1px solid var(--o-line);width:100%;margin:4px 0}.o-heading{margin:0;line-height:1.25}h1.o-heading{font-size:1.6rem}h2.o-heading{font-size:1.3rem}h3.o-heading{font-size:1.1rem}h4.o-heading{font-size:1rem}.o-text{margin:0}.o-tone-muted,.o-muted{color:var(--o-muted)}.o-tone-accent{color:var(--o-accent)}.o-tone-success{color:var(--o-success)}.o-tone-warning{color:var(--o-warning)}.o-tone-danger{color:var(--o-danger)}.o-markdown>:first-child{margin-top:0}.o-markdown>:last-child{margin-bottom:0}.o-image{border-radius:var(--o-radius);max-width:100%}.o-badge{background:var(--o-bg);border:1px solid var(--o-line);color:var(--o-text);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.8rem;display:inline-block}.o-badge.o-tone-danger{background:color-mix(in srgb, var(--o-danger) 12%, transparent);border-color:#0000}.o-badge.o-tone-success{background:color-mix(in srgb, var(--o-success) 12%, transparent);border-color:#0000}.o-badge.o-tone-warning{background:color-mix(in srgb, var(--o-warning) 14%, transparent);border-color:#0000}.o-badge.o-tone-accent{background:color-mix(in srgb, var(--o-accent) 12%, transparent);border-color:#0000}.o-tabs{flex-direction:column;gap:12px;display:flex}.o-tab-list{border-bottom:1px solid var(--o-line);gap:4px;display:flex}.o-tab{color:var(--o-muted);cursor:pointer;font:inherit;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px}.o-tab-active{color:var(--o-text);border-bottom-color:var(--o-accent)}.o-dialog-backdrop{z-index:50;background:#0006;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.o-dialog{background:var(--o-surface);border-radius:var(--o-radius);flex-direction:column;gap:12px;width:min(520px,100%);max-height:90vh;padding:20px;display:flex;overflow:auto;box-shadow:0 20px 50px #00000040}.o-dialog-head{justify-content:space-between;align-items:center;display:flex}.o-dialog-head h3{margin:0}.o-file-modal{width:min(1100px,100%);max-height:95vh}.o-file-modal .o-preview{max-height:75vh;margin:0 auto}.o-file-modal img.o-preview{object-fit:contain}.o-file-modal-actions{align-items:center;gap:8px;display:flex}.o-button{border:1px solid var(--o-line);background:var(--o-surface);color:var(--o-text);font:inherit;cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;display:inline-flex}.o-button:hover:not(:disabled){border-color:var(--o-muted)}.o-button:disabled{opacity:.55;cursor:default}.o-button-primary{background:var(--o-accent);border-color:var(--o-accent);color:var(--o-accent-text)}.o-button-danger{color:var(--o-danger);border-color:color-mix(in srgb, var(--o-danger) 40%, transparent)}.o-button-link{color:var(--o-accent);background:0 0;border-color:#0000;padding:4px 6px}.o-menu{position:relative}.o-menu summary{list-style:none}.o-menu summary::-webkit-details-marker{display:none}.o-menu-items{inset-inline-end:0;background:var(--o-surface);border:1px solid var(--o-line);z-index:20;border-radius:6px;flex-direction:column;min-width:160px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);box-shadow:0 8px 24px #0000001f}.o-menu-item{text-align:start;font:inherit;color:var(--o-text);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:7px 10px}.o-menu-item:hover{background:var(--o-bg)}.o-form{flex-direction:column;gap:12px;display:flex}.o-form-field{flex-direction:column;gap:4px;display:flex}.o-field-label{color:var(--o-muted);font-size:.85rem;font-weight:550}.o-required{color:var(--o-danger)}.o-input{font:inherit;border:1px solid var(--o-line);background:var(--o-surface);color:var(--o-text);text-align:start;border-radius:6px;width:100%;padding:7px 10px}.o-input:focus{outline:2px solid color-mix(in srgb, var(--o-accent) 40%, transparent);outline-offset:0;border-color:var(--o-accent)}.o-invalid .o-input{border-color:var(--o-danger)}.o-help{color:var(--o-muted);font-size:.8rem}.o-field-error,.o-form-error{color:var(--o-danger);font-size:.85rem}.o-ref-picker{position:relative}.o-ref-value{cursor:pointer}.o-ref-menu{inset-inline:0;z-index:30;background:var(--o-surface);border:1px solid var(--o-line);border-radius:6px;flex-direction:column;gap:2px;max-height:260px;padding:6px;display:flex;position:absolute;top:calc(100% + 4px);overflow:auto;box-shadow:0 8px 24px #0000001f}.o-ref-option{text-align:start;font:inherit;color:var(--o-text);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:6px 8px}.o-ref-option:hover{background:var(--o-bg)}.o-table-wrap{background:var(--o-surface);border:1px solid var(--o-line);border-radius:var(--o-radius);overflow-x:auto}.o-table{border-collapse:collapse;width:100%}.o-table th{text-align:start;color:var(--o-muted);border-bottom:1px solid var(--o-line);padding:10px 12px;font-size:.8rem;font-weight:600}.o-table td{border-bottom:1px solid var(--o-line);padding:10px 12px}.o-table tr:last-child td{border-bottom:0}.o-table-click tbody tr{cursor:pointer}.o-table-click tbody tr:hover{background:var(--o-bg)}.o-num{font-variant-numeric:tabular-nums}.o-list{flex-direction:column;display:flex}.o-list-item{border-bottom:1px solid var(--o-line);padding:10px 0}.o-list-item:last-child{border-bottom:0}.o-field{flex-direction:column;gap:2px;display:flex}.o-detail{grid-template-columns:max-content 1fr;align-content:start;gap:8px 16px;margin:0;display:grid}.o-detail-row{display:contents}.o-detail dt{color:var(--o-muted);font-size:.9rem}.o-detail dd{margin:0}.o-stat{background:var(--o-surface);border:1px solid var(--o-line);border-radius:var(--o-radius);padding:14px 16px}.o-stat-value{font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:650}.o-stat-label{color:var(--o-muted);font-size:.85rem}.o-empty{color:var(--o-muted);text-align:center;border:1px dashed var(--o-line);border-radius:var(--o-radius);padding:20px}.o-error{color:var(--o-danger);font-size:.85rem}.o-blob img{border-radius:4px;height:40px}.o-preview{border-radius:var(--o-radius);max-width:100%;display:block}iframe.o-preview{border:1px solid var(--o-line);background:var(--o-surface);width:100%}audio.o-preview{width:100%}video.o-preview{background:#000}.o-json{font-size:.8rem}.o-loading{background:linear-gradient(90deg, var(--o-line), var(--o-bg), var(--o-line));background-size:200% 100%;border-radius:6px;height:24px;animation:1.2s infinite o-shimmer}@keyframes o-shimmer{to{background-position:-200% 0}}.o-board{grid-auto-columns:minmax(220px,1fr);grid-auto-flow:column;gap:12px;display:grid;overflow-x:auto}.o-board-col{background:color-mix(in srgb, var(--o-line) 45%, var(--o-bg));border-radius:var(--o-radius);flex-direction:column;gap:8px;min-height:120px;padding:8px;display:flex}.o-board-over{outline:2px dashed var(--o-accent)}.o-board-head{text-transform:uppercase;letter-spacing:.03em;justify-content:space-between;padding:2px 4px;font-size:.8rem;font-weight:600;display:flex}.o-board-card{background:var(--o-surface);border:1px solid var(--o-line);cursor:grab;box-shadow:var(--o-shadow);border-radius:6px;padding:10px}.o-chart{background:var(--o-surface);border:1px solid var(--o-line);border-radius:var(--o-radius);margin:0;padding:12px 16px}.o-chart figcaption{color:var(--o-muted);margin-bottom:6px;font-size:.85rem}.o-chart-svg{max-width:100%;display:block;overflow:visible}.o-chart-label,.o-chart-value{fill:var(--o-muted);font-size:10px}.o-chart-line{stroke:var(--o-chart-0);stroke-width:2px}.o-chart-c0{fill:var(--o-chart-0);background:var(--o-chart-0)}.o-chart-c1{fill:var(--o-chart-1);background:var(--o-chart-1)}.o-chart-c2{fill:var(--o-chart-2);background:var(--o-chart-2)}.o-chart-c3{fill:var(--o-chart-3);background:var(--o-chart-3)}.o-chart-c4{fill:var(--o-chart-4);background:var(--o-chart-4)}.o-chart-c5{fill:var(--o-chart-5);background:var(--o-chart-5)}.o-pie{align-items:center;gap:16px;display:flex}.o-legend{margin:0;padding:0;font-size:.85rem;list-style:none}.o-swatch{border-radius:2px;width:10px;height:10px;margin-inline-end:6px;display:inline-block}.o-toasts{bottom:16px;z-index:100;flex-direction:column;gap:8px;display:flex;position:fixed;inset-inline-end:16px}.o-toast{background:var(--o-text);color:var(--o-bg);border-radius:6px;max-width:360px;padding:10px 14px;box-shadow:0 8px 24px #0003}.o-toast.o-tone-danger{background:var(--o-danger);color:#fff}.o-toast.o-tone-success{background:var(--o-success);color:#fff}.o-toast.o-tone-warning{background:var(--o-warning);color:#fff}.o-login-wrap{place-items:center;min-height:100vh;padding:16px;display:grid}.o-login{gap:14px;width:min(380px,100%)}.o-login-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.o-lang{width:auto;padding:4px 8px;font-size:.85rem}.o-ed-frame{outline-offset:2px;border-radius:4px;outline:1px dashed #0000;position:relative}.o-ed-frame:hover{outline-color:color-mix(in srgb, var(--o-accent) 50%, transparent)}.o-ed-selected{outline:2px solid var(--o-accent)!important}.o-ed-bad{outline:2px solid var(--o-danger)!important}.o-ed-hidden{opacity:.45}.o-ed-tag{top:-9px;background:var(--o-accent);color:var(--o-accent-text);z-index:5;pointer-events:none;border-radius:3px;padding:2px 4px;font-size:10px;line-height:1;display:none;position:absolute;inset-inline-start:4px}.o-ed-frame:hover>.o-ed-tag,.o-ed-selected>.o-ed-tag{display:block}.o-ed-dialog{border:1px dashed var(--o-line);box-shadow:none;width:100%}.o-mic-dock{z-index:90;pointer-events:none;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:16px}.o-mic-dock.o-mic-end{inset-inline-end:16px}.o-mic-dock.o-mic-start{align-items:flex-start;inset-inline-start:16px}.o-mic{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:pointer;background:var(--o-accent);color:#fff;border:none;border-radius:50%;place-items:center;width:52px;height:52px;transition:transform .15s,opacity .15s;display:grid;box-shadow:0 6px 20px #00000040}.o-mic:hover:not(:disabled){transform:scale(1.05)}.o-mic:disabled{opacity:.45;cursor:default;box-shadow:none}.o-mic:focus-visible{outline:3px solid var(--o-accent);outline-offset:3px}.o-mic.o-mic-on{background:#dc2626;animation:1.4s ease-out infinite o-mic-pulse}.o-mic.o-mic-busy{background:var(--o-muted)}@keyframes o-mic-pulse{0%{box-shadow:0 0 #dc26268c}to{box-shadow:0 0 0 16px #dc262600}}.o-mic-bubble{pointer-events:auto;border-radius:var(--o-radius);background:var(--o-surface);max-width:min(360px,100vw - 32px);color:var(--o-text);border:1px solid var(--o-line);padding:8px 12px;font-size:.9em;box-shadow:0 6px 20px #00000026}.o-mic-bubble.o-hidden{display:none}.o-mic-bubble.o-mic-error{color:#b91c1c;border-color:#dc2626}.o-dictating{outline-offset:1px;outline:2px solid #dc2626}body:has(.o-mic-dock.o-mic-end) .o-toasts{bottom:84px}@media (prefers-reduced-motion:reduce){.o-mic.o-mic-on{animation:none}}
