/* RBS Forum R14 — unified Anonymous/Breach theme.
   This final layer supersedes visual conflicts from R1-R13 without changing
   PHP templates' data bindings, AJAX handlers, permissions, or module logic.
   Theme is deliberately limited to body.rbs-modern.rbs-breach. */

body.rbs-modern.rbs-breach {
  --r14-bg: #050b0d;
  --r14-surface: #101c22;
  --r14-surface-2: #16262e;
  --r14-surface-hover: #1c3438;
  --r14-line: rgba(102, 231, 168, .19);
  --r14-line-strong: rgba(94, 235, 158, .40);
  --r14-text: #e7f5f0;
  --r14-soft: #abc7be;
  --r14-accent: #51dfa1;
  --r14-accent-hover: #8bffbf;
  --r14-blue: #76dbe9;
  --r14-danger: #fa8793;
  --r14-radius: 14px;
  color: var(--r14-text);
  background: radial-gradient(ellipse at 12% 16%, #0b241c, transparent 43%),
              radial-gradient(ellipse at 93% 65%, #062122, transparent 42%), #04090b;
}
body.rbs-modern.rbs-breach .rbs-site-bg { pointer-events: none !important; }
body.rbs-modern.rbs-breach .rbs-breach-grid,
body.rbs-modern.rbs-breach .rbs-breach-emblem,
body.rbs-modern.rbs-breach .rbs-breach-rain,
body.rbs-modern.rbs-breach .rbs-breach-lines,
body.rbs-modern.rbs-breach .rbs-breach-scanner { pointer-events: none !important; }
body.rbs-modern.rbs-breach > .wapper { position: relative; z-index: 1; }
body.rbs-modern.rbs-breach a { color: #7de8b9; }
body.rbs-modern.rbs-breach a:hover { color: #afffd3; }
body.rbs-modern.rbs-breach .text-muted,
body.rbs-modern.rbs-breach small,
body.rbs-modern.rbs-breach .small { color: #a5bfb8 !important; }
body.rbs-modern.rbs-breach .text-danger { color: #ff8e99 !important; }
body.rbs-modern.rbs-breach .text-success { color: #79e3b3 !important; }
body.rbs-modern.rbs-breach .text-warning { color: #f2c27c !important; }
body.rbs-modern.rbs-breach .text-primary { color: #7ed9eb !important; }
body.rbs-modern.rbs-breach a:focus-visible,
body.rbs-modern.rbs-breach button:focus-visible,
body.rbs-modern.rbs-breach [role="button"]:focus-visible {
  outline: 2px solid #7effba !important;
  outline-offset: 3px;
}

/* Header, dropdowns, breadcrumbs */
body.rbs-modern.rbs-breach .wapper .header,
body.rbs-modern.rbs-breach .wapper .navigation {
  background: #0b161b;
  border-color: var(--r14-line);
}
body.rbs-modern.rbs-breach .wapper .header .collapsible-menu > li > a,
body.rbs-modern.rbs-breach .wapper .header .collapsible-menu .rbs-more-menu > a {
  color: #d7efe6;
}
body.rbs-modern.rbs-breach .wapper .header .collapsible-menu > li > a:hover,
body.rbs-modern.rbs-breach .wapper .header .collapsible-menu > li > a:focus,
body.rbs-modern.rbs-breach .wapper .header .collapsible-menu > li > a.open {
  background: rgba(40, 181, 111, .15);
  color: #9cffc7;
}
body.rbs-modern.rbs-breach .wapper .header .collapsible-menu ul,
body.rbs-modern.rbs-breach .dropdown-menu,
body.rbs-modern.rbs-breach .rbs-account-menu {
  background: #102025;
  border: 1px solid var(--r14-line-strong);
  box-shadow: 0 19px 40px rgba(0,0,0,.45);
}
body.rbs-modern.rbs-breach .wapper .header .collapsible-menu ul li a,
body.rbs-modern.rbs-breach .dropdown-menu a { color: #d8f4e7; }
body.rbs-modern.rbs-breach .wapper .header .collapsible-menu ul li a:hover,
body.rbs-modern.rbs-breach .dropdown-menu a:hover {
  background: rgba(52, 217, 141, .12);
  color: #b8ffd9;
}
body.rbs-modern.rbs-breach .wapper .navigation .breadcrumb,
body.rbs-modern.rbs-breach .wapper .navigation .breadcrumb li,
body.rbs-modern.rbs-breach .wapper .navigation .breadcrumb a { color: #c1e5d8; }

/* A shared surface across homepage, forum, news, bans, profiles, cases, store, forms. */
body.rbs-modern.rbs-breach .block,
body.rbs-modern.rbs-breach .panel,
body.rbs-modern.rbs-breach .card,
body.rbs-modern.rbs-breach .rbs-stats-page,
body.rbs-modern.rbs-breach .noty-block,
body.rbs-modern.rbs-breach .bs-callout {
  border-color: var(--r14-line) !important;
  border-radius: var(--r14-radius);
  box-shadow: 0 14px 36px rgba(0,0,0,.22);
}
body.rbs-modern.rbs-breach .block:not(.rbs-stats-page),
body.rbs-modern.rbs-breach .panel,
body.rbs-modern.rbs-breach .card {
  background: linear-gradient(145deg, rgba(18, 31, 38, .97), rgba(10, 20, 25, .98));
  color: var(--r14-text);
}
body.rbs-modern.rbs-breach .block > .block_head,
body.rbs-modern.rbs-breach .block > .block_head > span,
body.rbs-modern.rbs-breach .panel-heading,
body.rbs-modern.rbs-breach .card-header {
  color: #eafff5 !important;
  font-weight: 750;
  text-shadow: none;
}
body.rbs-modern.rbs-breach .block > .block_head > i,
body.rbs-modern.rbs-breach .block > .block_head > .fa,
body.rbs-modern.rbs-breach .block > .block_head > .fas { color: #73efad; }
body.rbs-modern.rbs-breach .empty-element,
body.rbs-modern.rbs-breach .block > p { color: #b6cec4; }
body.rbs-modern.rbs-breach .bs-callout,
body.rbs-modern.rbs-breach .noty-block { background-color: rgba(35, 122, 99, .09); }

/* Tables and data-heavy pages. Do not hide any columns or actions. */
body.rbs-modern.rbs-breach .table-responsive {
  border-color: var(--r14-line);
  background: rgba(7, 17, 22, .28);
  scrollbar-color: #407a68 #101c22;
}
body.rbs-modern.rbs-breach .table-responsive > table.table { margin-bottom: 0; }
body.rbs-modern.rbs-breach .table.table-bordered > thead > tr > td,
body.rbs-modern.rbs-breach .table.table-bordered > thead > tr > th,
body.rbs-modern.rbs-breach .table-responsive > table.table > thead > tr > td,
body.rbs-modern.rbs-breach .table-responsive > table.table > thead > tr > th {
  background: #20323b;
  color: #ebfcf3;
  border-color: var(--r14-line);
  font-weight: 700;
}
body.rbs-modern.rbs-breach .table.table-bordered > tbody > tr > td,
body.rbs-modern.rbs-breach .table.table-bordered > tbody > tr > th {
  border-color: rgba(131, 203, 173, .13);
  color: #d8e9e4;
}
body.rbs-modern.rbs-breach .table-responsive > table.table > tbody > tr:not(.hidden-tr):hover > td {
  background-color: rgba(51, 202, 135, .065);
}
body.rbs-modern.rbs-breach .rbs-ban-table > table.table > tbody > tr[data-toggle="modal"],
body.rbs-modern.rbs-breach .rbs-mute-table > table.table > tbody > tr[data-toggle="modal"],
body.rbs-modern.rbs-breach #stats > tr[data-toggle="modal"] {
  cursor: pointer;
}
body.rbs-modern.rbs-breach :is(.rbs-ban-table,.rbs-mute-table) > table.table > tbody > tr[data-toggle="modal"]:focus-visible {
  outline: 2px solid #6dffb6;
  outline-offset: -2px;
}
body.rbs-modern.rbs-breach .rbs-ban-table .btn,
body.rbs-modern.rbs-breach .rbs-mute-table .btn { white-space: normal; }
body.rbs-modern.rbs-breach :is(.rbs-ban-table,.rbs-mute-table) > table.table > tbody > tr[data-toggle="modal"] > td {
  border-color: rgba(131, 203, 173, .17);
}
body.rbs-modern.rbs-breach #stats .rbs-stat-cell--nick img { max-width: 30px; max-height: 30px; object-fit: cover; }
body.rbs-modern.rbs-breach .rbs-skill-badge { border-radius: 6px; font-weight: 800; }

/* Forms, search, buttons and multi-step flows */
body.rbs-modern.rbs-breach input.form-control,
body.rbs-modern.rbs-breach select.form-control,
body.rbs-modern.rbs-breach textarea.form-control {
  color: #edfff4;
  background: #0c1a20;
  border: 1px solid #31574f;
  border-radius: 9px;
  box-shadow: none;
}
body.rbs-modern.rbs-breach input.form-control::placeholder,
body.rbs-modern.rbs-breach textarea.form-control::placeholder { color: #9cb9ad; opacity: 1; }
body.rbs-modern.rbs-breach input.form-control:focus,
body.rbs-modern.rbs-breach select.form-control:focus,
body.rbs-modern.rbs-breach textarea.form-control:focus {
  background: #11232a;
  color: #fff;
  border-color: #65e9a8;
  box-shadow: 0 0 0 3px rgba(53, 226, 134, .12);
}
body.rbs-modern.rbs-breach label,
body.rbs-modern.rbs-breach .form-group label { color: #c4e4d5; }
body.rbs-modern.rbs-breach .btn,
body.rbs-modern.rbs-breach button { touch-action: manipulation; }
body.rbs-modern.rbs-breach .btn-primary,
body.rbs-modern.rbs-breach .btn.btn-primary {
  background: linear-gradient(130deg, #1d936b, #156951);
  color: #f5fff9;
  border: 1px solid rgba(130, 255, 191, .38);
  box-shadow: none;
}
body.rbs-modern.rbs-breach .btn-primary:hover,
body.rbs-modern.rbs-breach .btn.btn-primary:hover {
  background: #228d68;
  color: white;
}
body.rbs-modern.rbs-breach .btn-outline-primary {
  border: 1px solid #447768;
  background: #162a2f;
  color: #b7ffdc;
}
body.rbs-modern.rbs-breach .btn-outline-primary:hover {
  background: #244e42;
  border-color: #83edb6;
  color: #fff;
}
body.rbs-modern.rbs-breach .btn:disabled,
body.rbs-modern.rbs-breach button:disabled { opacity: .55; }
body.rbs-modern.rbs-breach .pagination .page-link,
body.rbs-modern.rbs-breach #pagination2 a {
  background: #16262e;
  color: #91f7c4;
  border-color: #325e4c;
}
body.rbs-modern.rbs-breach .pagination .active .page-link,
body.rbs-modern.rbs-breach .pagination .page-item.active .page-link {
  background: #267e61;
  border-color: #4ccf96;
  color: white;
}
body.rbs-modern.rbs-breach .vertical-navigation li > a,
body.rbs-modern.rbs-breach .vertical-navigation ul li a { color: #cdece0; }
body.rbs-modern.rbs-breach .vertical-navigation li > a:hover,
body.rbs-modern.rbs-breach .vertical-navigation ul li a:hover {
  color: #a1ffd0;
  background: rgba(35, 167, 110, .12);
}

/* Forums, topics, profile content, chat, notifications, news */
body.rbs-modern.rbs-breach .with_code,
body.rbs-modern.rbs-breach .news,
body.rbs-modern.rbs-breach .topic,
body.rbs-modern.rbs-breach .message,
body.rbs-modern.rbs-breach .forum { color: #e3f0ea; }
body.rbs-modern.rbs-breach .with_code pre,
body.rbs-modern.rbs-breach .with_code code,
body.rbs-modern.rbs-breach pre {
  max-width: 100%;
  color: #bcf8d3;
  background: #07181b;
  border-color: var(--r14-line);
}
body.rbs-modern.rbs-breach .with_code blockquote,
body.rbs-modern.rbs-breach blockquote {
  border-left: 3px solid #4bd69a;
  padding: 12px 15px;
  background: rgba(32, 101, 77, .08);
  color: #d8ebe0;
}
body.rbs-modern.rbs-breach .badge,
body.rbs-modern.rbs-breach .label { border-radius: 6px; }
body.rbs-modern.rbs-breach .notification,
body.rbs-modern.rbs-breach .noty-block,
body.rbs-modern.rbs-breach .alert { border-color: var(--r14-line); }
body.rbs-modern.rbs-breach #chat input.form-control,
body.rbs-modern.rbs-breach #chat textarea.form-control { color: #f1fff8; }
body.rbs-modern.rbs-breach #chat .block_head,
body.rbs-modern.rbs-breach #forum .block_head { color: #effff5; }
body.rbs-modern.rbs-breach .tooltip-inner {
  background: #17352e;
  border: 1px solid #3d775c;
  color: #eafff4;
}

/* Dialogs escape transformed/overflow-hidden ancestors via R14 JS portal. */
body.rbs-modern.rbs-breach > .modal,
body.rbs-modern.rbs-breach > .modal.rbs-modal-portaled {
  position: fixed !important;
  inset: 0 !important;
  z-index: 1070 !important;
  max-width: none !important;
  width: 100% !important;
  height: 100% !important;
  overflow-x: hidden;
  overflow-y: auto;
}
body.rbs-modern.rbs-breach > .modal-backdrop {
  position: fixed !important;
  z-index: 1060 !important;
  background: #010506 !important;
}
body.rbs-modern.rbs-breach > .modal-backdrop.show,
body.rbs-modern.rbs-breach > .modal-backdrop.in { opacity: .74 !important; }
body.rbs-modern.rbs-breach .modal .modal-content,
body.rbs-modern.rbs-breach .jconfirm .jconfirm-box {
  background: linear-gradient(160deg, #172831, #0e1b23) !important;
  border: 1px solid #37645b;
  color: #e9fbf2;
}
body.rbs-modern.rbs-breach .modal .modal-header,
body.rbs-modern.rbs-breach .modal .modal-footer {
  background: #1b3138;
  border-color: rgba(116, 230, 166, .19);
}
body.rbs-modern.rbs-breach .modal .modal-title,
body.rbs-modern.rbs-breach .jconfirm .jconfirm-title { color: #f3fff8 !important; }
body.rbs-modern.rbs-breach .modal .modal-body { color: #e7f6ef; }
body.rbs-modern.rbs-breach .modal .modal-dialog { pointer-events: auto; }
body.rbs-modern.rbs-breach .modal .modal-content { pointer-events: auto; }
body.rbs-modern.rbs-breach .modal .rbs-stats-pane > .table-responsive,
body.rbs-modern.rbs-breach .modal .table-responsive { background: #13252b; }
body.rbs-modern.rbs-breach .modal .progress { background: #263d44; }
body.rbs-modern.rbs-breach .modal .progress .progress-bar { background: linear-gradient(90deg, #20c997, #75edd1); }

/* Footers and decorative fixed UI must never capture modal clicks. */
body.rbs-modern.rbs-breach .footer {
  background: #0b181d !important;
  border-top: 1px solid var(--r14-line-strong);
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  animation: none !important;
  transform: none !important;
  opacity: 1 !important;
}
body.rbs-modern.rbs-breach .footer[data-aos] { transform: none !important; opacity: 1 !important; }
body.rbs-modern.rbs-breach .footer .copyright,
body.rbs-modern.rbs-breach .footer p { color: #bed9ce; }
body.rbs-modern.rbs-breach .footer a { color: #8debba; }
body.rbs-modern.rbs-breach .footer a:hover { color: #ccffe2; }
body.rbs-modern.rbs-breach .footer .banners img { max-height: 42px; width: auto; object-fit: contain; }
body.rbs-modern.rbs-breach .rbs-site-bg * { pointer-events: none !important; }
body.rbs-modern.rbs-breach.modal-open .rbs-breach-stream,
body.rbs-modern.rbs-breach.modal-open .rbs-breach-scanner { animation-play-state: paused !important; }

/* The old theme requests an absent owl.video.play.png. This CSS-only icon
   also makes the control visible when the former image is not installed. */
body.rbs-modern.rbs-breach .owl-carousel .owl-video-play-icon {
  width: 56px;
  height: 56px;
  margin-left: -28px;
  margin-top: -28px;
  border: 2px solid #91f3bd;
  border-radius: 50%;
  background: #123c2c url('../img/rbs-icons-r14/play.svg') center / 23px 23px no-repeat !important;
  box-shadow: 0 0 26px rgba(39,216,129,.24);
}

/* Small screen: preserve original module forms and let data tables scroll. */
@media (max-width: 991.98px) {
  body.rbs-modern.rbs-breach .rbs-breach-stream,
  body.rbs-modern.rbs-breach .rbs-breach-scanner { animation: none !important; }
}
@media (max-width: 767.98px) {
  body.rbs-modern.rbs-breach .block,
  body.rbs-modern.rbs-breach .panel,
  body.rbs-modern.rbs-breach .card { border-radius: 12px; }
  body.rbs-modern.rbs-breach .btn { min-height: 38px; }
  body.rbs-modern.rbs-breach .rbs-ban-table .table,
  body.rbs-modern.rbs-breach .rbs-mute-table .table { min-width: 0; }
  body.rbs-modern.rbs-breach .rbs-mobile-cards > table.table > tbody > tr[data-toggle="modal"] {
    background: #15292c;
    border-color: #3e7256 !important;
  }
  body.rbs-modern.rbs-breach .rbs-mobile-cards > table.table > tbody > tr[data-toggle="modal"] > td {
    overflow-wrap: anywhere;
    color: #dbf5e6;
  }
  body.rbs-modern.rbs-breach .rbs-mobile-cards .modal { text-align: left; }
  body.rbs-modern.rbs-breach .modal .modal-dialog { max-width: calc(100vw - 18px); }
  body.rbs-modern.rbs-breach .modal .modal-body { padding: 13px; }
  body.rbs-modern.rbs-breach #stats .rbs-stat-cell--nick img { max-width: 26px; max-height: 26px; }
  body.rbs-modern.rbs-breach .footer .container { padding-left: 16px; padding-right: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  body.rbs-modern.rbs-breach *,
  body.rbs-modern.rbs-breach *::before,
  body.rbs-modern.rbs-breach *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
  body.rbs-modern.rbs-breach .rbs-breach-stream,
  body.rbs-modern.rbs-breach .rbs-breach-scanner { animation: none !important; }
}
