/**
 * Moduuli: 14-dark-mode.css
 * Description: Tumman teeman värit ja ylikirjoitukset.
 * Version: 1.0
 */

body.dark-theme {
    background-color: #1a1a1a;
    color: #e0e0e0;
}
body.dark-theme #site-header-sticky-wrapper {
	background-color: #1a1a1a;
	box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}
body.dark-theme h1, body.dark-theme .site-title, body.dark-theme h2, body.dark-theme h3, body.dark-theme h4, body.dark-theme h5, body.dark-theme h6 {
    color: #f5f5f5;
}
body.dark-theme .site-header {
    border-bottom-color: #333;
}
body.dark-theme .main-navigation a {
    color: #e0e0e0;
}
body.dark-theme .main-navigation a:hover {
	color: #58a6ff;
}
body.dark-theme .main-navigation .sub-menu {
    background-color: #2c2c2c;
    border-color: #444;
}
body.dark-theme .main-navigation .sub-menu a {
    color: #e0e0e0;
}
body.dark-theme .main-navigation .sub-menu a:hover {
	background-color: #444;
	color: #58a6ff;
}
body.dark-theme .site-footer,
body.dark-theme .picks-section {
    background-color: #222;
}
body.dark-theme .kalajokinen-card .card-image-container {
    background-color: #333;
}
body.dark-theme .weather-page-section,
body.dark-theme .tanaan-section {
	background-color: #222;
	border-color: #444;
}
body.dark-theme .weather-page-section h2, body.dark-theme .warning-title,
body.dark-theme .tanaan-section h2,
body.dark-theme .tanaan-box h2 {
	border-bottom-color: #444;
}
body.dark-theme .fmi-data-item, body.dark-theme .hourly-item, body.dark-theme .forecast-day {
	background-color: #2c2c2c;
	border-color: #444;
}
body.dark-theme .forecast-extra {
	border-top-color: #444;
}
body.dark-theme .photo-summary {
	color: #aaa;
}

/* Ajankohtaista-palkki */
body.dark-theme .ajankohtaista-palkki {
	background-color: #664e1e; /* Korjattu ruskehtava keltainen */
	border-bottom-color: #806126;
}
body.dark-theme .ajankohtaista-otsikko,
body.dark-theme .ajankohtaista-linkit a {
	color: #f5c6cb;
}

body.dark-theme .search-overlay {
    background-color: rgba(26, 26, 26, 0.98);
}
body.dark-theme .close-search-btn {
    color: #aaa;
}
body.dark-theme .kalajokinen-search-input {
    color: #f5f5f5;
    border-bottom-color: #444;
}
body.dark-theme .kalajokinen-search-input:focus {
    border-bottom-color: #58a6ff;
}
body.dark-theme .search-results-group h3 {
    border-bottom-color: #444;
}
body.dark-theme .search-result-item:hover {
    background-color: #2c2c2c;
}
body.dark-theme .search-result-item .result-title {
    color: #58a6ff;
}
body.dark-theme .search-result-item .result-excerpt {
    color: #aaa;
}
body.dark-theme .search-loader {
    border-color: #444;
    border-top-color: #58a6ff;
}
body.dark-theme .no-results {
    color: #aaa;
}

body.dark-theme .ad-placeholder-wrapper {
	border-color: #444;
	background-color: #222;
	color: #aaa;
}
body.dark-theme .ad-placeholder-wrapper:hover {
	background-color: #2c2c2c;
	border-color: #58a6ff;
}
body.dark-theme .ad-placeholder-size {
	color: #777;
}
body.dark-theme .ad-placeholder-cta {
	color: #58a6ff;
}

body.dark-theme .comment-body {
	border-top-color: #333;
}
body.dark-theme .staff-tag {
	color: #58a6ff;
}
body.dark-theme .comment-metadata,
body.dark-theme .comment-metadata a {
	color: #aaa;
}
body.dark-theme .comment-content blockquote {
	border-left-color: #58a6ff;
	color: #aaa;
}
body.dark-theme .comment-actions button {
	color: #aaa;
}
body.dark-theme .comment-actions button:hover,
body.dark-theme .comment-vote-button.is-active {
	color: #58a6ff;
}
body.dark-theme .comment-status-box {
	background-color: #2c3e50;
	border-left-color: #58a6ff;
}
body.dark-theme .comment-status-box.is-closed {
	background-color: #5c373a;
	border-left-color: #f5c6cb;
	color: #f5c6cb;
}
body.dark-theme .comment-form-comment textarea {
	background-color: #2c2c2c;
	border-color: #555;
	color: #f5f5f5;
}
body.dark-theme .comment-rules-box {
	background-color: #2c3e50;
	border-left-color: #58a6ff;
}
body.dark-theme .logged-in-as {
	color: #aaa;
}

/* OMA TILI & KOMPONENTIT */
body.dark-theme .account-page-nav a:not(.is-active):hover {
	background-color: #2c2c2c;
}
body.dark-theme .account-content-section {
	border-color: #333;
}
body.dark-theme .account-content-section h2 {
	border-bottom-color: #333;
}
body.dark-theme .account-form-row input[type="text"],
body.dark-theme .account-form-row input[type="email"],
body.dark-theme .account-form-row input[type="password"],
body.dark-theme .account-form-row input[type="tel"],
body.dark-theme .account-form-row input[type="textarea"] {
	background-color: #2c2c2c;
	border-color: #555;
	color: #f5f5f5;
}
body.dark-theme .saved-article-item {
	border-bottom-color: #333;
}
body.dark-theme .poll-shortcode-input {
	background-color: #222;
	border-color: #555;
	color: #f5f5f5;
}
body.dark-theme .account-form-row .description {
	color: #aaa;
}
body.dark-theme .gamification-summary {
	background-color: #2c2c2c;
}
body.dark-theme .gamification-summary .total-points {
	color: #58a6ff;
}
body.dark-theme .achievement-badge {
	background-color: #2c2c2c;
	border-color: #444;
}
body.dark-theme .achievement-badge.is-unlocked {
	border-left-color: #28a745;
	background-color: #333;
}
body.dark-theme .achievement-description {
	color: #aaa;
}
body.dark-theme .account-form-checkbox-row .description {
	color: #aaa;
}
body.dark-theme .health-check-item {
	border-color: #444;
	background-color: #2c2c2c;
}
body.dark-theme .health-check-header {
	border-bottom-color: #444;
}
body.dark-theme .health-check-message {
	color: #aaa;
}
body.dark-theme .health-check-progress-bar {
	background-color: #555;
}
body.dark-theme .saved-search-item {
	border-bottom-color: #444;
}
body.dark-theme .saved-search-item:hover {
	background-color: #2c2c2c;
}
body.dark-theme .delete-saved-search-btn {
	background-color: #583c43;
	color: #f5c6cb;
}
body.dark-theme .delete-saved-search-btn:hover {
	background-color: #6d4750;
}

/* Taulukot (Table) */
body.dark-theme table {
	border-color: #444;
	color: #e0e0e0;
}
body.dark-theme table th,
body.dark-theme table td {
	border-color: #444;
	color: #e0e0e0;
}
body.dark-theme table th {
	background-color: #2c2c2c;
}
body.dark-theme table tr:nth-child(2n) {
	background-color: rgba(255, 255, 255, 0.05);
}

/* Äänestyslaatikko */
body.dark-theme .vote-box {
	background-color: #222;
	border-color: #444;
}
body.dark-theme .vote-button {
	background-color: #333;
	border-color: #555;
	color: #f5f5f5;
}
body.dark-theme .vote-button:hover {
	background-color: #444;
}

/* Fonttikoon säädin */
body.dark-theme .font-sizer {
	background-color: #2c2c2c;
}
body.dark-theme .font-sizer-button {
	background-color: #333;
	border-color: #555;
}
body.dark-theme .font-sizer-button svg {
	fill: #f5f5f5;
}
body.dark-theme .font-sizer-label {
	color: #aaa;
}

/* Seuraa-painikkeet */
body.dark-theme .follow-tag-button,
body.dark-theme .follow-category-button {
	background-color: #2c2c2c;
	border-color: #444;
	color: #e0e0e0;
}
body.dark-theme .follow-tag-button:hover,
body.dark-theme .follow-category-button:hover {
	background-color: #333;
}

/* Lomakekentät yleisesti */
body.dark-theme input[type="text"],
body.dark-theme input[type="email"],
body.dark-theme input[type="password"],
body.dark-theme input[type="search"],
body.dark-theme textarea,
body.dark-theme select {
	background-color: #2c2c2c;
	border-color: #555;
	color: #f5f5f5;
}

/* Vimpaimet */
body.dark-theme .kalajokinen-poll-widget .poll-option-button {
	background-color: #333;
	border-color: #555;
	color: #f5f5f5;
}
body.dark-theme .kalajokinen-poll-widget .poll-option-button:hover {
	background-color: #444;
}
body.dark-theme .kalajokinen-poll-widget .poll-total-votes {
	color: #aaa;
}
body.dark-theme .kalajokinen-poll-widget .poll-result-bar-bg {
	background-color: #333;
}
body.dark-theme .kalajokinen-poll-widget .poll-option-text,
body.dark-theme .kalajokinen-poll-widget .poll-result-percentage {
	color: #f5f5f5;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
}
body.dark-theme .kalajokinen-poll-widget .poll-result-bar-fg {
	background-color: #58a6ff;
	opacity: 0.5;
}
body.dark-theme .poll-result-bar-fg.poll-fg-yes {
	background-color: #28a745;
}
body.dark-theme .poll-result-bar-fg.poll-fg-no {
	background-color: #dc3545;
}
body.dark-theme .poll-result-bar-fg.poll-fg-maybe {
	background-color: #ffc107;
}

/* Moderointi */
body.dark-theme .moderation-table th,
body.dark-theme .moderation-table td {
	border-bottom-color: #333;
}
body.dark-theme .moderation-comment-content blockquote {
	border-left-color: #555;
	color: #aaa;
}
body.dark-theme .moderation-author-info {
	color: #aaa;
}
body.dark-theme .moderation-action-btn.keep {
	background-color: #224028;
	color: #a3d9b1;
}
body.dark-theme .moderation-action-btn.keep:hover {
	background-color: #2c5134;
}
body.dark-theme .moderation-action-btn.delete {
	background-color: #583c43;
	color: #f5c6cb;
}
body.dark-theme .moderation-action-btn.delete:hover {
	background-color: #6d4750;
}

/* Header Controls Mobile */
body.dark-theme .mobile-header-controls .theme-switcher-btn,
body.dark-theme .mobile-header-controls .open-search-btn {
	color: #f5f5f5;
}
body.dark-theme #mobile-menu-overlay {
	background-color: rgba(26, 26, 26, 0.98);
}
body.dark-theme .mobile-menu-close .hamburger-inner,
body.dark-theme .mobile-menu-close .hamburger-inner::before,
body.dark-theme .mobile-menu-close .hamburger-inner::after {
	background-color: #f5f5f5;
}
body.dark-theme .mobile-menu-top-bar {
	border-bottom-color: #333;
}
body.dark-theme .mobile-menu-top-bar .top-bar-account a {
	color: #f5f5f5;
}
body.dark-theme .mobile-menu-top-bar .top-bar-social-link {
	color: #f5f5f5;
	opacity: 1;
}
body.dark-theme .mobile-main-nav .menu-item a {
	color: #f5f5f5;
}
body.dark-theme .submenu-toggle {
	color: #f5f5f5;
}
body.dark-theme .mobile-main-nav .sub-menu {
	background-color: rgba(255,255,255,0.05);
}
body.dark-theme .mobile-menu-toggle .hamburger-inner,
body.dark-theme .mobile-menu-toggle .hamburger-inner::before,
body.dark-theme .mobile-menu-toggle .hamburger-inner::after {
	background-color: #f5f5f5;
}
body.dark-theme #reading-progress-bar {
	background-color: #58a6ff;
}
