@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Outfit:wght@400;500;600;700&display=swap";:root{--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Roboto Mono", Menlo, Monaco, Consolas, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--sidebar-width:260px;--sidebar-w:260px;--header-height:56px;--composer-max-width:768px;--chat-column-max-width:768px;--z-base:0;--z-elevated:10;--z-sticky:100;--z-sidebar:200;--z-drawer-scrim:290;--z-drawer:300;--z-backdrop:400;--z-modal:500;--z-popover:600;--z-dropdown:700;--z-toast:1000;--z-tooltip:1100;--dur-fast:.12s;--dur-base:.2s;--dur-slow:.3s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-750:#2b2f36;--gray-800:#1f2937;--gray-850:#171f2c;--gray-900:#111827;--gray-950:#0b0f17;--green-400:#34d399;--green-500:#10a37f;--green-600:#059669;--green-700:#047857;--blue-400:#60a5fa;--blue-500:#2563eb;--blue-600:#1d4ed8;--purple-400:#a78bfa;--purple-500:#7c3aed;--purple-600:#6d28d9;--amber-400:#fbbf24;--amber-500:#d97706;--amber-600:#b45309;--rose-400:#f43f5e;--rose-500:#e11d48;--rose-600:#be123c;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--red-500:#ef4444;--red-600:#dc2626;--accent:var(--green-500);--accent-hover:var(--green-600);--accent-subtle:#10a37f26;--accent-border:#10a37f4d}[data-accent=green]{--accent:var(--green-500);--accent-hover:var(--green-600);--accent-subtle:#10a37f26;--accent-border:#10a37f4d}[data-accent=blue]{--accent:var(--blue-500);--accent-hover:var(--blue-600);--accent-subtle:#2563eb26;--accent-border:#2563eb4d}[data-accent=purple]{--accent:var(--purple-500);--accent-hover:var(--purple-600);--accent-subtle:#7c3aed26;--accent-border:#7c3aed4d}[data-accent=amber]{--accent:var(--amber-500);--accent-hover:var(--amber-600);--accent-subtle:#d9770626;--accent-border:#d977064d}[data-accent=rose]{--accent:var(--rose-500);--accent-hover:var(--rose-600);--accent-subtle:#e11d4826;--accent-border:#e11d484d}[data-accent=slate]{--accent:var(--slate-500);--accent-hover:var(--slate-600);--accent-subtle:#64748b26;--accent-border:#64748b4d}:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-app:#212121;--bg-sidebar:#171717;--bg-sidebar-hover:#212121;--bg-sidebar-active:#2f2f2f;--bg-elevated:#2f2f2f;--bg-surface:#2f2f2f;--bg-surface-hover:#383838;--bg-surface-active:#424242;--bg-input:#2f2f2f;--bg-bubble-user:#2f2f2f;--bg-bubble-ai:transparent;--bg-modal:#212121;--bg-card:#ffffff0a;--bg-tooltip:#000;--text-primary:#ececec;--text-secondary:#b4b4b4;--text-muted:#8e8e8e;--text-inverse:#0d0d0d;--text-link:#60a5fa;--border-subtle:#ffffff1a;--border-medium:#ffffff26;--border-strong:#ffffff40;--border-focus:#fff3;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -2px #0006;--shadow-lg:0 10px 15px -3px #00000080, 0 4px 6px -4px #00000080;--shadow-xl:0 20px 25px -5px #0009, 0 8px 10px -6px #0009;--scrollbar-thumb:#fff3;--scrollbar-thumb-hover:#ffffff59;--bg-obsidian:var(--bg-app);--bg-chat:var(--bg-app);--border-color:var(--border-subtle);--accent-color:var(--accent);--accent-gradient:var(--accent)}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-app:#fff;--bg-sidebar:#f9f9f9;--bg-sidebar-hover:#ececec;--bg-sidebar-active:#e3e3e3;--bg-elevated:#fff;--bg-surface:#f4f4f4;--bg-surface-hover:#eaeaea;--bg-surface-active:#dfdfdf;--bg-input:#f4f4f4;--bg-bubble-user:#f4f4f4;--bg-bubble-ai:transparent;--bg-modal:#fff;--bg-card:#00000008;--bg-tooltip:#1f2937;--text-primary:#0d0d0d;--text-secondary:#5d5d5d;--text-muted:#8f8f8f;--text-inverse:#fff;--text-link:#2563eb;--border-subtle:#0000001a;--border-medium:#00000026;--border-strong:#00000040;--border-focus:#0003;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #00000026, 0 8px 10px -6px #00000026;--scrollbar-thumb:#0003;--scrollbar-thumb-hover:#00000059;--bg-obsidian:var(--bg-app);--bg-chat:var(--bg-app);--border-color:var(--border-subtle);--accent-color:var(--accent);--accent-gradient:var(--accent)}html{height:100%;margin:0;padding:0;overflow:hidden}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-obsidian);color:var(--text-primary);-webkit-font-smoothing:antialiased;overscroll-behavior:none;width:100vw;height:100dvh;position:fixed;inset:0;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#fff3}button,a,label,[role=button]{touch-action:manipulation}.app-error-boundary{text-align:center;background:radial-gradient(circle at top,#ffffff0f,#0000 55%);flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:100dvh;padding:24px;display:flex}.app-error-boundary h1{color:#fff;font-size:1.6rem;font-family:var(--font-display)}.app-error-boundary p{color:var(--text-secondary);max-width:520px}.app-error-boundary button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:10px;margin-top:8px;padding:10px 16px}.icon,svg.icon{width:var(--icon-size,18px);height:var(--icon-size,18px);stroke:currentColor;fill:none;vertical-align:-.125em;flex-shrink:0}.icon--mr-1{margin-right:4px}.icon--mr-2{margin-right:6px}.icon--mr-3{margin-right:8px}.icon--valign-1{vertical-align:-1px}.icon--valign-2{vertical-align:-2px}.icon--valign-3{vertical-align:-3px}.app-shell{background-color:var(--bg-obsidian);width:100vw;height:100dvh;padding-top:env(safe-area-inset-top,0px);display:flex;position:relative;overflow:hidden}.sidebar-rail{width:var(--sidebar-w,260px);min-width:0;height:100%;transition:width var(--dur-base) var(--ease-out);background-color:var(--bg-sidebar);border-right:1px solid var(--border-subtle);z-index:var(--z-sidebar);flex-shrink:0;position:relative;overflow:hidden}.sidebar-rail.is-collapsed{border-right-color:#0000;width:0}.sidebar-rail-inner{width:260px;height:100%;overflow:hidden}.chat-column{background-color:var(--bg-chat);flex-direction:column;flex:1;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.chat-main-area{flex-direction:column;flex:1;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.content-column{width:100%;max-width:var(--content-max,768px);padding-inline:var(--space-4);margin-inline:auto}.mobile-drawer-scrim{background:var(--bg-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out);z-index:var(--z-drawer-scrim);position:fixed;inset:0}.mobile-drawer-scrim.is-open{opacity:1;pointer-events:auto}.mobile-drawer-rail{background:var(--bg-sidebar);width:280px;max-width:85vw;z-index:var(--z-drawer);transition:transform var(--dur-base) var(--ease-out);box-shadow:var(--shadow-xl);position:fixed;top:0;bottom:0;left:0;overflow:hidden;transform:translate(-100%)}.mobile-drawer-rail.is-open{transform:translate(0)}.welcome-chip:hover{background:var(--bg-surface-hover);border-color:var(--border-focus);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.app-container{background-color:var(--bg-obsidian);width:100vw;height:100dvh;padding-top:env(safe-area-inset-top,0px);display:flex;position:relative;overflow:hidden}.chat-space{background-color:var(--bg-chat);flex-direction:column;flex:1;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.welcome-screen{text-align:center;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px 20px;display:flex}.scroll-to-bottom-btn{color:var(--text-primary);cursor:pointer;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#2f2f2fe6;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;animation:.2s fade-in;display:flex;position:absolute;bottom:80px;right:50%;transform:translate(50%);box-shadow:0 4px 12px #0000004d}.scroll-to-bottom-btn:hover{background-color:#3c3c3cf2}.messages-container{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;flex-direction:column;flex:1;gap:20px;padding:24px 0;display:flex;overflow-y:auto}.welcome-logo{width:80px;height:80px;box-shadow:none;background:#ffffff0a;border-radius:20px;justify-content:center;align-items:center;margin-bottom:24px;display:flex}.welcome-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:8px;font-size:1.8rem;font-weight:700}.welcome-desc{max-width:400px;font-size:1rem;line-height:1.5}.welcome-starter-chips{flex-wrap:wrap;justify-content:center;gap:10px;max-width:560px;margin-top:20px;display:flex}.welcome-chip{background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);border-radius:20px;align-items:center;gap:6px;padding:8px 14px;display:inline-flex}.sidebar{background-color:var(--bg-sidebar);-webkit-user-select:none;user-select:none;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.sidebar-header{border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;height:52px;padding:0 16px;display:flex}.sidebar-brand{font-family:var(--font-display);font-size:var(--text-base);color:var(--text-primary);align-items:center;gap:8px;font-weight:700;display:flex}.sidebar-header-actions{align-items:center;gap:4px;display:flex}.sidebar-action-buttons{flex-direction:column;flex-shrink:0;gap:6px;padding:12px 12px 6px;display:flex}.new-chat-btn{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font-sans);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;gap:8px;padding:10px 14px;display:flex}.new-chat-btn:hover{background:var(--bg-surface-hover);border-color:var(--border-focus)}.temp-chat-btn{border:1px dashed var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-secondary);font-family:var(--font-sans);font-weight:500;font-size:var(--text-xs);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:0 0;justify-content:center;align-items:center;gap:8px;padding:8px 14px;display:flex}.temp-chat-btn:hover{background:var(--bg-surface-hover);border-color:var(--border-focus);color:var(--text-primary)}.temp-chat-btn.active{color:var(--amber-400);background:#f59e0b1f;border:1px solid #f59e0b59}.sidebar-search-container{flex-shrink:0;padding:6px 12px}.sidebar-search-wrapper{align-items:center;width:100%;display:flex;position:relative}.sidebar-search-input{border-radius:var(--radius-md);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);font-size:var(--text-xs);font-family:var(--font-sans);transition:border-color var(--dur-fast) var(--ease-out);background:#0003;outline:none;padding:7px 28px 7px 30px}.sidebar-search-input:focus{border-color:var(--border-focus)}.sidebar-search-icon{color:var(--text-muted);pointer-events:none;width:14px;height:14px;position:absolute;left:8px}.sidebar-search-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:2px;display:flex;position:absolute;right:6px}.sidebar-search-clear:hover{color:var(--text-primary)}.sessions-list-container{flex:1;min-height:0;padding:4px 8px;overflow-y:auto}.sidebar-date-group{margin-bottom:12px}.sidebar-date-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:6px 10px 4px;font-size:.7rem;font-weight:700}.session-item{border-radius:var(--radius-md);cursor:pointer;height:36px;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:2px;padding:0 8px 0 10px;text-decoration:none;display:flex;position:relative}.session-item:hover,.session-item:focus-within{background-color:var(--bg-surface-hover);color:var(--text-primary)}.session-item.active{background-color:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-primary);font-weight:500}.session-icon{color:var(--text-muted);flex-shrink:0;align-items:center;display:flex}.session-item.active .session-icon{color:var(--primary)}.session-item-title-wrapper{flex:1;min-width:0;overflow:hidden}.session-item-title{font-size:var(--text-xs);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.session-row-menu-container{flex-shrink:0;align-items:center;display:flex;position:relative}.session-menu-trigger{opacity:0;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:opacity var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.session-item:hover .session-menu-trigger,.session-item:focus-within .session-menu-trigger,.session-menu-trigger.is-active{opacity:1}.session-menu-trigger:hover{color:var(--text-primary);background:var(--bg-surface)}.session-row-dropdown{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);min-width:160px;z-index:var(--z-dropdown);animation:scale-in var(--dur-fast) var(--ease-out);padding:4px;position:absolute;top:100%;right:0}.sidebar-search-empty{text-align:center;font-size:var(--text-xs);color:var(--text-muted);padding:20px 12px}.sidebar-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px 16px;display:flex}.sidebar-empty-icon{color:var(--text-muted);opacity:.6;margin-bottom:4px}.sidebar-empty-title{font-size:var(--text-xs);color:var(--text-secondary);margin:0;font-weight:600}.sidebar-empty-desc{color:var(--text-muted);margin:0 0 8px;font-size:.72rem;line-height:1.3}.sidebar-empty-action-btn{font-size:var(--text-xs);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);padding:6px 12px;font-weight:500}.sidebar-empty-action-btn:hover{background:var(--bg-surface-hover);border-color:var(--border-focus)}.sidebar-divider{border:none;border-top:1px solid var(--border-subtle);margin:6px 4px}.sidebar-footer{border-top:1px solid var(--border-subtle);background:var(--bg-sidebar);flex-shrink:0;padding:10px 12px;position:relative}.sidebar-account-row{border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;justify-content:space-between;align-items:center;padding:6px 8px;display:flex}.sidebar-account-row:hover,.sidebar-account-row.is-active{background:var(--bg-surface-hover);border-color:var(--border-subtle)}.sidebar-account-left{align-items:center;gap:10px;display:flex}.sidebar-account-avatar{background:linear-gradient(135deg, var(--purple-500), var(--indigo-500));color:#fff;width:28px;height:28px;font-size:var(--text-xs);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.sidebar-account-name{font-size:var(--text-sm);font-weight:600}.sidebar-account-dropdown{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);animation:scale-in var(--dur-fast) var(--ease-out);padding:4px;position:absolute;bottom:calc(100% + 8px);left:12px;right:12px}.chat-header{-webkit-backdrop-filter:blur(12px);height:52px;min-height:52px;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);z-index:var(--z-header);background:#121212b3;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:0 16px;display:flex;position:sticky;top:0}.chat-header.is-scrolled{border-bottom-color:var(--border-subtle);background:#121212e0}.chat-header-left{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.chat-header-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.chat-header-nav-group{align-items:center;gap:4px;display:flex}.chat-header-icon-btn{border-radius:var(--radius-md);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.chat-header-icon-btn:hover{background:var(--bg-surface-hover);color:var(--text-primary);border-color:var(--border-subtle)}.chat-header-title-container{min-width:0;max-width:420px;position:relative}.chat-header-title-btn{border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-sm);cursor:pointer;min-width:0;transition:all var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:6px 10px;font-weight:600;display:inline-flex}.chat-header-title-btn:hover{background:var(--bg-surface-hover);border-color:var(--border-subtle)}.chat-header-title-text{white-space:nowrap;text-overflow:ellipsis;max-width:320px;overflow:hidden}.chat-header-chevron{transition:transform var(--dur-fast) var(--ease-out)}.chat-header-chevron.open{transform:rotate(180deg)}.chat-header-overflow-container{position:relative}.dropdown-menu{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:200px;z-index:var(--z-dropdown);animation:scale-in var(--dur-fast) var(--ease-out);padding:4px;position:absolute;top:calc(100% + 4px)}.chat-header-title-dropdown{left:0}.chat-header-overflow-dropdown{right:0}.dropdown-item{width:100%;color:var(--text-secondary);font-size:var(--text-sm);font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;padding:8px 12px;display:flex}.dropdown-item:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.dropdown-item--danger{color:var(--red-400)}.dropdown-item--danger:hover{color:var(--red-400);background:#ef44441a}.temporary-badge{border-radius:var(--radius-full);color:var(--amber-400);font-size:var(--text-xs);background:#f59e0b26;border:1px solid #f59e0b4d;padding:3px 8px;font-weight:600}.active-chat-title{font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:1.05rem;font-weight:500;overflow:hidden}.active-chat-title-container{flex:1;min-width:0}.active-chat-title-row{align-items:center;gap:8px;display:flex}.header-tab-bar{border:1px solid var(--border-color);background:#ffffff08;border-radius:8px;margin-left:24px;padding:2px;display:flex}.header-tab-btn{color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 14px;font-size:.82rem;font-weight:600;transition:all .2s}.header-tab-btn:hover{color:var(--text-primary);background:#ffffff05}.header-tab-btn.active{color:#fff;background:#ffffff0f;border:1px solid #ffffff0d}.card-header-with-icon{border-bottom:1px solid #ffffff0a;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;display:flex}.card-header-with-icon h3{font-family:var(--font-display);color:#fff;font-size:1.15rem;font-weight:600}.active-chat-actions{align-items:center;gap:8px;margin-left:12px;display:flex}.new-chat-top-btn{background:var(--bg-modifier-hover);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.new-chat-top-btn:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.message-row{width:100%;padding:8px 0;display:flex;position:relative}.message-row.user{justify-content:flex-end}.message-row.ai{justify-content:flex-start}.message-row.user .user-message-container{flex-direction:column;align-items:flex-end;max-width:70%;display:flex}.message-row.user .message-bubble{background:var(--bg-bubble-user);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:var(--text-sm);word-break:break-word;overflow-wrap:anywhere;box-shadow:var(--shadow-sm);border-radius:18px;padding:10px 16px;line-height:1.5}.user-action-row{opacity:0;transition:opacity var(--dur-fast) var(--ease-out);align-items:center;gap:4px;margin-top:4px;display:flex}.message-row.user:hover .user-action-row,.message-row.user:focus-within .user-action-row{opacity:1}.message-row.ai .ai-message-container{flex-direction:column;width:100%;display:flex}.message-row.ai .message-bubble{color:var(--text-primary);width:100%;font-size:var(--text-sm);word-break:break-word;overflow-wrap:anywhere;background:0 0;border:none;padding:4px 0;line-height:1.6}.message-action-row{opacity:0;transition:opacity var(--dur-fast) var(--ease-out);align-items:center;gap:2px;margin-top:6px;display:flex}.message-row.ai:hover .message-action-row,.message-row.ai:focus-within .message-action-row{opacity:1}@media (hover:none){.message-action-row,.user-action-row{opacity:1}}.message-action-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--dur-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;padding:4px 6px;display:inline-flex}.message-action-btn:hover{color:var(--text-primary);background:var(--bg-surface-hover)}.message-action-btn.is-active{color:var(--primary);background:var(--bg-surface)}.message-action-btn.is-active.is-positive{color:var(--green-500,#22c55e)}.message-action-btn.is-active.is-negative{color:var(--red-500,#ef4444)}.message-action-btn:disabled{opacity:.4;cursor:not-allowed}.thought-disclosure-container{flex-direction:column;margin-bottom:8px;display:flex}.thought-toggle-btn{color:var(--text-muted);font-size:var(--text-xs);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-weight:500;display:inline-flex}.thought-toggle-btn:hover{color:var(--text-secondary)}.thought-toggle-chevron{transition:transform var(--dur-fast) var(--ease-out)}.thought-toggle-chevron.is-open{transform:rotate(90deg)}.thought-animated-wrapper{transition:grid-template-rows var(--dur-normal) var(--ease-out);grid-template-rows:0fr;display:grid}.thought-animated-wrapper.is-open{grid-template-rows:1fr}.thought-animated-inner{overflow:hidden}.thought-body-box{border-left:2px solid var(--border-subtle);color:var(--text-muted);font-size:var(--text-xs);margin-top:4px;padding:8px 12px;font-style:italic;line-height:1.5}.task-proposal-card,.action-bridge-card,.research-plan-card{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-surface);box-shadow:var(--shadow-sm);margin:10px 0;padding:12px 16px}.task-proposal-header,.action-bridge-header,.research-plan-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.task-proposal-title,.action-bridge-title,.research-plan-title{font-weight:600;font-size:var(--text-sm);color:var(--text-primary);margin:0}.task-proposal-actions,.action-bridge-actions{gap:8px;margin-top:10px;display:flex}.markdown-content{line-height:1.6;font-size:var(--text-sm);color:var(--text-primary);word-break:break-word;overflow-wrap:anywhere}.markdown-content p{margin:0 0 10px}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{font-family:var(--font-display);color:var(--text-primary);margin:16px 0 8px;font-weight:700;line-height:1.3}.markdown-content h1{font-size:1.35rem}.markdown-content h2{font-size:1.2rem}.markdown-content h3{font-size:1.05rem}.markdown-content h4{font-size:.95rem}.markdown-content ul,.markdown-content ol{margin:6px 0 10px 20px;padding:0}.markdown-content li{margin-bottom:4px}.markdown-content li::marker{color:var(--primary)}.markdown-content a{color:var(--primary);text-underline-offset:2px;transition:color var(--dur-fast) var(--ease-out);text-decoration:underline}.markdown-content a:hover{color:var(--primary-hover)}.markdown-content blockquote{border-left:3px solid var(--primary);color:var(--text-secondary);background:var(--bg-surface);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin:8px 0;padding:4px 12px;font-style:italic}.inline-code{font-family:var(--font-mono);border-radius:var(--radius-sm);color:var(--purple-400,#c084fc);background-color:#ffffff14;padding:2px 6px;font-size:.85em}[data-theme=light] .inline-code{color:var(--purple-600,#9333ea);background-color:#0000000f}.code-block-container{font-family:var(--font-mono);background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin:12px 0;overflow:hidden}.code-block-header{border-bottom:1px solid var(--border-subtle);background-color:#0000004d;justify-content:space-between;align-items:center;padding:6px 12px;display:flex}[data-theme=light] .code-block-header{background-color:#0000000a}.code-block-lang{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.code-block-copy-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:4px;padding:3px 6px;font-size:.75rem;display:inline-flex}.code-block-copy-btn:hover{color:var(--text-primary);background:#ffffff0f}.code-copy-check{color:var(--green-500,#22c55e)}.code-block-pre{tab-size:2;font-family:var(--font-mono);margin:0;padding:12px;font-size:.85rem;line-height:1.5;overflow-x:auto}.code-block-pre code{font-family:inherit;font-size:inherit;line-height:inherit;display:block}.md-table-wrap{border-radius:var(--radius-md);border:1px solid var(--border-subtle);margin:12px 0;overflow-x:auto}.md-table-wrap table{border-collapse:collapse;text-align:left;width:100%;font-size:var(--text-xs)}.md-table-wrap th{background:var(--bg-surface);color:var(--text-primary);border-bottom:1px solid var(--border-subtle);padding:8px 12px;font-weight:600}.md-table-wrap td{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);padding:8px 12px}.md-table-wrap tr:last-child td{border-bottom:none}.hljs-keyword,.hljs-selector-tag,.hljs-built_in{color:#f472b6}.hljs-string,.hljs-title,.hljs-section,.hljs-attribute,.hljs-literal,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-addition{color:#34d399}.hljs-comment,.hljs-quote,.hljs-deletion,.hljs-meta{color:#94a3b8;font-style:italic}.hljs-number,.hljs-regexp,.hljs-link{color:#fbbf24}.hljs-variable,.hljs-symbol,.hljs-bullet{color:#60a5fa}.hljs-function{color:#a78bfa}[data-theme=light] .hljs-keyword,[data-theme=light] .hljs-selector-tag,[data-theme=light] .hljs-built_in{color:#db2777}[data-theme=light] .hljs-string,[data-theme=light] .hljs-title{color:#059669}[data-theme=light] .hljs-comment{color:#64748b}[data-theme=light] .hljs-number{color:#d97706}[data-theme=light] .hljs-variable{color:#2563eb}[data-theme=light] .hljs-function{color:#7c3aed}.composer-container{width:100%;max-width:var(--content-max,768px);padding:0 var(--space-4) 10px;z-index:var(--z-sticky);background:linear-gradient(180deg, transparent 0%, var(--bg-canvas) 25%);margin-inline:auto;position:sticky;bottom:0}.composer-chips-row{align-items:center;gap:8px;margin-bottom:6px;padding-left:8px;display:flex}.composer-chip{border-radius:var(--radius-full);font-size:var(--text-xs);animation:scale-in var(--dur-fast) var(--ease-out);align-items:center;gap:6px;padding:3px 8px;font-weight:500;display:inline-flex}.composer-chip--web{color:var(--blue-400,#60a5fa);background:#3b82f626;border:1px solid #3b82f64d}.composer-chip--deep{color:var(--purple-400,#c084fc);background:#a855f726;border:1px solid #a855f74d}.composer-chip-remove{color:inherit;cursor:pointer;opacity:.8;transition:opacity var(--dur-fast) var(--ease-out);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:1px;display:flex}.composer-chip-remove:hover{opacity:1}.composer-pill{background:var(--bg-surface);border:1px solid var(--border-subtle);width:100%;min-height:52px;box-shadow:var(--shadow-md);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);border-radius:26px;align-items:flex-end;gap:8px;padding:8px 10px 8px 12px;display:flex;position:relative}.composer-pill:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 2px var(--primary-glow)}.composer-tools-container{flex-shrink:0;align-items:center;margin-bottom:2px;display:flex;position:relative}.composer-plus-btn{border:1px solid var(--border-subtle);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:0 0;border-radius:50%;justify-content:center;align-items:center;display:flex}.composer-plus-btn:hover{color:var(--text-primary);border-color:var(--border-focus);background:var(--bg-surface-hover)}.composer-plus-btn.is-active{color:var(--primary);border-color:var(--primary);background:#a855f71a}.composer-popover-menu{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);min-width:190px;z-index:var(--z-dropdown);animation:scale-in var(--dur-fast) var(--ease-out);padding:6px;position:absolute;bottom:calc(100% + 10px);left:0}.composer-popover-item{border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-xs);cursor:pointer;text-align:left;transition:background-color var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;padding:8px 10px;font-weight:500;display:flex}.composer-popover-item:hover{background-color:var(--bg-surface-hover)}.composer-popover-item.disabled{opacity:.5;cursor:not-allowed}.composer-popover-check{color:var(--primary);margin-left:auto;font-weight:700}.composer-badge-soon{text-transform:uppercase;background:var(--border-subtle);color:var(--text-muted);border-radius:var(--radius-full);margin-left:auto;padding:1px 5px;font-size:.68rem}.composer-textarea{color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-sm);resize:none;background:0 0;border:none;outline:none;flex:1;min-height:24px;max-height:200px;padding:6px 4px;line-height:1.5;overflow-y:auto}.composer-textarea::placeholder{color:var(--text-muted)}.composer-actions-right{flex-shrink:0;align-items:center;gap:6px;margin-bottom:2px;display:flex}.composer-action-btn{width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.composer-action-btn:hover{color:var(--text-primary);background:var(--bg-surface-hover)}.composer-action-btn:disabled{opacity:.4;cursor:not-allowed}.composer-send-btn{background:var(--text-primary);width:32px;height:32px;color:var(--bg-canvas);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.composer-send-btn:hover:not(:disabled){opacity:.85;transform:scale(1.04)}.composer-send-btn:disabled{background:var(--border-subtle);color:var(--text-muted);cursor:not-allowed;opacity:.6}.composer-send-btn.is-stop{background:var(--text-primary);color:var(--bg-canvas);animation:2s infinite pulse-subtle}.composer-recording-bar{justify-content:space-between;align-items:center;width:100%;padding:4px 6px;display:flex}.recording-indicator{align-items:center;gap:8px;display:flex}.recording-dot{background-color:var(--red-500,#ef4444);border-radius:50%;width:8px;height:8px;animation:1s infinite blink}.recording-label{font-size:var(--text-xs);color:var(--text-primary);font-weight:600}.recording-timer{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}.recording-waveform{align-items:center;gap:3px;height:20px;display:flex}.recording-cancel-btn{color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:6px;display:flex}.recording-cancel-btn:hover{color:var(--red-500,#ef4444)}.recording-stop-btn{background:var(--primary);color:var(--primary-fg);border-radius:var(--radius-full);font-size:var(--text-xs);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);border:none;align-items:center;gap:6px;padding:6px 12px;font-weight:600;display:inline-flex}.composer-transcribing-bar{align-items:center;gap:10px;width:100%;padding:8px 12px;display:flex}.transcribing-spinner{border:2px solid var(--border-subtle);border-top-color:var(--primary);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}.transcribing-label{font-size:var(--text-xs);color:var(--text-secondary)}.composer-disclaimer{text-align:center;color:var(--text-muted);-webkit-user-select:none;user-select:none;margin-top:6px;font-size:11px}.modal-overlay,.memory-panel-overlay{background:var(--bg-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--z-modal);padding:var(--space-4);animation:overlay-appear var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-dialog-box{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:440px;box-shadow:var(--shadow-xl);animation:scale-in var(--dur-fast) var(--ease-out);flex-direction:column;gap:16px;padding:24px;display:flex}.modal-dialog-title{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:700}.modal-actions-row{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.modal-backdrop{background:var(--bg-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);animation:overlay-appear var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.goal-modal-container{background:var(--bg-surface);border:1px solid var(--border-focus);border-radius:var(--radius-xl);width:100%;max-width:500px;box-shadow:var(--shadow-xl);animation:modal-appear var(--dur-fast) cubic-bezier(.4, 0, .2, 1);-webkit-overflow-scrolling:touch;overflow:hidden}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.modal-header h3{font-family:var(--font-display);color:var(--text-primary);font-size:1.2rem}.modal-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:1.1rem}.modal-close:hover{color:var(--text-primary)}.goal-modal-form{padding:24px}.modal-footer{justify-content:flex-end;gap:12px;margin-top:8px;display:flex}.life-audit-overlay{background:var(--bg-overlay);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:var(--z-modal);animation:overlay-appear var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.life-audit-container{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-xl);flex-direction:column;display:flex;overflow:hidden}.audit-wizard-header{padding:20px 24px 12px;position:relative}.audit-wizard-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--text-primary);margin:0;font-size:1.2rem;font-weight:800}.audit-wizard-subtitle{color:var(--text-muted);margin-top:4px;margin-bottom:12px;font-size:.8rem}.audit-wizard-progress-bar{background:#ffffff0f;width:100%;height:3px}.audit-progress-fill{background:var(--purple-500);height:100%;transition:width .3s}.audit-wizard-body{flex:1;padding:24px 28px;overflow-y:auto}.audit-step-indicator{letter-spacing:.12em;color:var(--purple-400);font-size:.7rem;font-weight:800}.audit-step-pane h3{color:var(--text-primary);margin:0 0 4px;font-size:1.05rem;font-weight:700}.audit-step-header-row{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.step-desc{color:var(--text-muted);margin-bottom:20px;font-size:.8rem}.audit-slider{accent-color:var(--purple-500);cursor:pointer}.audit-radio-group{flex-direction:column;gap:10px;display:flex}.audit-radio-card{background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);cursor:pointer;color:var(--text-primary);border-radius:10px;align-items:center;gap:12px;padding:12px 16px;font-size:.85rem;transition:all .2s;display:flex}.audit-radio-card.selected{border-color:var(--purple-500);background:#a855f71a}.audit-form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.audit-form-group label{color:var(--text-secondary);font-size:.78rem;font-weight:600}.audit-step-tabs{gap:6px;margin-top:10px;padding-bottom:4px;display:flex;overflow-x:auto}.audit-tab-chip{background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:.76rem;transition:all .2s;display:flex}.audit-tab-chip:hover{background:var(--bg-surface-hover)}.audit-tab-chip.active{border-color:var(--purple-500);color:var(--text-primary);background:#a855f733;font-weight:600}.audit-input{background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);color:var(--text-primary);font-family:var(--font-sans);border-radius:8px;width:100%;padding:10px 14px;font-size:.88rem}.audit-input:focus{border-color:var(--purple-500);outline:none}.audit-options-grid{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.audit-chip{background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;border-radius:20px;padding:6px 14px;font-size:.8rem;transition:all .2s}.audit-chip.selected{border-color:var(--purple-500);color:var(--text-primary);background:#a855f72e}.audit-add-btn{border:1px solid var(--border-subtle);color:var(--text-primary);cursor:pointer;background:0 0;border-radius:8px;padding:0 16px;font-size:.8rem}.authority-contract-box{background:var(--bg-surface-subtle);border:1px solid #a855f74d;border-radius:12px;padding:18px}.authority-contract-box p{color:var(--text-primary);margin-bottom:16px;font-size:.88rem;font-style:italic;line-height:1.5}.coaching-style-selector{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.coaching-style-card{padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-surface);cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.coaching-style-card:hover{background:var(--bg-surface-hover);border-color:var(--border-focus)}.coaching-style-card.selected{border:2px solid var(--purple-500);background:#a855f71f}.coaching-style-title{font-weight:600;font-size:var(--text-sm);color:var(--text-primary);margin-bottom:6px}.coaching-style-desc{font-size:var(--text-xs);color:var(--text-secondary);margin:0;line-height:1.4}.audit-wizard-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px 28px 24px;display:flex}.audit-nav-btn{cursor:pointer;border-radius:8px;padding:10px 20px;font-size:.85rem;font-weight:700;transition:all .2s}.audit-nav-btn:disabled{opacity:.4;cursor:not-allowed}.audit-nav-btn.prev{border:1px solid var(--border-subtle);color:var(--text-secondary);background:0 0}.audit-nav-btn.prev:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.audit-nav-btn.skip{border:1px dashed var(--border-subtle);color:var(--text-muted);background:0 0}.audit-nav-btn.skip:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.audit-nav-btn.next,.audit-nav-btn.submit{background:var(--purple-500);color:#fff;border:none}.audit-nav-btn.next:hover,.audit-nav-btn.submit:hover{background:var(--purple-600)}.audit-close-btn{background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:.75rem;transition:all .2s}.audit-close-btn:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.audit-loading-pane{padding:var(--space-8);text-align:center;color:var(--text-muted)}.command-palette-dialog{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:80vh;box-shadow:var(--shadow-xl);animation:scale-in var(--dur-fast) var(--ease-out);flex-direction:column;display:flex;overflow:hidden}.command-palette-header{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);align-items:center;gap:12px;padding:14px 18px;display:flex}.command-palette-input{font-size:var(--text-base);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.command-palette-input::placeholder{color:var(--text-muted)}.command-palette-list{flex-direction:column;gap:2px;max-height:380px;padding:8px;display:flex;overflow-y:auto}.command-palette-item{border-radius:var(--radius-md);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.command-palette-item:hover,.command-palette-item.selected{background:var(--bg-surface-hover)}.command-palette-item-content{flex-direction:column;gap:2px;min-width:0;display:flex}.command-palette-item-label{font-size:var(--text-sm);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.command-palette-item-sublabel{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.command-palette-item-category{font-size:var(--text-xs);color:var(--text-muted);background:var(--bg-surface-subtle);border-radius:var(--radius-full);flex-shrink:0;padding:2px 8px}.command-palette-empty{text-align:center;color:var(--text-muted);font-size:var(--text-sm);padding:32px 16px}.shortcuts-dialog{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:520px;box-shadow:var(--shadow-xl);animation:scale-in var(--dur-fast) var(--ease-out);flex-direction:column;gap:18px;padding:24px;display:flex}.shortcuts-header{justify-content:space-between;align-items:center;display:flex}.shortcuts-title{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:700}.shortcuts-grid{flex-direction:column;gap:8px;display:flex}.shortcut-row{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:6px 0;display:flex}.shortcut-row:last-child{border-bottom:none}.shortcut-label{font-size:var(--text-sm);color:var(--text-primary)}.shortcut-keys{align-items:center;gap:4px;display:flex}.shortcut-kbd{min-width:22px;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);background:var(--bg-surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);justify-content:center;align-items:center;padding:3px 6px;display:inline-flex;box-shadow:0 1px 1px #0003}.settings-dialog-layout{background:var(--bg-surface);border-radius:var(--radius-xl);grid-template-columns:200px 1fr;width:100%;min-height:520px;max-height:80vh;display:grid;overflow:hidden}.settings-dialog-sidebar{border-right:1px solid var(--border-subtle);background:var(--bg-surface);flex-direction:column;padding:16px 10px;display:flex;overflow-y:auto}.settings-sidebar-header{border-bottom:1px solid var(--border-subtle);margin-bottom:8px;padding:4px 10px 12px}.settings-sidebar-title{font-family:var(--font-display);font-size:var(--text-base);color:var(--text-primary);margin:0;font-weight:700}.settings-nav-rail{flex-direction:column;gap:2px;display:flex}.settings-nav-btn{width:100%;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-xs);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:10px;padding:8px 10px;font-weight:500;display:flex}.settings-nav-btn:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.settings-nav-btn.is-active{background:var(--bg-canvas);color:var(--text-primary);box-shadow:var(--shadow-sm);font-weight:600}.settings-nav-icon{color:var(--text-muted);justify-content:center;align-items:center;display:flex}.settings-nav-btn.is-active .settings-nav-icon{color:var(--primary)}.settings-dialog-content{background:var(--bg-canvas);flex-direction:column;display:flex;position:relative;overflow-y:auto}.settings-dialog-desktop-header{justify-content:flex-end;padding:12px 16px 0;display:flex}.settings-dialog-body{padding:12px 24px 24px}.settings-dialog-mobile-header{display:none}.settings-close-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex}.settings-close-btn:hover{color:var(--text-primary)}.settings-section-pane{flex-direction:column;gap:16px;display:flex}.settings-section-title{font-family:var(--font-display);font-size:var(--text-base);color:var(--text-primary);margin:0;font-weight:700}.settings-section-subtitle{font-size:var(--text-xs);color:var(--text-muted);margin:-10px 0 6px;line-height:1.4}.settings-subheading{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:12px 0 6px;font-weight:700}.settings-field-row{border-bottom:1px solid var(--border-subtle);padding:12px 0;display:flex}.settings-field-row.is-inline{justify-content:space-between;align-items:center;gap:16px}.settings-field-row.is-stacked{flex-direction:column;gap:8px}.settings-field-text{flex:1}.settings-field-label{font-size:var(--text-sm);color:var(--text-primary);font-weight:600;display:block}.settings-field-desc{font-size:var(--text-xs);color:var(--text-muted);margin:2px 0 0;line-height:1.4}.settings-field-control{flex-shrink:0}.ui-switch{border-radius:var(--radius-full);background:var(--border-subtle);cursor:pointer;width:40px;height:22px;transition:background-color var(--dur-fast) var(--ease-out);border:none;outline:none;align-items:center;padding:2px;display:inline-flex}.ui-switch.is-checked{background:var(--primary)}.ui-switch.is-disabled{opacity:.4;cursor:not-allowed}.ui-switch-thumb{width:18px;height:18px;box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) var(--ease-out);background:#fff;border-radius:50%;transform:translate(0)}.ui-switch.is-checked .ui-switch-thumb{transform:translate(18px)}.segmented-control{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);gap:2px;padding:3px;display:inline-flex}.segmented-control-item{color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-xs);border-radius:var(--radius-md);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:6px;padding:5px 12px;font-weight:500;display:inline-flex}.segmented-control-item:hover{color:var(--text-primary)}.segmented-control-item.is-active{background:var(--bg-canvas);color:var(--text-primary);box-shadow:var(--shadow-sm);font-weight:600}.accent-swatches-row{align-items:center;gap:8px;display:flex}.accent-swatch-btn{cursor:pointer;width:24px;height:24px;transition:transform var(--dur-fast) var(--ease-out);border:2px solid #0000;border-radius:50%}.accent-swatch-btn:hover{transform:scale(1.15)}.accent-swatch-btn.is-selected{box-shadow:0 0 0 2px var(--primary);border-color:#fff}.accent-swatch-btn.is-purple{background-color:var(--accent-purple,#a855f7)}.accent-swatch-btn.is-blue{background-color:var(--accent-blue,#3b82f6)}.accent-swatch-btn.is-emerald{background-color:var(--accent-emerald,#10b981)}.accent-swatch-btn.is-amber{background-color:var(--accent-amber,#f59e0b)}.accent-swatch-btn.is-rose{background-color:var(--accent-rose,#f43f5e)}.settings-input,.settings-select,.settings-textarea{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-xs);transition:border-color var(--dur-fast) var(--ease-out);outline:none;padding:7px 10px}.settings-input:focus,.settings-select:focus,.settings-textarea:focus{border-color:var(--border-focus)}.settings-textarea{resize:vertical;width:100%;line-height:1.5}.settings-callout-box{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;gap:4px;padding:10px 14px;display:flex}.callout-title{font-size:var(--text-xs);color:var(--text-primary);align-items:center;gap:6px;font-weight:600;display:flex}.callout-text{font-size:var(--text-xs);color:var(--text-secondary);margin:0;line-height:1.4}.settings-danger-zone{border-top:1px solid var(--border-subtle);flex-direction:column;gap:12px;margin-top:12px;padding-top:12px;display:flex}.settings-danger-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-profile-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;gap:10px;padding:12px 16px;display:flex}.profile-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.profile-card-title{font-size:var(--text-sm);color:var(--text-primary);margin:0;font-weight:600}.profile-card-desc{font-size:var(--text-xs);color:var(--text-secondary);margin:4px 0 0;line-height:1.4}.profile-card-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-top:8px;display:flex}.memory-category-block{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin-top:12px;padding:10px 14px}.memory-category-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.memory-category-title{font-size:var(--text-xs);color:var(--text-primary);margin:0;font-weight:600}.memory-items-list{flex-direction:column;gap:6px;display:flex}.memory-item-row{background:var(--bg-canvas);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;display:flex}.memory-item-content{font-size:var(--text-xs);color:var(--text-primary);word-break:break-word}.memory-item-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.memory-action-icon-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--dur-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.memory-action-icon-btn:hover{color:var(--text-primary)}.memory-action-icon-btn.is-danger:hover{color:var(--red-500,#ef4444)}.memory-empty-text{font-size:var(--text-xs);color:var(--text-muted);margin:4px 0;font-style:italic}.voice-select-row{align-items:center;gap:8px;display:flex}@media (width<=640px){.settings-dialog-layout{border-radius:0;grid-template-columns:1fr;height:100vh;max-height:100vh}.settings-dialog-mobile-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.settings-dialog-desktop-header,.settings-dialog-sidebar.is-mobile-hidden,.settings-dialog-content.is-mobile-hidden,.settings-sidebar-header{display:none}}.memory-meta-textarea{border:1px solid var(--border-color);width:100%;color:var(--text-primary);font-family:var(--font-sans);resize:vertical;background:#0000004d;border-radius:8px;outline:none;padding:12px;font-size:.88rem;line-height:1.5;transition:border-color .2s}.memory-meta-textarea:focus{border-color:var(--border-focus)}.memory-meta-textarea::placeholder{color:var(--text-muted)}.memory-settings-btn{border:1px solid var(--border-color);width:100%;color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;background:#ffffff08;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:.88rem;font-weight:500;transition:all .2s;display:flex}.memory-settings-btn:hover{color:var(--text-primary);background:#ffffff0a;border-color:#ffffff14}.memory-panel{background:#080808;border:1px solid #ffffff14;border-radius:16px;width:90%;max-width:640px;max-height:80vh;animation:.3s cubic-bezier(.4,0,.2,1) panel-slide-up;overflow-y:auto;box-shadow:0 24px 64px #00000080}.memory-panel-header{border-bottom:1px solid var(--border-color);z-index:10;background:#080808;border-radius:16px 16px 0 0;align-items:center;gap:12px;padding:20px 24px;display:flex;position:sticky;top:0}.memory-panel-title{font-family:var(--font-display);color:var(--text-primary);flex:1;align-items:center;gap:10px;font-size:1.2rem;font-weight:600;display:flex}.memory-panel-title svg{color:var(--accent-color)}.memory-edit-input{border:1px solid var(--border-focus);color:var(--text-primary);font-family:var(--font-sans);background:#0000004d;border-radius:6px;outline:none;flex:1;padding:8px 10px;font-size:.88rem}.memory-edit-input:focus{box-shadow:0 0 0 2px #ffffff0f}.memory-section-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:12px 16px;transition:background-color .2s;display:flex}.memory-section-header:hover{background:#ffffff08}.memory-interaction-count{color:var(--text-muted);background:#ffffff0a;border-radius:12px;flex-shrink:0;padding:4px 10px;font-size:.78rem;font-weight:600}.memory-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.memory-close-btn:hover{color:var(--text-primary);background:#ffffff0d}.memory-meta-section{border-bottom:1px solid var(--border-color);padding:20px 24px}.memory-meta-label{color:var(--text-primary);margin-bottom:4px;font-size:.9rem;font-weight:600;display:block}.memory-meta-desc{color:var(--text-muted);margin-bottom:12px;font-size:.8rem;line-height:1.4}.memory-save-btn{background:var(--accent-gradient);color:#fff;font-family:var(--font-sans);cursor:pointer;border:none;border-radius:6px;margin-top:10px;padding:8px 18px;font-size:.82rem;font-weight:600;transition:opacity .2s}.memory-save-btn:hover{opacity:.9}.memory-sections-container{padding:16px 24px 24px}.memory-section{border:1px solid var(--border-color);border-radius:10px;margin-bottom:12px;overflow:hidden}.memory-section-icon{font-size:1rem}.memory-section-title{color:var(--text-primary);flex:1;font-size:.9rem;font-weight:600}.memory-section-count{color:var(--text-secondary);background:#ffffff14;border-radius:10px;padding:2px 8px;font-size:.75rem;font-weight:600}.memory-section-arrow{color:var(--text-muted);transition:transform .2s}.memory-section-arrow.open{transform:rotate(180deg)}.memory-section-items{border-top:1px solid var(--border-color);padding:8px}.memory-empty{text-align:center;color:var(--text-muted);padding:16px;font-size:.82rem;font-style:italic}.memory-item{border-radius:6px;margin-bottom:4px;padding:10px 12px;transition:background-color .2s}.memory-item:hover{background:#ffffff08}.memory-item:last-child{margin-bottom:0}.memory-item-content{color:var(--text-primary);margin-bottom:6px;font-size:.88rem;line-height:1.45}.memory-item-meta{align-items:center;gap:8px;display:flex}.memory-confidence{color:var(--text-muted);background:#ffffff0d;border-radius:4px;padding:2px 6px;font-size:.72rem;font-weight:600}.memory-action-btn{cursor:pointer;opacity:.4;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.memory-item:hover .memory-action-btn{opacity:1}.memory-action-btn.edit{color:var(--text-secondary)}.memory-action-btn.edit:hover{color:var(--text-secondary);background:#ffffff0a}.memory-action-btn.delete{color:var(--text-secondary)}.memory-action-btn.delete:hover{color:#ff6b6b;background:#ff6b6b1a}.memory-action-btn.save{color:#2ecc71;opacity:1}.memory-action-btn.save:hover{background:#2ecc711a}.memory-action-btn.cancel{color:#e74c3c;opacity:1}.memory-action-btn.cancel:hover{background:#e74c3c1a}.memory-edit-row{align-items:center;gap:8px;display:flex}.settings-mirror-container{flex:1;padding:0 4px 20px;overflow-y:auto}.settings-mirror-container .mirror-dashboard{max-width:100%;padding:12px 16px}.settings-mirror-container .mirror-dashboard-title{font-size:1.25rem}.settings-mirror-container .mirror-metrics-row{grid-template-columns:repeat(2,1fr);gap:10px}.settings-mirror-container .mirror-grid{grid-template-columns:1fr}.mirror-header-actions{align-items:center;gap:8px;display:flex}.mirror-dashboard{background-color:var(--bg-chat);flex-direction:column;flex:1;width:100%;max-width:1200px;margin:0 auto;padding:24px;display:flex;overflow-y:auto}.mirror-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.mirror-dashboard-title{font-family:var(--font-display);color:#fff;letter-spacing:-.01em;font-size:1.6rem;font-weight:700}.mirror-subtitle{color:var(--text-secondary);margin-top:4px;font-size:.9rem}.mirror-metrics-row{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.mirror-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.mirror-col-left,.mirror-col-right{flex-direction:column;gap:24px;display:flex}.mirror-section-tabs{flex-wrap:wrap;gap:6px;margin:16px 0;display:flex}.mirror-section-tab{border:1px solid var(--border-color);min-width:120px;color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;background:#ffffff08;border-radius:10px;flex:auto;padding:9px 14px;font-size:.82rem;font-weight:500;transition:all .2s}.mirror-section-tab:hover{color:#fff;background:#ffffff0f}.mirror-section-tab.active{color:#e9d5ff;background:#a855f724;border-color:#a855f766}.mirror-section-panel{animation:.25s mirror-fade-in}.mirror-section-hint{color:var(--text-muted);margin:0 0 12px;font-size:.8rem;line-height:1.5}.mirror-growth-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.metric-card{border:1px solid var(--border-color);text-align:center;background:#ffffff05;border-radius:12px;padding:20px;transition:transform .2s}.metric-card:hover{border-color:#ffffff1a;transform:translateY(-2px)}.metric-num{font-family:var(--font-display);color:#fff;font-size:2rem;font-weight:700}.metric-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:6px;font-size:.78rem;font-weight:600}.dashboard-card{border:1px solid var(--border-color);background:#ffffff04;border-radius:14px;padding:24px;box-shadow:0 4px 30px #0003}.mindset-text{color:var(--text-primary);font-size:.98rem;line-height:1.6}.coaching-strategy-box{background:#a855f70a;border:1px dashed #a855f733;border-radius:10px;margin-top:18px;padding:16px}.strategy-tag{color:#c084fc;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.72rem;font-weight:700;display:inline-block}.strategy-text{color:#e9d5ff;font-size:.92rem;line-height:1.55}.matrix-section{margin-bottom:16px}.matrix-section:last-child{margin-bottom:0}.matrix-label{text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:.75rem;font-weight:700;display:block}.matrix-label.strengths{color:#4ade80}.matrix-label.emerging{color:#f59e0b}.matrix-label.friction{color:#f87171}.strength-badge,.skill-badge,.friction-badge{border-radius:8px;padding:6px 12px;font-size:.85rem;font-weight:500}.strength-badge{color:#86efac;background:#4ade800f;border:1px solid #4ade8033}.skill-badge{color:#fde047;background:#f59e0b0f;border:1px solid #f59e0b33}.friction-badge{color:#fca5a5;background:#f871710f;border:1px solid #f8717133}.style-gauge-group{margin-bottom:24px}.gauge-label-row{color:var(--text-primary);justify-content:space-between;margin-bottom:8px;font-size:.88rem;font-weight:600;display:flex}.gauge-val-text{color:#a855f7;font-weight:700}.scrollable-goals,.scrollable-reflections{max-height:480px;padding-right:4px;overflow-y:auto}.timeline-container{border-left:1px solid #ffffff0f;margin-left:8px;padding-left:20px;position:relative}.timeline-node{margin-bottom:20px;position:relative}.timeline-node:last-child{margin-bottom:0}.timeline-dot{border:2px solid var(--bg-chat);background:#a855f7;border-radius:50%;width:9px;height:9px;position:absolute;top:6px;left:-25px;box-shadow:0 0 8px #c084fc}.timeline-content-box{border:1px solid var(--border-color);background:#ffffff04;border-radius:10px;padding:14px}.timeline-date{color:var(--text-muted);font-size:.72rem;font-weight:600}.add-goal-btn-header{border:1px solid var(--border-color);color:#fff;font-family:var(--font-sans);cursor:pointer;background:#ffffff0f;border-radius:8px;align-items:center;padding:10px 18px;font-size:.88rem;font-weight:600;transition:all .2s;display:flex}.add-goal-btn-header:hover{border-color:var(--border-focus);background:#ffffff1a}.goal-card-item{border:1px solid var(--border-color);background:#ffffff04;border-radius:10px;margin-bottom:12px;padding:16px;transition:all .2s}.goal-card-item:hover{border-color:#ffffff1a}.goal-card-item.completed{opacity:.7}.goal-card-top{justify-content:space-between;align-items:flex-start;display:flex}.goal-title-wrapper{align-items:flex-start;gap:12px;display:flex}.goal-item-title{color:#fff;font-size:1rem;font-weight:600;line-height:1.3}.goal-card-item.completed .goal-item-title{color:var(--text-secondary);text-decoration:line-through}.goal-cat-tag{text-transform:uppercase;border-radius:4px;margin-top:6px;margin-right:8px;padding:2px 6px;font-size:.7rem;font-weight:700;display:inline-block}.goal-cat-tag.learning{color:#93c5fd;background:#3b82f61a}.goal-cat-tag.career{color:#d8b4fe;background:#a855f71a}.goal-cat-tag.health{color:#6ee7b7;background:#10b9811a}.goal-cat-tag.personal{color:#fef08a;background:#f59e0b1a}.goal-due-date{color:var(--text-muted);font-size:.75rem}.delete-goal-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;transition:all .2s}.delete-goal-btn:hover{color:#ef4444;background:#ef444414}.goal-progress-section{align-items:center;gap:12px;margin:14px 0 10px;display:flex}.goal-progress-bar-container{background:#ffffff0f;border-radius:2px;flex:1;height:4px;overflow:hidden}.goal-progress-bar-fill{background:#a855f7;border-radius:2px;height:100%;transition:width .3s}.goal-progress-percent{color:#c084fc;font-size:.75rem;font-weight:700}.goal-checklist-items{border-top:1px solid #ffffff08;flex-direction:column;gap:6px;padding-top:10px;display:flex}.sidebar-icon-btn{color:var(--text-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:color .2s,background-color .2s;display:flex}.calendar-top-bar{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;padding-bottom:16px;display:flex}.calendar-view-title{color:var(--text-primary);margin-bottom:4px;font-size:1.25rem;font-weight:600}.calendar-view-subtitle{color:var(--text-muted);font-size:.82rem}.calendar-view-tabs{background:var(--bg-tertiary);border-radius:var(--radius-md);gap:4px;padding:3px;display:flex}.calendar-tab-btn{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:6px 14px;font-size:.82rem;font-weight:500;transition:all .15s}.calendar-tab-btn:hover{color:var(--text-primary)}.calendar-tab-btn.active{background:var(--bg-elevated);color:var(--text-primary);box-shadow:0 1px 3px #0003}.calendar-date-strip-wrapper{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);align-items:center;gap:12px;margin-bottom:20px;padding:10px 14px;display:flex;overflow-x:auto}.calendar-date-nav{flex-shrink:0;align-items:center;gap:6px;display:flex}.calendar-nav-arrow{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;font-size:1.1rem;transition:all .15s;display:flex}.calendar-nav-arrow:hover{background:var(--bg-hover)}.calendar-today-btn{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;padding:4px 10px;font-size:.78rem;font-weight:600;transition:all .15s}.calendar-today-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.calendar-date-strip{flex:1;justify-content:space-between;gap:8px;display:flex}.calendar-date-pill{border-radius:var(--radius-md);cursor:pointer;background:0 0;border:1px solid #0000;flex-direction:column;flex:1;align-items:center;min-width:44px;padding:8px 6px;transition:all .15s;display:flex;position:relative}.calendar-date-pill:hover{background:var(--bg-tertiary)}.calendar-date-pill.is-selected{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.calendar-date-pill.is-selected .calendar-date-weekday,.calendar-date-pill.is-selected .calendar-date-number{color:#fff}.calendar-date-weekday{text-transform:uppercase;color:var(--text-muted);font-size:.7rem;font-weight:600}.calendar-date-number{color:var(--text-primary);margin-top:2px;font-size:1rem;font-weight:700}.calendar-today-dot{background:var(--brand-primary);border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px}.calendar-date-pill.is-selected .calendar-today-dot{background:#fff}.calendar-day-summary-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.calendar-selected-day-title{color:var(--text-primary);font-size:1.05rem;font-weight:600}.calendar-progress-badge{color:var(--text-muted);align-items:center;gap:8px;margin-top:4px;font-size:.78rem;display:flex}.calendar-progress-track{background:var(--bg-tertiary);border-radius:999px;width:80px;height:6px;overflow:hidden}.calendar-progress-fill{background:linear-gradient(90deg, var(--brand-primary), #10b981);border-radius:999px;height:100%;transition:width .3s}.calendar-add-form{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin-bottom:20px;padding:16px}.calendar-form-title{color:var(--text-primary);margin-bottom:12px;font-size:.92rem;font-weight:600}.calendar-form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.calendar-form-field.full-width{grid-column:span 2}.calendar-form-label{color:var(--text-secondary);margin-bottom:4px;font-size:.78rem;font-weight:500;display:block}.calendar-form-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.calendar-task-sections{flex-direction:column;gap:20px;display:flex}.calendar-group-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:8px;font-size:.85rem;font-weight:600}.calendar-group-title--done{color:#10b981}.calendar-task-items{flex-direction:column;gap:8px;display:flex}.calendar-task-row{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);align-items:center;gap:12px;padding:12px 14px;transition:all .15s;display:flex}.calendar-task-row:hover{background:var(--bg-elevated);border-color:var(--border-default)}.calendar-task-row.completed{opacity:.75}.calendar-check-btn{border:1.5px solid var(--border-default);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;transition:all .15s;display:flex}.calendar-check-btn:hover{border-color:var(--brand-primary)}.calendar-check-btn.checked{color:#fff;background:#10b981;border-color:#10b981}.calendar-task-info-block{flex:1;min-width:0}.calendar-task-title-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.calendar-task-title{color:var(--text-primary);font-size:.9rem;font-weight:500}.calendar-task-title.is-done{color:var(--text-muted);text-decoration:line-through}.calendar-time-tag{color:var(--text-muted);font-size:.75rem}.calendar-kind-tag{border-radius:var(--radius-sm);text-transform:capitalize;background:var(--bg-tertiary);color:var(--text-secondary);padding:2px 6px;font-size:.7rem;font-weight:600}.calendar-kind-tag.habit{color:#818cf8;background:#6366f126}.calendar-streak-tag{color:#f59e0b;font-size:.75rem;font-weight:600}.calendar-linked-goal{color:var(--text-secondary);margin-top:3px;font-size:.76rem}.calendar-task-description{color:var(--text-muted);margin-top:3px;font-size:.78rem}.calendar-skip-reason{color:var(--text-muted);margin-left:8px;font-size:.75rem;font-style:italic}.btn--xs{border-radius:var(--radius-sm);padding:3px 8px;font-size:.75rem}.calendar-scheduled-list{flex-direction:column;gap:10px;display:flex}.routine-launcher-item{color:var(--text-primary);font-family:var(--font-sans);text-align:left;cursor:pointer;background:#ffffff05;border:1px solid #ffffff0a;border-radius:8px;align-items:center;gap:10px;width:100%;padding:8px 12px;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.routine-launcher-item:hover{color:#fff;background:#a855f714;border-color:#a855f733}.routine-launcher-icon{color:#a855f7;flex-shrink:0;justify-content:center;align-items:center;display:flex}.routine-launcher-name{justify-content:space-between;align-items:center;width:100%;display:flex}.routine-launcher-time{color:var(--text-muted);background:#ffffff0d;border-radius:4px;padding:2px 6px;font-size:.7rem}.routines-settings-wrapper{padding:8px 0}.routine-config-card{border:1px solid var(--border-color);background:#ffffff04;border-radius:12px;flex-direction:column;gap:14px;padding:16px;transition:all .25s;display:flex}.routine-config-card:hover{border-color:#a855f740;box-shadow:0 4px 20px #0003}.routine-config-card.disabled{opacity:.65}.routine-card-title-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.routine-card-title-row h4{color:#fff;margin:0;font-size:1rem;font-weight:600}.routine-card-desc{color:var(--text-secondary);margin-bottom:10px;font-size:.85rem}.routine-card-prompt-preview{background:#0003;border:1px solid #ffffff08;border-radius:8px;padding:10px;font-size:.8rem}.routine-card-prompt-preview strong{color:var(--text-muted);text-transform:uppercase;margin-bottom:4px;font-size:.75rem;display:block}.routine-card-prompt-preview p{color:var(--text-primary);margin:0;line-height:1.4}.routine-card-actions{border-top:1px solid #ffffff0a;justify-content:space-between;align-items:center;margin-top:4px;padding-top:12px;display:flex}.sidebar-routines-section{border-bottom:1px solid #ffffff0d;margin-top:15px;padding:0 16px 15px}.routines-launcher-list{flex-direction:column;gap:6px;display:flex}.routines-header{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.routines-header h3{color:#fff;font-size:1.15rem;font-family:var(--font-display)}.btn-add-routine{color:#fff;font-family:var(--font-sans);cursor:pointer;background:#a855f7;border:none;border-radius:8px;padding:8px 14px;font-size:.85rem;font-weight:600;transition:background .2s}.btn-add-routine:hover{background:#b55fe6}.routines-intro-text{color:var(--text-secondary);margin-bottom:20px;font-size:.88rem;line-height:1.5}.routines-grid{grid-template-columns:1fr;gap:16px;display:grid}.no-routines{text-align:center;border:1px dashed var(--border-color);color:var(--text-muted);background:#ffffff03;border-radius:12px;padding:40px 20px}.btn-save-routine{color:#fff;cursor:pointer;background:#a855f7;border:none;border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:600}.btn-save-routine:hover{background:#b55fe6}.btn-cancel-routine{color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;background:0 0;border-radius:8px;padding:10px 20px;font-size:.9rem}.btn-cancel-routine:hover{background:#ffffff08}.trigger-badge{border-radius:4px;padding:3px 8px;font-size:.72rem;font-weight:600}.trigger-badge.manual{color:#94a3b8;background:#64748b26;border:1px solid #64748b33}.trigger-badge.schedule{color:#c084fc;background:#a855f726;border:1px solid #a855f733}.btn-action{font-family:var(--font-sans);cursor:pointer;border:none;border-radius:6px;padding:6px 12px;font-size:.8rem;font-weight:600;transition:all .2s}.btn-action.run{color:#c084fc;background:#a855f726;border:1px solid #a855f733}.btn-action.run:hover{color:#fff;background:#a855f7}.btn-action.edit{color:var(--text-primary);background:#ffffff08;border:1px solid #ffffff0f}.btn-action.edit:hover{background:#ffffff14}.btn-action.delete{color:#ef4444;background:#ef44441a;border:1px solid #ef444426}.btn-action.delete:hover{color:#fff;background:#ef4444}.form-group input[type=text],.form-group input[type=date],.form-group select,.form-group textarea{border:1px solid var(--border-color);color:#fff;font-family:var(--font-sans);background:#ffffff08;border-radius:8px;outline:none;width:100%;padding:10px 14px;font-size:.95rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--border-focus)}.menu-toggle-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;font-size:1.5rem;transition:background-color .2s;display:flex}.menu-toggle-btn:hover{background-color:#ffffff0d}.rename-toggle-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:color .2s,background-color .2s;display:flex}.rename-toggle-btn:hover{color:var(--text-primary);background-color:#ffffff0d}.slider-track{background:#ffffff14;border-radius:3px;height:6px;margin:12px 0 24px;position:relative}.slider-pointer{border-radius:50%;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%)}.slider-pointer.abstraction{background:#a855f7;box-shadow:0 0 10px #c084fc}.slider-labels{color:var(--text-muted);justify-content:space-between;margin-top:8px;font-size:.72rem;font-weight:600;display:flex}.switch{flex-shrink:0;width:42px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background:#ffffff1f;border:1px solid #ffffff1a;transition:background .25s,border-color .25s;position:absolute;inset:0}.slider:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .25s;position:absolute;top:2px;left:3px;box-shadow:0 1px 3px #0006}.switch input:checked+.slider{background:#22c55e;border-color:#22c55e}.switch input:checked+.slider:before{transform:translate(18px)}.switch input:focus-visible+.slider{outline:2px solid var(--border-focus);outline-offset:2px}.slider.round{border-radius:24px}.slider.round:before{border-radius:50%}.contract-checkbox-label{color:var(--text-secondary);cursor:pointer;align-items:center;gap:10px;font-size:.82rem;font-weight:600;display:flex}.rename-toggle-btn.secondary{opacity:.5;padding:6px}.rename-toggle-btn.secondary:hover{opacity:1}.waveform-bar{background:linear-gradient(#ff4757 0%,#ff6b81 100%);border-radius:2px;width:3px;animation:.8s ease-in-out infinite waveform-bounce}.waveform-bar:first-child{height:8px;animation-delay:0s}.waveform-bar:nth-child(2){height:16px;animation-delay:.1s}.waveform-bar:nth-child(3){height:10px;animation-delay:.2s}.waveform-bar:nth-child(4){height:20px;animation-delay:.3s}.waveform-bar:nth-child(5){height:12px;animation-delay:.15s}.waveform-bar:nth-child(6){height:18px;animation-delay:.25s}.waveform-bar:nth-child(7){height:8px;animation-delay:.35s}.form-group{flex-direction:column;gap:6px;margin-bottom:20px;display:flex}.form-group label{color:var(--text-primary);text-transform:uppercase;letter-spacing:.03em;font-size:.82rem;font-weight:600}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.goal-main-checkbox{cursor:pointer;width:16px;height:16px;margin-top:4px}.mobile-sidebar-toggle{color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:background-color .2s;display:none}.mobile-sidebar-toggle:hover{background-color:#ffffff0d}.custom-input-group{flex-direction:row;gap:8px;display:flex}.toggle-wrapper{align-items:center;gap:8px;display:flex}.toggle-label{color:var(--text-secondary);font-size:.78rem}.field-hint{color:var(--text-muted);margin-top:-2px;font-size:.72rem;display:block}.btn-primary{border-radius:var(--radius-md);background:var(--primary);color:var(--primary-fg);font-family:var(--font-sans);font-size:var(--text-sm);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-weight:600;display:inline-flex}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 0 12px var(--primary-glow)}.btn-secondary{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-sm);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-weight:500;display:inline-flex}.btn-secondary:hover{background:var(--bg-surface-hover);border-color:var(--border-focus)}.btn-danger{border-radius:var(--radius-md);background:var(--red-600,#dc2626);color:#fff;font-family:var(--font-sans);font-size:var(--text-sm);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-weight:600;display:inline-flex}.btn-danger:hover{background:var(--red-500,#ef4444);box-shadow:0 0 12px #ef444466}.mentor-directives-banner{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#121214d9;border:1px solid #ffffff14;border-radius:12px;margin:12px 16px 4px;padding:14px 18px;transition:all .3s cubic-bezier(.4,0,.2,1)}.mentor-directives-banner.protocol-enforcement{border-color:#ef444466;box-shadow:0 0 20px #ef444414}.mentor-directives-banner.protocol-standard{border-color:#a855f74d;box-shadow:0 0 16px #a855f70d}.mentor-directives-banner.protocol-recovery{border-color:#3b82f64d}.mentor-banner-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.mentor-directives-list{border-top:1px solid #ffffff0f;margin-top:12px;padding-top:10px}.directives-header-text{letter-spacing:.08em;color:var(--text-secondary);margin-bottom:8px;font-size:.68rem;font-weight:700}.directives-grid{flex-direction:column;gap:6px;display:flex}.directive-card{background:#ffffff05;border:1px solid #ffffff0a;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}.directive-card.verified{opacity:.6}.directive-content{color:var(--text-primary);align-items:center;gap:8px;min-width:0;font-size:.85rem;display:flex}.directive-icon{color:#a855f7;flex-shrink:0;align-items:center;display:flex}.directive-text{overflow-wrap:anywhere;min-width:0}.directive-card.verified .directive-text{color:var(--text-secondary);text-decoration:line-through}.directive-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.directive-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-size:.72rem;font-weight:600;transition:all .2s}.directive-btn.report-btn:hover{color:#fff;background:#a855f726;border-color:#a855f766}.directive-btn.verify-btn:hover{color:#4ade80;background:#22c55e26;border-color:#22c55e66}.directive-btn.fail-btn:hover{color:#f87171;background:#ef444426;border-color:#ef444466}.directive-status-badge{letter-spacing:.05em;border-radius:4px;padding:3px 8px;font-size:.7rem;font-weight:700}.directive-status-badge.verified{color:#4ade80;background:#22c55e26}.directive-status-badge.failed{color:#f87171;background:#ef444426}.life-audit-prompt-banner{background:#a855f714;border:1px solid #a855f740;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin:12px 16px 4px;padding:12px 18px;display:flex}.audit-prompt-info{flex-direction:column;gap:2px;display:flex}.audit-prompt-tag{letter-spacing:.08em;color:#a855f7;font-size:.65rem;font-weight:700}.audit-prompt-title{font-family:var(--font-display);color:var(--text-primary);font-size:.92rem;font-weight:700}.audit-prompt-desc{color:var(--text-muted);font-size:.78rem}.audit-prompt-action-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#a855f7;border:none;border-radius:8px;padding:8px 16px;font-size:.8rem;font-weight:700;transition:all .2s}.audit-prompt-action-btn:hover{background:#b55fe6}.directive-actions{gap:6px;display:flex}.directive-btn{color:var(--text-secondary);cursor:pointer;background:#ffffff0d;border:none;border-radius:8px;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.directive-btn:hover{color:#fff;background:#ffffff26}.directive-btn.verify-btn:hover{color:#2ecc71;background:#2ecc7133}.banner-info-popover{color:#cbd5e1;background:#0f172af2;border:1px solid #6366f14d;border-radius:8px;margin:8px 0;padding:10px 14px;font-size:.8rem;line-height:1.4}.mentor-protocol-badge{align-items:center;gap:10px;display:flex}.protocol-dot{background:#a855f7;border-radius:50%;width:8px;height:8px}.protocol-enforcement .protocol-dot{background:#ef4444;box-shadow:0 0 8px #ef4444}.protocol-recovery .protocol-dot{background:#3b82f6;box-shadow:0 0 8px #3b82f6}.protocol-info{flex-direction:column;gap:2px;display:flex}.protocol-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--text-primary);font-size:.78rem;font-weight:700}.protocol-desc{color:var(--text-muted);font-size:.75rem}.mentor-compliance-score{cursor:pointer;flex-direction:row;align-items:center;gap:8px;display:flex}.proactive-intervention-badge{background:#a855f726;border:1px solid #a855f74d;border-radius:6px;align-items:center;gap:6px;margin-bottom:8px;padding:3px 8px;display:inline-flex}button:not(:disabled):active,.session-item:active,.temp-chat-btn:active,.routine-launcher-item:active,.welcome-chip:active,.directive-card:active,.goal-card-item:active,.metric-card:active{transition:transform 80ms;transform:scale(.97)}.directive-btn.fail-btn:hover{color:#e74c3c;background:#e74c3c33}.daily-briefing-card{background:linear-gradient(#a855f714,#a855f705);border:1px solid #a855f738;border-radius:14px;margin:12px 16px 0;padding:14px 16px;animation:.3s page-slide-in}.briefing-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.briefing-heading{align-items:center;gap:8px;display:inline-flex}.briefing-icon{color:#c084fc;display:inline-flex}.briefing-title{font-family:var(--font-display);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:#ffffff0d;font-size:.75rem;font-weight:500;transition:all .2s}.briefing-refresh:hover:not(:disabled){color:#fff;background:#ffffff1a}.briefing-refresh:disabled{opacity:.6;cursor:default}.briefing-dismiss{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.briefing-dismiss:hover{color:#fff;background:#ffffff14}.briefing-message{color:var(--text-primary);margin:10px 0 0;font-size:.9rem;line-height:1.55}.briefing-toggle{color:#c084fc;cursor:pointer;background:0 0;border:none;margin-top:10px;padding:0;font-size:.8rem;font-weight:500}.briefing-toggle:hover{text-decoration:underline}.briefing-details{flex-direction:column;gap:12px;margin-top:12px;display:flex}.briefing-block-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:4px;font-size:.68rem;font-weight:600;display:block}.briefing-block p{color:var(--text-secondary);margin:0;font-size:.86rem;line-height:1.5}.briefing-actions-list{flex-direction:column;gap:8px;display:flex}.briefing-action-item{border:1px solid var(--border-color);background:#ffffff05;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.briefing-action-text{flex-direction:column;gap:2px;min-width:0;display:flex}.briefing-action-title{color:var(--text-primary);font-size:.85rem;font-weight:500}.briefing-action-why{color:var(--text-muted);font-size:.76rem;line-height:1.4}.briefing-action-add{color:#d8b4fe;cursor:pointer;white-space:nowrap;background:#a855f729;border:1px solid #a855f759;border-radius:8px;flex-shrink:0;padding:6px 12px;font-size:.76rem;font-weight:600;transition:all .2s}.briefing-action-add:hover{color:#fff;background:#a855f747}.briefing-action-added{color:#34d399;white-space:nowrap;flex-shrink:0;font-size:.76rem;font-weight:600}.task-proposal-card{background:linear-gradient(145deg,#1e1e23cc,#141419e6);margin:12px 0;padding:16px}.task-proposal-card .task-proposal-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#1e1e23cc,#141419e6);border:1px solid #ffffff1a;border-radius:12px;margin:12px 0;padding:16px;box-shadow:0 4px 12px #0003}.task-proposal-card .task-proposal-card.scheduled-status{color:var(--green-400);background:#4ade801a;border:1px solid #4ade804d;align-items:center;gap:10px;padding:12px 16px;font-size:.9rem;font-weight:500;display:flex}.task-proposal-card .task-proposal-actions--wrap{gap:var(--space-2);flex-wrap:wrap}.task-proposal-card .btn-approve--compact{font-size:var(--text-xs);padding:6px 12px}.task-proposal-card .btn-postpone{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-secondary);font-family:var(--font-sans);font-weight:500;font-size:var(--text-sm);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);padding:8px 16px}.task-proposal-card .btn-postpone:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.task-proposal-card .status-icon--green{color:var(--green-400)}.task-proposal-card .status-icon--purple{color:var(--purple-400)}.task-proposal-card .status-icon--amber{color:var(--amber-400)}.task-proposal-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(145deg,#1e142dd9,#140f1ef2);border:1px solid #a855f759;border-radius:12px;margin:12px 0;padding:16px;box-shadow:0 4px 16px #a855f726}.action-bridge-card.added-status{color:#4ade80;background:#4ade801a;border:1px solid #4ade804d;align-items:center;gap:10px;padding:12px 16px;font-size:.9rem;font-weight:500;display:flex}.action-bridge-header{color:#c084fc;text-transform:uppercase;letter-spacing:.6px;align-items:center;gap:8px;margin-bottom:10px;font-size:.85rem;font-weight:700;display:flex}.action-bridge-body{margin-bottom:14px}.action-bridge-desire{color:#ffffffbf;margin-bottom:8px;font-size:.9rem;font-style:italic;line-height:1.4}.action-bridge-goal{color:#f3e8ff;font-size:.95rem;line-height:1.4}.action-bridge-actions{gap:10px;display:flex}.btn-add-action-bridge{color:#fff;cursor:pointer;background:linear-gradient(135deg,#a855f7,#7e22ce);border:none;border-radius:8px;flex:1;padding:8px 14px;font-size:.85rem;font-weight:600;transition:all .2s}.btn-add-action-bridge:hover{filter:brightness(1.15);box-shadow:0 2px 8px #a855f766}.btn-decline-action-bridge{color:#ffffffb3;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;padding:8px 14px;font-size:.85rem;transition:all .2s}.btn-decline-action-bridge:hover{color:#fff;background:#ffffff26}.task-proposal-header{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin-bottom:12px;font-size:.85rem;font-weight:600;display:flex}.task-proposal-body{margin-bottom:16px}.task-proposal-body strong{color:#fff;margin-bottom:4px;font-size:1.1rem;display:block}.task-proposal-time{color:var(--accent-gradient);font-size:.9rem}.task-proposal-actions{gap:10px;display:flex}.task-proposal-actions button{cursor:pointer;border:none;border-radius:6px;flex:1;padding:8px 0;font-size:.9rem;font-weight:500;transition:all .2s}.research-plan-card{background:linear-gradient(135deg,#6366f114 0%,#818cf80d 100%);border:1px solid #818cf840;border-radius:16px;animation:.4s cubic-bezier(.34,1.56,.64,1) both researchPlanIn;overflow:hidden}.research-plan-header{color:#818cf8;text-transform:uppercase;letter-spacing:.06em;background:#818cf81a;border-bottom:1px solid #818cf826;align-items:center;gap:10px;padding:14px 18px;font-size:.85rem;font-weight:700;display:flex}.research-plan-body{padding:18px}.research-plan-title{color:#e2e8f0;margin:0 0 8px;font-size:1.05rem;font-weight:700;line-height:1.4}.research-plan-summary{color:#e2e8f0b3;margin:0 0 16px;font-size:.9rem;line-height:1.6}.research-plan-queries{background:#0003;border-radius:10px;padding:12px 16px}.research-plan-actions{background:#0000001a;border-top:1px solid #818cf81a;align-items:center;gap:10px;padding:14px 18px;display:flex}.calendar-container{color:var(--text-primary);height:100%;padding:20px;overflow-y:auto}.calendar-container h2{font-family:var(--font-display);color:#fff;margin-bottom:20px;font-weight:500}.calendar-error{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.btn-approve{background:var(--text-primary);color:#000}.btn-approve:hover{background:#fff;transform:translateY(-1px)}.btn-decline{color:var(--text-primary);background:#ffffff1a}.btn-decline:hover{color:#fff;background:#ffffff26}.subtask-checkbox-label{color:var(--text-primary);cursor:pointer;align-items:center;gap:8px;font-size:.88rem;display:flex}.subtask-checkbox-label input{cursor:pointer}.task-list{flex-direction:column;gap:15px;display:flex}.task-card{background:var(--bg-bubble-user);border:1px solid var(--border-color);border-radius:12px;padding:15px;position:relative}.task-card.completed{opacity:.6}.task-time{color:var(--accent-gradient);margin-bottom:5px;font-size:.85rem}.task-title{color:#fff;margin-bottom:5px;font-size:1.1rem;font-weight:500}.task-desc{color:var(--text-secondary);font-size:.95rem}.status-badge{background:#ffffff1a;border-radius:4px;padding:4px 8px;font-size:.75rem;position:absolute;top:15px;right:15px}.status-badge.pending{color:orange;background:#ffa50033}.no-tasks{color:var(--text-muted);font-style:italic}.research-queries-label{text-transform:uppercase;letter-spacing:.05em;color:#818cf8;margin-bottom:10px;font-size:.72rem;font-weight:700;display:block}.research-query-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.research-query-list li{color:#e2e8f0d9;align-items:flex-start;gap:8px;font-size:.88rem;line-height:1.5;display:flex}.query-index{color:#818cf8;flex-shrink:0;min-width:18px;font-weight:700}.research-proceed-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1,#818cf8);border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #6366f159}.research-proceed-btn:hover{background:linear-gradient(135deg,#4f46e5,#6366f1);transform:translateY(-1px);box-shadow:0 6px 20px #6366f180}.research-proceed-btn:active{transform:translateY(0);box-shadow:0 2px 8px #6366f14d}.research-cancel-btn{color:#e2e8f099;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:10px;padding:10px 16px;font-size:.88rem;font-weight:500;transition:all .2s}.research-cancel-btn:hover{color:#e2e8f0d9;background:#ffffff0d;border-color:#ffffff26}.passcode-container{z-index:99999;-webkit-user-select:none;user-select:none;background-color:#030712;background-image:radial-gradient(at 0 0,#3b82f61f 0,#0000 50%),radial-gradient(at 100% 100%,#8b5cf61f 0,#0000 50%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;outline:none;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.passcode-hidden-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.passcode-card{-webkit-backdrop-filter:blur(20px);background:#111827b3;border:1px solid #ffffff14;border-radius:24px;flex-direction:column;align-items:center;width:100%;max-width:360px;padding:32px 24px;display:flex;box-shadow:0 20px 40px -15px #000000b3,0 0 0 1px #ffffff0d}.passcode-header{flex-direction:column;align-items:center;margin-bottom:28px;display:flex}.passcode-icon-ring{color:#60a5fa;background:linear-gradient(135deg,#3b82f633,#8b5cf633);border:1px solid #ffffff1a;border-radius:18px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;display:flex;box-shadow:0 8px 16px -4px #3b82f64d}.passcode-title{font-family:var(--font-display);color:#f9fafb;letter-spacing:-.02em;margin:0 0 6px;font-size:1.5rem;font-weight:700}.passcode-subtitle{color:#9ca3af;margin:0;font-size:.875rem}.passcode-dots{gap:16px;margin-bottom:24px;display:flex}.passcode-dot{background:0 0;border:2px solid #fff3;border-radius:50%;width:14px;height:14px;transition:all .2s cubic-bezier(.4,0,.2,1)}.passcode-dot.filled{background:#3b82f6;border-color:#3b82f6;transform:scale(1.15);box-shadow:0 0 12px #3b82f699}.passcode-dot.error{background:#ef4444;border-color:#ef4444;box-shadow:0 0 12px #ef444499}.passcode-error-msg{color:#f87171;margin:-8px 0 16px;font-size:.8125rem;font-weight:500;animation:.2s ease-in fadeIn}.passcode-keypad{grid-template-columns:repeat(3,1fr);gap:12px;width:100%;max-width:280px;display:grid}.keypad-btn{aspect-ratio:1;color:#f3f4f6;font-family:var(--font-display);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#ffffff0a;border:1px solid #ffffff14;border-radius:50%;justify-content:center;align-items:center;font-size:1.35rem;font-weight:600;transition:all .15s;display:flex}.keypad-btn:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-1px)}.keypad-btn:active{background:#3b82f633;border-color:#3b82f6;transform:scale(.95)}.keypad-btn.empty{pointer-events:none;background:0 0;border:none}.keypad-btn.action-btn{color:#9ca3af;font-size:1rem}.keypad-btn.action-btn:hover{color:#f3f4f6}.toast-stack{top:max(14px, env(safe-area-inset-top,0px));z-index:2200;pointer-events:none;flex-direction:column;gap:10px;max-width:min(420px,100vw - 24px);display:flex;position:fixed;right:14px}.toast-item{color:#f3f4f6;pointer-events:auto;background:#08080ae6;border:1px solid #ffffff24;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 12px;display:flex;box-shadow:0 10px 30px #0006}.toast-item span{font-size:.86rem;line-height:1.35}.toast-item.toast-error{border-color:#f8717159}.toast-item.toast-success{border-color:#4ade8059}.toast-item.toast-info{border-color:#7dd3fc59}.toast-close-btn{color:#d1d5db;cursor:pointer;background:0 0;border:none;padding:2px;font-size:1rem;line-height:1}.toast-close-btn:hover{color:#fff}@keyframes message-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{50%{opacity:0}}@keyframes thinking-pulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}@keyframes dot-bounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}@keyframes fade-in{0%{opacity:0;transform:translate(50%,10px)}to{opacity:1;transform:translate(50%)}}@keyframes recording-bar-appear{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%{box-shadow:0 0 #ff475766}70%{box-shadow:0 0 0 6px #ff475700}to{box-shadow:0 0 #ff475700}}@keyframes waveform-bounce{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes loading-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}@keyframes feedback-pop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes overlay-appear{0%{opacity:0}to{opacity:1}}@keyframes panel-slide-up{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes speech-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}@keyframes modal-appear{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}@keyframes page-slide-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes mirror-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes researchPlanIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.shake{animation:.4s cubic-bezier(.36,.07,.19,.97) both shake}@media (width<=768px){.mobile-sidebar-toggle{display:flex}.messages-container{gap:12px;padding:10px}.message-bubble{border-radius:18px;max-width:95%;padding:10px 14px}.chat-header{height:56px;padding:0 16px}.chat-input-container{padding:8px 10px calc(12px + env(safe-area-inset-bottom,0px))}.chat-input-wrapper{border-radius:20px;gap:8px;padding:8px 12px}.welcome-screen{padding:24px 16px}.welcome-logo{width:70px;height:70px;margin-bottom:16px}.welcome-title{font-size:1.5rem}.welcome-desc{font-size:.95rem}.memory-panel{width:95%;max-height:85vh}}@media (width<=480px){:root{--header-height:52px}.chat-header{height:var(--header-height);gap:8px;padding:0 12px}.active-chat-title{font-size:.95rem}.messages-container{gap:12px;padding:12px 10px}.message-bubble{border-radius:12px;max-width:92%;padding:10px 12px;font-size:.9rem}.message-row.user .message-bubble{border-bottom-right-radius:4px}.message-row.ai .message-bubble{border-bottom-left-radius:4px}.chat-input-container{padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px))}.chat-input-wrapper{border-radius:10px;gap:6px;padding:4px 8px}.chat-textarea{max-height:100px;padding:4px 0;font-size:.9rem}.mic-btn,.web-search-btn,.send-btn{padding:6px}.welcome-logo{border-radius:14px;width:60px;height:60px;margin-bottom:12px}.welcome-title{font-size:1.3rem}.welcome-desc{padding:0 8px;font-size:.88rem}.memory-panel-overlay .memory-panel{border-radius:0;flex-direction:column;width:100%;max-width:none;height:100%;max-height:100dvh;animation:.34s cubic-bezier(.32,.72,0,1) sheet-up;display:flex}.memory-panel-overlay .memory-panel-header{padding:16px;padding-top:calc(16px + env(safe-area-inset-top,0px));border-radius:0}.memory-panel-overlay .memory-meta-section,.memory-panel-overlay .memory-sections-container{padding:16px}.thought-log-header{padding:6px 10px;font-size:.72rem}.thought-log-body{padding:8px 10px;font-size:.8rem}.feedback-row{margin-top:6px;padding-top:4px}.feedback-btn{padding:3px 5px}}@media (width<=360px){.messages-container{padding:8px 6px}.message-bubble{max-width:95%;padding:8px 10px}.welcome-title{font-size:1.15rem}}@media (height<=500px) and (orientation:landscape){:root{--header-height:44px}.chat-header{height:var(--header-height)}.messages-container{gap:8px;padding:8px 12px}.welcome-screen{text-align:left;flex-direction:row;gap:16px;padding:12px}.welcome-logo{flex-shrink:0;width:48px;height:48px;margin-bottom:0}.welcome-title{margin-bottom:4px;font-size:1.2rem}.welcome-desc{font-size:.85rem}.chat-textarea{max-height:70px}.chat-input-container{padding:6px 12px calc(6px + env(safe-area-inset-bottom,0px))}}@media (width<=768px){input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select,.chat-textarea{font-size:16px}.plus-btn,.mic-btn,.web-search-btn,.send-btn,.stop-btn{min-width:42px;min-height:42px}.sidebar{padding-top:env(safe-area-inset-top,0px)}.mentor-directives-banner{margin:8px 10px 2px;padding:10px 12px}.banner-info-popover{margin-bottom:8px;padding:10px 12px}.banner-info-popover p{font-size:12px}.mentor-directives-list{margin-top:10px;padding-top:8px}.directive-card{padding:8px 10px}.directive-text{font-size:.82rem}.new-chat-top-btn .btn-label{display:none}.new-chat-top-btn{padding:8px}.form-row{grid-template-columns:1fr}.coaching-style-selector{grid-template-columns:1fr!important}.mirror-dashboard{padding:16px}.mirror-header{flex-direction:column;align-items:flex-start;gap:12px}.mirror-header-actions{width:100%}.seed-profile-btn,.add-goal-btn-header{flex:1;justify-content:center}.mirror-dashboard-title{font-size:1.35rem}.metric-card{padding:16px 12px}}@media (width<=560px){.voice-selector-wrapper .voice-select,.voice-selector-wrapper .btn-play-preview{flex:100%;width:100%}}@media (width<=640px){.toast-stack{max-width:none;left:12px;right:12px}}@media (width<=600px){.modal-backdrop{align-items:flex-end;padding:0}.goal-modal-container{width:100%;max-width:none;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom,0px);border-bottom:none;border-radius:22px 22px 0 0;animation:.34s cubic-bezier(.32,.72,0,1) sheet-up;overflow-y:auto}.goal-modal-container:before{content:"";background:#ffffff2e;border-radius:3px;width:40px;height:4px;margin:10px auto 0;display:block}.modal-header{z-index:2;background:#09090b;padding:12px 20px 14px;position:sticky;top:0}.goal-modal-form{padding:20px 20px 24px}}@media (width<=900px){.mirror-grid{grid-template-columns:1fr}.mirror-metrics-row{grid-template-columns:1fr 1fr}}@media (width<=480px){.routine-card-actions{flex-wrap:wrap;gap:12px}.routine-card-actions .buttons-wrapper{flex-wrap:wrap;width:100%}.routine-card-actions .btn-action{flex:auto;padding:9px 12px}}@media (width<=768px){.settings-page{left:0}.settings-page-header{padding-top:calc(14px + env(safe-area-inset-top,0px))}.settings-page-content{padding:16px 14px calc(20px + env(safe-area-inset-bottom,0px))}.settings-back-label{display:none}}@media (width<=480px){.daily-briefing-card{margin:10px 10px 0;padding:12px}.briefing-action-item{flex-wrap:wrap}}@media (width<=768px){.mirror-growth-grid{grid-template-columns:1fr}}@media (width<=600px){.research-plan-actions{flex-direction:column;align-items:stretch}.research-proceed-btn,.research-cancel-btn{justify-content:center;width:100%}}.empty-state{text-align:center;color:var(--text-muted);padding:20px 16px;font-size:.85rem;line-height:1.5}.seed-spinner{border:2px solid #ffffff26;border-top-color:#fff9;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}.card-icon{font-size:1.4rem}.badge-grid{flex-wrap:wrap;gap:8px;display:flex}.empty-badge-text{color:var(--text-muted);font-size:.85rem;font-style:italic}.style-meta-row{border-top:1px solid #ffffff0a;grid-template-columns:1fr 1fr;gap:16px;padding-top:18px;display:grid}.meta-item{flex-direction:column;gap:4px;display:flex}.meta-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:600}.meta-val{color:var(--text-primary);font-size:.95rem;font-weight:600}.capitalize{text-transform:capitalize}.completed-text{color:var(--text-secondary);text-decoration:line-through}.cancel-btn,.save-btn{font-family:var(--font-sans);cursor:pointer;border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .2s}.cancel-btn{border:1px solid var(--border-color);color:var(--text-primary);background:0 0}.cancel-btn:hover{background:#ffffff08}.save-btn{color:#fff;background:#a855f7;border:1px solid #a855f74d}.save-btn:hover{background:#b55fe6}.save-btn:disabled{opacity:.5;cursor:not-allowed}.buttons-wrapper{gap:8px;display:flex}.btn-back{color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;background:0 0;border-radius:6px;padding:6px 12px;font-size:.8rem}.btn-back:hover{color:#fff;background:#ffffff08}.glass-panel{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#1e1e23cc;border:1px solid #ffffff1a;border-radius:12px;padding:16px;box-shadow:0 8px 32px #0003}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}
