@import url('https://fonts.googleapis.com/css2?family=Montserrat&display=swap');

/* ===== СТИЛИ ДЛЯ БЛОКА ПОДДЕРЖКИ ===== */
.support-card { transition: all 0.3s ease; }
.support-card:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0,153,255,0.2); border-color: #0099ff; }
.support-description { color: inherit; opacity: 0.8; }

.card-number-frame { border: 1px solid #444; border-radius: 8px; padding: 12px 15px; background: rgba(255,255,255,0.03); transition: all 0.3s ease; }
.card-number-frame:hover { border-color: #0099ff; background: rgba(0,153,255,0.05); }
body.light-theme .card-number-frame { border: 1px solid #ddd; background: rgba(0,0,0,0.02); }
body.light-theme .card-number-frame:hover { border-color: #0099ff; background: rgba(0,153,255,0.05); }
@media (max-width:480px) { .card-number-frame { padding: 10px 12px; } .card-number-frame span { font-size: 18px; letter-spacing: 1px; } }
.card-number { color: #0099ff !important; font-family: 'Courier New', monospace; font-weight: 500; }

.support-card button.download-link { background: #555555 !important; border: none !important; font-family: 'Stolzl', sans-serif !important; font-weight: 500 !important; transition: all 0.3s !important; }
.support-card button.download-link:hover { background: #555566 !important; transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0,153,255,0.4); }
.support-card button.download-link:active { transform: translateY(0); }
.bank-name { color: inherit; font-weight: 600; }
body.light-theme .support-card button.download-link { background: #f0f0f0 !important; color: #333 !important; border: 1px solid #ddd !important; }
body.light-theme .support-card button.download-link:hover { background: #e5e5e5 !important; box-shadow: 0 5px 15px rgba(0,0,0,0.1); }
body.light-theme .card-number { color: #0066cc !important; }

/* ===== ОСНОВНЫЕ СТИЛИ САЙТА ===== */
body { font-family: "Montserrat", Helvetica, Arial, sans-serif; margin: 0; padding: 0; }
a:link, a:active, a:visited { color: #0099ff; text-decoration: none; transition: all 0.3s ease; }
a:hover { color: #ff3333; text-decoration: none; transform: translateY(-2px); }
table { border: 2px solid #ddd; border-radius: 10px; font-size: 1em; vertical-align: top; transition: transform 0.3s ease, box-shadow 0.3s ease; }
.flex-table { width: 50%; border-collapse: collapse; min-width: 600px; border-radius: 15px; overflow: hidden; box-shadow: 0 4px 6px rgba(0,0,0,0.1); transition: box-shadow 0.3s ease; }
.flex-table:hover { box-shadow: 0 8px 15px rgba(0,0,0,0.2); }
tr { vertical-align: top; }
td { padding: 10px 20px; vertical-align: top; transition: background-color 0.3s ease; }

/* Эффекты для кнопок скачивания */
.download-button { display: inline-block; position: relative; overflow: hidden; transition: all 0.4s cubic-bezier(0.4,0,0.2,1); border-radius: 12px; }
.download-button img { transition: all 0.4s cubic-bezier(0.4,0,0.2,1); border-radius: 12px; filter: drop-shadow(0 4px 8px rgba(0,153,255,0.2)); }
.download-button:hover { transform: translateY(-5px) scale(1.05); }
.download-button:hover img { filter: drop-shadow(0 8px 16px rgba(0,153,255,0.4)); transform: scale(1.05); }
.download-button::after { content: ''; position: absolute; top: 50%; left: 50%; width: 0; height: 0; background: radial-gradient(circle, rgba(0,153,255,0.3) 0%, transparent 70%); border-radius: 50%; transform: translate(-50%, -50%); transition: width 0.6s, height 0.6s; }
.download-button:hover::after { width: 200px; height: 200px; }

/* Эффекты для картинок */
.pic { border-radius: 12px; border: 2px solid #ccc; box-shadow: 0 4px 8px rgba(0,0,0,0.15); max-width: 75%; max-height: 75%; transition: all 0.4s cubic-bezier(0.4,0,0.2,1); filter: grayscale(20%); }
.pic:hover { transform: translateY(-8px) scale(1.05); box-shadow: 0 12px 24px rgba(0,153,255,0.3); border-color: #0099ff; filter: grayscale(0%) brightness(1.1); }

/* Эффект подчеркивания ссылок */
.underline-one { color: #0099ff; position: relative; cursor: pointer; text-decoration: none; transition: color 0.3s ease, transform 0.3s ease; display: inline-block; }
.underline-one::after { content: ""; position: absolute; width: 0; height: 3px; bottom: -5px; left: 0; background: linear-gradient(90deg, #0099ff, #ff3333); transition: width 0.4s cubic-bezier(0.4,0,0.2,1); border-radius: 2px; }
.underline-one:hover { color: #ff3333; transform: translateY(-2px); }
.underline-one:hover::after { width: 100%; }
.underline-one:active { transform: translateY(0); }

/* Эффект для галереи */
.gallery-link { display: inline-block; position: relative; padding: 10px 20px; border-radius: 25px; background: linear-gradient(145deg, #2d2d2d, #3a3a3a); transition: all 0.4s cubic-bezier(0.4,0,0.2,1); box-shadow: 0 4px 8px rgba(0,0,0,0.2); }
.gallery-link:hover { transform: translateY(-5px) scale(1.05); box-shadow: 0 8px 16px rgba(0,153,255,0.3); background: linear-gradient(145deg, #3a3a3a, #2d2d2d); }

/* История */
.history-block { background: #2d2d2d; border-radius: 12px; margin-bottom: 20px; overflow: hidden; border: 1px solid #444; transition: all 0.3s; }
.history-block:hover { transform: translateY(-2px); border-color: #0099ff; }
.history-header { background: #1e1e1e; padding: 12px 20px; border-bottom: 1px solid #444; }
.history-date { font-weight: 600; font-size: 16px; color: #e0e0e0; }
.history-content { padding: 15px 20px; }
.history-content ul { margin: 0; padding-left: 25px; }
.history-content li { margin: 6px 0; font-size: 14px; color: #e0e0e0; }
.history-content li i { width: 20px; margin-right: 10px; }
body.light-theme .history-block { background: #fff; border-color: #ddd; }
body.light-theme .history-header { background: #f8f8f8; border-bottom-color: #ddd; }
body.light-theme .history-date { color: #333; }
body.light-theme .history-content li { color: #333; }

/* Эффекты */
.email-link { position: relative; padding: 5px 10px; border-radius: 8px; transition: all 0.3s ease; }
.email-link:hover { background: rgba(0,153,255,0.1); padding-left: 15px; padding-right: 15px; }
.section-title { display: inline-block; padding: 5px 15px; background: linear-gradient(90deg, transparent, rgba(0,153,255,0.1), transparent); border-radius: 8px; margin: 10px 0; transition: all 0.3s ease; }
.section-title:hover { background: linear-gradient(90deg, transparent, rgba(0,153,255,0.2), transparent); transform: scale(1.02); }

/* Анимация появления */
@keyframes fadeInUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
.content-box tr { animation: fadeInUp 0.6s ease forwards; opacity: 0; }
.content-box tr:nth-child(1) { animation-delay: 0.1s; }
.content-box tr:nth-child(2) { animation-delay: 0.2s; }
.content-box tr:nth-child(3) { animation-delay: 0.3s; }
.content-box tr:nth-child(4) { animation-delay: 0.4s; }
.content-box tr:nth-child(5) { animation-delay: 0.5s; }
.content-box tr:nth-child(6) { animation-delay: 0.6s; }
.content-box tr:nth-child(7) { animation-delay: 0.7s; }
.content-box tr:nth-child(8) { animation-delay: 0.8s; }
.content-box tr:nth-child(9) { animation-delay: 0.9s; }
.content-box tr:nth-child(10) { animation-delay: 1s; }

.description-text { line-height: 1.6; padding: 15px; border-radius: 10px; background: rgba(255,255,255,0.05); transition: all 0.3s ease; }
.description-text:hover { background: rgba(255,255,255,0.1); box-shadow: 0 4px 8px rgba(0,0,0,0.1); }

@keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(0,153,255,0.4); } 70% { box-shadow: 0 0 0 10px rgba(0,153,255,0); } 100% { box-shadow: 0 0 0 0 rgba(0,153,255,0); } }
.pulse-effect { animation: pulse 2s infinite; }

.wave-effect { position: relative; overflow: hidden; }
.wave-effect::after { content: ''; position: absolute; top: 50%; left: 50%; width: 5px; height: 5px; background: rgba(255,255,255,0.6); opacity: 0; border-radius: 100%; transform: scale(1,1) translate(-50%); transform-origin: 50% 50%; }
.wave-effect:focus:not(:active)::after { animation: ripple 1s ease-out; }
@keyframes ripple { 0% { transform: scale(0,0); opacity: 0.5; } 20% { transform: scale(25,25); opacity: 0.3; } 100% { opacity: 0; transform: scale(40,40); } }

.gradient-text { background: linear-gradient(45deg, #0099ff, #ff3333, #0099ff); background-size: 200% auto; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; animation: gradient 3s linear infinite; }
@keyframes gradient { 0% { background-position: 0% center; } 100% { background-position: 200% center; } }

.contact-block { padding: 20px; border-radius: 15px; background: rgba(45,45,45,0.7); transition: all 0.4s ease; border: 1px solid transparent; }
.contact-block:hover { border-color: #0099ff; background: rgba(45,45,45,0.9); transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,153,255,0.2); }

.progress-bar { position: fixed; left: 0; top: 0; height: 4px; width: 0%; background: linear-gradient(90deg, #0099ff, #ff3333); z-index: 999; transition: width 0.1s ease; box-shadow: 0 2px 4px rgba(0,153,255,0.3); }

/* ===== СТИЛИ ДЛЯ САЙДБАРА ===== */
.sidebar { height: 100vh; overflow-y: auto; overflow-x: hidden; }
.sidebar ul li a i { margin-right: 8px; width: 20px; text-align: center; }
.sidebar::-webkit-scrollbar { width: 6px; }
.sidebar::-webkit-scrollbar-track { background: #f1f1f1; }
.sidebar::-webkit-scrollbar-thumb { background: #888; border-radius: 3px; }
.sidebar::-webkit-scrollbar-thumb:hover { background: #555; }

/* ===== СТИЛИ ДЛЯ ВЕРХНЕГО МЕНЮ ===== */
.fixed-top-menu { position: fixed; top: 0; left: 0; right: 0; background: #f0f0f0; border-bottom: 1px solid #ccc; box-shadow: 0 1px 3px rgba(0,0,0,0.08); z-index: 1000; padding: 0; }
.fixed-top-menu .menu-container { max-width: 1200px; margin: 0 auto; display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; padding: 8px 20px; }
.fixed-top-menu .menu-item { display: inline-flex; flex-direction: column; align-items: center; padding: 8px 20px; text-decoration: none; border-radius: 8px; transition: all 0.2s ease; background: transparent; border: 1px solid transparent; }
.fixed-top-menu .menu-item:hover { background: #e4e4e4; border-color: #adadad; transform: translateY(-1px); }
.fixed-top-menu .menu-item.active { background: #ffffff; border-color: #adadad; box-shadow: 0 2px 4px rgba(0,0,0,0.08); }
.fixed-top-menu .menu-item span:first-child { font-size: 15px; font-weight: 500; color: #000000; display: flex; align-items: center; gap: 8px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
.fixed-top-menu .menu-item span:first-child i { font-size: 16px; color: #333; }
.fixed-top-menu .menu-item span:last-child { font-size: 11px; color: #666; margin-top: 4px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
body { padding-top: 70px; }
html { scroll-behavior: smooth; scroll-padding-top: 75px; }
.sidebar { display: none; }

@media (max-width: 1024px) { .fixed-top-menu .menu-container { gap: 4px; padding: 6px 15px; } .fixed-top-menu .menu-item { padding: 6px 14px; } .fixed-top-menu .menu-item span:first-child { font-size: 13px; gap: 6px; } .fixed-top-menu .menu-item span:first-child i { font-size: 13px; } .fixed-top-menu .menu-item span:last-child { font-size: 10px; margin-top: 3px; } body { padding-top: 60px; } }
@media (max-width: 768px) { .fixed-top-menu .menu-container { padding: 4px 8px; gap: 2px; } .fixed-top-menu .menu-item { padding: 3px 6px; } .fixed-top-menu .menu-item span:first-child { font-size: 11px; gap: 3px; } .fixed-top-menu .menu-item span:first-child i { font-size: 9px; } .fixed-top-menu .menu-item span:last-child { font-size: 7px; margin-top: 1px; } body { padding-top: 42px; } .flex-table { width: 95%; min-width: 300px; } .pic { max-width: 90%; } }
@media (max-width: 480px) { .fixed-top-menu .menu-container { padding: 3px 5px; gap: 1px; } .fixed-top-menu .menu-item { padding: 2px 4px; } .fixed-top-menu .menu-item span:first-child { font-size: 11px; gap: 3px; } .fixed-top-menu .menu-item span:first-child i { font-size: 8px; } .fixed-top-menu .menu-item span:last-child { font-size: 6px; margin-top: 0px; } body { padding-top: 38px; } td { padding: 10px 5px; } .underline-one:hover { transform: translateY(-1px); } }

/* ===== СТИЛИ ДЛЯ ГАЛЕРЕИ ===== */
.gallery-modal { display: none; position: fixed; z-index: 1001; left: 0; top: 0; width: 100%; height: 100%; justify-content: center; align-items: center; opacity: 0; transition: opacity 0.3s; background-color: rgba(0, 0, 0, 0.95); }
.gallery-modal.active { display: flex; opacity: 1; }
.modal-content-wrapper { display: flex; flex-direction: column; align-items: center; width: 90%; max-width: 1200px; height: 90vh; max-height: 900px; border-radius: 12px; padding: 20px; box-sizing: border-box; position: relative; background-color: rgba(30, 30, 30, 0.95); border: 2px solid #444; }
.modal-image-container { display: flex; justify-content: center; align-items: center; flex: 1; min-height: 0; width: 100%; margin-bottom: 20px; position: relative; }
.modal-image { max-width: 100%; max-height: 100%; border-radius: 8px; box-shadow: 0 0 30px rgba(255, 255, 255, 0.1); object-fit: contain; transition: opacity 0.3s ease; display: block; margin: 0 auto; }
.modal-controls { display: flex; flex-direction: column; align-items: center; width: 100%; flex-shrink: 0; position: relative; }
.modal-navigation { display: flex; justify-content: center; align-items: center; gap: 20px; margin-bottom: 15px; width: 100%; min-height: 60px; }
.nav-btn { color: white; font-size: 30px; cursor: pointer; width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; border-radius: 50%; user-select: none; transition: all 0.3s; flex-shrink: 0; background: rgba(0, 0, 0, 0.5); border: 2px solid rgba(255, 255, 255, 0.3); }
.nav-btn:hover { background: rgba(0, 0, 0, 0.8); border-color: #0099ff; }
.image-counter { color: white; font-size: 16px; margin: 0 10px; min-width: 80px; text-align: center; flex-shrink: 0; }
.close-btn { position: absolute; top: 15px; right: 15px; color: white; font-size: 50px; font-weight: bold; cursor: pointer; transition: color 0.3s; z-index: 1002; width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; border-radius: 50%; display: none !important; }
.thumbnail-container { display: flex; gap: 10px; padding: 10px; overflow-x: auto; overflow-y: hidden; width: 100%; max-width: 100%; margin-top: 10px; min-height: 80px; max-height: 80px; box-sizing: border-box; flex-wrap: nowrap; align-items: center; white-space: nowrap; position: relative; scroll-behavior: smooth; }
.thumbnail { width: 60px; height: 60px; object-fit: cover; border-radius: 4px; cursor: pointer; opacity: 0.7; transition: all 0.3s; flex-shrink: 0; display: block; }
.thumbnail:hover { opacity: 1; transform: scale(1.05); }
.thumbnail.active { opacity: 1; transform: scale(1.05); border: 2px solid #0099ff; }
.close-panel-btn { color: white; font-size: 50px; cursor: pointer; width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: all 0.3s; margin-left: 10px; background: rgba(0, 0, 0, 0.5); border: 2px solid rgba(255, 255, 255, 0.3); }
.close-panel-btn:hover { background: rgba(0, 0, 0, 0.8); border-color: #ff5e5e; color: #ff5e5e; }
.thumbnail-container::-webkit-scrollbar { height: 6px; }
.thumbnail-container::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.1); border-radius: 3px; }
.thumbnail-container::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.3); border-radius: 3px; }
.thumbnail-container { scrollbar-width: thin; scrollbar-color: rgba(255, 255, 255, 0.3) rgba(255, 255, 255, 0.1); }

@media (max-width: 768px) { .modal-content-wrapper { width: 95%; height: 85vh; padding: 15px; } .nav-btn { width: 40px; height: 40px; font-size: 24px; } .thumbnail { width: 40px; height: 40px; } .modal-navigation { min-height: 50px; } .thumbnail-container { min-height: 60px; max-height: 60px; } .close-panel-btn { width: 40px; height: 40px; font-size: 24px; } }
@media (max-width: 480px) { .modal-content-wrapper { width: 98%; height: 80vh; padding: 10px; } .modal-navigation { gap: 10px; min-height: 45px; } .nav-btn { width: 35px; height: 35px; font-size: 20px; } .thumbnail { width: 35px; height: 35px; } .thumbnail-container { min-height: 50px; max-height: 50px; } .close-panel-btn { width: 35px; height: 35px; font-size: 20px; } }

/* ===== СТИЛИ ДЛЯ СВЕТЛОЙ ТЕМЫ ГАЛЕРЕИ ===== */
body.light-theme .gallery-modal { background-color: rgba(255, 255, 255, 0.95); }
body.light-theme .modal-content-wrapper { background-color: rgba(255, 255, 255, 0.95); border: 2px solid #ddd; }
body.light-theme .modal-image { box-shadow: 0 0 30px rgba(0, 0, 0, 0.1); }
body.light-theme .nav-btn { background: rgba(255, 255, 255, 0.8); border: 2px solid rgba(0, 0, 0, 0.2); color: #333; }
body.light-theme .nav-btn:hover { background: rgba(255, 255, 255, 1); border-color: #0099ff; }
body.light-theme .image-counter { color: #333; }
body.light-theme .close-panel-btn { background: rgba(255, 255, 255, 0.8); border: 2px solid rgba(0, 0, 0, 0.2); color: #333; }
body.light-theme .close-panel-btn:hover { background: rgba(255, 255, 255, 1); border-color: #ff5e5e; color: #ff5e5e; }
body.light-theme .thumbnail-container::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.1); }
body.light-theme .thumbnail-container::-webkit-scrollbar-thumb { background: rgba(0, 0, 0, 0.3); }
body.light-theme .thumbnail-container { scrollbar-color: rgba(0, 0, 0, 0.3) rgba(0, 0, 0, 0.1); }

/* ===== СТИЛИ ДЛЯ БАННЕРА COOKIES ===== */
.cookie-banner { position: fixed; bottom: 0; left: 0; right: 0; background: #1e1e1e; color: #e0e0e0; padding: 16px 24px; z-index: 9999; border-top: 1px solid #333; font-family: inherit; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; transition: all 0.3s ease; }
.cookie-banner p { margin: 0; font-size: 14px; line-height: 1.5; flex: 1; }
.cookie-banner a { color: #4CAF50; text-decoration: none; border-bottom: 1px dotted #4CAF50; margin-left: 8px; }
.cookie-banner a:hover { border-bottom: 1px solid; }
.cookie-buttons { display: flex; gap: 12px; flex-shrink: 0; }
.btn-cookie-accept { background: #4CAF50; color: white; border: none; padding: 8px 24px; border-radius: 6px; cursor: pointer; font-size: 14px; font-weight: 500; transition: background 0.2s ease; }
.btn-cookie-accept:hover { background: #45a049; }
.btn-cookie-decline { background: transparent; color: #aaa; border: 1px solid #444; padding: 8px 24px; border-radius: 6px; cursor: pointer; font-size: 14px; transition: all 0.2s ease; }
.btn-cookie-decline:hover { background: rgba(255,255,255,0.05); border-color: #666; }
@media (max-width: 768px) { .cookie-banner { padding: 12px 16px; flex-direction: column; text-align: center; } .cookie-banner p { margin-bottom: 8px; } .cookie-buttons { width: 100%; justify-content: center; } .btn-cookie-accept, .btn-cookie-decline { padding: 6px 20px; } }
body.light-theme .cookie-banner { background: #ffffff; border-top-color: #e0e0e0; }
body.light-theme .cookie-banner p { color: #333333; }
body.light-theme .cookie-banner .btn-cookie-decline { color: #555555; border-color: #cccccc; }
body.light-theme .cookie-banner .btn-cookie-decline:hover { background: #f5f5f5; border-color: #aaaaaa; }

/* ===== СТИЛИ ДЛЯ ЛАЙКОВ ===== */
.program-like .like-btn, .program-like .like-btn .like-icon, .program-like .like-btn span { transition: color 0.2s ease; }
.program-like .like-btn, .program-like .like-btn .like-icon, .program-like .like-btn span { color: #888 !important; }
.program-like .like-btn.liked, .program-like .like-btn.liked .like-icon, .program-like .like-btn.liked span { color: #e74c3c !important; }
.program-like .like-btn { background: transparent !important; border: none !important; cursor: pointer; font-size: 14px; padding: 6px 12px; border-radius: 30px; display: inline-flex; align-items: center; gap: 6px; transition: all 0.2s ease; }
.program-like .like-btn:hover { background: rgba(76, 175, 80, 0.1) !important; transform: scale(1.02); }
.program-like .like-btn.liked:hover { background: rgba(231, 76, 60, 0.1) !important; }
body.light-theme .program-like .like-btn, body.light-theme .program-like .like-btn .like-icon, body.light-theme .program-like .like-btn span { color: #666 !important; }
body.light-theme .program-like .like-btn.liked, body.light-theme .program-like .like-btn.liked .like-icon, body.light-theme .program-like .like-btn.liked span { color: #e74c3c !important; }

/* ===== СТИЛИ ДЛЯ СКАЧИВАНИЙ ===== */
.download-wrapper { display: inline-block; margin: 0 10px; text-align: center; vertical-align: top; min-width: 160px; }
.file-info { display: flex; justify-content: center; align-items: center; gap: 8px; font-size: 12px; color: #888; margin-top: 5px; margin-bottom: 5px; }
.file-size { color: #888; }
.download-count { display: flex; align-items: center; gap: 3px; color: #0099ff; font-weight: 500; }
.download-count i { font-size: 11px; }
body.light-theme .file-size, body.light-theme .file-info { color: #666; }
body.light-theme .download-count { color: #0066cc; }

/* ===== СТИЛИ ДЛЯ ГОСТЕВОЙ КНИГИ ===== */
.guestbook-form { max-width: 100%; width: 100%; }
.guestbook-form input[type="text"], .guestbook-form textarea { width: 100%; box-sizing: border-box; transition: all 0.3s ease; }
.guestbook-form input[type="text"]:focus, .guestbook-form textarea:focus { outline: none; border-color: #0099ff; box-shadow: 0 0 5px rgba(0,153,255,0.3); }
.guestbook-message-item { word-wrap: break-word; overflow-wrap: break-word; }
@media (max-width: 768px) { .guestbook-form .captcha-row { flex-direction: column; align-items: stretch !important; } .guestbook-form .captcha-input { width: 100% !important; margin-bottom: 10px; } .guestbook-form .submit-btn { width: 100%; } .guestbook-form .submit-btn button { width: 100%; } }


/* ===== ТЁМНАЯ ТЕМА ===== */
/* Базовые цвета для тёмной темы */
body:not(.light-theme) {
    background-color: #1a1a1a;
    color: #c0c0c0;
}

/* Таблицы в тёмной теме */
body:not(.light-theme) table {
    border-color: #3a3a3a;
    background-color: #252525;
}

body:not(.light-theme) td,
body:not(.light-theme) th {
    color: #c0c0c0;
}

body:not(.light-theme) th {
    background-color: #2a2a2a;
}

/* Ссылки в тёмной теме */
body:not(.light-theme) a:link,
body:not(.light-theme) a:active,
body:not(.light-theme) a:visited {
    color: #66b5ff;
}

body:not(.light-theme) a:hover {
    color: #ff6666;
}

/* Разделитель */
body:not(.light-theme) hr {
    border-color: #3a3a3a;
}

/* Блоки истории */
body:not(.light-theme) .history-block {
    background: #252525;
    border-color: #3a3a3a;
}

body:not(.light-theme) .history-header {
    background: #1e1e1e;
    border-bottom-color: #3a3a3a;
}

body:not(.light-theme) .history-date,
body:not(.light-theme) .history-content li {
    color: #c0c0c0;
}

/* Галерея в тёмной теме (если нужно) */
body:not(.light-theme) .gallery-modal {
    background-color: rgba(0, 0, 0, 0.95);
}

body:not(.light-theme) .modal-content-wrapper {
    background-color: rgba(30, 30, 30, 0.95);
    border: 2px solid #444;
}

/* Верхнее меню в тёмной теме */
body:not(.light-theme) .fixed-top-menu {
    background: #2b2b2b;
    border-bottom-color: #444;
}

body:not(.light-theme) .fixed-top-menu .menu-item span:first-child {
    color: #ffffff;
}

body:not(.light-theme) .fixed-top-menu .menu-item span:last-child {
    color: #aaa;
}

body:not(.light-theme) .fixed-top-menu .menu-item:hover {
    background: #3e3e3e;
    border-color: #666;
}

body:not(.light-theme) .fixed-top-menu .menu-item.active {
    background: #3c3c3c;
    border-color: #666;
}

/* Баннер cookies в тёмной теме */
body:not(.light-theme) .cookie-banner {
    background: #1e1e1e;
    border-top-color: #333;
}

body:not(.light-theme) .cookie-banner p {
    color: #e0e0e0;
}

/* Кнопки в тёмной теме */
body:not(.light-theme) .btn-cookie-decline {
    color: #aaa;
    border-color: #444;
}

body:not(.light-theme) .btn-cookie-decline:hover {
    background: rgba(255,255,255,0.05);
    border-color: #666;
}
/* ===== ИКОНКИ В ВЕРХНЕМ МЕНЮ ===== */
/* Светлая тема (по умолчанию) */
.fixed-top-menu .menu-item span:first-child i {
    color: #333;
}

/* Тёмная тема */
body:not(.light-theme) .fixed-top-menu .menu-item span:first-child i {
    color: #ccc;
}

/* При наведении в тёмной теме */
body:not(.light-theme) .fixed-top-menu .menu-item:hover span:first-child i {
    color: #fff;
}

/* Активный пункт меню в тёмной теме */
body:not(.light-theme) .fixed-top-menu .menu-item.active span:first-child i {
    color: #66b5ff;
}