:root{--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-serif: "Source Serif 4", Georgia, "Times New Roman", "Songti SC", serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--radius-lg: 14px;--radius-md: 10px;--radius-sm: 7px;--nav-h: 56px;--sidebar-w: 272px;--transition: .22s cubic-bezier(.4, 0, .2, 1)}:root,:root[data-theme=light]{color-scheme:light;--bg: #f7f4ee;--bg-elev: #fffdfa;--bg-sunken: #efeae1;--bg-hover: rgba(40, 32, 20, .055);--border: #e3ddd2;--border-strong: #cfc7b8;--text: #23262a;--text-2: #5c6169;--text-3: #8d9198;--accent: #ff6a00;--accent-hover: #ff8533;--accent-soft: #fff0e5;--accent-contrast: #ffffff;--shadow-sm: 0 1px 2px rgba(45, 40, 30, .06);--shadow-md: 0 4px 16px -4px rgba(45, 40, 30, .12);--shadow-lg: 0 12px 40px -12px rgba(45, 40, 30, .2);--bubble-user: #d25605;--bubble-user-text: #fff7f0;--scrollbar: rgba(35, 38, 42, .25);--risk-high: #c0392b;--risk-high-bg: #fdeceb;--risk-mid: #b7791f;--risk-mid-bg: #fdf5e4;--risk-low: #2f7d4f;--risk-low-bg: #e9f6ee;--cite-general: #1f6f6b;--cite-product: #9a6b1f;--danger: #c0392b}:root[data-theme=dark]{color-scheme:dark;--bg: #0a0f16;--bg-elev: #101722;--bg-sunken: #0d1420;--bg-hover: rgba(200, 170, 150, .07);--border: #1e2a3a;--border-strong: #2c3c50;--text: #dfe6ee;--text-2: #97a3b3;--text-3: #66727f;--accent: #ff8533;--accent-hover: #ff9d5c;--accent-soft: rgba(255, 106, 0, .16);--accent-contrast: #1a0d00;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px -4px rgba(0, 0, 0, .55);--shadow-lg: 0 12px 40px -12px rgba(0, 0, 0, .7);--bubble-user: #a8410f;--bubble-user-text: #ffe9d6;--scrollbar: rgba(190, 210, 220, .2);--risk-high: #e5645a;--risk-high-bg: rgba(229, 100, 90, .12);--risk-mid: #d9a441;--risk-mid-bg: rgba(217, 164, 65, .12);--risk-low: #57b982;--risk-low-bg: rgba(87, 185, 130, .12);--cite-general: #4fc3bd;--cite-product: #d9a441;--danger: #e5645a}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:15px;line-height:1.65;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;transition:background var(--transition),color var(--transition)}h1,h2,h3{font-family:var(--font-serif);font-weight:600;letter-spacing:.01em}a{color:var(--accent);text-decoration:none}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;color:inherit}::selection{background:var(--accent-soft)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:4px}::-webkit-scrollbar-track{background:transparent}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elev);color:var(--text);font-size:13.5px;line-height:1.4;transition:all var(--transition)}.btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:500}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-contrast)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text);border-color:transparent}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff;font-weight:500}.btn-danger:hover:not(:disabled){filter:brightness(1.1);color:#fff}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-2);font-size:16px;transition:all var(--transition)}.icon-btn:hover{background:var(--bg-hover);color:var(--text)}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog-card{width:100%;max-width:420px;padding:24px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.dialog-title{margin:0 0 8px;font-size:17px}.dialog-message{margin:0 0 20px;font-size:13.5px;color:var(--text-2)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.topnav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:20px;height:var(--nav-h);padding:0 20px;background:color-mix(in srgb,var(--bg-elev) 86%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.topnav .brand{display:flex;align-items:baseline;gap:8px;font-family:var(--font-serif);font-size:19px;font-weight:700;color:var(--text);white-space:nowrap;text-decoration:none;transition:opacity var(--transition)}.topnav .brand:hover{opacity:.78}.topnav .brand .brand-mark{color:var(--accent)}.topnav .brand .brand-sub{font-family:var(--font-sans);font-size:11px;font-weight:400;color:var(--text-3);letter-spacing:.14em;text-transform:uppercase}.topnav-tabs{display:flex;gap:4px;height:100%;overflow-x:auto}.topnav-tabs a{display:flex;align-items:center;padding:0 13px;font-size:14px;color:var(--text-2);border-bottom:2px solid transparent;transition:all var(--transition);white-space:nowrap}.topnav-tabs a:hover{color:var(--text)}.topnav-tabs a.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:500}.topnav-right{display:flex;align-items:center;gap:10px;margin-left:auto}.topnav-user{font-size:13px;color:var(--text-2)}.topnav-user strong{color:var(--text);font-weight:600}.field{width:100%;padding:10px 13px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-elev);font-size:14.5px;outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.field:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field::placeholder{color:var(--text-3)}textarea.field{resize:vertical;line-height:1.6}select.field{cursor:pointer}.page{height:calc(100vh - var(--nav-h));overflow:hidden}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.fade-up{animation:fade-up .3s ease both}@media (max-width: 860px){.topnav{gap:10px;padding:0 12px}.topnav .brand .brand-sub,.topnav-user{display:none}.topnav-tabs a{padding:0 10px;flex-shrink:0}}@media (max-width: 560px){.topnav .brand{display:none}}.login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(1200px 500px at 50% -10%,var(--accent-soft),transparent 60%),var(--bg)}.login-card{width:100%;max-width:400px;padding:40px 36px 30px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.login-brand{text-align:center;margin-bottom:28px}.login-mark{font-size:34px;color:var(--accent)}.login-brand h1{margin:6px 0 4px;font-size:27px}.login-brand p{margin:0;font-size:13px;color:var(--text-3);letter-spacing:.06em}.login-label{display:block;margin:14px 0 6px;font-size:13px;color:var(--text-2)}.login-error{margin-top:14px;padding:9px 12px;font-size:13px;color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent);border-radius:var(--radius-sm)}.login-submit{width:100%;justify-content:center;margin-top:22px;padding:11px;font-size:15px;letter-spacing:.2em}.login-hint{margin-top:18px;text-align:center;font-size:12.5px;color:var(--text-3)}.login-about{margin-top:14px;text-align:center}.login-about-link{font-size:12.5px;color:var(--text-2);text-decoration:none;transition:color var(--transition)}.login-about-link:hover{color:var(--accent)}.about-shell{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(1100px 480px at 50% -8%,var(--accent-soft),transparent 62%),var(--bg)}.about-nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:16px;height:var(--nav-h);padding:0 24px;background:color-mix(in srgb,var(--bg-elev) 86%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.about-brand{display:flex;align-items:baseline;gap:8px;font-family:var(--font-serif);font-size:19px;font-weight:700;color:var(--text);text-decoration:none;white-space:nowrap;transition:opacity var(--transition)}.about-brand:hover{opacity:.78}.about-brand .brand-mark{color:var(--accent)}.about-brand .brand-sub{font-family:var(--font-sans);font-size:11px;font-weight:400;color:var(--text-3);letter-spacing:.14em;text-transform:uppercase}.about-nav-right{display:flex;align-items:center;gap:8px;margin-left:auto}.about-nav-link{padding:0 12px;font-size:14px;color:var(--text-2);text-decoration:none;white-space:nowrap;transition:color var(--transition)}.about-nav-link:hover{color:var(--accent)}.about-main{flex:1;width:100%;max-width:1040px;margin:0 auto;padding:0 24px 72px}.about-hero{padding:72px 0 8px;text-align:center}.about-kicker{margin:0 0 14px;font-size:13px;letter-spacing:.14em;color:var(--accent)}.about-hero h1{margin:0 0 18px;font-size:40px;line-height:1.35}.about-lead{max-width:720px;margin:0 auto 28px;font-size:15.5px;line-height:1.9;color:var(--text-2)}.about-cta{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.about-cta-main{padding:10px 20px;font-size:14.5px}.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:48px auto 0;max-width:820px}.about-stat{padding:18px 12px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.about-stat-num{font-family:var(--font-serif);font-size:26px;font-weight:700;color:var(--accent);line-height:1.2}.about-stat-num span{margin-left:3px;font-family:var(--font-sans);font-size:13px;font-weight:500;color:var(--text-2)}.about-stat-label{margin-top:6px;font-size:12.5px;color:var(--text-3);line-height:1.5}.about-stats-note{margin:12px 0 0;font-size:12px;color:var(--text-3)}.about-section{margin-top:64px}.about-section>h2{margin:0 0 20px;font-size:26px;text-align:center}.about-grid{display:grid;gap:16px}.about-grid-2{grid-template-columns:repeat(2,1fr)}.about-grid-3{grid-template-columns:repeat(3,1fr)}.about-card{padding:22px 24px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.about-card h3{margin:0 0 10px;font-size:17.5px}.about-card p{margin:0 0 10px;font-size:14px;line-height:1.85;color:var(--text-2)}.about-card p:last-child{margin-bottom:0}.about-card ul{margin:0;padding-left:18px}.about-card li{margin-bottom:12px;font-size:14px;line-height:1.85;color:var(--text-2)}.about-card li:last-child{margin-bottom:0}.about-card li strong{color:var(--text)}.about-card-feature{position:relative}.about-feature-tag{display:inline-block;margin-bottom:8px;padding:2px 9px;font-size:11.5px;letter-spacing:.08em;color:var(--accent);background:var(--accent-soft);border-radius:999px}.about-feature-meta{font-size:12.5px!important;color:var(--text-3)!important}.about-final{padding:36px 24px;text-align:center;background:var(--accent-soft);border:1px solid var(--border);border-radius:var(--radius-lg)}.about-final h2{margin-bottom:8px}.about-final p{margin:0 0 20px;color:var(--text-2)}.about-foot{padding:26px 24px 32px;text-align:center;font-size:12.5px;color:var(--text-3);border-top:1px solid var(--border)}.about-foot-disclaimer{margin-top:6px;max-width:700px;margin-left:auto;margin-right:auto;line-height:1.7}@media (max-width: 860px){.about-stats{grid-template-columns:repeat(2,1fr)}.about-grid-2,.about-grid-3{grid-template-columns:1fr}.about-hero h1{font-size:30px}}@media (max-width: 560px){.about-nav{padding:0 14px;gap:8px}.about-brand .brand-sub,.about-nav-link{display:none}.about-hero{padding-top:48px}}.page-scroll{height:calc(100vh - var(--nav-h));overflow-y:auto;background:var(--bg-sunken)}.page-inner{max-width:1120px;margin:0 auto;padding:22px 24px 56px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.page-head h1{margin:0;font-size:23px}.page-head .page-sub{margin:4px 0 0;font-size:13px;color:var(--text-3)}.page-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding:12px 14px}.toolbar .field{width:auto;min-width:150px;padding:7px 11px;font-size:13.5px}.toolbar-label{font-size:13px;color:var(--text-2)}.notice{margin-bottom:14px;padding:10px 14px;font-size:13.5px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elev);color:var(--text-2)}.notice-error{color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,transparent);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.notice-ok{color:var(--risk-low);background:var(--risk-low-bg);border-color:color-mix(in srgb,var(--risk-low) 35%,transparent)}.notice-warn{color:var(--risk-mid);background:var(--risk-mid-bg);border-color:color-mix(in srgb,var(--risk-mid) 35%,transparent)}.state-hint{padding:40px 20px;text-align:center;font-size:13.5px;color:var(--text-3)}.table-wrap{overflow-x:auto;border-radius:var(--radius-md)}table.data-table{width:100%;border-collapse:collapse;font-size:13.5px}.data-table th,.data-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}.data-table th{font-size:12.5px;font-weight:600;color:var(--text-2);background:var(--bg-sunken);white-space:nowrap}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table .cell-num{font-variant-numeric:tabular-nums}.cell-mono{font-family:var(--font-mono);font-size:12.5px}.cell-clip{max-width:360px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-block;padding:1px 9px;font-size:12px;border-radius:999px;border:1px solid var(--border-strong);color:var(--text-2);white-space:nowrap}.badge-accent{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-soft)}.badge-ok{color:var(--risk-low);border-color:color-mix(in srgb,var(--risk-low) 45%,transparent);background:var(--risk-low-bg)}.badge-warn{color:var(--risk-mid);border-color:color-mix(in srgb,var(--risk-mid) 45%,transparent);background:var(--risk-mid-bg)}.badge-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent)}.badge-draft{border-style:dashed;color:var(--text-2)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.stat-card{padding:18px 20px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.stat-card-link{cursor:pointer;transition:border-color var(--transition),transform var(--transition),box-shadow var(--transition)}.stat-card-link:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow-md)}.stat-num{font-family:var(--font-serif);font-size:27px;font-weight:700;color:var(--accent);line-height:1.15;font-variant-numeric:tabular-nums}.stat-label{margin-top:4px;font-size:13px;color:var(--text-2)}.stat-hint{margin-top:8px;font-size:12px;color:var(--text-3)}.split-2{display:grid;grid-template-columns:320px 1fr;gap:16px;align-items:start}@media (max-width: 880px){.split-2{grid-template-columns:1fr}}.panel{padding:16px 18px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.panel h2{margin:0 0 12px;font-size:16px}.form-row{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.form-row label{font-size:12.5px;color:var(--text-2)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.list{display:flex;flex-direction:column;gap:10px}.list-item{padding:13px 16px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;transition:border-color var(--transition)}.list-item:hover{border-color:var(--border-strong)}.list-item.active{border-color:var(--accent)}.list-item-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.list-item-title{font-size:14.5px;font-weight:500;color:var(--text)}.list-item-meta{font-size:12px;color:var(--text-3);font-variant-numeric:tabular-nums}.list-item-desc{margin-top:6px;font-size:13px;color:var(--text-2);line-height:1.7}.list-item-actions{display:flex;gap:8px;margin-top:10px}.progress{height:8px;border-radius:999px;background:var(--bg-sunken);border:1px solid var(--border);overflow:hidden}.progress-fill{height:100%;background:var(--accent);transition:width var(--transition)}.content-box{padding:14px 16px;background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;line-height:1.8;color:var(--text-2);white-space:pre-wrap;overflow-wrap:anywhere}.content-box-plain{font-family:var(--font-mono);font-size:13px}.error-rows{margin-top:12px}.error-rows table{width:100%;border-collapse:collapse;font-size:13px}.error-rows td{padding:7px 10px;border-bottom:1px solid var(--border)}.error-rows td:first-child{width:90px;color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap}.error-rows td:last-child{color:var(--danger)}.kv-tags{display:flex;flex-wrap:wrap;gap:6px}.kv-tag{padding:1px 8px;font-size:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-sunken);color:var(--text-2)}.kv-tag b{color:var(--text);font-weight:600}.point-list{margin:6px 0 0;padding-left:18px;font-size:13px;color:var(--text-2);line-height:1.7}.export-banner{margin-bottom:12px;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;line-height:1.7}.export-banner-blocked{color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,transparent);border:1px solid color-mix(in srgb,var(--danger) 30%,transparent)}.export-banner-ok{color:var(--risk-low);background:var(--risk-low-bg);border:1px solid color-mix(in srgb,var(--risk-low) 35%,transparent)}.watermark{display:inline-block;padding:2px 10px;font-size:12px;font-weight:600;color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent);border:1px dashed color-mix(in srgb,var(--danger) 45%,transparent);border-radius:var(--radius-sm)}.chat-page{display:flex;position:relative}.chat-main{flex:1;min-width:0;display:flex;flex-direction:column;position:relative}.chat-title{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 20px 0;font-family:var(--font-serif);font-size:14.5px;color:var(--text-2)}.chat-scroll{flex:1;overflow-y:auto;padding:18px 0 8px}.chat-empty{max-width:640px;margin:8vh auto 0;padding:0 20px;text-align:center}.chat-empty-mark{font-size:42px;color:var(--accent)}.chat-empty h2{margin:14px 0 8px;font-size:24px}.chat-empty p{margin:0;color:var(--text-3);font-size:14px}.msg-row{display:flex;gap:12px;max-width:880px;margin:0 auto 20px;padding:0 20px}.msg-row-user{justify-content:flex-end}.msg-avatar{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--accent);background:var(--accent-soft);border:1px solid var(--border);border-radius:50%}.msg-col{min-width:0;max-width:calc(100% - 44px)}.msg-bubble{padding:11px 16px;border-radius:var(--radius-md);font-size:15px;overflow-wrap:anywhere}.msg-user{max-width:76%;background:var(--bubble-user);color:var(--bubble-user-text);border-bottom-right-radius:4px;white-space:pre-wrap}.msg-ai{background:var(--bg-elev);border:1px solid var(--border);border-top-left-radius:4px;box-shadow:var(--shadow-sm)}.msg-human{background:var(--bg-elev);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));border-left:4px solid var(--accent);border-top-left-radius:4px;box-shadow:var(--shadow-sm)}.msg-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:7px;font-size:12px;color:var(--text-3)}.msg-meta .badge{font-size:11.5px}.msg-bubble p,.msg-bubble ul,.msg-bubble ol,.msg-bubble blockquote{margin:8px 0}.msg-bubble h1,.msg-bubble h2,.msg-bubble h3{margin:14px 0 6px;font-size:16.5px}.msg-bubble ul,.msg-bubble ol{padding-left:22px}.msg-bubble code{font-family:var(--font-mono);font-size:.9em;padding:1px 5px;background:var(--bg-sunken);border-radius:4px}.msg-bubble :first-child{margin-top:0}.msg-bubble :last-child{margin-bottom:0}.cite-mark{display:inline-block;padding:0 5px;margin:0 2px;font-size:11.5px;font-family:var(--font-serif);font-weight:600;line-height:1.5;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:4px;vertical-align:super;font-variant-numeric:tabular-nums}.cite-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.cite-list-title{font-size:12px;font-weight:600;letter-spacing:.1em;color:var(--text-3);text-transform:uppercase}.cite-card{position:relative;display:flex;gap:12px;padding:11px 14px 11px 0;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.cite-bar{flex-shrink:0;width:4px;border-radius:0 3px 3px 0;background:var(--cite-general)}.cite-bar.layer-product{background:var(--cite-product)}.cite-body{flex:1;min-width:0}.cite-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.cite-kind{font-size:11.5px;font-weight:600;color:var(--cite-general);white-space:nowrap}.cite-card.layer-product .cite-kind{color:var(--cite-product)}.cite-title{font-size:14px;font-weight:600;color:var(--text)}.cite-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:3px;font-size:12.5px;color:var(--text-2);font-variant-numeric:tabular-nums}.cite-snippet{margin:6px 0 0;font-size:13px;line-height:1.6;color:var(--text-2)}.cite-index{font-family:var(--font-serif);font-size:13px;font-weight:600;color:var(--text-3);font-variant-numeric:tabular-nums;align-self:flex-start}.handoff-card{margin-top:10px;padding:12px 14px;background:var(--risk-mid-bg);border:1px solid color-mix(in srgb,var(--risk-mid) 35%,transparent);border-radius:var(--radius-md)}.handoff-card-title{font-size:12.5px;font-weight:600;color:var(--risk-mid);letter-spacing:.06em}.handoff-card-body{margin-top:4px;font-size:13.5px;line-height:1.7;color:var(--text-2)}.chat-input-zone{padding:6px 20px 14px;background:linear-gradient(to top,var(--bg) 65%,transparent)}.chat-input-box{position:relative;max-width:820px;margin:0 auto;display:flex;align-items:flex-end;gap:10px;padding:10px 10px 10px 16px;background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:border-color var(--transition),box-shadow var(--transition)}.chat-input-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft),var(--shadow-md)}.chat-textarea{flex:1;max-height:160px;padding:4px 0;border:none;background:transparent;font-size:15px;line-height:1.55;resize:none;outline:none}.chat-input-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.chat-input-hint{max-width:820px;margin:7px auto 0;text-align:center;font-size:11.5px;color:var(--text-3)}.session-list{width:var(--sidebar-w);flex-shrink:0;display:flex;flex-direction:column;gap:10px;padding:14px 12px;background:var(--bg-sunken);border-right:1px solid var(--border);overflow:hidden;transition:transform var(--transition),opacity var(--transition)}.session-list.collapsed{display:none}.session-list-head{flex-shrink:0}.session-scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.session-empty{font-size:13px;color:var(--text-3);text-align:center;margin-top:24px}.session-item{padding:9px 11px;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition)}.session-item:hover{background:var(--bg-hover)}.session-item.active{background:var(--bg-elev);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.session-item-title{display:flex;align-items:center;gap:6px;font-size:13.5px;color:var(--text)}.session-item.active .session-item-title{color:var(--accent);font-weight:500}.session-item-last{margin-top:3px;font-size:12px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-item-foot{display:flex;align-items:center;justify-content:space-between;margin-top:3px;font-size:11.5px;color:var(--text-3);font-variant-numeric:tabular-nums}.chat-collapse-btn{position:absolute;top:8px;left:12px;z-index:5;width:28px;height:28px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elev);color:var(--text-2);font-size:13px;transition:all var(--transition)}.chat-collapse-btn:hover{color:var(--accent);border-color:var(--accent)}.sidebar-overlay{display:none}@keyframes sidebar-fade{0%{opacity:0}to{opacity:1}}@media (max-width: 900px){.sidebar-overlay{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:15;background:#0006;animation:sidebar-fade .2s ease}.session-list{position:absolute;top:0;bottom:0;left:0;z-index:20;box-shadow:var(--shadow-lg)}.session-list.collapsed{display:flex;transform:translate(-100%);pointer-events:none}.chat-collapse-btn{width:36px;height:36px;top:6px;left:8px}}.mock-panel{max-width:880px;margin:0 auto 12px;padding:12px 16px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.mock-panel h3{margin:0 0 10px;font-size:14px}.mock-panel .form-grid{grid-template-columns:150px 1fr auto;align-items:end}@media (max-width: 640px){.mock-panel .form-grid{grid-template-columns:1fr}}.hit-item{padding:12px 15px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.hit-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.hit-title{font-size:14px;font-weight:600}.hit-scores{margin-left:auto;display:flex;gap:12px;font-size:12px;color:var(--text-3);font-variant-numeric:tabular-nums}.hit-body{margin-top:6px;font-size:13.5px;line-height:1.7;color:var(--text-2)}
