.kt-assistant { position:fixed; right:24px; bottom:max(24px,env(safe-area-inset-bottom)); z-index:9000; font-size:16px; line-height:1.5; }
.kt-assistant [hidden] { display:none !important; }
.kt-assistant button,.kt-assistant input,.kt-assistant textarea,.kt-assistant select { font:inherit; }
.kt-assistant button { cursor:pointer; }
.assistant-launcher { display:flex; align-items:center; gap:10px; min-height:56px; padding:12px 20px; border:1px solid rgba(255,255,255,.3); border-radius:30px; background:linear-gradient(115deg,#2851b9,#7540d3); color:white; box-shadow:0 8px 32px rgba(74,55,175,.3); font-weight:650; }
.assistant-launcher > span:first-child { font-size:26px; }
.assistant-launcher-hint { font-size:14px; font-weight:400; opacity:.9; border-left:1px solid #ffffff40; padding-left:10px; }
.assistant-panel { position:absolute; right:0; bottom:72px; display:flex; flex-direction:column; width:min(440px,calc(100vw - 32px)); height:min(700px,calc(100dvh - 120px)); border:1px solid var(--border-strong); border-radius:22px; background:var(--card-solid); color:var(--text-primary); box-shadow:0 24px 90px #0006; overflow:hidden; }
.assistant-header { display:flex; align-items:center; gap:12px; padding:20px; border-bottom:1px solid var(--border); background:linear-gradient(120deg,rgba(47,210,255,.08),rgba(138,92,255,.12)); }
.assistant-avatar { display:grid; place-items:center; width:42px; height:42px; flex-shrink:0; border-radius:13px; background:var(--gradient); color:white; font-size:28px; }
.assistant-header h2 { font-size:18px; line-height:1.3; letter-spacing:-.02em; }
.assistant-header p { margin-top:3px; font-size:14px; line-height:1.4; }
.assistant-close { margin-left:auto; flex-shrink:0; width:36px; height:36px; border:1px solid var(--border); border-radius:50%; background:var(--bg-secondary); color:var(--text-primary); font-size:24px !important; }
.assistant-tabs { display:grid; grid-template-columns:1fr 1fr; gap:6px; padding:12px 16px; border-bottom:1px solid var(--border); }
.assistant-tabs button { min-height:42px; border:1px solid transparent; border-radius:8px; color:var(--text-secondary); background:transparent; font-size:14px; }
.assistant-tabs [aria-pressed=true] { color:var(--text-primary); border-color:var(--border-strong); background:var(--bg-tertiary); }
.assistant-chat-view { display:flex; flex:1; flex-direction:column; min-height:0; }
.assistant-messages { flex:1; min-height:100px; overflow:auto; padding:18px; overscroll-behavior:contain; }
.assistant-bubble { max-width:94%; padding:13px 15px; margin-bottom:14px; border:1px solid var(--border); border-radius:14px 14px 14px 4px; background:var(--bg-tertiary); overflow-wrap:anywhere; }
.assistant-bubble p { white-space:pre-wrap; color:var(--text-primary); font-size:15px; line-height:1.65; }
.assistant-bubble.from-user { margin-left:auto; background:rgba(138,92,255,.13); border-color:rgba(138,92,255,.3); border-radius:14px 14px 4px 14px; }
.assistant-bubble a,.assistant-bubble button { display:inline-block; margin-top:10px; padding:8px 0; border:0; color:var(--cyan); background:transparent; font-size:14px; text-decoration:underline; text-underline-offset:3px; }
.assistant-shortcuts { display:flex; flex-wrap:wrap; gap:6px; padding:0 16px 12px; }
.assistant-shortcuts button { padding:8px 10px; border:1px solid var(--border-strong); border-radius:20px; background:transparent; color:var(--text-secondary); font-size:13px; }
.assistant-chat-form { display:flex; gap:8px; padding:0 16px 14px; }
.assistant-chat-form input { flex:1; min-width:0; padding:12px; border:1px solid var(--border-strong); border-radius:10px; color:var(--text-primary); background:var(--bg-secondary); }
.assistant-chat-form button { flex-shrink:0; width:46px; border:0; border-radius:10px; color:white; background:#7141c6; font-size:24px; }
.assistant-chat-form button:disabled { opacity:.5; cursor:wait; }
.assistant-email-view { min-height:0; flex:1; overflow:auto; padding:18px; overscroll-behavior:contain; }
.assistant-email-view label { display:block; font-size:14px; font-weight:600; margin-bottom:14px; }
.assistant-email-view label span { font-weight:400; color:var(--text-secondary); }
.assistant-email-view input,.assistant-email-view select,.assistant-email-view textarea { display:block; width:100%; min-width:0; margin-top:6px; padding:11px; border:1px solid var(--border-strong); border-radius:8px; color:var(--text-primary); background:var(--bg-secondary); font-size:16px; }
.assistant-email-view textarea { resize:vertical; line-height:1.5; }
.assistant-email-view small { display:block; margin-top:12px; color:var(--text-secondary); font-size:13px; line-height:1.5; }
.assistant-field-pair { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.assistant-intro { font-size:16px; color:var(--text-primary); margin-bottom:16px; }
.assistant-recipient { font-size:14px; margin-bottom:14px; overflow-wrap:anywhere; }
.assistant-primary { display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:44px; padding:11px 15px; border:0; border-radius:9px; background:linear-gradient(110deg,#305ebc,#7841c8); color:white; }
.assistant-draft-form > .assistant-primary { width:100%; }
.assistant-draft-actions { display:flex; flex-wrap:wrap; gap:8px; }
.assistant-copy,.assistant-edit { padding:10px 12px; border:1px solid var(--border-strong); border-radius:9px; background:transparent; color:var(--text-primary); font-size:14px !important; }
.assistant-status { padding:0 18px 10px; font-size:13px; line-height:1.4; }
.assistant-status:empty { display:none; }
.assistant-footer { display:flex; justify-content:space-between; align-items:center; gap:8px; padding:10px 16px; border-top:1px solid var(--border); font-size:12px; color:var(--text-secondary); }
.assistant-reset { border:0; padding:6px 0; color:var(--text-secondary); background:transparent; font-size:12px !important; text-decoration:underline; text-underline-offset:3px; }
.assistant-ai-toggle { padding:0 18px 12px; font-size:14px; }
.assistant-ai-toggle small { display:block; font-size:12px; color:var(--text-secondary); }
.assistant-sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media (max-width:600px) {
    .kt-assistant { right:12px; bottom:max(12px,env(safe-area-inset-bottom)); }
    .assistant-launcher-hint { display:none; }
    .assistant-panel { width:calc(100vw - 24px); bottom:68px; height:min(680px,calc(100dvh - 100px)); }
    .assistant-header { padding:14px 16px; }
}
@media (max-width:350px) { .assistant-field-pair { grid-template-columns:1fr; gap:0; } }
@media (prefers-reduced-motion:no-preference) { .assistant-panel { animation:assistant-appear .2s ease-out; } @keyframes assistant-appear { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } } }
