:root{--color-primary-50:#eff4fb;--color-primary-100:#dbe6f4;--color-primary-200:#bbd0ec;--color-primary-500:#2d5fa6;--color-primary-600:#1f4e8c;--color-primary-700:#163c6e;--color-neutral-50:#f8f9fa;--color-neutral-100:#f1f3f5;--color-neutral-200:#e5e8eb;--color-neutral-300:#cdd3d9;--color-neutral-500:#7a848d;--color-neutral-600:#5c656d;--color-neutral-700:#414a52;--color-neutral-800:#2b3238;--color-neutral-900:#1a1f24;--color-success-bg:#e7f4ec;--color-success-border:#b7dec6;--color-success-text:#1e6b3e;--color-warning-bg:#fdf6e3;--color-warning-border:#ebd79a;--color-warning-text:#8a6a1a;--color-warning-accent:#d9a93a;--color-error-bg:#fcebea;--color-error-border:#f0b7b3;--color-error-text:#a52521;--color-info-bg:#eaf1fa;--color-info-border:#bbd0ec;--color-info-text:#1f4e8c;--bg-page:#f4f6f8;--surface-1:#fff;--surface-2:#f1f3f5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--font-sans:system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--font-body:16px;--lh-body:24px;--font-small:14px;--lh-small:20px;--font-caption:12px;--lh-caption:16px;--fw-medium:500;--fw-semibold:600;--font-h2:18px;--lh-h2:26px;--font-h3:16px;--lh-h3:22px;--font-mono-sz:14px;--tap-target:44px;--header-h:52px}*{box-sizing:border-box}html,body{background:var(--bg-page);height:100%;color:var(--color-neutral-900);font-family:var(--font-sans);font-size:var(--font-body);line-height:var(--lh-body);overscroll-behavior-y:none;margin:0}#app{flex-direction:column;height:100dvh;display:flex}.app-header{align-items:center;gap:var(--space-2);height:calc(var(--header-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--space-3) 0 var(--space-4);background:var(--color-primary-600);color:#fff;flex:none;display:flex}.app-title{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:17px;font-weight:700;overflow:hidden}.header-btn{appearance:none;color:#fff;font-family:inherit;font-size:var(--font-small);min-height:var(--tap-target);min-width:var(--tap-target);padding:0 var(--space-2);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;font-weight:600}.header-btn:active{background:var(--color-primary-700)}.account-chip{border-radius:var(--radius-full);background:var(--color-primary-700);width:34px;height:34px;font-size:var(--font-small);letter-spacing:.02em;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.banner{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);font-size:var(--font-small);line-height:var(--lh-small);flex:none;display:flex}.banner[hidden]{display:none}.banner-offline{background:var(--color-warning-bg);border-bottom:1px solid var(--color-warning-border);color:var(--color-warning-text)}.banner-update{background:var(--color-info-bg);border-bottom:1px solid var(--color-info-border);color:var(--color-info-text)}.banner button{appearance:none;color:inherit;font-family:inherit;font-size:var(--font-small);border-radius:var(--radius-md);background:0 0;border:1px solid;min-height:36px;margin-left:auto;padding:6px 14px;font-weight:600}.chat-thread{-webkit-overflow-scrolling:touch;min-height:0;padding:var(--space-4);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.empty-state{text-align:center;max-width:420px;color:var(--color-neutral-600);gap:var(--space-4);padding:var(--space-6) var(--space-2);flex-direction:column;margin:auto;display:flex}.empty-state h2{color:var(--color-neutral-800);margin:0;font-size:20px}.empty-state p{font-size:var(--font-small);line-height:var(--lh-small);margin:0}.example-prompts{gap:var(--space-2);flex-direction:column;display:flex}.example-prompt{appearance:none;font-family:inherit;font-size:var(--font-small);line-height:var(--lh-small);text-align:left;color:var(--color-primary-600);background:var(--surface-1);border:1px solid var(--color-primary-200);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);min-height:var(--tap-target);cursor:pointer}.example-prompt:active{background:var(--color-primary-50)}.composer{align-items:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom)) var(--space-3);background:var(--surface-1);border-top:1px solid var(--color-neutral-200);flex:none;display:flex}.composer textarea{resize:none;font-family:inherit;font-size:var(--font-body);line-height:var(--lh-body);border:1px solid var(--color-neutral-300);border-radius:var(--radius-lg);padding:10px var(--space-3);background:var(--surface-1);max-height:30dvh;color:inherit;flex:1}.composer textarea:focus{outline:2px solid var(--color-primary-500);outline-offset:-1px}.composer .send-btn{appearance:none;border-radius:var(--radius-full);width:var(--tap-target);height:var(--tap-target);background:var(--color-primary-600);color:#fff;cursor:pointer;border:0;flex:none;font-size:20px}.composer .send-btn:disabled{background:var(--color-neutral-300)}.composer .abort-btn{background:var(--color-error-text);display:none}.composer.streaming .send-btn{display:none}.composer.streaming .abort-btn{display:inline-flex}.composer .icon-btn{appearance:none;border:1px solid var(--color-neutral-300);border-radius:var(--radius-full);width:var(--tap-target);height:var(--tap-target);background:var(--surface-1);color:var(--color-primary-600);cursor:pointer;flex:none;font-size:24px;line-height:1}.composer .icon-btn:disabled{color:var(--color-neutral-300)}.demo-btn{background:var(--surface-1);color:var(--color-primary-600);border:1px solid var(--color-primary-200)}.login-screen{align-items:center;gap:var(--space-4);padding:var(--space-6);text-align:center;flex-direction:column;max-width:420px;margin:auto;display:flex}.login-screen img{width:96px;height:auto}.login-screen h1{color:var(--color-neutral-900);margin:0;font-size:22px}.login-screen p{color:var(--color-neutral-600);font-size:var(--font-small);line-height:var(--lh-small);margin:0}.login-error{background:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error-text);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--font-small);line-height:var(--lh-small)}.primary-btn{appearance:none;border-radius:var(--radius-md);background:var(--color-primary-600);color:#fff;font-family:inherit;font-size:var(--font-body);padding:12px var(--space-6);min-height:var(--tap-target);cursor:pointer;border:0;font-weight:600}.primary-btn:active{background:var(--color-primary-700)}.account-sheet-backdrop{z-index:50;background:#1a1f2466;align-items:flex-end;display:flex;position:fixed;inset:0}.account-sheet{background:var(--surface-1);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));gap:var(--space-3);flex-direction:column;display:flex}.account-sheet .who{font-weight:700}.account-sheet .meta{color:var(--color-neutral-500);font-size:var(--font-caption);line-height:var(--lh-caption);font-family:var(--font-mono)}.account-sheet button{appearance:none;font-family:inherit;font-size:var(--font-body);border-radius:var(--radius-md);min-height:var(--tap-target);cursor:pointer}.account-sheet .signout-btn{border:1px solid var(--color-error-border);background:var(--color-error-bg);color:var(--color-error-text);font-weight:600}.account-sheet .close-btn{border:1px solid var(--color-neutral-300);background:var(--surface-1);color:var(--color-neutral-700)}.claude-message{flex-direction:column;display:flex}.claude-user-message{align-items:flex-end}.claude-assistant-message{align-items:flex-start}.claude-msg-bubble{border-radius:var(--radius-lg);max-width:92%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-neutral-200)}.claude-user-bubble{background:var(--color-neutral-100)}.claude-assistant-bubble{background:var(--surface-1);border-left:3px solid var(--color-primary-500)}.claude-msg-text{font-size:var(--font-body);line-height:var(--lh-body);color:var(--color-neutral-900);word-break:break-word;margin:0}.claude-assistant-bubble h1,.claude-assistant-bubble h2,.claude-assistant-bubble h3,.claude-assistant-bubble h4,.claude-assistant-bubble h5,.claude-assistant-bubble h6{font-size:var(--font-h3);line-height:var(--lh-h3);font-weight:var(--fw-semibold);color:var(--color-primary-700);margin:var(--space-3) 0 var(--space-2) 0}.claude-assistant-bubble h1,.claude-assistant-bubble h2{font-size:var(--font-h2);line-height:var(--lh-h2)}.claude-assistant-bubble strong{font-weight:var(--fw-semibold);color:var(--color-neutral-900)}.claude-assistant-bubble em{font-style:italic}.claude-assistant-bubble ul,.claude-assistant-bubble ol{margin:var(--space-2) 0;padding-left:var(--space-6)}.claude-assistant-bubble li{margin-bottom:var(--space-1);line-height:var(--lh-body)}.claude-assistant-bubble p{margin:var(--space-2) 0}.claude-assistant-bubble p:first-child{margin-top:0}.claude-assistant-bubble p:last-child{margin-bottom:0}.claude-assistant-bubble code{background:var(--color-neutral-100);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-mono-sz);padding:1px 4px}.claude-assistant-bubble pre{background:var(--color-neutral-100);padding:var(--space-2);border-radius:var(--radius-sm);margin:var(--space-2) 0;overflow-x:auto}.claude-assistant-bubble pre code{background:0 0;padding:0}.claude-assistant-bubble blockquote{border-left:3px solid var(--color-neutral-300);padding-left:var(--space-3);margin:var(--space-2) 0;color:var(--color-neutral-700)}.claude-assistant-bubble a{color:var(--color-primary-600);text-decoration:underline}.claude-assistant-bubble table{border-collapse:collapse;margin:var(--space-2) 0;font-size:var(--font-small);display:block;overflow-x:auto}.claude-assistant-bubble th,.claude-assistant-bubble td{border:1px solid var(--color-neutral-200);padding:var(--space-1) var(--space-2);text-align:left}.claude-assistant-bubble th{background:var(--color-neutral-50);font-weight:var(--fw-semibold)}.claude-msg-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.claude-msg-action-btn{font-size:var(--font-small);font-weight:var(--fw-semibold);border-radius:var(--radius-md);cursor:pointer;min-height:36px;color:var(--color-primary-600);background:0 0;border:none;padding:8px 12px;font-family:inherit}.claude-msg-action-btn:active{background:var(--color-primary-50)}.claude-user-msg-actions{gap:var(--space-2);margin-top:var(--space-1);justify-content:flex-end;display:flex}.claude-user-icon-btn{cursor:pointer;min-width:36px;min-height:36px;color:var(--color-neutral-500);opacity:.7;border-radius:var(--radius-md);background:0 0;border:none;padding:8px;line-height:0}.claude-user-icon-btn:active{opacity:1;background:#0000000f}.claude-user-icon-btn svg{width:18px;height:18px}.claude-icon-done{color:var(--color-success-text);opacity:1}.claude-user-bubble-files{font-size:var(--font-caption);color:var(--color-neutral-600);margin-top:var(--space-1);font-style:italic}.claude-references{margin-top:var(--space-3);border-top:1px solid var(--color-neutral-200);padding-top:var(--space-2)}.claude-references summary{font-size:var(--font-small);font-weight:var(--fw-semibold);color:var(--color-neutral-600);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;min-height:36px;list-style:none;display:flex}.claude-references summary::-webkit-details-marker{display:none}.claude-ref-list{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.claude-ref-item{background:var(--color-neutral-50);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);gap:var(--space-1);flex-direction:column;display:flex}.claude-ref-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.claude-ref-code{font-size:var(--font-caption);font-family:var(--font-mono);color:var(--color-primary-600);background:var(--color-primary-100);border-radius:3px;padding:1px 5px}.claude-ref-type{font-size:var(--font-caption);font-family:var(--font-mono);color:var(--color-neutral-500);background:var(--color-neutral-100);border-radius:3px;padding:1px 5px}.claude-ref-title{font-size:var(--font-small);font-weight:var(--fw-semibold);color:var(--color-neutral-900);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.claude-ref-snippet{font-size:var(--font-caption);line-height:var(--lh-caption);color:var(--color-neutral-600);margin:var(--space-1) 0;font-style:italic}.claude-ref-actions{gap:var(--space-2);margin-top:2px;display:flex}.claude-ref-open-btn{font-size:var(--font-small);font-weight:var(--fw-semibold);border-radius:var(--radius-md);cursor:pointer;border:1px solid var(--color-neutral-200);background:var(--surface-1);min-height:40px;color:var(--color-primary-600);padding:8px 14px;font-family:inherit}.claude-ref-open-btn:active{background:var(--color-neutral-100)}.claude-ref-dms-badge{background:var(--color-primary-50);color:var(--color-primary-700);border:1px solid var(--color-primary-200);border-radius:var(--radius-sm);padding:2px var(--space-2);font-size:var(--font-caption);font-weight:var(--fw-medium);align-items:center;gap:4px;display:inline-flex}.claude-ref-ldh-badge{color:#92400e;border-radius:var(--radius-sm);padding:2px var(--space-2);font-size:var(--font-caption);font-weight:var(--fw-medium);background:#fef3c7;border:1px solid #fcd34d;align-items:center;gap:4px;display:inline-flex}.claude-ref-country-chip{font-size:var(--font-caption);color:var(--color-neutral-600)}.claude-loading{font-size:var(--font-small);color:var(--color-neutral-600);padding:var(--space-3) var(--space-1);font-style:italic}.claude-loading.claude-thinking{align-items:center;gap:var(--space-2);font-style:normal;display:flex}.tenk-thinking-dot{background:var(--color-primary-600);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:1.4s ease-in-out infinite tenk-pulse}@keyframes tenk-pulse{0%,to{opacity:.45;transform:scale(.7)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.tenk-thinking-dot{opacity:.85;animation:none}}.claude-aborted{color:var(--color-neutral-500);font-style:italic;font-size:var(--font-caption);margin-left:4px}#chat-error-bar{margin:0 var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-md);color:var(--color-error-text);font-size:var(--font-small);line-height:var(--lh-small);flex:none}#chat-error-bar.hidden{display:none}.claude-anti-hallu-banner{margin:0 var(--space-3) var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-left:3px solid var(--color-warning-accent);border-radius:var(--radius-md);font-size:var(--font-caption);color:var(--color-warning-text);line-height:var(--lh-caption);flex:none;align-items:flex-start;gap:6px;display:flex}.claude-ask-pending{color:var(--color-neutral-500);font-style:italic}.claude-ask-card{margin-top:var(--space-3);border:1px solid var(--color-primary-200);border-left:3px solid var(--color-primary-500);border-radius:var(--radius-md);background:var(--color-primary-50);padding:var(--space-3) var(--space-4)}.claude-ask-question{font-size:var(--font-body);font-weight:var(--fw-semibold);color:var(--color-primary-700);margin:0 0 var(--space-2);line-height:var(--lh-body)}.claude-ask-options{gap:var(--space-2);flex-direction:column;display:flex}.claude-ask-option-btn{text-align:left;font-size:var(--font-body);padding:var(--space-3) var(--space-4);min-height:var(--tap-target);border:1px solid var(--color-primary-200);border-radius:var(--radius-md);background:var(--surface-1);color:var(--color-primary-700);cursor:pointer;font-family:inherit}.claude-ask-option-btn:active:not(:disabled){border-color:var(--color-primary-600);background:var(--color-primary-100)}.claude-ask-option-btn:disabled{opacity:.55;cursor:default}.claude-ask-other-btn{color:var(--color-neutral-600);font-style:italic}.claude-ask-chosen{font-size:var(--font-small);color:var(--color-neutral-600);margin:var(--space-2) 0 0;font-style:italic}#attached-files{gap:var(--space-2);-webkit-overflow-scrolling:touch;padding:var(--space-1) var(--space-3);background:var(--surface-1);flex-direction:row;flex:none;display:none;overflow-x:auto}.claude-file-chip{align-items:center;gap:var(--space-2);padding:6px var(--space-2);background:var(--color-primary-50);border:1px solid var(--color-primary-200);border-radius:var(--radius-sm);flex-shrink:0;min-width:0;display:flex}.claude-file-thumb{object-fit:cover;border-radius:4px;flex-shrink:0;width:40px;height:40px}.claude-file-chip-info{flex-direction:column;min-width:0;max-width:140px;display:flex}.claude-file-chip-name{font-size:var(--font-caption);color:var(--color-neutral-800);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.claude-file-chip-badge{color:var(--color-neutral-600);font-size:10px;font-weight:var(--fw-medium);letter-spacing:.5px}.claude-file-chip-remove{cursor:pointer;color:var(--color-neutral-600);padding:0 var(--space-2);background:0 0;border:none;min-width:36px;min-height:36px;font-size:20px;line-height:1}.claude-file-chip-remove:active{color:var(--color-error-text)}.claude-tool-status{font-style:normal}
