/**
 * 主题切换：右下角悬浮按钮 + 日间主题覆盖（html.theme-light）
 */

/* 右下角切换按钮 */
.theme-toggle-fab {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 9999;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 2px;
    font-size: 10px;
    font-weight: 600;
    color: #0f172a;
    background: #fff;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.theme-toggle-fab:hover {
    transform: scale(1.06);
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.3);
}
.theme-fab-icon {
    font-size: 22px;
    line-height: 1;
}
.theme-fab-text {
    line-height: 1;
}

/* ========== 日间主题（html.theme-light）========== */

/* 首页 */
html.theme-light body.home-page,
html.theme-light .home-page {
    background: #f1f5f9;
    color: #0f172a;
}
html.theme-light .site-header {
    background: #fff;
    border-bottom-color: #e2e8f0;
}
html.theme-light .site-header-inner .brand { color: #0f172a; }
html.theme-light .site-header-inner .brand-text { color: #0f172a; }
html.theme-light .site-header-inner .brand-badge {
    background: #e2e8f0;
    border-color: #cbd5e1;
    color: #334155;
}
html.theme-light .site-nav-link { color: #475569; }
html.theme-light .site-nav-link:hover { background: #f1f5f9; color: #0f172a; }
html.theme-light .site-actions .btn-ghost {
    color: #475569;
    border-color: #cbd5e1;
    background: #fff;
}
html.theme-light .site-actions .btn-ghost:hover { background: #f1f5f9; }
html.theme-light .site-actions .btn-primary {
    color: #fff;
    background: linear-gradient(135deg, #4f46e5, #2563eb);
}
html.theme-light .hero-kicker { color: #64748b; }
html.theme-light .hero-title { color: #0f172a; }
html.theme-light .hero-desc { color: #475569; }
html.theme-light .highlight { color: #334155; }
html.theme-light .hero-panel .panel-card,
html.theme-light .panel-card {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .panel-head { background: #f8fafc; border-color: #e2e8f0; }
html.theme-light .panel-title { color: #0f172a; }
html.theme-light .panel-pill {
    background: linear-gradient(135deg, #4f46e5, #2563eb);
    border-color: #4f46e5;
    color: #fff;
}
html.theme-light .panel-item {
    background: #f8fafc;
    border-color: #e2e8f0;
}
html.theme-light .panel-icon {
    background: #e0e7ff;
    color: #4f46e5;
}
html.theme-light .panel-name { color: #0f172a; }
html.theme-light .panel-desc { color: #475569; }
html.theme-light .panel-meta { color: #64748b; }
html.theme-light .panel-foot,
html.theme-light .panel-note { color: #475569; }
html.theme-light .section-title { color: #0f172a; }
html.theme-light .section-subtitle { color: #475569; }
html.theme-light .cap-card,
html.theme-light .solution-card,
html.theme-light .security-item {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .cap-card h3,
html.theme-light .solution-card h3 { color: #0f172a; }
html.theme-light .cap-card p,
html.theme-light .solution-card p,
html.theme-light .security-item span { color: #475569; }
html.theme-light .cta-card {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .cta-copy h2 { color: #0f172a; }
html.theme-light .cta-copy p { color: #475569; }
html.theme-light .faq-item {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .faq-q { color: #0f172a; }
html.theme-light .faq-body { color: #475569; }
html.theme-light .site-footer {
    background: #fff;
    border-top-color: #e2e8f0;
}
html.theme-light .footer-logo,
html.theme-light .footer-col-title { color: #0f172a; }
html.theme-light .footer-desc,
html.theme-light .footer-col a,
html.theme-light .footer-icp,
html.theme-light .footer-copy { color: #334155; }
html.theme-light .footer-col a:hover { color: #0f172a; }

/* 登录页 */
html.theme-light body.login-page {
    background: #f1f5f9;
    color: #0f172a;
}
html.theme-light .login-left-title { color: #0f172a; }
html.theme-light .login-left-desc { color: #475569; }
html.theme-light .login-left-features li { color: #334155; }
html.theme-light .login-form-card {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .login-form-card h2 { color: #0f172a; }
html.theme-light .login-form-card .subtitle { color: #475569; }
html.theme-light .login-form-card input {
    background: #fff;
    border-color: #cbd5e1;
    color: #0f172a;
}
html.theme-light .login-form-card input::placeholder { color: #64748b; }
/* 登录页 Tab：登录 / 注册 / 找回密码 */
html.theme-light .login-page .tab-btn {
    color: #475569;
    background: transparent;
}
html.theme-light .login-page .tab-btn:hover {
    color: #0f172a;
    background: rgba(15, 23, 42, 0.06);
}
html.theme-light .login-page .tab-btn.active {
    color: #fff;
    background: linear-gradient(135deg, #4f46e5, #2563eb);
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3);
}
/* 登录页 发送/获取验证码 按钮 */
html.theme-light .login-page .btn-secondary {
    background: #f8fafc !important;
    color: #334155 !important;
    border: 1px solid #cbd5e1;
}
html.theme-light .login-page .btn-secondary:hover {
    background: #f1f5f9 !important;
    border-color: #94a3b8;
    color: #0f172a;
}

/* 用户后台：全局与容器 */
html.theme-light body {
    background: #f1f5f9;
    color: #0f172a;
}
html.theme-light .sidebar {
    background: #f1f5f9;
    border-right-color: #e2e8f0;
    color: #0f172a;
}
html.theme-light .sidebar .logo .brand { color: #0f172a; }
html.theme-light .sidebar .logo .brand-text { color: #0f172a; }
html.theme-light .sidebar .logo .brand-badge {
    background: #e2e8f0;
    border-color: #cbd5e1;
    color: #334155;
}
html.theme-light .sidebar .nav-item a { color: #334155; }
html.theme-light .sidebar .nav-item:hover {
    background: rgba(255, 255, 255, 0.7);
}
html.theme-light .sidebar .nav-item.active {
    background: rgba(255, 255, 255, 0.9);
}
html.theme-light .sidebar .nav-item:hover a,
html.theme-light .sidebar .nav-item.active a { color: #0f172a; }
/* 日间主题：侧栏导航图标改为深色，避免浅底看不清 */
html.theme-light .sidebar .nav-icon {
    opacity: 1;
}
html.theme-light .sidebar .nav-icon-home {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23334155' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E");
}
html.theme-light .sidebar .nav-icon-partition {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23334155' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h5l2 3h9a2 2 0 012 2z'/%3E%3Cline x1='12' y1='11' x2='12' y2='17'/%3E%3C/svg%3E");
}
html.theme-light .sidebar .nav-icon-parse {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23334155' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E");
}
html.theme-light .sidebar .nav-icon-profile {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23334155' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 00-4-4H8a4 4 0 00-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
}
/* 悬停/选中时图标与文字同深色 */
html.theme-light .sidebar .nav-item:hover .nav-icon-home,
html.theme-light .sidebar .nav-item.active .nav-icon-home {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 01-2 2H5a2 2 0 01-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E");
}
html.theme-light .sidebar .nav-item:hover .nav-icon-partition,
html.theme-light .sidebar .nav-item.active .nav-icon-partition {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 19a2 2 0 01-2 2H4a2 2 0 01-2-2V5a2 2 0 012-2h5l2 3h9a2 2 0 012 2z'/%3E%3Cline x1='12' y1='11' x2='12' y2='17'/%3E%3C/svg%3E");
}
html.theme-light .sidebar .nav-item:hover .nav-icon-parse,
html.theme-light .sidebar .nav-item.active .nav-icon-parse {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71'/%3E%3C/svg%3E");
}
html.theme-light .sidebar .nav-item:hover .nav-icon-profile,
html.theme-light .sidebar .nav-item.active .nav-icon-profile {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f172a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 00-4-4H8a4 4 0 00-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
}
html.theme-light .main-content .page-footer,
html.theme-light body .page-footer {
    background: #fff;
    border-top-color: #e2e8f0;
}
html.theme-light .main-content .footer-content,
html.theme-light body .footer-content { color: #334155; }
html.theme-light .main-content .footer-content a,
html.theme-light body .footer-content a { color: #334155; }
html.theme-light .top-header {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .dashboard-welcome,
html.theme-light .profile-page-title,
html.theme-light .parse-page-title { color: #0f172a; }
html.theme-light .partition-form {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .partition-form h2 { color: #0f172a; }
html.theme-light .partition-form label,
html.theme-light .partition-form .form-group label { color: #334155; }
html.theme-light .partition-form input,
html.theme-light .partition-form select,
html.theme-light .partition-form textarea {
    background: #fff;
    border-color: #cbd5e1;
    color: #0f172a;
}
html.theme-light .partition-form input::placeholder,
html.theme-light .partition-form textarea::placeholder { color: #64748b; }
html.theme-light .partition-form .no-selection { color: #64748b; }
html.theme-light .partition-info-right {
    background: #f8fafc;
    border-color: #e2e8f0;
}
html.theme-light .partition-info-display .partition-info-placeholder { color: #64748b; }
html.theme-light .partition-info-display .partition-info-title,
html.theme-light .partition-info-activate-title { color: #0f172a; }
html.theme-light .partition-info-display .partition-info-item { color: #334155; }
html.theme-light .partition-info-display .partition-info-item strong { color: #0f172a; }
html.theme-light .partition-info-edit .partition-info-name-row label { color: #0f172a; }
html.theme-light .partition-info-edit input,
html.theme-light .partition-info-edit .partition-info-cdk-row input {
    background: #fff;
    border-color: #cbd5e1;
    color: #0f172a;
}
html.theme-light .partition-preview-box {
    background: #f8fafc;
    border-color: #e2e8f0;
}
html.theme-light .partition-preview-label { color: #334155; }
html.theme-light .section-card {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .section-card-title {
    background: #f8fafc;
    border-bottom-color: #e2e8f0;
    color: #0f172a;
}
html.theme-light .stat-card {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .stat-card-label { color: #64748b; }
html.theme-light .stat-card-value { color: #0f172a; }
html.theme-light .chart-container {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .chart-container h2 { color: #0f172a; }
html.theme-light .partitions-table-container {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .partitions-table th {
    background: #f8fafc;
    color: #475569;
}
html.theme-light .partitions-table td { color: #334155; }
html.theme-light .partitions-table tbody tr:hover { background: #f8fafc; }
html.theme-light .announcement-item {
    border-color: #e2e8f0;
}
html.theme-light .announcement-item:hover { background: #f8fafc; }
html.theme-light .announcement-date { color: #64748b; }
html.theme-light .announcement-content { color: #334155; }
html.theme-light .ad-item-text {
    border-color: #e2e8f0;
    color: #334155;
}
html.theme-light .ad-item-text:hover { background: #f8fafc; color: #0f172a; }
html.theme-light .empty-tip { color: #64748b; }
html.theme-light .account-main-card {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .account-top-info {
    background: linear-gradient(135deg, #eef2ff 0%, #e0e7ff 100%);
    border-color: #c7d2fe;
}
html.theme-light .account-top-name { color: #0f172a; }
html.theme-light .account-top-item { color: #334155; }
html.theme-light .account-top-item em { color: #64748b; }
html.theme-light .account-top-item strong { color: #0f172a; }
html.theme-light .account-actions-row { border-color: #e2e8f0; }
html.theme-light .account-panel {
    background: #f8fafc;
    border-right-color: #e2e8f0;
}
html.theme-light .account-panel-title { color: #0f172a; }
html.theme-light .account-panel-desc { color: #334155; }
html.theme-light .account-panel .account-form .form-group label { color: #0f172a; }
html.theme-light .account-panel .account-tip { color: #475569; }
html.theme-light .account-panel .account-input,
html.theme-light .account-panel .account-code-input {
    background: #fff;
    border-color: #cbd5e1;
    color: #0f172a;
}
html.theme-light .account-panel .account-input::placeholder,
html.theme-light .account-panel .account-code-input::placeholder { color: #64748b; }
html.theme-light .user-dropdown {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .user-dropdown-header { border-color: #e2e8f0; color: #0f172a; }
html.theme-light .user-dropdown-item { color: #334155; }
html.theme-light .user-dropdown-item:hover { background: #f1f5f9; }
html.theme-light .parse-result-title,
html.theme-light .parse-result-item label { color: #0f172a; }
html.theme-light .parse-result-tip { color: #64748b; }
html.theme-light .parse-result-input {
    background: #fff;
    border-color: #cbd5e1;
    color: #0f172a;
}
html.theme-light .parse-extra-wrap {
    background: #f8fafc;
    border-color: #e2e8f0;
}
html.theme-light .parse-extra-heading { color: #0f172a; }
html.theme-light .parse-extra-json {
    background: #fff;
    border-color: #e2e8f0;
    color: #334155;
}
html.theme-light .parse-desc { color: #64748b; }
html.theme-light .parse-error {
    background: #fef2f2;
    color: #b91c1c;
    border-color: #fecaca;
}
html.theme-light input,
html.theme-light select,
html.theme-light textarea {
    background: #fff !important;
    border-color: #cbd5e1 !important;
    color: #0f172a !important;
}
html.theme-light input::placeholder,
html.theme-light textarea::placeholder { color: #64748b !important; }
html.theme-light select option {
    background: #fff;
    color: #0f172a;
}
html.theme-light .partition-selector label { color: #334155; }
html.theme-light .stats-cards-section .section-card-title { color: #0f172a; }
html.theme-light .recent-partitions h2 { color: #0f172a; }
html.theme-light .no-data { color: #64748b; }
html.theme-light .account-card-block { border-color: #e2e8f0; }
html.theme-light .account-card-block .section-card-title { color: #0f172a; }
html.theme-light .account-info-item { border-color: #e2e8f0; }
html.theme-light .account-info-label { color: #334155; }
html.theme-light .account-info-value { color: #0f172a; }
html.theme-light .account-hero-name,
html.theme-light .account-hero-meta { color: #0f172a; }
html.theme-light .form-section h3 { color: #0f172a; }
html.theme-light .announcement-detail-inline {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .announcement-label.important { color: #b91c1c; }
html.theme-light .announcement-label.system { color: #1d4ed8; }
html.theme-light .announcement-label.update { color: #047857; }

/* 文档页 */
html.theme-light body.doc-page {
    background: #f1f5f9;
    color: #0f172a;
}
html.theme-light .doc-page .doc-header {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .doc-page .doc-header h1 { color: #0f172a; }
html.theme-light .doc-page .doc-header a { color: #334155; }
html.theme-light .doc-page .doc-content {
    background: #fff;
    border-color: #e2e8f0;
}
html.theme-light .doc-page .doc-content h2 { color: #0f172a; border-color: #e2e8f0; }
html.theme-light .doc-page .doc-content p,
html.theme-light .doc-page .doc-content li { color: #334155; }

/* 日间主题下悬浮按钮样式 */
html.theme-light .theme-toggle-fab {
    background: #0f172a;
    color: #fff;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.35);
}
