.meter[data-v-77d66f51]{pointer-events:none;width:min(820px,92vw);height:220px;display:block}@media (width<=720px){.meter[data-v-77d66f51]{height:160px}}.voice[data-v-0af1b600]{border:1px solid var(--border,#0e224014);height:36px;color:var(--text-muted,#8b97a8);cursor:pointer;transition:border-color var(--dur,.18s) var(--ease,cubic-bezier(.22, 1, .36, 1)), background var(--dur,.18s) var(--ease,cubic-bezier(.22, 1, .36, 1)), color var(--dur,.18s) var(--ease,cubic-bezier(.22, 1, .36, 1));background:#ffffffb3;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:0 10px 0 9px;display:flex;box-shadow:0 1px 2px #0e22400a}.voice[data-v-0af1b600]:hover{color:var(--ink,var(--text,#142438));background:#fff;border-color:#0e22401f}.voice[data-v-0af1b600]:disabled{cursor:default;opacity:.55}.voice.recording[data-v-0af1b600]{color:#dc2626;background:#fee2e2b3;border-color:#dc262647}.voice-kbd[data-v-0af1b600]{border:1px solid var(--border-strong,#0e224024);font:inherit;color:var(--text-muted,#8b97a8);border-radius:4px;padding:1px 6px;font-size:11px;font-weight:550}.voice.recording .voice-kbd[data-v-0af1b600]{color:#dc2626;border-color:#dc262647}.spin[data-v-0af1b600]{animation:.7s linear infinite nv-voice-spin-0af1b600}@media (width<=720px){.voice[data-v-0af1b600]{justify-content:center;width:36px;padding:0}.voice-kbd[data-v-0af1b600]{display:none}}@media (prefers-reduced-motion:reduce){.spin[data-v-0af1b600]{animation:none}}@keyframes nv-voice-spin-0af1b600{to{transform:rotate(360deg)}}.overlay[data-v-0af1b600]{inset:var(--topbar-h,60px) 0 0 0;z-index:11000;-webkit-backdrop-filter:blur(18px)saturate(140%);color:var(--accent,#3578e5);cursor:pointer;animation:nv-voice-fade-0af1b600 .18s var(--ease,cubic-bezier(.22, 1, .36, 1));background:#eef2f7b8;justify-content:center;align-items:center;padding:24px 40px;display:flex;position:fixed}.overlay.headless[data-v-0af1b600]{inset:0}.stage[data-v-0af1b600]{pointer-events:none;flex-direction:column;align-items:center;gap:28px;width:min(820px,92vw);display:flex}.live[data-v-0af1b600]{text-align:center;max-width:100%;min-height:1.5em;color:var(--ink,var(--text,#142438));white-space:pre-wrap;margin:0;font-size:18px;font-weight:500;line-height:1.45}.live.pending[data-v-0af1b600]{color:var(--text-muted,#8b97a8);font-weight:450}.close[data-v-0af1b600]{width:36px;height:36px;color:var(--text-muted,#8b97a8);cursor:pointer;background:#ffffffb8;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:16px;right:16px;box-shadow:0 1px 2px #0e22400f}.close[data-v-0af1b600]:hover:not(:disabled){color:var(--ink,var(--text,#142438));background:#fff}.close[data-v-0af1b600]:disabled{cursor:default;opacity:.45}@keyframes nv-voice-fade-0af1b600{0%{opacity:0}to{opacity:1}}.sw[data-v-dcbc0272]{flex-shrink:0;position:relative}.sw-btn[data-v-dcbc0272]{border:1px solid var(--border,#0e224014);height:36px;color:var(--text-muted,#8b97a8);cursor:pointer;transition:border-color var(--dur,.18s) var(--ease,cubic-bezier(.22, 1, .36, 1)), background var(--dur,.18s) var(--ease,cubic-bezier(.22, 1, .36, 1));background:#ffffffb3;border-radius:999px;align-items:center;gap:8px;padding:0 10px 0 9px;display:flex;box-shadow:0 1px 2px #0e22400a}.sw-btn[data-v-dcbc0272]:hover,.sw-btn.open[data-v-dcbc0272]{color:var(--ink,var(--text,#142438));background:#fff;border-color:#0e22401f}.sw-btn.product[data-v-dcbc0272]{color:var(--ink,var(--text,#142438));padding:0 10px 0 11px}.sw-ico[data-v-dcbc0272]{background:var(--accent,#3578e5);border-radius:5px;flex:none;place-items:center;width:18px;height:18px;display:grid}.sw-ico.navy[data-v-dcbc0272]{background:#0e2240}@supports (corner-shape:squircle){.sw-ico[data-v-dcbc0272]{corner-shape:squircle;border-radius:22.37%}}.sw-name[data-v-dcbc0272]{letter-spacing:-.01em;font-size:14px;font-weight:650;line-height:1}.sw-chevron[data-v-dcbc0272]{color:var(--text-muted,#8b97a8);transition:transform var(--dur,.18s) var(--ease,cubic-bezier(.22, 1, .36, 1));flex:none}.sw-btn.open .sw-chevron[data-v-dcbc0272]{transform:rotate(180deg)}.sw-kbd[data-v-dcbc0272]{border:1px solid var(--border-strong,#0e224024);font:inherit;color:var(--text-muted,#8b97a8);border-radius:4px;padding:1px 6px;font-size:11px;font-weight:550}@media (width<=720px){.hit:not(.wide) .hit-sub[data-v-dcbc0272],.hit-kbd[data-v-dcbc0272]{display:none}}.overlay[data-v-dcbc0272]{z-index:1000;animation:nv-sw-fade-dcbc0272 .16s var(--ease,cubic-bezier(.22, 1, .36, 1));background:#0e224066;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.palette[data-v-dcbc0272]{width:min(640px,92vw);max-height:70vh;-webkit-backdrop-filter:var(--glass,blur(28px) saturate(160%));border-radius:var(--radius-lg,18px);box-shadow:var(--shadow-lg,0 20px 50px #0e224024);animation:nv-sw-rise-dcbc0272 .2s var(--ease,cubic-bezier(.22, 1, .36, 1));background:#ffffffdb;border:1px solid #ffffffb3;flex-direction:column;display:flex;overflow:hidden}.input[data-v-dcbc0272]{border:0;border-bottom:1px solid var(--border,#0e224014);font:inherit;background:0 0;border-radius:0;outline:none;padding:14px 16px;font-size:18px;font-weight:550}.body[data-v-dcbc0272]{flex:1;grid-template-columns:repeat(6,1fr);align-content:start;gap:2px 6px;padding:6px;display:grid;overflow:auto}.empty[data-v-dcbc0272]{color:var(--text-muted,#8b97a8);margin:0;padding:18px 14px;font-size:13px}.hit.wide[data-v-dcbc0272],.sep[data-v-dcbc0272],.empty[data-v-dcbc0272]{grid-column:1/-1}.hit[data-v-dcbc0272]:not(.wide):not(.below){grid-column:span 3}.hit.below[data-v-dcbc0272]{grid-column:span 2}.hit.below-2[data-v-dcbc0272]{grid-column:span 3}.hit.below-1[data-v-dcbc0272]{grid-column:1/-1}.hit[data-v-dcbc0272]{text-align:left;cursor:pointer;width:100%;min-width:0;font:inherit;color:inherit;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;padding:8px 10px;display:flex}.hit.active[data-v-dcbc0272]{background:var(--surface-active,var(--accent-tint,#3578e51f))}.hit-ico[data-v-dcbc0272]{background:var(--accent,#3578e5);border-radius:8px;flex:none;place-items:center;width:32px;height:32px;display:grid}.hit-ico.navy[data-v-dcbc0272]{background:#0e2240}@supports (corner-shape:squircle){.hit-ico[data-v-dcbc0272]{corner-shape:squircle;border-radius:22.37%}}.sep[data-v-dcbc0272]{background:var(--border,#0e224014);height:1px;margin:6px 10px}.hit-text[data-v-dcbc0272]{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.hit-title[data-v-dcbc0272],.hit-sub[data-v-dcbc0272]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hit-title[data-v-dcbc0272]{font-size:15px;font-weight:550}.hit-sub[data-v-dcbc0272]{color:var(--text-muted,#8b97a8);font-size:13px}.hit-check[data-v-dcbc0272]{color:var(--accent,#3578e5);flex:none}.hit-kbd[data-v-dcbc0272]{border:1px solid var(--border-strong,#0e224024);font:inherit;text-align:center;white-space:nowrap;color:var(--text-muted,#8b97a8);border-radius:4px;flex:none;padding:1px 6px;font-size:11px;font-weight:550}.foot[data-v-dcbc0272]{border-top:1px solid var(--border,#0e224014);color:var(--text-muted,#8b97a8);padding:8px 18px;font-size:11px}@keyframes nv-sw-fade-dcbc0272{0%{opacity:0}to{opacity:1}}@keyframes nv-sw-rise-dcbc0272{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.nv-modal-x svg,.nv-modal-x .fluent-icon,.nv-modal-x .fluent-icon svg{width:14px;height:14px}.nv-modal-x{width:30px;height:30px;color:var(--text-muted,#8b97a8);cursor:pointer;background:#0000000f;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;display:inline-flex}.nv-modal-x:hover{color:var(--text,#142438);background:#0000001f}@media (prefers-color-scheme:dark){.nv-modal-x{background:#ffffff14}.nv-modal-x:hover{color:#f5f5f7;background:#ffffff29}}[data-epdf-i^=divider]{display:none!important}.nv-chat{--muted:var(--text-secondary);--bg:var(--paper);--surface:var(--card);--primary:var(--ink);--primary-dark:var(--navy-ink,#0a1830)}.nv-chat.msg{gap:14px;display:flex}.msg-user{justify-content:flex-end}.msg-user .msg-main{flex-direction:column;justify-content:flex-end;align-items:flex-end;max-width:84%;display:flex}.msg-bubble{background:var(--accent);color:#fff;white-space:pre-wrap;word-wrap:break-word;border-radius:18px 18px 4px;padding:11px 16px;font-size:15px;line-height:1.55;box-shadow:0 2px 10px #3578e540}.msg-avatar{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.msg-assistant .msg-main{flex:1;min-width:0;padding-top:3px}.msg-route{color:var(--text-secondary);margin:0 0 6px;font-size:12px;font-weight:500}.msg-body{color:var(--text);font-size:15px}.msg-error .msg-body{color:#b42318;background:#fef3f2;border:1px solid #fecdc9;border-radius:10px;padding:12px 14px}.msg-truncated{border:1px solid var(--border);color:var(--text-secondary);background:var(--paper);border-radius:10px;margin-top:8px;padding:6px 10px;font-size:13px}.cursor{vertical-align:text-bottom;background:var(--accent);border-radius:1px;width:8px;height:17px;margin-left:2px;animation:1s steps(2,start) infinite nv-chat-blink;display:inline-block}@keyframes nv-chat-blink{50%{opacity:0}}.msg-actions{opacity:0;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;transition:opacity .15s;display:flex;overflow:visible}.msg-assistant:hover .msg-actions,.msg-actions:focus-within,.msg-actions.is-speaking,.msg-actions.is-research{opacity:1}.msg-research{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);border-radius:999px;align-items:center;gap:6px;margin:0 0 8px;padding:3px 9px 3px 6px;font-size:12px;font-weight:650;line-height:1.25;display:inline-flex}.msg-research svg{flex-shrink:0}.msg-action:disabled{opacity:.65;cursor:default}.msg-action{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex:0 0 28px;justify-content:center;align-items:center;padding:0;font-size:12.5px;font-weight:500;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-flex;position:relative}.msg-action:hover,.msg-action:focus-visible{color:var(--text);background:var(--card);border-color:var(--border)}.msg-action.is-on{color:var(--accent)}.msg-action.is-saved{cursor:default}.msg-action.is-saved:hover,.msg-action.is-saved:focus-visible{color:var(--text-secondary);background:0 0;border-color:#0000}.msg-action.is-saved .msg-action-notes{background:#9aa6b5}.msg-action-label{background:var(--card,#fff);border:1px solid var(--border);color:var(--text);white-space:nowrap;opacity:0;pointer-events:none;z-index:3;border-radius:6px;padding:3px 8px;font-size:12px;font-weight:550;line-height:1.25;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 5px);left:50%;transform:translate(-50%)translateY(2px);box-shadow:0 4px 14px #0e22401a}.msg-action:hover .msg-action-label,.msg-action:focus-visible .msg-action-label,.msg-action.is-busy .msg-action-label{opacity:1;transform:translate(-50%)translateY(0)}.msg-action-notes{background:var(--accent,#3578e5);border-radius:5px;flex-shrink:0;place-items:center;width:18px;height:18px;display:grid;position:relative}.msg-action-check{color:#fff;width:11px;height:11px;box-shadow:0 0 0 1.5px var(--bg,#fff);background:#2f9d5c;border-radius:50%;place-items:center;display:grid;position:absolute;top:-4px;right:-4px}@supports (corner-shape:squircle){.msg-action-notes{corner-shape:squircle;border-radius:22.37%}}@media (hover:none){.msg-action{flex:none;gap:6px;width:auto;min-height:28px;padding:4px 8px}.msg-action-label{box-shadow:none;color:inherit;opacity:1;background:0 0;border:0;padding:0;position:static;transform:none}}.msg-speak-error{color:var(--danger,#c0392b);flex:100%;margin:2px 0 0;font-size:12.5px}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p{margin:0 0 14px}.markdown h1,.markdown h2,.markdown h3,.markdown h4{color:var(--ink);margin:22px 0 12px;font-weight:700;line-height:1.3}.markdown h1{font-size:24px}.markdown h2{font-size:20px}.markdown h3{font-size:17px}.markdown ul,.markdown ol{margin:0 0 14px;padding-left:24px}.markdown li{margin:4px 0}.markdown a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.markdown blockquote{border-left:3px solid var(--accent);color:var(--text-secondary);background:#3578e50d;border-radius:0 8px 8px 0;margin:0 0 14px;padding:4px 16px}.markdown table{border-collapse:collapse;width:100%;margin:0 0 14px;font-size:14px}.markdown th,.markdown td{border:1px solid var(--border);text-align:left;padding:8px 12px}.markdown th{background:var(--paper);font-weight:600}.markdown hr{border:none;border-top:1px solid var(--border);margin:20px 0}.markdown :not(pre)>code{font-family:var(--mono);color:#0b2a5b;white-space:break-spaces;background:#0e224012;border-radius:5px;padding:2px 6px;font-size:.875em}.code-block{background:#0d1117;border:1px solid #1f3350;border-radius:12px;margin:0 0 16px;overflow:hidden}.code-block-header{background:#161b22;border-bottom:1px solid #1f3350;justify-content:space-between;align-items:center;padding:7px 14px;display:flex}.code-block-lang{letter-spacing:.04em;text-transform:uppercase;color:#8aa2c2;font-size:11.5px;font-weight:600}.code-block-copy{color:#8aa2c2;background:0 0;border:none;padding:2px 4px;font-size:12px;font-weight:500}.code-block-copy:hover{color:#fff}.code-block pre{margin:0;padding:14px 16px;overflow-x:auto}.markdown pre code{font-family:var(--mono);background:0 0;padding:0;font-size:13.5px;line-height:1.6}.trace{margin-bottom:8px}.trace-row{width:100%;color:var(--text-secondary);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:2px 0;font-size:13px;display:flex}.trace-row:hover{color:var(--text)}.trace-chevron{flex:none;transition:transform .15s}.trace.open .trace-chevron{transform:rotate(90deg)}.trace-line{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.trace-line.live{color:var(--accent)}.trace-body{max-height:360px;margin-top:2px;padding:2px 0;position:relative;overflow-y:auto}.trace-body:before{content:"";background:var(--border);width:1.5px;position:absolute;top:14px;bottom:14px;left:7px}.trace-item{align-items:flex-start;gap:10px;padding:5px 0;display:flex;position:relative}.trace-marker{z-index:1;background:var(--paper);width:16px;height:16px;color:var(--text-secondary);border-radius:50%;flex:none;place-items:center;margin-top:1px;display:grid}.trace-item.thinking .trace-marker:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.trace-item.running .trace-marker,.trace-item.done .trace-marker{color:var(--accent)}.trace-item.error .trace-marker{color:#e5484d}.trace-think{min-width:0;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;flex:1;font-size:13px;line-height:1.6}.trace-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.trace-tool{align-items:baseline;gap:6px;min-width:0;padding-top:1px;display:flex;overflow:hidden}.trace-sources{flex-direction:column;gap:2px;display:flex}.trace-source{max-width:100%;color:var(--text-secondary);align-items:center;gap:7px;padding:1px 0;font-size:12.5px;text-decoration:none;display:flex}.trace-source:hover{color:var(--accent)}.trace-source:hover .trace-source-title{text-decoration:underline}.trace-source-favicon{object-fit:contain;background:var(--card);border-radius:4px;flex:none;width:15px;height:15px}.trace-source-favicon.fallback{color:var(--text-secondary);background:0 0;place-items:center;display:grid}.trace-source-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.trace-tool-label{color:var(--text);white-space:nowrap;flex:none;font-size:13px;font-weight:600}.trace-tool-detail{min-width:0;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.trace-item.error .trace-tool-label{color:#e5484d}.trace-tool-status{flex:none;place-items:center;width:16px;margin-top:1px;display:grid}.tool-step-check{color:var(--accent)}.tool-step-warn{color:#e5484d}.tool-step-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:13px;height:13px;animation:.7s linear infinite nv-chat-spin}@keyframes nv-chat-spin{to{transform:rotate(360deg)}}.msg-footer{align-items:center;gap:8px;margin-top:10px;display:flex;overflow:visible}.msg-footer .msg-actions{margin-top:0}.msg-sources-toggle{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;align-items:center;gap:8px;margin-left:auto;padding:4px 8px;display:flex}.msg-sources-toggle:hover{background:var(--card);border-color:var(--border)}.msg-sources-label{color:var(--text);font-size:13px;font-weight:650}.msg-sources-preview{align-items:center;display:inline-flex}.msg-sources-preview-icon{border:1.5px solid var(--paper);background:var(--card);width:18px;height:18px;color:var(--text-secondary);border-radius:5px;place-items:center;margin-left:-5px;display:grid;overflow:hidden}.msg-sources-preview-icon:first-child{margin-left:0}.msg-sources-preview-icon img{object-fit:contain;width:100%;height:100%;display:block}.msg-sources-chevron{color:var(--text-secondary);flex:none;transition:transform .15s}.msg-sources-chevron.open{transform:rotate(90deg)}.msg-sources-list{flex-direction:column;gap:3px;margin:10px 0 0;padding:0;list-style:none;display:flex}.msg-source-divide{border-top:1px solid var(--border);margin-top:5px;padding-top:8px}.msg-source-link{color:var(--text);border-radius:8px;align-items:center;gap:9px;padding:6px 8px;text-decoration:none;display:flex}.msg-source-link:hover{background:#3578e512}.msg-source-num{text-align:right;width:16px;color:var(--text-secondary);flex:none;font-size:11px;font-weight:700}.msg-source-favicon{object-fit:contain;background:var(--card);border-radius:4px;flex:none;width:16px;height:16px}.msg-source-favicon.fallback{color:var(--text-secondary);background:0 0;place-items:center;display:grid}.msg-source-text{flex:auto;align-items:baseline;gap:8px;min-width:0;display:flex}.msg-source-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden}.msg-source-host{color:var(--text-secondary);flex:none;font-size:12px}.msg-avatar .mark{width:20px;height:20px;display:block}.msg-files{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:100%;margin-bottom:8px;display:flex}.msg-file{border:1px solid var(--border);background:var(--card);max-width:260px;color:inherit;border-radius:12px;align-items:center;gap:9px;padding:7px 11px 7px 7px;display:flex}.msg-file.image{padding:5px}.msg-file-thumb{object-fit:cover;border-radius:8px;flex:none;width:46px;height:46px}.msg-file-icon{background:var(--paper);width:38px;height:38px;color:var(--text-secondary);border-radius:9px;flex:none;place-items:center;display:grid}.msg-file-meta{flex-direction:column;min-width:0;line-height:1.25;display:flex}.msg-file-name{max-width:175px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.msg-file-sub{color:var(--text-secondary);font-size:11.5px}button.msg-file{font:inherit;text-align:left;cursor:zoom-in}.msg-images{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.msg-image{border:1px solid var(--border);cursor:zoom-in;background:0 0;border-radius:12px;max-width:min(420px,100%);padding:0;display:block;overflow:hidden}.msg-image img{width:100%;height:auto;display:block}.msg-downloads{flex-direction:column;gap:8px;margin-top:10px;display:flex}.msg-download{border:1px solid var(--border);background:var(--card);max-width:340px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:9px 12px;display:flex}.msg-download-icon{width:36px;height:36px;color:var(--accent);background:#3578e51a;border-radius:9px;flex:none;place-items:center;display:grid}.msg-download-meta{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.msg-download-name{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.msg-download-sub{color:var(--text-secondary);font-size:11.5px}.msg-download-arrow{color:var(--text-secondary);flex:none}.lightbox{z-index:1000;cursor:zoom-out;background:#000000d1;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.lightbox-img{cursor:default;border-radius:10px;max-width:100%;max-height:100%}.lightbox-close{color:#fff;cursor:pointer;background:#ffffff24;border:none;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;display:grid;position:fixed;top:18px;right:20px}.lightbox-pdf{background:var(--card);cursor:default;border-radius:12px;flex-direction:column;width:min(900px,100%);height:min(90vh,100%);display:flex;overflow:hidden}.lightbox-pdfwrap{flex:1;min-height:0}.lightbox-pdf-bar{border-top:1px solid var(--border);align-items:center;gap:10px;padding:10px 12px;display:flex}.lightbox-pdf-name{min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;font-weight:600;overflow:hidden}.nv-composer.composer{background:0 0;flex-shrink:0;padding:0 20px 16px}.composer-inner{max-width:768px;margin:0 auto}.composer-dock{margin-bottom:8px}.composer-box{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:18px;flex-direction:column;gap:4px;padding:16px;transition:border-color .15s;display:flex}.composer-box:focus-within{border-color:var(--accent)}.nv-composer :focus-visible{outline:none}.composer-input,.composer-input:focus,.composer-input:focus-visible{appearance:none;width:100%;box-shadow:none;resize:none;color:var(--text);background:0 0;border:none;outline:none;max-height:220px;padding:0;font-family:inherit;font-size:15px;line-height:1.5}.composer-input::placeholder{color:var(--text-secondary)}.composer-footer{justify-content:flex-end;align-items:center;gap:6px;padding-top:2px;display:flex}.composer-tools{align-items:center;gap:2px;margin-right:auto;display:flex}.composer-btn{cursor:pointer;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.composer-btn.send{background:var(--accent);color:#fff}.composer-btn.send:disabled{cursor:not-allowed;background:#c3cede}.composer-btn.stop{background:var(--ink);color:#fff}.composer-btn.mic{color:var(--text-secondary);background:0 0}.composer-btn.mic:hover:not(:disabled){background:var(--paper);color:var(--text)}.composer-btn.mic.voice-on{background:var(--accent);color:#fff}.composer-btn.mic.voice-on:hover:not(:disabled){background:var(--accent);color:#fff;filter:brightness(1.05)}.composer-btn.mic.recording{color:#ef4444;background:#ef44441f}.composer-btn.mic.voice-on.recording{color:#fff;background:#ef4444}.composer-btn.mic.voice-on.speaking{background:var(--accent);color:#fff}.composer-btn.add{color:var(--text-secondary);background:0 0}.composer-btn.add:hover{background:var(--paper);color:var(--text)}.composer-hint{text-align:center;color:var(--text-secondary);margin-top:9px;font-size:11.5px}.composer-hint-error{color:#ef4444}.nv-chat-tip{z-index:10000;color:#fff;font:550 12px/1.3 var(--font);white-space:nowrap;pointer-events:none;background:#0e2240;border-radius:8px;padding:6px 9px;position:fixed;transform:translate(-50%,calc(-100% - 8px));box-shadow:0 8px 20px #0e224038}.nv-chat-tip:after{content:"";border:5px solid #0000;border-top-color:#0e2240;position:absolute;top:100%;left:50%;transform:translate(-50%)}.mic-spinner{animation:.7s linear infinite nv-chat-spin}.composer-file-input{display:none}.composer-files{flex-wrap:wrap;gap:8px;margin-bottom:6px;display:flex}.composer-file{border:1px solid var(--border);background:var(--paper);border-radius:12px;align-items:center;gap:8px;max-width:240px;padding:6px 8px 6px 6px;display:flex;position:relative}.composer-file.uploading{opacity:.75}.composer-file.error{border-color:#e5484d}.composer-file-thumb{object-fit:cover;border-radius:8px;flex:none;width:34px;height:34px}.composer-file-icon{background:var(--card);width:34px;height:34px;color:var(--text-secondary);border-radius:8px;flex:none;place-items:center;display:grid}.composer-file-meta{flex-direction:column;min-width:0;line-height:1.2;display:flex}.composer-file-name{max-width:150px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.composer-file-sub{color:var(--text-secondary);font-size:11.5px}.composer-file.error .composer-file-sub{color:#e5484d}.composer-file-spin{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex:none;width:14px;height:14px;animation:.7s linear infinite nv-chat-spin}.composer-file-x{width:18px;height:18px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;place-items:center;display:grid}.composer-file-x:hover{background:var(--card);color:var(--text)}@media (prefers-reduced-motion:reduce){.cursor,.tool-step-spinner,.msg-avatar .mark.generating,.msg-avatar .mark.generating .ml1,.msg-avatar .mark.generating .ml2,.msg-avatar .mark.generating .ml3,.mic-spinner,.composer-file-spin{animation:none}}pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.trigger[data-v-a93a7dca]{border:1px solid var(--border,#0e224014);width:min(240px,36vw);min-width:160px;color:var(--text-muted,#8b97a8);cursor:pointer;font:inherit;background:#ffffffb3;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:6px 12px;font-size:13px;transition:border-color .18s,background .18s;display:flex;box-shadow:0 1px 2px #0e22400a}.trigger[data-v-a93a7dca]:hover{color:var(--text-secondary,#5a6a7e);background:#fff;border-color:#0e22401f}.trigger-icon[data-v-a93a7dca]{flex-shrink:0}.trigger-label[data-v-a93a7dca]{text-align:left;flex:1}.trigger-kbd[data-v-a93a7dca]{border:1px solid var(--border-strong,#0e224024);font:inherit;color:var(--text-muted,#8b97a8);border-radius:4px;padding:1px 6px;font-size:11px;font-weight:550}@media (width<=720px){.trigger[data-v-a93a7dca]{justify-content:center;width:44px;min-width:44px;padding:7px}.trigger-label[data-v-a93a7dca],.trigger-kbd[data-v-a93a7dca]{display:none}}.overlay[data-v-48085690]{z-index:1000;background:#0e224047;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.palette[data-v-48085690]{background:#fff;border-radius:12px;flex-direction:column;width:min(640px,92vw);max-height:70vh;display:flex;overflow:hidden;box-shadow:0 20px 50px #0000002e}.input[data-v-48085690]{border:0;border-bottom:1px solid var(--color-border-light);font:inherit;border-radius:0;outline:none;padding:14px 18px;font-size:15px}.body[data-v-48085690]{flex:1;padding:6px 0;overflow:auto}.empty[data-v-48085690]{color:var(--color-text-muted);margin:0;padding:18px;font-size:13px}.group[data-v-48085690]{padding:4px 0 6px}.group-label[data-v-48085690]{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:8px 18px 4px;font-size:11px;font-weight:650}.hit[data-v-48085690]{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;flex-direction:column;gap:2px;padding:8px 18px;display:flex}.hit.active[data-v-48085690]{background:#3578e51a}.hit-title[data-v-48085690]{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:550;overflow:hidden}.hit-sub[data-v-48085690]{color:var(--color-text-muted);font-size:12px}.foot[data-v-48085690]{border-top:1px solid var(--color-border-light);color:var(--color-text-muted);padding:8px 18px;font-size:11px}.foot kbd[data-v-48085690]{border:1px solid var(--color-border-light);font:inherit;border-radius:4px;padding:1px 5px;font-size:11px;display:inline-block}.pwa-update[data-v-ad261bcd]{z-index:1000;border:1px solid var(--color-border-light,#e5e7eb);color:var(--color-text,#111827);background:#fff;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;font-size:13px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 8px 24px #0000001f}.pwa-update-text[data-v-ad261bcd]{font-weight:500}.pwa-update-reload[data-v-ad261bcd]{background:var(--color-primary,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600}.pwa-update-reload[data-v-ad261bcd]:hover{filter:brightness(1.05)}.pwa-update-close[data-v-ad261bcd]{width:24px;height:24px;color:var(--color-text-muted,#6b7280);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:13px;display:inline-flex}.pwa-update-close[data-v-ad261bcd]:hover{background:var(--color-bg-hover,#f3f4f6)}.topbar-scrim[data-v-7031a8b8]{z-index:80;position:fixed;inset:0}.page[data-v-7031a8b8]{--app-shell-padding:108px;width:100%;max-width:1400px;margin-inline:auto;padding:24px}.page.bare[data-v-7031a8b8]{max-width:none;min-height:100vh;padding:0}.page.embed[data-v-7031a8b8]{background:var(--embed-bg,transparent);height:100vh;overflow:hidden}.flow-rail-split[data-v-7031a8b8]{background:var(--border);height:1px;margin:8px}.rail-item-flow[data-v-7031a8b8]{padding-left:22px}.rail-count[data-v-7031a8b8]{color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px;font-weight:500}.rail-version[data-v-7031a8b8]{color:var(--text-muted);font-variant-numeric:tabular-nums;padding:4px 10px;font-size:12px;text-decoration:none;display:block}.rail-version[data-v-7031a8b8]:hover{color:var(--accent)}@media (width<=720px){.page[data-v-7031a8b8]{padding:16px 14px 28px}.page.bare[data-v-7031a8b8],.page.embed[data-v-7031a8b8]{padding:0}}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/plus-jakarta-sans-latin-B2KjpZfh.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:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/plus-jakarta-sans-latin-ext-CAOONhfK.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}:root{--ink:#0e2240;--ink-soft:#2a3d58;--paper:#eef2f7;--paper-deep:#e2e8f0;--sheet:#eef2f7;--card:#fff;--accent:#3578e5;--accent-hover:#2a66c9;--accent-soft:#3578e51f;--text:#142438;--text-secondary:#5a6a7e;--text-muted:#8b97a8;--surface:transparent;--surface-solid:#ffffffb8;--surface-hover:#0e22400d;--surface-active:var(--accent-soft);--glass:blur(28px) saturate(160%);--glass-bg:#ffffff8c;--topbar-fill:#f7f9fb;--border:#0e224014;--border-strong:#0e224024;--danger:#c92f3a;--danger-soft:#fdecee;--warning:#b86a00;--warning-soft:#fff4e0;--success:#2f8a2a;--shadow-sm:0 1px 2px #0e22400d;--shadow-md:0 10px 30px #0e224014;--shadow-lg:0 20px 50px #0e224024;--shadow-lift:0 8px 20px #0e224014;--radius-sm:12px;--radius-md:16px;--radius-lg:18px;--radius-xl:22px;--ease:cubic-bezier(.22, 1, .36, 1);--dur:.18s;--font:"Plus Jakarta Sans", system-ui, sans-serif;--mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--navy:var(--ink);--navy-ink:#091729;--blue:var(--accent);--blue-hover:var(--accent-hover);--color-primary:var(--ink);--color-primary-dark:#091729;--color-accent:var(--accent);--color-link:var(--accent);--color-text:var(--text);--color-text-secondary:var(--text-secondary);--color-text-muted:var(--text-muted);--color-bg:var(--paper);--color-bg-hover:var(--surface-hover);--color-border:var(--border-strong);--color-border-light:var(--border);--color-danger:var(--danger);--divider:var(--border);--hover-bg:var(--surface-hover);--press-bg:#0e224014;--accent-tint:var(--accent-soft);--accent-tint-strong:#3578e538;--accent-on:#fff;--accent-rgb:53, 120, 229;--mark-fill:var(--accent);--mark-fill-light:#5a9aff;--mark-fill-dark:#1f4894;--text-soft:var(--text-muted);--card-bg:#ffffffb8;--card-border:#ffffffb3;--card-highlight:#ffffffb3;--card-shadow:var(--shadow-md);--radius-card:var(--radius-xl);--radius-pill:999px;--spring:var(--ease);--topbar-h:60px;--nv-brand-w:96px;--nv-brand-h:22px;--nv-search-w:min(240px, 36vw);--nv-modal-z:220;--nv-select-z:8800;font-family:var(--font);color:var(--text);font-size:16px;line-height:1.5}*,:before,:after{box-sizing:border-box}button,input,select,textarea{font:inherit;color:inherit}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nv-composer :focus-visible,.composer-input:focus-visible{outline:none}::selection{background:#3578e52e}.nv-btn,.btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);letter-spacing:-.01em;cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);background:#ffffffb8;justify-content:center;align-items:center;gap:7px;padding:8px 14px;font-size:15px;font-weight:650;display:inline-flex}.nv-btn:hover,.btn:hover{background:#fff}.nv-btn.primary,.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 6px 16px #3578e547}.nv-btn.primary:hover,.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.nv-btn.danger,.btn.danger{color:var(--danger);border-color:var(--danger-soft);background:#ffffffb8}.nv-btn.danger:hover,.btn.danger:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.nv-btn.ghost,.btn.ghost{box-shadow:none;background:0 0}.nv-btn.ghost:hover,.btn.ghost:hover{background:var(--surface-hover);color:var(--ink)}.nv-btn:disabled,.btn:disabled{opacity:.4;cursor:default;box-shadow:none}.icon-btn{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:color var(--dur) var(--ease), background var(--dur) var(--ease);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--surface-hover);color:var(--ink)}.icon-btn.on{color:var(--accent);background:var(--accent-soft)}.modal{-webkit-backdrop-filter:blur(8px);z-index:200;animation:nv-fade .18s var(--ease);background:#0e224047;justify-content:center;align-items:center;padding:24px 16px;display:flex;position:fixed;inset:0}.modal-overlay .modal,.modal-backdrop .modal{z-index:auto;animation:none;display:block;position:relative;inset:auto}.dialog{-webkit-backdrop-filter:var(--glass);border-radius:var(--radius-lg);width:min(440px,92vw);box-shadow:0 1px 0 #ffffffb3 inset, var(--shadow-lg);animation:nv-rise .22s var(--ease);background:#ffffffd1;border:1px solid #ffffffb3;flex-direction:column;gap:14px;padding:22px 22px 18px;display:flex;position:relative}.dialog h2{letter-spacing:-.03em;font-size:18px;font-weight:700}.dialog-err{color:var(--danger);font-size:13px}.dialog label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:12px;font-weight:650;display:flex}.nv-actions,.dialog-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.nv-lead{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.nv-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md)}.nv-field,.dialog input,.dialog textarea,.dialog select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:15px;font:inherit;color:var(--text);background:#fff;padding:10px 12px;font-weight:450}textarea.nv-field{resize:vertical;width:100%}.nv-field:focus,.dialog input:focus,.dialog textarea:focus,.dialog select:focus{border-color:var(--accent);outline:none}.nv-settings{flex:1;grid-template-columns:220px minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.nv-settings-body{--nv-page-w:720px;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.nv-settings-bar{border-bottom:1px solid var(--border);flex-shrink:0;width:100%;height:56px}.nv-settings-bar-inner{width:min(var(--nv-page-w,720px), 100%);align-items:center;gap:16px;min-width:0;height:100%;margin-inline:auto;padding:0 1.5rem;display:flex}.nv-settings-bar-title{letter-spacing:-.03em;margin:0;font-size:18px;font-weight:650}.nv-settings-main{flex:1;min-width:0;min-height:0;overflow-y:auto}.nv-page{width:min(var(--nv-page-w,720px), 100%);margin-inline:auto;padding:1.5rem 1.5rem 2.5rem}.nv-page-head{align-items:center;gap:10px;margin-bottom:1rem;display:flex}.nv-page-head h1,.nv-page>h1{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:650}.nv-page h2{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:15px;font-weight:650}.nv-side-nav{border-right:1px solid var(--border);flex-direction:column;align-content:start;gap:2px;padding:1rem .75rem;display:flex;overflow:auto}.nv-side-nav>*{width:100%;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:12px;align-items:center;gap:8px;padding:8px 10px;font-size:15px;font-weight:450;text-decoration:none;display:flex}.nv-side-nav>:hover{color:var(--ink);background:#ffffff8c}.nv-side-nav>.on,.nv-side-nav>.active{background:var(--accent-soft);color:var(--accent)}.nv-side-nav>* svg,.nv-side-nav>* .fluent-icon,.nv-side-nav>* .fluent-icon svg{flex:none;width:16px;height:16px}.nv-side-nav>.on svg,.nv-side-nav>.active svg,.nv-side-nav>.on .fluent-icon,.nv-side-nav>.active .fluent-icon{color:var(--accent)}@media (width<=720px){.nv-settings{grid-template-rows:auto 1fr;grid-template-columns:1fr}.nv-settings .nv-side-nav{border-right:0;border-bottom:1px solid var(--border);-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity;flex-direction:row;gap:4px;padding:.55rem .75rem;overflow:auto hidden}.nv-settings .nv-side-nav::-webkit-scrollbar{display:none}.nv-settings .nv-side-nav>*{scroll-snap-align:start;width:auto;min-height:40px;padding:8px 12px}.nv-settings-bar{height:52px}.nv-settings-bar-inner{gap:10px;padding:0 1rem}.nv-page{padding:1rem 1rem 2rem}}@media (prefers-color-scheme:dark){.nv-card{background:#ffffff0a;border-color:#ffffff14}.nv-field,.dialog input,.dialog textarea,.dialog select{color:#f5f5f7;background:#ffffff0f;border-color:#ffffff1f}.nv-side-nav>:hover{color:#f5f5f7;background:#ffffff14}}kbd{border:1px solid var(--border);font:inherit;color:var(--text-muted);background:#ffffffb3;border-radius:999px;padding:1px 6px;font-size:11px;display:inline-block}@keyframes nv-fade{0%{opacity:0}to{opacity:1}}@keyframes nv-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --rail-width{syntax:"<length>";inherits:true;initial-value:244px}.nv-shell{grid-template-columns:var(--rail-width,244px) 1fr;background:0 0;grid-template-rows:auto 1fr;grid-template-areas:"topbar topbar""rail main";height:100vh;display:grid;position:relative;overflow:hidden}.nv-shell:not(.has-rail){grid-template-columns:1fr;grid-template-areas:"topbar""main"}.nv-shell>.nv-topbar{grid-area:topbar}.nv-shell>.nv-rail{grid-area:rail}.nv-shell>.nv-main{grid-area:main}.nv-topbar{height:var(--topbar-h,60px);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass);border-bottom:1px solid var(--border);z-index:70;flex-direction:column;justify-content:center;align-items:stretch;gap:0;min-width:0;padding:0 18px;display:flex}.nv-topbar-row{flex:auto;align-items:center;gap:10px;width:100%;min-width:0;min-height:0;display:flex}.nv-topbar-lead{flex-shrink:0;align-items:center;gap:10px;min-width:0;display:flex}.nv-topbar-start{align-items:center;gap:10px;min-width:0;display:flex}.nv-topbar-sub{min-width:0}.nv-topbar-sub:empty{display:none}.nv-topbar-sub:has(>:only-child:empty){display:none}.nv-topbar-menu{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;margin-right:2px;display:none}.nv-topbar-menu:hover{background:var(--surface-hover,#0e22400f)}.nv-topbar-action{flex-shrink:0;justify-content:center;align-items:center;display:flex}.nv-topbar-action:empty{display:none}.nv-brand{width:var(--nv-brand-w,96px);flex:0 0 var(--nv-brand-w,96px);align-items:center;display:flex}.nv-brand img{height:var(--nv-brand-h,22px);object-fit:contain;object-position:left center;width:auto;max-width:100%;display:block}html.nv-brand-wait .nv-brand img{visibility:hidden}.nv-search-slot{width:var(--nv-search-w,min(240px, 36vw));flex:0 0 var(--nv-search-w,min(240px, 36vw));min-width:0}.nv-search-slot>*{width:100%;min-width:0}.nv-topbar-end{z-index:100;flex-shrink:0;align-items:center;gap:10px;margin-left:auto;display:flex;position:relative}.nv-rail{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass);border-right:1px solid var(--border);flex-direction:column;min-width:0;min-height:0;padding:0;display:flex;overflow:hidden}.nv-rail-body{flex:1;min-height:0;padding:14px 10px 10px;overflow:auto}.nv-rail-toggle{flex:none;padding:2px 10px 8px}.nv-rail-foot{border-top:1px solid var(--border);flex:none;padding:8px 10px 12px}.nv-rail-nav+.nv-rail-head{margin-top:10px}.nv-rail-head{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:8px;padding:4px 4px 8px 8px;font-size:10px;font-weight:650;display:flex}.nv-rail-head span{flex:1}.nv-rail-plus{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid}.nv-rail-plus:hover{color:var(--ink);background:#ffffffb3}.nv-rail-plus svg{fill:currentColor;width:16px;height:16px}.nv-rail-label-group{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:14px 8px 6px;font-size:10px;font-weight:650}.nv-rail-nav{flex-direction:column;gap:1px;display:flex}.nv-rail-item{color:var(--text-secondary);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-family:inherit;font-size:15px;font-weight:450;text-decoration:none;display:flex}.nv-rail-ico,.nv-rail-item>svg,.nv-rail-item .fluent-icon,.nv-rail-item .fluent-icon svg{color:#8a8a8a;flex:none;width:16px;height:16px}.nv-rail-ico{fill:currentColor}.nv-rail-item:hover{color:var(--ink);background:#ffffff8c}.nv-rail-item:hover .nv-rail-ico,.nv-rail-item:hover svg,.nv-rail-item:hover .fluent-icon{color:var(--ink)}.nv-rail-item.on,.nv-rail-item.router-link-active{background:var(--accent-soft);color:var(--accent);box-shadow:none}.nv-rail-item.on .nv-rail-ico,.nv-rail-item.on svg,.nv-rail-item.on .fluent-icon,.nv-rail-item.router-link-active .nv-rail-ico,.nv-rail-item.router-link-active svg,.nv-rail-item.router-link-active .fluent-icon{color:var(--accent)}.nv-rail-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.nv-rail-empty{color:var(--text-muted);padding:8px;font-size:14px;line-height:1.4}.nv-rail-badge{background:var(--accent);color:#fff;text-align:center;border-radius:999px;min-width:20px;padding:1px 7px;font-size:11px;font-weight:700}.nv-rail-resizer{top:var(--topbar-h,60px);bottom:0;left:var(--rail-width,244px);cursor:col-resize;z-index:60;touch-action:none;width:9px;position:absolute;transform:translate(-5px)}.nv-rail-resizer:before{content:"";width:1px;transition:background var(--dur) var(--ease);background:0 0;position:absolute;top:0;bottom:0;left:4px}.nv-rail-resizer:hover:before,.nv-rail-resizer.dragging:before{background:var(--accent);width:2px;left:3px}.nv-shell.rail-collapsed .nv-rail-body,.nv-shell.rail-collapsed .nv-rail-toggle,.nv-shell.rail-collapsed .nv-rail-foot{padding-left:8px;padding-right:8px}.nv-shell.rail-collapsed .nv-rail-label,.nv-shell.rail-collapsed .nv-rail-head,.nv-shell.rail-collapsed .nv-rail-label-group,.nv-shell.rail-collapsed .nv-rail-empty{display:none}.nv-shell.rail-collapsed .nv-rail-item{justify-content:center;gap:0;padding:10px 0;position:relative}.nv-shell.rail-collapsed .nv-rail-badge{min-width:16px;padding:0 4px;font-size:9px;position:absolute;top:2px;right:0}.nv-shell.has-rail:not(.is-resizing){transition:grid-template-columns var(--dur) var(--ease)}.nv-shell.has-rail:not(.is-resizing)>.nv-rail-resizer{transition:left var(--dur) var(--ease)}.nv-rail-tip{background:var(--ink);color:#fff;font-family:var(--font);letter-spacing:-.01em;white-space:nowrap;pointer-events:none;z-index:9000;box-shadow:var(--shadow-md);animation:nv-rail-tip-in .12s var(--ease);border-radius:8px;padding:6px 10px;font-size:12px;font-weight:550;line-height:1.2;position:fixed;transform:translateY(-50%)}.nv-rail-tip:before{content:"";border:5px solid #0000;border-right-color:var(--ink);border-left-width:0;position:absolute;top:50%;right:100%;transform:translateY(-50%)}@keyframes nv-rail-tip-in{0%{opacity:0;transform:translate(-4px,-50%)}to{opacity:1;transform:translateY(-50%)}}.nv-main{background:0 0;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:auto}.nv-menu{-webkit-backdrop-filter:var(--glass);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:100;min-width:228px;animation:nv-rise .16s var(--ease);background:#ffffffdb;border:1px solid #ffffffb3;margin-top:8px;padding:6px;position:absolute;top:100%;right:0;overflow:hidden}.nv-menu-info{color:inherit;padding:10px 12px;text-decoration:none;display:block}a.nv-menu-info:hover{background:var(--surface-hover)}.nv-menu-info-name{font-size:13px;font-weight:600;display:block}.nv-menu-info-email{color:var(--text-muted);margin-top:2px;font-size:12px;display:block}.nv-menu-divider{background:var(--border);height:1px;margin:4px 6px}.nv-menu-item{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:0;border-radius:10px;justify-content:flex-start;align-items:center;gap:8px;padding:9px 12px;font-size:14px;display:flex}.nv-menu-item-label{flex:1;min-width:0}.nv-menu-item:hover{background:var(--surface-hover)}.nv-menu-item.on{color:var(--accent);font-weight:600}.nv-menu-check{color:var(--accent);flex-shrink:0}.nv-menu-action{color:var(--accent);font-weight:500}.nv-menu-plus{text-align:center;width:18px;font-weight:700}.nv-chip,.nv-user{z-index:100;position:relative}.nv-chip-btn{cursor:pointer;height:36px;font:inherit;color:inherit;background:#fff9;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 10px 0 6px;display:flex}.nv-chip-btn:hover,.nv-chip-btn.open{background:#ffffffeb}.nv-avatar{background:var(--accent);color:#fff;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:grid}.nv-avatar.sm{width:22px;height:22px;font-size:10px}.nv-chip-name{color:var(--ink);font-size:13px;font-weight:600}.nv-chip-arrow{color:var(--text-muted);flex-shrink:0}.nv-user-btn{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:50%;place-items:center;width:32px;height:32px;padding:0;font-size:12px;font-weight:700;display:grid;overflow:hidden;box-shadow:0 4px 12px #3578e547}.nv-user-face{place-items:center;width:100%;height:100%;display:grid}.nv-user-face-img{object-fit:cover;border-radius:50%;width:100%;height:100%}@media (width<=720px){.nv-shell{height:100dvh}.nv-topbar{height:auto;min-height:calc(var(--topbar-h,60px) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 12px 0}.nv-topbar-row{min-height:var(--topbar-h,60px);gap:4px;position:relative}.nv-topbar-lead{gap:4px}.nv-topbar-end{gap:6px}.nv-topbar-start,.nv-app-switcher{display:none}.nv-topbar-menu{margin-right:0;display:inline-flex}.nv-topbar .nv-brand{z-index:1;flex:none;justify-content:center;width:auto;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.nv-topbar .nv-brand img{object-position:center center;height:20px}.nv-topbar .nv-chip-name,.nv-topbar .nv-chip-arrow{display:none}.nv-search-slot{flex-basis:44px;width:44px}.nv-rail-resizer{top:calc(var(--topbar-h,60px) + env(safe-area-inset-top,0px))}.nv-shell.has-rail.nv-rail-drawer{grid-template-columns:1fr;grid-template-areas:"topbar""main"}.nv-shell.has-rail.nv-rail-drawer>.nv-rail-resizer{display:none}.nv-shell.has-rail.nv-rail-drawer>.nv-rail{width:min(var(--rail-width,244px), 88vw);z-index:85;transition:transform var(--dur,.18s) var(--ease,cubic-bezier(.22, 1, .36, 1));padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);background:color-mix(in srgb, #fff 88%, var(--paper,#f4f6f8));-webkit-backdrop-filter:none;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.nv-shell.has-rail.nv-rail-drawer.rail-open>.nv-rail{box-shadow:var(--shadow-lg,0 20px 50px #0e224024);transform:none}.nv-shell.has-rail.nv-rail-drawer.rail-open>.nv-main{overflow:hidden}}@media (width<=720px) and (prefers-reduced-motion:reduce){.nv-shell.has-rail.nv-rail-drawer>.nv-rail{transition:none}}@media (width<=390px){.nv-topbar{padding-left:8px;padding-right:8px}.nv-topbar-row{gap:4px}}html.nv-pwa .nv-app-switcher{display:none}html.nv-pwa:not(.nv-wco),html.nv-pwa:not(.nv-wco) .nv-topbar{background:var(--topbar-fill)}html.nv-pwa:not(.nv-wco):before{content:"";height:env(safe-area-inset-top,0px);background:var(--topbar-fill);z-index:10000;pointer-events:none;position:fixed;top:0;left:0;right:0}@media (display-mode:standalone){html:not(.nv-wco),html:not(.nv-wco) .nv-topbar{background:var(--topbar-fill)}}@media (display-mode:standalone),(display-mode:window-controls-overlay){.nv-app-switcher{display:none}}html.nv-wco{--wco-h:env(titlebar-area-height,0px);background:var(--paper)}html.nv-wco body{background:var(--paper)}html.nv-wco:before{content:"";height:var(--wco-h);background:var(--paper);z-index:10000;-webkit-app-region:drag;app-region:drag;position:fixed;top:0;left:0;right:0}html.nv-wco #app{height:100vh;padding-top:var(--wco-h);box-sizing:border-box;overflow:hidden}html.nv-wco .nv-shell,html.nv-wco .cockpit,html.nv-wco .bare{height:100%;min-height:0}@media (display-mode:window-controls-overlay){html{--wco-h:env(titlebar-area-height,0px);background:var(--paper)}html #app{height:100vh;padding-top:var(--wco-h);box-sizing:border-box;overflow:hidden}html .nv-shell,html .cockpit,html .bare{height:100%;min-height:0}}.nv-wco-bar{display:none}html.nv-wco .nv-wco-bar{top:env(titlebar-area-y,0px);left:env(titlebar-area-x,0px);width:env(titlebar-area-width,100%);height:env(titlebar-area-height,var(--wco-h));box-sizing:border-box;z-index:10001;color:var(--ink,#0e2240);font-family:var(--font);letter-spacing:-.02em;-webkit-user-select:none;user-select:none;pointer-events:none;-webkit-app-region:drag;app-region:drag;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:650;display:flex;position:fixed}.nv-wco-ico{background:var(--accent,#3578e5);color:#fff;border-radius:5px;flex:none;place-items:center;width:18px;height:18px;display:grid}.nv-wco-ico.navy{background:#0e2240}.nv-wco-ico svg{display:block}.nv-wco-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@supports (corner-shape:squircle){.nv-wco-ico{corner-shape:squircle;border-radius:22.37%}}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-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}:root{--bg-1:#e0e7ff;--bg-2:#cffafe;--bg-3:#f3e8ff;--color-bg-input:#f4f6f8;--color-border-input:#dfe4ea;--color-danger:#dc3545;--color-success:#007e02;--color-warning:#f0a85e;--shadow-card:0 1px 3px #0000000f;--shadow-hover:0 4px 12px #00000014;font-family:var(--font);color:var(--color-text);font-size:14px;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}body{background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}html.embed,html.embed body{background:var(--embed-bg,transparent);background-attachment:scroll}.card{border:1px solid var(--color-border-light);box-shadow:var(--shadow-card);background:#fff;border-radius:10px}.btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .15s;display:inline-flex}.btn-primary{background:var(--color-link);color:#fff}.btn-primary:hover{background:#2a66c9}.btn-secondary{color:var(--color-text);border:1px solid var(--color-border);background:#fff}.btn-secondary:hover{background:var(--color-bg-hover)}.btn-danger{background:var(--color-danger);color:#fff}.btn-sm{padding:4px 10px;font-size:12px}.badge{text-transform:uppercase;border-radius:4px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge-exact{color:#155724;background:#d4edda}.badge-high{color:#2e7d32;background:#e8f5e9}.badge-medium{color:#856404;background:#fff3cd}.badge-low{color:#e65100;background:#ffe0b2}.badge-none{color:#721c24;background:#f8d7da}.badge-processing{color:#856404;background:#fff3cd}.badge-done{color:#1e40af;background:#dbeafe}.badge-error{color:#721c24;background:#f8d7da}.badge-uploading{color:#383d41;background:#e2e3e5}.badge-approved,.badge-completed{color:#155724;background:#d4edda}.badge-manual{color:#6d28d9;background:#ede9fe}.label{color:var(--color-text-secondary);margin-bottom:4px;font-size:11px;font-weight:600}.value{color:var(--color-text);font-size:14px}input[type=text],input[type=number]{border:1px solid var(--color-border-input);color:var(--color-text);background:#fff;border-radius:5px;width:100%;padding:8px 12px;font-size:14px}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-light);padding:8px 12px;font-size:11px;font-weight:600}td{border-bottom:1px solid var(--color-border-light);padding:8px 12px;font-size:13px}tr:hover td{background:var(--color-bg-hover)}
