.theme-toggle[data-v-4c79fd31]{display:flex;align-items:center;gap:var(--space-xs)}.toggle-btn[data-v-4c79fd31]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--bg-overlay);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-md);color:var(--fg-secondary);cursor:pointer;transition:all var(--transition-fast)}.toggle-btn[data-v-4c79fd31]:hover{color:var(--fg-primary);border-color:var(--accent);background:var(--bg-surface)}.theme-btn.dark[data-v-4c79fd31]{color:var(--warning)}.theme-btn[data-v-4c79fd31]:not(.dark){color:var(--accent)}.density-group[data-v-4c79fd31]{display:flex;border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-md);overflow:hidden}.density-btn[data-v-4c79fd31]{border:none;border-radius:0;width:32px;height:32px}.density-btn[data-v-4c79fd31]:not(:last-child){border-right:var(--border-width-sm) solid var(--border)}.density-btn.active[data-v-4c79fd31]{background:var(--accent);color:var(--bg-base)}.density-btn[data-v-4c79fd31]:hover:not(.active){background:var(--bg-surface);color:var(--fg-primary)}.public-layout[data-v-7a504097]{min-height:100vh;display:flex;flex-direction:column}.header[data-v-7a504097]{position:sticky;top:0;z-index:var(--z-dropdown);background:var(--bg-surface);border-bottom:var(--border-width-sm) solid var(--border);-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md))}.header-inner[data-v-7a504097]{max-width:1200px;margin:0 auto;padding:var(--space-sm) var(--space-md);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.logo[data-v-7a504097]{text-decoration:none}.logo-text[data-v-7a504097]{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--fg-primary)}.desktop-nav[data-v-7a504097]{display:none;gap:var(--space-2xs)}@media(min-width:768px){.desktop-nav[data-v-7a504097]{display:flex}}.nav-link[data-v-7a504097]{padding:var(--space-xs) var(--space-sm);color:var(--fg-secondary);text-decoration:none;font-size:var(--font-size-sm);border-radius:var(--radius-md);transition:color var(--transition-fast),background var(--transition-fast)}.nav-link[data-v-7a504097]:hover{color:var(--fg-primary);background:var(--bg-overlay)}.nav-link.router-link-active[data-v-7a504097]{color:var(--accent)}.auth-buttons[data-v-7a504097]{display:none;gap:var(--space-xs)}@media(min-width:768px){.auth-buttons[data-v-7a504097]{display:flex}}.mobile-menu-btn[data-v-7a504097]{display:flex;padding:var(--space-xs);background:none;border:none;color:var(--fg-primary);cursor:pointer}@media(min-width:768px){.mobile-menu-btn[data-v-7a504097]{display:none}}.mobile-nav[data-v-7a504097]{padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs);border-top:var(--border-width-sm) solid var(--border)}.mobile-nav-link[data-v-7a504097]{padding:var(--space-sm);color:var(--fg-primary);text-decoration:none;border-radius:var(--radius-md)}.mobile-nav-link[data-v-7a504097]:hover{background:var(--bg-overlay)}.mobile-auth[data-v-7a504097]{display:flex;flex-direction:column;gap:var(--space-xs);margin-top:var(--space-md);padding-top:var(--space-md);border-top:var(--border-width-sm) solid var(--border)}.btn[data-v-7a504097]{padding:var(--space-xs) var(--space-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);text-align:center}.btn-ghost[data-v-7a504097]{color:var(--fg-primary);background:transparent}.btn-ghost[data-v-7a504097]:hover{background:var(--bg-overlay)}.btn-primary[data-v-7a504097]{color:var(--bg-base);background:var(--accent)}.btn-primary[data-v-7a504097]:hover{background:var(--accent-hover)}.user-menu[data-v-7a504097]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-xs);background:var(--bg-overlay);border-radius:var(--radius-md)}.user-avatar[data-v-7a504097]{width:28px;height:28px;border-radius:var(--radius-full);object-fit:cover}.user-icon[data-v-7a504097]{color:var(--fg-secondary)}.user-name[data-v-7a504097]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--fg-primary);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-icon[data-v-7a504097]{display:flex;align-items:center;justify-content:center;padding:var(--space-2xs);background:none;border:none;color:var(--fg-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.btn-icon[data-v-7a504097]:hover{color:var(--fg-primary);background:var(--bg-surface)}.main[data-v-7a504097]{flex:1;overflow-y:auto}.footer[data-v-7a504097]{background:var(--bg-surface);border-top:var(--border-width-sm) solid var(--border);margin-top:auto}.footer-inner[data-v-7a504097]{max-width:1200px;margin:0 auto;padding:var(--space-xl) var(--space-md)}.footer-brand[data-v-7a504097]{margin-bottom:var(--space-lg)}.footer-tagline[data-v-7a504097]{color:var(--fg-secondary);font-size:var(--font-size-sm);margin-top:var(--space-xs)}.footer-links[data-v-7a504097]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-lg);margin-bottom:var(--space-lg)}.footer-column h4[data-v-7a504097]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-sm)}.footer-column a[data-v-7a504097]{display:block;color:var(--fg-secondary);text-decoration:none;font-size:var(--font-size-sm);padding:var(--space-2xs) 0}.footer-column a[data-v-7a504097]:hover{color:var(--fg-primary)}.footer-bottom[data-v-7a504097]{padding-top:var(--space-lg);border-top:var(--border-width-sm) solid var(--border);text-align:center}.footer-bottom p[data-v-7a504097]{color:var(--fg-secondary);font-size:var(--font-size-xs)}.companion-layout[data-v-cf7c72f7]{height:100vh;height:100dvh;display:flex;overflow:hidden}.mobile-header[data-v-cf7c72f7]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:var(--bg-surface);border-bottom:var(--border-width-sm) solid var(--border);position:fixed;top:0;left:0;right:0;z-index:50}@media(min-width:768px){.mobile-header[data-v-cf7c72f7]{display:none}}.menu-btn[data-v-cf7c72f7],.profile-btn[data-v-cf7c72f7]{display:flex;padding:var(--space-xs);background:none;border:none;color:var(--fg-primary);cursor:pointer;text-decoration:none}.page-title[data-v-cf7c72f7]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.sidebar[data-v-cf7c72f7]{position:fixed;top:0;left:0;bottom:0;width:240px;background:var(--bg-surface);border-right:var(--border-width-sm) solid var(--border);display:flex;flex-direction:column;z-index:var(--z-dropdown);transform:translate(-100%);transition:transform var(--transition-normal)}.sidebar.open[data-v-cf7c72f7]{transform:translate(0)}@media(min-width:768px){.sidebar[data-v-cf7c72f7]{position:static;transform:none;flex-shrink:0}}.sidebar-header[data-v-cf7c72f7]{padding:var(--space-md);border-bottom:var(--border-width-sm) solid var(--border);display:flex;flex-direction:column;gap:var(--space-sm)}.logo[data-v-cf7c72f7]{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--fg-primary);text-decoration:none}.sidebar-nav[data-v-cf7c72f7]{flex:1;padding:var(--space-xs);overflow-y:auto}.nav-item[data-v-cf7c72f7]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);color:var(--fg-secondary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast)}.nav-item[data-v-cf7c72f7]:hover{color:var(--fg-primary);background:var(--bg-overlay)}.nav-item.active[data-v-cf7c72f7]{color:var(--accent);background:var(--accent-light)}.conn-card[data-v-cf7c72f7]{margin:var(--space-xs);padding:var(--space-sm);background:var(--bg-base);border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--fg-secondary)}.conn-card__header[data-v-cf7c72f7]{display:flex;align-items:center;gap:6px;margin-bottom:var(--space-xs)}.conn-card__icon[data-v-cf7c72f7]{color:var(--fg-tertiary);flex-shrink:0}.conn-card__dot[data-v-cf7c72f7]{width:6px;height:6px;border-radius:var(--radius-full);flex-shrink:0}.conn-card__dot--on[data-v-cf7c72f7]{background:var(--success, #22c55e);box-shadow:0 0 4px var(--success, #22c55e)}.conn-card__dot--off[data-v-cf7c72f7]{background:var(--danger, #ef4444)}.conn-card__label[data-v-cf7c72f7]{flex:1;font-weight:var(--font-weight-semibold);color:var(--fg-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conn-card__latency[data-v-cf7c72f7]{color:var(--fg-tertiary);font-variant-numeric:tabular-nums}.conn-card__channels[data-v-cf7c72f7]{display:grid;grid-template-columns:1fr;gap:1px;margin-bottom:var(--space-xs)}.conn-card__ch[data-v-cf7c72f7]{display:flex;align-items:center;gap:var(--space-xs);margin-top:4px}.conn-card__dir[data-v-cf7c72f7]{color:var(--fg-tertiary);font-size:10px;width:12px;text-align:center}.conn-card__ch-name[data-v-cf7c72f7]{font-weight:var(--font-weight-medium);color:var(--fg-primary);font-size:10px;letter-spacing:.03em}.conn-card__ch-tag[data-v-cf7c72f7]{font-size:9px;color:var(--fg-tertiary);background:var(--bg-overlay);border-radius:3px;padding:0 3px}.conn-card__ch-stats[data-v-cf7c72f7]{padding-left:16px;color:var(--fg-tertiary);font-variant-numeric:tabular-nums}.conn-card__io[data-v-cf7c72f7]{display:flex;align-items:center;gap:var(--space-xs);padding-top:var(--space-xs);border-top:var(--border-width-sm) solid var(--border);color:var(--fg-tertiary);font-variant-numeric:tabular-nums}.conn-card__sep[data-v-cf7c72f7]{color:var(--fg-tertiary);opacity:var(--opacity-disabled)}.conn-card__retry[data-v-cf7c72f7]{display:block;width:100%;padding:4px;margin-top:var(--space-xs);background:none;border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-sm);color:var(--accent);cursor:pointer;font-size:var(--font-size-xs)}.conn-card__retry[data-v-cf7c72f7]:hover{background:var(--bg-overlay)}.conn-card__blocked[data-v-cf7c72f7]{margin-top:var(--space-xs);padding:4px;text-align:center;color:var(--danger, #ef4444);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:#ef44441a;border-radius:var(--radius-sm)}.sidebar-footer[data-v-cf7c72f7]{padding:var(--space-md);border-top:var(--border-width-sm) solid var(--border)}.back-link[data-v-cf7c72f7]{color:var(--fg-secondary);text-decoration:none;font-size:var(--font-size-sm)}.back-link[data-v-cf7c72f7]:hover{color:var(--fg-primary)}.backdrop[data-v-cf7c72f7]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:90}@media(min-width:768px){.backdrop[data-v-cf7c72f7]{display:none}}.main[data-v-cf7c72f7]{flex:1;min-width:0;padding:var(--space-md);margin-top:60px;height:calc(100vh - 60px);height:calc(100dvh - 60px);overflow-y:auto;-webkit-overflow-scrolling:touch}@media(min-width:768px){.main[data-v-cf7c72f7]{margin-left:0;margin-top:0;height:100%;padding:var(--space-lg)}}.search-backdrop[data-v-c482e43b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;z-index:1000}.search-modal[data-v-c482e43b]{width:100%;max-width:600px;background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;overflow:hidden}.search-header[data-v-c482e43b]{display:flex;align-items:center;padding:var(--space-md);border-bottom:var(--border-width-sm) solid var(--border);gap:var(--space-sm)}.search-icon[data-v-c482e43b]{color:var(--fg-secondary);flex-shrink:0}.search-input[data-v-c482e43b]{flex:1;background:none;border:none;font-size:var(--font-size-lg);color:var(--fg-primary);outline:none}.search-input[data-v-c482e43b]::placeholder{color:var(--fg-secondary)}.close-btn[data-v-c482e43b]{padding:var(--space-xs);background:none;border:none;color:var(--fg-secondary);cursor:pointer;border-radius:var(--radius-md)}.close-btn[data-v-c482e43b]:hover{background:var(--bg-hover);color:var(--fg-primary)}.category-tabs[data-v-c482e43b]{display:flex;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border-bottom:var(--border-width-sm) solid var(--border);overflow-x:auto}.tab[data-v-c482e43b]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:none;border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-md);color:var(--fg-secondary);cursor:pointer;white-space:nowrap;font-size:var(--font-size-sm)}.tab[data-v-c482e43b]:hover{background:var(--bg-hover);color:var(--fg-primary)}.tab.active[data-v-c482e43b]{background:var(--accent);border-color:var(--accent);color:#fff}.tab .count[data-v-c482e43b]{background:#fff3;padding:0 var(--space-xs);border-radius:var(--radius-full);font-size:var(--font-size-xs)}.search-results[data-v-c482e43b]{max-height:400px;overflow-y:auto;padding:var(--space-sm)}.loading[data-v-c482e43b],.empty-state[data-v-c482e43b]{text-align:center;padding:var(--space-xl);color:var(--fg-secondary)}.result-section[data-v-c482e43b]{margin-bottom:var(--space-md)}.section-header[data-v-c482e43b]{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--fg-secondary);text-transform:uppercase;padding:var(--space-xs) var(--space-sm)}.result-item[data-v-c482e43b]{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm);background:none;border:none;border-radius:var(--radius-md);cursor:pointer;text-align:left;color:var(--fg-primary)}.result-item[data-v-c482e43b]:hover{background:var(--bg-hover)}.result-item:hover .arrow[data-v-c482e43b]{opacity:1}.platform-icon[data-v-c482e43b]{font-size:1.2rem}.item-content[data-v-c482e43b]{flex:1;min-width:0}.item-name[data-v-c482e43b]{display:block;font-weight:var(--font-weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-meta[data-v-c482e43b]{display:block;font-size:var(--font-size-sm);color:var(--fg-secondary)}.arrow[data-v-c482e43b]{opacity:0;color:var(--fg-secondary);transition:opacity var(--transition-fast)}.search-footer[data-v-c482e43b]{display:flex;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-top:var(--border-width-sm) solid var(--border);background:var(--bg-base)}.shortcut[data-v-c482e43b]{display:flex;align-items:center;gap:var(--space-xxs);font-size:var(--font-size-xs);color:var(--fg-secondary)}kbd[data-v-c482e43b]{padding:2px var(--space-xs);background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--font-size-xs)}.fade-enter-active[data-v-c482e43b],.fade-leave-active[data-v-c482e43b]{transition:opacity .15s ease}.fade-enter-from[data-v-c482e43b],.fade-leave-to[data-v-c482e43b]{opacity:0}.notification-bell[data-v-6a485848]{position:relative}.bell-button[data-v-6a485848]{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--fg-secondary);cursor:pointer;transition:all var(--transition-fast)}.bell-button[data-v-6a485848]:hover{background:var(--bg-hover);color:var(--fg-primary)}.badge[data-v-6a485848]{position:absolute;top:2px;right:2px;min-width:18px;height:18px;padding:0 4px;background:var(--danger);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border-radius:9px;display:flex;align-items:center;justify-content:center}.dropdown[data-v-6a485848]{position:absolute;top:100%;right:0;margin-top:var(--space-xs);width:360px;max-height:480px;background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;z-index:1000}.dropdown-header[data-v-6a485848]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);border-bottom:var(--border-width-sm) solid var(--border)}.dropdown-header h3[data-v-6a485848]{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:0}.mark-all-btn[data-v-6a485848]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:transparent;border:none;color:var(--accent);font-size:var(--font-size-sm);cursor:pointer;border-radius:var(--radius-sm)}.mark-all-btn[data-v-6a485848]:hover{background:var(--accent-light)}.loading[data-v-6a485848],.empty[data-v-6a485848]{padding:var(--space-xl);text-align:center;color:var(--fg-secondary)}.empty-icon[data-v-6a485848]{opacity:var(--opacity-30);margin-bottom:var(--space-sm)}.notification-list[data-v-6a485848]{list-style:none;margin:0;padding:0;max-height:360px;overflow-y:auto}.notification-item[data-v-6a485848]{display:flex;align-items:flex-start;border-bottom:var(--border-width-sm) solid var(--border)}.notification-item.unread[data-v-6a485848]{background:var(--accent-light)}.notification-item[data-v-6a485848]:last-child{border-bottom:none}.notification-content[data-v-6a485848]{flex:1;display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:transparent;border:none;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.notification-content[data-v-6a485848]:hover{background:var(--bg-hover)}.icon-wrapper[data-v-6a485848]{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-base);border-radius:var(--radius-full)}.text[data-v-6a485848]{flex:1;display:flex;flex-direction:column;gap:var(--space-2xs);min-width:0}.title[data-v-6a485848]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--fg-primary)}.message[data-v-6a485848]{font-size:var(--font-size-xs);color:var(--fg-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.time[data-v-6a485848]{font-size:var(--font-size-xs);color:var(--fg-tertiary)}.actions[data-v-6a485848]{display:flex;gap:var(--space-2xs);padding:var(--space-sm) var(--space-xs)}.action-btn[data-v-6a485848]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--fg-secondary);cursor:pointer;opacity:0;transition:all var(--transition-fast)}.notification-item:hover .action-btn[data-v-6a485848]{opacity:1}.action-btn[data-v-6a485848]:hover{background:var(--bg-hover);color:var(--fg-primary)}.action-btn.delete[data-v-6a485848]:hover{color:var(--danger)}.dropdown-footer[data-v-6a485848]{padding:var(--space-sm) var(--space-md);border-top:var(--border-width-sm) solid var(--border);text-align:center}.dropdown-footer a[data-v-6a485848]{color:var(--accent);font-size:var(--font-size-sm);text-decoration:none}.dropdown-footer a[data-v-6a485848]:hover{text-decoration:underline}.dropdown-enter-active[data-v-6a485848],.dropdown-leave-active[data-v-6a485848]{transition:all var(--transition-fast)}.dropdown-enter-from[data-v-6a485848],.dropdown-leave-to[data-v-6a485848]{opacity:0;transform:translateY(-8px)}.admin-layout[data-v-fd9f4cee]{min-height:100vh;display:flex;background:var(--bg-base)}.mobile-header[data-v-fd9f4cee]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:var(--bg-surface);border-bottom:var(--border-width-sm) solid var(--border);position:fixed;top:0;left:0;right:0;z-index:50}@media(min-width:768px){.mobile-header[data-v-fd9f4cee]{display:none}}.menu-btn[data-v-fd9f4cee]{display:flex;padding:var(--space-xs);background:none;border:none;color:var(--fg-primary);cursor:pointer}.page-title[data-v-fd9f4cee]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.header-spacer[data-v-fd9f4cee]{width:40px}.sidebar[data-v-fd9f4cee]{position:fixed;top:0;left:0;bottom:0;width:260px;background:var(--bg-surface);border-right:var(--border-width-sm) solid var(--border);display:flex;flex-direction:column;z-index:var(--z-dropdown);transform:translate(-100%);transition:transform var(--transition-normal)}.sidebar.open[data-v-fd9f4cee]{transform:translate(0)}@media(min-width:768px){.sidebar[data-v-fd9f4cee]{transform:translate(0)}}.sidebar-header[data-v-fd9f4cee]{padding:var(--space-md);border-bottom:var(--border-width-sm) solid var(--border);display:flex;flex-direction:column;gap:var(--space-sm)}.header-actions[data-v-fd9f4cee]{display:flex;flex-direction:column;gap:var(--space-sm)}.header-row[data-v-fd9f4cee]{display:flex;align-items:center;gap:var(--space-sm)}.search-btn[data-v-fd9f4cee]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--bg-base);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-md);color:var(--fg-secondary);cursor:pointer;font-size:var(--font-size-sm);transition:all var(--transition-fast)}.search-btn[data-v-fd9f4cee]:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--fg-primary)}.search-btn kbd[data-v-fd9f4cee]{margin-left:auto;padding:2px var(--space-xs);background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.logo[data-v-fd9f4cee]{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--fg-primary);text-decoration:none}.admin-badge[data-v-fd9f4cee]{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--space-2xs) var(--space-xs);background:var(--warning);color:var(--bg-base);border-radius:var(--radius-sm)}.sidebar-nav[data-v-fd9f4cee]{flex:1;padding:var(--space-sm);overflow-y:auto}.nav-item[data-v-fd9f4cee]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);color:var(--fg-secondary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);margin-bottom:var(--space-2xs)}.nav-item[data-v-fd9f4cee]:hover{color:var(--fg-primary);background:var(--bg-overlay)}.nav-item.active[data-v-fd9f4cee]{color:var(--accent);background:var(--accent-light)}.nav-group[data-v-fd9f4cee]{margin-bottom:var(--space-2xs)}.nav-group-header[data-v-fd9f4cee]{width:100%;justify-content:flex-start;border:none;background:none;font-size:inherit}.nav-group-header .chevron[data-v-fd9f4cee]{margin-left:auto;transition:transform var(--transition-fast)}.nav-group-header.expanded .chevron[data-v-fd9f4cee]{transform:rotate(180deg)}.nav-group-items[data-v-fd9f4cee]{margin-left:var(--space-md);padding-left:var(--space-sm);border-left:var(--border-width-sm) solid var(--border)}.nav-subitem[data-v-fd9f4cee]{padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-sm)}.sidebar-footer[data-v-fd9f4cee]{padding:var(--space-md);border-top:var(--border-width-sm) solid var(--border);display:flex;flex-direction:column;gap:var(--space-xs)}.footer-link[data-v-fd9f4cee]{color:var(--fg-secondary);text-decoration:none;font-size:var(--font-size-sm)}.footer-link[data-v-fd9f4cee]:hover{color:var(--fg-primary)}.logout-btn[data-v-fd9f4cee]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs);background:none;border:none;color:var(--fg-secondary);cursor:pointer;font-size:var(--font-size-sm)}.logout-btn[data-v-fd9f4cee]:hover{color:var(--danger)}.backdrop[data-v-fd9f4cee]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-backdrop, rgba(0, 0, 0, .5));z-index:90}@media(min-width:768px){.backdrop[data-v-fd9f4cee]{display:none}}.main[data-v-fd9f4cee]{flex:1;margin-top:60px;overflow-y:auto;height:calc(100vh - 60px)}@media(min-width:768px){.main[data-v-fd9f4cee]{margin-left:260px;margin-top:0;height:100vh}}.main-inner[data-v-fd9f4cee]{padding:var(--space-md)}@media(min-width:768px){.main-inner[data-v-fd9f4cee]{padding:var(--space-lg)}}.auth-layout[data-v-e054d4dd]{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-base);color:var(--fg-primary)}.auth-layout__header[data-v-e054d4dd]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border-bottom:var(--border-width-sm) solid var(--border)}.auth-layout__brand[data-v-e054d4dd]{display:flex;align-items:baseline;gap:var(--space-sm);font-weight:var(--font-weight-semibold)}.auth-layout__logo[data-v-e054d4dd]{font-size:var(--font-size-lg);letter-spacing:.08em;color:var(--fg-primary);text-decoration:none}.auth-layout__logo[data-v-e054d4dd]:hover{color:var(--accent)}.auth-layout__stage[data-v-e054d4dd]{font-size:var(--font-size-xs);text-transform:uppercase;color:var(--fg-secondary)}.auth-layout__body[data-v-e054d4dd]{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-xl)}.auth-layout__content[data-v-e054d4dd]{width:min(400px,100%)}.offline-banner[data-v-ef5d1dfe],.sync-banner[data-v-ef5d1dfe]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:var(--warning);color:#fff;font-size:var(--font-size-sm)}.offline-banner[data-v-ef5d1dfe]{background:var(--danger)}.sync-banner[data-v-ef5d1dfe]{background:var(--info)}.banner-content[data-v-ef5d1dfe]{display:flex;align-items:center;gap:var(--space-sm)}.banner-actions[data-v-ef5d1dfe]{display:flex;align-items:center;gap:var(--space-xs)}.sync-btn[data-v-ef5d1dfe]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-sm);background:#fff3;border:none;border-radius:var(--radius-sm);color:#fff;font-size:var(--font-size-xs);cursor:pointer}.sync-btn[data-v-ef5d1dfe]:hover{background:#ffffff4d}.dismiss-btn[data-v-ef5d1dfe]{padding:var(--space-2xs);background:none;border:none;color:#ffffffb3;cursor:pointer}.dismiss-btn[data-v-ef5d1dfe]:hover{color:#fff}.queue-panel[data-v-ef5d1dfe]{position:fixed;bottom:var(--space-md);right:var(--space-md);background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm);font-size:var(--font-size-sm);z-index:100;max-width:300px}.queue-panel summary[data-v-ef5d1dfe]{cursor:pointer;font-weight:var(--font-weight-medium)}.queue-list[data-v-ef5d1dfe]{margin-top:var(--space-sm);padding-left:var(--space-md)}.queue-list li[data-v-ef5d1dfe]{padding:var(--space-2xs) 0;display:flex;justify-content:space-between}.queue-time[data-v-ef5d1dfe]{font-size:var(--font-size-xs);color:var(--fg-secondary)}.slide-enter-active[data-v-ef5d1dfe],.slide-leave-active[data-v-ef5d1dfe]{transition:all var(--transition-slow) ease}.slide-enter-from[data-v-ef5d1dfe],.slide-leave-to[data-v-ef5d1dfe]{transform:translateY(-100%);opacity:0}.marketing-layout[data-v-2c0596e0]{min-height:100vh;display:flex;background:var(--bg-base)}.mobile-header[data-v-2c0596e0]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:var(--bg-surface);border-bottom:var(--border-width-sm) solid var(--border);position:fixed;top:0;left:0;right:0;z-index:50}@media(min-width:768px){.mobile-header[data-v-2c0596e0]{display:none}}.menu-btn[data-v-2c0596e0]{display:flex;padding:var(--space-xs);background:none;border:none;color:var(--fg-primary);cursor:pointer}.page-title[data-v-2c0596e0]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.mobile-actions[data-v-2c0596e0]{display:flex;align-items:center;gap:var(--space-xs)}.search-btn[data-v-2c0596e0]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--fg-secondary);cursor:pointer;transition:all var(--transition-fast)}.search-btn[data-v-2c0596e0]:hover{background:var(--bg-hover);color:var(--fg-primary)}.header-controls[data-v-2c0596e0]{display:flex;align-items:center;gap:var(--space-xs)}.sidebar[data-v-2c0596e0]{position:fixed;top:0;left:0;bottom:0;width:260px;background:var(--bg-surface);border-right:var(--border-width-sm) solid var(--border);display:flex;flex-direction:column;z-index:var(--z-dropdown);transform:translate(-100%);transition:transform var(--transition-normal)}.sidebar.open[data-v-2c0596e0]{transform:translate(0)}@media(min-width:768px){.sidebar[data-v-2c0596e0]{transform:translate(0)}}.sidebar-header[data-v-2c0596e0]{padding:var(--space-md);border-bottom:var(--border-width-sm) solid var(--border);display:flex;flex-direction:column;gap:var(--space-sm)}.logo[data-v-2c0596e0]{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--fg-primary);text-decoration:none}.marketing-badge[data-v-2c0596e0]{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--space-2xs) var(--space-xs);background:var(--accent);color:#fff;border-radius:var(--radius-sm)}.sidebar-nav[data-v-2c0596e0]{flex:1;padding:var(--space-sm);overflow-y:auto}.nav-item[data-v-2c0596e0]{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);color:var(--fg-secondary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);margin-bottom:var(--space-2xs)}.nav-item[data-v-2c0596e0]:hover{color:var(--fg-primary);background:var(--bg-overlay)}.nav-item.active[data-v-2c0596e0]{color:var(--accent);background:var(--accent-light)}.sidebar-footer[data-v-2c0596e0]{padding:var(--space-md);border-top:var(--border-width-sm) solid var(--border);display:flex;flex-direction:column;gap:var(--space-xs)}.footer-link[data-v-2c0596e0]{color:var(--fg-secondary);text-decoration:none;font-size:var(--font-size-sm)}.footer-link[data-v-2c0596e0]:hover{color:var(--fg-primary)}.logout-btn[data-v-2c0596e0]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs);background:none;border:none;color:var(--fg-secondary);cursor:pointer;font-size:var(--font-size-sm)}.logout-btn[data-v-2c0596e0]:hover{color:var(--danger)}.backdrop[data-v-2c0596e0]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:90}@media(min-width:768px){.backdrop[data-v-2c0596e0]{display:none}}.main[data-v-2c0596e0]{flex:1;margin-top:60px;overflow-y:auto;height:calc(100vh - 60px)}@media(min-width:768px){.main[data-v-2c0596e0]{margin-left:260px;margin-top:0;height:100vh}}.main-inner[data-v-2c0596e0]{padding:var(--space-md)}@media(min-width:768px){.main-inner[data-v-2c0596e0]{padding:var(--space-lg)}}.minimal-layout[data-v-0bc29b07]{min-height:100vh}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-fast)}.fade-enter-from,.fade-leave-to{opacity:0}.app-root{display:flex;height:100vh;height:100dvh;overflow:hidden}.app-content{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:column}:root{--bg-base: #0b0f14;--bg-surface: #121826;--bg-overlay: #0f172a;--fg-primary: #e5e7eb;--fg-secondary: #9ca3af;--fg-tertiary: #6b7280;--fg-on-accent: #ffffff;--fg-on-overlay: rgba(255, 255, 255, .9);--border: #1f2937;--border-subtle: #1e293b;--accent: #22d3ee;--accent-hover: #06b6d4;--accent-light: rgba(34, 211, 238, .1);--accent-2: rgba(34, 211, 238, .02);--accent-4: rgba(34, 211, 238, .04);--accent-6: rgba(34, 211, 238, .06);--accent-8: rgba(34, 211, 238, .08);--accent-10: rgba(34, 211, 238, .1);--accent-12: rgba(34, 211, 238, .12);--accent-15: rgba(34, 211, 238, .15);--accent-16: rgba(34, 211, 238, .16);--accent-20: rgba(34, 211, 238, .2);--accent-30: rgba(34, 211, 238, .3);--accent-40: rgba(34, 211, 238, .4);--accent-50: rgba(34, 211, 238, .5);--accent-60: rgba(34, 211, 238, .6);--success: #22c55e;--success-hover: #16a34a;--warning: #f59e0b;--warning-hover: #d97706;--warning-10: rgba(245, 158, 11, .1);--warning-20: rgba(245, 158, 11, .2);--warning-40: rgba(245, 158, 11, .4);--danger: #ef4444;--danger-hover: #dc2626;--danger-10: rgba(239, 68, 68, .1);--success-10: rgba(34, 197, 94, .1);--success-20: rgba(34, 197, 94, .2);--success-40: rgba(34, 197, 94, .4);--tier-bonded: #D4A017;--gpu-public: #a78bfa;--gpu-private: #f472b6;--medal-bronze: #cd7f32;--medal-silver: #c0c0c0;--medal-gold: #ffd700;--color-white: #ffffff;--color-blue: #3b82f6;--color-pink: #ec4899;--color-purple: #a78bfa;--color-teal: #14b8a6;--color-orange: #f97316;--color-yellow: #eab308;--avatar-red: #E53935;--avatar-purple: #8E24AA;--avatar-deep-purple: #5E35B1;--avatar-indigo: #3949AB;--avatar-blue: #1E88E5;--avatar-teal: #00897B;--avatar-green: #43A047;--avatar-orange: #F4511E;--avatar-brown: #6D4C41;--avatar-blue-grey: #546E7A;--color-youtube: #ff0000;--color-youtube-10: rgba(255, 0, 0, .1);--color-reddit: #ff4500;--color-reddit-10: rgba(255, 69, 0, .1);--color-twitch: #9146ff;--color-twitch-10: rgba(145, 70, 255, .1);--color-discord: #5865f2;--color-discord-10: rgba(88, 101, 242, .1);--color-fish-audio: #6366f1;--color-freesound: #22c55e;--origin-ai: #3a76ba;--origin-unknown: #a2a3a3;--origin-handcrafted: #4A9E6B;--run-outside: #60a5fa;--run-inside: #86efac;--run-racing: #ff5252;--run-pitlane: #ffd43b;--run-circuit-outer: #1a3a8a;--run-circuit-inner: #166534;--color-vision-track: #00ff88;--color-vision-sky: #38bdf8;--color-vision-emerald: #34d399;--color-vision-detect: #ffaa00;--overlay-dark-30: rgba(0, 0, 0, .3);--overlay-dark-50: rgba(0, 0, 0, .5);--overlay-dark-60: rgba(0, 0, 0, .6);--overlay-dark-70: rgba(0, 0, 0, .7);--overlay-dark-80: rgba(0, 0, 0, .8);--color-racing: #22d3ee;--color-trucking: #f472b6;--color-flying: #8b96fa;--color-crashing: #fb923c;--color-railways: #b358fe;--color-marine: #3b82f6;--color-cycling: #f59e0b;--color-outdoor: #22c55e;--color-combat: #dc2626;--color-music: #eab308;--color-maker: #78716c;--color-ttrpg: #f97316;--color-education: #06b6d4;--color-gametable: #8b5cf6;--color-rc: #ef4444;--hub-sim-racing: var(--color-racing);--hub-motorsport: var(--color-racing);--hub-flight-simming: var(--color-flying);--hub-aviation: var(--color-flying);--hub-sim-trucking: var(--color-trucking);--hub-trucking: var(--color-trucking);--hub-model-railroad: var(--color-railways);--hub-railways: var(--color-railways);--hub-sim-crashing: var(--color-crashing);--hub-marine: var(--color-marine);--hub-cycling: var(--color-cycling);--hub-outdoor: var(--color-outdoor);--hub-combat-sports: var(--color-combat);--hub-music: var(--color-music);--hub-maker: var(--color-maker);--hub-ttrpg: var(--color-ttrpg);--hub-education: var(--color-education);--hub-game-table: var(--color-gametable);--hub-rc: var(--color-rc);--hub-racing: var(--color-racing);--hub-flying: var(--color-flying);--hub-crashing: var(--color-crashing);--hub-railroading: var(--color-railways);--role-engineer: #22c55e;--role-spotter: #ef4444;--role-strategist: #a78bfa;--role-coach: #f59e0b;--role-host: #3b82f6;--role-commentator: #f97316;--role-pilot: #14b8a6;--agent-spotter: var(--role-spotter);--agent-engineer: var(--role-engineer);--agent-strategist: var(--role-strategist);--agent-coach: var(--role-coach);--process-simvox: #06b6d4;--process-sim: #ef4444;--process-other: #6b7280;--density: .65;--space-2xs: calc(2px * var(--density));--space-xs: calc(4px * var(--density));--space-sm: calc(8px * var(--density));--space-md: calc(16px * var(--density));--space-lg: calc(24px * var(--density));--space-xl: calc(32px * var(--density));--space-2xl: calc(48px * var(--density));--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans JP", "Noto Sans KR", "Noto Sans SC", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", Consolas, monospace;--font-size-2xs: calc(.7rem * var(--density) / .65);--font-size-xs: calc(.75rem * var(--density) / .65);--font-size-sm: calc(.875rem * var(--density) / .65);--font-size-base: calc(1rem * var(--density) / .65);--font-size-lg: calc(1.125rem * var(--density) / .65);--font-size-xl: calc(1.25rem * var(--density) / .65);--font-size-2xl: calc(1.5rem * var(--density) / .65);--font-size-3xl: calc(2rem * var(--density) / .65);--font-size-4xl: calc(2.5rem * var(--density) / .65);--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0;--letter-spacing-wide: .05em;--letter-spacing-wider: .5px;--opacity-disabled: .5;--opacity-muted: .6;--opacity-75: .75;--opacity-70: .7;--opacity-50: .5;--opacity-40: .4;--opacity-30: .3;--border-width-sm: 1px;--border-width-md: 2px;--border-width-lg: 3px;--bg-success: color-mix(in oklch, var(--success) 20%, var(--bg-surface));--bg-warning: color-mix(in oklch, var(--warning) 20%, var(--bg-surface));--bg-danger: color-mix(in oklch, var(--danger) 20%, var(--bg-surface));--bg-accent: color-mix(in oklch, var(--accent) 20%, var(--bg-surface));--bg-success-subtle: rgba(34, 197, 94, .15);--bg-success-border: rgba(34, 197, 94, .35);--bg-warning-subtle: rgba(245, 158, 11, .15);--bg-danger-subtle: rgba(239, 68, 68, .15);--bg-accent-subtle: rgba(34, 211, 238, .15);--bg-blue-subtle: rgba(59, 130, 246, .1);--bg-muted-subtle: rgba(148, 163, 184, .18);--bg-white-faint: rgba(255, 255, 255, .03);--bg-slate-overlay: rgba(15, 23, 42, .5);--bg-role-engineer: rgba(34, 197, 94, .15);--bg-role-spotter: rgba(239, 68, 68, .15);--bg-role-strategist: rgba(167, 139, 250, .15);--bg-role-coach: rgba(245, 158, 11, .15);--bg-role-host: rgba(59, 130, 246, .15);--bg-role-commentator: rgba(249, 115, 22, .15);--bg-role-pilot: rgba(20, 184, 166, .15);--bg-agent-spotter: var(--bg-role-spotter);--bg-agent-engineer: var(--bg-role-engineer);--bg-agent-strategist: var(--bg-role-strategist);--bg-agent-coach: var(--bg-role-coach);--bg-hub-sim-racing: rgba(34, 211, 238, .2);--bg-hub-motorsport: rgba(34, 211, 238, .2);--bg-hub-flight-simming: rgba(139, 150, 250, .2);--bg-hub-aviation: rgba(139, 150, 250, .2);--bg-hub-sim-trucking: rgba(244, 114, 182, .2);--bg-hub-model-railroad: rgba(179, 88, 254, .2);--bg-hub-sim-crashing: rgba(251, 146, 60, .2);--bg-hub-marine: rgba(59, 130, 246, .2);--bg-hub-cycling: rgba(245, 158, 11, .2);--bg-hub-outdoor: rgba(34, 197, 94, .2);--bg-hub-combat-sports: rgba(220, 38, 38, .2);--bg-hub-music: rgba(234, 179, 8, .2);--bg-hub-maker: rgba(120, 113, 108, .2);--bg-hub-ttrpg: rgba(249, 115, 22, .2);--bg-hub-education: rgba(6, 182, 212, .2);--bg-hub-game-table: rgba(139, 92, 246, .2);--bg-hub-rc: rgba(239, 68, 68, .2);--bg-hub-racing: var(--bg-hub-sim-racing);--bg-hub-trucking: var(--bg-hub-sim-trucking);--bg-hub-flying: var(--bg-hub-flight-simming);--bg-hub-crashing: var(--bg-hub-sim-crashing);--bg-hub-railroading: var(--bg-hub-model-railroad);--size-icon-xs: 12px;--size-icon-sm: 16px;--size-icon-md: 24px;--size-icon-lg: 32px;--size-icon-xl: 48px;--size-dot: 6px;--size-status-dot: 8px;--size-avatar-sm: 32px;--size-avatar-md: 40px;--size-avatar-lg: 48px;--size-avatar-xl: 64px;--size-avatar-2xl: 90px;--size-timeline-track: 8px;--size-timeline-playhead: 16px;--size-timeline-flag-width: 4px;--size-timeline-flag-height: 16px;--size-timeline-marker: 10px;--size-animation-box: 60px;--size-spacing-label: 60px;--size-chart-height: 120px;--size-sidebar-width: 240px;--size-toolbar-search: 200px;--size-toolbar-divider: 24px;--size-context-menu: 200px;--size-empty-icon: 48px;--size-modal-max-width: 512px;--size-list-dot: 6px;--size-list-number-width: 24px;--size-slider-thumb: 16px;--border-width-slider-thumb: 2px;--size-control-sm: 32px;--size-control-md: 40px;--size-control-lg: 48px;--size-menu-expanded: 170px;--size-menu-collapsed: 60px;--size-menu-logo-area: 53px;--size-pane-width: 320px;--size-pane-min-width: 250px;--size-pane-max-width: 1500px;--bg-hover: rgba(255, 255, 255, .08);--bg-hover-white-subtle: color-mix(in oklch, white 5%, transparent);--bg-hover-white-faint: color-mix(in oklch, white 2%, transparent);--bg-overlay-dark: color-mix(in oklch, black 20%, transparent);--bg-overlay-dark-subtle: color-mix(in oklch, black 10%, transparent);--bg-scrim: rgba(0, 0, 0, .6);--bg-scrim-heavy: rgba(0, 0, 0, .9);--bg-glass-light: rgba(255, 255, 255, .2);--bg-glass-light-hover: rgba(255, 255, 255, .3);--blur-sm: 4px;--blur-md: 8px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-3xl: 24px;--radius-full: 9999px;--shadow-1: 0 2px 8px rgba(0, 0, 0, .2);--shadow-2: 0 6px 20px rgba(0, 0, 0, .24);--shadow-3: 0 12px 32px rgba(0, 0, 0, .28);--transition-fast: .1s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--transition-page: .8s;--transition-slide-distance: 40px;--z-base: 0;--z-modal: 200;--z-shelf: 300;--z-toast: 300;--z-dropdown: 350;--z-tooltip: 400;--z-overlay: 500;--z-cursor: 600;--focus-ring-width: 2px;--focus-ring-offset: 2px;--focus-ring-color: var(--accent);--scrollbar-width-thin: 6px;--scrollbar-track-color: transparent;--scrollbar-thumb-color: rgba(255, 255, 255, .16);--scrollbar-thumb-hover-color: rgba(255, 255, 255, .28);--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-decelerate: cubic-bezier(0, 0, .2, 1);--ease-accelerate: cubic-bezier(.4, 0, 1, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--motion-reduce-multiplier: 1}@media(prefers-reduced-motion:reduce){:root{--motion-reduce-multiplier: .01}}[data-theme=light]{--bg-base: #f8fafc;--bg-surface: #ffffff;--bg-overlay: #f1f5f9;--fg-primary: #1e293b;--fg-secondary: #64748b;--fg-tertiary: #94a3b8;--border: #e2e8f0;--border-subtle: #cbd5e1;--bg-hover: rgba(0, 0, 0, .05);--accent-light: rgba(34, 211, 238, .15)}[data-density=compact]{--density: .5}[data-density=normal]{--density: .65}[data-density=comfortable]{--density: .85}[data-hub=sim-racing],[data-hub=motorsport]{--accent: var(--color-racing);--accent-hover: #06b6d4}[data-hub=flight-simming],[data-hub=aviation]{--accent: var(--color-flying);--accent-hover: #727de0}[data-hub=sim-trucking],[data-hub=trucking]{--accent: var(--color-trucking);--accent-hover: #ec4899}[data-hub=model-railroad],[data-hub=railways]{--accent: var(--color-railways);--accent-hover: #9a3fe5}[data-hub=sim-crashing]{--accent: var(--color-crashing);--accent-hover: #f97316}[data-hub=marine]{--accent: var(--color-marine);--accent-hover: #2563eb}[data-hub=cycling]{--accent: var(--color-cycling);--accent-hover: #d97706}[data-hub=outdoor]{--accent: var(--color-outdoor);--accent-hover: #16a34a}[data-hub=combat-sports]{--accent: var(--color-combat);--accent-hover: #b91c1c}[data-hub=music]{--accent: var(--color-music);--accent-hover: #ca8a04}[data-hub=maker]{--accent: var(--color-maker);--accent-hover: #57534e}[data-hub=ttrpg]{--accent: var(--color-ttrpg);--accent-hover: #ea580c}[data-hub=education]{--accent: var(--color-education);--accent-hover: #0891b2}[data-hub=game-table]{--accent: var(--color-gametable);--accent-hover: #7c3aed}[data-hub=rc]{--accent: var(--color-rc);--accent-hover: #dc2626}[data-hub=racing]{--accent: var(--color-racing);--accent-hover: #06b6d4}[data-hub=flying]{--accent: var(--color-flying);--accent-hover: #727de0}[data-hub=trucking]{--accent: var(--color-trucking);--accent-hover: #ec4899}[data-hub=crashing]{--accent: var(--color-crashing);--accent-hover: #f97316}[data-hub=railroading]{--accent: var(--color-railways);--accent-hover: #9a3fe5}:root{--fg-muted: var(--fg-tertiary);--color-text-primary: var(--fg-primary);--color-text-secondary: var(--fg-secondary);--color-text-muted: var(--fg-tertiary);--text-primary: var(--fg-primary);--bg-elevated: var(--bg-overlay);--bg-tertiary: var(--bg-overlay);--bg-surface-hover: var(--bg-overlay);--bg-surface-raised: var(--bg-overlay);--bg-panel: var(--bg-overlay);--bg-primary: var(--bg-base);--color-surface: var(--bg-surface);--color-background: var(--bg-base);--border-default: var(--border);--border-secondary: var(--border-subtle);--color-border: var(--border);--color-border-light: var(--border-subtle);--primary: var(--accent);--color-primary: var(--accent);--color-accent: var(--accent);--primary-alpha: var(--accent-15);--accent-subtle: var(--accent-15);--accent-muted: var(--accent-15);--error: var(--danger);--color-error: var(--danger);--color-success: var(--success);--danger-light: var(--danger-10);--success-light: var(--success-10);--font-size-md: var(--font-size-base);--space-3xs: var(--space-2xs);--spacing-sm: var(--space-sm);--spacing-md: var(--space-md);--radius-xs: var(--radius-sm);--shadow-lg: var(--shadow-2);--shadow-md: var(--shadow-1);--fg-inverse: var(--fg-on-accent);--fg-primary-inverse: var(--fg-on-accent);--warning-light: var(--warning-10);--info: var(--color-blue);--bg-inset: var(--bg-base);--overlay-dark-10: rgba(0, 0, 0, .1);--overlay-dark-20: rgba(0, 0, 0, .2);--spacing-xs: var(--space-xs);--spacing-lg: var(--space-lg);--spacing-xl: var(--space-xl);--text-secondary: var(--fg-secondary);--text-muted: var(--fg-tertiary);--shadow-sm: var(--shadow-1);--shadow-xl: var(--shadow-3);--bg-hover: var(--accent-10);--color-warning: var(--warning);--color-info: var(--color-blue);--chrome-accent: var(--accent);--chrome-danger: var(--danger);--chrome-warning: var(--warning);--chrome-font-size-base: var(--font-size-base);--chrome-space-sm: var(--space-sm);--chrome-radius-sm: var(--radius-sm);--chrome-bg-overlay: var(--bg-overlay);--chart-revenue: var(--accent);--chart-cogs: #f97316;--chart-opex: #f59e0b;--chart-margin-positive: var(--success);--chart-margin-negative: #e0586a;--chart-burn-free: #c0496b;--chart-revenue-paid: var(--success);--chart-burn-free-fill: rgba(192, 73, 107, .18);--chart-revenue-paid-fill: rgba(34, 197, 94, .14);--funnel-grant: #38bdf8;--funnel-consumed: #fb923c;--funnel-paid: var(--success);--margin-green-cell: rgba(34, 197, 94, .07);--margin-amber-cell: rgba(245, 158, 11, .08);--margin-red-cell: rgba(224, 88, 106, .09);--domain-llm: #a78bfa;--domain-image: #f472b6;--domain-tts: var(--accent);--domain-stt: #3b82f6;--domain-3d: #f59e0b;--domain-video: #f97316}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4}body{margin:0;font-family:var(--font-sans);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}hr{height:0;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--font-mono);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--fg-secondary)}html,body{height:100%;width:100%;overflow:hidden}#app{height:100%;width:100%}body{background:var(--bg-base);color:var(--fg-primary);font-size:var(--font-size-base)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--fg-primary)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}h5,h6{font-size:var(--font-size-base)}p{line-height:var(--line-height-normal);color:var(--fg-secondary)}a{color:var(--accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-hover)}ul,ol{padding-left:var(--space-lg)}li{margin-bottom:var(--space-xs)}code{padding:2px var(--space-xs);background:var(--bg-overlay);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}pre{padding:var(--space-md);background:var(--bg-overlay);border-radius:var(--radius-md);overflow-x:auto}pre code{padding:0;background:transparent}input,textarea,select{background:var(--bg-overlay);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);color:var(--fg-primary);font-size:var(--font-size-base);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input:hover:not(:focus),select:hover:not(:focus){border-color:var(--fg-secondary);background:color-mix(in srgb,var(--bg-overlay) 95%,var(--fg-tertiary))}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}input::placeholder,textarea::placeholder{color:var(--fg-secondary);opacity:.6}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23999' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-sm) center;padding-right:calc(var(--space-md) + var(--space-lg))}select:disabled{opacity:.5;cursor:not-allowed}button{border:none;background:transparent;color:inherit;padding:0;font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.btn{background:var(--accent);color:var(--bg-base);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.btn:hover:not(:disabled){background:var(--accent-hover);filter:brightness(1.1)}hr{border:none;border-top:1px solid var(--border);margin:var(--space-lg) 0}::selection{background:var(--accent);color:var(--bg-base)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.no-select{-webkit-user-select:none;user-select:none}.grid{display:grid;gap:var(--space-md)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-5{grid-template-columns:repeat(5,1fr)}.flex{display:flex}.flex-col{flex-direction:column}.flex-center{align-items:center;justify-content:center}.flex-between{justify-content:space-between}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-fadeIn{animation:fadeIn .2s ease-out}.animate-slideUp{animation:slideUp .2s ease-out}.animate-slideDown{animation:slideDown .2s ease-out}.dots-loader{display:flex;gap:var(--space-xs)}.dots-loader__dot{width:var(--size-dot);height:var(--size-dot);border-radius:var(--radius-full);background:var(--accent);animation:bounce .6s ease-in-out infinite}.dots-loader__dot:nth-child(2){animation-delay:.1s}.dots-loader__dot:nth-child(3){animation-delay:.2s}.skeleton-loader{background:linear-gradient(90deg,var(--bg-overlay) 25%,var(--bg-surface) 50%,var(--bg-overlay) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.skeleton-loader--text{height:1em;width:100%}.skeleton-loader--avatar{width:40px;height:40px;border-radius:var(--radius-full)}.skeleton-loader--card{height:120px;width:100%}.hub-card{background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.hub-card:hover{border-color:var(--accent)}.hub-racing{--hub-color: var(--hub-racing)}.hub-trucking{--hub-color: var(--hub-trucking)}.hub-flying{--hub-color: var(--hub-flying)}.hub-crashing{--hub-color: var(--hub-crashing)}.hub-card.hub-racing:hover{border-color:var(--hub-racing)}.hub-card.hub-trucking:hover{border-color:var(--hub-trucking)}.hub-card.hub-flying:hover{border-color:var(--hub-flying)}.hub-card.hub-crashing:hover{border-color:var(--hub-crashing)}.hub-accent-bar{height:var(--border-width-lg);width:100%;background:var(--hub-color, var(--accent));border-radius:var(--radius-full)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hidden{display:none}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.cursor-grab{cursor:grab}.section-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--fg-primary);padding-bottom:var(--space-sm);border-bottom:var(--border-width-md) solid var(--accent);display:inline-block;margin-bottom:var(--space-lg)}.section-subtitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--accent);margin-bottom:var(--space-md)}.section-description{font-size:var(--font-size-base);color:var(--fg-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-lg)}.page-header{margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:var(--border-width-sm) solid var(--border)}.page-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--fg-primary);margin-bottom:var(--space-xs)}.page-subtitle{font-size:var(--font-size-lg);color:var(--fg-secondary)}.text-gradient{background:linear-gradient(135deg,var(--accent) 0%,var(--hub-flying) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.label{display:inline-block;padding:var(--space-2xs) var(--space-xs);background:var(--accent-light);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--accent);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.label--success{background:var(--bg-success-subtle);color:var(--success)}.label--warning{background:var(--bg-warning-subtle);color:var(--warning)}.label--danger{background:var(--bg-danger-subtle);color:var(--danger)}.icon-wrapper{display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);flex-shrink:0}.icon-wrapper--sm{width:var(--size-icon-sm);height:var(--size-icon-sm)}svg.icon-wrapper--sm{width:var(--size-icon-sm);height:var(--size-icon-sm)}.icon-wrapper--md{width:var(--size-icon-md);height:var(--size-icon-md)}svg.icon-wrapper--md{width:var(--size-icon-md);height:var(--size-icon-md)}.icon-wrapper--lg{width:var(--size-icon-lg);height:var(--size-icon-lg)}.icon-wrapper--xl{width:var(--size-icon-xl);height:var(--size-icon-xl)}.icon-wrapper--accent{background:var(--accent-light);color:var(--accent)}.icon-wrapper--success{background:var(--bg-success-subtle);color:var(--success)}.icon-wrapper--warning{background:var(--bg-warning-subtle);color:var(--warning)}.icon-wrapper--danger{background:var(--bg-danger-subtle);color:var(--danger)}.icon-wrapper--racing{background:var(--bg-hub-racing);color:var(--hub-racing)}.icon-wrapper--trucking{background:var(--bg-hub-trucking);color:var(--hub-trucking)}.icon-wrapper--flying{background:var(--bg-hub-flying);color:var(--hub-flying)}.icon-wrapper--crashing{background:var(--bg-hub-crashing);color:var(--hub-crashing)}.hub-card--interactive{text-align:center}.hub-card--interactive:hover{transform:translateY(-4px)}.hub-card.hub-racing:hover{box-shadow:0 12px 32px var(--bg-hub-racing)}.hub-card.hub-trucking:hover{box-shadow:0 12px 32px var(--bg-hub-trucking)}.hub-card.hub-flying:hover{box-shadow:0 12px 32px var(--bg-hub-flying)}.hub-card.hub-crashing:hover{box-shadow:0 12px 32px var(--bg-hub-crashing)}.color-swatch{background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md);transition:border-color var(--transition-fast)}.color-swatch:hover{border-color:var(--accent)}.color-box{width:100%;height:60px;border-radius:var(--radius-md);margin-bottom:var(--space-sm);border:var(--border-width-sm) solid var(--border)}.color-name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);margin-bottom:var(--space-2xs)}.color-value{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--fg-secondary)}.divider{height:1px;background:var(--border);margin:var(--space-lg) 0}.divider--vertical{width:1px;height:100%;margin:0 var(--space-md)}.mt-xs{margin-top:var(--space-xs)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-xs{margin-bottom:var(--space-xs)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.mb-2xl{margin-bottom:var(--space-2xl)}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.p-2xl{padding:var(--space-2xl)}.pt-0{padding-top:0}.w-full{width:100%}.h-full{height:100%}.min-w-0{min-width:0}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.box{background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-lg)}.box--overlay{background:var(--bg-overlay)}.box--base{background:var(--bg-base)}.box--no-border{border:none}.box--rounded-sm{border-radius:var(--radius-sm)}.box--rounded-md{border-radius:var(--radius-md)}.box--rounded-lg{border-radius:var(--radius-lg)}.box--rounded-xl{border-radius:var(--radius-xl)}.box--overflow-hidden{overflow:hidden}.box--hoverable{transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.box--hoverable:hover{border-color:var(--accent);box-shadow:var(--shadow-1)}.box--lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}.panel{background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-lg);padding:var(--space-md)}.panel--sm{padding:var(--space-sm)}.panel--lg{padding:var(--space-lg)}.panel--xl{padding:var(--space-xl)}.showcase{background:var(--bg-surface);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);overflow:hidden}.well{background:var(--bg-overlay);border-radius:var(--radius-md);padding:var(--space-md)}.surface-base{background:var(--bg-base)}.surface-1{background:var(--bg-surface)}.surface-2{background:var(--bg-overlay)}.bordered{border:var(--border-width-sm) solid var(--border)}.bordered--accent{border-color:var(--accent)}.bordered--thick{border-width:var(--border-width-md)}.icon-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-md);color:var(--fg-secondary);transition:all var(--transition-fast)}.icon-btn:hover{background:var(--bg-overlay);border-color:var(--accent);color:var(--accent)}.icon-btn--sm{width:var(--size-icon-sm);height:var(--size-icon-sm)}.icon-btn--md{width:40px;height:40px}.icon-btn--lg{width:var(--size-icon-md);height:var(--size-icon-md)}.icon-btn--primary{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.icon-btn--primary:hover{background:var(--bg-hub-racing)}.form-label{display:block;margin-bottom:var(--space-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--fg-primary)}.form-label--error{color:var(--danger)}.form-group{margin-bottom:var(--space-md)}.alert{padding:var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.alert--info{background:var(--accent-light);border:var(--border-width-sm) solid var(--accent);color:var(--fg-primary)}.alert--success{background:var(--bg-success-subtle);border:var(--border-width-sm) solid var(--success);color:var(--fg-primary)}.alert--warning{background:var(--bg-warning-subtle);border:var(--border-width-sm) solid var(--warning);color:var(--fg-primary)}.alert--danger{background:var(--bg-danger-subtle);border:var(--border-width-sm) solid var(--danger);color:var(--fg-primary)}.alert__title{font-weight:var(--font-weight-semibold);margin-bottom:var(--space-xs)}.mono{font-family:var(--font-mono)}.data-value{font-family:var(--font-mono);color:var(--accent)}.data-label{font-size:var(--font-size-sm);color:var(--fg-secondary)}.text-primary{color:var(--fg-primary)}.text-secondary{color:var(--fg-secondary)}.text-accent{color:var(--accent)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}@media(max-width:1200px){.grid-5{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.grid-2,.grid-3,.grid-4,.grid-5{grid-template-columns:1fr}}.container{max-width:1400px;margin:0 auto;padding:0 var(--space-lg)}.backdrop-blur{-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm))}.status-dot{width:var(--size-status-dot);height:var(--size-status-dot);border-radius:var(--radius-full);display:inline-block}.status-dot--success{background:var(--success)}.status-dot--warning{background:var(--warning)}.status-dot--danger{background:var(--danger)}.status-dot--accent{background:var(--accent)}.status-dot--pulse{animation:pulse 2s ease-in-out infinite}.role-card{background:var(--bg-surface);border-radius:var(--radius-lg);border:var(--border-width-sm) solid var(--border);padding:var(--space-md);transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.role-card:hover{border-color:var(--border)}.role-card--spotter{border-color:color-mix(in oklch,var(--role-spotter) 30%,transparent)}.role-card--spotter:hover{border-color:var(--role-spotter);box-shadow:0 0 20px var(--bg-role-spotter)}.role-card--engineer{border-color:color-mix(in oklch,var(--role-engineer) 30%,transparent)}.role-card--engineer:hover{border-color:var(--role-engineer);box-shadow:0 0 20px var(--bg-role-engineer)}.role-card--strategist{border-color:color-mix(in oklch,var(--role-strategist) 30%,transparent)}.role-card--strategist:hover{border-color:var(--role-strategist);box-shadow:0 0 20px var(--bg-role-strategist)}.role-card--coach{border-color:color-mix(in oklch,var(--role-coach) 30%,transparent)}.role-card--coach:hover{border-color:var(--role-coach);box-shadow:0 0 20px var(--bg-role-coach)}.role-card--host{border-color:color-mix(in oklch,var(--role-host) 30%,transparent)}.role-card--host:hover{border-color:var(--role-host);box-shadow:0 0 20px var(--bg-role-host)}.role-card--commentator{border-color:color-mix(in oklch,var(--role-commentator) 30%,transparent)}.role-card--commentator:hover{border-color:var(--role-commentator);box-shadow:0 0 20px var(--bg-role-commentator)}.text-role-spotter{color:var(--role-spotter)}.text-role-engineer{color:var(--role-engineer)}.text-role-strategist{color:var(--role-strategist)}.text-role-coach{color:var(--role-coach)}.text-role-host{color:var(--role-host)}.text-role-commentator{color:var(--role-commentator)}.bg-role-spotter{background:var(--bg-role-spotter)}.bg-role-engineer{background:var(--bg-role-engineer)}.bg-role-strategist{background:var(--bg-role-strategist)}.bg-role-coach{background:var(--bg-role-coach)}.bg-role-host{background:var(--bg-role-host)}.bg-role-commentator{background:var(--bg-role-commentator)}.role-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.role-badge--spotter{background:var(--bg-role-spotter);color:var(--role-spotter)}.role-badge--engineer{background:var(--bg-role-engineer);color:var(--role-engineer)}.role-badge--strategist{background:var(--bg-role-strategist);color:var(--role-strategist)}.role-badge--coach{background:var(--bg-role-coach);color:var(--role-coach)}.role-badge--host{background:var(--bg-role-host);color:var(--role-host)}.role-badge--commentator{background:var(--bg-role-commentator);color:var(--role-commentator)}.toggle{display:flex;justify-content:center;cursor:pointer}.toggle input{display:none}.toggle__slider{position:relative;width:40px;height:22px;background:var(--bg-overlay);border:var(--border-width-sm) solid var(--border);border-radius:var(--radius-full);transition:background var(--transition-fast),border-color var(--transition-fast)}.toggle__slider:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--fg-tertiary);border-radius:50%;transition:transform var(--transition-fast),background var(--transition-fast)}.toggle:hover .toggle__slider{border-color:var(--fg-secondary);background:color-mix(in srgb,var(--bg-overlay) 80%,var(--fg-tertiary))}.toggle input:checked+.toggle__slider{background:var(--accent);border-color:var(--accent)}.toggle input:checked+.toggle__slider:after{transform:translate(18px);background:var(--bg-base)}.toggle:hover input:checked+.toggle__slider{background:color-mix(in srgb,var(--accent) 80%,white);border-color:color-mix(in srgb,var(--accent) 70%,white);box-shadow:0 0 6px color-mix(in srgb,var(--accent) 35%,transparent)}.toggle--lg .toggle__slider{width:48px;height:24px}.toggle--lg .toggle__slider:after{width:18px;height:18px;top:2px;left:2px}.toggle--lg input:checked+.toggle__slider:after{transform:translate(24px)}
