.stat-cards{width:100%}.stat-card{display:flex;flex-direction:column;gap:var(--space-2, 8px);padding:12px;background:linear-gradient(135deg,var(--color-bg-elevated) 0%,#18181b 100%);border:1px solid var(--color-glass-border, rgba(255, 255, 255, .06));border-radius:8px;transition:all .15s ease}.stat-card:hover{background:var(--color-bg-muted);border-color:var(--color-border-default)}.stat-card__header{display:flex;align-items:center;gap:var(--space-2, 8px);min-width:0;min-height:24px}.stat-card__icon{color:var(--color-accent, #8b5cf6);display:flex;align-items:center}.stat-card__title{font-size:var(--text-xs, .75rem);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted, #6b7280)}.stat-card__metrics{display:flex;flex-direction:column;gap:var(--space-1, 4px)}.stat-card__metric{display:flex;align-items:center;justify-content:space-between}.stat-card__metric-label{display:flex;align-items:center;gap:4px;font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.02em;line-height:1.4;color:var(--color-text-muted, #6b7280)}.stat-card__metric-label svg{flex-shrink:0;vertical-align:middle}.stat-card__metric-value{font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.02em;line-height:1.4;color:var(--color-text-secondary);background:var(--color-bg-surface);padding:2px 6px;border-radius:var(--radius-sm, 4px)}.stat-card--skeleton .stat-card__skeleton-icon,.stat-card--skeleton .stat-card__skeleton-value,.stat-card--skeleton .stat-card__skeleton-label{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14,#ffffff0a 75%);background-size:200% 100%;animation:stat-shimmer 1.5s infinite;border-radius:var(--radius-sm, 4px)}.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{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-stat-card__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.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:dot-pulse 2s ease-in-out infinite}.session-stat-card__menu-trigger{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);opacity:.4;flex-shrink:0}.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__progress{margin-top:4px}@media(max-width:640px){.session-stat-card__menu-trigger{opacity:1;width:36px;height:36px}}.session-context-menu{position:fixed;z-index:100;min-width:160px;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);animation:fadeInUp .15s ease-out}.session-context-menu__item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:8px 12px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-primary);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast)}.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{position:fixed;inset:0;z-index:99}@media(max-width:640px){.session-context-menu{inset:auto 0 0!important;width:100%;min-width:auto;border-radius:var(--radius-xl) var(--radius-xl) 0 0;z-index:210;padding:var(--space-2)}.session-context-menu__backdrop{z-index:209;background:#0006}.session-context-menu__item{padding:14px 16px;font-size:var(--text-base)}}.create-session-dialog{position:fixed;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);animation:csd-slide-in .15s ease-out;max-height:400px;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{display:flex;align-items:center;gap:6px;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.csd-agents{display:flex;flex-direction:column;gap:2px}.csd-agent-btn{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-primary);cursor:pointer;transition:background var(--transition-fast);text-align:left}.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{flex-shrink:0;color:var(--color-text-secondary)}.csd-agent-info{display:flex;flex-direction:column;min-width:0}.csd-agent-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:var(--font-medium)}.csd-agent-badge{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:1px 5px;border-radius:8px;background:hsla(var(--accent-hue),var(--accent-s),var(--accent-l),.15);color:var(--color-accent);line-height:1.3}.csd-agent-desc{font-size:var(--text-xs);color:var(--color-text-muted)}.csd-backdrop{display:none}@media(max-width:640px){.create-session-dialog{position:fixed!important;inset:auto 0 0!important;width:100%!important;max-width:100%!important;max-height:70vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:csd-slide-up .2s ease-out;z-index:210;overflow-y:auto}@keyframes csd-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.csd-backdrop{display:block;position:fixed;inset:0;background:#0006;z-index:209}}.session-dropdown__backdrop{position:fixed;inset:0;z-index:49}.session-dropdown--popover{position:absolute;top:calc(100% + 8px);left:0;width:calc(var(--dashboard-left-width, 280px) + 1px);max-height:calc(100vh - 100px);overflow-y:auto;background:#1f1f22;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-4);z-index:80;animation:fadeInUp .2s ease-out}.session-dropdown--bottom-sheet{position:fixed;inset:auto 0 0;min-width:auto;max-height:60vh;overflow-y:auto;background:#1f1f22;border:1px solid var(--color-border-default);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-lg);padding:var(--space-3);z-index:200;animation:fadeInUp .2s ease-out}.session-dropdown__list{display:flex;flex-direction:column;gap:var(--space-2)}.session-dropdown__new-session{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:10px 12px;margin-bottom:var(--space-2);margin-top:0;border:1px dashed var(--color-border-default);border-radius:var(--radius-lg);background:transparent;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)}.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{display:flex;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}.session-switcher:hover{background:var(--color-bg-muted)}.session-switcher__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.session-switcher__dot--success{background:var(--color-success);animation:dot-pulse 2s ease-in-out infinite}.session-switcher__dot--warning{background:var(--color-warning);animation:dot-pulse 2s ease-in-out infinite}.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);max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.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{width:44px;height:44px;justify-content:center;padding:0}.session-switcher--mobile .session-switcher__name,.session-switcher--mobile .session-switcher__chevron,.session-switcher--mobile .session-switcher__dot{display:none}.header{display:flex;align-items:center;justify-content:space-between;height:var(--header-height);padding:0 var(--space-4);background:transparent;border-radius:0;border-bottom:none;gap:var(--space-4);z-index:50}.header-logo{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.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--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{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.header-user-menu{display:flex;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)}.header-user-menu:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.header-bookmarks-wrapper{position:relative}.header-bookmarks-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.header-bookmarks-button:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.header-bookmarks-button:focus-visible{outline:none;box-shadow:var(--glow-accent)}.header-bookmarks-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;max-height:calc(100vh - 100px);overflow-y:auto;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);z-index:80;animation:header-bookmark-slide-in .15s ease-out}.header-bookmarks-list{display:flex;flex-direction:column;gap:2px}.header-bookmark-row{display:flex;align-items:center;gap:4px}.header-bookmark-item{flex:1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:8px 10px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-primary);text-align:left;cursor:pointer;transition:background var(--transition-fast)}.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;overflow:hidden;text-overflow:ellipsis;max-width:155px}.header-bookmark-item-badge{font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-bg-surface);padding:2px 6px;border-radius:var(--radius-sm);flex-shrink:0}.header-bookmark-delete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background var(--transition-fast),color var(--transition-fast)}.header-bookmark-delete:hover{background:var(--color-error-muted);color:var(--color-error)}.header-bookmark-add{margin-top:var(--space-1);width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);border-top:1px solid var(--color-border-subtle)}.header-bookmark-add:hover{background:var(--color-bg-muted);color:var(--color-accent)}.header-bookmark-error{padding:6px 10px;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}.header-bookmark-rename{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background var(--transition-fast),color var(--transition-fast)}.header-bookmark-rename:hover{background:var(--color-bg-muted);color:var(--color-accent)}.header-bookmark-rename-row{display:flex;align-items:center;gap:4px;flex:1;padding:2px}.header-bookmark-rename-row .header-bookmark-name-input{flex:1;padding:6px 8px}.header-bookmark-rename-confirm,.header-bookmark-rename-cancel{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:background var(--transition-fast),color var(--transition-fast)}.header-bookmark-rename-confirm:hover{background:var(--color-success-muted, rgba(34, 197, 94, .15));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{display:flex;align-items:center;gap:6px}.header-bookmark-name-input{flex:1;border-radius:var(--radius-md);border:1px solid var(--color-border-default);background:var(--color-bg-surface);color:var(--color-text-primary);padding:8px 10px;font-size:var(--text-sm)}.header-bookmark-name-input:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--glow-accent)}.header-bookmark-save{height:34px;padding:0 10px;border-radius:var(--radius-md);border:1px solid var(--color-border-default);background:var(--color-accent);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)}.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-avatar{flex-shrink:0}.header-user-avatar-img{border-radius:50%;flex-shrink:0}.header-user-name{font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:599px){.header-user-name{max-width:150px}}.header-storage-button,.header-settings-button,.header-logout-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.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{outline:none;box-shadow:var(--glow-accent)}.header-dashboard-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);color:var(--color-accent);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform .2s ease;animation:dashboard-icon-glow 3s ease-in-out infinite}.header-dashboard-button:hover{background:var(--color-bg-muted);color:var(--color-accent)}.header-dashboard-button:hover svg{animation:dashboard-icon-pulse .6s ease-in-out}.header-dashboard-button:focus-visible{outline:none;box-shadow:var(--glow-accent)}@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{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:none;border-radius:999px;background:var(--color-accent);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}.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%{transform:translate(-40px);opacity:0}50%{transform:translate(4px);opacity:1}70%{transform:translate(-2px)}85%{transform:translate(1px)}to{transform:translate(0)}}.header-auth-url-bounce-in{animation:header-auth-url-bounce-in .5s ease-out}@media(max-width:640px){.header-storage-button,.header-settings-button,.header-logout-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{position:fixed;inset:auto 0 0;min-width:auto;max-height:60vh;overflow-y:auto;border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:none;z-index:200}.header-user-name{display:none}}/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.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{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.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;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.init-progress{max-width:480px;margin:0 auto;padding:32px 40px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);border:1px solid var(--glass-border);box-shadow:0 8px 32px #0006,0 2px 8px #0000004d;animation:fadeInUp .4s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-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{display:flex;justify-content:center;margin-bottom:24px}.init-progress-hero-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:var(--radius-full);background:var(--color-accent-muted);color:var(--color-accent);transition:all var(--transition-slow)}.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:bounce .5s ease-out,scaleIn .3s ease-out}.init-progress-header{margin-bottom:28px;text-align:center}.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{position:relative;height:8px;background:var(--color-bg-muted);border-radius:var(--radius-full);overflow:hidden;margin-bottom:28px}.init-progress-bar--complete{box-shadow:0 0 12px #22c55e4d}.init-progress-bar--error{box-shadow:0 0 12px #ef44444d}.init-progress-bar-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,var(--color-accent),var(--color-info));transition:width var(--transition-slow);border-radius:var(--radius-full)}.init-progress-bar-fill--complete{background:linear-gradient(90deg,#16a34a,#22c55e)}.init-progress-bar-fill--error{background:linear-gradient(90deg,#dc2626,#ef4444)}.init-progress-bar-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--text-xs);font-weight:var(--font-bold);color:var(--color-text-primary);text-shadow:0 1px 3px rgba(0,0,0,.6);letter-spacing:.5px;display:none}.init-progress-stages{list-style:none;padding:0;margin:0 0 24px}.init-progress-stage{padding:10px 0;color:var(--color-text-muted);transition:color var(--transition-fast);border-bottom:1px solid transparent}.init-progress-stage:last-child{border-bottom:none}.init-progress-stage-row{display:flex;align-items:center;gap:12px}.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{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md);flex-shrink:0;transition:background var(--transition-fast)}.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);min-width:48px;text-align:right}.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%,rgba(24,24,27,.8) 100%);border-radius:var(--radius-lg);padding:var(--space-3);margin-bottom:var(--space-6);border:1px solid var(--color-glass-border, rgba(255, 255, 255, .06))}.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);display:flex;align-items:center;gap:var(--space-2)}.init-progress-details-grid{display:flex;flex-direction:column;gap:var(--space-1)}.init-progress-detail{display:flex;align-items:center;justify-content:space-between}.init-progress-detail-key{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--color-text-muted)}.init-progress-detail-value{display:flex;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);padding:2px 6px;border-radius:var(--radius-sm);word-break:break-all}.init-progress-actions{text-align:center}.init-progress-open-btn{display:inline-flex;align-items:center;justify-content: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:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);box-shadow:0 4px 12px var(--color-success-muted)}.init-progress-open-btn:hover{background:linear-gradient(135deg,#15803d,#16a34a);box-shadow:0 6px 16px var(--color-success-muted);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:1px solid rgba(239,68,68,.3);border-radius:var(--radius-lg);color:var(--color-error);font-size:var(--text-sm)}.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(max-width:540px){.init-progress{padding:24px 20px;margin:0 16px}.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{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;background:transparent;z-index:15;padding:40px 20px;overflow-y:auto}.terminal-connection-status{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#1a1a2e;color:var(--color-text-secondary);font-size:14px;z-index:10}.terminal-connection-spinner{width:24px;height:24px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}.xterm-cursor-block,.xterm-cursor-outline,.xterm-cursor-bar,.xterm-cursor-underline{display:none!important}.xterm .xterm-helper-textarea{caret-color:transparent!important;color:transparent!important;background:transparent!important;border:none!important;outline:none!important;overflow:hidden!important}@media(pointer:coarse){.xterm .xterm-helper-textarea{position:fixed!important;top:0!important;left:0!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;z-index:-1!important;font-size:16px!important;padding:0!important;margin:0!important;-webkit-tap-highlight-color:transparent!important}.terminal-input-iframe{position:fixed!important;top:0!important;left:0!important;width:1px!important;height:1px!important;border:none!important;opacity:.01!important;overflow:hidden!important;z-index:-1!important;pointer-events:none!important}.xterm-viewport{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}.xterm .xterm-helpers{overflow:hidden!important}.terminal-tabs{display:flex;align-items:center;gap:2px;padding:4px 8px;background:transparent;border-bottom:1px solid var(--color-border-subtle);height:36px;overflow:hidden;flex-shrink:0}.terminal-tab{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;padding:4px 12px;min-width:80px;font-size:12px;color:var(--color-text-secondary);background:#27272a99;backdrop-filter:blur(8px);border:1px solid var(--color-glass-border, rgba(255, 255, 255, .08));border-radius:var(--radius-sm) var(--radius-sm) 0 0;cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.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 #ffffff0d}.terminal-tab--active:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:2px;background:linear-gradient(90deg,transparent,var(--color-accent),transparent);border-radius:1px}.terminal-tab-icon{flex-shrink:0;opacity:.7;transition:opacity var(--transition-fast),color var(--transition-fast)}.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{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);opacity:0;transform:scale(.8);cursor:pointer;transition:all var(--transition-fast)}.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{display:flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--color-text-muted);opacity:0;cursor:grab;transition:opacity var(--transition-fast)}.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);box-shadow:0 4px 12px #0000004d;z-index:100}.sortable-ghost{opacity:.5}.terminal-tab-add{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base)}.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(max-width:640px){.terminal-tabs{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.terminal-tabs::-webkit-scrollbar{display:none}.terminal-tab{min-width:0;padding:4px 10px;min-height:36px}.terminal-tab-label{font-size:11px}.terminal-tab-close{opacity:1;transform:scale(1);width:22px;height:22px}.terminal-tab-drag-handle{display:none}.terminal-tab-add{width:36px;height:36px}}.terminal-tab-close-popup{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:4px;padding:6px 12px;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}.terminal-tab-close-popup-btn{display:flex;align-items:center;gap:4px;padding:4px 12px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-error);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast)}.terminal-tab-close-popup-btn:hover{background:var(--color-error-muted)}.tiling-button{position:absolute;top:var(--space-2);right:var(--space-2);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary);background:var(--color-bg-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--color-border-subtle);z-index:10}.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(max-width:640px){.tiling-button{display:none!important}}.tiling-overlay-backdrop{position:fixed;inset:0;z-index:98}.tiling-overlay{position:absolute;top:100%;right:0;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);min-width:140px;z-index:99;box-shadow:var(--shadow-lg);animation:fadeInDown .15s ease-out}.tiling-option{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border:2px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast)}.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{width:32px;height:24px;flex-shrink:0}.tiling-preview-rect{fill:none;stroke:currentColor;stroke-width:1.5}.tiling-option-label{flex:1;text-align:left}@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{display:grid;width:100%;height:100%;gap:2px}.tiled--2-split{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.tiled--3-split{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.tiled--3-split>:first-child{grid-row:span 2}.tiled--4-grid{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.tiled-terminal-slot{position:relative;border:2px solid transparent;border-radius:var(--radius-md);overflow:hidden;cursor:pointer;background:var(--color-bg-secondary, #18181b);min-height:0}.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:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,255,255,.02) 10px,rgba(255,255,255,.02) 20px)}.floating-terminal-buttons{position:fixed;right:var(--space-3);bottom:10px;display:flex;flex-direction:column;gap:var(--space-2);z-index:50}.floating-terminal-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);background:#0f0f0fbf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--color-accent);box-shadow:0 4px 12px #0006;cursor:pointer;touch-action:manipulation;transition:transform .15s ease,background-color .15s ease;-webkit-tap-highlight-color:transparent}.floating-terminal-btn:active{transform:scale(.92);background:#323232e6;border-color:var(--color-accent)}.floating-terminal-btn svg{width:18px;height:18px}.floating-btn-row{display:flex;align-items:center;justify-content:flex-end;gap:6px}.floating-btn-label{background:#000c;color:#fff;font-size:11px;font-weight:500;padding:2px 8px;border-radius:4px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .4s ease}.floating-btn-label.visible{opacity:1}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-sans);font-weight:500;border-radius:6px;border:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;user-select:none}.button[data-size=sm]{padding:6px 12px;font-size:12px;gap:6px}.button[data-size=md]{padding:8px 16px;font-size:14px;gap:8px}.button[data-size=lg]{padding:12px 24px;font-size:16px;gap:10px}.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]{background:transparent;color:var(--color-text-secondary)}.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{width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.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{display:inline-flex;align-items:center}.storage-browser{width:100%;flex:1;display:flex;flex-direction:column;background:transparent;overflow:hidden}.storage-browser-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle);gap:var(--space-3);flex-wrap:wrap}.storage-breadcrumbs{display:flex;align-items:center;gap:var(--space-1);flex:1;min-width:0;overflow:hidden}.storage-breadcrumbs .breadcrumb-item:last-child{overflow:hidden;text-overflow:ellipsis}.breadcrumb-item{background:none;border:none;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}.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{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.storage-drop-zone{flex:1;min-height:0;padding:var(--space-2);padding-bottom:var(--space-2);overflow-y:auto;transition:background-color .15s ease}.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{display:flex;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 ease}.storage-item:hover{background:var(--color-bg-muted)}.storage-item-icon{color:var(--color-text-secondary);flex-shrink:0}.storage-item-icon-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.storage-icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;flex-shrink:0;transition:background-color .1s ease,color .1s ease}.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:spin 1s linear infinite}.storage-toolbar-separator{width:1px;height:16px;background:var(--color-border-subtle);flex-shrink:0}.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{flex-shrink:0;accent-color:var(--color-accent)}.storage-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);color:var(--color-text-primary)}.storage-item-size,.storage-item-modified{font-size:var(--font-size-xs);color:var(--color-text-secondary);flex-shrink:0;white-space:nowrap}.storage-item-size{width:70px;text-align:right}.storage-item-modified{width:100px;text-align:right;padding-right:var(--space-2)}.storage-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-10);color:var(--color-text-secondary)}.storage-loading-spinner{width:20px;height:20px;border:2px solid var(--color-border-default);border-top-color:var(--color-accent);border-radius:50%;animation:spin .6s linear infinite}.storage-error{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6);color:var(--color-danger);text-align:center}.storage-empty{display:flex;align-items:center;justify-content:center;padding:var(--space-10);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.storage-upload-queue{border-top:1px solid var(--color-border-subtle);padding:var(--space-3);max-height:150px;overflow-y:auto}.upload-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) 0;font-size:var(--font-size-xs)}.upload-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-primary)}.upload-item-progress{width:100px;height:4px;background:var(--color-bg-elevated);border-radius:2px;overflow:hidden}.upload-item-bar{height:100%;background:var(--color-accent);border-radius:2px;transition:width .2s ease}.upload-item-status{width:60px;text-align:right;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{display:flex;align-items:center;justify-content:center;gap:2px;height:28px;padding:0 var(--space-2);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;white-space:nowrap;flex-shrink:0}.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{display:inline-flex;align-items:center;justify-content:flex-end;color:var(--color-text-secondary);opacity:.6;cursor:pointer;flex-shrink:0;position:relative;margin-left:auto;width:100px;padding-right:var(--space-2)}.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;max-width:260px;line-height:1.4;flex-shrink:0}@media(max-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{overflow-x:auto;-webkit-overflow-scrolling:touch}}.file-preview{display:flex;flex-direction:column;height:100%;background:var(--color-bg-base);color:var(--color-text-primary)}.file-preview-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border-subtle)}.file-preview-filename{flex:1;font-weight:500;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.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{display:flex;align-items:center;justify-content:center;padding:var(--space-8);color:var(--color-text-secondary)}.file-preview-error{display:flex;align-items:center;justify-content:center;padding:var(--space-8);color:var(--color-error)}.file-preview-text{display:flex;flex:1;overflow:auto;font-family:var(--font-mono);font-size:var(--text-sm)}.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{flex:1;padding:var(--space-2);margin:0;line-height:1.5;white-space:pre;overflow-x:auto}.file-preview-image-container{display:flex;align-items:center;justify-content:center;flex:1;padding:var(--space-4);overflow:auto}.file-preview-img{max-width:100%;max-height:100%;object-fit:contain}.file-preview-binary-info{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:var(--space-2);color:var(--color-text-secondary)}.file-preview-binary-size{font-family:var(--font-mono);font-size:var(--text-sm)}.kitt-scanner{position:absolute;top:0;left:0;width:100%;height:1px;overflow:visible;background:transparent;z-index:10;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent,black 7px,black calc(100% - 7px),transparent);mask-image:linear-gradient(to right,transparent,black 7px,black calc(100% - 7px),transparent)}.kitt-beam{position:absolute;top:0;left:0;width:15%;height:100%;background:#ef4444;box-shadow:0 0 6px #ef444499,0 0 16px #ef44444d;animation:kitt-sweep 2.4s cubic-bezier(.4,0,.6,1) infinite alternate}@keyframes kitt-sweep{0%{left:0%}to{left:85%}}@media(prefers-reduced-motion:reduce){.kitt-beam{animation:none;left:42.5%;opacity:.6}}.tips-card,.welcome-card{cursor:pointer;user-select:none;-webkit-user-select:none}.dashboard-card__content{display:flex;flex-direction:column;gap:4px}.dashboard-card__text{font-size:11px;text-transform:uppercase;letter-spacing:.02em;line-height:1.4;color:var(--color-text-muted, #6b7280);font-family:var(--font-mono);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-card__text--static{font-size:11px;text-transform:uppercase;letter-spacing:.02em;line-height:1.4;color:var(--color-text-secondary);font-family:var(--font-mono);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.dashboard-container{display:flex;align-items:center;justify-content:center;padding:var(--dashboard-panel-margin);width:100%;height:100%;box-sizing:border-box;animation:dashboard-fade-in var(--dashboard-fade-duration) ease-out}@keyframes dashboard-fade-in{0%{opacity:0}to{opacity:1}}.dashboard-panel-wrapper{position:relative;display:flex;flex-direction:column;width:100%;max-width:var(--dashboard-max-width);max-height:100%;min-height:min(520px,100%);z-index:2}.dashboard-panel{width:100%;flex:1;min-height:0;display:flex;flex-direction:column;border-radius:8px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);border:1px solid var(--color-border-subtle);box-shadow:0 8px 32px #0006,0 2px 8px #0000004d;overflow:hidden}.dashboard-panel--expanded{max-width:100vw;height:100vh;border-radius:0;box-shadow:none;border:none}.dashboard-panel-header{display:flex;align-items:center;padding:var(--space-3) var(--space-4);background:transparent;border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:1px solid var(--glass-border);gap:var(--space-4);flex-shrink:0}.dashboard-panel-header .header-spacer{flex:1}.dashboard-panel-body{display:flex;flex:1;min-height:0;overflow:hidden}.dashboard-panel-left{width:var(--dashboard-left-width);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4);background:#1f1f22e6;border-radius:0;border-right:1px solid var(--glass-border);overflow-y:auto;overflow-x:hidden}.dashboard-panel-right{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#050508e6}.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:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background .15s ease}.dashboard-new-session-btn:hover{background:var(--color-accent-hover)}.dashboard-section-divider{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}.dashboard-section-divider:after{content:"";flex:1;height:1px;background:var(--color-border-subtle)}.dashboard-sessions-section{flex:1;display:flex;flex-direction:column;gap:var(--space-3);min-height:0;overflow:hidden}.dashboard-session-list{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:var(--space-2)}.dashboard-stats-section{display:flex;flex-direction:column;gap:var(--space-3);margin-top:auto}@media(max-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{width:100%;border-right:none;border-bottom:1px solid var(--glass-border);flex-shrink:0}.dashboard-panel-right{width:100%;min-height:300px;max-height:50vh;overflow:hidden}}.settings-backdrop{position:fixed;inset:0;background:#00000080;opacity:0;pointer-events:none;transition:opacity var(--transition-base);z-index:99}.settings-backdrop.open{opacity:1;pointer-events:auto}.settings-panel{position:fixed;top:0;right:0;bottom:0;width:400px;background:var(--color-bg-surface);border-left:1px solid var(--color-border-subtle);transform:translate(100%);transition:transform var(--transition-slow);z-index:100;display:flex;flex-direction:column;overflow:hidden}.settings-panel.open{transform:translate(0)}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--color-border-subtle);flex-shrink:0}.settings-title{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary)}.settings-close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition-fast)}.settings-close-button:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.settings-content{flex:1;overflow-y:auto;padding:var(--space-4)}.settings-section{margin-bottom:var(--space-6)}.settings-section:last-child{margin-bottom:0}.settings-panel.open .settings-section-3{animation:fadeInUp .2s ease-out .15s backwards}.settings-panel.open .settings-section-4{animation:fadeInUp .2s ease-out .2s backwards}.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{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);color:var(--color-text-muted)}.settings-section-title{margin:0;font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) 0}.setting-row--column{flex-direction:column;align-items:stretch}.setting-row--column-gap{flex-direction:column;align-items:stretch;gap:8px}.setting-row--split{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:0}.settings-recreate-docs-action{flex-shrink:0}.setting-row--centered{justify-content:center}.setting-row__actions{display:flex;gap:8px;width:100%;align-items:flex-start}.setting-row__input-wrapper{flex:1}.setting-row--user{display:flex;justify-content:space-between;align-items:center}.setting-row__user-info{min-width:0;flex:1;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.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);font-family:inherit;cursor:pointer;appearance:none;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-repeat:no-repeat;background-position:right 8px center;min-width:120px;transition:border-color var(--transition-fast),background var(--transition-fast)}.setting-row select:hover{border-color:var(--color-border-default);background-color:var(--color-bg-elevated)}.setting-row select:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--glow-accent)}.settings-role-badge{display:inline-flex;align-items:center;padding:1px 6px;font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-sm);line-height:1.4;white-space:nowrap}.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{background:#a1a1aa1a;color:var(--color-text-muted);border:1px solid rgba(161,161,170,.2)}.settings-content::-webkit-scrollbar{width:6px}.settings-content::-webkit-scrollbar-track{background:transparent}.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)}.settings-panel.open .settings-section-accent{animation:fadeInUp .2s ease-out 75ms backwards}.accent-color-row{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.accent-color-row .button{margin-left:auto;flex-shrink:0}.accent-color-swatch{display:inline-block;width:24px;height:24px;border-radius:var(--radius-sm);border:1px solid var(--color-border-default);flex-shrink:0}.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{outline:none;border-color:var(--color-accent);box-shadow:var(--glow-accent)}.accent-color-input::placeholder{color:var(--color-text-dimmed)}.accent-color-link{display:inline-block;font-size:var(--text-xs);color:var(--color-text-muted);text-decoration:none;transition:color var(--transition-fast)}.accent-color-link:hover{color:var(--color-accent);text-decoration:underline}.settings-input{flex:1;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);transition:border-color var(--transition-fast)}.settings-input:hover{border-color:var(--color-border-default)}.settings-input:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--glow-accent)}.settings-input::placeholder{color:var(--color-text-dimmed)}.settings-button--danger{padding:var(--space-1) var(--space-3);background:var(--color-error);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-family:inherit;font-weight:var(--font-medium);cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast)}.settings-button--danger:hover:not(:disabled){opacity:.9}.settings-button--danger:disabled{opacity:.4;cursor:not-allowed}@media(max-width:640px){.settings-panel{width:100vw}.settings-close-button{width:44px;height:44px}.setting-row select{min-width:auto;width:100%}}@media(prefers-reduced-motion:reduce){.settings-panel,.settings-backdrop{transition:none}.settings-panel.open .settings-section-3,.settings-panel.open .settings-section-4,.settings-panel.open .settings-section-accent{animation:none}}.storage-panel-backdrop{position:fixed;inset:0;background:#00000080;opacity:0;pointer-events:none;transition:opacity var(--transition-base);z-index:94}.storage-panel-backdrop.open{opacity:1;pointer-events:auto}.storage-panel{position:fixed;top:0;right:0;bottom:0;width:400px;background:var(--color-bg-surface);border-left:1px solid var(--color-border-subtle);transform:translate(100%);transition:transform var(--transition-slow);z-index:95;display:flex;flex-direction:column;overflow:hidden}.storage-panel.open{transform:translate(0)}.storage-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--color-border-subtle);flex-shrink:0}.storage-panel-title{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-text-primary)}.storage-panel-close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition-fast)}.storage-panel-close-button:hover{background:var(--color-bg-muted);color:var(--color-text-primary)}.storage-panel-content{flex:1;overflow-y:auto;display:flex;flex-direction:column}.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:transparent}.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(max-width:640px){.storage-panel{width:100vw;top:auto;bottom:0;max-height:70vh;border-left:none;border-top:1px solid var(--color-border-subtle);border-radius:var(--radius-xl) var(--radius-xl) 0 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{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden;transition:opacity .3s ease-out}.splash-cursor-canvas{width:100%;height:100%}@media(prefers-reduced-motion:reduce){.splash-cursor-container{display:none}}html,body{overflow:hidden;overscroll-behavior:none;overflow-anchor:none}.layout{display:flex;flex-direction:column;height:100%;width:100%;background:var(--color-bg-gradient);position:fixed;inset:0;overflow:hidden}.layout-middle{display:flex;flex:1;min-height:0;overflow:hidden;position:relative}.layout-main{flex:1;display:flex;flex-direction:column;position:relative;overflow:hidden}.layout-error{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--color-error-muted);border-bottom:1px solid var(--color-error);color:var(--color-error)}.layout-error button{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);background:#ef444433;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.layout-error button:hover{background:#ef44444d}.layout-terminal-container{flex:1;position:relative;overflow:hidden;height:100%;min-height:0}.layout-tiling-button-wrapper{position:absolute;top:var(--space-2);right:var(--space-2);z-index:20}.welcome-step{display:flex;flex-direction:column;gap:20px;align-items:stretch}.welcome-title{margin:0;font-size:clamp(24px,2.6vw,32px);font-weight:600;color:var(--color-text-primary);text-align:left;letter-spacing:-.01em}.welcome-description{margin:0;font-size:16px;color:var(--color-text-secondary);text-align:left;line-height:1.6}.token-detect-section{width:100%;display:flex;flex-direction:column;gap:16px;align-items:stretch}.token-status{width:100%;display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:var(--radius-lg);border:1px solid var(--glass-border);box-shadow:inset 0 1px #ffffff08}.token-status--detecting{background:#1f1f22cc;color:var(--color-text-secondary)}.token-status--success{background:#16653433;border:1px solid rgba(34,197,94,.15)}.token-status--error{background:#7f1d1d33;border:1px solid rgba(239,68,68,.15)}.token-status-icon{display:flex;align-items:center;flex-shrink:0}.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:spin 1s linear infinite}.token-status-text{display:flex;flex-direction:column;gap:4px}.token-status-text strong{font-size:15px;color:var(--color-text-primary)}.token-status-text span{font-size:13px;color:var(--color-text-secondary)}.token-status-text code{padding:2px 6px;background:var(--color-bg-primary);border-radius:4px;font-size:12px;color:var(--color-accent)}.token-error-help{width:100%;padding:12px 16px;background:#09090b47;border-radius:var(--radius-lg);border:1px solid var(--glass-border)}.token-error-help p{margin:0;font-size:13px;color:var(--color-text-secondary);line-height:1.6}.token-error-help code{padding:2px 6px;background:var(--color-bg-primary);border-radius:4px;font-size:12px;color:var(--color-accent)}.welcome-step .button{align-self:flex-start}@media(max-width:640px){.welcome-title{font-size:22px}.welcome-description{font-size:14px}.token-status{padding:12px}}.input-container{display:flex;flex-direction:column;gap:4px;width:100%}.input-wrapper{position:relative;display:flex;align-items:center;width:100%}.input{width:100%;padding:10px 12px;font-family:var(--font-sans);font-size:14px;color:var(--color-text-primary);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:6px;outline:none;transition:all var(--transition-fast)}.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{position:absolute;left:12px;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);pointer-events:none}.input:focus~.input-icon,.input-wrapper:has(.input:focus) .input-icon{color:var(--color-accent)}.input-error{font-size:12px;color:var(--color-error)}.input-hint{font-size:12px;color:var(--color-text-muted)}.configure-step{display:flex;flex-direction:column;gap:18px}.configure-title{margin:0;font-size:clamp(24px,2.6vw,32px);font-weight:600;color:var(--color-text-primary);text-align:left;letter-spacing:-.01em}.setup-field{display:flex;flex-direction:column;gap:10px;padding:16px;background:#09090b52;border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:inset 0 1px #ffffff08}.setup-field-label{font-size:14px;font-weight:600;color:var(--color-text-primary)}.setup-field-description{margin:0;font-size:13px;color:var(--color-text-secondary);line-height:1.4}.email-input-row{display:flex;gap:10px;align-items:flex-start}.email-input-row .input-container{flex:1}.email-input-row .button[data-size=sm]{min-height:38px;min-width:74px;font-size:var(--text-sm)}.email-tags{display:flex;flex-wrap:wrap;gap:8px;min-height:12px}.email-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#18181bd1;border:1px solid var(--color-border-subtle);border-radius:8px;font-size:13px;color:var(--color-text-primary)}.email-tag--admin{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,rgba(31,31,34,.8))}.email-tag-remove{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-primary);border:none;border-radius:50%;font-size:14px;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease}.email-tag-remove:hover{background:var(--color-error);color:#fff}.setup-actions{display:flex;justify-content:space-between;gap:12px;margin-top:8px;padding-top:14px;border-top:1px solid var(--glass-border)}@media(max-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{display:flex;flex-direction:column;gap:18px}.progress-title{margin:0;font-size:clamp(24px,2.6vw,32px);font-weight:600;color:var(--color-text-primary);text-align:left;display:flex;align-items:center;justify-content:flex-start;gap:8px;letter-spacing:-.01em}.title-icon{flex-shrink:0}.title-icon--spin{animation:spin 2s linear infinite;color:var(--color-accent)}.title-icon--error{color:var(--color-error)}.title-icon--success{color:var(--color-success)}.progress-steps{display:flex;flex-direction:column;gap:12px}.progress-step-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#09090b52;border-radius:var(--radius-lg);border:1px solid var(--glass-border);transition:all .3s ease}.progress-step-item.success{background:#16653429;border-color:#22c55e33}.progress-step-item.error{background:#7f1d1d29;border-color:#ef444440}.step-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center}.step-icon--spin{animation:spin 1s linear infinite}.progress-step-item.success .step-icon{color:var(--color-success)}.progress-step-item.error .step-icon{color:var(--color-error)}.progress-step-item.pending .step-icon{color:var(--color-text-tertiary)}.step-label{flex:1;font-size:14px;color:var(--color-text-primary)}.step-error{font-size:12px;color:var(--color-error)}.progress-bar-container{height:8px;background:#09090b59;border-radius:4px;overflow:hidden;border:1px solid var(--glass-border)}.progress-bar{height:100%;background:var(--color-accent);transition:width .5s ease}.error-message{padding:12px 16px;background:#7f1d1d33;border:1px solid rgba(239,68,68,.15);border-radius:8px;font-size:14px;color:var(--color-error)}.progress-actions{display:flex;justify-content:space-between;gap:12px}.success-section{display:flex;flex-direction:column;gap:20px}.success-message{margin:0;font-size:16px;color:var(--color-text-secondary);text-align:left}.url-item{display:flex;gap:12px;padding:16px;background:#09090b52;border-radius:var(--radius-lg);border:1px solid var(--glass-border)}.url-icon{display:flex;align-items:center;color:var(--color-text-secondary)}.url-content{display:flex;flex-direction:column;gap:4px}.url-label{font-size:13px;color:var(--color-text-secondary)}.url-value{font-size:14px;color:var(--color-accent);text-decoration:none;word-break:break-all}.url-value:hover{text-decoration:underline}.url-note{font-size:12px;color:var(--color-success)}.access-note{display:flex;align-items:flex-start;gap:8px;padding:12px;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);font-size:13px;color:var(--color-text-secondary)}.access-note .note-icon{flex-shrink:0;color:var(--color-accent)}.launch-note{margin:0;font-size:13px;color:var(--color-text-secondary);text-align:left;display:flex;align-items:center;justify-content:flex-start;gap:4px}.note-icon{flex-shrink:0}@media(max-width:640px){.progress-title{font-size:22px}.progress-step-item{padding:10px 12px}.url-item{padding:12px}.access-note{padding:10px}}.setup-wizard{position:fixed;inset:0;display:flex;flex-direction:column;padding:var(--dashboard-panel-margin);background:var(--color-bg-gradient);overflow-y:auto}.setup-container{width:100%;max-width:760px;margin:auto;display:flex;flex-direction:column;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0006,0 2px 8px #0000004d;backdrop-filter:var(--glass-blur);overflow:hidden;position:relative;z-index:2}.setup-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:#1f1f22e6;border-bottom:1px solid var(--glass-border);flex-shrink:0}.setup-logo-icon{display:block;color:var(--color-accent);flex-shrink:0}.setup-logo-icon--error{color:var(--color-error)}.setup-title{margin:0;font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-text-primary);letter-spacing:.01em}.setup-header-status{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--color-text-secondary);background:#27272abf;border:1px solid var(--glass-border);border-radius:var(--radius-full);padding:3px 10px;white-space:nowrap}.setup-header-status--error{color:#fca5a5;border-color:var(--color-error-border);background:var(--color-error-bg)}.setup-header-status-icon--spin{animation:spin 1s linear infinite}.setup-progress{border-radius:0;height:3px;background:#ffffff0f}.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{flex:1;overflow-y:auto;padding:var(--space-8);background:#1f1f22a8}.denied-message{margin:0 0 24px;font-size:var(--text-base);color:var(--color-text-secondary);text-align:center;line-height:var(--leading-normal)}.denied-button{display:inline-flex;align-items:center;justify-content:center;min-width:180px;margin-left:auto;padding:10px 16px;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text-primary);background:var(--color-accent);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.denied-button:hover{background:var(--color-accent-hover)}@media(max-width:900px){.setup-wizard{padding:var(--space-4)}}@media(max-width:640px){.setup-wizard{padding:var(--space-3)}.setup-container{width:min(760px,calc(100vw - 24px));min-height:auto}.setup-header{padding:var(--space-3)}.setup-title{font-size:var(--text-lg)}.setup-content{flex:none;padding:var(--space-4)}.setup-header-status{display:none}}.app-loading{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--color-text-secondary);background:var(--color-bg-primary)}.app-loading-spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}.app-auth-error{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px;text-align:center;background:var(--color-bg-primary)}.app-auth-error h1{margin:0;font-size:24px;color:var(--color-error)}.app-auth-error p{margin:0;color:var(--color-text-secondary)}.app-auth-error button{padding:12px 24px;font-size:14px;font-weight:500;color:var(--color-bg-primary);background:var(--color-accent);border-radius:6px;transition:background var(--transition-fast);cursor:pointer}.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: rgba(34, 197, 94, .15);--color-success-bg: rgba(34, 197, 94, .1);--color-warning: #f59e0b;--color-warning-muted: rgba(245, 158, 11, .15);--color-error: #ef4444;--color-error-hover: #dc2626;--color-error-muted: rgba(239, 68, 68, .15);--color-error-bg: rgba(239, 68, 68, .1);--color-error-border: rgba(239, 68, 68, .3);--color-info: #3b82f6;--color-terminal-bg: #0a0a0c;--color-glow-accent: hsla(var(--accent-hue), var(--accent-s), var(--accent-l), .4);--color-bg-overlay: rgba(24, 24, 27, .8);--color-bg-elevated-hover: rgba(39, 39, 42, .9);--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: rgba(255, 255, 255, .08);--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 rgba(0, 0, 0, .5);--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: rgba(24, 24, 27, .9);--glass-blur: blur(16px);--glass-border: rgba(255, 255, 255, .08);--glass-border-hover: rgba(255, 255, 255, .12);--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 fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@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-fadeIn{animation:fadeIn .2s ease-out}.animate-fadeInUp{animation:fadeInUp .2s ease-out}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-shake{animation:shake .5s ease-in-out}.animate-bounce{animation:bounce .5s ease-out}.animate-scaleIn{animation:scaleIn .2s cubic-bezier(.34,1.56,.64,1)}.settings-rotate:hover{transform:rotate(90deg);transition:transform var(--transition-slow)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-spin,.animate-pulse,.animate-float{animation:none!important}}:focus-visible{outline:none;box-shadow:var(--glow-accent)}:focus:not(:focus-visible){outline:none;box-shadow:none}.toggle{position:relative;width:44px;height:24px;background:var(--color-bg-muted);border-radius:var(--radius-full);cursor:pointer;transition:background var(--transition-fast);border:none;padding:0}.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{outline:none;box-shadow:var(--glow-accent)}.toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:var(--color-text-primary);border-radius:var(--radius-full);transition:transform var(--transition-fast)}.toggle.toggle-on .toggle-thumb{transform:translate(20px)}.progress-bar{height:4px;background:var(--color-bg-tertiary);border-radius:2px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--color-accent);border-radius:2px;transition:width .3s ease}.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:progressShimmer 1.5s ease-in-out infinite}@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{height:100%;width: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;border:none;background:none;color:inherit}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);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}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);outline:none;resize:vertical;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}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);outline:none;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}select:focus{border-color:var(--color-accent);box-shadow:var(--glow-accent)}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}::selection{background-color:var(--color-accent-muted);color:var(--color-text-primary)}::-moz-selection{background-color:var(--color-accent-muted);color:var(--color-text-primary)}
