/* Custom Dark Theme Overrides for Zeina Style (RF TON) */

/* ======================================== */
/* ===== Глобальные переопределения Tailwind ===== */
/* ======================================== */
body, #phpbb {
    background-color: rgb(var(--color-background-body)) !important;
    color: rgb(var(--color-text-base)) !important;
}
.wrapper, .layout-container, #page-body > .max-w-6xl.layout-container {
    background-color: transparent !important;
}
main#page-body {
     background-color: rgb(var(--color-background-body)) !important;
}

h1, h2, h3, h4, h5, h6 {
    color: rgb(var(--color-text-headings)) !important;
}
.text-gray-900, .text-gray-800, .text-gray-700 { color: rgb(var(--color-text-base)) !important; }
.text-gray-600, .text-gray-500 { color: rgb(var(--color-text-muted)) !important; }
.text-secondary { color: rgb(var(--color-text-muted)) !important; }

a:not(.button):not([class*="btn-"]) {
    color: rgb(var(--color-text-link)) !important;
    transition: color 0.2s ease-in-out;
}
a:hover:not(.button):not([class*="btn-"]) {
    color: rgb(var(--color-text-link-hover)) !important;
}

.border, .border-t, .border-b, .border-s, .border-e, .border-x, .border-y {
    border-color: rgb(var(--color-border-base)) !important;
}
.divide-y > :not([hidden]) ~ :not([hidden]),
.divide-x > :not([hidden]) ~ :not([hidden]) {
    border-color: rgb(var(--color-border-base)) !important;
}

/* ======================================== */
/* ===== Шапка и Навигация ===== */
/* ======================================== */
header { background-color: rgb(var(--color-background-header-nav)) !important; }
.headerbar, .navbar {
    background-color: rgb(var(--color-background-header-nav)) !important;
    border-bottom-color: rgb(var(--color-border-base)) !important;
}
.navbar a.logo img[src*="logo.svg"] { display: none !important; }
.navbar a.logo:before {
    content: "RF TON"; color: #ffffff !important; font-size: 1.6em !important; font-weight: bold !important;
    padding-left: 10px; text-decoration: none; line-height: 45px; display: inline-block;
}
.header-section h1 { color: #ffffff !important; text-shadow: 2px 2px 4px rgba(0,0,0,0.8) !important; }
.header-section p { color: #e0e0e0 !important; text-shadow: 1px 1px 2px rgba(0,0,0,0.7) !important; }
#nav-main > li > a { color: rgb(var(--color-text-muted)) !important; }
#nav-main > li > a:hover, #nav-main > li.selected > a, #nav-main > li.activetab > a {
    background-color: rgb(var(--color-background-hover)) !important; color: #ffffff !important;
}
.breadcrumbs-panel {
    background-color: rgb(var(--color-background-header-nav)) !important;
    border-bottom-color: rgb(var(--color-border-base)) !important;
}
.breadcrumbs-panel .breadcrumb-item a, 
.breadcrumbs-panel .breadcrumb-item span:not(.text-current), 
.breadcrumbs-panel .breadcrumbs span:not(.text-current),
h2.page-title, .section-viewforum h2.forum-title,
#page-body div.max-w-6xl > h2.text-xl.font-semibold {
    color: rgb(var(--color-text-base)) !important; font-weight: normal !important;
}
h2.forum-title { color: rgb(var(--color-text-headings)) !important; }
.breadcrumbs-panel .breadcrumb-item a:hover { color: rgba(var(--color-primary), 1) !important; }
.breadcrumbs-panel .breadcrumb-item .text-current { color: #ffffff !important; font-weight: bold !important; }
#page-body > div > div > h2.text-xl { color: rgb(var(--color-text-headings)) !important; margin-bottom: 15px !important; }
#search-box .inputbox.search {
    background-color: rgb(var(--color-background-input)) !important;
    border-color: rgb(var(--color-border-input)) !important;
    color: rgb(var(--color-text-base)) !important;
}
#search-box .button {
    background-color: rgb(var(--color-background-input)) !important; color: rgb(var(--color-text-muted)) !important;
    border: 1px solid rgb(var(--color-border-input)) !important;
}
#search-box .button:hover { background-color: rgb(var(--color-background-hover)) !important; color: rgb(var(--color-text-base)) !important; }

/* ======================================== */
/* ===== Карточки, Панели, Блоки форумов ===== */
/* ======================================== */
.card, .panel {
    background-color: rgb(var(--color-background-panel)) !important;
    border-color: rgb(var(--color-border-panel)) !important;
}
.card-title {
    background-color: rgb(var(--color-background-card-header)) !important;
    border-color: rgb(var(--color-border-panel)) !important;
    color: rgb(var(--color-text-headings)) !important;
}
.card-title a { color: rgb(var(--color-text-headings)) !important; }
.card-title a:hover { color: rgba(var(--color-primary), 1) !important; }
.card-primary .card-title {
    background-color: rgba(var(--color-primary), 1) !important;
    color: rgb(var(--color-text-on-primary)) !important;
}
.card-primary .card-title a { color: rgb(var(--color-text-on-primary)) !important; }
ul.topiclist li.row, ul.forums li.row { background-color: rgb(var(--color-background-panel)) !important; }
ul.topiclist li.row.bg1, ul.topiclist li.row.bg2 { background-color: rgb(var(--color-background-panel)) !important; }
ul.topiclist li.row:hover, ul.forums li.row:hover { background-color: rgb(var(--color-background-hover)) !important; }
ul.topiclist li, ul.forums li, ul.topiclist dd, ul.forums dd { color: rgb(var(--color-text-muted)) !important; }
ul.topiclist dt .topictitle, ul.forums dt .forumtitle { color: rgb(var(--color-text-base)) !important; }
ul.topiclist dt a.topictitle:hover, ul.forums dt a.forumtitle:hover { color: rgba(var(--color-primary), 1) !important; }
.topiclist .topic-poster, ul.topiclist .lastpost { color: rgb(var(--color-text-muted)) !important; }
.topiclist .topic-poster a, ul.topiclist .lastpost a { color: rgb(var(--color-text-muted)) !important; }
.topiclist .topic-poster a:hover, ul.topiclist .lastpost a:hover { color: rgb(var(--color-text-link-hover)) !important; }
.topiclist .iconify, .forums .iconify { color: rgb(var(--color-text-muted)) !important; }
.row-item.forum_unread .iconify, .row-item.topic_unread .iconify, .row-item[class*="_unread"] .iconify, a.unread .iconify {
    color: rgba(var(--color-primary), 1) !important;
}
.panel .inner p strong, .panel strong { color: rgb(var(--color-text-base)) !important; }
.notopics { color: rgb(var(--color-text-base)) !important; }
.panel .inner > p:first-child { color: rgb(var(--color-text-base)) !important; }

/* ======================================== */
/* ===== Посты и BBCode ===== */
/* ======================================== */
.post.card { background-color: rgb(var(--color-background-panel)) !important; }
.postbody .content { color: rgb(var(--color-text-base)) !important; }
.postbody h3 { border-bottom-color: rgb(var(--color-border-base)) !important; color: rgb(var(--color-text-headings)) !important; }
blockquote {
    background-color: rgb(var(--color-background-quote)) !important; border-color: rgb(var(--color-border-quote)) !important;
    border-inline-start-color: rgba(var(--color-primary), 0.7) !important; color: rgb(var(--color-text-muted)) !important;
}
blockquote cite { color: rgb(var(--color-text-base)) !important; border-bottom-color: rgb(var(--color-border-base)) !important; }
.codebox { background-color: rgb(var(--color-background-code)) !important; border-color: rgb(var(--color-border-base)) !important; }
.codebox p { background-color: rgb(var(--color-background-card-header)) !important; color: rgb(var(--color-text-muted)) !important; border-bottom-color: rgb(var(--color-border-base)) !important; }
.codebox code { color: #a7c5a5 !important; }

/* ======================================== */
/* ===== Формы и Опции ===== */
/* ======================================== */
input.inputbox, textarea.inputbox, select {
    background-color: rgb(var(--color-background-input)) !important;
    border-color: rgb(var(--color-border-input)) !important;
    color: rgb(var(--color-text-base)) !important; 
    padding: 7px !important; border-radius: 2px !important; box-shadow: none !important;
}
#message-box textarea#message, #postingbox input#subject { color: rgb(var(--color-text-base)) !important; }
input.inputbox:focus, textarea.inputbox:focus, select:focus { border-color: rgba(var(--color-border-input-focus), 1) !important; }
input::placeholder, textarea::placeholder { color: rgb(var(--color-text-muted)) !important; opacity: 0.7 !important; }
input::-moz-placeholder, textarea::-moz-placeholder { color: rgb(var(--color-text-muted)) !important; opacity: 0.7 !important; }
input:-ms-input-placeholder, textarea:-ms-input-placeholder { color: rgb(var(--color-text-muted)) !important; opacity: 0.7 !important; }
input::-ms-input-placeholder, textarea::-ms-input-placeholder { color: rgb(var(--color-text-muted)) !important; opacity: 0.7 !important; }

fieldset label, dl dt label, .fields1 label, .fields2 label, label[for] {
    color: rgb(var(--color-text-base)) !important;
}
fieldset div > input[type="checkbox"] + span, fieldset div > input[type="radio"] + span,
fieldset dd > input[type="checkbox"] + span, fieldset dd > input[type="radio"] + span,
fieldset dd label[for] /* Для "Запомнить меня" */ {
    color: rgb(var(--color-text-base)) !important;
}
fieldset dt span, fieldset dd span { color: rgb(var(--color-text-muted)) !important; }
#ucp .panel fieldset dl dt label { color: rgb(var(--color-text-base)) !important; }
#ucp .panel fieldset dl dt span { color: rgb(var(--color-text-muted)) !important; }

.btn-primary, input.button1, input[type="submit"].button1,
.action-bar .button, .action-bar a.button {
    background-color: rgba(var(--color-primary), 0.9) !important;
    border-color: rgba(var(--color-primary), 1) !important;
    color: rgb(var(--color-text-on-primary)) !important; border-radius: 2px !important;
}
.btn-primary:hover, input.button1:hover, input[type="submit"].button1:hover,
.action-bar .button:hover, .action-bar a.button:hover {
    background-color: rgba(var(--color-primary), 1) !important;
}
.btn-primary-outline, input.button2, input[type="submit"].button2, a.button.button2,
.action-bar .button.button2, .action-bar a.button.button2, .action-bar a.mark-read {
    background-color: transparent !important; border: 1px solid rgba(var(--color-primary), 0.6) !important;
    color: rgba(var(--color-primary), 1) !important; border-radius: 2px !important; padding: 6px 12px !important;
}
.btn-primary-outline:hover, input.button2:hover, input[type="submit"].button2:hover, a.button.button2:hover,
.action-bar .button.button2:hover, .action-bar a.button.button2:hover, .action-bar a.mark-read:hover {
    background-color: rgba(var(--color-primary), 0.1) !important;
    border-color: rgba(var(--color-primary), 1) !important;
    color: rgb(var(--color-text-link-hover)) !important;
}
.action-bar { background-color: transparent !important; border: none !important; }

.pagination li a, .pagination li span {
    background: rgb(var(--color-background-panel)) !important; border-color: rgb(var(--color-border-panel)) !important;
    color: rgb(var(--color-text-muted)) !important; box-shadow: none !important;
}
.pagination li a:hover, .pagination .dropdown-visible a.dropdown-trigger,
.nojs .pagination .dropdown-container:hover a.dropdown-trigger {
    background: rgba(var(--color-primary), 0.9) !important; border-color: rgba(var(--color-primary), 1) !important;
    color: rgb(var(--color-text-on-primary)) !important;
}
.pagination li.active span {
    background: rgba(var(--color-primary), 1) !important; border-color: rgba(var(--color-primary), 1) !important;
    color: rgb(var(--color-text-on-primary)) !important;
}
.pagination li.ellipsis span { background: transparent !important; color: rgb(var(--color-text-muted)) !important; border-color: transparent !important; }
.pagination .page-jump-form .inputbox {
     background-color: rgb(var(--color-background-input)) !important; border-color: rgb(var(--color-border-input)) !important;
     color: rgb(var(--color-text-base)) !important;
}
.pagination .page-jump-form .button2 {
    background-color: transparent !important; border-color: rgba(var(--color-primary), 0.6) !important;
    color: rgba(var(--color-primary), 1) !important;
}
.pagination .page-jump-form .button2:hover { background-color: rgba(var(--color-primary), 0.1) !important; }

/* ======================================== */
/* ===== Страница создания/редактирования поста ===== */
/* ======================================== */
#postingbox .panel, #postingbox .card {
    background-color: rgb(var(--color-background-panel)) !important;
    border-color: rgb(var(--color-border-panel)) !important;
}
#postingbox .card-title {
    background-color: rgba(var(--color-primary), 1) !important;
    color: rgb(var(--color-text-on-primary)) !important;
    border-bottom-color: rgba(var(--color-primary), 1) !important;
}
#postingbox label, #postingbox dt label { color: rgb(var(--color-text-base)) !important; }
#postingbox .inputbox, #postingbox textarea { color: rgb(var(--color-text-base)) !important; }
#format-buttons button, #format-buttons select.bbcode-size {
    background-color: rgb(var(--color-background-input)) !important;
    color: rgb(var(--color-text-muted)) !important;
    border: 1px solid rgb(var(--color-border-input)) !important; padding: 5px 8px !important;
}
#format-buttons button:hover, #format-buttons select.bbcode-size:hover {
    background-color: rgb(var(--color-background-hover)) !important;
    color: rgb(var(--color-text-base)) !important;
    border-color: rgba(var(--color-primary), 0.7) !important;
}
#format-buttons select.bbcode-size { padding-right: 20px !important; }
#smiley-box {
    background-color: rgb(var(--color-background-panel)) !important;
    border: 1px solid rgb(var(--color-border-panel)) !important;
    padding: 10px !important; color: rgb(var(--color-text-muted)) !important;
}
#smiley-box strong { color: rgb(var(--color-text-headings)) !important; }
#smiley-box .bbcode-status { color: rgb(var(--color-text-muted)) !important; border-top-color: rgb(var(--color-border-base)) !important; }
#smiley-box hr { border-color: rgb(var(--color-border-base)) !important; }
#postingbox fieldset .fields1 div > label { color: rgb(var(--color-text-base)) !important; }

/* ======================================== */
/* ===== Модальные окна (Вход, Регистрация-капча) ===== */
/* ======================================== */
#darkenwrapper #darken { background-color: rgba(0, 0, 0, 0.8) !important; } /* Более сильное затемнение */

/* Выпадающее окно логина из шапки (zeina) */
#login_dropdown .zn-dropdown-menu.dropdown {
    background-color: rgb(var(--color-background-panel)) !important;
    border: 1px solid rgb(var(--color-border-panel)) !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.5) !important; /* Более заметная тень */
}
#login_dropdown .dropdown-header { /* Заголовок "Вход" */
    color: rgba(var(--color-primary), 1) !important;
    border-bottom-color: rgb(var(--color-border-base)) !important;
    font-size: 1.2em !important;
}
#login_dropdown .dropdown-contents label,
#login_dropdown .dropdown-contents p,
#login_dropdown .dropdown-contents .text-sm { /* Текст "Имя пользователя", "Пароль", "Запомнить меня", "Not a member?" */
    color: rgb(var(--color-text-base)) !important;
}
#login_dropdown .dropdown-contents .inputbox {
    background-color: rgb(var(--color-background-input)) !important;
    border-color: rgb(var(--color-border-input)) !important;
    color: rgb(var(--color-text-base)) !important;
}
#login_dropdown .dropdown-contents a:not(.button):not([class*="btn-"]) {
    color: rgba(var(--color-primary), 1) !important;
}
#login_dropdown .dropdown-contents a:not(.button):not([class*="btn-"]):hover {
    color: rgb(var(--color-text-link-hover)) !important;
}
/* Кнопка закрытия модального окна (если есть в login_dropdown) */
#login_dropdown .alert_close { color: rgb(var(--color-text-muted)) !important; }
#login_dropdown .alert_close:hover {
    background-color: rgba(var(--color-primary), 0.1) !important;
    color: rgba(var(--color-primary), 1) !important;
}


/* Стандартные phpBB модалки, если они где-то используются */
.zn-overlay > div[class*="bg-white"] {
    background-color: rgb(var(--color-background-panel)) !important;
    color: rgb(var(--color-text-base)) !important;
    border: 1px solid rgb(var(--color-border-panel)) !important;
}
.zn-overlay > div[class*="bg-white"] h2, .zn-overlay > div[class*="bg-white"] h3, .zn-overlay > div[class*="bg-white"] .alert_title {
    color: rgba(var(--color-primary), 1) !important;
    border-bottom: 1px solid rgb(var(--color-border-base)) !important;
    padding-bottom: 10px !important; margin-bottom: 15px !important;
}
.zn-overlay > div[class*="bg-white"] label, .zn-overlay > div[class*="bg-white"] p,
.zn-overlay > div[class*="bg-white"] span, .zn-overlay > div[class*="bg-white"] div:not([class*="alert-icon"]),
.zn-overlay > div[class*="bg-white"] .alert_text {
    color: rgb(var(--color-text-base)) !important;
}
.zn-overlay > div[class*="bg-white"] .text-secondary { color: rgb(var(--color-text-muted)) !important; }
.zn-overlay > div[class*="bg-white"] .inputbox {
    background-color: rgb(var(--color-background-input)) !important;
    border-color: rgb(var(--color-border-input)) !important;
    color: rgb(var(--color-text-base)) !important;
}
.zn-overlay > div[class*="bg-white"] a:not(.button):not([class*="btn-"]) { color: rgba(var(--color-primary), 1) !important; }
.zn-overlay > div[class*="bg-white"] a:not(.button):not([class*="btn-"]):hover { color: rgb(var(--color-text-link-hover)) !important; }
.zn-overlay .alert_close { color: rgb(var(--color-text-muted)) !important; }
.zn-overlay .alert_close:hover { background-color: rgba(var(--color-primary), 0.1) !important; color: rgba(var(--color-primary), 1) !important; }

/* Капча на странице регистрации */
.captcha-panel { background-color: rgb(var(--color-background-panel)) !important; border-color: rgb(var(--color-border-base)) !important; padding: 15px !important; }
.captcha-panel h3.captcha-title { color: rgba(var(--color-primary), 1) !important; border-bottom-color: rgb(var(--color-border-base)) !important; }
.captcha-panel p, .captcha-panel label, .captcha-panel dt, .captcha-panel dd { color: rgb(var(--color-text-base)) !important; }
.captcha-panel .inputbox {
    background-color: rgb(var(--color-background-input)) !important; border-color: rgb(var(--color-border-input)) !important;
    color: rgb(var(--color-text-base)) !important;
}
/* Контейнер изображения капчи */
div.captcha > div.block.inputbox.bg-white, /* Стиль Zeina для контейнера капчи */
dd.captcha.captcha-image { 
    padding: 0px !important; /* Убрать padding, чтобы фон был только у картинки */
    background-color: transparent !important; 
    border: none !important; /* Убрать рамку у контейнера */
}
dd.captcha.captcha-image img,
div.captcha > div.block.inputbox.bg-white img { /* Сама картинка капчи */
    border: 1px solid rgb(var(--color-border-input)) !important;
    background-color: #cccccc !important; /* Светлый фон для самой картинки капчи */
    padding: 5px !important; /* Отступ вокруг картинки */
    border-radius: 3px;
    display: block; margin: 0 auto;
}
.captcha-panel input.button2 {
    background-color: transparent !important; border-color: rgba(var(--color-primary), 0.6) !important;
    color: rgba(var(--color-primary), 1) !important;
}
.captcha-panel input.button2:hover { background-color: rgba(var(--color-primary), 0.1) !important; border-color: rgba(var(--color-primary), 1) !important; }


/* ======================================== */
/* ===== Нижний футер ===== */
/* ======================================== */
#page-footer > div.text-sm.bg-white {
    background-color: rgb(var(--color-background-header-nav)) !important;
    border-top-color: rgb(var(--color-border-base)) !important;
}
#page-footer .text-secondary, #page-footer span:not(.footer-copyright) { color: rgb(var(--color-text-muted)) !important; }
#page-footer a.footer-link { color: rgb(var(--color-text-muted)) !important; }
#page-footer a.footer-link:hover { color: rgb(var(--color-text-link-hover)) !important; }
#page-footer .copyright .footer-copyright, #page-footer .copyright .footer-copyright a { color: rgb(var(--color-text-muted)) !important; }
#page-footer .copyright .footer-copyright a:hover { color: rgb(var(--color-text-link-hover)) !important; }

/* Иконки соцсетей в футере */
#social-items a.social-link .iconify {
    color: rgb(var(--color-text-muted)) !important;
    transition: color 0.2s ease-in-out;
}
#social-items a.social-link:hover .iconify {
    color: rgba(var(--color-primary), 1) !important;
}

/* ======================================== */
/* ===== Левый сайдбар (навигация слева) ===== */
/* ======================================== */
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child {
    background-color: rgb(var(--color-background-panel)) !important;
    border-right: 1px solid rgb(var(--color-border-base)) !important; padding: 0 !important;
}
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child .card-title {
    background-color: rgb(var(--color-background-card-header)) !important;
    border-bottom: 1px solid rgb(var(--color-border-base)) !important;
    color: rgb(var(--color-text-headings)) !important; padding: 10px 15px !important;
}
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child ul li a,
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child a.dropdown-item {
    color: rgb(var(--color-text-muted)) !important; padding: 10px 15px !important; display: flex !important;
    align-items: center !important; border-radius: 0 !important;
    border-bottom: 1px solid rgb(var(--color-border-base)) !important;
}
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child ul li:last-child a,
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child a.dropdown-item:last-child {
    border-bottom: none !important;
}
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child ul li a:hover,
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child a.dropdown-item:hover {
    background-color: rgb(var(--color-background-hover)) !important; color: #ffffff !important;
}
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child .iconify {
    color: rgb(var(--color-text-muted)) !important; margin-right: 8px;
}
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2:first-child a:hover .iconify { color: #ffffff !important; }
#page-body > .max-w-6xl.layout-container > .grid > .col-span-2.card:first-child {
    border-left: none !important; border-top: none !important; border-bottom: none !important; border-radius: 0 !important;
}

/* ======================================== */
/* ===== Мелкий информационный текст и блоки ===== */
/* ======================================== */
.card-sm, p.time {
    background-color: rgb(var(--color-background-panel)) !important;
    color: rgb(var(--color-text-base)) !important;
    border-color: rgb(var(--color-border-panel)) !important;
    padding: 6px 10px !important; border-radius: 2px !important;
}
.card-sm p, .card-sm span, p.time span { color: rgb(var(--color-text-base)) !important; }
.iconify { color: rgb(var(--color-text-muted)); }
.button .iconify, .btn-primary .iconify, .btn-primary-outline .iconify { color: inherit !important; }