:root{--bg: #f5f5f7;--bg-white: #ffffff;--text: #1d1d1f;--text-secondary: #6e6e73;--text-tertiary: #86868b;--accent: #0071e3;--accent-hover: #0077ed;--border: rgba(0, 0, 0, .08);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 8px 30px rgba(0, 0, 0, .08);--radius: 20px;--radius-sm: 12px;--max-w: 980px;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}a{color:var(--accent);text-decoration:none}.app{min-height:100vh;display:flex;flex-direction:column}.navbar{position:sticky;top:0;z-index:100;background:#f5f5f7b8;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--border)}.navbar-inner{max-width:var(--max-w);margin:0 auto;padding:0 24px;height:52px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text);white-space:nowrap}.nav{display:flex;gap:4px;flex-wrap:wrap}.nav-link{padding:6px 14px;border-radius:980px;font-size:14px;color:var(--text-secondary);transition:all .2s ease;white-space:nowrap}.nav-link:hover{color:var(--text);background:#0000000d}.nav-link.active{color:#fff;background:var(--accent)}.content{flex:1;width:100%;max-width:var(--max-w);margin:0 auto;padding:0 24px;display:flex;flex-direction:column}.footer{padding:28px 24px 40px;text-align:center;color:var(--text-tertiary);font-size:13px;line-height:1.7;max-width:720px;margin:0 auto}.page{padding:40px 0 64px}.page-hero{text-align:center;padding:24px 0 36px}.page-hero h1{font-size:40px;font-weight:700;letter-spacing:-.02em;margin:0 0 8px;background:linear-gradient(180deg,#1d1d1f,#3a3a3c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.subtitle{color:var(--text-secondary);font-size:17px;margin:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.card{background:var(--bg-white);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-sm)}.result-card{margin-top:24px}.result-actions{display:flex;gap:12px;justify-content:flex-end;margin-bottom:16px}.placeholder{color:var(--text-tertiary);text-align:center;padding:60px 0;font-size:15px}.field{margin-bottom:20px}.field label{display:block;font-size:14px;font-weight:600;color:var(--text);margin-bottom:8px}.field .hint{font-size:13px;color:var(--text-tertiary);margin-top:6px}.input,.select,.textarea{width:100%;padding:12px 16px;font-size:16px;font-family:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;color:var(--text);transition:border-color .2s ease,box-shadow .2s ease}.textarea{resize:vertical;line-height:1.6}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #0071e326}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 24px;border-radius:980px;font-size:15px;font-weight:500;border:none;cursor:pointer;transition:all .2s ease;background:var(--accent);color:#fff;font-family:inherit}.btn:hover{background:var(--accent-hover)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.secondary{background:#e8e8ed;color:var(--text)}.btn.secondary:hover{background:#dcdce1}.btn.ghost{background:transparent;color:var(--accent);padding:6px 14px}.btn.ghost:hover{background:#0071e314}.segmented{display:inline-flex;background:#e8e8ed;border-radius:980px;padding:3px}.segmented button{border:none;background:transparent;padding:8px 18px;border-radius:980px;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;font-family:inherit;white-space:nowrap}.segmented button.seg-active{background:#fff;color:var(--text);box-shadow:0 1px 4px #0000001f}.chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.chip{border:1px solid var(--border);background:#fff;border-radius:980px;padding:8px 16px;font-size:14px;color:var(--text);cursor:pointer;transition:all .2s ease;font-family:inherit}.chip:hover{border-color:var(--accent);color:var(--accent)}.chip-active{background:var(--accent);border-color:var(--accent);color:#fff}.chip-active:hover{color:#fff}.chat-page{flex:1;display:flex;flex-direction:column;min-height:0;padding:20px 0 24px}.chat-toolbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px}.chat-toolbar-right{display:flex;align-items:center}.messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:16px;padding:8px 4px 24px}.chat-empty{text-align:center;padding:64px 24px;animation:fade-in .5s ease}.chat-empty h1{font-size:32px;font-weight:700;letter-spacing:-.02em;margin:0 0 12px}.chat-empty .subtitle{max-width:560px;margin:0 auto 28px}.suggestions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:680px;margin:0 auto}.bubble{max-width:100%;animation:fade-in .3s ease}.bubble.user{display:flex;justify-content:flex-end}.bubble.user .bubble-text{background:var(--accent);color:#fff;padding:12px 18px;border-radius:20px 20px 6px;max-width:75%;font-size:15px;white-space:pre-wrap;word-break:break-word}.bubble.assistant{background:var(--bg-white);border-radius:var(--radius);padding:24px 28px;box-shadow:var(--shadow-sm)}.markdown{font-size:15px;line-height:1.75}.markdown>:first-child{margin-top:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4{font-weight:700;letter-spacing:-.01em;margin:1.3em 0 .5em;line-height:1.3}.markdown h1{font-size:1.5em}.markdown h2{font-size:1.25em}.markdown h3,.markdown h4{font-size:1.05em}.markdown p{margin:.6em 0}.markdown ul,.markdown ol{padding-left:1.5em;margin:.6em 0}.markdown li{margin:.3em 0}.markdown code{background:#f5f5f7;padding:2px 6px;border-radius:6px;font-family:var(--font-mono);font-size:.9em}.markdown pre{background:#f5f5f7;padding:16px;border-radius:12px;overflow-x:auto}.markdown pre code{background:none;padding:0}.markdown table{border-collapse:collapse;width:100%;margin:1em 0}.markdown th,.markdown td{border:1px solid var(--border);padding:8px 12px;text-align:left}.markdown th{background:#f5f5f7;font-weight:600}.markdown blockquote{margin:1em 0;padding:4px 16px;border-left:3px solid var(--accent);color:var(--text-secondary);background:#f5f5f7;border-radius:0 8px 8px 0}.doc{font-family:var(--font-mono);font-size:13.5px;line-height:1.7;white-space:pre-wrap;word-break:break-word;background:#fafafc;border:1px solid var(--border);border-radius:var(--radius-sm);padding:20px;margin:0;color:var(--text)}.composer{display:flex;gap:12px;align-items:flex-end;background:var(--bg-white);border-radius:24px;padding:12px 12px 12px 20px;box-shadow:var(--shadow-md)}.composer-input{flex:1;border:none;outline:none;resize:none;font-size:16px;font-family:inherit;line-height:1.5;color:var(--text);background:transparent;max-height:160px}.composer .send{flex-shrink:0}.error-bar{background:#fff2f0;border:1px solid #ffccc7;color:#cf1322;border-radius:var(--radius-sm);padding:10px 16px;font-size:14px;margin:12px 0}.result-total{font-size:34px;font-weight:700;letter-spacing:-.02em;margin:0 0 8px;color:var(--accent)}.result-list{list-style:none;padding:0;margin:20px 0;border-top:1px solid var(--border)}.result-list li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--border);font-size:15px}.result-list li span{color:var(--text-secondary)}.result-list li b{font-weight:600;white-space:nowrap}.note{background:#f5f5f7;border-radius:var(--radius-sm);padding:14px 18px;font-size:13px;color:var(--text-secondary);line-height:1.7}.note p{margin:0}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 860px){.two-col{grid-template-columns:1fr}.page-hero h1{font-size:32px}.bubble.user .bubble-text{max-width:90%}}@media (max-width: 640px){.grid-2{grid-template-columns:1fr}.navbar-inner{flex-direction:column;height:auto;padding:10px 16px;gap:8px}.nav{justify-content:center}.card{padding:20px}.bubble.assistant{padding:18px 20px}}
