#navbar{padding:var(--spacing-md)20px;justify-content:space-between;align-items:center;gap:var(--spacing-lg);background-color:var(--navbar-bg);border-bottom:1px solid var(--border-color);flex-direction:row;display:flex}.navbar-left{gap:var(--spacing-lg);flex-direction:row;align-items:center;display:flex}.navbar-right{gap:var(--spacing-md);flex-direction:row;align-items:center;margin-left:auto;display:flex}#navbar a{color:var(--text-primary);transition:color var(--transition-fast);padding:var(--spacing-sm)var(--spacing-md);border-radius:var(--radius-sm);text-decoration:none}#navbar a:hover{cursor:pointer;color:var(--primary-color);background-color:var(--accent-light)}#navbar a.active{color:var(--primary-color);font-weight:600}.settings-link{justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;display:flex;padding:0!important}.navbar-username{color:var(--secondary-color);font-size:.9rem}html[data-theme=project] .navbar-username{color:var(--rust-orange)}.logout-btn{background:var(--primary-color);color:#fff;padding:var(--spacing-sm)var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);border:none;font-size:.9rem}.logout-btn:hover{background:var(--primary-color);opacity:.85}@media (max-width:768px){#navbar{padding:var(--spacing-sm)var(--spacing-sm);gap:var(--spacing-xs);flex-wrap:nowrap;overflow:auto hidden}.navbar-left{gap:var(--spacing-xs);-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:1;min-width:0;display:flex;overflow:auto hidden}.navbar-left::-webkit-scrollbar{display:none}.navbar-right{gap:var(--spacing-xs);margin-left:var(--spacing-sm);flex-shrink:0}#navbar .navbar-left a{white-space:nowrap;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--card-bg);flex-shrink:0;padding:10px 14px;font-size:.9rem}#navbar .navbar-left a.active{border-color:var(--primary-color);background-color:var(--accent-light)}.navbar-username{text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:80px;font-size:.8rem;overflow:hidden}.logout-btn{padding:var(--spacing-xs)var(--spacing-sm);white-space:nowrap;flex-shrink:0;font-size:.8rem}.settings-link{flex-shrink:0;width:32px;height:32px;font-size:1rem}}@media (max-width:480px){#navbar{padding:var(--spacing-xs)var(--spacing-xs)}.navbar-left{gap:2px}#navbar .navbar-left a{padding:8px 10px;font-size:.85rem}.navbar-username{display:none}.logout-btn{padding:var(--spacing-xs);font-size:.75rem}.settings-link{width:28px;height:28px;font-size:.9rem}}.loading-layout{background-color:var(--background-color);justify-content:center;align-items:center;min-height:100vh;display:flex}.loading-container{align-items:center;gap:var(--spacing-lg);flex-direction:column;display:flex}.loading-spinner{border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{color:var(--text-secondary);font-size:1rem}.upload-status-indicator{align-items:center;display:flex;position:relative}.upload-status-indicator .upload-btn{border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--card-bg);cursor:pointer;transition:all var(--transition-fast);color:var(--text-primary);justify-content:center;align-items:center;gap:4px;padding:6px 10px;font-size:.9rem;display:flex}.upload-status-indicator .upload-btn:hover,.upload-status-indicator .upload-btn.uploading{border-color:var(--primary-color);background-color:var(--accent-light)}.upload-status-indicator .upload-btn.uploading .upload-icon{animation:1s ease-in-out infinite upload-pulse}.upload-status-indicator .upload-btn.has-failed{border-color:var(--error-color)}@keyframes upload-pulse{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.6;transform:translateY(-2px)}}.upload-status-indicator .upload-icon{font-size:1rem;font-weight:700}.upload-status-indicator .upload-badge{background-color:var(--primary-color);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.75rem;font-weight:600;display:inline-flex}.upload-status-indicator .upload-badge.failed{background-color:var(--error-color)}.upload-dropdown{min-width:280px;max-width:350px;padding:var(--spacing-md);background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;margin-top:8px;position:absolute;top:100%;right:0}.upload-dropdown h4{margin:0 0 var(--spacing-sm)0;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:.95rem}.upload-dropdown .upload-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm)0;border-bottom:1px solid var(--border-color);display:flex}.upload-dropdown .upload-item:last-of-type{border-bottom:none}.upload-dropdown .upload-item-icon{text-align:center;width:20px;font-size:1rem}.upload-dropdown .upload-item.uploading .upload-item-icon{color:var(--primary-color);animation:1s ease-in-out infinite upload-pulse}.upload-dropdown .upload-item.pending .upload-item-icon{color:var(--text-secondary)}.upload-dropdown .upload-item.completed .upload-item-icon{color:var(--success-color)}.upload-dropdown .upload-item.failed .upload-item-icon{color:var(--error-color)}.upload-dropdown .upload-item-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.85rem;overflow:hidden}.upload-dropdown .upload-item-status{color:var(--text-secondary);font-size:.8rem}.upload-dropdown .upload-dropdown-close{width:100%;margin-top:var(--spacing-sm);padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;font-size:.85rem;display:block}.upload-dropdown .upload-dropdown-close:hover{background-color:var(--accent-light);color:var(--text-primary)}@media (max-width:768px){.upload-status-indicator .upload-btn{padding:6px 8px;font-size:.85rem}.upload-dropdown{border-radius:var(--radius-lg)var(--radius-lg)0 0;max-width:none;margin-top:0;position:fixed;inset:auto 0 0}}@media (max-width:480px){.upload-status-indicator .upload-btn{padding:4px 6px}.upload-status-indicator .upload-badge{min-width:16px;height:16px;font-size:.7rem}}