.dc-ai-fab{position:fixed;touch-action:none;user-select:none;z-index:2000;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));width:58px;height:58px;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent,#8aa8ff) 78%,transparent);color:var(--text,#dcefea);background:radial-gradient(circle at 35% 25%,color-mix(in srgb,var(--accent,#8aa8ff) 24%,var(--panel-2,#0f2c37)),var(--bg,#05141a) 68%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent,#8aa8ff) 18%,transparent),0 0 25px color-mix(in srgb,var(--accent,#8aa8ff) 35%,transparent),inset 0 0 20px color-mix(in srgb,var(--accent,#8aa8ff) 17%,transparent);cursor:pointer;font-size:25px;transition:transform .2s,box-shadow .2s}.dc-ai-fab:hover{transform:translateY(-3px);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent,#8aa8ff) 32%,transparent),0 0 34px color-mix(in srgb,var(--accent,#8aa8ff) 54%,transparent),inset 0 0 22px color-mix(in srgb,var(--accent,#8aa8ff) 20%,transparent)}.dc-ai-orbit{display:grid;place-items:center;width:100%;height:100%;text-shadow:0 0 14px var(--accent,#8aa8ff)}
.dc-ai-overlay{position:fixed;z-index:1999;inset:0;display:grid;place-items:start center;overflow:auto;padding:max(16px,env(safe-area-inset-top)) 14px max(16px,env(safe-area-inset-bottom));background:rgba(1,8,14,.38);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);animation:dc-ai-fade .18s ease-out}.dc-ai-overlay[hidden],.dc-ai-fab[hidden]{display:none}
.dc-ai-panel{--ai-cyan:var(--accent,#8aa8ff);display:flex;flex-direction:column;width:min(500px,100%);height:min(680px,calc(100dvh - 32px));min-height:280px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent,#8aa8ff) 40%,transparent);border-radius:24px;background:color-mix(in srgb,var(--panel,#0a2029) 76%,transparent);color:var(--text,#dcefea);-webkit-backdrop-filter:blur(30px) saturate(155%);backdrop-filter:blur(30px) saturate(155%);box-shadow:0 24px 90px rgba(0,0,0,.42),0 0 38px color-mix(in srgb,var(--accent,#8aa8ff) 15%,transparent),inset 0 0 0 1px rgba(255,255,255,.035);animation:dc-ai-rise .23s cubic-bezier(.2,.8,.2,1)}.dc-ai-moved{position:fixed!important;transform:none!important;margin:0!important}
.dc-ai-head{position:relative;flex:none;min-height:62px;display:flex;align-items:center;justify-content:space-between;padding:8px 16px;border-bottom:1px solid color-mix(in srgb,var(--line,#1c3d4a) 70%,transparent);background:linear-gradient(110deg,color-mix(in srgb,var(--accent,#8aa8ff) 9%,transparent),transparent 58%)}.dc-ai-brand,.dc-ai-head-actions{display:flex;align-items:center;gap:10px}.dc-ai-mark{display:grid;place-items:center;width:36px;height:36px;border:1px solid color-mix(in srgb,var(--accent,#8aa8ff) 42%,transparent);border-radius:12px;color:var(--ai-cyan);background:color-mix(in srgb,var(--accent,#8aa8ff) 9%,transparent);box-shadow:0 0 20px color-mix(in srgb,var(--accent,#8aa8ff) 13%,transparent);font-size:20px}.dc-ai-brand strong,.dc-ai-brand small{display:block}.dc-ai-brand strong{font-size:14px;letter-spacing:.01em}.dc-ai-brand small{margin-top:3px;color:var(--text-3,#7fa0a6);font:10px var(--f-mono,monospace);letter-spacing:.04em}.dc-ai-iconbtn{width:36px;height:36px;display:grid;place-items:center;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--text-2,#a4c0c4);cursor:pointer;touch-action:manipulation}.dc-ai-iconbtn:hover,.dc-ai-iconbtn.active{border-color:color-mix(in srgb,var(--accent,#8aa8ff) 23%,transparent);background:color-mix(in srgb,var(--accent,#8aa8ff) 8%,transparent);color:var(--ai-cyan)}
.dc-ai-top{flex:none;padding:13px 14px 10px;border-bottom:1px solid color-mix(in srgb,var(--line,#1c3d4a) 55%,transparent)}.dc-ai-compose{display:flex;align-items:center;gap:8px;min-height:58px;padding:7px 8px 7px 15px;border:1px solid color-mix(in srgb,var(--accent,#8aa8ff) 40%,rgba(255,255,255,.18));border-radius:17px;background:linear-gradient(135deg,color-mix(in srgb,var(--panel-2,#0f2c37) 55%,rgba(255,255,255,.10)),color-mix(in srgb,var(--bg,#05141a) 48%,rgba(255,255,255,.035)));-webkit-backdrop-filter:blur(24px) saturate(165%);backdrop-filter:blur(24px) saturate(165%);box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 8px 28px rgba(0,0,0,.14),0 0 22px color-mix(in srgb,var(--accent,#8aa8ff) 10%,transparent);transition:border-color .16s,box-shadow .16s}.dc-ai-compose:focus-within{border-color:color-mix(in srgb,var(--accent,#8aa8ff) 76%,white);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 0 0 2px color-mix(in srgb,var(--accent,#8aa8ff) 12%,transparent),0 0 25px color-mix(in srgb,var(--accent,#8aa8ff) 18%,transparent)}.dc-ai-input{flex:1;width:0;min-width:0;min-height:38px;max-height:110px;resize:none;overflow-y:auto;padding:9px 0;border:0;outline:0;background:transparent;color:var(--text,#dcefea);font-family:inherit;font-size:14px;line-height:1.45;scrollbar-width:thin}.dc-ai-input::placeholder{color:var(--text-3,#7fa0a6)}.dc-ai-compose-actions{display:flex;align-items:center;gap:6px;flex:none}.dc-ai-tool,.dc-ai-send{flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;cursor:pointer;touch-action:manipulation;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s}.dc-ai-tool{border:1px solid color-mix(in srgb,var(--line,#1c3d4a) 70%,transparent);background:rgba(255,255,255,.045);color:var(--text-2,#a4c0c4)}.dc-ai-tool:hover,.dc-ai-tool.recording{border-color:color-mix(in srgb,var(--accent,#8aa8ff) 58%,transparent);background:color-mix(in srgb,var(--accent,#8aa8ff) 15%,transparent);color:var(--ai-cyan)}.dc-ai-tool.recording{animation:dc-ai-pulse 1.2s ease-in-out infinite}.dc-ai-send{border:1px solid color-mix(in srgb,var(--accent,#8aa8ff) 82%,white);background:linear-gradient(145deg,color-mix(in srgb,var(--accent,#8aa8ff) 90%,white),var(--accent,#8aa8ff));color:var(--accent-ink,#06121f);box-shadow:0 3px 16px color-mix(in srgb,var(--accent,#8aa8ff) 27%,transparent)}.dc-ai-send:hover{box-shadow:0 5px 22px color-mix(in srgb,var(--accent,#8aa8ff) 40%,transparent);transform:translateY(-1px)}.dc-ai-send:disabled{opacity:.48;cursor:wait;transform:none}.dc-ai-foot{display:flex;justify-content:space-between;gap:8px;padding:9px 2px 0;color:var(--text-3,#7fa0a6);font:9px var(--f-mono,monospace)}.dc-ai-hint{text-align:right}
.dc-ai-messages{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:12px;padding:18px 16px 20px;scrollbar-width:thin;scrollbar-color:var(--line,#1c3d4a) transparent}.dc-ai-welcome{margin:auto 0;max-width:360px;padding:16px 17px;border:1px solid color-mix(in srgb,var(--line,#1c3d4a) 70%,rgba(255,255,255,.16));border-radius:19px;background:linear-gradient(145deg,rgba(255,255,255,.075),color-mix(in srgb,var(--panel,#0a2029) 44%,transparent));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 30px rgba(0,0,0,.11)}.dc-ai-eyebrow{color:var(--ai-cyan);font:9px var(--f-mono,monospace);letter-spacing:.14em}.dc-ai-welcome h2{margin:10px 0 7px;font-size:22px;line-height:1.18;letter-spacing:-.035em}.dc-ai-welcome p{margin:0;color:var(--text-2,#a4c0c4);font-size:12px;line-height:1.6}.dc-ai-row{display:flex;max-width:92%;animation:dc-ai-rise .18s ease-out}.dc-ai-row.user{align-self:flex-end;justify-content:flex-end}.dc-ai-row.assistant{align-self:flex-start}.dc-ai-bubble{padding:11px 14px;border:1px solid color-mix(in srgb,var(--line,#1c3d4a) 65%,rgba(255,255,255,.2));border-radius:17px;background:linear-gradient(145deg,rgba(255,255,255,.085),color-mix(in srgb,var(--panel-2,#0f2c37) 60%,rgba(255,255,255,.035)));-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 20px rgba(0,0,0,.10);color:var(--text,#dcefea);font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.dc-ai-row.user .dc-ai-bubble{border-color:color-mix(in srgb,var(--accent,#8aa8ff) 40%,rgba(255,255,255,.2));border-bottom-right-radius:6px;background:linear-gradient(140deg,color-mix(in srgb,var(--accent,#8aa8ff) 18%,rgba(255,255,255,.10)),color-mix(in srgb,var(--panel-2,#0f2c37) 58%,transparent))}.dc-ai-row.assistant .dc-ai-bubble{border-bottom-left-radius:6px}.dc-ai-row.pending .dc-ai-bubble{color:var(--text-3,#7fa0a6);font-style:italic}.dc-ai-row.error .dc-ai-bubble{border-color:color-mix(in srgb,var(--bad,#d03b3b) 40%,var(--line));color:var(--bad-text,#ff7b7b)}.dc-ai-action{padding:8px 4px}.dc-ai-approve{padding:9px 13px;border:1px solid color-mix(in srgb,var(--accent,#8aa8ff) 70%,transparent);border-radius:10px;background:var(--accent,#8aa8ff);color:var(--accent-ink,#06121f);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;box-shadow:0 0 18px color-mix(in srgb,var(--accent,#8aa8ff) 22%,transparent)}.dc-ai-approve:disabled{opacity:.55;cursor:wait}
@keyframes dc-ai-fade{from{opacity:0}to{opacity:1}}@keyframes dc-ai-rise{from{opacity:0;transform:translateY(7px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes dc-ai-pulse{50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--accent,#8aa8ff) 13%,transparent)}}
@media(max-width:560px){.dc-ai-overlay{padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom));place-items:start center}.dc-ai-panel{width:min(500px,100%);height:min(72svh,640px);height:min(72dvh,640px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 20px);min-height:260px;border-radius:21px}.dc-ai-panel.expanded{height:min(84dvh,720px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 20px)}.dc-ai-head{min-height:58px;padding:8px 12px;touch-action:none}.dc-ai-head:before{content:"";position:absolute;top:4px;left:50%;width:30px;height:2px;border-radius:9px;background:var(--text-3,#7fa0a6);transform:translateX(-50%);opacity:.55}.dc-ai-top{padding:10px 10px 8px}.dc-ai-compose{min-height:56px;padding:6px 7px 6px 12px;gap:5px;border-radius:15px}.dc-ai-input{font-size:16px;line-height:1.4;max-height:130px}.dc-ai-tool,.dc-ai-send{width:38px;height:38px;border-radius:11px}.dc-ai-compose-actions{gap:5px}.dc-ai-foot{font-size:8px}.dc-ai-messages{padding:14px 12px 16px;gap:10px}.dc-ai-welcome{padding:14px;border-radius:17px}.dc-ai-welcome h2{font-size:20px}.dc-ai-row{max-width:96%}.dc-ai-bubble{padding:10px 12px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.dc-ai-overlay,.dc-ai-panel,.dc-ai-row{animation:none}.dc-ai-fab,.dc-ai-iconbtn,.dc-ai-compose,.dc-ai-tool,.dc-ai-send{transition:none}.dc-ai-tool.recording{animation:none}}
