:root{--color-neutral-950: #0f0f0f;--color-neutral-900: #1a1a1a;--color-neutral-850: #1f1f1f;--color-neutral-800: #252525;--color-neutral-700: #303030;--color-neutral-600: #333333;--color-neutral-400: #666666;--color-neutral-300: #a0a0a0;--color-neutral-100: #e5e5e5;--color-brand-400: #818cf8;--color-brand-500: #6366f1;--color-brand-600: #4f46e5;--color-brand-700: #4338ca;--color-brand-800: #3730a3;--color-brand-900: #312e81;--color-brand-950: #1e1b4b;--color-purple-500: #8b5cf6;--color-purple-400: #a855f7;--color-success-400: #4ade80;--color-success-500: #22c55e;--color-success-600: #16a34a;--color-success-900: rgba(34, 197, 94, .15);--color-error-400: #f87171;--color-error-500: #ef4444;--color-error-600: #dc2626;--color-error-900: rgba(239, 68, 68, .15);--color-warning-400: #fbbf24;--color-warning-500: #f59e0b;--color-warning-600: #d97706;--color-warning-700: #b45309;--color-warning-900: rgba(245, 158, 11, .15);--warning-text: var(--color-warning-400);--color-info-500: #3b82f6;--color-user-500: #2563eb;--color-user-text: #ffffff;--color-user-text-secondary: rgba(255, 255, 255, .85);--color-user-overlay: rgba(255, 255, 255, .2);--bg-primary: var(--color-neutral-950);--bg-secondary: var(--color-neutral-900);--bg-tertiary: var(--color-neutral-800);--bg-hover: var(--color-neutral-700);--bg-assistant: var(--color-neutral-850);--bg-user: var(--color-user-500);--text-primary: var(--color-neutral-100);--text-secondary: var(--color-neutral-300);--text-muted: var(--color-neutral-400);--accent: var(--color-brand-500);--accent-hover: var(--color-brand-400);--accent-muted: rgba(99, 102, 241, .15);--border: var(--color-neutral-600);--border-light: var(--color-neutral-700);--success: var(--color-success-500);--error: var(--color-error-500);--error-hover: var(--color-error-600);--warning: var(--color-warning-500);--overlay-bg: rgba(0, 0, 0, .8);--lightbox-bg: rgba(0, 0, 0, .95);--code-bg: var(--bg-tertiary);--code-inline-bg: rgba(0, 0, 0, .3);--gradient-assistant-avatar: linear-gradient( 135deg, var(--color-brand-500) 0%, var(--color-purple-500) 50%, var(--color-purple-400) 100% );--gradient-table-header: linear-gradient( 135deg, var(--bg-tertiary) 0%, var(--bg-secondary) 100% );--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .3);--shadow-glow-accent: 0 0 12px rgba(139, 92, 246, .5);--shadow-scroll-btn: 0 2px 12px rgba(0, 0, 0, .4);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 10px;--radius-full: 9999px;--radius: var(--radius-md);--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-2-5: 10px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono: "SF Mono", "Consolas", "Monaco", monospace;--font-size-2xs: .5rem;--font-size-xs: .6875rem;--font-size-sm: .75rem;--font-size-badge: .7rem;--font-size-base: .875rem;--font-size-md: .9375rem;--font-size-lg: 1rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.25rem;--font-size-3xl: 1.5rem;--font-size-4xl: 2rem;--line-height: 1.5;--sidebar-width: 280px;--header-height: 56px;--input-height: 60px;--message-max-width: 800px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--z-dropdown: 50;--z-sidebar: 50;--z-overlay: 40;--z-banner: 150;--z-modal-backdrop: 200;--z-lightbox: 300;--z-popup: 300;--z-toast: 10000;--z-modal: 10001;--shadow: var(--shadow-md);--user-bg: var(--bg-user);--assistant-bg: var(--bg-assistant)}[data-theme=light]{--color-neutral-950: #ffffff;--color-neutral-900: #f9fafb;--color-neutral-850: #f3f4f6;--color-neutral-800: #e5e7eb;--color-neutral-700: #d1d5db;--color-neutral-600: #d1d5db;--color-neutral-400: #6b7280;--color-neutral-300: #4b5563;--color-neutral-100: #111827;--accent-hover: var(--color-brand-600);--accent-muted: rgba(99, 102, 241, .1);--color-success-900: rgba(34, 197, 94, .12);--color-error-900: rgba(239, 68, 68, .12);--color-warning-900: rgba(245, 158, 11, .12);--color-brand-900: rgba(99, 102, 241, .12);--warning-text: var(--color-warning-700);--overlay-bg: rgba(0, 0, 0, .5);--lightbox-bg: rgba(0, 0, 0, .9);--code-bg: #f3f4f6;--code-inline-bg: rgba(0, 0, 0, .06);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .15);--shadow-glow-accent: 0 0 12px rgba(99, 102, 241, .3);--shadow-scroll-btn: 0 2px 12px rgba(0, 0, 0, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100vh;overflow:hidden}body{font-family:var(--font-family);font-size:var(--font-size-lg);line-height:var(--line-height);background-color:var(--bg-primary);color:var(--text-primary)}.hidden{display:none!important}.text-muted{color:var(--text-muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--bg-tertiary);border-radius:var(--radius-xs)}::-webkit-scrollbar-thumb:hover{background-color:var(--bg-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background-color:var(--accent);color:#fff}#app{display:flex;position:fixed;inset:0;overflow:hidden}.sidebar{width:var(--sidebar-width);background-color:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;align-self:stretch;padding-top:env(safe-area-inset-top,0)}.sidebar-header{padding:var(--space-3) var(--space-3) var(--space-2);flex-shrink:0}.sidebar-header h1{font-size:var(--font-size-base);font-weight:600;margin-bottom:var(--space-2)}.sidebar-footer{padding:var(--space-4);border-top:1px solid var(--border);flex-shrink:0}.sidebar-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:var(--z-overlay)}.sidebar-overlay.visible{display:block}.main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;position:relative;align-self:stretch}.mobile-header{display:none;height:calc(var(--header-height) + env(safe-area-inset-top,0));padding:env(safe-area-inset-top,0) var(--space-4) 0;background-color:var(--bg-secondary);border-bottom:1px solid var(--border);align-items:center;justify-content:space-between;flex-shrink:0;position:relative}.mobile-header span{position:absolute;left:50%;transform:translate(-50%);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 120px);pointer-events:none}.messages{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);position:relative;scroll-behavior:auto}.input-area{padding:var(--space-4) var(--space-6) var(--space-6);padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0));background-color:var(--bg-primary);flex-shrink:0}.input-wrapper{max-width:var(--message-max-width);margin:0 auto}@media(max-width:768px){.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:var(--z-sidebar);transform:translate(-100%);transition:transform var(--transition-slow)}.sidebar.open{transform:translate(0)}.mobile-header{display:flex}.messages{padding:var(--space-4)}.input-area{padding:var(--space-3) var(--space-4);padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0))}}.btn{padding:10px var(--space-4);border-radius:var(--radius-sm);border:none;cursor:pointer;font-size:var(--font-size-base);font-weight:500;transition:all var(--transition-fast)}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background-color:var(--accent);color:#fff;width:100%;padding:var(--space-2) var(--space-3);display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-primary svg{width:18px;height:18px;flex-shrink:0}.btn-primary:hover{background-color:var(--accent-hover)}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary)}.btn-secondary:hover{background-color:var(--bg-hover)}.btn-icon{background:none;border:none;color:var(--text-secondary);font-size:var(--font-size-2xl);cursor:pointer;padding:var(--space-2);display:flex;align-items:center;justify-content:center}.btn-icon svg{width:24px;height:24px}.btn-toolbar{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1-5);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0}.btn-toolbar:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.btn-toolbar svg{width:18px;height:18px}.btn-toolbar.active{color:var(--accent)}.btn-toolbar.active:hover{background-color:var(--accent-muted);color:var(--accent-hover)}.btn-send{background-color:var(--accent);color:#fff;width:36px;height:36px;padding:0;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:2px}.btn-send svg{width:16px;height:16px;display:block}.btn-send:disabled{background-color:var(--bg-tertiary);color:var(--text-muted)}.btn-stop{background-color:var(--error);color:#fff;width:36px;height:36px;padding:0;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:2px;border:none;cursor:pointer;transition:background-color var(--transition-fast);animation:stop-pulse 1.5s ease-in-out infinite}@keyframes stop-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.btn-stop svg{width:14px;height:14px;display:block}.btn-stop:hover{background-color:var(--error-hover)}.btn-logout{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1) var(--space-2);font-size:var(--font-size-lg);border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0;display:flex;align-items:center;justify-content:center}.btn-logout svg{width:18px;height:18px}.btn-logout:hover{background-color:var(--bg-hover);color:var(--text-primary)}.btn-icon-action{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0;display:flex;align-items:center;justify-content:center}.btn-icon-action svg{width:18px;height:18px}.btn-icon-action:hover{background-color:var(--bg-hover);color:var(--text-primary)}.btn-monthly-cost{background:none;border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;padding:var(--space-1-5) var(--space-3);font-size:var(--font-size-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast);flex:1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);text-align:left}.btn-monthly-cost:hover{background-color:var(--bg-hover);border-color:var(--accent);color:var(--text-primary)}.btn-monthly-cost .cost-label{color:var(--text-muted)}.btn-monthly-cost .cost-value{font-weight:500;color:var(--text-primary)}.btn-voice{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-2);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.btn-voice:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.btn-voice svg{width:20px;height:20px}.btn-voice.recording{color:var(--error);animation:pulse-recording 1.5s ease-in-out infinite}.btn-voice.recording:hover{color:var(--error);background-color:#ef44441a}.btn-voice.hidden{display:none}@keyframes pulse-recording{0%,to{opacity:1}50%{opacity:.5}}.scroll-to-bottom{position:sticky;bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0));left:50%;transform:translate(-50%);width:36px;height:36px;border-radius:var(--radius-full);background-color:var(--bg-hover);border:1px solid var(--text-muted);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-scroll-btn);transition:opacity var(--transition-normal),transform var(--transition-normal),background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);z-index:20;opacity:1;margin-top:-52px;align-self:center;flex-shrink:0}.scroll-to-bottom:hover{background-color:var(--bg-tertiary);color:#fff;border-color:var(--text-secondary)}.scroll-to-bottom:active{transform:translate(-50%) scale(.95)}.scroll-to-bottom svg{width:18px;height:18px}.scroll-to-bottom.hidden{opacity:0;pointer-events:none}.scroll-to-bottom.streaming-paused{background-color:var(--accent);border-color:var(--accent);color:#fff;animation:scroll-button-pulse 1.5s ease-in-out infinite}.scroll-to-bottom.streaming-paused:hover{background-color:var(--accent-hover);border-color:var(--accent-hover)}@keyframes scroll-button-pulse{0%,to{box-shadow:var(--shadow-scroll-btn),0 0 #6366f166}50%{box-shadow:var(--shadow-scroll-btn),0 0 0 8px #6366f100}}.welcome-message{text-align:center;padding:var(--space-12) var(--space-6);color:var(--text-secondary)}.welcome-message h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-2);color:var(--text-primary)}.message{max-width:var(--message-max-width);width:100%;margin:0 auto;display:flex;gap:var(--space-4);flex-shrink:0}.message.user{flex-direction:row-reverse}.message-avatar{width:32px;height:32px;border-radius:var(--radius-full);background-color:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-base);flex-shrink:0;align-self:flex-start;margin-top:var(--space-2)}.message-avatar img{width:100%;height:100%;border-radius:var(--radius-full);object-fit:cover}.message-avatar svg{width:20px;height:20px}.message-avatar .ai-avatar-img{width:100%;height:100%;object-fit:contain}.message.assistant .message-avatar{background:var(--gradient-assistant-avatar);box-shadow:var(--shadow-glow-accent)}.message.user .message-avatar{background-color:var(--bg-user);color:var(--color-user-text)}.message-content{background-color:var(--bg-assistant);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);min-width:0;overflow-wrap:anywhere;word-break:break-word}.message.user .message-content{background-color:var(--bg-user);color:var(--color-user-text);width:fit-content;max-width:100%}.message-content-wrapper{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;flex:1}.message.user .message-content-wrapper{flex:0 1 auto;align-items:flex-end;max-width:calc(100% - 48px)}.message-actions{display:flex;align-items:center;gap:var(--space-2);opacity:0;transition:opacity var(--transition-fast)}.message:hover .message-actions{opacity:1}@media(hover:none){.message-actions{opacity:.6}}.message-time{font-size:var(--font-size-sm);color:var(--text-muted);white-space:nowrap}.message-copy-btn,.message-sources-btn,.message-imagegen-btn,.message-cost-btn,.message-speak-btn,.message-delete-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.message-copy-btn:hover,.message-sources-btn:hover,.message-imagegen-btn:hover,.message-cost-btn:hover,.message-speak-btn:hover{color:var(--accent);background-color:var(--bg-tertiary)}.message-delete-btn:hover{color:var(--color-error-400);background-color:var(--bg-tertiary)}.message-copy-btn.copied{color:var(--success)}.message-speak-btn.speaking{color:var(--color-error-400);animation:speak-pulse 1.5s ease-in-out infinite}@keyframes speak-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.message-copy-btn svg,.message-sources-btn svg,.message-imagegen-btn svg,.message-cost-btn svg,.message-speak-btn svg,.message-delete-btn svg{width:16px;height:16px}.message-imagegen-btn{padding:var(--space-1) var(--space-2)}.streaming-cursor{display:inline-block;width:8px;height:1.2em;background-color:var(--accent);margin-left:2px;vertical-align:text-bottom;animation:blink-cursor .8s step-end infinite}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.message-incomplete .message-content:after{content:"Response incomplete";display:flex;align-items:center;width:fit-content;margin-top:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) calc(var(--space-3) + 20px);background-color:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-sm);color:var(--warning);font-size:var(--font-size-sm);line-height:1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f59e0b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/%3E%3Cline x1='12' y1='9' x2='12' y2='13'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:var(--space-2) center;background-size:14px 14px}.message-files{display:flex;flex-direction:column;gap:var(--space-2)}.message-images{display:flex;flex-wrap:wrap;gap:var(--space-2)}.message.user .message-content .message-files{margin-top:var(--space-2)}.message-image-wrapper{border-radius:var(--radius-sm);overflow:hidden;position:relative}.message-image-wrapper.loading{min-width:100px;min-height:100px;background-color:var(--bg-tertiary);animation:pulse 1.5s ease-in-out infinite;display:flex;align-items:flex-end;justify-content:center}.message-image-wrapper.loading .message-image{opacity:0;position:absolute;width:1px;height:1px}.image-placeholder{display:none}.message-image-wrapper.loading .image-placeholder{display:block;padding:var(--space-3);font-size:var(--font-size-sm);color:#fff9;text-align:center;word-break:break-word;max-width:100%}.message-image{max-width:200px;max-height:200px;object-fit:contain;display:block;cursor:pointer;transition:transform var(--transition-fast),opacity var(--transition-slow);border-radius:var(--radius-sm)}.message-image:hover{transform:scale(1.02)}.message-image[data-pending=true]{cursor:wait}.message-image[data-pending=true]:hover{transform:none}@keyframes pulse{0%,to{opacity:.6}50%{opacity:.3}}.message.user .message-image-wrapper.loading{min-width:120px;min-height:120px;background:linear-gradient(110deg,#ffffff1a,#fff3,#ffffff1a);background-size:200% 100%;animation:user-image-shimmer 1.5s ease-in-out infinite}@keyframes user-image-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.message-documents{display:flex;flex-direction:column;gap:var(--space-1-5)}.message-document{display:flex;align-items:center;gap:var(--space-2-5);padding:var(--space-2-5) 14px;background-color:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.message.user .message-document{background-color:var(--color-user-overlay);color:var(--color-user-text)}.message.user .message-document .document-name,.message.user .message-document a.document-name{color:var(--color-user-text)}.message.user .message-document a.document-name:hover{color:var(--color-user-text);text-decoration:underline}.message.user .message-document .document-download{color:var(--color-user-text-secondary)}.message.user .message-document .document-download:hover{color:var(--color-user-text)}.document-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.document-icon svg{width:100%;height:100%}.document-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.document-name{color:inherit;text-decoration:none;cursor:pointer}a.document-name:hover{text-decoration:underline}.document-download{background:none;border:none;color:inherit;opacity:.6;cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center;transition:opacity var(--transition-fast)}.document-download:hover{opacity:1}.document-download svg{width:16px;height:16px}.message-content p{margin-bottom:var(--space-3)}.message-content p:last-child{margin-bottom:0}.message-content code{background-color:var(--bg-tertiary);padding:2px 6px;border-radius:var(--radius-xs);font-family:var(--font-family-mono);font-size:.875em}.message-content pre{background-color:var(--bg-tertiary);padding:var(--space-4);border-radius:var(--radius-sm);overflow-x:auto;margin:var(--space-3) 0}.copyable-content{position:relative;margin:var(--space-3) 0}.copyable-content>pre,.copyable-content>.message-content-scroll-wrapper{margin:0}.code-block-wrapper{background-color:var(--bg-tertiary);border-radius:var(--radius-sm);overflow:hidden}.code-block-wrapper>pre{border-radius:0;margin:0;padding-top:var(--space-8)}.code-language{position:absolute;top:var(--space-2);left:var(--space-3);font-size:var(--font-size-xs);color:var(--text-muted);font-family:var(--font-family-mono);text-transform:lowercase;pointer-events:none;z-index:1;line-height:1}.table-wrapper{background-color:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border)}.table-wrapper .message-content-scroll-wrapper,.table-wrapper table{margin:0}.inline-copy-btn{position:absolute;top:var(--space-2);right:var(--space-2);background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast);opacity:0;z-index:2}.copyable-content:hover .inline-copy-btn{opacity:1}.inline-copy-btn:hover{color:var(--accent);background-color:var(--bg-tertiary);border-color:var(--accent)}.inline-copy-btn.copied{color:var(--success);border-color:var(--success)}.inline-copy-btn svg{width:14px;height:14px}@media(hover:none){.inline-copy-btn{opacity:.7}.inline-copy-btn:active{opacity:1}}.message-content pre code{background:none;padding:0}.message-content ul,.message-content ol{margin:var(--space-3) 0;padding-left:var(--space-6)}.message-content li{margin-bottom:var(--space-1)}.message-content blockquote{border-left:3px solid var(--accent);padding-left:var(--space-4);margin:var(--space-3) 0;color:var(--text-secondary)}.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{margin-top:var(--space-4);margin-bottom:var(--space-2)}.message-content a{color:var(--accent);text-decoration:none}.message-content a:hover{text-decoration:underline}.message.user .message-content a{color:var(--color-user-text);text-decoration:underline}.message.user .message-content a:hover{color:var(--color-user-text);text-decoration:underline;opacity:.9}.message-content table{border-collapse:collapse;margin:var(--space-3) 0;font-size:var(--font-size-base);width:100%;min-width:max-content}.message-content th,.message-content td{border:1px solid var(--border);padding:var(--space-2) var(--space-3);text-align:left}.message-content th{background-color:var(--bg-tertiary);font-weight:600}.message-content tr:nth-child(2n){background-color:var(--bg-secondary)}.message-content-scroll-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:var(--space-3) 0}.message-content-scroll-wrapper>table,.message-content-scroll-wrapper>pre{margin:0}.message-loading{max-width:var(--message-max-width);width:100%;margin:0 auto;display:flex;gap:var(--space-4)}.message-loading .message-avatar{background:var(--gradient-assistant-avatar);box-shadow:var(--shadow-glow-accent)}.message-loading .loading-dots{margin-top:var(--space-4)}.loading-dots{display:flex;gap:var(--space-1);padding:var(--space-1) 0}.loading-dots span{width:8px;height:8px;background-color:var(--text-secondary);border-radius:var(--radius-full);animation:bounce 1.4s ease-in-out infinite}.loading-dots span:nth-child(1){animation-delay:0s}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.conversation-loader{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:var(--bg-primary);z-index:10}.conversation-loader-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.conversation-loader-content .loading-dots{justify-content:center}.conversation-loader-content p{color:var(--text-secondary);font-size:var(--font-size-base);margin:0}.older-messages-loader{display:flex;justify-content:center;padding:var(--space-4) 0;margin-bottom:var(--space-2)}.older-messages-loader .loading-dots{justify-content:center}.newer-messages-loader{display:flex;justify-content:center;padding:var(--space-4) 0;margin-top:var(--space-2)}.newer-messages-loader .loading-dots{justify-content:center}@media(max-width:768px){.message{gap:var(--space-3)}.message-avatar{width:28px;height:28px;font-size:var(--font-size-sm)}.message-content{max-width:calc(100% - 40px);padding:10px 14px}}.new-messages-banner{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin:var(--space-3);margin-bottom:0;padding:var(--space-2-5) var(--space-4);background:linear-gradient(135deg,var(--color-brand-800) 0%,var(--color-brand-700) 100%);color:#fff;font-size:var(--font-size-sm);font-weight:500;position:sticky;top:0;z-index:5;border-radius:var(--radius-md);box-shadow:0 2px 8px #00000040}.new-messages-banner span{display:flex;align-items:center;gap:var(--space-2)}.new-messages-banner span:before{content:"";display:inline-block;width:8px;height:8px;background-color:var(--color-brand-400);border-radius:var(--radius-full);animation:pulse-dot 1.5s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.new-messages-banner .btn{padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);font-weight:500;background-color:#fff;color:var(--color-brand-950);border:none;border-radius:var(--radius-pill);cursor:pointer;transition:all var(--transition-fast)}.new-messages-banner .btn:hover{background-color:#ffffffe6;transform:translateY(-1px);box-shadow:0 2px 6px #0003}.message.trigger-message{max-width:none;justify-content:center;padding:var(--space-2) 0}.trigger-message-content{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-4);background-color:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--font-size-sm);color:var(--text-secondary)}.trigger-icon{display:flex;align-items:center;justify-content:center}.trigger-icon svg{width:14px;height:14px}.trigger-label{font-weight:500;color:var(--text-primary)}.trigger-time{color:var(--text-muted);font-size:var(--font-size-xs)}.trigger-time:before{content:"·";margin-right:var(--space-2)}.trigger-message.trigger--scheduled .trigger-message-content{background-color:color-mix(in srgb,var(--color-brand-500) 10%,transparent);border-color:color-mix(in srgb,var(--color-brand-500) 30%,transparent)}.trigger-message.trigger--scheduled .trigger-icon{color:var(--color-brand-500)}.trigger-message.trigger--manual .trigger-message-content{background-color:color-mix(in srgb,var(--color-success-500) 10%,transparent);border-color:color-mix(in srgb,var(--color-success-500) 30%,transparent)}.trigger-message.trigger--manual .trigger-icon{color:var(--color-success-500)}.trigger-message.trigger--chain .trigger-message-content{background-color:color-mix(in srgb,var(--color-warning-500) 10%,transparent);border-color:color-mix(in srgb,var(--color-warning-500) 30%,transparent)}.trigger-message.trigger--chain .trigger-icon{color:var(--color-warning-500)}.message.approval-request-message{max-width:100%;justify-content:center;padding:var(--space-4) 0}.approval-request-content{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--color-warning-900);border:2px solid rgba(251,191,36,.3);border-left:4px solid var(--color-warning-500);border-radius:var(--radius-lg);max-width:480px;margin:0 auto}.approval-request-header{display:flex;align-items:center;gap:var(--space-2)}.approval-icon{display:flex;align-items:center;justify-content:center;color:var(--color-warning-500)}.approval-icon svg{width:20px;height:20px}.approval-title{font-weight:600;font-size:var(--font-size-base);color:var(--text-primary)}.approval-request-body{display:flex;flex-direction:column;gap:var(--space-2)}.approval-description{margin:0;font-size:var(--font-size-sm);color:var(--text-primary);line-height:1.5}.approval-tool{margin:0;font-size:var(--font-size-xs);color:var(--text-muted)}.approval-tool code{background-color:var(--bg-tertiary);padding:var(--space-0-5) var(--space-1);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--text-secondary)}.approval-request-actions{display:flex;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border)}.approval-request-actions .btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.approval-request-actions .btn svg{width:14px;height:14px}.approval-request-actions .btn:disabled{opacity:.6;cursor:not-allowed}.approval-request-actions .btn-approve{background-color:var(--color-success-500);border:none;color:#fff}.approval-request-actions .btn-approve:hover:not(:disabled){background-color:var(--color-success-600)}.approval-request-actions .btn-reject{background-color:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary)}.approval-request-actions .btn-reject:hover:not(:disabled){background-color:var(--color-error-900);border-color:var(--color-error-500);color:var(--color-error-500)}.approval-result{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-weight:500;font-size:var(--font-size-sm);width:100%}.approval-result svg{width:14px;height:14px}.approval-result.approved{background-color:var(--color-success-100);color:var(--color-success-700)}.approval-result.rejected{background-color:var(--color-error-100);color:var(--color-error-700)}[data-theme=dark] .approval-result.approved{background-color:#22c55e26;color:var(--color-success-400)}[data-theme=dark] .approval-result.rejected{background-color:#ef444426;color:var(--color-error-400)}.message.action-approved-message{max-width:none;justify-content:center;padding:var(--space-2) 0}.action-approved-content{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-4);background-color:var(--color-success-100);border:1px solid var(--color-success-400);border-radius:var(--radius-pill);font-size:var(--font-size-sm);color:var(--color-success-700)}.action-approved-icon{font-size:var(--font-size-base);line-height:1;color:var(--color-success-600)}.action-approved-label{font-weight:500}[data-theme=dark] .action-approved-content{background-color:#22c55e26;border-color:var(--color-success-600);color:var(--color-success-400)}.message.search-highlight{animation:search-highlight-pulse 2s ease-out;border-radius:var(--radius-md);position:relative}@keyframes search-highlight-pulse{0%{outline:2px solid var(--color-brand-400);outline-offset:4px;background-color:color-mix(in srgb,var(--color-brand-400) 10%,transparent)}50%{outline:2px solid var(--color-brand-400);outline-offset:4px;background-color:color-mix(in srgb,var(--color-brand-400) 10%,transparent)}to{outline:2px solid transparent;outline-offset:4px;background-color:transparent}}.conversations-list{flex:1;overflow-y:auto;padding:var(--space-2);-webkit-overflow-scrolling:touch}.conversations-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);text-align:center;color:var(--text-secondary);min-height:120px}.conversations-empty p{margin:var(--space-1) 0}.conversations-empty .text-muted{font-size:var(--font-size-base)}.conversation-item-wrapper{position:relative;margin-bottom:var(--space-1);overflow:hidden;border-radius:var(--radius-sm)}.conversation-item{padding:var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast),transform .2s cubic-bezier(.4,0,.2,1);display:flex;justify-content:space-between;align-items:center;-webkit-tap-highlight-color:rgba(255,255,255,.1);touch-action:pan-y;background-color:var(--bg-secondary);position:relative;z-index:2;width:100%;min-width:100%;box-sizing:border-box}.conversation-item:hover{background-color:var(--bg-hover)}.conversation-item-wrapper.active .conversation-item{background-color:var(--bg-tertiary)}.conversation-title{font-size:var(--font-size-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;transition:margin-right var(--transition-fast)}.conversation-item:hover .conversation-title{margin-right:56px}.conversation-actions{display:flex;gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast);position:absolute;right:var(--space-3)}.conversation-item:hover .conversation-actions{opacity:1}.conversation-rename,.conversation-delete{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0}.conversation-rename svg,.conversation-delete svg{width:16px;height:16px}.conversation-rename:hover{color:var(--accent);background-color:var(--accent-muted)}.conversation-delete:hover{color:var(--error);background-color:#ef44441a}.conversation-actions-swipe{display:none}@media(hover:none){.conversation-actions{display:none}.conversation-actions-swipe{position:absolute;right:-160px;top:0;bottom:0;width:160px;display:flex;flex-shrink:0;transition:right var(--transition-slow);z-index:1;opacity:0;pointer-events:none}.conversation-rename-swipe,.conversation-delete-swipe{width:80px;color:#fff;border:none;font-size:var(--font-size-sm);font-weight:500;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);flex-shrink:0}.conversation-rename-swipe{background-color:var(--accent)}.conversation-delete-swipe{background-color:var(--error)}.conversation-rename-swipe svg,.conversation-delete-swipe svg{width:20px;height:20px}.conversation-item-wrapper.swiped .conversation-item{transform:translate(-160px);border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.conversation-item-wrapper.swiped .conversation-actions-swipe{right:0;opacity:1;pointer-events:auto}}.user-info{display:flex;flex-direction:column;gap:var(--space-3)}.user-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%}.user-actions-buttons{display:flex;align-items:center;gap:var(--space-1)}.user-profile{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background-color:var(--bg-tertiary);object-fit:cover;flex-shrink:0}.user-avatar-initials{display:flex;align-items:center;justify-content:center;background-color:var(--bg-user);color:#fff;font-size:var(--font-size-base);font-weight:500}.user-name{font-size:var(--font-size-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--space-1);font-size:var(--font-size-xs);font-weight:600;color:#fff;background-color:var(--accent);border-radius:var(--radius-full);margin-left:auto;flex-shrink:0}.conversation-item:has(.unread-badge) .conversation-title{margin-right:var(--space-2)}.conversation-item:hover .unread-badge{display:none}@media(hover:none){.conversation-item:hover .unread-badge{display:inline-flex}}.conversations-load-more{display:flex;justify-content:center;padding:var(--space-4);opacity:0;transition:opacity var(--transition-fast)}.conversations-load-more.loading{opacity:1}.conversations-load-more .loading-dots{justify-content:center}.search-container{padding:0 var(--space-3) var(--space-2)}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:var(--space-3);color:var(--text-muted);pointer-events:none;display:flex;align-items:center;justify-content:center}.search-icon svg{width:16px;height:16px}.search-input{width:100%;padding:var(--space-2) var(--space-3);padding-left:calc(var(--space-3) + 16px + var(--space-2));padding-right:calc(var(--space-3) + 20px + var(--space-2));background-color:var(--bg-tertiary);border:1px solid transparent;border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--font-size-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.search-input::placeholder{color:var(--text-muted)}.search-input:hover{background-color:var(--bg-hover)}.search-input:focus{outline:none;background-color:var(--bg-primary);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.search-clear-btn{position:absolute;right:var(--space-2);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:color var(--transition-fast),background-color var(--transition-fast)}.search-clear-btn:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}.search-clear-btn svg{width:14px;height:14px}.search-clear-btn.hidden{display:none}.search-results-header{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);color:var(--text-muted)}.search-results-count{font-weight:500}.search-results-list{display:flex;flex-direction:column}.search-result-item{padding:var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast)}.search-result-item:hover{background-color:var(--bg-hover)}.search-result-item.active{background-color:var(--bg-tertiary)}.search-result-title{font-size:var(--font-size-base);font-weight:500;color:var(--text-primary);margin-bottom:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-snippet{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.search-result-snippet mark{background-color:var(--accent-muted);color:var(--accent-hover);border-radius:2px;padding:0 2px}.search-result-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--text-muted)}.search-result-type{color:var(--text-muted);text-transform:capitalize}.search-result-meta:has(.search-result-date) .search-result-type:after{content:"·";margin-left:var(--space-2);color:var(--text-muted)}.search-empty,.search-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12) var(--space-4);text-align:center;color:var(--text-muted);min-height:200px}.search-empty p,.search-loading p{font-size:var(--font-size-sm);line-height:1.5}.search-loading p{margin-top:var(--space-3)}.input-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2);gap:var(--space-2)}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:var(--space-1)}.input-container{display:flex;gap:var(--space-3);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);align-items:flex-end}#message-input{flex:1;background:none;border:none;color:var(--text-primary);font-size:var(--font-size-lg);line-height:var(--line-height);resize:none;max-height:200px;padding:var(--space-2) 0}#message-input:focus{outline:none}#message-input::placeholder{color:var(--text-muted)}.conversation-cost-display{font-size:var(--font-size-xs);color:var(--text-muted);text-align:right;padding:var(--space-1) var(--space-4) 0;min-height:16px;height:auto;font-variant-numeric:tabular-nums}.model-selector{position:relative}.model-selector-btn{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-3);background-color:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}#current-model-name{min-width:6em;text-align:left}.model-selector-btn:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.dropdown-arrow{font-size:var(--font-size-2xs);line-height:1;transition:transform var(--transition-fast)}.model-selector-btn.open .dropdown-arrow{transform:rotate(180deg)}.model-dropdown{position:absolute;bottom:100%;left:0;margin-bottom:var(--space-1);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:150px;box-shadow:var(--shadow-md);z-index:var(--z-dropdown)}.model-dropdown.hidden{display:none}.model-option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-2-5);background:none;border:none;text-align:left;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.model-option:first-child{border-radius:var(--radius-sm) var(--radius-sm) 0 0}.model-option:last-child{border-radius:0 0 var(--radius-sm) var(--radius-sm)}.model-option:hover{background-color:var(--bg-hover)}.model-option.selected{background-color:var(--accent-muted)}.model-option.selected .model-name{color:var(--accent-hover);font-weight:500}.model-option .model-name{font-size:var(--font-size-sm);transition:color var(--transition-fast)}.model-option .model-check{display:flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--accent-hover);flex-shrink:0}.model-option .model-check svg{width:100%;height:100%}#file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-preview{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3);background-color:var(--bg-secondary);border:1px solid var(--border);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;margin-bottom:-1px}.file-preview.hidden{display:none}.file-preview-item{position:relative;border-radius:var(--radius-sm);overflow:hidden;background-color:var(--bg-tertiary)}.file-preview-item.file-preview-image{width:64px;height:64px}.file-preview-item.file-preview-image img{width:100%;height:100%;object-fit:cover;display:block}.file-preview-item.file-preview-doc{padding:var(--space-3) var(--space-8) var(--space-3) var(--space-3);display:flex;align-items:center;gap:var(--space-2-5);height:64px}.file-preview-icon{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.file-preview-icon svg{width:100%;height:100%}.file-preview-name{font-size:var(--font-size-sm);color:var(--text-primary);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-preview-remove{position:absolute;top:2px;right:2px;background-color:#000000b3;color:#fff;border:none;border-radius:var(--radius-full);width:20px;height:20px;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast)}.file-preview-remove svg{width:12px;height:12px}.file-preview-remove:hover{background-color:var(--error)}.file-preview:not(.hidden)~.input-container{border-top-left-radius:0;border-top-right-radius:0;border-top:none}.upload-progress{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-bottom:none;border-radius:0}.upload-progress.hidden{display:none}.upload-progress-bar{flex:1;height:4px;background-color:var(--bg-tertiary);border-radius:var(--radius-full);overflow:hidden;position:relative}.upload-progress-bar:after{content:"";position:absolute;top:0;left:0;height:100%;width:var(--progress, 0%);background-color:var(--accent);border-radius:var(--radius-full);transition:width .15s ease-out}.upload-progress-text{font-size:var(--font-size-sm);color:var(--text-secondary);min-width:90px;text-align:right;font-variant-numeric:tabular-nums}.upload-progress:not(.hidden)~.input-container{border-top-left-radius:0;border-top-right-radius:0;border-top:none}.file-preview:not(.hidden)~.upload-progress{border-top:none}.input-area.drag-over{background-color:var(--bg-secondary)}.input-area.drag-over .input-container{border-color:var(--accent);background-color:var(--accent-muted)}.voice-lang-selector{position:fixed;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);min-width:160px;max-height:240px;overflow-y:auto;z-index:1000}.voice-lang-option{display:block;width:100%;padding:10px 14px;border:none;background:none;color:var(--text-primary);font-size:var(--font-size-base);text-align:left;cursor:pointer;transition:background-color var(--transition-fast)}.voice-lang-option:first-child{border-radius:var(--radius-sm) var(--radius-sm) 0 0}.voice-lang-option:last-child{border-radius:0 0 var(--radius-sm) var(--radius-sm)}.voice-lang-option:hover,.voice-lang-option.hover{background-color:var(--bg-hover)}.voice-lang-option.selected{background-color:var(--bg-tertiary)}.input-container{position:relative}.approval-pending-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:var(--space-2);background-color:var(--bg-secondary);border-radius:var(--radius-md);z-index:10}.approval-pending-overlay.hidden{display:none}.approval-pending-icon{font-size:var(--font-size-lg)}.approval-pending-text{font-size:var(--font-size-sm);color:var(--warning-text);font-weight:500}@media(max-width:768px){.file-preview-item.file-preview-image{width:56px;height:56px}.file-preview-item.file-preview-doc{height:56px}}.lightbox{position:fixed;inset:0;background-color:var(--lightbox-bg);z-index:var(--z-lightbox);display:flex;align-items:center;justify-content:center;cursor:zoom-out;padding:var(--space-4)}.lightbox.hidden{display:none}.lightbox-container{position:relative;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center}.lightbox-close{position:absolute;top:-12px;right:-12px;background:#ffffff26;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-full);color:#fff;cursor:pointer;width:44px;height:44px;padding:0;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast),border-color var(--transition-fast);z-index:301;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.lightbox-close svg{width:20px;height:20px}.lightbox-close:hover{background:#ffffff40;border-color:#ffffff80}#lightbox-img{max-width:100%;max-height:calc(100vh - 32px);object-fit:contain;cursor:default;display:block}.lightbox-loader{display:none;flex-direction:column;align-items:center;gap:var(--space-4)}.lightbox-loader .loading-dots{justify-content:center}.lightbox-loader .loading-dots span{background-color:#ffffffb3}.lightbox-loader p{color:#ffffffb3;font-size:var(--font-size-sm);margin:0}.lightbox.loading .lightbox-loader{display:flex}.lightbox.loading .lightbox-container{visibility:hidden;position:absolute}.info-popup{position:fixed;inset:0;background-color:var(--overlay-bg);z-index:var(--z-popup);display:flex;align-items:center;justify-content:center;padding:var(--space-4);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.info-popup.hidden{display:none}.info-popup-content{background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);max-width:500px;width:100%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.info-popup-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border);background-color:var(--bg-tertiary)}.info-popup-icon{display:flex;align-items:center;justify-content:center;color:var(--accent)}.info-popup-icon svg{width:20px;height:20px}.info-popup-header h3{flex:1;margin:0;font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:var(--space-2)}.info-popup-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-2);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.info-popup-close:hover{color:var(--text-primary);background-color:var(--bg-secondary)}.info-popup-close svg{width:18px;height:18px}.info-popup-body{padding:var(--space-2);overflow-y:auto}@media(max-width:768px){.info-popup{padding:var(--space-2);align-items:flex-end}.info-popup-content{max-height:70vh;border-bottom-left-radius:0;border-bottom-right-radius:0;margin-bottom:env(safe-area-inset-bottom,0)}}.sources-header-badge{display:none}.sources-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 var(--space-2);background-color:var(--accent);color:#fff;border-radius:var(--radius-pill);font-size:var(--font-size-sm);font-weight:600}.sources-body{padding:0}.sources-list{display:flex;flex-direction:column;gap:var(--space-1)}.source-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) 14px;border-radius:var(--radius-sm);text-decoration:none;color:var(--text-primary);transition:all var(--transition-fast);border:1px solid transparent}.source-item:hover{background-color:var(--bg-tertiary);border-color:var(--border)}.source-number{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background-color:var(--accent);color:#fff;border-radius:var(--radius-full);font-size:var(--font-size-badge);font-weight:600;margin-top:2px}.source-title{flex:1;font-weight:500;color:var(--text-primary);line-height:1.4}.source-url{font-size:var(--font-size-badge);color:var(--text-muted);white-space:nowrap;opacity:.7;margin-top:3px}@media(max-width:768px){.source-item{flex-wrap:wrap}.source-url{width:100%;margin-left:36px;margin-top:var(--space-1)}}.imagegen-header-badge{display:none}.imagegen-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 var(--space-2);background-color:var(--accent);color:#fff;border-radius:var(--radius-pill);font-size:var(--font-size-sm);font-weight:600}.imagegen-body{padding:var(--space-4)}.imagegen-list{display:flex;flex-direction:column}.imagegen-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) 0;text-decoration:none;color:var(--text-primary);transition:all var(--transition-fast);border-bottom:1px solid var(--border)}.imagegen-item:last-child{border-bottom:none}.imagegen-item:hover{background-color:transparent}.imagegen-number{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background-color:var(--accent);color:#fff;border-radius:var(--radius-full);font-size:var(--font-size-badge);font-weight:600;margin-top:2px}.imagegen-prompt{flex:1;font-weight:500;color:var(--text-primary);line-height:1.4;word-break:break-word}.imagegen-cost-loading{padding:var(--space-4) 0;text-align:center;color:var(--text-muted);font-size:var(--font-size-sm)}.imagegen-cost{margin-top:var(--space-4);padding:var(--space-4) 0;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.imagegen-cost .imagegen-label{color:var(--text-secondary);font-weight:500;font-size:var(--font-size-sm)}.imagegen-cost .imagegen-cost-value{color:var(--accent);font-weight:600;font-size:var(--font-size-lg)}.cost-history-body{padding:0}.cost-history-empty{padding:48px 24px;text-align:center;color:var(--text-muted)}.cost-history-empty p{margin:var(--space-2) 0}.cost-history-content{padding:var(--space-4)}.cost-history-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--font-size-sm);background-color:var(--bg-secondary);border-radius:var(--radius-md);overflow:hidden}.cost-history-table thead{background:var(--gradient-table-header);border-bottom:2px solid var(--border)}.cost-history-table th{padding:14px var(--space-4);text-align:left;font-weight:600;color:var(--text-primary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.8px}.cost-history-table th:last-child,.cost-history-table td:last-child{text-align:right}.cost-history-table tbody{background-color:var(--bg-primary)}.cost-history-table tbody tr{transition:background-color var(--transition-fast)}.cost-history-table tbody tr:not(:last-child){border-bottom:1px solid var(--border)}.cost-history-table tbody tr:hover{background-color:var(--bg-hover)}.cost-history-table tbody tr:first-child{background-color:var(--bg-tertiary);border-left:3px solid var(--accent)}.cost-history-table tbody tr:first-child:hover{background-color:var(--bg-hover)}.cost-history-table td{padding:14px var(--space-4);color:var(--text-secondary)}.cost-history-table tbody tr:first-child td{color:var(--text-primary);font-weight:500}.cost-history-table tfoot{background:var(--gradient-table-header);border-top:2px solid var(--border)}.cost-history-table tfoot td{padding:18px var(--space-4);color:var(--text-primary);font-size:var(--font-size-md)}.cost-amount{text-align:right;font-variant-numeric:tabular-nums;font-weight:600;color:var(--text-primary);letter-spacing:.3px}.cost-history-table tbody tr:first-child .cost-amount{color:var(--accent)}.cost-messages{text-align:right;color:var(--text-muted);font-size:var(--font-size-base);font-weight:400}.cost-history-total .cost-amount{font-size:1.0625rem;font-weight:700}.cost-history-total .cost-messages{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.message-cost-content{padding:var(--space-4)}.message-cost-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--font-size-sm)}.message-cost-table tbody tr{border-bottom:1px solid var(--border)}.message-cost-table tbody tr:last-child{border-bottom:none}.message-cost-table td{padding:var(--space-3) 0;vertical-align:top}.message-cost-table .message-cost-label{color:var(--text-secondary);font-weight:500;padding-right:var(--space-4);white-space:nowrap}.message-cost-table .message-cost-value{color:var(--text-primary);text-align:right}.message-cost-table .message-cost-amount{font-size:var(--font-size-xl);font-weight:600;color:var(--accent)}.toast-container{position:fixed;top:calc(var(--space-4) + env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none;max-width:calc(100vw - 32px)}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);pointer-events:auto;animation:toast-enter .2s ease-out;max-width:400px}.toast-exit{animation:toast-exit .2s ease-in forwards}@keyframes toast-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.toast-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.toast-icon svg{width:100%;height:100%}.toast-success .toast-icon{color:var(--success)}.toast-error .toast-icon{color:var(--error)}.toast-warning .toast-icon{color:var(--warning)}.toast-info .toast-icon{color:var(--accent)}.toast-message{flex:1;font-size:var(--font-size-sm);color:var(--text-primary);line-height:1.4}.toast-action{flex-shrink:0;padding:var(--space-1-5) var(--space-3);background-color:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:background-color var(--transition-fast)}.toast-action:hover{background-color:var(--accent-hover)}.toast-dismiss{flex-shrink:0;width:24px;height:24px;padding:var(--space-1);background:none;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-xs);transition:background-color var(--transition-fast),color var(--transition-fast)}.toast-dismiss:hover{background-color:var(--bg-hover);color:var(--text-primary)}.toast-dismiss svg{width:100%;height:100%}@media(max-width:480px){.toast-container{left:var(--space-4);right:var(--space-4);transform:none}.toast{flex-wrap:wrap;gap:var(--space-2);position:relative;padding-right:36px}.toast-message{flex:1;min-width:0}.toast-action{flex-basis:100%;order:10}.toast-dismiss{position:absolute;top:var(--space-2);right:var(--space-2)}}.modal-container{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;background-color:var(--overlay-bg);padding:var(--space-4);animation:modal-overlay-enter .15s ease-out}.modal-container.modal-hidden{display:none}.modal-container.modal-overlay-exit{animation:modal-overlay-exit .15s ease-in forwards}@keyframes modal-overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes modal-overlay-exit{0%{opacity:1}to{opacity:0}}.modal{position:relative;background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-6);max-width:400px;width:100%;animation:modal-enter .15s ease-out}.modal.modal-exit{animation:modal-exit .15s ease-in forwards}@keyframes modal-enter{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes modal-exit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.modal-close{position:absolute;top:var(--space-3);right:var(--space-3);width:28px;height:28px;padding:var(--space-1-5);background:none;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-xs);transition:background-color var(--transition-fast),color var(--transition-fast)}.modal-close:hover{background-color:var(--bg-hover);color:var(--text-primary)}.modal-close svg{width:100%;height:100%}.modal-title{font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-3);padding-right:var(--space-8)}.modal-message{font-size:var(--font-size-md);color:var(--text-secondary);line-height:var(--line-height);margin-bottom:var(--space-5)}.modal-input{width:100%;padding:10px var(--space-3);background-color:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-md);margin-bottom:var(--space-5);outline:none;transition:border-color var(--transition-fast)}.modal-input:focus{border-color:var(--accent)}.modal-input::placeholder{color:var(--text-muted)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.modal-cancel{padding:10px var(--space-5);background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:background-color var(--transition-fast)}.modal-cancel:hover{background-color:var(--bg-hover)}.modal-confirm{padding:10px var(--space-5);background-color:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:background-color var(--transition-fast)}.modal-confirm:hover{background-color:var(--accent-hover)}.modal-confirm.modal-danger{background-color:var(--error)}.modal-confirm.modal-danger:hover{background-color:var(--error-hover)}.version-banner{position:fixed;top:0;left:0;right:0;background-color:var(--color-brand-800);color:#fff;padding:var(--space-3) var(--space-4);padding-top:calc(var(--space-3) + env(safe-area-inset-top,0));display:flex;align-items:center;justify-content:center;gap:var(--space-4);z-index:var(--z-banner);transform:translateY(-100%);transition:transform var(--transition-slow);box-shadow:0 4px 12px #0000004d}.version-banner.visible{transform:translateY(0)}.version-banner-message{font-size:var(--font-size-sm);font-weight:500}.version-banner-actions{display:flex;gap:var(--space-2)}.version-banner-reload{background-color:#fff;color:var(--color-brand-950);border:none;padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:500;cursor:pointer;display:flex;align-items:center;gap:var(--space-1-5);transition:background-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.version-banner-reload:hover{background-color:#ffffffd9;transform:translateY(-1px);box-shadow:0 2px 8px #0003}.version-banner-reload:active{transform:translateY(0);box-shadow:none;background-color:#ffffffbf}.version-banner-dismiss{background-color:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3);padding:var(--space-1-5) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:500;cursor:pointer;display:flex;align-items:center;gap:var(--space-1-5);transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.version-banner-dismiss:hover{background-color:#ffffff26;border-color:#fffc;transform:translateY(-1px)}.version-banner-dismiss:active{transform:translateY(0);background-color:#ffffff40}.version-banner-reload svg,.version-banner-dismiss svg{width:14px;height:14px}@media(max-width:768px){.version-banner{flex-wrap:wrap;gap:var(--space-2);text-align:center}.version-banner-message{width:100%}}.memories-body{padding:0}.memories-loading,.memories-error{padding:48px 24px;text-align:center;color:var(--text-muted)}.memories-error p{margin:var(--space-2) 0}.memories-retry-btn{margin-top:var(--space-4)}.memories-empty{padding:48px 24px;text-align:center;color:var(--text-muted)}.memories-empty-icon{width:48px;height:48px;margin:0 auto var(--space-4);opacity:.5}.memories-empty-icon svg{width:100%;height:100%}.memories-empty p{margin:var(--space-2) 0}.memories-list{display:flex;flex-direction:column;max-height:400px;overflow-y:auto}.memory-item{position:relative;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);padding-right:48px;border-bottom:1px solid var(--border);transition:background-color var(--transition-fast)}.memory-item:last-child{border-bottom:none}.memory-item:hover{background-color:var(--bg-hover)}.memory-header{display:flex;align-items:center;gap:var(--space-2)}.memory-category{display:inline-flex;align-items:center;padding:2px 8px;font-size:var(--font-size-xs);font-weight:500;border-radius:var(--radius-pill);text-transform:capitalize}.memory-category.preference{background-color:var(--color-brand-900);color:var(--color-brand-400)}.memory-category.fact{background-color:var(--color-success-900);color:var(--color-success-400)}.memory-category.context{background-color:var(--color-warning-900);color:var(--color-warning-400)}.memory-category.goal{background-color:var(--color-error-900);color:var(--color-error-400)}.memory-time{font-size:var(--font-size-xs);color:var(--text-muted)}.memory-content{color:var(--text-primary);font-size:var(--font-size-sm);line-height:1.5}.memory-delete-btn{position:absolute;top:50%;right:var(--space-3);transform:translateY(-50%);width:32px;height:32px;padding:var(--space-2);background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);opacity:0;transition:all var(--transition-fast)}.memory-item:hover .memory-delete-btn{opacity:1}.memory-delete-btn:hover{color:var(--error);background-color:var(--color-error-900)}.memory-delete-btn svg{width:100%;height:100%}.info-popup-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background-color:var(--bg-tertiary);display:flex;justify-content:center}.memories-count{font-size:var(--font-size-sm);color:var(--text-muted)}@media(max-width:768px){.memory-delete-btn{opacity:1}}.settings-loading,.settings-error{padding:48px 24px;text-align:center;color:var(--text-muted)}.settings-error p{margin:var(--space-2) 0}.settings-retry-btn{margin-top:var(--space-4)}.settings-body{padding:var(--space-4)}.settings-field{display:flex;flex-direction:column;gap:var(--space-2)}.settings-label{font-weight:600;color:var(--text-primary);font-size:var(--font-size-md)}.settings-label-with-icon{display:flex;align-items:center;gap:var(--space-2)}.settings-label-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.settings-label-icon svg{width:100%;height:100%}.settings-helper{font-size:var(--font-size-sm);color:var(--text-muted);margin:0;line-height:1.4}.settings-textarea{width:100%;min-height:150px;padding:var(--space-3);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:var(--font-size-base);line-height:1.5;resize:vertical;transition:border-color var(--transition-fast)}.settings-textarea:focus{outline:none;border-color:var(--accent)}.settings-textarea::placeholder{color:var(--text-muted)}.settings-input{width:100%;padding:var(--space-2) var(--space-3);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:var(--font-size-base);transition:border-color var(--transition-fast)}.settings-input:focus{outline:none;border-color:var(--accent)}.settings-input::placeholder{color:var(--text-muted)}.settings-helper-muted{font-size:var(--font-size-xs);color:var(--text-muted);margin-top:var(--space-1)}.settings-char-count{font-size:var(--font-size-xs);color:var(--text-muted);text-align:right}.settings-char-count.warning{color:var(--warning)}.settings-char-count.error{color:var(--error)}.settings-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background-color:var(--bg-tertiary)}.settings-save-btn{min-width:80px}.settings-save-btn:disabled{opacity:.5;cursor:not-allowed}.settings-divider{height:1px;background-color:var(--border);margin:var(--space-4) 0}.settings-color-scheme{display:flex;gap:var(--space-2)}.settings-color-scheme-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3);background-color:var(--bg-primary);border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.settings-color-scheme-option:hover{border-color:var(--text-muted)}.settings-color-scheme-option.selected{border-color:var(--accent);background-color:var(--accent-muted)}.settings-color-scheme-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.settings-color-scheme-option.selected .settings-color-scheme-icon{color:var(--accent)}.settings-color-scheme-icon svg{width:100%;height:100%}.settings-color-scheme-label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary)}.settings-color-scheme-option.selected .settings-color-scheme-label{color:var(--text-primary)}@media(max-width:480px){.settings-color-scheme{flex-direction:column}.settings-color-scheme-option{flex-direction:row;justify-content:flex-start;padding:var(--space-2) var(--space-3)}}.settings-todoist-loading{padding:var(--space-3);color:var(--text-muted);font-size:var(--font-size-sm);text-align:center}.settings-todoist-connected{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm)}.settings-todoist-status{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:600}.settings-todoist-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center}.settings-todoist-icon.connected{color:var(--success)}.settings-todoist-icon.warning{color:var(--warning)}.settings-todoist-icon svg{width:100%;height:100%}.settings-todoist-disconnected{padding:var(--space-3);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm)}.settings-todoist-disconnected .settings-helper{margin-bottom:var(--space-3)}.settings-todoist-needs-reconnect{padding:var(--space-3);background-color:var(--bg-primary);border:1px solid var(--warning);border-radius:var(--radius-sm)}.settings-todoist-needs-reconnect .settings-todoist-status{color:var(--warning);margin-bottom:var(--space-1)}.settings-todoist-needs-reconnect .settings-helper{margin-bottom:var(--space-3)}.settings-todoist-actions{display:flex;gap:var(--space-2)}.settings-todoist-connect,.settings-todoist-disconnect{white-space:nowrap}@media(max-width:480px){.settings-todoist-connected{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.settings-todoist-disconnect{width:100%}.settings-todoist-actions{flex-direction:column;width:100%}.settings-todoist-actions .btn{width:100%}}.settings-calendar-loading{padding:var(--space-3);color:var(--text-muted);font-size:var(--font-size-sm);text-align:center}.settings-calendar-error{display:flex;gap:var(--space-3);padding:var(--space-3);background-color:var(--bg-warning);border:1px solid var(--border-warning);border-radius:var(--radius-sm)}.settings-calendar-error .warning{flex-shrink:0;color:var(--color-warning)}.settings-error-message{margin:0 0 var(--space-2) 0;font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.settings-calendar-connected{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm)}.settings-calendar-disconnected,.settings-calendar-needs-reconnect{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);background-color:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-sm)}.settings-calendar-status{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:600}.settings-calendar-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center}.settings-calendar-icon.connected{color:var(--success)}.settings-calendar-icon.warning{color:var(--warning)}.settings-calendar-icon svg{width:100%;height:100%}.settings-calendar-needs-reconnect{border-color:var(--warning)}.settings-calendar-needs-reconnect .settings-helper{margin-bottom:0}.settings-calendar-actions{display:flex;gap:var(--space-2)}.settings-calendar-connect,.settings-calendar-disconnect{white-space:nowrap}.settings-calendar-connected-wrapper{display:flex;flex-direction:column;gap:var(--space-4)}.settings-calendar-selection{padding:var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md)}.settings-calendar-list{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-3) 0;max-height:400px;overflow-y:auto;padding:var(--space-1)}.settings-calendar-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background-color:var(--bg-primary);border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.settings-calendar-item:hover:not(.disabled){border-color:var(--accent);background-color:var(--bg-hover)}.settings-calendar-item:has(.settings-calendar-checkbox:checked){border-color:var(--accent);background-color:var(--accent-muted)}.settings-calendar-item.disabled{cursor:default;opacity:.9}.settings-calendar-checkbox{width:18px;height:18px;cursor:pointer;flex-shrink:0}.settings-calendar-item.disabled .settings-calendar-checkbox{cursor:default}.settings-calendar-info{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0}.calendar-color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:1px solid var(--border)}.calendar-star-icon{width:14px;height:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--warning)}.calendar-star-icon svg{width:100%;height:100%}.settings-calendar-name{font-size:var(--font-size-sm);font-weight:500;-webkit-user-select:none;user-select:none;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-calendar-badge{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);background-color:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-secondary);text-transform:capitalize;flex-shrink:0}.settings-calendar-save-btn{width:100%;margin-top:var(--space-3)}.settings-empty-state{padding:var(--space-4);text-align:center;color:var(--text-secondary);font-size:var(--font-size-sm)}.spinner-small{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:480px){.settings-calendar-connected{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.settings-calendar-disconnect{width:100%}.settings-calendar-actions{flex-direction:column;width:100%}.settings-calendar-actions .btn{width:100%}.settings-calendar-header{flex-direction:column;align-items:flex-start}.settings-calendar-list{max-height:300px}.settings-calendar-badge{display:none}}.login-overlay{position:fixed;inset:0;background-color:var(--bg-primary);z-index:var(--z-modal-backdrop);display:flex;align-items:center;justify-content:center}.login-overlay.hidden{display:none}.login-box{text-align:center;padding:var(--space-12)}.login-box h2{font-size:var(--font-size-3xl);font-weight:600;color:var(--text-primary);margin:0 0 var(--space-2)}.login-box p{color:var(--text-secondary);font-size:var(--font-size-md);margin:0 0 var(--space-6)}.thinking-indicator{margin-bottom:var(--space-3);font-size:var(--font-size-sm);color:var(--text-secondary);border-radius:var(--radius-sm);overflow:hidden}.thinking-indicator-content{display:flex;flex-direction:column}.thinking-trace{display:flex;flex-direction:column;gap:var(--space-1)}.thinking-trace-item{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);background-color:var(--bg-tertiary);border-radius:var(--radius-sm);min-height:32px;line-height:18px}.thinking-icon{display:flex;align-items:center;justify-content:center;width:16px;height:18px;flex-shrink:0}.thinking-icon svg{width:16px;height:16px}.thinking-label{font-weight:500;flex-shrink:0;line-height:18px}.thinking-detail{color:var(--text-muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-family-mono);font-size:var(--font-size-xs);line-height:18px}.thinking-indicator-content .thinking-trace-item:last-child .thinking-detail{white-space:pre-wrap;word-break:break-word;overflow:visible;text-overflow:clip}.thinking-detail.full-detail{white-space:pre-wrap;word-break:break-word;overflow:visible;text-overflow:clip}.thinking-markdown{font-family:var(--font-family);font-size:var(--font-size-sm);line-height:1.5;white-space:normal}.thinking-markdown p{margin:0 0 var(--space-2) 0}.thinking-markdown p:last-child{margin-bottom:0}.thinking-markdown ul,.thinking-markdown ol{margin:var(--space-1) 0;padding-left:var(--space-4)}.thinking-markdown li{margin:var(--space-1) 0}.thinking-markdown code{font-family:var(--font-family-mono);font-size:var(--font-size-xs);background-color:var(--code-inline-bg);padding:2px 4px;border-radius:var(--radius-xs)}.thinking-markdown pre{margin:var(--space-2) 0;padding:var(--space-2);background-color:var(--code-inline-bg);border-radius:var(--radius-sm);overflow-x:auto}.thinking-markdown pre code{background:none;padding:0}.thinking-markdown strong{font-weight:600}.thinking-markdown em{font-style:italic}.thinking-markdown blockquote{margin:var(--space-2) 0;padding-left:var(--space-3);border-left:2px solid var(--border);color:var(--text-muted)}.thinking-dots{display:flex;align-items:center;gap:2px;margin-left:auto;flex-shrink:0;height:18px}.thinking-dots span{width:4px;height:4px;background-color:var(--text-muted);border-radius:var(--radius-full);animation:thinking-bounce 1.4s ease-in-out infinite}.thinking-dots span:nth-child(1){animation-delay:0s}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes thinking-bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.thinking-trace-item.active{background:linear-gradient(135deg,var(--bg-tertiary),rgba(99,102,241,.1));border:1px solid rgba(99,102,241,.2)}.thinking-trace-item.active .thinking-icon{color:var(--accent)}.thinking-trace-item.completed{opacity:.8}.thinking-checkmark{color:var(--success);font-weight:600;margin-left:auto;flex-shrink:0;line-height:18px}.thinking-indicator.finalized{background-color:var(--bg-tertiary)}.thinking-toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);background:none;border:none;color:var(--text-secondary);font-size:var(--font-size-sm);text-align:left;cursor:pointer;transition:background-color var(--transition-fast)}.thinking-toggle:hover{background-color:var(--bg-hover)}.thinking-toggle-icon{display:flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;transition:transform var(--transition-fast)}.thinking-toggle-icon svg{width:100%;height:100%}.thinking-indicator.expanded .thinking-toggle-icon{transform:rotate(90deg)}.thinking-toggle-summary{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thinking-details{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border)}.thinking-details[hidden]{display:none}.thinking-details .thinking-trace-item{background-color:var(--code-inline-bg)}.thinking-details .thinking-detail{white-space:pre-wrap;word-break:break-word}@media(max-width:768px){.thinking-indicator{font-size:var(--font-size-xs)}.thinking-trace-item,.thinking-toggle{padding:var(--space-1-5) var(--space-2)}.thinking-detail{max-width:180px}}.planner-entry{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-primary);transition:background-color var(--transition-fast),border-color var(--transition-fast);background-color:var(--bg-secondary)}.planner-entry:hover{background-color:var(--bg-hover)}.planner-entry.active{background-color:var(--accent-muted)}.planner-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.planner-icon svg{width:20px;height:20px;color:var(--accent)}.planner-label{font-size:var(--font-size-base);font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav-row{display:flex;gap:var(--space-2)}.sidebar-nav-row .planner-entry,.sidebar-nav-row .agents-entry{flex:1;min-width:0;justify-content:center}.sidebar-nav-row:not(.single) .planner-label,.sidebar-nav-row:not(.single) .agents-label{display:none}.sidebar-nav-row.single .planner-entry,.sidebar-nav-row.single .agents-entry{flex:1;justify-content:flex-start}.sidebar-nav-row.single .planner-label,.sidebar-nav-row.single .agents-label{display:block}.sidebar-divider{height:1px;background:var(--border);margin:var(--space-2) 0}.planner-dashboard-message{margin:var(--space-4);padding:var(--space-6);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border)}.dashboard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.dashboard-title{font-size:var(--font-size-2xl);font-weight:700;background:linear-gradient(135deg,var(--text-primary),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-actions{display:flex;gap:var(--space-2)}.planner-refresh-btn,.planner-reset-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm);font-weight:500}.planner-refresh-btn svg,.planner-reset-btn svg{width:16px;height:16px}.planner-refresh-btn:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.planner-reset-btn:hover{background:var(--bg-hover);border-color:var(--error);color:var(--error);transform:translateY(-2px);box-shadow:0 4px 12px #ef444433}.planner-refresh-btn:active,.planner-reset-btn:active{transform:translateY(1px) scale(.97);box-shadow:0 1px 3px #0000001a}.planner-dashboard-message.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);min-height:300px}.dashboard-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.dashboard-loading-icon{width:48px;height:48px;color:var(--accent);animation:float 2s ease-in-out infinite}.dashboard-loading-icon svg{width:100%;height:100%}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.dashboard-loading-dots{display:flex;gap:var(--space-2)}.dashboard-loading-dots span{width:8px;height:8px;background:var(--accent);border-radius:50%;animation:bounce-loading 1.4s ease-in-out infinite}.dashboard-loading-dots span:nth-child(1){animation-delay:-.32s}.dashboard-loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce-loading{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.dashboard-loading-text{font-size:var(--font-size-base);font-weight:500;background:linear-gradient(135deg,var(--text-primary),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-section{margin-bottom:var(--space-6)}.dashboard-section:last-child{margin-bottom:0}.dashboard-section h3{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin:0 0 var(--space-3) 0}.dashboard-section.overdue{background:var(--color-error-900);border:2px solid rgba(248,113,113,.3);border-left:5px solid var(--color-error-400);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:0 2px 8px #f8717126;animation:soft-pulse 3s ease-in-out infinite;position:relative}.dashboard-section.overdue:before{content:"⏰";position:absolute;right:var(--space-4);top:var(--space-4);font-size:var(--font-size-2xl);opacity:.6}@keyframes soft-pulse{0%,to{border-left-color:var(--color-error-400);box-shadow:0 2px 8px #f8717126}50%{border-left-color:var(--color-error-500);box-shadow:0 2px 12px #f8717140}}.dashboard-section.overdue h3{color:var(--color-error-600);font-size:var(--font-size-lg)}.dashboard-section details{border:2px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-primary);overflow:hidden;transition:all var(--transition-normal);box-shadow:0 1px 3px #00000014}.dashboard-section details[open]{border-color:var(--accent);box-shadow:0 0 0 2px #6366f126,0 2px 8px #0000001a}.dashboard-section details summary{padding:var(--space-4);cursor:pointer;font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);background:linear-gradient(135deg,var(--bg-tertiary),var(--bg-secondary));list-style:none;display:flex;align-items:center;gap:var(--space-3);transition:all var(--transition-fast)}.dashboard-section details summary::-webkit-details-marker{display:none}.dashboard-section details summary:hover{background:linear-gradient(135deg,var(--bg-hover),var(--bg-tertiary));color:var(--accent);padding-left:var(--space-5)}.dashboard-section details summary:before{content:"";width:8px;height:8px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg);transition:transform .3s cubic-bezier(.4,0,.2,1);flex-shrink:0}.dashboard-section details[open] summary:before{transform:rotate(45deg)}.dashboard-section details summary{position:relative}.dashboard-section details>div{padding:var(--space-4);animation:expand .4s cubic-bezier(.4,0,.2,1)}@keyframes expand{0%{opacity:0;transform:translateY(-12px);max-height:0}to{opacity:1;transform:translateY(0);max-height:2000px}}.dashboard-day{margin-bottom:var(--space-6);padding:var(--space-4);background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000d}.dashboard-day:last-child{margin-bottom:0}.dashboard-day-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);background:linear-gradient(135deg,var(--bg-tertiary),var(--bg-secondary));border:1px solid var(--border)}.dashboard-day-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:var(--space-2);border-radius:50%;background:linear-gradient(135deg,var(--accent),#8B5CF6);color:#fff;box-shadow:0 2px 8px #6366f14d}.dashboard-day-icon svg{width:100%;height:100%}.dashboard-day-date{font-size:var(--font-size-sm);font-weight:500;color:var(--text-muted);background:var(--bg-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.dashboard-day-empty{display:flex;align-items:center;justify-content:center;padding:var(--space-4) var(--space-2);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm);background:var(--color-success-900);border:2px dashed rgba(52,211,153,.3);border-radius:var(--radius-md)}.dashboard-day-empty p{margin:0}.dashboard-events,.dashboard-tasks{margin-bottom:var(--space-4)}.dashboard-events:last-child,.dashboard-tasks:last-child{margin-bottom:0}.dashboard-events-header,.dashboard-tasks-header{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.dashboard-events-header{color:var(--color-brand-600)}.dashboard-tasks-header{color:var(--color-warning-500)}.dashboard-section-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--accent)}.dashboard-section-icon svg{width:100%;height:100%}.planner-item{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);transition:all var(--transition-fast);position:relative;background:var(--bg-primary);border:1px solid var(--border);border-left-width:2px;box-shadow:0 1px 3px #00000014;animation:slideInItem .4s cubic-bezier(.4,0,.2,1) both}.planner-item:nth-child(1){animation-delay:0s}.planner-item:nth-child(2){animation-delay:.05s}.planner-item:nth-child(3){animation-delay:.1s}.planner-item:nth-child(4){animation-delay:.15s}.planner-item:nth-child(5){animation-delay:.2s}.planner-item:nth-child(6){animation-delay:.25s}.planner-item:nth-child(7){animation-delay:.3s}.planner-item:nth-child(8){animation-delay:.35s}.planner-item:nth-child(9){animation-delay:.4s}.planner-item:nth-child(10){animation-delay:.45s}@keyframes slideInItem{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.planner-item-event{background:linear-gradient(135deg,rgba(99,102,241,.08),var(--bg-primary))}.planner-item-task{background:linear-gradient(135deg,rgba(245,158,11,.08),var(--bg-primary))}.planner-item-task .planner-item-content{flex-direction:row;align-items:center}.planner-item-event .planner-item-text{display:flex;flex-direction:column;gap:var(--space-1)}.planner-item:not(:last-child){margin-bottom:var(--space-3)}.planner-item:hover{background:var(--bg-hover);border-color:var(--accent);transform:translate(4px) scale(1.01);box-shadow:0 4px 12px #0000001f}.planner-item-content{flex:1;display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.planner-item-time{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:700;color:var(--color-brand-600);background:#6366f11f;border-radius:var(--radius-lg);border:1px solid rgba(99,102,241,.3);position:relative;box-shadow:0 1px 3px #6366f11a}.planner-item-text{font-size:var(--font-size-base);color:var(--text-primary);font-weight:500;flex:1;min-width:0;line-height:1.6}.planner-item-location{font-size:var(--font-size-sm);font-weight:500;color:var(--color-brand-500);display:inline-flex;align-items:center;gap:var(--space-1-5);text-decoration:none;transition:all var(--transition-fast);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:#6366f114;margin-top:var(--space-2);width:fit-content;border:1px solid rgba(99,102,241,.2)}.planner-item-location:hover{background:#6366f126;color:var(--color-brand-600);border-color:#6366f14d;transform:translate(2px)}.planner-item-location:active{transform:translate(2px) scale(.98)}.planner-item-location .location-icon{display:inline-flex;width:16px;height:16px}.planner-item-location .location-icon svg{width:100%;height:100%}.planner-item-project,.planner-item-calendar{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);font-style:normal;display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border)}.planner-item-copy{opacity:0;background:#6366f11a;color:var(--accent);border:1px solid rgba(99,102,241,.2);padding:var(--space-1);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;flex-shrink:0}.planner-item:hover .planner-item-copy{opacity:1}.planner-item-copy:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:scale(1.1)}.planner-item-copy:active{transform:scale(.95)}.planner-item-copy svg{width:12px;height:12px}.planner-item-copy.copied{background:var(--success);color:#fff;border-color:var(--success);animation:copy-success .3s ease-out}@keyframes copy-success{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.planner-item[data-priority="1"]{border-left-width:2px;border-left-color:var(--color-info-500)}.planner-item[data-priority="2"]{border-left-width:3px;border-left-color:var(--color-info-500)}.planner-item[data-priority="3"]{border-left-width:4px;border-left-color:var(--color-warning-500);box-shadow:0 2px 8px #f973161f}.planner-item[data-priority="4"]{border-left-width:5px;border-left-color:var(--color-error-500);box-shadow:0 2px 12px #ef444433,-2px 0 8px #ef444426;animation:priority-glow 3s ease-in-out infinite}@keyframes priority-glow{0%,to{box-shadow:0 2px 12px #ef444433,-2px 0 8px #ef444426}50%{box-shadow:0 2px 16px #ef44444d,-3px 0 12px #ef444440}}.planner-item.all-day .planner-item-time{font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,var(--color-purple-400),#EC4899);color:#fff;border:none;box-shadow:0 2px 8px #a855f74d;padding:var(--space-2) var(--space-3)}.dashboard-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);text-align:center;color:var(--text-secondary);font-size:var(--font-size-base);background:var(--color-success-900);border:2px dashed rgba(52,211,153,.4);border-radius:var(--radius-lg);position:relative;overflow:hidden}.dashboard-empty:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(52,211,153,.1) 0%,transparent 70%);animation:rotate-gradient 20s linear infinite}@keyframes rotate-gradient{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dashboard-empty-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--color-success-500),var(--color-success-400));color:#fff;margin-bottom:var(--space-4);display:flex;align-items:center;justify-content:center;padding:var(--space-3);border-radius:50%;box-shadow:0 4px 12px #10b9814d;position:relative;z-index:1;animation:checkmark-draw 1s ease-out}@keyframes checkmark-draw{0%{transform:scale(0) rotate(-45deg);opacity:0}50%{transform:scale(1.2) rotate(-45deg)}to{transform:scale(1) rotate(0);opacity:1}}.dashboard-empty-icon svg{width:100%;height:100%}.dashboard-empty p{margin:0;font-weight:600;position:relative;z-index:1}.dashboard-empty p:first-of-type{font-size:var(--font-size-lg);color:var(--text-primary);margin-bottom:var(--space-2)}.dashboard-empty p:last-of-type{color:var(--text-muted);font-size:var(--font-size-sm)}.dashboard-error{background:var(--color-warning-900);border:2px solid rgba(251,191,36,.4);border-left:4px solid var(--color-warning-500);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4);font-size:var(--font-size-md);display:flex;align-items:center;gap:var(--space-3);box-shadow:0 2px 8px #f59e0b26}.dashboard-error:before{content:"⚠️";font-size:var(--font-size-xl);flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(135deg,var(--color-warning-400),var(--color-warning-500));border-radius:50%;border:2px solid white;box-shadow:0 2px 6px #f59e0b4d}.dashboard-error strong{font-weight:700;color:var(--text-primary)}.planner-entry:focus-visible{outline:3px solid var(--accent);outline-offset:2px;background-color:var(--bg-hover)}.planner-refresh-btn:focus-visible,.planner-reset-btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px #6366f133}.planner-reset-btn:focus-visible{outline-color:var(--error);box-shadow:0 0 0 4px #ef444433}.planner-item-copy:focus-visible{outline:3px solid white;outline-offset:2px;opacity:1;box-shadow:0 0 0 4px #6366f14d}.planner-item-location:focus-visible{outline:3px solid white;outline-offset:2px;box-shadow:0 0 0 4px #6366f14d}.dashboard-section details summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px #6366f126}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){.planner-item{border-width:2px}.dashboard-section.overdue{border-width:3px}.planner-item[data-priority="4"]:before{width:8px}}@media(max-width:768px){.planner-dashboard-message{margin:var(--space-2);padding:var(--space-4)}.dashboard-header{flex-direction:column;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4)}.dashboard-title{font-size:var(--font-size-xl)}.dashboard-actions{width:100%;display:flex;gap:var(--space-2)}.planner-refresh-btn,.planner-reset-btn{flex:1;justify-content:center;min-height:44px;padding:var(--space-3)}.planner-refresh-btn span,.planner-reset-btn span{display:none}.planner-refresh-btn svg,.planner-reset-btn svg{width:18px;height:18px}.planner-item{gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-3)}.planner-item-time{width:100%;font-size:var(--font-size-xs);padding:var(--space-2)}.planner-item-content{width:100%}.planner-item-copy{opacity:.8;min-width:28px;height:28px;padding:var(--space-1-5)}.planner-item:hover .planner-item-copy{opacity:.8}.planner-item-copy:active{opacity:1;background:var(--accent);color:#fff;transform:scale(.95)}.planner-item-copy svg{width:14px;height:14px}.dashboard-day-icon{width:28px;height:28px}.dashboard-day-header{font-size:var(--font-size-lg);padding:var(--space-2-5)}.dashboard-events-header,.dashboard-tasks-header{font-size:var(--font-size-sm)}.planner-item-location{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);min-height:36px}.dashboard-loading{padding:var(--space-8)}.dashboard-loading-icon{width:40px;height:40px}.dashboard-empty{padding:var(--space-8)}.dashboard-empty-icon{width:48px;height:48px}}.agents-entry{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-primary);transition:background-color var(--transition-fast),border-color var(--transition-fast);background-color:var(--bg-secondary)}.agents-entry:hover{background-color:var(--bg-hover)}.agents-entry.active{background-color:var(--accent-muted)}.agents-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.agents-icon svg{width:20px;height:20px;color:var(--accent)}.agents-label{font-size:var(--font-size-base);font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agents-entry .waiting-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--space-1);font-size:var(--font-size-xs);font-weight:600;color:#fff;background-color:var(--color-warning-500);border-radius:var(--radius-full);flex-shrink:0;animation:waiting-pulse 2s ease-in-out infinite}.agents-entry .error-indicator{width:8px;height:8px;background:var(--color-error-500);border-radius:50%;flex-shrink:0}@keyframes waiting-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}.command-center{padding:var(--space-4);max-width:900px;margin:0 auto}.command-center--loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px}.command-center-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.command-center-loading p{font-size:var(--font-size-base);color:var(--text-secondary)}.command-center-error{padding:var(--space-6);text-align:center}.command-center-error .error-message{background:var(--color-error-900);border:2px solid rgba(248,113,113,.3);border-left:4px solid var(--color-error-500);border-radius:var(--radius-lg);padding:var(--space-4);color:var(--text-primary)}.command-center-stale-warning{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);background:var(--color-warning-900);border:1px solid var(--color-warning-500);border-radius:var(--radius-md);color:var(--color-warning-600);font-size:var(--font-size-sm)}.command-center-stale-warning .warning-icon{display:flex;align-items:center;flex-shrink:0}.command-center-stale-warning .warning-icon svg{width:18px;height:18px;color:var(--color-warning-500)}.command-center-stale-warning .btn-retry{margin-left:auto;padding:var(--space-1) var(--space-3);background:transparent;border:1px solid var(--color-warning-500);border-radius:var(--radius-sm);color:var(--color-warning-500);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.command-center-stale-warning .btn-retry:hover{background:var(--color-warning-500);color:#fff}.command-center-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.command-center-title{display:flex;align-items:center;gap:var(--space-3)}.command-center-title h2{font-size:var(--font-size-2xl);font-weight:700;margin:0;background:linear-gradient(135deg,var(--text-primary),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.command-center-icon{display:flex;align-items:center;justify-content:center}.command-center-icon svg{width:28px;height:28px;color:var(--accent)}.command-center-header-actions{display:flex;align-items:center;gap:var(--space-2)}.command-center-header .btn-refresh,.command-center-header .btn-new-agent{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm);font-weight:500}.command-center-header .btn-refresh svg,.command-center-header .btn-new-agent svg{width:16px;height:16px}.command-center-header .btn-refresh:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.command-center-header .btn-new-agent{background:var(--accent);border-color:var(--accent);color:#fff}.command-center-header .btn-new-agent:hover{background:var(--color-brand-600);border-color:var(--color-brand-600)}.command-center-section{margin-bottom:var(--space-6)}.command-center-section:last-child{margin-bottom:0}.section-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin:0 0 var(--space-4) 0}.section-icon{display:flex;align-items:center;justify-content:center}.section-icon svg{width:20px;height:20px;color:var(--accent)}.command-center-section--approvals .section-icon svg{color:var(--color-success-500)}.command-center-section--approvals.has-approvals{background:var(--color-warning-50);border:2px solid var(--color-warning-400);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6)}.command-center-section--approvals.has-approvals .section-icon svg{color:var(--color-warning-500)}.command-center-section--approvals.has-approvals .section-title{color:var(--color-warning-700)}[data-theme=dark] .command-center-section--approvals.has-approvals{background:#eab3081a;border-color:var(--color-warning-500)}[data-theme=dark] .command-center-section--approvals.has-approvals .section-title{color:var(--color-warning-400)}.approvals-empty{padding:var(--space-4);text-align:center;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:var(--radius-md)}.approvals-empty p{margin:0}.approvals-empty p:first-child{font-weight:500;color:var(--text-primary)}.approvals-empty .text-muted{font-size:var(--font-size-sm);margin-top:var(--space-1)}.badge{font-size:var(--font-size-xs);font-weight:600;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-secondary)}.badge--warning{background:var(--color-warning-900);color:var(--color-warning-600)}.agents-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.agent-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);cursor:pointer;transition:all var(--transition-fast)}.agent-card:hover{border-color:var(--accent);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.agent-card--disabled{opacity:.6}.agent-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.agent-card-title-row{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0}.agent-card-title-row .unread-badge{margin-left:0;font-size:10px;min-width:16px;height:16px;padding:0 4px}.status-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-indicator--warning{background:var(--color-warning-500);animation:waiting-pulse 2s ease-in-out infinite}.status-indicator--disabled{background:var(--text-muted)}.status-indicator--success{background:var(--color-success-500)}.status-indicator--error{background:var(--color-error-500)}.agent-name{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-card-actions{display:flex;gap:var(--space-2)}.btn-icon{display:flex;align-items:center;justify-content:center;padding:var(--space-2);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.btn-icon svg{width:16px;height:16px}.btn-icon:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.btn-run:hover{border-color:var(--color-success-500);color:var(--color-success-500)}.btn-run-labeled{gap:var(--space-1)}.btn-run-label{font-size:var(--font-size-xs);font-weight:500}@media(max-width:480px){.btn-run-label{display:none}}.agent-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--space-3) 0;line-height:1.5;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.agent-card-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--text-muted)}.agent-schedule{display:flex;align-items:center;gap:var(--space-1)}.agent-last-run,.agent-next-run{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--bg-tertiary);border-radius:var(--radius-sm)}.approvals-list{display:flex;flex-direction:column;gap:var(--space-3)}.approval-card{background:var(--color-warning-900);border:2px solid rgba(251,191,36,.3);border-left:4px solid var(--color-warning-500);border-radius:var(--radius-lg);padding:var(--space-4)}.approval-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.approval-agent-name{font-size:var(--font-size-base);font-weight:600;color:var(--text-primary)}.approval-time{font-size:var(--font-size-xs);color:var(--text-muted)}.approval-card-content{margin-bottom:var(--space-3)}.approval-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0 0 var(--space-2) 0;line-height:1.5}.approval-meta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.approval-tool{display:inline-block}.approval-tool .tool-name{font-size:var(--font-size-xs);font-weight:500;color:var(--text-secondary);background:var(--bg-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono)}.approval-schedule{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--text-muted)}.approval-schedule svg{width:12px;height:12px;flex-shrink:0}.tool-args{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.tool-arg{font-size:var(--font-size-xs);color:var(--text-muted);background:var(--bg-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-arg-key{color:var(--text-secondary);font-weight:500}.tool-args-more{font-size:var(--font-size-xs);color:var(--text-muted);padding:var(--space-1) var(--space-2)}.approval-card-actions{display:flex;gap:var(--space-2)}.approval-card-actions .btn{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-approve{background:var(--color-success-500);border:none;color:#fff}.btn-approve:hover{background:var(--color-success-600)}.btn-approve svg{width:14px;height:14px}.btn-reject{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary)}.btn-reject:hover{background:var(--color-error-900);border-color:var(--color-error-500);color:var(--color-error-500)}.btn-reject svg{width:14px;height:14px}.command-center .empty-state{text-align:center;padding:var(--space-8);color:var(--text-secondary)}.command-center .empty-state p{margin:0}.command-center .empty-state p:first-child{font-size:var(--font-size-base);margin-bottom:var(--space-2)}.command-center .empty-state .text-muted{font-size:var(--font-size-sm);color:var(--text-muted)}.command-center .empty-state .btn-create-agent{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3) var(--space-5);background:var(--accent);border:none;border-radius:var(--radius-md);color:#fff;font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.command-center .empty-state .btn-create-agent svg{width:18px;height:18px}.command-center .empty-state .btn-create-agent:hover{background:var(--color-brand-600);transform:translateY(-1px)}@media(max-width:768px){.command-center{padding:var(--space-3)}.command-center-header{flex-direction:column;align-items:stretch;gap:var(--space-3)}.command-center-header-actions{display:flex;gap:var(--space-2)}.command-center-header .btn-new-agent{flex:1;justify-content:center}.command-center-header .btn-refresh{flex-shrink:0}.command-center-title h2{font-size:var(--font-size-xl)}.agents-list{grid-template-columns:1fr}.agent-card{padding:var(--space-3)}.approval-card-actions{flex-direction:column}.approval-card-actions .btn{width:100%;justify-content:center}}.command-center-section--executions{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border)}.section-title--collapsible{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.section-title--collapsible:hover{color:var(--accent)}.section-toggle{margin-left:auto;font-size:var(--font-size-xs);color:var(--text-muted);transition:transform var(--transition-fast)}.executions-list{display:flex;flex-direction:column;gap:var(--space-2)}.executions-list.collapsed{display:none}.execution-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border-radius:var(--radius-md);border-left:3px solid var(--border)}.execution-item--completed{border-left-color:var(--color-success-500)}.execution-item--failed{border-left-color:var(--color-error-500)}.execution-item--running{border-left-color:var(--accent)}.execution-item--waiting_approval{border-left-color:var(--color-warning-500)}.execution-item-main{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0}.execution-status{font-size:var(--font-size-sm);flex-shrink:0}.execution-item--completed .execution-status{color:var(--color-success-500)}.execution-item--failed .execution-status{color:var(--color-error-500)}.execution-item--running .execution-status{color:var(--accent);animation:spin 1s linear infinite}.execution-item--waiting_approval .execution-status{color:var(--color-warning-500)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.execution-agent-name{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.execution-trigger{font-size:var(--font-size-xs);color:var(--text-muted);background:var(--bg-tertiary);padding:2px var(--space-2);border-radius:var(--radius-sm);flex-shrink:0}.execution-item-meta{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.execution-time{font-size:var(--font-size-xs);color:var(--text-muted)}.execution-duration{font-size:var(--font-size-xs);color:var(--text-secondary);background:var(--bg-tertiary);padding:2px var(--space-2);border-radius:var(--radius-sm)}.agents-entry:focus-visible{outline:3px solid var(--accent);outline-offset:2px;background-color:var(--bg-hover)}.agent-card:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.btn-icon:focus-visible,.btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.agents-entry .waiting-badge,.status-indicator--warning{animation:none}.agent-card:hover{transform:none}}.agent-editor-modal{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:agent-editor-overlay-in var(--transition-normal) ease-out}.agent-editor-modal.agent-editor-hidden{display:none}.agent-editor-modal.agent-editor-overlay-exit{animation:agent-editor-overlay-out var(--transition-fast) ease-in forwards}@keyframes agent-editor-overlay-in{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{opacity:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}@keyframes agent-editor-overlay-out{0%{opacity:1}to{opacity:0}}.agent-editor{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;animation:agent-editor-in var(--transition-normal) ease-out;box-shadow:0 25px 50px #00000040}.agent-editor.agent-editor-exit{animation:agent-editor-out var(--transition-fast) ease-in forwards}@keyframes agent-editor-in{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes agent-editor-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.agent-editor-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.agent-editor-title-row{display:flex;align-items:center;gap:var(--space-3)}.agent-editor-icon svg{width:24px;height:24px;color:var(--accent)}.agent-editor-header h2{margin:0;font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary)}.agent-editor-close{display:flex;align-items:center;justify-content:center;padding:var(--space-2);background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.agent-editor-close svg{width:20px;height:20px}.agent-editor-close:hover{background:var(--bg-hover);color:var(--text-primary)}.agent-editor-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-5);min-height:0}.agent-editor-form{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;overflow:hidden}.form-group{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.form-group label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.form-group .required{color:var(--color-error-500)}.form-input{padding:var(--space-3);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-size-base);font-family:inherit;transition:border-color var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.form-input::placeholder{color:var(--text-muted)}.form-textarea{resize:vertical;min-height:80px}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;background-size:16px;padding-right:var(--space-8)}.form-help{font-size:var(--font-size-xs);color:var(--text-muted)}.form-input--error{border-color:var(--color-error-500)}.form-input--error:focus{border-color:var(--color-error-500);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-error-500) 20%,transparent)}.form-error{font-size:var(--font-size-xs);color:var(--color-error-500)}.form-error--hidden{display:none}.form-textarea--large{min-height:150px;resize:vertical}.custom-cron-container{margin-top:var(--space-2)}.custom-cron-container.hidden{display:none}.tool-permissions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);min-width:0;overflow:hidden}@media(max-width:600px){.tool-permissions-grid{grid-template-columns:1fr}}.tool-permission-card{display:block;cursor:pointer}.tool-permission-card input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.tool-permission-content{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);transition:all var(--transition-fast);min-width:0}.tool-permission-card:hover .tool-permission-content{border-color:var(--border-hover);background:var(--bg-hover)}.tool-permission-card input:checked+.tool-permission-content{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.tool-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast)}.tool-icon svg{width:20px;height:20px}.tool-permission-card input:checked+.tool-permission-content .tool-icon{background:var(--accent);color:#fff}.tool-details{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.tool-name{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.tool-description{font-size:var(--font-size-xs);color:var(--text-muted);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-checkbox-indicator{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;border:2px solid var(--border);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.tool-checkbox-indicator:after{content:"";display:block;width:10px;height:10px;border-radius:2px;background:transparent;transition:background var(--transition-fast)}.tool-permission-card input:checked+.tool-permission-content .tool-checkbox-indicator{border-color:var(--accent);background:var(--accent)}.tool-permission-card input:checked+.tool-permission-content .tool-checkbox-indicator:after{width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;border-radius:0;background:transparent;transform:rotate(45deg);margin-bottom:2px}.form-group-inline{flex-direction:row;align-items:center}.toggle-label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.toggle-label input[type=checkbox]{display:none}.toggle-switch{position:relative;width:44px;height:24px;background:var(--bg-tertiary);border-radius:var(--radius-full);transition:background-color var(--transition-fast)}.toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform var(--transition-fast);box-shadow:0 1px 3px #0003}.toggle-label input[type=checkbox]:checked+.toggle-switch{background:var(--accent)}.toggle-label input[type=checkbox]:checked+.toggle-switch:after{transform:translate(20px)}.toggle-text{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.agent-editor-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border)}.agent-editor-footer-right{display:flex;gap:var(--space-3)}.agent-editor-footer .btn{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.agent-editor-footer .btn-secondary{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary)}.agent-editor-footer .btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.agent-editor-footer .btn-primary{background:var(--accent);border:1px solid var(--accent);color:#fff}.agent-editor-footer .btn-primary:hover{background:var(--color-brand-600);border-color:var(--color-brand-600)}.agent-editor-footer .btn-primary:disabled,.agent-editor-footer .btn-danger:disabled{opacity:.6;cursor:not-allowed}.agent-editor-footer .btn-danger{background:color-mix(in srgb,var(--color-error-500) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-error-500) 30%,transparent);color:var(--color-error-500)}.agent-editor-footer .btn-danger:hover{background:color-mix(in srgb,var(--color-error-500) 20%,transparent);border-color:var(--color-error-500)}.schedule-presets{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.schedule-preset-chip{padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.schedule-preset-chip:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.schedule-preset-chip.selected{background:var(--accent);border-color:var(--accent);color:#fff}.schedule-natural-input{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-2)}.schedule-result{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3)}.schedule-result.hidden{display:none}.schedule-result-info{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}#schedule-explanation{font-size:var(--font-size-sm);color:var(--text-primary)}.schedule-cron-badge{display:flex;align-items:center;gap:var(--space-2)}.schedule-cron-badge code{font-family:var(--font-mono);font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--accent)}.btn-icon-tiny{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast)}.btn-icon-tiny:hover{background:var(--bg-hover);color:var(--text-primary)}.cron-edit-container{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.cron-edit-container.hidden{display:none}.cron-edit-container .form-input{margin-bottom:var(--space-1)}.form-help-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.btn-with-icon{display:inline-flex;align-items:center;gap:var(--space-1)}.btn-with-icon svg{width:14px;height:14px}.btn-sm{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.form-input-sm{padding:var(--space-2);font-size:var(--font-size-sm)}@media(max-width:768px){.agent-editor-modal{padding:0;align-items:flex-end}.agent-editor{max-width:none;max-height:95vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.schedule-presets{gap:var(--space-1)}.schedule-preset-chip{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.schedule-natural-input{flex-direction:column}.schedule-result-info,.form-help-row{flex-direction:column;align-items:flex-start;gap:var(--space-2)}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
