@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400&display=swap');

/* 1. 背景与全局设置 */
body { 
    font-family: 'Inter', sans-serif; 
    background: url('https://t.alcy.cc/pc') no-repeat center center fixed; 
    background-size: cover;
    overflow: hidden;
}
.app-overlay {
    position: fixed; inset: 0; background: rgba(243, 244, 246, 0.05); z-index: -1; backdrop-filter: blur(1px);
}

/* 2. 登录容器 (关键修复：强制 Flex 居中) */
#loginWrapper {
    position: fixed; inset: 0; 
    z-index: 9999;
    background: rgba(0, 0, 0, 0.6); 
    backdrop-filter: blur(8px);
    
    /* 核心修复：由 CSS 控制居中布局 */
    display: flex; 
    align-items: center; 
    justify-content: center;
}

/* 3. 隐藏辅助类 (用于 JS 切换) */
.hidden-force {
    display: none !important;
}

/* 4. 日志与组件样式 */
.log-console { background-color: #1e1e1e; color: #abb2bf; font-family: 'JetBrains Mono', monospace; font-size: 13px; line-height: 1.6; }
.log-line { padding: 2px 8px; border-bottom: 1px solid rgba(255,255,255,0.05); }
.log-line:hover { background-color: rgba(255,255,255,0.08); }

.hl-time { color: #5c6370; margin-right: 8px; font-size: 12px; }
.hl-account { color: #61afef; font-weight: bold; }
.hl-course { color: #e5c07b; }
.hl-success { color: #98c379; font-weight: bold; }
.hl-error { color: #e06c75; font-weight: bold; }
.hl-info { color: #56b6c2; }

.fade-in { animation: fadeIn 0.3s ease-out; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }

::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }

.nav-item.active { background: linear-gradient(135deg, #2563eb, #1d4ed8); color: white; box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3); }
.toggle-checkbox:checked { right: 0; border-color: #10b981; }
.toggle-checkbox:checked + .toggle-label { background-color: #10b981; }
.course-card.selected { border-color: #3b82f6; background-color: #eff6ff; }
.progress-bar { transition: width 1s ease-in-out; }