:root{color:#1d2523;font-synthesis:none;text-rendering:optimizelegibility;letter-spacing:0;--color-canvas:#f5f7f5;--color-surface:#fff;--color-rail:#17201d;--color-rail-muted:#aab5b1;--color-text:#1d2523;--color-muted:#69736f;--color-border:#dce2df;--color-border-strong:#c8d1cd;--color-accent:#14745d;--color-accent-strong:#0d5d4a;--color-warm:#b8553f;--color-disabled:#aeb7b3;--shadow-composer:0 8px 28px #1d25231a;--rail-expanded:216px;--rail-compact:76px;--drawer-width:320px;background:#f5f7f5;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #14745d40}button:disabled{cursor:not-allowed}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.app-shell{--current-rail-width:var(--rail-expanded);grid-template-columns:var(--current-rail-width) minmax(0, 1fr);background:var(--color-canvas);width:100%;min-width:0;height:100dvh;transition:grid-template-columns .16s;display:grid;overflow:hidden}.app-shell.rail-compact{--current-rail-width:var(--rail-compact)}.app-shell.has-details{grid-template-columns:var(--current-rail-width) minmax(0, 1fr) minmax(280px, var(--drawer-width))}.left-rail{color:#f7faf8;background:var(--color-rail);border-right:1px solid #ffffff14;flex-direction:column;gap:24px;min-width:0;display:flex;overflow:hidden}.rail-header{grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:10px;min-height:68px;padding:12px 14px;display:grid}.brand-mark{color:#fff;background:var(--color-accent);border:1px solid #ffffff1f;border-radius:8px;place-items:center;width:36px;height:36px;font-size:15px;font-weight:750;display:grid}.brand-name{white-space:nowrap;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.icon-button{width:36px;height:36px;color:inherit;background:0 0;border:0;border-radius:8px;flex:0 0 36px;place-items:center;padding:0;display:inline-grid}.icon-button svg{stroke-width:1.8px;width:19px;height:19px}.rail-toggle{color:var(--color-rail-muted)}.rail-toggle:hover{color:#fff;background:#ffffff14}.rail-compact .rail-header{grid-template-rows:36px 36px;grid-template-columns:36px;place-content:start center;min-height:100px;padding-inline:20px}.rail-compact .brand-name{display:none}.rail-compact .brand-mark{grid-area:1/1}.rail-compact .rail-toggle{grid-area:2/1;display:inline-grid}.primary-navigation{flex-direction:column;gap:6px;padding:0 10px;display:flex}.navigation-item{width:100%;min-height:44px;color:var(--color-rail-muted);text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:12px;padding:8px 12px;display:grid;overflow:hidden}.navigation-item svg{stroke-width:1.8px;width:20px;height:20px}.navigation-item span{white-space:nowrap;min-width:0;overflow:hidden}.navigation-item:hover{color:#fff;background:#ffffff12}.navigation-item[aria-current=page]{color:#fff;background:#ffffff1c}.rail-compact .navigation-item{grid-template-columns:24px;justify-content:center;padding-inline:16px}.rail-compact .navigation-item span{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.conversation-stage{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;overflow:hidden}.stage-header{border-bottom:1px solid var(--color-border);background:#f5f7f5eb;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px 24px;display:flex}.context-line{min-width:0;color:var(--color-muted);white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:flex;overflow:hidden}.context-line svg{width:17px;height:17px;color:var(--color-accent);flex:0 0 17px}.context-line span{text-overflow:ellipsis;overflow:hidden}.context-separator{color:var(--color-border-strong)}.source-button{min-height:36px;color:var(--color-text);border:1px solid var(--color-border-strong);background:0 0;border-radius:6px;flex:none;align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:inline-flex}.source-button:hover{background:var(--color-surface);border-color:var(--color-accent)}.source-button svg{width:17px;height:17px;color:var(--color-warm)}.stage-actions{flex:none;align-items:center;gap:6px;display:flex}.stage-icon-button{color:var(--color-muted);border:1px solid #0000}.stage-icon-button:hover:not(:disabled){color:var(--color-text);background:var(--color-surface);border-color:var(--color-border-strong)}.conversation-content{scrollbar-gutter:stable;min-width:0;min-height:0;overflow:hidden auto}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:min(100%,660px);min-height:100%;margin:0 auto;padding:48px 24px 24px;display:flex}.empty-symbol{width:44px;height:44px;color:var(--color-accent);background:#e7f0ec;border:1px solid #d1e1da;border-radius:8px;place-items:center;margin-bottom:18px;display:grid}.empty-symbol svg{width:22px;height:22px}.empty-state h1{max-width:100%;color:var(--color-text);overflow-wrap:anywhere;margin:0;font-size:28px;line-height:1.25}.empty-note{color:var(--color-muted);margin:16px 0 0;font-size:14px}.suggestions{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;margin-top:24px;display:flex}.suggestions button{overflow-wrap:anywhere;max-width:100%;min-height:38px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:7px;padding:8px 12px}.suggestions button:hover{border-color:var(--color-accent)}.message-list{flex-direction:column;gap:12px;width:min(100%,760px);margin:0 auto;padding:32px 24px;display:flex}.user-message{overflow-wrap:anywhere;color:#fff;background:var(--color-accent);border-radius:8px 8px 2px;align-self:flex-end;max-width:min(78%,560px);margin:0;padding:11px 13px;line-height:1.55}.assistant-message{width:min(100%,680px);color:var(--color-text);align-self:flex-start;padding:4px 0 12px;line-height:1.72}.assistant-message p{overflow-wrap:anywhere;margin:0}.material-receipt{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;width:min(100%,760px);margin:0 auto 8px;padding:13px 14px}.material-receipt-heading{grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.material-receipt-heading svg{width:18px;height:18px;color:var(--color-accent);stroke-width:1.8px}.material-receipt-heading strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;overflow:hidden}.material-receipt-heading span{color:var(--color-accent);font-size:12px;font-weight:650}.material-receipt>p{color:var(--color-muted);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:9px 0 0 28px;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.material-receipt>a{color:var(--color-accent-strong);text-underline-offset:3px;margin:9px 0 0 28px;font-size:13px;font-weight:650;display:inline-block}.material-retry-button{min-height:30px;color:var(--color-accent-strong);border:1px solid var(--color-border-strong);background:0 0;border-radius:6px;margin:8px 0 0 10px;padding:4px 9px}.material-retry-button:hover:not(:disabled){border-color:var(--color-accent)}.material-retry-error{color:#8b3526;margin:8px 0 0 28px;font-size:12px;display:block}.material-progress,.material-error{min-height:34px;color:var(--color-muted);align-items:center;gap:9px;width:min(100%,760px);margin:0 auto 8px;font-size:13px;display:flex}.material-progress>span:first-child{background:var(--color-accent);border-radius:50%;flex:0 0 7px;width:7px;height:7px;animation:.8s ease-in-out infinite alternate answer-pulse}.material-error{color:#8b3526}.material-error button{color:#8b3526;background:0 0;border:1px solid #d7a79d;border-radius:6px;min-height:30px;padding:4px 9px}.assistant-pending{align-items:center;gap:5px;width:54px;height:28px;display:inline-flex}.assistant-pending>span:not(.visually-hidden){background:var(--color-muted);border-radius:50%;width:5px;height:5px;animation:.9s ease-in-out infinite alternate answer-pulse}.assistant-pending>span:nth-child(2){animation-delay:.15s}.assistant-pending>span:nth-child(3){animation-delay:.3s}@keyframes answer-pulse{0%{opacity:.28}to{opacity:.88}}.message-error{color:#8b3526;align-items:center;gap:10px;font-size:13px;display:flex}.message-error button{color:#8b3526;background:0 0;border:1px solid #d7a79d;border-radius:6px;min-height:30px;padding:4px 9px}.composer-wrap{width:100%;padding:12px 24px 24px}.composer{background:var(--color-surface);border:1px solid var(--color-border-strong);width:min(100%,760px);min-height:88px;box-shadow:var(--shadow-composer);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin:0 auto;padding:12px;display:grid}.composer:focus-within{border-color:var(--color-accent)}.composer textarea{resize:none;width:100%;min-width:0;max-height:136px;color:var(--color-text);background:0 0;border:0;outline:0;padding:2px 4px;line-height:1.55}.composer textarea::placeholder{color:#818b87}.composer-actions{align-self:end;gap:6px;display:flex}.attachment-button{color:var(--color-muted)}.attachment-button:hover:not(:disabled){color:var(--color-accent);background:#e7f0ec}.attachment-button:disabled{color:var(--color-disabled)}.send-button{color:#fff;background:var(--color-accent)}.send-button:hover:not(:disabled){background:var(--color-accent-strong)}.send-button:disabled{color:#fff;background:var(--color-disabled)}.details-drawer{background:var(--color-surface);border-left:1px solid var(--color-border);min-width:0;overflow:hidden auto}.details-drawer>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:14px 18px;display:flex}.details-drawer h2{margin:3px 0 0;font-size:17px}.drawer-eyebrow{color:var(--color-warm);font-size:12px;font-weight:650}.drawer-empty{min-height:220px;color:var(--color-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex}.drawer-empty svg{width:24px;height:24px;color:var(--color-warm)}.drawer-empty p{margin:10px 0 0;font-size:14px}.answer-details{padding:18px}.answer-details dl{background:var(--color-border);border:1px solid var(--color-border);border-radius:6px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 0 24px;display:grid;overflow:hidden}.answer-details dl>div{background:var(--color-surface);padding:12px}.answer-details dt{color:var(--color-muted);font-size:12px}.answer-details dd{margin:5px 0 0;font-size:14px;font-weight:650}.answer-details h3{margin:0 0 10px;font-size:14px}.source-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.source-list li{border-bottom:1px solid var(--color-border);padding:14px 0}.source-list strong{font-size:13px;display:block}.source-list p{color:var(--color-muted);margin:6px 0 0;font-size:13px;line-height:1.55}@media (width<=1080px){.app-shell.has-details{grid-template-columns:var(--current-rail-width) minmax(0, 1fr)}.details-drawer{z-index:20;width:min(100%, var(--drawer-width));height:100dvh;position:fixed;top:0;right:0;box-shadow:-12px 0 36px #1d252324}}@media (width<=720px){.app-shell,.app-shell.rail-compact,.app-shell.has-details{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0, 1fr) calc(68px + env(safe-area-inset-bottom));display:grid}.conversation-stage{grid-row:1}.left-rail{background:var(--color-surface);border-top:1px solid var(--color-border);padding-bottom:env(safe-area-inset-bottom);border-right:0;grid-row:2;gap:0}.rail-header{display:none}.primary-navigation{height:100%;padding:0 max(8px, env(safe-area-inset-right)) 0 max(8px, env(safe-area-inset-left));grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.navigation-item,.rail-compact .navigation-item{min-width:0;height:100%;color:var(--color-muted);text-align:center;border-radius:0;flex-direction:column;justify-content:center;gap:4px;padding:6px 4px;display:flex}.navigation-item span,.rail-compact .navigation-item span{clip:auto;width:auto;height:auto;color:inherit;white-space:nowrap;font-size:12px;position:static;overflow:visible}.navigation-item[aria-current=page]{color:var(--color-accent);background:0 0}.stage-header{min-height:52px;padding:8px 14px}.source-button{justify-content:center;width:36px;padding:0}.source-button span{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.empty-state{justify-content:flex-start;padding:36px 16px 16px}.empty-state h1{font-size:23px}.empty-symbol{margin-bottom:14px}.suggestions{flex-direction:column;align-items:stretch;margin-top:20px}.suggestions button{width:100%}.message-list{padding:20px 14px}.user-message{max-width:88%}.composer-wrap{padding:8px 12px 12px}.composer{min-height:78px;padding:10px}.details-drawer{width:min(90%, var(--drawer-width))}}@media (height<=580px) and (width<=720px){.empty-state{padding-top:18px}.empty-symbol{display:none}.suggestions{margin-top:14px}}@media (prefers-reduced-motion:reduce){.app-shell{transition:none}.assistant-pending>span:not(.visually-hidden),.material-progress>span:first-child{animation:none}}
