.stat-cards{width:100%}.stat-card{gap:var(--space-2,8px);background:linear-gradient(135deg, var(--color-bg-elevated) 0%, #18181b 100%);border:1px solid var(--color-glass-border,#ffffff0f);border-radius:8px;flex-direction:column;padding:12px;transition:all .15s;display:flex}.stat-card:hover{background:var(--color-bg-muted);border-color:var(--color-border-default)}.stat-card__header{align-items:center;gap:var(--space-2,8px);min-width:0;min-height:24px;display:flex}.stat-card__icon{color:var(--color-accent,#8b5cf6);align-items:center;display:flex}.stat-card__title{font-size:var(--text-xs,.75rem);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted,#6b7280);font-weight:600}.stat-card__metrics{gap:var(--space-1,4px);flex-direction:column;display:flex}.stat-card__metric{justify-content:space-between;align-items:center;display:flex}.stat-card__metric-label{font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.02em;color:var(--color-text-muted,#6b7280);align-items:center;gap:4px;line-height:1.4;display:flex}.stat-card__metric-label svg{vertical-align:middle;flex-shrink:0}.stat-card__metric-value{font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.02em;color:var(--color-text-secondary);background:var(--color-bg-surface);border-radius:var(--radius-sm,4px);padding:2px 6px;line-height:1.4}.stat-card--skeleton .stat-card__skeleton-icon,.stat-card--skeleton .stat-card__skeleton-value,.stat-card--skeleton .stat-card__skeleton-label{border-radius:var(--radius-sm,4px);background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14 50%,#ffffff0a 75%) 0 0/200% 100%;animation:1.5s infinite stat-shimmer}.stat-card__skeleton-icon{width:16px;height:16px}.stat-card__skeleton-label{width:80px;height:12px}.stat-card__skeleton-value{width:100%;height:20px}@keyframes stat-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.session-stat-card{cursor:pointer;position:relative}.session-stat-card--active{box-shadow:inset 2px 0 0 var(--color-success)}.session-stat-card__name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.session-stat-card__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.session-stat-card__dot--success{background:var(--color-success)}.session-stat-card__dot--warning{background:var(--color-warning)}.session-stat-card__dot--error{background:var(--color-error)}.session-stat-card__dot--default{background:var(--color-text-dimmed)}.session-stat-card__dot--pulse{animation:2s ease-in-out infinite dot-pulse}.session-stat-card__menu-trigger{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);opacity:.4;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.session-stat-card:hover .session-stat-card__menu-trigger{opacity:1}.session-stat-card__menu-trigger:hover{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.session-stat-card__timer{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex}.session-stat-card__timer--warning{color:var(--color-warning);animation:2s ease-in-out infinite timer-pulse}.session-stat-card__timer--critical{color:var(--color-error);animation:1s ease-in-out infinite timer-pulse}@keyframes timer-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.9)}}.session-stat-card__timer-tooltip{padding:var(--space-2) var(--space-3);background:var(--color-bg-elevated);border-radius:inherit;font-size:var(--text-xs);color:var(--color-text-secondary);z-index:5;cursor:pointer;align-items:center;line-height:1.4;display:flex;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.session-stat-card__timer--warning,.session-stat-card__timer--critical{animation:none!important}}.session-stat-card__progress{margin-top:4px}@media (width<=640px){.session-stat-card__menu-trigger{opacity:1;width:36px;height:36px}}.session-context-menu{z-index:100;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);min-width:160px;box-shadow:var(--shadow-lg);padding:var(--space-1);animation:.15s ease-out fadeInUp;position:fixed}.session-context-menu__item{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);width:100%;color:var(--color-text-primary);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;padding:8px 12px;display:flex}.session-context-menu__item:hover{background:var(--color-bg-muted)}.session-context-menu__item--danger{color:var(--color-error)}.session-context-menu__item--danger:hover{background:var(--color-error-muted)}.session-context-menu__backdrop{z-index:99;position:fixed;inset:0}@media (width<=640px){.session-context-menu{border-radius:var(--radius-xl) var(--radius-xl) 0 0;z-index:210;width:100%;min-width:auto;padding:var(--space-2);inset:auto 0 0!important}.session-context-menu__backdrop{z-index:209;background:#0006}.session-context-menu__item{font-size:var(--text-base);padding:14px 16px}}.create-session-dialog{z-index:100;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-2);scrollbar-width:none;max-height:460px;animation:.15s ease-out csd-slide-in;position:fixed;overflow-y:auto}@keyframes csd-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.csd-section{padding:var(--space-1) 0}.csd-section-header{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);align-items:center;gap:6px;font-weight:600;display:flex}.csd-agents{flex-direction:column;gap:2px;display:flex}.csd-agent-btn{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;transition:background var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.csd-agent-btn:hover{background:var(--color-bg-muted)}.csd-agent-btn--last-used{background:var(--color-accent-muted);border:1px solid hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .3)}.csd-agent-btn--last-used:hover{background:hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .2)}.csd-agent-icon{color:var(--color-text-secondary);flex-shrink:0}.csd-agent-info{flex-direction:column;min-width:0;display:flex}.csd-agent-label{font-size:var(--text-sm);font-weight:var(--font-medium);align-items:center;gap:6px;display:inline-flex}.csd-agent-badge{text-transform:uppercase;letter-spacing:.05em;background:hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .15);color:var(--color-accent);border-radius:8px;padding:1px 5px;font-size:9px;font-weight:700;line-height:1.3}.csd-agent-desc{font-size:var(--text-xs);color:var(--color-text-muted)}.csd-backdrop{display:none}@media (width<=640px){.create-session-dialog{border-radius:var(--radius-xl) var(--radius-xl) 0 0;z-index:210;max-height:70vh;animation:.2s ease-out csd-slide-up;overflow-y:auto;width:100%!important;max-width:100%!important;position:fixed!important;inset:auto 0 0!important}@keyframes csd-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.csd-backdrop{z-index:209;background:#0006;display:block;position:fixed;inset:0}}.session-dropdown__backdrop{z-index:49;position:fixed;inset:0}.session-dropdown--popover{width:calc(var(--dashboard-left-width,280px) + 1px);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);max-height:calc(100vh - 100px);box-shadow:var(--shadow-lg);padding:var(--space-4);z-index:80;background:#1f1f22;animation:.2s ease-out fadeInUp;position:absolute;top:calc(100% + 8px);left:0;overflow-y:auto}.session-dropdown--bottom-sheet{border:1px solid var(--color-border-default);border-radius:var(--radius-xl) var(--radius-xl) 0 0;min-width:auto;max-height:60vh;box-shadow:var(--shadow-lg);padding:var(--space-3);z-index:200;background:#1f1f22;animation:.2s ease-out fadeInUp;position:fixed;inset:auto 0 0;overflow-y:auto}.session-dropdown__list{gap:var(--space-2);flex-direction:column;display:flex}.session-dropdown__new-session{align-items:center;gap:var(--space-2);width:100%;margin-bottom:var(--space-2);border:1px dashed var(--color-border-default);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:0 0;margin-top:0;padding:10px 12px;display:flex}.session-dropdown__new-session:hover{background:var(--color-bg-muted);color:var(--color-accent);border-color:var(--color-accent)}.session-switcher-wrapper{position:relative}.session-switcher{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast);user-select:none;display:flex}.session-switcher:hover{background:var(--color-bg-muted)}.session-switcher__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.session-switcher__dot--success{background:var(--color-success);animation:2s ease-in-out infinite dot-pulse}.session-switcher__dot--warning{background:var(--color-warning);animation:2s ease-in-out infinite dot-pulse}.session-switcher__dot--error{background:var(--color-error)}.session-switcher__dot--default{background:var(--color-text-dimmed)}.session-switcher__name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:200px;overflow:hidden}.session-switcher__chevron{color:var(--color-text-muted);transition:transform var(--transition-fast);flex-shrink:0}.session-switcher__chevron--open{transform:rotate(180deg)}.session-switcher--mobile{justify-content:center;width:44px;height:44px;padding:0}.session-switcher--mobile .session-switcher__name,.session-switcher--mobile .session-switcher__chevron,.session-switcher--mobile .session-switcher__dot{display:none}.header{height:var(--header-height);padding:0 var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-4);z-index:50;background:0 0;border-bottom:none;border-radius:0;display:flex}.header-logo{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.header-logo-icon{color:var(--color-accent)}.header-logo-text{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary)}.header-logo-text--scramble{letter-spacing:.04em;font-family:JetBrains Mono,monospace}.header-logo--clickable{cursor:pointer;border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);margin:calc(-1 * var(--space-1)) calc(-1 * var(--space-2));transition:background var(--transition-fast)}.header-logo--clickable:hover{background:var(--color-bg-muted)}.header-spacer{flex:1}.header-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.header-user-menu{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);display:flex}.header-user-menu:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.header-timer-wrapper{position:relative}.header-timer-button{padding:var(--space-1);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.header-timer-button--warning{color:var(--color-warning);animation:2s ease-in-out infinite timer-pulse}.header-timer-button--critical{color:var(--color-error);animation:1s ease-in-out infinite timer-pulse}.header-timer-button:hover{background:var(--color-bg-muted)}.header-timer-dropdown{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);min-width:220px;max-width:280px;box-shadow:var(--shadow-lg);padding:var(--space-3);z-index:80;position:absolute;top:calc(100% + 8px);right:0}.header-timer-bucket{font-size:var(--text-sm);color:var(--color-text-primary);margin-bottom:var(--space-2);font-family:JetBrains Mono,Fira Code,monospace;font-weight:600}.header-timer-explanation{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0;line-height:1.5}@media (prefers-reduced-motion:reduce){.header-timer-button--warning,.header-timer-button--critical{animation:none!important}}.header-bookmarks-wrapper{position:relative}.header-bookmarks-button{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.header-bookmarks-button:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.header-bookmarks-button:focus-visible{box-shadow:var(--glow-accent);outline:none}.header-bookmarks-menu{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);min-width:240px;max-height:calc(100vh - 100px);box-shadow:var(--shadow-lg);padding:var(--space-2);z-index:80;animation:.15s ease-out header-bookmark-slide-in;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.header-bookmarks-list{flex-direction:column;gap:2px;display:flex}.header-bookmark-row{align-items:center;gap:4px;display:flex}.header-bookmark-item{justify-content:space-between;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-primary);text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;flex:1;padding:8px 10px;display:flex}.header-bookmark-item:hover{background:var(--color-bg-muted)}.header-bookmark-item-name{font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;text-overflow:ellipsis;max-width:155px;overflow:hidden}.header-bookmark-item-badge{font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-bg-surface);border-radius:var(--radius-sm);flex-shrink:0;padding:2px 6px}.header-bookmark-delete{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-muted);transition:background var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.header-bookmark-delete:hover{background:var(--color-error-muted);color:var(--color-error)}.header-bookmark-add{margin-top:var(--space-1);border-radius:var(--radius-md);width:100%;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);border-top:1px solid var(--color-border-subtle);align-items:center;gap:8px;padding:8px 10px;display:flex}.header-bookmark-add:hover{background:var(--color-bg-muted);color:var(--color-accent)}.header-bookmark-error{margin-bottom:var(--space-1);font-size:var(--text-xs);color:var(--color-error);background:var(--color-error-muted);border-radius:var(--radius-md);word-break:break-word;padding:6px 10px}.header-bookmark-rename{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-muted);transition:background var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.header-bookmark-rename:hover{background:var(--color-bg-muted);color:var(--color-accent)}.header-bookmark-rename-row{flex:1;align-items:center;gap:4px;padding:2px;display:flex}.header-bookmark-rename-row .header-bookmark-name-input{flex:1;padding:6px 8px}.header-bookmark-rename-confirm,.header-bookmark-rename-cancel{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-muted);transition:background var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.header-bookmark-rename-confirm:hover{background:var(--color-success-muted,#22c55e26);color:var(--color-success,#22c55e)}.header-bookmark-rename-confirm:disabled{opacity:.4;cursor:not-allowed}.header-bookmark-rename-cancel:hover{background:var(--color-error-muted);color:var(--color-error)}.header-bookmarks-create{padding:2px}.header-bookmark-create-row{align-items:center;gap:6px;display:flex}.header-bookmark-name-input{border-radius:var(--radius-md);border:1px solid var(--color-border-default);background:var(--color-bg-surface);color:var(--color-text-primary);font-size:var(--text-sm);flex:1;padding:8px 10px}.header-bookmark-name-input:focus{border-color:var(--color-accent);box-shadow:var(--glow-accent);outline:none}.header-bookmark-save{border-radius:var(--radius-md);border:1px solid var(--color-border-default);background:var(--color-accent);height:34px;color:var(--color-text-primary);font-size:var(--text-xs);font-weight:var(--font-semibold);cursor:pointer;transition:background var(--transition-fast), opacity var(--transition-fast);padding:0 10px}.header-bookmark-save:hover:not(:disabled){background:var(--color-accent-hover)}.header-bookmark-save:disabled{opacity:.55;cursor:not-allowed}@keyframes header-bookmark-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.header-user-wrapper{position:relative}.header-usage-inline{color:var(--color-text-secondary);white-space:nowrap;margin-left:auto;font-family:JetBrains Mono,Fira Code,monospace;font-size:.75rem}.header-user-dropdown{white-space:nowrap;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:80;animation:.15s ease-out header-bookmark-slide-in;position:absolute;top:calc(100% + 8px);right:0}.header-user-dropdown-item{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);width:100%;color:var(--color-text-primary);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;padding:8px 12px;text-decoration:none;display:flex}.header-user-dropdown-item:hover{background:var(--color-bg-muted)}.header-user-dropdown-item--danger:hover{background:var(--color-error-muted);color:var(--color-error)}.header-user-dropdown-overlay{z-index:299;background:0 0;position:fixed;inset:0}.header-user-dropdown--portal{white-space:nowrap;border-radius:var(--radius-lg);padding:var(--space-1);animation:.15s ease-out header-bookmark-slide-in;position:fixed}@keyframes header-user-dropdown-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.header-user-avatar{flex-shrink:0}.header-user-avatar-img{border-radius:50%;flex-shrink:0}.header-user-avatar-fallback.hidden{display:none}.header-user-name{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=599px){.header-user-name{max-width:150px}}.header-storage-button,.header-settings-button,.header-logout-button{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:flex}.header-storage-button:hover,.header-settings-button:hover,.header-logout-button:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.header-storage-button:focus-visible,.header-settings-button:focus-visible,.header-logout-button:focus-visible{box-shadow:var(--glow-accent);outline:none}.header-dashboard-button{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-accent);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), transform .2s ease;justify-content:center;align-items:center;animation:3s ease-in-out infinite dashboard-icon-glow;display:flex}.header-dashboard-button:hover{background:var(--color-bg-muted);color:var(--color-accent)}.header-dashboard-button:hover svg{animation:.6s ease-in-out dashboard-icon-pulse}.header-dashboard-button:focus-visible{box-shadow:var(--glow-accent);outline:none}@keyframes dashboard-icon-glow{0%,to{opacity:1}50%{opacity:.6}}@keyframes dashboard-icon-pulse{0%{transform:scale(1)rotate(0)}30%{transform:scale(1.2)rotate(-8deg)}60%{transform:scale(1.1)rotate(4deg)}to{transform:scale(1)rotate(0)}}.header-auth-url-btn{background:var(--color-accent);height:30px;color:var(--color-bg-base,#0f0f0f);font-size:var(--text-xs);font-weight:var(--font-semibold);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast), transform .15s ease;border:none;border-radius:999px;align-items:center;gap:6px;padding:0 12px;display:flex}.header-auth-url-btn:hover{background:var(--color-accent-hover);transform:scale(1.03)}.header-auth-url-btn:active{transform:scale(.97)}.header-auth-url-btn svg{width:16px;height:16px}@keyframes header-auth-url-bounce-in{0%{opacity:0;transform:translate(-40px)}50%{opacity:1;transform:translate(4px)}70%{transform:translate(-2px)}85%{transform:translate(1px)}to{transform:translate(0)}}.header-auth-url-bounce-in{animation:.5s ease-out header-auth-url-bounce-in}@media (width<=640px){.header-storage-button,.header-settings-button,.header-bookmarks-button,.header-dashboard-button{width:44px;height:44px}.header-bookmark-delete,.header-bookmark-rename,.header-bookmark-rename-confirm,.header-bookmark-rename-cancel{width:36px;height:36px}.header-bookmarks-menu{border-radius:var(--radius-xl) var(--radius-xl) 0 0;z-index:200;min-width:auto;max-height:60vh;animation:none;position:fixed;inset:auto 0 0;overflow-y:auto}.header-bookmarks-create{padding:12px 16px}.header-bookmarks-menu:has(.header-bookmarks-create){border-radius:0 0 var(--radius-xl) var(--radius-xl);top:0;bottom:auto}.header-bookmark-name-input{padding:12px 14px;font-size:16px}.header-bookmark-save{height:44px;padding:0 16px;font-size:14px}.header-user-dropdown,.header-user-dropdown--portal{border-radius:var(--radius-xl) var(--radius-xl) 0 0;z-index:200;min-width:auto;padding:var(--space-3);animation:.2s ease-out header-user-dropdown-slide-up;position:fixed;inset:auto 0 0}.header-user-dropdown-overlay{background:#0006;justify-content:center;align-items:flex-end;display:flex}.header-user-dropdown--portal{width:100%;position:relative}.header-user-dropdown-item,.header-user-dropdown--portal .header-user-dropdown-item{padding:14px 16px;font-size:16px}.header-user-name{display:none}}.xterm{cursor:text;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:underline double}.xterm-underline-3{text-decoration:underline wavy}.xterm-underline-4{text-decoration:underline dotted}.xterm-underline-5{text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}.init-progress{background:var(--glass-bg);max-width:480px;-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);border:1px solid var(--glass-border);margin:0 auto;padding:32px 40px;animation:.4s ease-out fadeInUp;box-shadow:0 8px 32px #0006,0 2px 8px #0000004d}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (height<=700px){.init-progress{padding:20px 24px}.init-progress-hero{margin-bottom:16px}.init-progress-hero-icon{width:60px;height:60px}.init-progress-header,.init-progress-bar,.init-progress-stages{margin-bottom:16px}.init-progress-stage{padding:6px 0}}.init-progress-hero{justify-content:center;margin-bottom:24px;display:flex}.init-progress-hero-icon{border-radius:var(--radius-full);background:var(--color-accent-muted);width:80px;height:80px;color:var(--color-accent);transition:all var(--transition-slow);justify-content:center;align-items:center;display:flex}.init-progress.animate-shake .init-progress-hero-icon{background:var(--color-error-muted);color:var(--color-error)}.init-progress-hero-icon.animate-bounce{background:var(--color-success-muted);color:var(--color-success);animation:.5s ease-out bounce,.3s ease-out scaleIn}.init-progress-header{text-align:center;margin-bottom:28px}.init-progress-header h2{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0 0 8px}.init-progress-subtitle{font-size:var(--text-sm);color:var(--color-text-muted);margin:0}.init-progress-bar{background:var(--color-bg-muted);border-radius:var(--radius-full);height:8px;margin-bottom:28px;position:relative;overflow:hidden}.init-progress-bar--complete{box-shadow:0 0 12px #22c55e4d}.init-progress-bar--error{box-shadow:0 0 12px #ef44444d}.init-progress-bar-fill{background:linear-gradient(90deg, var(--color-accent), var(--color-info));height:100%;transition:width var(--transition-slow);border-radius:var(--radius-full);position:absolute;top:0;left:0}.init-progress-bar-fill--complete{background:linear-gradient(90deg,#16a34a 0%,#22c55e 100%)}.init-progress-bar-fill--error{background:linear-gradient(90deg,#dc2626 0%,#ef4444 100%)}.init-progress-bar-text{font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--color-text-primary);text-shadow:0 1px 3px #0009;letter-spacing:.5px;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.init-progress-stages{margin:0 0 24px;padding:0;list-style:none}.init-progress-stage{color:var(--color-text-muted);transition:color var(--transition-fast);border-bottom:1px solid #0000;padding:10px 0}.init-progress-stage:last-child{border-bottom:none}.init-progress-stage-row{align-items:center;gap:12px;display:flex}.init-progress-stage--completed{color:var(--color-success)}.init-progress-stage--completed .init-progress-stage-icon{background:var(--color-success-muted)}.init-progress-stage--active{color:var(--color-accent)}.init-progress-stage--active .init-progress-stage-icon{background:var(--color-accent-muted)}.init-progress-stage--pending{color:var(--color-text-muted)}.init-progress-stage--error{color:var(--color-error)}.init-progress-stage--error .init-progress-stage-icon{background:var(--color-error-muted)}.init-progress-stage-icon{border-radius:var(--radius-md);width:28px;height:28px;transition:background var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.init-progress-stage-label{font-size:var(--text-base);font-weight:var(--font-medium);flex:1}.init-progress-stage-time{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--color-text-muted);text-align:right;min-width:48px}.init-progress-stage--completed .init-progress-stage-time{color:var(--color-success)}.init-progress-stage--active .init-progress-stage-time{color:var(--color-accent)}.init-progress-details-section{background:linear-gradient(135deg, var(--color-bg-elevated) 0%, #18181bcc 100%);border-radius:var(--radius-lg);padding:var(--space-3);margin-bottom:var(--space-6);border:1px solid var(--color-glass-border,#ffffff0f)}.init-progress-details-title{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:var(--space-2);align-items:center;gap:var(--space-2);display:flex}.init-progress-details-grid{gap:var(--space-1);flex-direction:column;display:flex}.init-progress-detail{justify-content:space-between;align-items:center;display:flex}.init-progress-detail-key{color:var(--color-text-muted);align-items:center;gap:4px;font-size:11px;display:flex}.init-progress-detail-value{align-items:center;gap:var(--space-2);font-size:11px;font-family:var(--font-mono);color:var(--color-text-secondary);background:var(--color-bg-surface);border-radius:var(--radius-sm);word-break:break-all;padding:2px 6px;display:flex}.init-progress-actions{text-align:center}.init-progress-open-btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-10);font-size:var(--text-lg);font-weight:var(--font-semibold);color:#fff;background:linear-gradient(135deg, #16a34a 0%, var(--color-success) 100%);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);box-shadow:0 4px 12px var(--color-success-muted);border:none;display:inline-flex}.init-progress-open-btn:hover{box-shadow:0 6px 16px var(--color-success-muted);background:linear-gradient(135deg,#15803d 0%,#16a34a 100%);transform:translateY(-2px)}.init-progress-open-btn:active{transform:translateY(0)}.init-progress-error-msg{text-align:center;padding:var(--space-3) var(--space-4);background:var(--color-error-muted);border-radius:var(--radius-lg);color:var(--color-error);font-size:var(--text-sm);border:1px solid #ef44444d}.init-progress-total-time{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--color-success);font-weight:var(--font-medium)}.init-progress-stage--active[data-stage=ready]{color:var(--color-success)}.init-progress-stage--active[data-stage=ready] .init-progress-stage-icon{background:var(--color-success-muted)}@media (width<=540px){.init-progress{margin:0 16px;padding:24px 20px}.init-progress-hero-icon{width:64px;height:64px}.init-progress-hero-icon svg{width:36px;height:36px}.init-progress-header h2{font-size:var(--text-lg)}.init-progress-actions{padding-bottom:24px}}.terminal-init-overlay{z-index:15;background:0 0;justify-content:center;align-items:flex-start;padding:40px 20px;display:flex;position:absolute;inset:0;overflow-y:auto}.terminal-connection-status{color:var(--color-text-secondary);z-index:10;background:#1a1a2e;flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:14px;display:flex;position:absolute;inset:0}.terminal-connection-spinner{border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:24px;height:24px;animation:1s linear infinite spin}.xterm .xterm-helper-textarea{caret-color:#0000!important;color:#0000!important;background:0 0!important;border:none!important;outline:none!important;overflow:hidden!important}@media (pointer:coarse){.xterm .xterm-helper-textarea{opacity:0!important;pointer-events:none!important;z-index:-1!important;-webkit-tap-highlight-color:transparent!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;font-size:16px!important;position:fixed!important;top:0!important;left:0!important}.terminal-input-iframe{opacity:.01!important;z-index:-1!important;pointer-events:none!important;border:none!important;width:1px!important;height:1px!important;position:fixed!important;top:0!important;left:0!important;overflow:hidden!important}}.xterm .xterm-viewport{overscroll-behavior:contain;overflow:hidden!important}.xterm .xterm-helpers{overflow:hidden!important}.terminal-tabs{border-bottom:1px solid var(--color-border-subtle);background:0 0;flex-shrink:0;align-items:center;gap:2px;height:36px;padding:4px 8px;display:flex;overflow:hidden}.terminal-tab{min-width:80px;color:var(--color-text-secondary);backdrop-filter:blur(8px);border:1px solid var(--color-glass-border,#ffffff14);border-radius:var(--radius-sm) var(--radius-sm) 0 0;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;background:#27272a99;justify-content:center;align-items:center;gap:6px;padding:4px 12px;font-size:12px;display:flex;position:relative}.terminal-tab:hover:not(.terminal-tab--active){color:var(--color-text-primary);background:#3f3f46cc;transform:translateY(-1px)}.terminal-tab--active{color:var(--color-text-primary);background:linear-gradient(135deg, hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .15), hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .05));border-color:hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .3);box-shadow:0 0 20px hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .2), inset 0 1px 0 #ffffff0d}.terminal-tab--active:after{content:"";background:linear-gradient(90deg, transparent, var(--color-accent), transparent);border-radius:1px;height:2px;position:absolute;bottom:0;left:20%;right:20%}.terminal-tab-icon{opacity:.7;transition:opacity var(--transition-fast), color var(--transition-fast);flex-shrink:0}.terminal-tab[data-type=claude] .terminal-tab-icon{color:var(--color-tab-claude,#3b82f6)}.terminal-tab[data-type=htop] .terminal-tab-icon{color:var(--color-tab-htop,#22c55e)}.terminal-tab[data-type=yazi] .terminal-tab-icon{color:var(--color-tab-yazi,#3b82f6)}.terminal-tab[data-type=terminal] .terminal-tab-icon{color:var(--color-tab-terminal,#f59e0b)}.terminal-tab--active .terminal-tab-icon{opacity:1}.terminal-tab-label{user-select:none}.terminal-tab-close{border-radius:var(--radius-sm);width:18px;height:18px;color:var(--color-text-muted);opacity:0;cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;transform:scale(.8)}.terminal-tab:hover .terminal-tab-close{opacity:1;transform:scale(1)}.terminal-tab-close:hover{color:var(--color-error);background:var(--color-error-muted)}.terminal-tab-drag-handle{width:14px;height:14px;color:var(--color-text-muted);opacity:0;cursor:grab;transition:opacity var(--transition-fast);justify-content:center;align-items:center;display:flex}.terminal-tab:hover .terminal-tab-drag-handle{opacity:1}.terminal-tab-drag-handle:active{cursor:grabbing}.terminal-tab--dragging{opacity:.8;background:var(--color-bg-elevated);z-index:100;box-shadow:0 4px 12px #0000004d}.sortable-ghost{opacity:.5}.terminal-tab-add{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.terminal-tab-add:hover{color:var(--color-accent);background:var(--color-bg-elevated);transform:scale(1.05)}.terminal-tab-add:active{transform:scale(.95)}@media (width<=640px){.terminal-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow:auto hidden}.terminal-tabs::-webkit-scrollbar{display:none}.terminal-tab{min-width:0;min-height:36px;padding:4px 10px}.terminal-tab-label{font-size:11px}.terminal-tab-close{opacity:1;width:22px;height:22px;transform:scale(1)}.terminal-tab-drag-handle{display:none}.terminal-tab-add{width:36px;height:36px}}.terminal-tab-close-popup{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:60;white-space:nowrap;margin-top:4px;padding:6px 12px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.terminal-tab-close-popup-btn{border-radius:var(--radius-sm);color:var(--color-error);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:4px;padding:4px 12px;display:flex}.terminal-tab-close-popup-btn:hover{background:var(--color-error-muted)}.tiling-button{top:var(--space-2);right:var(--space-2);border-radius:var(--radius-md);cursor:pointer;width:28px;height:28px;transition:all var(--transition-fast);color:var(--color-text-secondary);background:var(--color-bg-overlay);-webkit-backdrop-filter:blur(8px);border:none;border:1px solid var(--color-border-subtle);z-index:10;justify-content:center;align-items:center;display:inline-flex;position:absolute}.tiling-button:hover{background:var(--color-bg-elevated-hover);color:var(--color-text-primary);border-color:var(--color-border-default)}.tiling-button:active{transform:scale(.95)}.tiling-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.tiling-button[data-active=true]{color:var(--color-accent);border-color:var(--color-accent);box-shadow:var(--glow-accent)}.tiling-button[data-active=true]:hover{color:var(--color-accent-hover);border-color:var(--color-accent-hover)}@media (width<=640px){.tiling-button{display:none!important}}.tiling-overlay-backdrop{z-index:98;position:fixed;inset:0}.tiling-overlay{margin-top:var(--space-1);background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-2);z-index:99;min-width:140px;box-shadow:var(--shadow-lg);animation:.15s ease-out fadeInDown;position:absolute;top:100%;right:0}.tiling-option{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:2px solid #0000;display:flex}.tiling-option:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.tiling-option--active{border-color:var(--color-accent);color:var(--color-text-primary)}.tiling-option--active:hover{border-color:var(--color-accent-hover)}.tiling-preview-icon{flex-shrink:0;width:32px;height:24px}.tiling-preview-rect{fill:none;stroke:currentColor;stroke-width:1.5px}.tiling-option-label{text-align:left;flex:1}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.tiling-overlay{animation:none}}.tiled-terminal-container{gap:2px;width:100%;height:100%;display:grid}.tiled--2-split{grid-template-rows:1fr;grid-template-columns:1fr 1fr}.tiled--3-split{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.tiled--3-split>:first-child{grid-row:span 2}.tiled--4-grid{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.tiled-terminal-slot{border-radius:var(--radius-md);cursor:pointer;background:var(--color-bg-secondary,#18181b);border:2px solid #0000;min-height:0;position:relative;overflow:hidden}.tiled-terminal-slot--active{border-color:var(--color-accent,#8b5cf6)}.tiled-terminal-slot--empty{background:var(--color-bg-tertiary,#27272a);cursor:default}.tiled-terminal-slot--empty:after{content:"";background:repeating-linear-gradient(45deg,#0000,#0000 10px,#ffffff05 10px 20px);position:absolute;inset:0}.floating-terminal-buttons{right:var(--space-3);align-content:flex-end;gap:var(--space-2);z-index:50;flex-flow:column wrap-reverse;display:flex;position:fixed;bottom:10px}.floating-terminal-btn{border-radius:var(--radius-md);backdrop-filter:blur(4px);width:44px;height:44px;color:var(--color-accent);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#0f0f0fbf;border:1px solid #ffffff1f;justify-content:center;align-items:center;transition:transform .15s,background-color .15s;display:flex;box-shadow:0 4px 12px #0006}.floating-terminal-btn:active{border-color:var(--color-accent);background:#323232e6;transform:scale(.92)}.floating-terminal-btn--active{background:var(--color-accent,#3b82f6);border-color:var(--color-accent,#3b82f6);color:#fff}.floating-terminal-btn svg{width:18px;height:18px}.floating-btn-row{justify-content:flex-end;align-items:center;display:flex;position:relative}.floating-btn-label{color:#fff;white-space:nowrap;pointer-events:none;opacity:0;background:#000c;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:500;transition:opacity .4s;position:absolute;right:calc(100% + 6px)}.floating-btn-label.visible{opacity:1}.floating-mic-desktop{bottom:var(--space-3);right:var(--space-3);z-index:50;position:fixed}.floating-mic-desktop .floating-terminal-btn{width:44px;height:44px}.button{font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;user-select:none;border:none;border-radius:6px;justify-content:center;align-items:center;gap:8px;font-weight:500;display:inline-flex}.button[data-size=sm]{gap:6px;padding:6px 12px;font-size:12px}.button[data-size=md]{gap:8px;padding:8px 16px;font-size:14px}.button[data-size=lg]{gap:10px;padding:12px 24px;font-size:16px}.button[data-variant=primary]{background:var(--color-accent);color:#fff}.button[data-variant=primary]:hover:not(:disabled){background:var(--color-accent-hover)}.button[data-variant=primary]:active:not(:disabled){transform:scale(.98)}.button[data-variant=secondary]{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.button[data-variant=secondary]:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-text-muted)}.button[data-variant=secondary]:active:not(:disabled){transform:scale(.98)}.button[data-variant=ghost]{color:var(--color-text-secondary);background:0 0}.button[data-variant=ghost]:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.button[data-variant=ghost]:active:not(:disabled){transform:scale(.98)}.button[data-variant=danger]{background:var(--color-error);color:#fff}.button[data-variant=danger]:hover:not(:disabled){background:var(--color-error-hover)}.button[data-variant=danger]:active:not(:disabled){transform:scale(.98)}.button:disabled{opacity:.5;cursor:not-allowed}.button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.button-spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.button[data-size=sm] .button-spinner{width:12px;height:12px}.button[data-size=lg] .button-spinner{width:20px;height:20px}.button-icon{flex-shrink:0}.button-content{align-items:center;display:inline-flex}.storage-browser{background:0 0;flex-direction:column;flex:1;width:100%;display:flex;overflow:hidden}.storage-browser-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.storage-breadcrumbs{align-items:center;gap:var(--space-1);flex:1;min-width:0;display:flex;overflow:hidden}.storage-breadcrumbs .breadcrumb-item:last-child{text-overflow:ellipsis;overflow:hidden}.breadcrumb-item{color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:none}.breadcrumb-item:hover{color:var(--color-text-primary);background:var(--color-bg-elevated)}.breadcrumb-item:last-child{color:var(--color-text-primary);font-weight:500}.breadcrumb-separator{color:var(--color-text-secondary);flex-shrink:0}.storage-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.storage-drop-zone{min-height:0;padding:var(--space-2);padding-bottom:var(--space-2);flex:1;transition:background-color .15s;overflow-y:auto}.storage-drop-zone--active{background:hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .05);outline:2px dashed var(--color-accent);outline-offset:-2px}.storage-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .1s;display:flex}.storage-item:hover{background:var(--color-bg-muted)}.storage-item-icon{color:var(--color-text-secondary);flex-shrink:0}.storage-item-icon-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.storage-icon-btn{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background-color .1s,color .1s;display:flex}.storage-icon-btn:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.storage-icon-btn--active{background:hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .14);color:var(--color-accent);border-color:hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .45)}.storage-sync-spinning{animation:1s linear infinite spin}.storage-toolbar-separator{background:var(--color-border-subtle);flex-shrink:0;width:1px;height:16px}.storage-search-bar{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border-subtle)}.storage-search-input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-bg-base);color:var(--color-text-primary);font-size:var(--font-size-sm);outline:none}.storage-search-input:focus{border-color:var(--color-accent)}.storage-item--file .storage-item-name{cursor:pointer}.storage-item--file .storage-item-name:hover{color:var(--color-accent);text-decoration:underline}.storage-item-checkbox{accent-color:var(--color-accent);flex-shrink:0}.storage-item-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-size-sm);color:var(--color-text-primary);flex:1;overflow:hidden}.storage-item-size,.storage-item-modified{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;flex-shrink:0}.storage-item-size{text-align:right;width:70px}.storage-item-modified{text-align:right;width:100px;padding-right:var(--space-2)}.storage-loading{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-10);color:var(--color-text-secondary);display:flex}.storage-loading-spinner{border:2px solid var(--color-border-default);border-top-color:var(--color-accent);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin}.storage-error{align-items:center;gap:var(--space-3);padding:var(--space-6);color:var(--color-danger);text-align:center;flex-direction:column;display:flex}.storage-empty{padding:var(--space-10);color:var(--color-text-secondary);font-size:var(--font-size-sm);justify-content:center;align-items:center;display:flex}.storage-upload-queue{border-top:1px solid var(--color-border-subtle);padding:var(--space-3);max-height:150px;overflow-y:auto}.upload-item{align-items:center;gap:var(--space-3);padding:var(--space-1) 0;font-size:var(--font-size-xs);display:flex}.upload-item-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-primary);flex:1;overflow:hidden}.upload-item-progress{background:var(--color-bg-elevated);border-radius:2px;width:100px;height:4px;overflow:hidden}.upload-item-bar{background:var(--color-accent);border-radius:2px;height:100%;transition:width .2s}.upload-item-status{text-align:right;width:60px;color:var(--color-text-secondary)}.upload-item--complete .upload-item-status{color:var(--color-success)}.upload-item--error .upload-item-status{color:var(--color-danger)}.storage-action-btn{height:28px;padding:0 var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;border:none;flex-shrink:0;justify-content:center;align-items:center;gap:2px;font-weight:500;display:flex}.storage-action-btn--delete{background:var(--color-error);color:#fff}.storage-action-btn--delete:hover{background:var(--color-error-hover)}.storage-action-btn--download{background:var(--color-accent);color:#fff}.storage-action-btn--download:hover{background:var(--color-accent-hover)}.workspace-container-icon{color:var(--color-text-secondary);opacity:.6;cursor:pointer;width:100px;padding-right:var(--space-2);flex-shrink:0;justify-content:flex-end;align-items:center;margin-left:auto;display:inline-flex;position:relative}.workspace-container-icon:hover{opacity:1}.workspace-sync-tooltip{font-size:var(--font-size-xs);color:var(--color-text-secondary);background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);white-space:normal;flex-shrink:0;max-width:260px;line-height:1.4}@media (width<=640px){.storage-item-modified{display:none}.storage-item-size{width:70px}.workspace-container-icon{width:70px;padding-right:0}.storage-item{min-height:44px;padding:var(--space-2) var(--space-2)}.storage-icon-btn{width:36px;height:36px}.storage-action-btn{height:36px;padding:0 var(--space-3)}.storage-breadcrumbs{-webkit-overflow-scrolling:touch;overflow-x:auto}}.storage-skeleton{width:100%;padding:var(--space-4);gap:var(--space-4);flex-direction:column;flex:1;display:flex}.storage-skeleton-bar{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14 50%,#ffffff0a 75%) 0 0/200% 100%;animation:1.5s ease-in-out infinite storage-skeleton-shimmer}@keyframes storage-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.storage-skeleton-header{padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;display:flex}.storage-skeleton-breadcrumb{width:140px;height:14px}.storage-skeleton-toolbar{gap:var(--space-2);display:flex}.storage-skeleton-btn{border-radius:var(--radius-sm);width:28px;height:28px}.storage-skeleton-rows{gap:var(--space-2);flex-direction:column;display:flex}.storage-skeleton-row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);display:flex}.storage-skeleton-icon{border-radius:2px;flex-shrink:0;width:16px;height:16px}.storage-skeleton-name{flex:1;width:65%;height:14px}.storage-skeleton-size{flex-shrink:0;width:50px;height:12px}.storage-skeleton-message{text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:var(--space-4) 0;opacity:.7}.file-preview{background:var(--color-bg-base);height:100%;color:var(--color-text-primary);flex-direction:column;display:flex}.file-preview-header{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border-subtle);display:flex}.file-preview-filename{font-weight:500;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.file-preview-back-btn,.file-preview-download-btn{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-xs);transition:background var(--transition-fast)}.file-preview-back-btn{border-color:var(--color-border-default)}.file-preview-back-btn:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-strong)}.file-preview-download-btn{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.file-preview-download-btn:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.file-preview-loading{padding:var(--space-8);color:var(--color-text-secondary);justify-content:center;align-items:center;display:flex}.file-preview-error{padding:var(--space-8);color:var(--color-error);justify-content:center;align-items:center;display:flex}.file-preview-text{font-family:var(--font-mono);font-size:var(--text-sm);flex:1;display:flex;overflow:auto}.file-preview-line-numbers{padding:var(--space-2);text-align:right;color:var(--color-text-muted);user-select:none;border-right:1px solid var(--color-border-subtle);min-width:3rem}.file-preview-line-number{line-height:1.5}.file-preview-code{padding:var(--space-2);white-space:pre;flex:1;margin:0;line-height:1.5;overflow-x:auto}.file-preview-image-container{padding:var(--space-4);flex:1;justify-content:center;align-items:center;display:flex;overflow:auto}.file-preview-img{object-fit:contain;max-width:100%;max-height:100%}.file-preview-binary-info{justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);flex-direction:column;flex:1;display:flex}.file-preview-binary-size{font-family:var(--font-mono);font-size:var(--text-sm)}.session-limit-popup{z-index:100;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-4);animation:.15s ease-out slp-slide-in;position:fixed}@keyframes slp-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.slp-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.slp-warning-icon{color:var(--color-warning);flex-shrink:0}.slp-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-text-primary)}.slp-body{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-normal);margin:0 0 var(--space-3) 0}.slp-count{font-weight:var(--font-bold);color:var(--color-warning)}.slp-progress-track{background:var(--color-bg-muted);border-radius:var(--radius-full);height:4px;margin-bottom:var(--space-4);overflow:hidden}.slp-progress-fill{background:var(--color-warning);border-radius:var(--radius-full);height:100%;transition:width var(--transition-base)}.slp-dismiss-btn{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:background var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:flex}.slp-dismiss-btn:hover{background:var(--color-bg-muted)}.slp-backdrop{display:none}.dashboard-new-session-btn--limited{color:var(--color-warning);border-color:#f59e0b4d}.dashboard-new-session-btn--limited:hover{background:var(--color-warning-muted);border-color:#f59e0b66}@media (width<=640px){.session-limit-popup{border-radius:var(--radius-xl) var(--radius-xl) 0 0;z-index:210;max-height:70vh;animation:.2s ease-out slp-slide-up;overflow-y:auto;width:100%!important;max-width:100%!important;position:fixed!important;inset:auto 0 0!important}@keyframes slp-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.slp-backdrop{z-index:209;background:#0006;display:block;position:fixed;inset:0}}.kitt-scanner{z-index:10;pointer-events:none;background:0 0;width:100%;height:1px;position:absolute;top:0;left:0;overflow:visible;mask-image:linear-gradient(90deg,#0000,#000 7px calc(100% - 7px),#0000)}.kitt-beam{background:#ef4444;width:15%;height:100%;animation:2.4s cubic-bezier(.4,0,.6,1) infinite alternate kitt-sweep;position:absolute;top:0;left:0;box-shadow:0 0 6px #ef444499,0 0 16px #ef44444d}@keyframes kitt-sweep{0%{left:0%}to{left:85%}}@media (prefers-reduced-motion:reduce){.kitt-beam{opacity:.6;animation:none;left:42.5%}}.tips-card,.welcome-card{cursor:pointer;user-select:none}.dashboard-card__content{flex-direction:column;gap:4px;display:flex}.dashboard-card__text{text-transform:uppercase;letter-spacing:.02em;color:var(--color-text-muted,#6b7280);font-size:11px;line-height:1.4;font-family:var(--font-mono);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.dashboard-card__text--static{text-transform:uppercase;letter-spacing:.02em;color:var(--color-text-secondary);font-size:11px;line-height:1.4;font-family:var(--font-mono);-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.dashboard-container{padding:var(--dashboard-panel-margin);box-sizing:border-box;width:100%;height:100%;animation:dashboard-fade-in var(--dashboard-fade-duration) ease-out;justify-content:center;align-items:center;display:flex}@keyframes dashboard-fade-in{0%{opacity:0}to{opacity:1}}.dashboard-panel-wrapper{width:100%;max-width:var(--dashboard-max-width);z-index:2;flex-direction:column;min-height:min(520px,100%);max-height:100%;display:flex;position:relative}.dashboard-panel{background:var(--glass-bg);width:100%;min-height:0;backdrop-filter:var(--glass-blur);border:1px solid var(--color-border-subtle);border-radius:8px;flex-direction:column;flex:1;display:flex;overflow:hidden;box-shadow:0 8px 32px #0006,0 2px 8px #0000004d}.dashboard-panel--expanded{max-width:100vw;height:100vh;box-shadow:none;border:none;border-radius:0}.dashboard-panel-header{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:1px solid var(--glass-border);align-items:center;gap:var(--space-4);background:0 0;flex-shrink:0;display:flex}.dashboard-panel-header .header-spacer{flex:1}.dashboard-panel-body{flex:1;min-height:0;display:flex;overflow:hidden}.dashboard-panel-left{width:var(--dashboard-left-width);padding:var(--space-4);gap:var(--space-4);border-right:1px solid var(--glass-border);background:#1f1f22e6;border-radius:0;flex-direction:column;display:flex;overflow:hidden auto}.dashboard-panel-right{background:#050508e6;flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.dashboard-new-session-wrapper{position:relative}.dashboard-new-session-btn{width:100%;padding:var(--space-3);background:var(--color-accent);color:var(--color-text-primary);border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;border:none;font-weight:500;transition:background .15s}.dashboard-new-session-btn:hover{background:var(--color-accent-hover)}.dashboard-section-divider{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;display:flex}.dashboard-section-divider:after{content:"";background:var(--color-border-subtle);flex:1;height:1px}.dashboard-sessions-section{gap:var(--space-3);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.dashboard-session-list{gap:var(--space-2);flex-direction:column;flex:1;display:flex;overflow:hidden auto}.dashboard-stats-section{gap:var(--space-3);flex-direction:column;margin-top:auto;display:flex}@media (width<=599px){.dashboard-container{padding:var(--space-3)}.dashboard-panel{min-height:auto}.dashboard-panel-body{flex-direction:column;overflow-y:auto}.dashboard-panel-left{border-right:none;border-bottom:1px solid var(--glass-border);flex-shrink:0;width:100%}.dashboard-panel-right{width:100%;min-height:300px;max-height:50vh;overflow:hidden}}.settings-backdrop{opacity:0;pointer-events:none;transition:opacity var(--transition-base);z-index:99;background:#00000080;position:fixed;inset:0}.settings-backdrop.open{opacity:1;pointer-events:auto}.settings-panel{background:var(--color-bg-surface);border-left:1px solid var(--color-border-subtle);width:400px;transition:transform var(--transition-slow);z-index:100;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;transform:translate(100%)}.settings-panel.open{transform:translate(0)}.settings-header{padding:var(--space-4);border-bottom:1px solid var(--color-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.settings-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0}.settings-close-button{border-radius:var(--radius-md);width:32px;height:32px;color:var(--color-text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.settings-close-button:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.settings-content{padding:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));flex:1;overflow-y:auto}.settings-group{margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border-subtle)}.settings-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.settings-group-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em;margin:0}.settings-section{margin-bottom:var(--space-3)}.settings-section:last-child{margin-bottom:0}.settings-section+.settings-section{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-3)}.settings-group-heading{margin:0}.accordion-header{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) 0;color:var(--color-text-primary);font:inherit;text-align:left;cursor:pointer;transition:opacity var(--transition-fast);background:0 0;border:none;display:flex}.accordion-header:hover{opacity:.8}.accordion-header:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.accordion-chevron{width:24px;height:24px;transition:transform var(--transition-slow);color:var(--color-text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex;transform:rotate(-90deg)}.accordion-chevron--open{transform:rotate(0)}.accordion-header-text{flex-direction:column;min-width:0;display:flex}.accordion-subtitle{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:2px;font-weight:400}.accordion-body{transition:grid-template-rows var(--transition-slow);grid-template-rows:0fr;display:grid}.accordion-body--open{grid-template-rows:1fr}.accordion-body-inner{visibility:hidden;min-height:0;transition:visibility 0s var(--transition-slow);overflow:hidden}.accordion-body--open .accordion-body-inner{visibility:visible;transition:visibility}.accordion-body-inner>:first-child{margin-top:var(--space-1)}.llm-keys-explanation{margin:0 0 var(--space-2) 0;font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.5}.llm-keys-links{margin:0 0 var(--space-4) 0;font-size:var(--text-xs);color:var(--color-text-muted)}.llm-keys-links a{color:var(--color-accent);transition:opacity var(--transition-fast);text-decoration:none}.llm-keys-links a:hover{text-decoration:underline}.settings-error{padding:var(--space-2) 0;font-size:var(--text-xs);color:var(--color-error)}.settings-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.settings-hint--primary{font-size:var(--text-sm);color:var(--color-text-secondary)}.settings-section-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);color:var(--color-text-muted);display:flex}.settings-section-title{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;margin:0}.setting-row{padding:var(--space-1) 0;justify-content:space-between;align-items:center;display:flex}.settings-select{color:#fafafa;cursor:pointer;background:#18181bcc;border:1px solid #ffffff1a;border-radius:6px;padding:.35rem .6rem;font-family:JetBrains Mono,Fira Code,monospace;font-size:.8rem}.settings-select:disabled{opacity:.5;cursor:not-allowed}.setting-row--clickable{cursor:pointer;border-radius:var(--radius-md);margin:0 calc(-1 * var(--space-2));padding:var(--space-1) var(--space-2);transition:background var(--transition-fast)}.setting-row--clickable:active{background:var(--color-bg-muted)}.setting-row--column{flex-direction:column;align-items:stretch}.setting-row--column-gap{flex-direction:column;align-items:stretch;gap:8px}.setting-row--split{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;padding:0;display:flex}.settings-recreate-docs-action{flex-shrink:0}.setting-row--centered{justify-content:center}.setting-row--user{justify-content:space-between;align-items:center;display:flex}.setting-row__user-info{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.setting-row__user-email{font-size:var(--text-sm);color:var(--color-text-primary)}.setting-row__added-by{font-size:var(--text-xs)}.setting-row label{font-size:var(--text-sm);color:var(--color-text-secondary)}.setting-row select{padding:var(--space-1) var(--space-3);padding-right:var(--space-6);background:var(--color-bg-base);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--text-sm);cursor:pointer;appearance:none;min-width:120px;transition:border-color var(--transition-fast), background var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%23a1a1aa' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;font-family:inherit}.setting-row select:hover{border-color:var(--color-border-default);background-color:var(--color-bg-elevated)}.setting-row select:focus{border-color:var(--color-accent);box-shadow:var(--glow-accent);outline:none}.settings-role-badge{font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-sm);white-space:nowrap;align-items:center;padding:1px 6px;line-height:1.4;display:inline-flex}.settings-role-badge--admin{background:hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .15);color:hsl(var(--accent-hue), var(--accent-s), 69%);border:1px solid hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .3)}.settings-role-badge--user{color:var(--color-text-muted);background:#a1a1aa1a;border:1px solid #a1a1aa33}.settings-content::-webkit-scrollbar{width:6px}.settings-content::-webkit-scrollbar-track{background:0 0}.settings-content::-webkit-scrollbar-thumb{background:var(--color-border-subtle);border-radius:var(--radius-full)}.settings-content::-webkit-scrollbar-thumb:hover{background:var(--color-border-default)}.accent-color-row{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.accent-color-row .button{flex-shrink:0;margin-left:auto}.accent-color-swatch{border-radius:var(--radius-sm);border:1px solid var(--color-border-default);flex-shrink:0;width:24px;height:24px;display:inline-block}.accent-color-input{padding:var(--space-1) var(--space-2);background:var(--color-bg-base);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--text-sm);font-family:var(--font-mono);width:100px;transition:border-color var(--transition-fast)}.accent-color-input:hover{border-color:var(--color-border-default)}.accent-color-input:focus{border-color:var(--color-accent);box-shadow:var(--glow-accent);outline:none}.accent-color-input::placeholder{color:var(--color-text-dimmed)}.accent-color-link{font-size:var(--text-xs);color:var(--color-text-muted);text-decoration:underline;text-decoration-color:var(--color-border-default);text-underline-offset:2px;transition:color var(--transition-fast);display:inline-block}.accent-color-link:hover{color:var(--color-accent);text-decoration:underline}.session-mode-control{border-radius:var(--radius-md);border:1px solid var(--color-border-subtle);margin-bottom:var(--space-2);display:flex;overflow:hidden}.session-mode-option{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-secondary);background:var(--color-bg-base);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);user-select:none;flex:1;justify-content:center;align-items:center;display:flex}.session-mode-option input[type=radio]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.session-mode-option+.session-mode-option{border-left:1px solid var(--color-border-subtle)}.session-mode-option--selected{background:var(--color-accent);color:var(--color-text-primary)}.session-mode-option:not(.session-mode-option--selected):hover{background:var(--color-bg-muted)}.session-mode-option--disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.llm-key-input{width:100%;padding:var(--space-2) var(--space-3);background:var(--color-bg-base);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--text-sm);font-family:var(--font-mono);transition:border-color var(--transition-fast)}.llm-key-input:hover{border-color:var(--color-border-default)}.llm-key-input:focus{border-color:var(--color-accent);box-shadow:var(--glow-accent);outline:none}.llm-key-input::placeholder{color:var(--color-text-dimmed)}.provider-row{padding:var(--space-1) 0}.provider-row-connect-btn{border-radius:var(--radius-xl);color:#fff;width:100%;min-height:52px;font-size:var(--text-base);font-weight:var(--font-semibold);font-family:var(--font-sans);cursor:pointer;transition:filter var(--transition-fast);letter-spacing:-.01em;border:none;justify-content:center;align-items:center;gap:10px;padding:14px 24px;display:flex}.provider-row-connect-btn:hover{filter:brightness(1.15)}.provider-row-connect-btn:active{transform:scale(.98)}.provider-row-connect-btn:disabled{opacity:.6;cursor:not-allowed;filter:none}.provider-row-connected{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;min-height:48px;display:flex}.provider-row-icon{flex-shrink:0;align-items:center;display:flex}.provider-row-name{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-text-primary);flex:1}.provider-row-badge{font-size:var(--text-xs);border-radius:var(--radius-full);background:var(--color-success-bg);color:var(--color-success);font-weight:var(--font-medium);border:1px solid #22c55e4d;padding:3px 10px}.provider-row-disconnect{color:var(--color-text-muted);font-size:var(--text-sm);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);transition:color var(--transition-fast);background:0 0;border:none}.provider-row-disconnect:hover{color:var(--color-error)}.provider-row-disconnect:disabled{opacity:.5;cursor:not-allowed}.provider-row-expand{gap:var(--space-3);padding:var(--space-2) 0;flex-direction:column;animation:.15s ease-out fadeIn;display:flex}.provider-row-external-btn{border-radius:var(--radius-xl);color:#fff;width:100%;min-height:48px;font-size:var(--text-sm);font-weight:var(--font-semibold);font-family:var(--font-sans);cursor:pointer;transition:filter var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;padding:12px 20px;text-decoration:none;display:flex}.provider-row-external-btn:hover{filter:brightness(1.15);color:#fff}.provider-row-input-group{gap:var(--space-2);display:flex}.provider-row-token-input{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);min-height:44px;color:var(--color-text-primary);font-size:16px;font-family:var(--font-mono);transition:border-color var(--transition-fast);flex:1;padding:10px 14px}.provider-row-token-input:focus{border-color:var(--color-border-strong);outline:none}.provider-row-token-input::placeholder{color:var(--color-text-dimmed)}.provider-row-save-btn{background:var(--color-accent);border-radius:var(--radius-lg);color:#fff;min-height:44px;font-size:var(--text-sm);font-weight:var(--font-semibold);font-family:var(--font-sans);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast);border:none;padding:10px 20px}.provider-row-save-btn:hover:not(:disabled){background:var(--color-accent-hover)}.provider-row-save-btn:disabled{opacity:.4;cursor:not-allowed}.provider-row-expand-footer{align-items:center;gap:var(--space-3);display:flex}.provider-row-error{color:var(--color-error);font-size:var(--text-xs);flex:1;align-items:center;gap:4px;display:flex}.provider-row-message{color:var(--color-success);font-size:var(--text-xs)}.provider-row-cancel{color:var(--color-text-muted);font-size:var(--text-xs);cursor:pointer;padding:var(--space-1) var(--space-2);background:0 0;border:none;margin-left:auto}.provider-row-cancel:hover{color:var(--color-text-secondary)}.provider-row-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.provider-steps{margin:0 0 var(--space-3) 0;padding-left:var(--space-6);color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.8}.provider-steps li{padding-left:var(--space-1)}.provider-steps li::marker{color:var(--color-text-dimmed);font-weight:var(--font-semibold)}.provider-row-reopen-link{font-size:var(--text-xs);color:var(--color-text-dimmed);text-decoration:underline}.provider-row-reopen-link:hover{color:var(--color-text-muted)}@media (width<=640px){.settings-panel{width:100vw}.settings-close-button{width:44px;height:44px}.accordion-header{min-height:40px;padding:var(--space-2) 0}.setting-row select{width:100%;min-width:auto}}@media (prefers-reduced-motion:reduce){.settings-panel,.settings-backdrop,.accordion-body,.accordion-chevron,.accordion-body-inner{transition:none}}.settings-admin-actions{gap:var(--space-2,.5rem);flex-direction:column;width:100%;display:flex}.settings-admin-actions .button{width:100%}.storage-panel-backdrop{opacity:0;pointer-events:none;transition:opacity var(--transition-base);z-index:94;background:#00000080;position:fixed;inset:0}.storage-panel-backdrop.open{opacity:1;pointer-events:auto}.storage-panel{background:var(--color-bg-surface);border-left:1px solid var(--color-border-subtle);width:400px;transition:transform var(--transition-slow);z-index:95;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;transform:translate(100%)}.storage-panel.open{transform:translate(0)}.storage-panel-header{padding:var(--space-4);border-bottom:1px solid var(--color-border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.storage-panel-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary);margin:0}.storage-panel-close-button{border-radius:var(--radius-md);width:32px;height:32px;color:var(--color-text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.storage-panel-close-button:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.storage-panel-content{flex-direction:column;flex:1;display:flex;overflow-y:auto}.storage-panel-content .storage-browser{flex:1;min-height:0}.storage-panel-content .file-preview{border-top:1px solid var(--color-border-subtle)}.storage-panel-content::-webkit-scrollbar{width:6px}.storage-panel-content::-webkit-scrollbar-track{background:0 0}.storage-panel-content::-webkit-scrollbar-thumb{background:var(--color-border-subtle);border-radius:var(--radius-full)}.storage-panel-content::-webkit-scrollbar-thumb:hover{background:var(--color-border-default)}@media (width<=640px){.storage-panel{border-left:none;border-top:1px solid var(--color-border-subtle);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100vw;max-height:70vh;top:auto;bottom:0;transform:translateY(100%)}.storage-panel.open{transform:translateY(0)}.storage-panel-close-button{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.storage-panel,.storage-panel-backdrop{transition:none}}.splash-cursor-container{z-index:1;pointer-events:none;transition:opacity .3s ease-out;position:absolute;inset:0;overflow:hidden}.splash-cursor-canvas{width:100%;height:100%}@media (prefers-reduced-motion:reduce){.splash-cursor-container{display:none}}html,body{overscroll-behavior:none;overflow-anchor:none;overflow:hidden}.layout{background:var(--color-bg-gradient);flex-direction:column;width:100%;height:100%;display:flex;position:fixed;inset:0;overflow:hidden}.layout-middle{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.layout-main{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.layout-error{padding:var(--space-3) var(--space-4);background:var(--color-error-muted);border-bottom:1px solid var(--color-error);color:var(--color-error);justify-content:space-between;align-items:center;display:flex}.layout-error button{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-sm);transition:background var(--transition-fast);background:#ef444433}.layout-error button:hover{background:#ef44444d}.layout-auth-banner{padding:var(--space-3) var(--space-4);color:#f59e0b;font-size:var(--text-sm);z-index:100;background:#f59e0b26;border-bottom:1px solid #f59e0b80;justify-content:space-between;align-items:center;display:flex}.layout-auth-banner button{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);border-radius:var(--radius-sm);color:#f59e0b;transition:background var(--transition-fast);background:#f59e0b40}.layout-auth-banner button:hover{background:#f59e0b66}.layout-terminal-container{flex:1;height:100%;min-height:0;position:relative;overflow:hidden}.layout-tiling-button-wrapper{top:var(--space-2);right:var(--space-2);z-index:20;position:absolute}.welcome-step{flex-direction:column;align-items:stretch;gap:20px;display:flex}.welcome-title{color:var(--color-text-primary);text-align:left;letter-spacing:-.01em;margin:0;font-size:clamp(24px,2.6vw,32px);font-weight:600}.welcome-description{color:var(--color-text-secondary);text-align:left;margin:0;font-size:16px;line-height:1.6}.token-detect-section{flex-direction:column;align-items:stretch;gap:16px;width:100%;display:flex}.token-status{border-radius:var(--radius-lg);border:1px solid var(--glass-border);align-items:flex-start;gap:12px;width:100%;padding:16px;display:flex;box-shadow:inset 0 1px #ffffff08}.token-status--detecting{color:var(--color-text-secondary);background:#1f1f22cc}.token-status--success{background:#16653433;border:1px solid #22c55e26}.token-status--error{background:#7f1d1d33;border:1px solid #ef444426}.token-status-icon{flex-shrink:0;align-items:center;display:flex}.token-status--detecting .token-status-icon{color:var(--color-accent)}.token-status--success .token-status-icon{color:var(--color-success)}.token-status--error .token-status-icon{color:var(--color-error)}.token-status-icon--spin{animation:1s linear infinite spin}.token-status-text{flex-direction:column;gap:4px;display:flex}.token-status-text strong{color:var(--color-text-primary);font-size:15px}.token-status-text span{color:var(--color-text-secondary);font-size:13px}.token-status-text code{background:var(--color-bg-primary);color:var(--color-accent);border-radius:4px;padding:2px 6px;font-size:12px}.token-error-help{border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:#09090b47;width:100%;padding:12px 16px}.token-error-help p{color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.6}.token-error-help code{background:var(--color-bg-primary);color:var(--color-accent);border-radius:4px;padding:2px 6px;font-size:12px}.welcome-step .button{align-self:flex-start}@media (width<=640px){.welcome-title{font-size:22px}.welcome-description{font-size:14px}.token-status{padding:12px}}.input-container{flex-direction:column;gap:4px;width:100%;display:flex}.input-wrapper{align-items:center;width:100%;display:flex;position:relative}.input{width:100%;font-family:var(--font-sans);color:var(--color-text-primary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);transition:all var(--transition-fast);border-radius:6px;outline:none;padding:10px 12px;font-size:14px}.input-wrapper[data-has-icon=true] .input{padding-left:40px}.input::placeholder{color:var(--color-text-muted)}.input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px hsla(var(--accent-hue), var(--accent-s), 53%, .1)}.input:disabled{opacity:.5;cursor:not-allowed}.input-wrapper[data-error=true] .input{border-color:var(--color-error)}.input-wrapper[data-error=true] .input:focus{border-color:var(--color-error);box-shadow:0 0 0 3px #ef44441a}.input-icon{color:var(--color-text-muted);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;left:12px}.input:focus~.input-icon,.input-wrapper:has(.input:focus) .input-icon{color:var(--color-accent)}.input-error{color:var(--color-error);font-size:12px}.input-hint{color:var(--color-text-muted);font-size:12px}.configure-step{flex-direction:column;gap:18px;display:flex}.configure-title{color:var(--color-text-primary);text-align:left;letter-spacing:-.01em;margin:0;font-size:clamp(24px,2.6vw,32px);font-weight:600}.setup-field{border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:#09090b52;flex-direction:column;gap:10px;padding:16px;display:flex;box-shadow:inset 0 1px #ffffff08}.setup-field-label{color:var(--color-text-primary);font-size:14px;font-weight:600}.setup-field-description{color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.4}.email-input-row{align-items:flex-start;gap:10px;display:flex}.email-input-row .input-container{flex:1}.email-input-row .button[data-size=sm]{min-width:74px;min-height:38px;font-size:var(--text-sm)}.email-tags{flex-wrap:wrap;gap:8px;min-height:12px;display:flex}.email-tag{border:1px solid var(--color-border-subtle);color:var(--color-text-primary);background:#18181bd1;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:inline-flex}.email-tag--admin{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 10%, #1f1f22cc)}.email-tag-remove{background:var(--color-bg-primary);width:18px;height:18px;color:var(--color-text-secondary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;transition:all .2s;display:flex}.email-tag-remove:hover{background:var(--color-error);color:#fff}.setup-actions{border-top:1px solid var(--glass-border);justify-content:space-between;gap:12px;margin-top:8px;padding-top:14px;display:flex}@media (width<=640px){.configure-step{gap:14px}.configure-title{font-size:26px}.setup-field{padding:14px}.email-input-row{flex-direction:column;align-items:stretch}.email-input-row .button[data-size=sm]{width:100%}}.progress-step{flex-direction:column;gap:18px;display:flex}.progress-title{color:var(--color-text-primary);text-align:left;letter-spacing:-.01em;justify-content:flex-start;align-items:center;gap:8px;margin:0;font-size:clamp(24px,2.6vw,32px);font-weight:600;display:flex}.title-icon{flex-shrink:0}.title-icon--spin{color:var(--color-accent);animation:2s linear infinite spin}.title-icon--error{color:var(--color-error)}.title-icon--success{color:var(--color-success)}.progress-steps{flex-direction:column;gap:12px;display:flex}.progress-step-item{border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:#09090b52;align-items:center;gap:12px;padding:12px 16px;transition:all .3s;display:flex}.progress-step-item.running{background:hsla(var(--accent-hue), var(--accent-s), 53%, .08);border-color:hsla(var(--accent-hue), var(--accent-s), 53%, .25)}.progress-step-item.success{background:#16653429;border-color:#22c55e33}.progress-step-item.error{background:#7f1d1d29;border-color:#ef444440}.step-icon{justify-content:center;align-items:center;width:24px;height:24px;display:flex}.step-icon--spin{animation:1s linear infinite spin}.progress-step-item.success .step-icon{color:var(--color-success)}.progress-step-item.error .step-icon{color:var(--color-error)}.progress-step-item.running .step-icon{color:var(--color-accent)}.progress-step-item.pending .step-icon{color:var(--color-text-tertiary)}.step-label{color:var(--color-text-primary);flex:1;font-size:14px}.step-error{color:var(--color-error);font-size:12px}.progress-bar-container{border:1px solid var(--glass-border);background:#09090b59;border-radius:4px;height:8px;overflow:hidden}.progress-bar{background:var(--color-accent);height:100%;transition:width .5s}.error-message{color:var(--color-error);background:#7f1d1d33;border:1px solid #ef444426;border-radius:8px;padding:12px 16px;font-size:14px}.progress-actions{justify-content:space-between;gap:12px;display:flex}.success-section{flex-direction:column;gap:20px;display:flex}.success-message{color:var(--color-text-secondary);text-align:left;margin:0;font-size:16px}.url-item{border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:#09090b52;gap:12px;padding:16px;display:flex}.url-icon{color:var(--color-text-secondary);align-items:center;display:flex}.url-content{flex-direction:column;gap:4px;display:flex}.url-label{color:var(--color-text-secondary);font-size:13px}.url-value{color:var(--color-accent);word-break:break-all;font-size:14px;text-decoration:none}.url-value:hover{text-decoration:underline}.url-note{color:var(--color-success);font-size:12px}.access-note{background:hsla(var(--accent-hue), var(--accent-s), 53%, .08);border-radius:var(--radius-lg);border:1px solid hsla(var(--accent-hue), var(--accent-s), 53%, .2);color:var(--color-text-secondary);align-items:flex-start;gap:8px;padding:12px;font-size:13px;display:flex}.access-note .note-icon{color:var(--color-accent);flex-shrink:0}.launch-note{color:var(--color-text-secondary);text-align:left;justify-content:flex-start;align-items:center;gap:4px;margin:0;font-size:13px;display:flex}.note-icon{flex-shrink:0}@media (width<=640px){.progress-title{font-size:22px}.progress-step-item{padding:10px 12px}.url-item{padding:12px}.access-note{padding:10px}}.setup-wizard{padding:var(--dashboard-panel-margin);background:var(--color-bg-gradient);flex-direction:column;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}.setup-container{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);width:100%;max-width:760px;backdrop-filter:var(--glass-blur);z-index:2;flex-direction:column;margin-block:auto;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #0006,0 2px 8px #0000004d}.setup-header{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--glass-border);background:#1f1f22e6;flex-shrink:0;display:flex}.setup-logo-icon{color:var(--color-accent);flex-shrink:0;display:block}.setup-logo-icon--error{color:var(--color-error)}.setup-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);letter-spacing:.01em;margin:0}.setup-header-status{font-size:var(--text-xs);color:var(--color-text-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-full);white-space:nowrap;background:#27272abf;align-items:center;gap:6px;margin-left:auto;padding:3px 10px;display:inline-flex}.setup-header-status--error{color:#fca5a5;border-color:var(--color-error-border);background:var(--color-error-bg)}.setup-header-status-icon--spin{animation:1s linear infinite spin}.setup-progress{background:#ffffff0f;border-radius:0;height:3px}.setup-progress .progress-bar-fill{height:100%;box-shadow:0 0 12px hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .5)}.setup-content{padding:var(--space-8);background:#1f1f22a8;flex:1;overflow-y:auto}.denied-message{font-size:var(--text-base);color:var(--color-text-secondary);text-align:center;line-height:var(--leading-normal);margin:0 0 24px}.denied-button{min-width:180px;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-primary);background:var(--color-accent);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);border:none;justify-content:center;align-items:center;margin-left:auto;padding:10px 16px;display:inline-flex}.denied-button:hover{background:var(--color-accent-hover)}@media (width<=900px){.setup-wizard{padding:var(--space-4)}}@media (width<=640px){.setup-wizard{padding:var(--space-3)}.setup-container{width:min(760px,100vw - 24px);min-height:auto;margin-block:0;overflow-y:auto}.setup-header{padding:var(--space-3);z-index:3;position:sticky;top:0}.setup-title{font-size:var(--text-lg)}.setup-content{padding:var(--space-4);flex:none}.setup-header-status{display:none}}.app-loading{height:100vh;color:var(--color-text-secondary);background:var(--color-bg-primary);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.app-loading-spinner{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin}.app-auth-error{text-align:center;background:var(--color-bg-primary);flex-direction:column;justify-content:center;align-items:center;gap:16px;height:100vh;padding:32px;display:flex}.app-auth-error h1{color:var(--color-error);margin:0;font-size:24px}.app-auth-error p{color:var(--color-text-secondary);margin:0}.app-auth-error button{color:var(--color-bg-primary);background:var(--color-accent);transition:background var(--transition-fast);cursor:pointer;border-radius:6px;padding:12px 24px;font-size:14px;font-weight:500}.app-auth-error button:hover{background:var(--color-accent-hover)}:root{--color-bg-base:#09090b;--color-bg-surface:#18181b;--color-bg-tertiary:#1f1f23;--color-bg-elevated:#27272a;--color-bg-muted:#3f3f46;--color-border-subtle:#27272a;--color-border-default:#3f3f46;--color-border-strong:#52525b;--color-text-primary:#fafafa;--color-text-secondary:#a1a1aa;--color-text-muted:#71717a;--color-text-dimmed:#52525b;--accent-hue:217;--accent-s:91%;--accent-l:60%;--color-accent:hsl(var(--accent-hue), var(--accent-s), var(--accent-l));--color-accent-hover:hsl(var(--accent-hue), var(--accent-s), 53%);--color-accent-muted:hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .15);--color-success:#22c55e;--color-success-muted:#22c55e26;--color-success-bg:#22c55e1a;--color-warning:#f59e0b;--color-warning-muted:#f59e0b26;--color-error:#ef4444;--color-error-hover:#dc2626;--color-error-muted:#ef444426;--color-error-bg:#ef44441a;--color-error-border:#ef44444d;--color-info:#3b82f6;--color-terminal-bg:#0a0a0c;--color-glow-accent:hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .4);--color-bg-overlay:#18181bcc;--color-bg-elevated-hover:#27272ae6;--color-bg-gradient:linear-gradient(135deg, hsl(var(--accent-hue), 20%, 4%) 0%, hsl(var(--accent-hue), 40%, 9%) 35%, hsl(var(--accent-hue), 44%, 13%) 65%, hsl(var(--accent-hue), 38%, 8%) 100%);--color-glass-border:#ffffff14;--color-terminal-theme-bg:hsl(var(--accent-hue), 27%, 14%);--color-terminal-theme-black:hsl(var(--accent-hue), 27%, 14%);--color-terminal-theme-bright-black:hsl(var(--accent-hue), 15%, 47%);--color-tab-claude:hsl(var(--accent-hue), var(--accent-s), var(--accent-l));--color-tab-htop:#22c55e;--color-tab-yazi:#3b82f6;--color-tab-terminal:#f59e0b;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "SF Mono", monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.875rem;--text-lg:1rem;--text-xl:1.125rem;--leading-tight:1.25;--leading-normal:1.5;--font-medium:500;--font-semibold:600;--font-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--shadow-lg:0 4px 16px #00000080;--glow-accent:0 0 0 2px var(--color-glow-accent);--transition-fast:.1s ease-out;--transition-base:.15s ease-out;--transition-slow:.25s ease-out;--transition-slower:.35s ease-out;--header-height:48px;--tab-bar-height:36px;--dashboard-max-width:960px;--dashboard-hero-padding-top:var(--space-10);--dashboard-hero-padding-bottom:var(--space-6);--dashboard-section-gap:var(--space-6);--glass-bg:#18181be6;--glass-blur:blur(16px);--glass-border:#ffffff14;--glass-border-hover:#ffffff1f;--dashboard-fade-duration:.2s;--dashboard-left-width:280px;--dashboard-panel-margin:48px;--dashboard-expand-duration:.3s;--dashboard-expand-easing:cubic-bezier(.4, 0, .2, 1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes scaleIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.animate-fadeInUp{animation:.2s ease-out fadeInUp}.animate-spin{animation:1s linear infinite spin}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-float{animation:3s ease-in-out infinite float}.animate-shake{animation:.5s ease-in-out shake}.animate-bounce{animation:.5s ease-out bounce}.animate-scaleIn{animation:.2s cubic-bezier(.34,1.56,.64,1) scaleIn}.settings-rotate:hover{transition:transform var(--transition-slow);transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.animate-spin,.animate-pulse,.animate-float{animation:none!important}}:focus-visible{box-shadow:var(--glow-accent);outline:none}:focus:not(:focus-visible){box-shadow:none;outline:none}.toggle{background:var(--color-bg-muted);border-radius:var(--radius-full);cursor:pointer;width:44px;height:24px;transition:background var(--transition-fast);border:none;padding:0;position:relative}.toggle:hover{background:var(--color-border-strong)}.toggle.toggle-on{background:var(--color-accent)}.toggle.toggle-on:hover{background:var(--color-accent-hover)}.toggle:focus{box-shadow:var(--glow-accent);outline:none}.toggle-thumb{background:var(--color-text-primary);border-radius:var(--radius-full);width:20px;height:20px;transition:transform var(--transition-fast);position:absolute;top:2px;left:2px}.toggle.toggle-on .toggle-thumb{transform:translate(20px)}.progress-bar{background:var(--color-bg-tertiary);border-radius:2px;height:4px;overflow:hidden}.progress-bar-fill{background:var(--color-accent);border-radius:2px;height:100%;transition:width .3s}.progress-bar-animated .progress-bar-fill{background:linear-gradient(90deg, var(--color-accent) 0%, hsl(var(--accent-hue), var(--accent-s), 69%) 50%, var(--color-accent) 100%);background-size:200% 100%;animation:1.5s ease-in-out infinite progressShimmer}@keyframes progressShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.progress-bar-thin{height:2px}@media (prefers-reduced-motion:reduce){.progress-bar-animated .progress-bar-fill{animation:none}}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-surface)}::-webkit-scrollbar-thumb{background:var(--color-border-default);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}*{scrollbar-width:thin;scrollbar-color:var(--color-border-default) var(--color-bg-surface)}button{font-family:inherit;font-size:inherit;cursor:pointer;color:inherit;background:0 0;border:none}button:disabled{opacity:.5;cursor:not-allowed}input{font-family:inherit;font-size:inherit;color:inherit;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none}input:focus{border-color:var(--color-accent);box-shadow:var(--glow-accent)}input::placeholder{color:var(--color-text-muted)}textarea:not(.xterm-helper-textarea){font-family:inherit;font-size:inherit;color:inherit;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);resize:vertical;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none}textarea:not(.xterm-helper-textarea):focus{border-color:var(--color-accent);box-shadow:var(--glow-accent)}select{font-family:inherit;font-size:inherit;color:inherit;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none}select:focus{border-color:var(--color-accent);box-shadow:var(--glow-accent)}a{color:var(--color-accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-accent-hover)}::selection{background-color:var(--color-accent-muted);color:var(--color-text-primary)}::selection{background-color:var(--color-accent-muted);color:var(--color-text-primary)}
