:root{--am-navy:#102a43;--am-blue:#1f5d8f;--am-blue-2:#2c76ad;--am-line:#d9e3eb;--am-bg:#f7f9fb;--am-text:#10243a;--am-muted:#667789;--am-green:#18815e;--am-danger:#a92d2d}
#tcaLauncher[hidden],#tcaPanel[hidden],.am-info[hidden]{display:none!important}
#tcaLauncher{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,calc(env(safe-area-inset-bottom) + 16px));z-index:1850;border:0;border-radius:999px;background:linear-gradient(135deg,#102a43,#1f5d8f);color:#fff;min-height:50px;padding:0 18px;box-shadow:0 14px 34px #071b2c42;font:800 14px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;display:flex;align-items:center;gap:9px;cursor:pointer;-webkit-tap-highlight-color:transparent}
#tcaLauncher .am-spark{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#ffffff1a;font-size:14px}
#tcaPanel{position:fixed;inset:0;z-index:1900;pointer-events:none;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--am-text);-webkit-text-size-adjust:100%;text-size-adjust:100%}
#tcaPanel.am-open{pointer-events:auto}.am-backdrop{position:absolute;inset:0;background:#07131f78;opacity:0;transition:opacity .18s}.am-open .am-backdrop{opacity:1}
.am-sheet{position:absolute;right:0;top:0;bottom:0;width:min(490px,100%);background:#fff;box-shadow:-18px 0 50px #06152338;transform:translateX(104%);transition:transform .2s ease;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}.am-open .am-sheet{transform:translateX(0)}
.am-head{min-height:70px;padding:max(12px,env(safe-area-inset-top)) 14px 10px 16px;border-bottom:1px solid var(--am-line);background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px}.am-brand{display:flex;align-items:center;gap:10px;min-width:0}.am-brand-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;flex:0 0 auto;color:#fff;background:linear-gradient(135deg,#173b59,#2c76ad);box-shadow:0 5px 14px #173b5928}.am-head h2{font-size:17px;line-height:1.2;margin:0;color:var(--am-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.am-status{display:flex;align-items:center;gap:6px;color:var(--am-muted);font-size:10.5px;line-height:1.2;margin-top:3px;white-space:nowrap}.am-status-dot{width:7px;height:7px;border-radius:50%;background:#96a5b3}.am-status.am-online .am-status-dot{background:var(--am-green);box-shadow:0 0 0 3px #18815e16}.am-status.am-fallback .am-status-dot{background:#d79a24}.am-head-actions{display:flex;align-items:center;gap:6px}.am-info-button,.am-close{border:0;background:#f0f4f7;color:#173b59;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;cursor:pointer;-webkit-tap-highlight-color:transparent}.am-info-button{font-weight:900;font-size:15px}.am-close{font-size:25px;font-weight:400;line-height:1}.am-info-button:hover,.am-close:hover{background:#e5edf3}
.am-info{padding:10px 16px 12px;background:#f7fafc;border-bottom:1px solid var(--am-line);font-size:11.5px;line-height:1.45;color:#516577}.am-info b{color:#173b59}.am-info p{margin:4px 0 0}
.am-body{min-height:0;overflow:auto;background:var(--am-bg);padding:18px 16px 22px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.am-empty{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 6px}.am-empty[hidden]{display:none!important}.am-empty-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#e9f3fb,#f4f8fb);color:#1f5d8f;font-size:22px;border:1px solid #d6e4ee}.am-empty h3{margin:12px 0 5px;color:var(--am-navy);font-size:22px;line-height:1.2}.am-empty>p{margin:0;max-width:360px;color:var(--am-muted);font-size:13px;line-height:1.45}.am-context{display:none;margin-top:12px;padding:7px 10px;border-radius:999px;background:#eaf3f9;border:1px solid #cee1ee;color:#234b69;font-size:10.5px;font-weight:800}.am-context.am-show{display:inline-flex}.am-prompts{width:min(100%,390px);display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.am-prompt{min-height:52px;border:1px solid #d4e0e9;background:#fff;color:#24455f;border-radius:14px;padding:9px 10px;text-align:left;font:750 11px/1.35 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;box-shadow:0 2px 8px #10243a08}.am-prompt:hover{border-color:#a9c4d8;background:#fbfdff}
.am-thread{display:grid;gap:16px}.am-msg{font-size:14px;line-height:1.52;overflow-wrap:anywhere}.am-msg-user{justify-self:end;max-width:86%;background:#1c557f;color:#fff;border-radius:18px 18px 5px 18px;padding:10px 13px;box-shadow:0 3px 10px #173b5914}.am-msg-assistant{justify-self:stretch;position:relative;padding-left:34px;color:var(--am-text)}.am-msg-assistant:before{content:"✦";position:absolute;left:0;top:1px;width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#173b59;color:#fff;font-size:11px}.am-msg-error{justify-self:stretch;background:#fff4f4;border:1px solid #efc1c1;color:#8b2323;border-radius:13px;padding:10px 12px}.am-answer-text{font-size:14px;line-height:1.58}.am-answer-text p{margin:0 0 9px}.am-answer-text p:last-child{margin-bottom:0}.am-answer-text ul,.am-answer-text ol{margin:6px 0 10px;padding-left:21px}.am-answer-text li{margin:4px 0}.am-answer-text strong{font-weight:850;color:var(--am-navy)}.am-answer-text code{font:12px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#edf2f6;border-radius:5px;padding:1px 4px}.am-answer-meta{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 0}.am-answer-badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;background:#edf4f8;color:#36576d;padding:5px 8px;font-size:9.5px;font-weight:800}.am-working{display:flex;gap:5px;align-items:center;color:var(--am-muted);min-height:28px}.am-working:before{top:0}.am-working i{display:block;width:6px;height:6px;border-radius:50%;background:#6b8297;animation:amPulse 1s infinite}.am-working i:nth-child(3){animation-delay:.14s}.am-working i:nth-child(4){animation-delay:.28s}@keyframes amPulse{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-2px)}}
.am-sources{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.am-source{display:inline-flex;align-items:center;gap:5px;max-width:100%;border:1px solid #d3e0e9;background:#fff;color:#1c5c89;text-decoration:none;border-radius:999px;padding:6px 9px;font-size:9.8px;font-weight:800;line-height:1.25}.am-source:before{content:"↗";font-size:9px}.am-source:hover{background:#f5f9fc}.am-source-authority{display:none}.am-source-note{font-size:10px;color:var(--am-muted);margin-top:8px}.am-results{padding-left:34px}.am-results-head{display:grid;gap:3px}.am-results-head span{color:var(--am-muted);font-size:11px}.am-ref-grid{display:grid;gap:8px;margin-top:10px}.am-ref-card{background:#fff;border:1px solid var(--am-line);border-radius:12px;padding:10px}.am-ref-top{display:grid;gap:6px}.am-ref-badges{display:flex;gap:5px;flex-wrap:wrap}.am-ref-badge{border-radius:999px;background:#eef4f8;color:#466276;padding:4px 7px;font-size:8.5px;font-weight:850;text-transform:uppercase;letter-spacing:.03em}.am-ref-snippet{color:#5b6d7c;font-size:10.5px;line-height:1.45;margin-top:7px;max-height:7em;overflow:hidden}.am-ref-actions{display:flex;gap:7px;margin-top:9px}.am-ref-link{border:1px solid #c8dae6;color:#1b5e91;text-decoration:none;border-radius:8px;padding:6px 8px;font-size:9.5px;font-weight:800}.am-ref-link-primary{background:#173b59;color:#fff;border-color:#173b59}
.am-compose{padding:10px 12px max(10px,calc(env(safe-area-inset-bottom) + 6px));border-top:1px solid var(--am-line);background:#fff}.am-form{display:flex;align-items:flex-end;gap:8px;border:1px solid #cbd8e2;background:#fff;border-radius:20px;padding:6px 6px 6px 12px;box-shadow:0 2px 12px #10243a0b}.am-form:focus-within{border-color:#6a9fc4;box-shadow:0 0 0 3px #4f8ab51c}.am-input{flex:1;min-width:0;min-height:34px;max-height:118px;resize:none;border:0;padding:7px 0;font:16px/1.35 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#10243a;background:transparent;outline:none;overflow-y:auto}.am-input::placeholder{color:#8a98a5}.am-send{flex:0 0 auto;width:38px;height:38px;border:0;border-radius:50%;display:grid;place-items:center;background:#173b59;color:#fff;font-size:22px;font-weight:650;cursor:pointer}.am-send:disabled{opacity:.38;cursor:not-allowed}.am-compose-note{text-align:center;font-size:8.8px;line-height:1.35;color:#7a8997;margin-top:6px}
@media(max-width:680px){#tcaLauncher{right:12px;bottom:max(12px,calc(env(safe-area-inset-bottom) + 12px));min-height:47px;padding:0 14px}.am-sheet{inset:0;width:100%;height:100vh;height:100dvh;border-radius:0;transform:translateX(104%);box-shadow:none}.am-open .am-sheet{transform:translateX(0)}.am-head{min-height:64px;padding:max(9px,env(safe-area-inset-top)) 10px 8px 12px}.am-brand-icon{width:31px;height:31px;border-radius:10px}.am-head h2{font-size:16px}.am-info-button,.am-close{width:34px;height:34px}.am-body{padding:15px 12px 18px}.am-empty{padding:24px 4px}.am-empty h3{font-size:21px}.am-empty>p{font-size:12.5px}.am-prompts{grid-template-columns:1fr 1fr;gap:7px;margin-top:16px}.am-prompt{min-height:50px;font-size:10.5px}.am-thread{gap:15px}.am-msg{font-size:13.5px}.am-msg-user{max-width:88%;padding:9px 12px}.am-answer-text{font-size:13.5px;line-height:1.57}.am-compose{padding:8px 8px max(8px,calc(env(safe-area-inset-bottom) + 5px))}.am-form{border-radius:19px;padding-left:11px}.am-compose-note{font-size:8.4px}}
@media(max-width:360px){.am-prompts{grid-template-columns:1fr}.am-head h2{font-size:15px}.am-status{font-size:9.5px}}
@media(prefers-color-scheme:dark){:root{--am-line:#2d465b;--am-bg:#0a1825;--am-text:#e7eef5;--am-muted:#9cafbe}.am-sheet,.am-head,.am-compose{background:#0e2234;color:#e7eef5}.am-head h2,.am-answer-text strong{color:#f1f6fa}.am-head{border-color:#2a4255}.am-info{background:#10283b;border-color:#2d465b;color:#b1c0cc}.am-info b{color:#e8f2f8}.am-info-button,.am-close{background:#173147;color:#dce8f1}.am-body{background:#081622}.am-empty-icon{background:#132c41;border-color:#2e4d63;color:#8cc9f4}.am-empty h3{color:#edf5fa}.am-prompt,.am-ref-card,.am-source,.am-form{background:#112a3e;border-color:#355167;color:#dce8f1}.am-prompt{color:#dce8f1}.am-context{background:#14334b;border-color:#31536b;color:#b9d9ef}.am-msg-assistant{color:#e7eef5}.am-msg-user{background:#1d5c88}.am-answer-text code{background:#173147}.am-answer-badge,.am-ref-badge{background:#173147;color:#b9cbd8}.am-source{color:#8bc7ef}.am-input{color:#edf5fa}.am-input::placeholder{color:#8395a4}.am-form:focus-within{border-color:#4f86ad}.am-compose-note,.am-source-note,.am-results-head span{color:#8fa2b2}}
@media(prefers-reduced-motion:reduce){.am-backdrop,.am-sheet{transition:none!important}.am-working i{animation:none!important}}

/* Stage 5.7.1 — iOS visual viewport + compact fallback stabilization */
@media(max-width:680px){#tcaPanel{inset:0;overflow:hidden}.am-body{min-height:0}.am-results-compact .am-sources{margin-top:8px}.am-results-compact .am-source{white-space:normal;border-radius:12px;line-height:1.3}}

/* Stage 5.7.3 — production chat UX */
.am-sheet{grid-template-rows:auto auto auto minmax(0,1fr) auto;contain:layout paint}
.am-head{grid-row:1}.am-info{grid-row:2}.am-memory{grid-row:3}.am-body{grid-row:4}.am-compose{grid-row:5}
.am-thread{min-height:0;align-content:start}
.am-new-chat{border:0;background:#f0f4f7;color:#173b59;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;cursor:pointer;font-size:21px;line-height:1;-webkit-tap-highlight-color:transparent}
.am-new-chat:hover{background:#e5edf3}.am-new-chat[hidden]{display:none!important}
.am-memory{display:flex;align-items:center;gap:7px;min-width:0;padding:7px 12px;border-bottom:1px solid var(--am-line);background:#f8fbfd;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
.am-memory[hidden]{display:none!important}.am-memory::-webkit-scrollbar{display:none}.am-memory-label{flex:0 0 auto;color:var(--am-muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.am-memory-items{display:flex;gap:6px;min-width:max-content}.am-memory-chip{display:inline-flex;align-items:center;border-radius:999px;background:#eaf3f9;color:#244e6d;padding:4px 8px;font-size:9.5px;font-weight:800;white-space:nowrap}
.am-thread{min-height:100%;align-content:end}.am-thread:empty{display:none}
.am-quick-replies{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.am-quick-reply{border:1px solid #bfd3e1;background:#fff;color:#1c5c89;border-radius:999px;padding:7px 10px;font:800 10px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent}.am-quick-reply:hover{background:#eef6fb}.am-quick-reply:disabled{opacity:.45;cursor:not-allowed}
.am-source-extra[hidden]{display:none!important}.am-source-more{display:inline-flex;align-items:center;border:1px solid #d3e0e9;background:transparent;color:#466276;border-radius:999px;padding:6px 9px;font:800 9.8px/1.25 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}.am-source-extra{display:flex;gap:7px;flex-wrap:wrap;width:100%}
.am-retry{margin-top:9px;border:1px solid #bad0df;background:#fff;color:#175b88;border-radius:999px;padding:7px 11px;font:850 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.am-newest{position:absolute;right:14px;bottom:calc(var(--am-compose-height,86px) + 12px);z-index:6;border:1px solid #c5d8e5;background:#fff;color:#1f5d8f;border-radius:999px;padding:8px 11px;box-shadow:0 8px 24px #071b2c24;font:850 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}.am-newest[hidden]{display:none!important}
.am-compose{position:relative;z-index:5}.am-input{max-height:94px}.am-body{scroll-padding-bottom:18px;touch-action:pan-y}.am-form[aria-busy="true"]{border-color:#9cb8cb}
@media(max-width:680px){#tcaPanel{height:100dvh;max-height:100dvh}.am-sheet{top:var(--am-vv-top,0px)!important;bottom:auto;left:0;right:0;height:var(--am-vv-height,100dvh);max-height:var(--am-vv-height,100dvh);min-height:0}.am-head-actions{gap:5px}.am-new-chat,.am-info-button,.am-close{width:34px;height:34px}.am-memory{padding-left:10px;padding-right:10px}.am-newest{right:10px}.am-compose{padding-bottom:max(8px,calc(env(safe-area-inset-bottom) + 5px))}}
@media(prefers-color-scheme:dark){.am-new-chat{background:#173147;color:#dce8f1}.am-memory{background:#0f2638;border-color:#2d465b}.am-memory-chip{background:#173147;color:#b9d9ef}.am-quick-reply,.am-newest,.am-retry{background:#112a3e;border-color:#355167;color:#8bc7ef}.am-source-more{border-color:#355167;color:#a9bdcc}}

/* Stage 5.7.3.5 — viewport-width hardening */
#tcaPanel,.am-sheet,.am-head,.am-memory,.am-body,.am-compose,.am-form,.am-thread{box-sizing:border-box;min-width:0;max-width:100%}
#tcaPanel{width:100vw;max-width:100vw;overflow:hidden}
.am-sheet{width:min(490px,100vw);max-width:100vw;overflow-x:hidden}
.am-body,.am-thread{width:100%;max-width:100%;overflow-x:hidden}
.am-compose{width:100%;max-width:100%;overflow:hidden}
.am-form{width:100%;max-width:100%}
@media(max-width:680px){.am-sheet{width:100vw;max-width:100vw}.am-compose{padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right))}}


/* Stage 5.7.3.7 — iPhone Safari scale + short-landscape fullscreen */
@media (max-height:500px) and (max-width:1024px){
  #tcaPanel{inset:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;overflow:hidden}
  .am-sheet{inset:0!important;left:0!important;right:0!important;top:var(--am-vv-top,0px)!important;bottom:auto!important;width:100vw!important;max-width:100vw!important;height:var(--am-vv-height,100dvh)!important;max-height:var(--am-vv-height,100dvh)!important;border-radius:0;box-shadow:none;transform:translateX(104%)}
  .am-open .am-sheet{transform:translateX(0)}
  .am-head{min-height:56px;padding:max(6px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) 6px max(12px,env(safe-area-inset-left))}
  .am-brand-icon{width:30px;height:30px}.am-head h2{font-size:16px}.am-status{font-size:9.5px}
  .am-body{padding:10px max(12px,env(safe-area-inset-right)) 12px max(12px,env(safe-area-inset-left))}
  .am-compose{padding:7px max(10px,env(safe-area-inset-right)) max(7px,calc(env(safe-area-inset-bottom) + 4px)) max(10px,env(safe-area-inset-left))}
  .am-compose-note{margin-top:4px}
}
