.sidebar{position:fixed;top:0;left:-20rem;width:20rem;height:100vh;background:var(--surface-raised);border-right:1px solid var(--border-normal);z-index:10001;transition:left var(--transition-slow);display:flex;flex-direction:column;-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);box-shadow:var(--shadow-xl);overflow:hidden}.sidebar.open{left:0}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:10000;display:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.sidebar-overlay.active{display:block}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border-normal);background:var(--surface-raised);flex-shrink:0}.sidebar-header h2{margin:0;font-size:1.3rem;color:var(--accent-subtle);font-weight:700}.close-sidebar{background:none;border:none;font-size:2rem;color:var(--text-primary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity var(--transition-normal)}.close-sidebar:hover{opacity:1}.sidebar-content{flex:1;padding:var(--space-4);overflow-y:auto;overflow-x:hidden}.sidebar-section{margin-bottom:var(--space-6)}.sidebar-section.is-visible{display:block}.sidebar-section h3{margin:0 0 .8rem;font-size:.95rem;color:var(--accent);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.sidebar-link{display:flex;align-items:center;padding:var(--space-3) var(--space-4);color:var(--text-primary);text-decoration:none;border-radius:var(--radius-md);margin-bottom:var(--space-2);font-weight:500}.sidebar-link:hover{background:var(--surface-hover)}.sidebar-link.active{background:linear-gradient(135deg,#ffb6c133,#dda0dd33);border:1px solid var(--accent)}.sidebar-icon{margin-right:.8rem;font-size:1.2rem;width:24px;text-align:center;flex-shrink:0}.custom-dropdown{position:relative;width:100%;margin-top:.5rem}.dropdown-selected{display:flex;align-items:center;justify-content:space-between;padding:.8rem;border:2px solid var(--border-normal);border-radius:8px;background:var(--surface-input);color:var(--text-primary);cursor:pointer;font-weight:500;width:100%}.dropdown-selected:hover{border-color:var(--accent)}.dropdown-selected.active{border-color:var(--accent);border-radius:8px 8px 0 0}.dropdown-arrow{font-size:.8rem;transition:transform var(--transition-slow);color:var(--text-secondary)}.dropdown-selected.active .dropdown-arrow{transform:rotate(180deg)}.dropdown-options{position:absolute;top:100%;left:0;right:0;background:var(--surface-input);border:2px solid var(--accent);border-top:none;border-radius:0 0 8px 8px;max-height:0;overflow:hidden;opacity:0;visibility:hidden;z-index:10002;box-shadow:var(--shadow-md)}.dropdown-options.active{max-height:300px;opacity:1;visibility:visible;overflow-y:auto}.dropdown-option{display:flex;align-items:center;padding:.8rem;color:var(--text-primary);cursor:pointer;border-bottom:1px solid var(--border-normal)}.dropdown-option:last-child{border-bottom:none}.dropdown-option:hover{background:#ffffff1a}.dropdown-option.active{background:#ffffff26;font-weight:600}.theme-preview{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.3);margin-right:10px;flex-shrink:0}.dark-preview{background:linear-gradient(135deg,#1a1f2e,#24283d)}.light-preview{background:linear-gradient(135deg,#f8f9fa,#fff);border-color:#0003}.lavender-preview{background:linear-gradient(135deg,#f5f3ff,#d8b4fe)}.mint-preview{background:linear-gradient(135deg,#f0fdf9,#99f6e4)}.peach-preview{background:linear-gradient(135deg,#fff7ed,#fdba74)}.dark-lavender-preview{background:linear-gradient(135deg,#1e1b2e,#c4b5fd)}.vanilla-orange-preview{background:linear-gradient(135deg,#fff8e1,#ffb74d)}.sidebar-btn{width:100%;padding:.8rem;border:1.5px solid var(--border-focus);border-radius:8px;background:var(--action-primary);color:var(--action-text);cursor:pointer;margin-bottom:1rem;font-weight:600;display:flex;align-items:center;justify-content:center}.sidebar-btn:hover{transform:translateY(-1px);background:var(--action-hover)}.sessions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2);max-height:min(44vh,26rem);overflow-y:auto;overflow-x:hidden}.sidebar-session-item{display:flex;align-items:center;justify-content:space-between;background:var(--surface-subtle);border:1px solid var(--border-normal);border-radius:var(--radius-md);padding:var(--space-3);cursor:pointer;gap:var(--space-3)}.sidebar-session-item:hover{background:var(--surface-hover)}.sidebar-session-item.active{background:linear-gradient(135deg,#ffb6c133,#dda0dd33);border-color:var(--accent)}#sidebarSessionsList.switching-active .sidebar-session-item{pointer-events:none;opacity:.6;cursor:not-allowed}.sidebar-session-item.switching{opacity:.5;cursor:wait;pointer-events:none}.session-content{flex:1;min-width:0;cursor:pointer}.sidebar-session-name{font-weight:600;margin-bottom:.3rem;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-session-meta{font-size:.75rem;color:var(--text-secondary);opacity:.8}.session-actions{display:flex;gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast);margin-left:var(--space-2);flex-shrink:0}.sidebar-session-item:hover .session-actions{opacity:1}.session-action-btn{background:none;border:none;padding:4px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.session-action-btn:hover{background-color:#ffffff1a;color:var(--text-primary)}.session-action-btn.rename-btn:hover{color:var(--accent-subtle)}.session-action-btn.delete-btn:hover{color:#ff6b6b}.session-action-btn svg{width:14px;height:14px}.session-notification{position:fixed;top:20px;right:20px;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:500;z-index:10000;animation:slideInRight var(--motion-slow) var(--motion-easing-standard);max-width:300px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-md)}.session-notification.success{background:linear-gradient(135deg,#4caf50e6,#388e3ce6);color:#fff}.session-notification.error{background:linear-gradient(135deg,#f44336e6,#c62828e6);color:#fff}.session-notification.info{background:linear-gradient(135deg,#2196f3e6,#1976d2e6);color:#fff}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.loading,.no-sessions,.error{text-align:center;padding:1.25rem;border-radius:8px;font-style:italic}.loading,.no-sessions{color:var(--text-secondary);background:#ffffff0d;border:1px dashed rgba(255,255,255,.1)}.error{color:#ff6b6b;background:#ff6b6b1a;border:1px dashed rgba(255,107,107,.3)}.hamburger-menu{position:static;background:var(--surface-raised);border:1.5px solid var(--accent-subtle);border-radius:6px;width:36px;height:36px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.hamburger-menu span{width:16px;height:2px;background:var(--text-primary)}.hamburger-menu:hover{transform:scale(1.05);border-color:var(--accent)}.hamburger-menu.active{background:var(--accent-subtle);border-color:var(--accent)}.hamburger-menu.active span{background:var(--action-text)}@media(max-width:768px){.sidebar{width:280px;left:-280px}.session-actions{opacity:1}.session-action-btn{padding:5px}.session-action-btn svg{width:16px;height:16px}.session-notification{top:10px;right:10px;left:10px;max-width:none;font-size:13px;padding:10px 14px}.hamburger-menu{width:34px;height:34px}.hamburger-menu span{width:15px}.dropdown-selected,.dropdown-option{padding:.7rem;font-size:.85rem}.theme-preview{width:14px;height:14px;margin-right:8px}.sidebar-header{padding:1rem}.sidebar-header h2{font-size:1.2rem}.sidebar-content{padding:.8rem}.sidebar-section{margin-bottom:1.25rem}.sidebar-link{padding:.7rem .9rem;font-size:.9rem}.sidebar-btn{padding:.7rem;font-size:.9rem}.sidebar-session-item{padding:.7rem}.sidebar-session-name{font-size:.85rem}.sidebar-session-meta{font-size:.7rem}}@media(max-width:360px){.sidebar{width:260px;left:-260px}.sidebar-session-item{padding:.6rem}.session-actions{gap:3px}.session-action-btn{padding:3px}.session-action-btn svg{width:13px;height:13px}.hamburger-menu{width:32px;height:32px}.hamburger-menu span{width:14px}.sidebar-header{padding:.8rem}.sidebar-header h2{font-size:1.1rem}.sidebar-content{padding:.6rem}.sidebar-section h3{font-size:.9rem;margin-bottom:.8rem}.sidebar-link{padding:.6rem .8rem;font-size:.85rem}.sidebar-icon{font-size:1.1rem;margin-right:.6rem}}@media(max-width:320px){.sidebar{width:240px;left:-240px}.hamburger-menu{width:30px;height:30px}.hamburger-menu span{width:13px;height:1.5px}.sidebar-header{padding:.7rem}.sidebar-header h2{font-size:1rem}.close-sidebar{width:28px;height:28px;font-size:1.8rem}.sidebar-section{margin-bottom:1.2rem}.sidebar-section h3{font-size:.85rem}.dropdown-selected,.dropdown-option{padding:.6rem;font-size:.8rem}.theme-preview{width:12px;height:12px;margin-right:6px}}.auth-section{padding:1.2rem;border-bottom:1.5px solid var(--accent-subtle)}.auth-section h3{color:var(--accent-subtle);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.8rem}.auth-loading{color:var(--text-secondary);font-size:.85rem;padding:.5rem 0}.auth-login-buttons{display:flex;flex-direction:column;gap:.6rem}.auth-provider-logo{width:1.25rem;height:1.25rem;flex:0 0 auto;object-fit:contain}.auth-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.6rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background var(--transition-normal),border-color var(--transition-normal)}.auth-btn svg{flex-shrink:0}.auth-google-btn,.auth-github-btn{background:var(--action-primary);color:var(--action-text);border:1px solid var(--border-normal)}.auth-google-btn:hover,.auth-github-btn:hover{background:var(--action-hover);border-color:var(--accent)}.byok-section{padding:1.2rem;border-bottom:1.5px solid var(--accent-subtle)}.byok-section h3{color:var(--accent-subtle);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.8rem}.byok-placeholder{display:flex;flex-direction:column;gap:.5rem}.byok-status{font-size:.85rem;padding:.4rem .6rem;border-radius:6px}.byok-empty{color:var(--text-secondary);background:var(--surface-input);border:1px solid var(--border-normal)}.byok-manage-btn{background:var(--action-primary);color:var(--text-secondary);border:1px solid var(--border-normal);border-radius:6px;padding:.5rem 1rem;font-size:.8rem;cursor:not-allowed;opacity:.6}.byok-hint{font-size:.75rem;color:var(--text-secondary)}.auth-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);z-index:10002;display:none;align-items:center;justify-content:center}.auth-overlay.active{display:flex}.auth-overlay-card{background:var(--surface-raised);border:1.5px solid var(--accent-subtle);border-radius:16px;padding:2rem 2.5rem;text-align:center;box-shadow:var(--shadow-sm);max-width:360px}.auth-overlay-card h2{color:var(--accent-subtle);font-size:1.4rem;margin:0 0 .5rem}.auth-overlay-card p{color:var(--text-secondary);font-size:.9rem;margin:0 0 1.5rem}.auth-overlay-buttons{display:flex;flex-direction:column;gap:.8rem}.auth-user{display:flex;align-items:center;gap:.75rem;padding:.5rem 0}.auth-user-info{display:flex;align-items:center;gap:.6rem;flex:1;min-width:0}.auth-user-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--surface-input);border:1px solid rgba(255,255,255,.12)}.auth-avatar-placeholder{display:flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:600;color:var(--text-primary);text-transform:uppercase}.auth-user-meta{display:flex;flex-direction:column;min-width:0;flex:1}.auth-user-name{font-size:.85rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-user-email{font-size:.72rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-logout-btn{flex-shrink:0;padding:.35rem .7rem;font-size:.72rem;border:1px solid rgba(255,255,255,.15);border-radius:6px;background:transparent;color:var(--text-primary);cursor:pointer}.auth-logout-btn:hover{background:#ef44442e;border-color:#ef444466;color:#fca5a5}.sidebar-section--sessions{order:-1}.sidebar-section--sessions h3{color:var(--text-primary)}.sidebar-section--secondary{margin-top:auto;opacity:.78}.sidebar-section--secondary h3{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.provider-identity-placeholder,.provider-identity-placeholder--small{display:inline-grid;place-items:center;flex:0 0 auto;border:1px solid var(--border-normal);border-radius:var(--radius-md);background:var(--surface-subtle);color:var(--provider-accent, var(--text-secondary));font-size:.7rem;font-weight:700;letter-spacing:.04em;line-height:1;text-transform:uppercase}.provider-identity-placeholder{width:2rem;height:2rem}.provider-identity-placeholder--small{width:1.25rem;height:1.25rem;border-radius:var(--radius-sm);font-size:.55rem}.provider-identity{display:inline-flex;align-items:center;gap:var(--space-2)}.provider-identity__name{color:var(--text-primary)}.provider-title{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.provider-title__name{color:var(--text-primary)}.provider-identity-logo{width:1.25rem;height:1.25rem;flex:0 0 auto;object-fit:contain}.provider-badge,.provider-identity-badge{display:inline-flex;align-items:center;min-height:1.25rem;border:1px solid currentColor;border-radius:var(--radius-sm);padding:0 var(--space-2);background:var(--surface-subtle);color:var(--text-secondary);font-size:.65rem;font-weight:700;letter-spacing:.03em;line-height:1;text-transform:uppercase}.provider-identity-badge--official,.provider-badge--official{color:var(--status-success)}.provider-identity-badge--community,.provider-identity-badge--preview,.provider-badge--community,.provider-badge--experimental{color:var(--status-info)}.provider-identity-badge--custom,.provider-identity-badge--local,.provider-badge--custom{color:var(--accent)}.provider-identity-badge--deprecated,.provider-badge--deprecated{color:var(--status-danger)}.provider-identity-badge--unknown{color:var(--text-muted)}.provider-family{display:block;margin-top:var(--space-1);color:var(--text-muted);font-size:.75rem;font-weight:500}.visual-status{display:inline-flex;align-items:center;gap:var(--space-2)}.visual-status__mark{display:inline-grid;place-items:center;width:1.1em;height:1.1em;border-radius:50%;font-size:.7em;font-weight:800;line-height:1}.visual-status--success .visual-status__mark{background:var(--status-success);color:var(--text-inverse)}.visual-status--danger .visual-status__mark{background:var(--status-danger);color:var(--text-inverse)}.visual-status--info .visual-status__mark{background:var(--accent);color:var(--text-inverse)}.visual-icon{display:inline-grid;place-items:center;min-width:1.1em;height:1.1em;font-family:var(--font-mono);font-size:.85em;font-weight:800;line-height:1}.visual-icon--tool{color:var(--accent)}.visual-icon--terminal{color:var(--text-secondary)}.tool-card__icon,.generic-card__icon,.weather-card__icon,.weather-card__day-icon{font-family:var(--font-sans)}
