:root[data-theme="dark"] {
	--hf-body-bg: var(--hf-dark-bg, #0a1220);
	--hf-surface: #101c30;
	--hf-surface-2: #16233a;
	--hf-surface-3: #1d2c47;
	--hf-text: #e7edf8;
	--hf-text-muted: #a8b6cd;
	--hf-text-faint: #7f8ea8;
	--hf-border: #22314d;
	--hf-border-strong: #2e3f5f;
	--hf-shadow: 0 14px 34px -18px rgba(0, 0, 0, 0.85);
	--hf-shadow-lg: 0 30px 70px -30px rgba(0, 0, 0, 0.95);
	--hf-glass: rgba(16, 28, 48, 0.78);
	--hf-header-bg: rgba(10, 18, 32, 0.9);
	--hf-topbar-bg: linear-gradient(90deg, #050d18, #0b1a2c 55%, #06301f);
	--hf-primary-light: #63d095;
	color-scheme: dark;
}

:root[data-theme="dark"] body {
	background-image:
		radial-gradient(circle at 10% -10%, rgba(11, 122, 62, 0.22), transparent 45%),
		radial-gradient(circle at 92% 4%, rgba(245, 179, 1, 0.14), transparent 42%);
}

:root[data-theme="dark"] .hf-btn--ghost {
	color: var(--hf-primary-light);
	border-color: var(--hf-border-strong);
}

:root[data-theme="dark"] .hf-btn--ghost:hover {
	background: var(--hf-surface-3);
	color: #fff;
}

:root[data-theme="dark"] .hf-icon-btn {
	background: var(--hf-surface-2);
	border-color: var(--hf-border);
	color: var(--hf-text);
}

:root[data-theme="dark"] .hf-badge:not(.hf-badge--primary):not(.hf-badge--cat) {
	background: var(--hf-surface-2);
	color: var(--hf-text-muted);
}

:root[data-theme="dark"] .hf-card,
:root[data-theme="dark"] .hf-widget,
:root[data-theme="dark"] .hf-page,
:root[data-theme="dark"] .hf-comments,
:root[data-theme="dark"] .hf-single,
:root[data-theme="dark"] .hf-value-card,
:root[data-theme="dark"] .hf-staff-card,
:root[data-theme="dark"] .hf-contact-info-card,
:root[data-theme="dark"] .hf-contact-form-col,
:root[data-theme="dark"] .hf-contact-side-col,
:root[data-theme="dark"] .hf-error-card,
:root[data-theme="dark"] .hf-about-intro,
:root[data-theme="dark"] .hf-committee-card,
:root[data-theme="dark"] .hf-video-card,
:root[data-theme="dark"] .hf-notice-card,
:root[data-theme="dark"] .hf-mini-card,
:root[data-theme="dark"] .hf-archive-toolbar,
:root[data-theme="dark"] .hf-link-card {
	background: var(--hf-surface);
	border-color: var(--hf-border);
}

:root[data-theme="dark"] .hf-card-footer,
:root[data-theme="dark"] .hf-mini-card,
:root[data-theme="dark"] .hf-department-list a,
:root[data-theme="dark"] .hf-toc,
:root[data-theme="dark"] .hf-single-attachments,
:root[data-theme="dark"] .hf-comment-body,
:root[data-theme="dark"] .hf-department-card,
:root[data-theme="dark"] .hf-error-suggest,
:root[data-theme="dark"] .hf-fontsize,
:root[data-theme="dark"] .hf-share-btn,
:root[data-theme="dark"] .hf-post-nav-link {
	background: var(--hf-surface-2);
	border-color: var(--hf-border);
}

:root[data-theme="dark"] .hf-card-title a,
:root[data-theme="dark"] .hf-mini-title a,
:root[data-theme="dark"] .hf-widget-item-title a,
:root[data-theme="dark"] .hf-video-title a,
:root[data-theme="dark"] .hf-video-mini-title,
:root[data-theme="dark"] .hf-notice-title,
:root[data-theme="dark"] .hf-committee-title,
:root[data-theme="dark"] .hf-department-list a,
:root[data-theme="dark"] .hf-post-nav-title,
:root[data-theme="dark"] .hf-staff-name,
:root[data-theme="dark"] .hf-contact-info-value,
:root[data-theme="dark"] .hf-department-body h3,
:root[data-theme="dark"] .hf-author-name,
:root[data-theme="dark"] .hf-attachment-body strong {
	color: var(--hf-text);
}

:root[data-theme="dark"] .hf-card-title a:hover,
:root[data-theme="dark"] .hf-mini-title a:hover,
:root[data-theme="dark"] .hf-widget-item-title a:hover,
:root[data-theme="dark"] .hf-video-title a:hover,
:root[data-theme="dark"] .hf-notice-card:hover .hf-notice-title,
:root[data-theme="dark"] .hf-department-list a:hover,
:root[data-theme="dark"] .hf-category-list a:hover {
	color: var(--hf-primary-light);
}

:root[data-theme="dark"] .hf-section:nth-of-type(even) {
	background: linear-gradient(180deg, transparent, rgba(22, 35, 58, 0.55) 30%, rgba(22, 35, 58, 0.55) 70%, transparent);
}

:root[data-theme="dark"] .hf-tabs-nav {
	background: var(--hf-surface);
	border-color: var(--hf-border);
}

:root[data-theme="dark"] .hf-tab.is-active {
	background: linear-gradient(135deg, var(--hf-primary), #0d5c33);
}

:root[data-theme="dark"] .hf-ticker {
	background: var(--hf-surface);
	border-color: var(--hf-border);
}

:root[data-theme="dark"] .hf-ticker::before {
	background: linear-gradient(270deg, transparent, var(--hf-surface) 65%);
}

:root[data-theme="dark"] .hf-ticker-item,
:root[data-theme="dark"] .hf-ticker-all {
	color: var(--hf-text);
	background-color: var(--hf-surface);
}

:root[data-theme="dark"] .hf-search-overlay {
	background: var(--hf-surface);
	border-bottom-color: var(--hf-border);
}

:root[data-theme="dark"] .hf-mobile-panel {
	background: var(--hf-surface);
}

:root[data-theme="dark"] .hf-form input,
:root[data-theme="dark"] .hf-form textarea,
:root[data-theme="dark"] .hf-form select,
:root[data-theme="dark"] .hf-comment-form input,
:root[data-theme="dark"] .hf-comment-form textarea,
:root[data-theme="dark"] .hf-search-inline,
:root[data-theme="dark"] .hf-search-form {
	background: var(--hf-surface-2);
	border-color: var(--hf-border-strong);
	color: var(--hf-text);
}

:root[data-theme="dark"] .hf-search-inline input,
:root[data-theme="dark"] .hf-search-form input {
	background: transparent !important;
	border: 0 !important;
}

:root[data-theme="dark"] .hf-page-links span,
:root[data-theme="dark"] .hf-page-item a,
:root[data-theme="dark"] .hf-page-item span,
:root[data-theme="dark"] .hf-view-switch,
:root[data-theme="dark"] .hf-filter-chip,
:root[data-theme="dark"] .hf-category-count,
:root[data-theme="dark"] .hf-staff-group,
:root[data-theme="dark"] .hf-tag {
	background: var(--hf-surface-2);
	border-color: var(--hf-border);
	color: var(--hf-text-muted);
}

:root[data-theme="dark"] .hf-page-item a:hover,
:root[data-theme="dark"] .hf-filter-chip:hover,
:root[data-theme="dark"] .hf-tag:hover {
	background: var(--hf-primary);
	color: #fff;
	border-color: transparent;
}

:root[data-theme="dark"] .hf-sticky-bar {
	background: var(--hf-surface);
	border-top-color: var(--hf-border);
}

:root[data-theme="dark"] .hf-login-card {
	background: rgba(16, 28, 48, 0.97);
	border-color: var(--hf-border);
}

:root[data-theme="dark"] .hf-login-title {
	color: var(--hf-text);
}

:root[data-theme="dark"] .hf-login-note {
	background: rgba(245, 179, 1, 0.1);
	color: #ffd479;
	border-color: rgba(245, 179, 1, 0.35);
}

:root[data-theme="dark"] .hf-single-lead,
:root[data-theme="dark"] .hf-page-lead {
	background: linear-gradient(120deg, rgba(11, 122, 62, 0.16), rgba(245, 179, 1, 0.1));
	color: var(--hf-text-muted);
}

:root[data-theme="dark"] .hf-rating-box {
	background: linear-gradient(120deg, rgba(245, 179, 1, 0.14), rgba(11, 122, 62, 0.14));
	border-color: var(--hf-border);
}

:root[data-theme="dark"] .hf-entry-content pre {
	background: #050d18;
}

:root[data-theme="dark"] .hf-sponsor-item {
	background: var(--hf-surface);
	border-color: var(--hf-border);
	color: var(--hf-text-muted);
}

:root[data-theme="dark"] .hf-sponsor-item img {
	filter: grayscale(0.2) brightness(1.1);
}

:root[data-theme="dark"] .hf-footer-wave {
	color: #071a2c;
}

:root[data-theme="dark"] .hf-gallery-item,
:root[data-theme="dark"] .hf-card-media,
:root[data-theme="dark"] .hf-mini-thumb,
:root[data-theme="dark"] .hf-widget-thumb {
	background: var(--hf-surface-3);
}

:root[data-theme="dark"] .hf-toast {
	background: #e7edf8;
	color: #0b1626;
}

:root[data-theme="dark"] .hf-toast--success {
	background: linear-gradient(135deg, #22c55e, #14803d);
	color: #04140a;
}

:root[data-theme="dark"] .hf-toast--error {
	background: linear-gradient(135deg, #ef4444, #991b1b);
	color: #fff;
}

:root[data-theme="dark"] img {
	filter: brightness(0.94);
}

:root[data-theme="dark"] .hf-slide-img,
:root[data-theme="dark"] .hf-gallery-trigger img,
:root[data-theme="dark"] .hf-card-thumb img,
:root[data-theme="dark"] .hf-lightbox-media img {
	filter: none;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
		scroll-behavior: auto !important;
	}
}

body.hf-reduce-motion *,
body.hf-reduce-motion *::before,
body.hf-reduce-motion *::after {
	animation-duration: 0.001ms !important;
	animation-iteration-count: 1 !important;
	transition-duration: 0.001ms !important;
}

body.hf-reduce-motion .hf-ticker-track--scroll,
body.hf-reduce-motion .hf-sponsors-row {
	animation: none !important;
}

:root[data-theme="dark"] .hf-like {
	background: var(--hf-surface-2);
	border-color: var(--hf-border);
	color: var(--hf-text-muted);
}

:root[data-theme="dark"] .hf-like.is-liked {
	background: linear-gradient(135deg, rgba(239, 68, 68, 0.22), rgba(245, 179, 1, 0.16));
	color: #ff8fa3;
}
