:root{--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fs-12:.75rem;--fs-13:.8125rem;--fs-14:.875rem;--fs-15:.9375rem;--fs-16:1rem;--fs-18:1.125rem;--fs-22:1.375rem;--fs-28:1.75rem;--fs-36:2.25rem;--lh-tight:1.2;--lh-snug:1.35;--lh-normal:1.55;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-pill:9999px;--t-fast:.12s;--t-med:.2s;--ease:cubic-bezier(.4, 0, .2, 1);--bg:#fafaf9;--surface:#fff;--surface-2:#f5f5f4;--surface-hover:#f0f0ef;--border:#e7e5e4;--border-strong:#d6d3d1;--text:#57534e;--text-h:#0c0a09;--text-muted:#78716c;--code-bg:#f5f5f4;--accent:#6d4cff;--accent-hover:#5b3aef;--accent-bg:#eee9ff;--accent-border:#c8b8ff;--accent-fg:#fff;--status-uploaded-bg:#ede9fe;--status-uploaded-fg:#5b21b6;--status-processing-bg:#dbeafe;--status-processing-fg:#1e40af;--status-ready-bg:#dcfce7;--status-ready-fg:#14532d;--status-failed-bg:#fee2e2;--status-failed-fg:#991b1b;--status-pending-bg:#f5f5f4;--status-pending-fg:#57534e;--danger:#b91c1c;--danger-bg:#fee2e2;--shadow-sm:0 1px 1px #0f0e100a, 0 1px 3px #0f0e100f;--shadow-md:0 1px 1px #0f0e100d, 0 4px 12px #0f0e1014;--shadow-lg:0 1px 1px #0f0e100d, 0 12px 32px #0f0e101f;--focus-ring:0 0 0 2px var(--surface), 0 0 0 4px var(--accent);font-family:var(--font-sans);font-size:var(--fs-15);line-height:var(--lh-normal);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"cv11", "ss01"}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0c0a12;--surface:#14111c;--surface-2:#1b1726;--surface-hover:#221d2e;--border:#29243a;--border-strong:#3b3450;--text:#a8a3b8;--text-h:#f4f2f7;--text-muted:#7e7993;--code-bg:#1b1726;--accent:#8b6dff;--accent-hover:#a085ff;--accent-bg:#8b6dff29;--accent-border:#8b6dff73;--accent-fg:#fff;--status-uploaded-bg:#8b6dff2e;--status-uploaded-fg:#c4b1ff;--status-processing-bg:#60a5fa2e;--status-processing-fg:#93c5fd;--status-ready-bg:#4ade8029;--status-ready-fg:#86efac;--status-failed-bg:#f871712e;--status-failed-fg:#fca5a5;--status-pending-bg:#221d2e;--status-pending-fg:#a8a3b8;--danger:#f87171;--danger-bg:#f8717124;--shadow-sm:0 1px 2px #0006, 0 2px 6px #0000004d;--shadow-md:0 1px 2px #0006, 0 8px 24px #0006;--shadow-lg:0 1px 2px #00000080, 0 16px 40px #00000080}}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{min-height:100svh}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2,h3,h4{color:var(--text-h);letter-spacing:-.01em;font-weight:600;line-height:var(--lh-tight);margin:0}h1{font-size:var(--fs-36);letter-spacing:-.02em}h2{font-size:var(--fs-22);letter-spacing:-.015em}h3{font-size:var(--fs-18)}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:var(--font-mono);font-feature-settings:"calt" 0;font-size:.92em}code{background:var(--code-bg);border-radius:var(--r-sm);color:var(--text-h);padding:1px 6px}.tabular{font-variant-numeric:tabular-nums}input,textarea,button,select{font:inherit;color:inherit}input,textarea,select{background:var(--surface);color:var(--text-h);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);padding:8px 12px}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:hover:not(:disabled),textarea:hover:not(:disabled),select:hover:not(:disabled){border-color:var(--border-strong)}input:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}button{cursor:pointer;border-radius:var(--r-md);background:0 0;border:1px solid #0000}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible{box-shadow:0 0 0 3px var(--accent-bg);outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}::selection{background:var(--accent-bg);color:var(--text-h)}.topbar{padding:var(--sp-3) var(--sp-6);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(140%)blur(8px);backdrop-filter:saturate(140%)blur(8px);z-index:10;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.topbar .brand{font-weight:600;font-size:var(--fs-15);color:var(--text-h);letter-spacing:-.01em}.topbar .brand:before{content:"";background:var(--accent);vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:10px;display:inline-block}.topbar .link{color:var(--text-muted);cursor:pointer;font-size:var(--fs-14);border-radius:var(--r-sm);transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:0 0;border:none;padding:6px 8px}.topbar .link:hover{color:var(--text-h);background:var(--surface-2);text-decoration:none}.topbar-left,.topbar-right{align-items:center;gap:var(--sp-3);display:flex}.topbar-email{color:var(--text-muted);font-size:var(--fs-14)}@media (width<=480px){.topbar-email{display:none}}.auth-aside{margin-top:var(--sp-4);text-align:center}.auth-aside .link{color:var(--text-muted);cursor:pointer;font-size:var(--fs-13);background:0 0;border:none;padding:4px 8px}.auth-aside .link:hover{color:var(--accent);text-decoration:underline}.layout{width:100%;max-width:1080px;padding:var(--sp-10) var(--sp-6) var(--sp-12);gap:var(--sp-10);flex-direction:column;flex:1;margin:0 auto;display:flex}@media (width<=720px){.layout{padding:var(--sp-6) var(--sp-4) var(--sp-10);gap:var(--sp-8)}}.btn-primary,.auth-gate button[type=submit],.project-create button[type=submit],.chat-input button[type=submit]{background:var(--accent);color:var(--accent-fg);border:1px solid var(--accent);border-radius:var(--r-md);font-weight:500;font-size:var(--fs-14);transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);padding:8px 16px}.btn-primary:hover:not(:disabled),.auth-gate button[type=submit]:hover:not(:disabled),.project-create button[type=submit]:hover:not(:disabled),.chat-input button[type=submit]:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-primary:active:not(:disabled),.auth-gate button[type=submit]:active:not(:disabled),.project-create button[type=submit]:active:not(:disabled),.chat-input button[type=submit]:active:not(:disabled){transform:translateY(1px)}.doc-list-header button,.projects-header button{background:var(--surface);color:var(--text-h);border:1px solid var(--border);border-radius:var(--r-md);font-size:var(--fs-14);transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);padding:6px 14px;font-weight:500}.doc-list-header button:hover:not(:disabled),.projects-header button:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}button.danger{color:var(--danger);border-radius:var(--r-md);font-size:var(--fs-13);transition:background var(--t-fast) var(--ease);background:0 0;border:1px solid #0000;padding:6px 12px;font-weight:500}button.danger:hover:not(:disabled){background:var(--danger-bg)}.auth-gate{max-width:420px;padding:var(--sp-8) var(--sp-8) var(--sp-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-md);margin:96px auto 0}.auth-gate h2{margin-bottom:var(--sp-2)}.auth-gate p{margin-bottom:var(--sp-5);color:var(--text-muted);font-size:var(--fs-14)}.auth-gate form{gap:var(--sp-3);flex-direction:column;display:flex}.auth-gate input{width:100%}.auth-gate button[type=submit]{width:100%;margin-top:var(--sp-1)}.uploader{gap:var(--sp-3);flex-direction:column;display:flex}.uploader h2{margin:0}.uploader.collapsed{gap:0}.uploader-header{align-items:center;gap:var(--sp-2);padding:var(--sp-2) 0;cursor:pointer;text-align:left;background:0 0;border:0;display:flex}.uploader-header .chevron{color:var(--text);font-size:22px;font-weight:700;line-height:1;transition:transform .15s;display:inline-block}.uploader-header .chevron.open{transform:rotate(90deg)}.uploader-header:hover .chevron{color:var(--accent,#3b82f6)}.uploader-hint-inline{color:var(--text-muted);font-size:var(--fs-13);margin-left:auto}.uploader-body{gap:var(--sp-3);flex-direction:column;display:flex}.upload-dropzone{align-items:center;gap:var(--sp-2);padding:var(--sp-4);border:1.5px dashed var(--border);background:var(--surface,#fff);border-radius:8px;flex-direction:column;transition:background .12s,border-color .12s;display:flex}.upload-dropzone.dragging{border-color:var(--accent,#3b82f6);background:#3b82f614}.upload-dropzone input[type=file]{cursor:pointer}.upload-dropzone-hint{color:var(--text-muted);font-size:var(--fs-13);margin:0}.upload-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.upload-item{gap:var(--sp-3);background:var(--surface,#fff);border:1px solid var(--border);font-size:var(--fs-13);border-radius:6px;grid-template-columns:1fr auto auto;align-items:center;padding:6px 10px;display:grid}.upload-item-filename{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-item-status{color:var(--text-muted);align-items:center;gap:6px;display:inline-flex}.upload-item-uploading .upload-item-status{color:var(--text)}.upload-item-ready .upload-item-status{color:var(--ok,#16a34a)}.upload-item-error .upload-item-status{color:var(--danger,#dc2626)}.upload-item-error{text-overflow:ellipsis;white-space:nowrap;max-width:320px;overflow:hidden}.upload-item-dismiss{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:16px;line-height:1}.upload-item-dismiss:hover{color:var(--text)}.upload-row{align-items:center;gap:var(--sp-4);padding:var(--sp-4);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--r-md);transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);flex-wrap:wrap;display:flex}.upload-row:hover{border-color:var(--accent-border);background:color-mix(in srgb, var(--accent-bg) 30%, var(--surface))}.uploader input[type=file]{font-size:var(--fs-14);color:var(--text);background:0 0;border:none;padding:0}.uploader input[type=file]::file-selector-button{font-family:inherit;font-size:var(--fs-14);margin-right:var(--sp-3);background:var(--surface-2);color:var(--text-h);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;transition:background var(--t-fast) var(--ease);padding:6px 14px;font-weight:500}.uploader input[type=file]::file-selector-button:hover{background:var(--surface-hover)}.hint{color:var(--text-muted);font-size:var(--fs-13)}.error{color:var(--danger);font-size:var(--fs-13)}.trust-panel{margin:var(--sp-3) 0 var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-left:3px solid var(--accent,#3b82f6);background:var(--surface-muted,#00000005);font-size:var(--fs-13);color:var(--text-muted);border-radius:6px}.trust-panel strong{margin-bottom:var(--sp-2);color:var(--text);font-size:var(--fs-13);display:block}.trust-panel ul{margin:0;padding-left:1.1em}.trust-panel li+li{margin-top:var(--sp-1,4px)}.trust-panel code{background:#0000000d;border-radius:3px;padding:0 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.row-actions{gap:var(--sp-2);justify-content:flex-end;display:flex}.doc-list table .col-toggle{width:44px;padding-right:0}.doc-list table .toggle{cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:6px;padding:6px 8px;font-size:22px;line-height:1;transition:background .12s}.doc-list table .toggle:hover:not(:disabled){background:#0000000d}.doc-list table .toggle:disabled{cursor:default;opacity:.25}.doc-list table .chevron{font-weight:700;transition:transform .15s;display:inline-block}.doc-list table .chevron.open{transform:rotate(90deg)}.doc-list table tr.row-open>td{background:#00000005}.doc-list table tr.row-panel>td{padding:var(--sp-3) var(--sp-4);background:#00000005;border-top:0}.chat-scope-pill{align-items:center;gap:var(--sp-2);color:var(--text);font-size:var(--fs-13);background:#3b82f61f;border-radius:999px;padding:6px 8px 6px 14px;display:inline-flex}.chat-scope-pill strong{font-weight:600}.chat-scope-pill-top{margin-bottom:var(--sp-3)}.chat-scope-clear{cursor:pointer;color:var(--text-muted);background:0 0;border:0;padding:0 6px;font-size:18px;line-height:1}.chat-scope-clear:hover{color:var(--text)}.facts-card-header{align-items:baseline;gap:var(--sp-3);display:flex}.facts-card-ask{border:1px solid var(--accent,#3b82f6);color:var(--accent,#3b82f6);font-size:var(--fs-12,12px);cursor:pointer;background:0 0;border-radius:6px;margin-left:auto;padding:4px 10px}.facts-card-ask:hover{background:#3b82f614}.facts-card.placeholder{opacity:.75}.facts-card{margin:var(--sp-4) 0;padding:var(--sp-4) var(--sp-5);border:1px solid var(--border);background:var(--surface,#fff);border-radius:8px}.facts-card-header{margin-bottom:var(--sp-3)}.facts-card-eyebrow{font-size:var(--fs-12,12px);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);display:inline-block}.facts-card-title{font-size:var(--fs-16,16px);color:var(--text);margin:0;font-weight:600}.facts-card-summary{margin:0 0 var(--sp-4);color:var(--text);font-size:var(--fs-14,14px);line-height:1.5}.facts-card-grid{gap:var(--sp-2) var(--sp-4);margin:0 0 var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.facts-card-row{padding:var(--sp-2) 0;border-top:1px solid var(--border);flex-direction:column;gap:2px;display:flex}.facts-card-row dt{font-size:var(--fs-12,12px);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.facts-card-row dd{font-size:var(--fs-14,14px);color:var(--text);word-break:break-word;margin:0}.facts-card-chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.facts-card-chips .chip{border:1px solid var(--border);color:var(--text);font-size:var(--fs-13);cursor:pointer;background:0 0;border-radius:999px;padding:6px 12px;transition:background .12s,border-color .12s}.facts-card-chips .chip:hover{border-color:var(--accent,#3b82f6);background:#0000000a}.spinner{align-items:center;gap:var(--sp-2);color:var(--text-muted);font-size:var(--fs-13);display:inline-flex}.spinner .dot{border:2px solid var(--accent-border);border-top-color:var(--accent);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.doc-list{gap:var(--sp-3);flex-direction:column;display:flex}.doc-list-header{justify-content:space-between;align-items:center;display:flex}.empty{color:var(--text-muted);font-size:var(--fs-14);padding:var(--sp-3) 0}.doc-list table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;font-size:var(--fs-14);overflow:hidden}.doc-list th,.doc-list td{text-align:left;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border)}.doc-list tbody tr:last-child th,.doc-list tbody tr:last-child td{border-bottom:none}.doc-list thead{background:var(--surface-2)}.doc-list th{color:var(--text-muted);font-weight:500;font-size:var(--fs-12);text-transform:uppercase;letter-spacing:.06em}.doc-list tbody tr{transition:background var(--t-fast) var(--ease)}.doc-list tbody tr:hover{background:var(--surface-2)}.doc-list .filename{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;max-width:360px;font-weight:500;overflow:hidden}.filename-display{align-items:center;gap:8px;max-width:100%;display:inline-flex}.filename-display>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.filename-rename-btn{cursor:pointer;color:var(--text-muted);opacity:.45;transition:opacity var(--t-fast) var(--ease,ease), color var(--t-fast) var(--ease,ease);border-radius:var(--r-sm,4px);background:0 0;border:0;padding:2px 6px;font-size:14px;line-height:1}tr:hover .filename-rename-btn,.filename-rename-btn:focus-visible{opacity:1}.filename-rename-btn:hover{color:var(--accent,#3b82f6);background:var(--surface-2,#0000000a)}.filename-edit{align-items:center;gap:4px;width:100%;display:inline-flex}.filename-edit input{min-width:0;font-size:var(--fs-13);border:1px solid var(--accent,#3b82f6);border-radius:var(--r-sm,4px);background:var(--surface,#fff);color:var(--text);flex:1;padding:4px 8px;font-weight:500}.filename-edit-save,.filename-edit-cancel{cursor:pointer;border-radius:var(--r-sm,4px);background:0 0;border:0;padding:4px 6px;font-size:14px;line-height:1}.filename-edit-save{color:var(--ok,#16a34a)}.filename-edit-cancel{color:var(--text-muted)}.filename-edit-save:hover:not(:disabled){background:#16a34a1f}.filename-edit-cancel:hover:not(:disabled){background:var(--surface-2,#0000000d);color:var(--text)}.doc-list td:nth-child(2),.doc-list td:nth-child(3){font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}.status{border-radius:var(--r-pill);font-size:var(--fs-12);background:var(--status-pending-bg);color:var(--status-pending-fg);white-space:nowrap;align-items:center;gap:6px;padding:3px 10px;font-weight:500;display:inline-flex}.status-uploaded{background:var(--status-uploaded-bg);color:var(--status-uploaded-fg)}.status-processing{background:var(--status-processing-bg);color:var(--status-processing-fg)}.status-processing .dot{background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.status-ready{background:var(--status-ready-bg);color:var(--status-ready-fg)}.status-failed{background:var(--status-failed-bg);color:var(--status-failed-fg);cursor:help}footer{padding:var(--sp-6) var(--sp-6);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-12);text-align:center;margin-top:auto}.projects{gap:var(--sp-8);flex-direction:column;display:flex}.projects-header{justify-content:space-between;align-items:center;display:flex}.projects-header h2{margin:0}.project-create{gap:var(--sp-2);display:flex}.project-create input{flex:1}.project-list{gap:var(--sp-3);margin:0;padding:0;list-style:none;display:grid}.project-row{gap:var(--sp-3);align-items:stretch;display:flex}.project-open{text-align:left;padding:var(--sp-4) var(--sp-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);color:var(--text-h);font:inherit;gap:var(--sp-1);transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), box-shadow var(--t-med) var(--ease);flex-direction:column;flex:1;display:flex}.project-open:hover{border-color:var(--border-strong);background:var(--surface);box-shadow:var(--shadow-md);transform:translateY(-1px)}.project-name{font-weight:600;font-size:var(--fs-16);letter-spacing:-.01em}.project-meta{font-size:var(--fs-12);color:var(--text-muted);font-variant-numeric:tabular-nums}.project-detail{gap:var(--sp-10);flex-direction:column;display:flex}.project-detail-nav{align-items:baseline;gap:var(--sp-4);flex-wrap:wrap;display:flex}.project-detail-nav .link{color:var(--text-muted);cursor:pointer;font-size:var(--fs-14);transition:color var(--t-fast) var(--ease);background:0 0;border:none;padding:0}.project-detail-nav .link:hover{color:var(--text-h);text-decoration:none}.project-detail-title{font-size:var(--fs-28);letter-spacing:-.02em;flex-direction:column;gap:2px;margin:0;display:flex}.project-description{font-size:var(--fs-14);color:var(--text-muted);letter-spacing:0;font-weight:400}.context-pill{font-size:var(--fs-12);border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-muted);font-variant-numeric:tabular-nums;padding:3px 10px;font-weight:500}.chat{gap:var(--sp-4);flex-direction:column;display:flex}.chat-header{justify-content:space-between;align-items:center;gap:var(--sp-4);flex-wrap:wrap;display:flex}.chat-header h2{margin:0}.chat-log{gap:var(--sp-5);flex-direction:column;display:flex}.turn{gap:var(--sp-3);padding:var(--sp-5) var(--sp-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);flex-direction:column;display:flex}.turn-question,.turn-answer{gap:var(--sp-2);flex-direction:column;display:flex}.turn .role{font-size:var(--fs-12);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:500}.turn-question p{color:var(--text-h);line-height:var(--lh-snug);margin:0}.turn-answer .answer{color:var(--text-h);line-height:var(--lh-normal);margin:0}.turn-answer .answer h2,.turn-answer .answer h3{margin-top:var(--sp-5);margin-bottom:var(--sp-2);font-size:var(--fs-16);font-weight:600}.turn-answer .answer h2:first-child,.turn-answer .answer h3:first-child{margin-top:0}.turn-answer .answer p+p{margin-top:var(--sp-3)}.turn-answer .answer ul,.turn-answer .answer ol{margin:var(--sp-2) 0;padding-left:var(--sp-6)}.turn-answer .answer li+li{margin-top:var(--sp-1)}.turn-answer .answer blockquote{margin:var(--sp-3) 0;padding:var(--sp-2) var(--sp-4);border-left:3px solid var(--accent-border);color:var(--text)}.turn-answer .answer code{font-size:.92em}.turn-answer .answer strong{color:var(--text-h);font-weight:600}.turn-answer .answer em{color:var(--text-h)}.cite-marker{color:var(--accent);cursor:pointer;transition:background var(--t-fast) var(--ease);background:0 0;border:0;border-radius:3px;padding:0 1px;font-weight:500}.cite-marker:hover{background:var(--accent-bg)}.citations{margin:var(--sp-3) 0 0 0;gap:var(--sp-2);flex-direction:column;padding:0;list-style:none;display:flex}.citations .chip{background:var(--accent-bg);color:var(--accent);border-radius:var(--r-pill);font-size:var(--fs-12);font-family:var(--font-mono);font-feature-settings:"calt" 0;cursor:pointer;letter-spacing:.01em;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);border:1px solid #0000;padding:4px 12px;font-weight:500}.citations .chip-project{font-style:italic;font-family:var(--font-sans);opacity:.85;letter-spacing:0;font-weight:400}.citations .chip:hover,.citations .chip-expanded{background:color-mix(in srgb, var(--accent) 18%, transparent);border-color:var(--accent-border)}.chunk-text{margin:var(--sp-2) 0 0 0;padding:var(--sp-4) var(--sp-5);border-left:3px solid var(--accent-border);background:var(--surface-2);color:var(--text);font-size:var(--fs-13);line-height:var(--lh-normal);white-space:pre-wrap;border-radius:0 var(--r-md) var(--r-md) 0}.chat-input{gap:var(--sp-2);padding:var(--sp-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);align-items:flex-end;display:flex}.chat-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.chat-input textarea{resize:vertical;min-height:44px;font-size:var(--fs-15);line-height:var(--lh-snug);background:0 0;border:none;flex:1;padding:6px 8px}.chat-input textarea:focus-visible{box-shadow:none;border:none;outline:none}.admin-invite{gap:var(--sp-4);flex-direction:column;display:flex}.admin-invite .muted{color:var(--text-muted);font-size:var(--fs-14)}.admin-invite .muted.small{font-size:var(--fs-13)}.admin-invite-form{gap:var(--sp-3);flex-direction:column;display:flex}.admin-invite-form input[type=email]{width:100%;max-width:420px}.admin-invite-form .checkbox-row{align-items:flex-start;gap:var(--sp-2);font-size:var(--fs-14);color:var(--text);cursor:pointer;display:flex}.admin-invite-form .checkbox-row input{margin-top:3px}.admin-invite-actions{align-items:center;gap:var(--sp-3);display:flex}.admin-invite-result{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-4);background:var(--surface)}.admin-invite-result h3{margin:0 0 var(--sp-3) 0;font-size:var(--fs-16)}.admin-invite-result dl{gap:4px var(--sp-3);margin:0 0 var(--sp-3) 0;grid-template-columns:max-content 1fr;display:grid}.admin-invite-result dt{color:var(--text-muted);font-size:var(--fs-13)}.admin-invite-result dd{font-size:var(--fs-14);margin:0}.admin-invite-temp{margin-top:var(--sp-3);gap:var(--sp-2);flex-direction:column;display:flex}.admin-invite-temp label{font-size:var(--fs-13);color:var(--text-muted)}.admin-invite-temp-row{gap:var(--sp-2);align-items:stretch;display:flex}.admin-invite-temp-row input{font-family:var(--font-mono,ui-monospace, monospace);flex:1}.admin-section-title{margin-top:var(--sp-5,24px);margin-bottom:var(--sp-2);font-size:var(--fs-15,15px);letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);font-weight:600}.admin-users{margin-top:var(--sp-5,24px)}.admin-users-header{align-items:baseline;gap:var(--sp-3);margin-bottom:var(--sp-2);display:flex}.admin-users-header .admin-section-title{flex:1;margin-top:0;margin-bottom:0}.admin-users-table{border-collapse:collapse;width:100%;margin-top:var(--sp-3)}.admin-users-table th,.admin-users-table td{text-align:left;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border);font-size:var(--fs-13)}.admin-users-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:600;font-size:var(--fs-12,12px)}.admin-users-table td.num,.admin-users-table th.num{text-align:right;font-variant-numeric:tabular-nums}.admin-users-sub{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-12,12px);color:var(--text-muted)}.admin-users-total td{border-bottom:0;border-top:2px solid var(--border);padding-top:var(--sp-3)}.admin-users-actions{text-align:right;white-space:nowrap}.admin-users-actions .danger{font-size:var(--fs-12,12px);padding:4px 10px}.calendar{gap:var(--sp-3);flex-direction:column;display:flex}.calendar-toolbar{gap:var(--sp-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.calendar-mode{border:1px solid var(--border);border-radius:6px;display:inline-flex;overflow:hidden}.calendar-mode button{font-size:var(--fs-13);cursor:pointer;background:0 0;border:0;padding:6px 14px}.calendar-mode button.active{background:#3b82f61f;font-weight:600}.calendar-mode button+button{border-left:1px solid var(--border)}.calendar-nav{align-items:center;gap:var(--sp-2);display:inline-flex}.calendar-nav button{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;width:32px;height:32px}.calendar-nav button.link{border:0;width:auto;padding:0 8px}.calendar-month-label{text-align:center;min-width:160px;font-weight:600;font-size:var(--fs-15,15px)}.calendar-filters{gap:var(--sp-2);flex-wrap:wrap;display:flex}.calendar-chip{border:1px solid var(--border);font-size:var(--fs-13);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 8px;display:inline-flex}.calendar-chip-swatch{background:var(--chip-color);border-radius:50%;width:10px;height:10px}.calendar-chip.muted{opacity:.4}.calendar-chip.muted .calendar-chip-swatch{background:var(--text-muted)}.calendar-grid{background:var(--border);border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.calendar-grid-head{background:var(--surface,#fff);font-size:var(--fs-12,12px);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;text-align:center;padding:8px 10px;font-weight:600}.calendar-cell{background:var(--surface,#fff);flex-direction:column;gap:4px;min-height:92px;padding:6px 8px;display:flex}.calendar-cell.out-of-month{background:#00000006}.calendar-cell.out-of-month .calendar-day-number,.calendar-cell.past .calendar-day-number,.calendar-cell.past .calendar-event,.calendar-cell.past .calendar-event-overflow{opacity:.5}.calendar-cell.today{box-shadow:inset 0 0 0 2px var(--accent,#3b82f6)}.calendar-day-number{font-size:var(--fs-12,12px);color:var(--text-muted);align-self:flex-start;font-weight:600}.calendar-events{flex-direction:column;gap:2px;display:flex}.calendar-event{text-align:left;border:0;border-left:3px solid var(--event-color,var(--accent,#3b82f6));font-size:var(--fs-12,12px);color:var(--text);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border-radius:2px;padding:2px 6px;display:block;overflow:hidden}.calendar-event:hover{background:#0000000a}.calendar-event-overflow{font-size:var(--fs-12,12px);color:var(--text-muted);padding:0 6px}.recur-mark{color:var(--text-muted);margin-right:2px;font-size:.9em}.calendar-event.recurring{font-style:italic}.calendar-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.calendar-list-button{gap:var(--sp-3);background:var(--surface,#fff);border:1px solid var(--border);border-left:4px solid var(--event-color,var(--accent,#3b82f6));width:100%;font-size:var(--fs-13);cursor:pointer;text-align:left;border-radius:6px;grid-template-columns:160px 1fr 1fr 1fr;align-items:center;padding:10px 12px;display:grid}.calendar-list-button:hover{background:#00000005}.calendar-list-date{font-variant-numeric:tabular-nums;font-weight:600}.calendar-list-label{font-weight:500}.calendar-list-doc,.calendar-list-project{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=720px){.calendar-list-button{grid-template-columns:1fr;gap:2px}}
