:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17201e;--ink-soft:#4f5b58;--muted:#7e8885;--canvas:#f4f6f5;--surface:#fff;--line:#e1e6e3;--accent:#147568;--accent-deep:#0d5c52;--accent-soft:#dcefe9;--user:#dcefe9;--shadow:#16231f29;font-synthesis:none;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,sans-serif}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0}body{min-width:320px;color:var(--ink);background:#e9edeb;overflow:hidden}button,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,textarea:focus-visible,.sentence:focus-visible{outline-offset:2px;outline:3px solid #14756833}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{background:var(--canvas);border-inline:1px solid #dfe4e2;width:min(100%,760px);height:100dvh;margin:0 auto;position:relative;overflow:hidden}.app-header{z-index:10;height:calc(60px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 15px 0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffed;justify-content:space-between;align-items:center;display:flex;position:absolute;inset:0 0 auto}.companion-title{text-align:center}.companion-title strong,.companion-title span{display:block}.companion-title strong{letter-spacing:-.01em;font-size:15px;font-weight:680}.companion-title span{color:var(--accent);margin-top:2px;font-size:9px}.companion-title i{vertical-align:1px;background:#38a691;border-radius:50%;width:5px;height:5px;margin-right:4px;display:inline-block;box-shadow:0 0 0 2px #dff2ed}.icon-button{color:#35403d;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:38px;height:38px;padding:0;display:grid}.icon-button:hover{background:#eff3f1}.icon-button svg,.send-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.chat-scroll{inset:calc(60px + env(safe-area-inset-top)) 0 calc(77px + env(safe-area-inset-bottom));overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#ccd4d1 transparent;transition:bottom .15s;position:absolute;overflow-y:auto}.quote-count-1 .chat-scroll{bottom:calc(108px + env(safe-area-inset-bottom))}.quote-count-2 .chat-scroll{bottom:calc(138px + env(safe-area-inset-bottom))}.quote-count-3 .chat-scroll{bottom:calc(168px + env(safe-area-inset-bottom))}.message-list{width:min(100%,640px);min-height:100%;margin:0 auto;padding:22px 18px 38px}.day-label{color:#99a19e;text-align:center;margin:0 0 22px;font-size:10px}.main-message{margin-bottom:25px}.main-message.user{justify-content:flex-end;display:flex}.user-stack{flex-direction:column;align-items:flex-end;gap:6px;max-width:82%;display:flex}.user-bubble{background:var(--user);overflow-wrap:anywhere;white-space:pre-wrap;border-radius:16px 4px 16px 16px;padding:11px 14px;font-size:14px;line-height:1.62}.main-message.assistant{grid-template-columns:30px minmax(0,1fr);gap:10px;display:grid}.avatar{color:#fff;background:var(--accent);border-radius:50%;place-items:center;width:28px;height:28px;font-size:10px;font-weight:720;display:grid;box-shadow:0 2px 8px #1475682e}.assistant-copy{min-width:0;padding-top:2px}.assistant-reply{color:var(--ink);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:16px;line-height:1.64}.assistant-reply.failed,.detail-bubble.failed{color:#8a5c55}.sentence{cursor:pointer;-webkit-user-select:text;user-select:text;border-radius:5px;transition:background .12s,box-shadow .12s}.sentence:hover{background:#14756811}.sentence.selected{background:#d7ede7;box-shadow:0 0 0 2px #d7ede7}.assistant-reply::selection,.assistant-reply ::selection{color:#0a3c35;background:#bce3d9}.typing{background:#fff;border-radius:4px 13px 13px;align-items:center;gap:4px;width:fit-content;min-height:28px;padding:9px 11px;display:flex;box-shadow:0 1px 2px #121f1b0d}.typing.small{min-height:auto;box-shadow:none;padding:3px 1px}.typing i{background:#7f8b87;border-radius:50%;width:4px;height:4px;animation:1.1s ease-in-out infinite thinking}.typing i:nth-child(2){animation-delay:.14s}.typing i:nth-child(3){animation-delay:.28s}@keyframes thinking{0%,65%,to{opacity:.35;transform:translateY(0)}32%{opacity:1;transform:translateY(-2px)}}.sent-references{background:#ffffffb8;border-left:2px solid #92b7ae;border-radius:3px 9px 9px 3px;width:min(100%,420px);padding:7px 9px}.sent-references blockquote{color:#66716e;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:10px;line-height:1.45;overflow:hidden}.sent-references blockquote+blockquote{margin-top:3px}.composer-wrap{z-index:10;min-height:calc(77px + env(safe-area-inset-bottom));padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;position:absolute;inset:auto 0 0}.quote-tray{width:min(100%,620px);margin:0 auto 5px;padding:0 8px;overflow:hidden}.quote-row{grid-template-columns:12px minmax(0,1fr) 30px;align-items:center;gap:5px;width:100%;min-width:0;height:30px;display:grid}.quote-row+.quote-row{border-top:1px solid #edf0ef}.quote-mark{color:var(--accent);opacity:.68;font-family:Georgia,serif;font-size:14px;line-height:1}.quote-text{min-width:0;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.4;overflow:hidden}.quote-row button{color:#7b8582;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;display:grid}.quote-row button:hover{color:#26312f;background:#edf1ef}.main-composer,.detail-composer{background:#fff;border:1px solid #d7ddda;border-radius:18px;align-items:flex-end;gap:8px;width:min(100%,620px);min-height:50px;margin:0 auto;padding:6px 7px 6px 14px;display:flex;box-shadow:0 2px 10px #14221e09}.main-composer textarea,.detail-composer textarea{resize:none;width:100%;min-height:36px;max-height:110px;color:var(--ink);background:0 0;border:0;outline:0;padding:8px 0 5px;font-size:13px;line-height:1.5;overflow-y:auto}.main-composer textarea::placeholder,.detail-composer textarea::placeholder{color:#a0a9a6}.send-button{color:#fff;background:var(--accent);cursor:pointer;border:0;border-radius:13px;flex:none;place-items:center;width:38px;height:38px;padding:0;transition:background .12s,transform .12s;display:grid}.send-button:hover:not(:disabled){background:var(--accent-deep)}.send-button:active:not(:disabled){transform:scale(.96)}.send-button:disabled{color:#aab2af;cursor:default;background:#e5e9e7}.selection-actions{z-index:40;background:#26312f;border-radius:9px;align-items:center;padding:2px;display:flex;position:fixed;transform:translate(-50%,8px);box-shadow:0 7px 20px #18201e3d}.selection-actions:before{content:"";background:#26312f;width:8px;height:8px;position:absolute;top:-4px;left:50%;transform:translate(-50%)rotate(45deg)}.selection-actions button{z-index:1;color:#fff;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:11px;font-weight:650;position:relative}.selection-actions button+button{border-left:1px solid #ffffff2e;border-radius:0 7px 7px 0}.selection-actions button:hover{background:#ffffff17}.notice{z-index:90;left:50%;bottom:calc(92px + env(safe-area-inset-bottom));color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#232e2beb;border-radius:9px;max-width:calc(100vw - 40px);padding:8px 12px;font-size:11px;position:fixed;overflow:hidden;transform:translate(-50%);box-shadow:0 8px 24px #10181633}.drawer-scrim{z-index:50;opacity:0;pointer-events:none;background:#10181657;border:0;width:100%;height:100%;padding:0;transition:opacity .18s;position:fixed;inset:0}.drawer-scrim.visible{opacity:1;pointer-events:auto}.detail-drawer{z-index:60;background:var(--surface);visibility:hidden;border-radius:20px 20px 0 0;flex-direction:column;width:min(100%,640px);height:min(72dvh,650px);transition:transform .24s cubic-bezier(.22,1,.36,1),visibility .24s;display:flex;position:fixed;bottom:0;left:50%;overflow:hidden;transform:translate(-50%,104%);box-shadow:0 -20px 60px #10181633}.detail-drawer.open{visibility:visible;transform:translate(-50%)}.drawer-handle{background:#d9dddb;border-radius:4px;flex:none;width:34px;height:4px;margin:8px auto 1px}.drawer-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;min-height:76px;padding:12px 14px 11px 18px;display:flex}.drawer-header>div{min-width:0}.drawer-header h2{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:680}.drawer-header p{color:#65706d;text-overflow:ellipsis;white-space:nowrap;max-width:510px;margin:5px 0 0;font-size:11px;line-height:1.4;overflow:hidden}.detail-timeline{overscroll-behavior:contain;background:#f7f8f8;outline:0;flex:1;min-height:0;padding:16px 18px 26px;overflow-y:auto}.empty-detail{color:#87918e;text-align:center;max-width:290px;margin:42px auto}.empty-detail span{color:#a6bbb5;height:28px;font-family:Georgia,serif;font-size:38px;line-height:1;display:block}.empty-detail p{margin:8px 0 0;font-size:12px;line-height:1.65}.timeline-reference{color:#65706d;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#eef2f0;border:0;border-left:2px solid #9abbb4;border-radius:2px 8px 8px 2px;width:min(92%,480px);margin:5px auto 11px;padding:7px 10px;font-size:10px;line-height:1.45;display:block;overflow:hidden}.timeline-reference.active{color:#31544d;border-left-color:var(--accent);background:#e2efeb}.detail-message{margin-bottom:16px;display:flex}.detail-message.assistant{justify-content:flex-start}.detail-message.user{justify-content:flex-end}.detail-bubble{max-width:86%;color:var(--ink);overflow-wrap:anywhere;white-space:pre-wrap;background:#fff;border-radius:4px 14px 14px;padding:10px 12px;font-size:12px;line-height:1.64;box-shadow:0 1px 2px #1018160f}.detail-message.user .detail-bubble{background:var(--accent-soft);border-radius:14px 4px 14px 14px}.detail-composer{width:100%;min-height:calc(70px + env(safe-area-inset-bottom));padding:9px 10px calc(9px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);box-shadow:none;border-radius:0}.detail-composer textarea{background:#fff;border:1px solid #dce1df;border-radius:14px;padding:9px 12px 7px}.detail-composer textarea:disabled{color:#9aa19f;background:#f5f7f6}@media (max-width:640px){.app-shell{border-inline:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
