.tmchat{position:fixed;right:clamp(12px,4vw,28px);bottom:clamp(12px,4vw,28px);z-index:9999;font-family:var(--font-jp, sans-serif)}.tmchat-launcher{display:inline-flex;align-items:center;gap:9px;padding:12px 18px 12px 14px;border:none;border-radius:999px;background:var(--accent, #5b9bd5);color:var(--on-accent, #fff);font-size:.95rem;font-weight:700;cursor:pointer;box-shadow:0 8px 26px #2f629657;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.tmchat-launcher:hover{background:var(--accent-hover, #3f7cba);transform:translateY(-2px);box-shadow:0 12px 30px #2f62966b}.tmchat-launcher:focus-visible{outline:3px solid var(--focus-ring, rgba(91,155,213,.45));outline-offset:2px}.tmchat-launcher-mark{display:block;border-radius:50%;background:#fff;padding:2px}.tmchat[data-open=true] .tmchat-launcher{display:none}.tmchat-panel{position:absolute;right:0;bottom:0;width:min(380px,calc(100vw - 24px));height:min(560px,calc(100vh - 24px));display:none;flex-direction:column;background:var(--surface-card, #fff);border:1px solid var(--border, #dce0e6);border-radius:18px;box-shadow:0 24px 60px #0c0f143d;overflow:hidden}.tmchat[data-open=true] .tmchat-panel{display:flex;animation:tmchat-in .2s ease}@keyframes tmchat-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.tmchat[data-open=true] .tmchat-panel{animation:none}}.tmchat-head{display:flex;align-items:center;gap:11px;padding:14px 14px 14px 16px;background:var(--surface-dark, #0c0f14);color:var(--text-on-dark, #eef1f4)}.tmchat-head-mark{display:block;border-radius:50%;background:#fff;padding:3px;flex:none}.tmchat-head-text{display:flex;flex-direction:column;line-height:1.3;margin-right:auto}.tmchat-title{font-weight:700;font-size:.98rem}.tmchat-sub{font-size:.72rem;color:var(--text-on-dark-muted, #9aa4b1)}.tmchat-close{flex:none;display:grid;place-items:center;width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--text-on-dark, #eef1f4);cursor:pointer}.tmchat-close:hover{background:#ffffff1f}.tmchat-close:focus-visible{outline:2px solid var(--text-on-dark, #eef1f4);outline-offset:1px}.tmchat-log{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--surface-subtle, #f6f8fa)}.tmchat-msg{max-width:86%;padding:10px 13px;border-radius:14px;font-size:.9rem;line-height:1.7;white-space:pre-wrap;word-break:break-word}.tmchat-msg a{color:inherit;text-decoration:underline}.tmchat-msg-bot{align-self:flex-start;background:var(--surface-card, #fff);color:var(--text-body, #2c3744);border:1px solid var(--border, #dce0e6);border-bottom-left-radius:5px}.tmchat-msg-user{align-self:flex-end;background:var(--accent, #5b9bd5);color:var(--on-accent, #fff);border-bottom-right-radius:5px}.tmchat-msg-error{align-self:flex-start;background:#fdeceb;color:#a3322a;border:1px solid #f4c8c4;border-bottom-left-radius:5px}.tmchat-chips{display:flex;flex-wrap:wrap;gap:7px;align-self:flex-start;max-width:100%}.tmchat-chip{padding:7px 12px;border:1px solid var(--border-strong, #b7bec8);border-radius:999px;background:var(--surface-card, #fff);color:var(--accent-press, #2f6296);font-size:.82rem;font-weight:600;cursor:pointer;transition:background .14s ease,border-color .14s ease}.tmchat-chip:hover{background:var(--blue-50, #f1f7fc);border-color:var(--accent, #5b9bd5)}.tmchat-chip:focus-visible{outline:2px solid var(--focus-ring, rgba(91,155,213,.45));outline-offset:1px}.tmchat-typing{display:inline-flex;gap:4px;align-items:center}.tmchat-typing span{width:6px;height:6px;border-radius:50%;background:var(--ink-400, #8a94a1);animation:tmchat-blink 1.2s infinite ease-in-out}.tmchat-typing span:nth-child(2){animation-delay:.18s}.tmchat-typing span:nth-child(3){animation-delay:.36s}@keyframes tmchat-blink{0%,80%,to{opacity:.25}40%{opacity:1}}.tmchat-form{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--border, #dce0e6);background:var(--surface-card, #fff)}.tmchat-text{flex:1;resize:none;max-height:120px;padding:9px 12px;border:1px solid var(--border-strong, #b7bec8);border-radius:12px;font-family:inherit;font-size:.9rem;line-height:1.5;color:var(--text-strong, #0c0f14)}.tmchat-text:focus-visible{outline:none;border-color:var(--accent, #5b9bd5);box-shadow:0 0 0 3px var(--focus-ring, rgba(91,155,213,.45))}.tmchat-send{flex:none;display:grid;place-items:center;width:40px;height:40px;border:none;border-radius:12px;background:var(--accent, #5b9bd5);color:var(--on-accent, #fff);cursor:pointer;transition:background .14s ease}.tmchat-send:hover{background:var(--accent-hover, #3f7cba)}.tmchat-send:disabled{background:var(--ink-300, #b7bec8);cursor:not-allowed}.tmchat-send:focus-visible{outline:2px solid var(--focus-ring, rgba(91,155,213,.45));outline-offset:2px}.tmchat-foot{margin:0;padding:0 14px 12px;font-size:.68rem;color:var(--text-muted, #5f6b7a);background:var(--surface-card, #fff);text-align:center}.tmchat-foot a{color:var(--accent-press, #2f6296)}
