.tsw-root{--tsw-bg:#071423;--tsw-bg-header:#0b1a2b;--tsw-bg-bubble:#12263b;--tsw-bg-input:#0b1a2b;--tsw-text:#f1f5f9;--tsw-text-muted:#a9b8c9;--tsw-cyan:#00e5ff;--tsw-cyan-strong:#00b8d4;--tsw-on-cyan:#04121f;--tsw-cyan-soft:#7defff;--tsw-border:#28405a;--tsw-border-ui:#6b88a6;--tsw-warn-bg:#2b2208;--tsw-warn-text:#ffe9a8;--tsw-warn-border:#a37b12;--tsw-error-bg:#2d1219;--tsw-error-text:#ffd9de;--tsw-error-border:#c2455c;--tsw-focus:#fff;color:var(--tsw-text);-webkit-text-size-adjust:100%;font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}.tsw-root *,.tsw-root :before,.tsw-root :after{box-sizing:border-box}.tsw-launcher{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));z-index:9990;border:2px solid var(--tsw-cyan);background:var(--tsw-bg-header);min-width:64px;min-height:64px;color:var(--tsw-text);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:6px 20px 6px 6px;font-family:Outfit,Plus Jakarta Sans,ui-sans-serif,system-ui,sans-serif;font-size:16px;font-weight:700;transition:transform .15s,box-shadow .15s;display:inline-flex;position:fixed;box-shadow:0 10px 28px #00e5ff40,0 2px 8px #0000008c}.tsw-launcher:hover{transform:translateY(-2px);box-shadow:0 14px 32px #00e5ff61,0 2px 8px #0000008c}.tsw-launcher-label{white-space:nowrap}.tsw-launcher[aria-expanded=true]{display:none}.tsw-launcher[data-state=unavailable]{border-color:var(--tsw-warn-border);box-shadow:0 10px 28px #a37b1240,0 2px 8px #0000008c}@media (width<=639px){.tsw-launcher{justify-content:center;width:64px;height:64px;padding:4px}.tsw-launcher-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.tsw-avatar{border:2px solid var(--tsw-cyan);background:radial-gradient(circle at 50% 38%,#12344a 0%,#0b1a2b 72%);border-radius:50%;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.tsw-avatar-md{width:48px;height:48px}.tsw-avatar-sm{width:44px;height:44px}.tsw-avatar-img{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:118%;max-width:none;height:118%;margin-top:6%}.tsw-avatar[data-state=responding]{animation:1.2s ease-in-out infinite tsw-pulse}.tsw-avatar[data-state=unavailable]{border-color:var(--tsw-warn-border);background:radial-gradient(circle at 50% 38%,#2b2d33 0%,#15171c 72%)}.tsw-avatar[data-state=unavailable] .tsw-avatar-img{filter:grayscale(.75)brightness(.8)}@keyframes tsw-pulse{0%,to{box-shadow:0 0 #00e5ff8c}50%{box-shadow:0 0 0 6px #00e5ff00}}.tsw-panel{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));z-index:9991;border:1px solid var(--tsw-border);background:var(--tsw-bg);border-radius:20px;flex-direction:column;width:392px;max-width:calc(100vw - 32px);height:min(680px,100dvh - 32px);animation:.18s ease-out tsw-in;display:flex;position:fixed;overflow:hidden;box-shadow:0 24px 64px #0009,0 0 0 1px #00e5ff14}@media (width<=639px){.tsw-panel{inset:auto;top:var(--tsw-vt,0px);width:100%;max-width:none;height:var(--tsw-vh,100dvh);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);border:0;border-radius:0;left:0;right:0}}@keyframes tsw-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.tsw-header{background:var(--tsw-bg-header);border-bottom:1px solid var(--tsw-border);align-items:center;gap:12px;padding:14px 8px 14px 16px;display:flex}.tsw-titles{flex:1;min-width:0}.tsw-title{outline:none;margin:0;font-family:Outfit,Plus Jakarta Sans,ui-sans-serif,system-ui,sans-serif;font-size:17px;font-weight:700;line-height:1.2}.tsw-status{color:var(--tsw-text-muted);align-items:center;gap:6px;margin:3px 0 0;font-size:12.5px;line-height:1.35;display:flex}.tsw-status-dot{background:var(--tsw-cyan);border-radius:50%;flex:none;width:8px;height:8px}.tsw-status[data-state=responding] .tsw-status-dot{animation:1s ease-in-out infinite tsw-blink}.tsw-status[data-state=unavailable]{color:var(--tsw-warn-text)}.tsw-status[data-state=unavailable] .tsw-status-dot{background:#f5b82e}@keyframes tsw-blink{0%,to{opacity:1}50%{opacity:.3}}.tsw-icon-btn{width:44px;height:44px;color:var(--tsw-text);cursor:pointer;background:0 0;border:0;border-radius:12px;flex:none;place-items:center;display:grid}.tsw-icon-btn:hover{background:#ffffff14}.tsw-icon-btn svg{width:22px;height:22px}.tsw-demo{background:var(--tsw-warn-bg);border-bottom:1px solid var(--tsw-warn-border);color:var(--tsw-warn-text);margin:0;padding:6px 16px;font-size:12px;font-weight:600}.tsw-log{overscroll-behavior:contain;scrollbar-color:var(--tsw-border) transparent;flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px;display:flex;overflow-y:auto}.tsw-row{flex-direction:column;gap:8px;max-width:92%;display:flex}.tsw-row-user{align-self:flex-end;align-items:flex-end}.tsw-row-bot{align-self:flex-start;align-items:flex-start}.tsw-bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:16px;margin:0;padding:10px 14px}.tsw-row-bot .tsw-bubble{background:var(--tsw-bg-bubble);border:1px solid var(--tsw-border);border-top-left-radius:6px}.tsw-row-user .tsw-bubble{background:var(--tsw-cyan);color:var(--tsw-on-cyan);border-top-right-radius:6px;font-weight:600}.tsw-badge{color:var(--tsw-cyan-soft);background:#00e5ff1a;border:1px solid #7defff73;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.tsw-badge svg{width:14px;height:14px}.tsw-welcome-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.tsw-bust{aspect-ratio:4/3;flex:none;width:128px;display:block}.tsw-bust img{width:100%;height:auto;display:block}.tsw-greet{margin:0;font-family:Outfit,Plus Jakarta Sans,ui-sans-serif,system-ui,sans-serif;font-size:20px;font-weight:700;line-height:1.25}.tsw-welcome-text{color:var(--tsw-text-muted);margin:0}.tsw-section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--tsw-text-muted);margin:14px 0 8px;font-size:12px;font-weight:700}.tsw-chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tsw-chip,.tsw-link{min-height:44px;color:var(--tsw-text);font:inherit;text-align:left;cursor:pointer;background:#00e5ff0f;border:1px solid #00e5ff8c;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}.tsw-chip:hover,.tsw-link:hover{border-color:var(--tsw-cyan);background:#00e5ff29}.tsw-chip:disabled{opacity:.55;cursor:not-allowed}.tsw-link{color:var(--tsw-cyan-soft);background:#00e5ff24}.tsw-link svg{flex:none;width:14px;height:14px}.tsw-more{min-height:44px;color:var(--tsw-cyan-soft);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;margin-top:6px;padding:8px 14px;font-size:14px;font-weight:700;display:inline-flex}.tsw-more:hover{background:#00e5ff1a}.tsw-more-chevron{width:16px;height:16px;transition:transform .15s}.tsw-more[aria-expanded=true] .tsw-more-chevron{transform:rotate(180deg)}.tsw-actions{flex-wrap:wrap;gap:8px;display:flex}.tsw-typing{border:1px solid var(--tsw-border);background:var(--tsw-bg-bubble);border-radius:6px 16px 16px;align-items:center;gap:5px;padding:14px 16px;display:inline-flex}.tsw-dot{background:var(--tsw-cyan);border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite tsw-bounce}.tsw-dot:nth-child(2){animation-delay:.15s}.tsw-dot:nth-child(3){animation-delay:.3s}@keyframes tsw-bounce{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}.tsw-notice{border:1px solid var(--tsw-warn-border);background:var(--tsw-warn-bg);color:var(--tsw-warn-text);border-radius:14px;padding:12px 14px}.tsw-notice-error{border-color:var(--tsw-error-border);background:var(--tsw-error-bg);color:var(--tsw-error-text)}.tsw-notice p{margin:0 0 10px}.tsw-notice .tsw-actions{margin:0}.tsw-btn{background:var(--tsw-cyan);min-height:44px;color:var(--tsw-on-cyan);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:8px 16px;font-size:14px;font-weight:700;display:inline-flex}.tsw-btn:disabled{color:inherit;opacity:.8;cursor:not-allowed;background:0 0;border-color:currentColor}.tsw-offline{background:var(--tsw-error-bg);border-bottom:1px solid var(--tsw-error-border);color:var(--tsw-error-text);margin:0;padding:6px 16px;font-size:12.5px;font-weight:600}.tsw-footer{border-top:1px solid var(--tsw-border);background:var(--tsw-bg-header);padding:10px 12px 12px}.tsw-form{align-items:flex-end;gap:8px;display:flex}.tsw-input{resize:none;border:1px solid var(--tsw-border-ui);background:var(--tsw-bg-input);min-width:0;min-height:44px;max-height:120px;color:var(--tsw-text);font:inherit;border-radius:14px;flex:1;padding:10px 12px;font-size:16px;line-height:1.4}.tsw-input::placeholder{color:var(--tsw-text-muted);opacity:1}.tsw-send{background:var(--tsw-cyan);width:44px;height:44px;color:var(--tsw-on-cyan);cursor:pointer;border:0;border-radius:14px;flex:none;place-items:center;display:grid}.tsw-send:disabled{color:#8fa3ba;cursor:not-allowed;background:#1d3550}.tsw-send svg{width:22px;height:22px}.tsw-count{text-align:right;color:var(--tsw-text-muted);margin:4px 4px 0;font-size:12px}.tsw-privacy{color:var(--tsw-text-muted);margin:8px 2px 0;font-size:12px;line-height:1.4}.tsw-privacy a{color:var(--tsw-cyan-soft);font-weight:600}.tsw-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tsw-root :focus-visible{outline:3px solid var(--tsw-focus);outline-offset:2px;box-shadow:0 0 0 5px #00e5ff8c}.tsw-input:focus-visible{border-color:var(--tsw-cyan)}@media (prefers-reduced-motion:reduce){.tsw-more-chevron,.tsw-panel,.tsw-dot,.tsw-avatar[data-state],.tsw-status[data-state] .tsw-status-dot,.tsw-status-dot,.tsw-launcher{transition:none;animation:none}.tsw-launcher:hover{transform:none}}@media (forced-colors:active){.tsw-panel,.tsw-bubble,.tsw-chip,.tsw-link,.tsw-notice,.tsw-input,.tsw-launcher,.tsw-btn,.tsw-send{border:1px solid canvastext}}@media print{.tsw-root{display:none}}
