/* CGY-Setting 19.69.50 — HumHub-wide selectable theme */
:root {
    --cgy-site-header-start: #3a0a0a;
    --cgy-site-header-end: #b91c1c;
    --cgy-site-accent: #b91c1c;
    --cgy-site-accent-readable: #991019;
    --cgy-site-accent-dark-readable: #5f1111;
    --cgy-site-accent-dark: #5f1111;
    --cgy-site-page-bg: #edf0f4;
    --cgy-site-panel-bg: #ffffff;
    --cgy-site-surface-alt: #f5f5f6;
    --cgy-site-border: #d9dadd;
    --cgy-site-text: #172033;
    --cgy-site-muted: #637083;
    --cgy-site-on-accent: #ffffff;
    --cgy-site-on-header: #ffffff;
    --cgy-site-panel-radius: 8px;
    --cgy-site-button-radius: 6px;
    --cgy-site-border-width: 1px;
    --cgy-site-panel-shadow: 0 8px 24px rgba(0, 0, 0, .08);
    --cgy-site-heading-spacing: 0;
    --cgy-site-heading-transform: none;
    --cgy-site-title-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --cgy-site-title-color: #ffffff;
    --cgy-site-title-size: 18px;
    --cgy-topbar-text-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --cgy-topbar-text-color: #ffffff;
    --cgy-topbar-text-size: 13px;
    --cgy-account-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --cgy-account-color: #ffffff;
    --cgy-account-size: 12px;
    --cgy-secondary-nav-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --cgy-secondary-nav-color: #172033;
    --cgy-secondary-nav-hover: #991019;
    --cgy-secondary-nav-size: 11px;
    --cgy-widget-title-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --cgy-widget-title-color: #172033;
    --cgy-widget-title-size: 15px;
    --cgy-body-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --cgy-body-color: #172033;
    --cgy-body-size: 14px;
    --cgy-link-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --cgy-link-color: #b91c1c;
    --cgy-link-size: 13px;
    --cgy-secondary-topbar-bg: #ffffff;
    --cgy-account-bg: #34536b;
    --cgy-notification-bg: #34536b;
    --cgy-notification-color: #ffffff;
    --cgy-widget-header-bg: #f5f5f6;
}

html,
body,
#layout-content {
    background-color: var(--cgy-site-page-bg);
    color: var(--cgy-site-text);
}

#topbar-first,
.topbar-first,
header.topbar,
.navbar.navbar-inverse {
    background: linear-gradient(120deg, var(--cgy-site-header-start), var(--cgy-site-header-end)) !important;
    border-color: transparent !important;
    box-shadow: 0 8px 28px color-mix(in srgb, var(--cgy-site-accent-dark) 34%, transparent) !important;
}

#topbar-first a,
#topbar-first button,
.topbar-first a,
.topbar-first button,
header.topbar a,
header.topbar button,
.navbar.navbar-inverse a {
    color: var(--cgy-site-on-header) !important;
}

#topbar-second,
.topbar-second,
.navbar.navbar-default {
    background: var(--cgy-secondary-topbar-bg) !important;
    border-bottom: 3px solid var(--cgy-site-accent) !important;
}

#topbar-second a,
.topbar-second a,
.navbar.navbar-default a {
    color: var(--cgy-secondary-nav-color) !important;
    font-family: var(--cgy-secondary-nav-font) !important;
    font-size: var(--cgy-secondary-nav-size) !important;
}

#topbar-second a:hover,
#topbar-second a:focus,
.topbar-second a:hover,
.topbar-second a:focus {
    color: var(--cgy-secondary-nav-hover) !important;
}

.panel,
.panel-default,
.card,
.modal-content,
.dropdown-menu,
.well,
.content-container {
    background-color: var(--cgy-site-panel-bg);
    color: var(--cgy-site-text);
    border-radius: var(--cgy-site-panel-radius);
    box-shadow: var(--cgy-site-panel-shadow);
}

.list-group-item,
.table,
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
    color: var(--cgy-site-text);
    background-color: var(--cgy-site-panel-bg);
    border-color: var(--cgy-site-border);
    border-width: var(--cgy-site-border-width);
}

.table-striped > tbody > tr:nth-of-type(odd) > td,
.table-striped > tbody > tr:nth-of-type(odd) > th,
.dropdown-menu .divider,
hr {
    background-color: var(--cgy-site-surface-alt);
    border-color: var(--cgy-site-border);
}

.panel-default,
.card,
.modal-content,
.well,
.content-container {
    border-color: var(--cgy-site-border);
}

.panel-heading,
.panel-default > .panel-heading,
.modal-header,
.modal-footer {
    color: var(--cgy-site-text);
    background-color: var(--cgy-site-surface-alt);
    border-color: var(--cgy-site-border);
}

a:not(.btn),
.link,
.help-block a {
    color: var(--cgy-site-accent-readable);
}

a:not(.btn):hover,
a:not(.btn):focus {
    color: var(--cgy-site-accent-dark-readable);
}

.btn-primary,
.btn-info,
button.primary,
input[type="submit"].btn-primary {
    color: var(--cgy-site-on-accent) !important;
    background: linear-gradient(135deg, var(--cgy-site-accent), var(--cgy-site-accent-dark)) !important;
    border-color: var(--cgy-site-accent-dark) !important;
    border-radius: var(--cgy-site-button-radius);
    box-shadow: 0 8px 22px color-mix(in srgb, var(--cgy-site-accent) 24%, transparent);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-info:hover,
.btn-info:focus {
    color: var(--cgy-site-on-accent) !important;
    filter: brightness(.94);
}

.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus,
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus,
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover {
    color: var(--cgy-site-on-accent) !important;
    background-color: var(--cgy-site-accent) !important;
    border-color: var(--cgy-site-accent-dark) !important;
    box-shadow: 0 0 18px color-mix(in srgb, var(--cgy-site-accent) 18%, transparent);
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    color: var(--cgy-site-accent-readable) !important;
    border-top-color: var(--cgy-site-accent) !important;
}

.dropdown-menu > li > a,
.list-group-item,
.media-heading,
.panel-title,
h1, h2, h3, h4, h5, h6 {
    color: var(--cgy-site-text);
    letter-spacing: var(--cgy-site-heading-spacing);
    text-transform: var(--cgy-site-heading-transform);
}

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus,
.list-group-item:hover,
.list-group-item:focus {
    color: var(--cgy-site-text);
    background-color: color-mix(in srgb, var(--cgy-site-accent) 10%, var(--cgy-site-panel-bg));
}

.form-control,
select.form-control,
textarea.form-control {
    color: var(--cgy-site-text);
    background-color: var(--cgy-site-panel-bg);
    border-color: var(--cgy-site-border);
    border-radius: var(--cgy-site-button-radius);
}

.form-control::placeholder,
textarea.form-control::placeholder,
input.form-control::placeholder {
    color: var(--cgy-site-muted) !important;
    opacity: 1;
}

select.form-control option {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-panel-bg) !important;
}

.form-control:focus,
select.form-control:focus,
textarea.form-control:focus {
    border-color: var(--cgy-site-accent);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--cgy-site-accent) 16%, transparent);
}

.btn-default,
.btn-secondary {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-surface-alt) !important;
    border-color: var(--cgy-site-border) !important;
}

.btn-default:hover,
.btn-default:focus,
.btn-secondary:hover,
.btn-secondary:focus {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-panel-bg) !important;
    border-color: var(--cgy-site-accent) !important;
}

code,
pre {
    color: var(--cgy-site-text);
    background-color: var(--cgy-site-surface-alt);
    border-color: var(--cgy-site-border);
}

.text-muted,
.help-block:not(.help-block-error),
.form-text,
small.description {
    color: var(--cgy-site-muted) !important;
}

input[type="checkbox"],
input[type="radio"] {
    accent-color: var(--cgy-site-accent);
}

.badge,
.label-primary,
.label-info,
.progress-bar,
.notification-bubble {
    color: var(--cgy-site-on-accent) !important;
    background-color: var(--cgy-site-accent) !important;
}

.space-nav > li.active > a,
.profile-nav > li.active > a,
.accountMenu > li.active > a,
.admin-menu > li.active > a {
    color: var(--cgy-site-accent-dark) !important;
    border-left-color: var(--cgy-site-accent) !important;
}

.login-container .panel,
.registration-container .panel {
    border-top: 4px solid var(--cgy-site-accent);
    box-shadow: 0 18px 45px color-mix(in srgb, var(--cgy-site-accent-dark) 20%, transparent);
}

/* 19.69.48 — Every preset now shares the clean 1 West Blue construction.
   Theme identity comes from the main palette only, so changing themes never
   changes spacing, typography, panel geometry, or navigation behavior. */
html[data-cgy-site-theme] {
    background-color: color-mix(in srgb,var(--cgy-site-accent) 4%,#f7f9fc) !important;
}
html[data-cgy-site-theme] body {
    min-height: 100vh;
    background-color: transparent !important;
    background-image: linear-gradient(
        180deg,
        color-mix(in srgb,var(--cgy-site-accent-dark) 88%,#05070a) 0%,
        color-mix(in srgb,var(--cgy-site-accent-dark) 56%,var(--cgy-site-accent)) 18%,
        color-mix(in srgb,var(--cgy-site-accent) 30%,#f7f9fc) 46%,
        color-mix(in srgb,var(--cgy-site-accent) 10%,#f7f9fc) 74%,
        color-mix(in srgb,var(--cgy-site-accent) 3%,#f7f9fc) 100%
    ) !important;
    background-attachment: fixed !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100% !important;
}
html[data-cgy-site-theme] #layout-content {
    background-color: transparent !important;
    background-image: none !important;
}
html[data-cgy-site-theme] #topbar-first,
html[data-cgy-site-theme] .topbar-first {
    background-image: radial-gradient(circle at 82% -35%, rgba(255,255,255,.26), transparent 42%), linear-gradient(118deg,#020d20 0%,var(--cgy-site-header-start) 48%,var(--cgy-site-header-end) 100%) !important;
}
html[data-cgy-site-theme] .panel,
html[data-cgy-site-theme] .content-container {
    border-top: 3px solid color-mix(in srgb,var(--cgy-site-accent) 78%,white);
}
html[data-cgy-site-theme] .btn-primary {
    box-shadow: 0 10px 24px color-mix(in srgb,var(--cgy-site-accent) 24%,transparent);
}

@media (prefers-reduced-motion: reduce) {
    .btn-primary,
    .btn-info {
        transition: none !important;
    }
}


/* CGY-Setting area-level typography and top-bar controls */
#topbar-first .navbar-brand,
.topbar-first .navbar-brand,
#topbar-first .brand,
.topbar-first .brand,
#topbar-first .navbar-text,
.topbar-first .navbar-text {
    color: var(--cgy-site-title-color) !important;
    font-family: var(--cgy-site-title-font) !important;
    font-size: var(--cgy-site-title-size) !important;
}

#topbar-first a,
#topbar-first button,
.topbar-first a,
.topbar-first button,
header.topbar a,
header.topbar button {
    color: var(--cgy-topbar-text-color) !important;
    font-family: var(--cgy-topbar-text-font) !important;
    font-size: var(--cgy-topbar-text-size) !important;
}

#topbar-first .account,
.topbar-first .account,
#topbar-first .user-account,
.topbar-first .user-account,
#topbar-first .account .dropdown-toggle,
.topbar-first .account .dropdown-toggle,
#topbar-first .user-account .dropdown-toggle,
.topbar-first .user-account .dropdown-toggle {
    background-color: var(--cgy-account-bg) !important;
    background-image: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: var(--cgy-account-color) !important;
    font-family: var(--cgy-account-font) !important;
    font-size: var(--cgy-account-size) !important;
}
#topbar-first .account *, .topbar-first .account *,
#topbar-first .user-account *, .topbar-first .user-account * {
    color: var(--cgy-account-color) !important;
    font-family: var(--cgy-account-font) !important;
}

#topbar-first .notifications .dropdown-toggle,
.topbar-first .notifications .dropdown-toggle,
#topbar-first .notification .dropdown-toggle,
.topbar-first .notification .dropdown-toggle,
#topbar-first .notifications > a,
.topbar-first .notifications > a {
    background-color: var(--cgy-notification-bg) !important;
    background-image: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: var(--cgy-notification-color) !important;
}

#topbar-second,
.topbar-second,
.navbar.navbar-default {
    background-color: var(--cgy-secondary-topbar-bg) !important;
}
#topbar-second a,
.topbar-second a,
.navbar.navbar-default a,
#topbar-second .nav > li > a,
.topbar-second .nav > li > a {
    color: var(--cgy-secondary-nav-color) !important;
    font-family: var(--cgy-secondary-nav-font) !important;
    font-size: var(--cgy-secondary-nav-size) !important;
}

.panel-heading,
.panel-default > .panel-heading,
.content-container .panel-heading,
.widget .panel-heading,
.panel-heading .panel-title,
.panel-heading h1,
.panel-heading h2,
.panel-heading h3,
.panel-heading h4 {
    background-color: var(--cgy-widget-header-bg) !important;
    color: var(--cgy-widget-title-color) !important;
    font-family: var(--cgy-widget-title-font) !important;
    font-size: var(--cgy-widget-title-size) !important;
}
.panel-heading a,
.panel-heading .panel-title a,
.panel-heading strong,
.panel-heading span:not(.label):not(.badge) {
    color: var(--cgy-widget-title-color) !important;
    font-family: var(--cgy-widget-title-font) !important;
}

body,
.panel-body,
.content-container,
.wall-entry-content,
.wall-entry-body,
.comment-content,
.media-body {
    color: var(--cgy-body-color);
    font-family: var(--cgy-body-font);
    font-size: var(--cgy-body-size);
}

/* 19.69.47 — HumHub assigns #555 directly to dashboard paragraphs, stream
   metadata, action links, and several sidebar descriptions. That fixed light-
   theme foreground becomes nearly invisible on every dark CGY preset. Pair
   dashboard content with the active panel palette at the leaf elements where
   HumHub applies those colors. Explicit author-supplied inline colors remain
   untouched. */
.wall-entry-content p:not([style*="color"]),
.wall-entry-content li:not([style*="color"]),
.wall-entry-content blockquote:not([style*="color"]),
.wall-entry-body .comment-content:not([style*="color"]),
.panel-body > p:not([style*="color"]),
.panel-body > ul > li:not([style*="color"]),
.panel-body > ol > li:not([style*="color"]),
.panel-body .media-body > p:not([style*="color"]) {
    color: var(--cgy-body-color) !important;
}

.wall-entry-content p:not([style*="color"]) > strong:not([style*="color"]),
.wall-entry-content p:not([style*="color"]) > b:not([style*="color"]),
.wall-entry-content p:not([style*="color"]) > em:not([style*="color"]),
.wall-entry-content p:not([style*="color"]) > i:not([style*="color"]) {
    color: inherit !important;
}

.wall-entry-header h5,
.wall-entry-header h5 time,
.wall-entry-header .time,
.wall-entry-header .timeago,
.wall-entry-header small,
.panel-body .text-muted,
.panel-body .help-block:not(.help-block-error) {
    color: var(--cgy-site-muted) !important;
}

.wall-entry-controls a,
.wall-entry-links a,
.wall-entry-footer a.link,
.wall-entry-footer a.likeAnchor {
    color: var(--cgy-link-color) !important;
}

.panel-body > p:not([style*="color"]) a:not(.btn),
.wall-entry-content a:not(.btn):not([style*="color"]) {
    color: var(--cgy-link-color) !important;
}

a,
.wall-entry-controls a,
.comment-container a,
.content-container .help-block a {
    font-family: var(--cgy-link-font);
}
.wall-entry-controls a,
.comment-container .wall-entry-controls a,
.content-container a:not(.btn):not(.dropdown-toggle):not(.nav-link) {
    color: var(--cgy-link-color);
}
.wall-entry-controls a,
.comment-container .wall-entry-controls a {
    font-size: var(--cgy-link-size);
}


/* 19.69.29 — HumHub's bell trigger is a direct child of .notifications .btn-group.
   These selectors intentionally outrank HumHub's #topbar-first .btn-group > a rule. */
#topbar-first .notifications,
.topbar-first .notifications {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

#topbar-first .notifications .btn-group > a,
#topbar-first .notifications .btn-group.open > a,
#topbar-first .notifications .btn-group > a:hover,
#topbar-first .notifications .btn-group > a:focus,
#topbar-first .notifications .btn-group > a:active,
.topbar-first .notifications .btn-group > a,
.topbar-first .notifications .btn-group.open > a,
.topbar-first .notifications .btn-group > a:hover,
.topbar-first .notifications .btn-group > a:focus,
.topbar-first .notifications .btn-group > a:active,
#topbar-first .notifications .dropdown-toggle,
.topbar-first .notifications .dropdown-toggle {
    background: var(--cgy-notification-bg) !important;
    background-color: var(--cgy-notification-bg) !important;
    background-image: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    color: var(--cgy-notification-color) !important;
}

/* Preserve the notification dropdown itself; only the bell trigger is theme-transparent. */
#topbar-first .notifications .dropdown-menu,
.topbar-first .notifications .dropdown-menu {
    background-color: var(--cgy-site-panel-bg) !important;
}

/* 19.69.31: keep notification content readable on every light and dark preset. */
#dropdown-notifications,
#topbar-first #dropdown-notifications,
.topbar-first #dropdown-notifications {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-panel-bg) !important;
}

#dropdown-notifications .dropdown-header,
#dropdown-notifications .hh-list > a,
#dropdown-notifications .hh-list > a:hover,
#dropdown-notifications .hh-list > a:focus,
#dropdown-notifications .hh-list > a .flex-grow-1,
#dropdown-notifications .hh-list > a .flex-grow-1 > strong {
    color: var(--cgy-site-text) !important;
}

#dropdown-notifications .hh-list > a .flex-grow-1 > div,
#dropdown-notifications .hh-list > a .flex-grow-1 > small,
#dropdown-notifications .hh-list > a .flex-grow-1 > time,
#dropdown-notifications .hh-list > a .time,
#dropdown-notifications .hh-list > a .timeago {
    color: var(--cgy-site-muted) !important;
}

#dropdown-notifications .hh-list > a:hover,
#dropdown-notifications .hh-list > a:focus {
    background-color: color-mix(in srgb, var(--cgy-site-accent) 10%, var(--cgy-site-panel-bg)) !important;
}

#dropdown-notifications .dropdown-footer .btn {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-surface-alt) !important;
    border-color: var(--cgy-site-border) !important;
}

/* Keep unavailable controls legible instead of allowing theme foregrounds to
   fall through onto HumHub's pale disabled surfaces. */
.form-control:disabled,
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control,
.btn.disabled,
.btn[disabled],
.list-group-item.disabled,
.list-group-item[aria-disabled="true"],
.nav > li.disabled > a,
[aria-disabled="true"] {
    color: var(--cgy-site-muted) !important;
    background-color: var(--cgy-site-surface-alt) !important;
    border-color: var(--cgy-site-border) !important;
    opacity: 1 !important;
}

fieldset[disabled],
fieldset[disabled] label,
.form-group.disabled,
.form-group.disabled label,
.form-group.is-disabled,
.form-group.is-disabled label {
    color: var(--cgy-site-muted) !important;
}

/* HumHub Custom Pages and other Yii forms use these lightweight accordion
   headers outside the normal .panel-heading component. Keep their surface and
   foreground paired so a dark-theme title color never lands on a pale bar. */
.form-collapsible-fields > .form-collapsible-fields-label {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-surface-alt) !important;
    border-color: var(--cgy-site-border) !important;
    border-left: 3px solid var(--cgy-site-accent) !important;
}

.form-collapsible-fields > .form-collapsible-fields-label label,
.form-collapsible-fields > .form-collapsible-fields-label i,
.form-collapsible-fields > .form-collapsible-fields-label span {
    color: inherit !important;
}

.form-collapsible-fields > .form-collapsible-fields-label:hover,
.form-collapsible-fields > .form-collapsible-fields-label:focus {
    color: var(--cgy-site-text) !important;
    background-color: color-mix(in srgb, var(--cgy-site-accent) 16%, var(--cgy-site-surface-alt)) !important;
}

/* Custom Pages overview placement groups are not standard HumHub panel
   headings. Pair their pale/dark surface with the active theme foreground. */
.target-page-list > .target-page-list-head {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-surface-alt) !important;
    border: 1px solid var(--cgy-site-border) !important;
    border-left: 3px solid var(--cgy-site-accent) !important;
}

.target-page-list > .target-page-list-head strong,
.target-page-list > .target-page-list-head i,
.target-page-list > .target-page-list-head span {
    color: inherit !important;
}

/* HumHub Custom Pages applies a fixed white edit canvas even when a dark CGY
   preset supplies light form text. Theme the editor shell and its controls as
   one unit; TinyMCE/ProseMirror content canvases retain their own colors. */
.panel.panel-default.content-edit,
.panel.panel-default.content-edit > .panel-body {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-panel-bg) !important;
}

.panel.panel-default.content-edit label,
.panel.panel-default.content-edit .form-label,
.panel.panel-default.content-edit .control-label,
.panel.panel-default.content-edit .form-check-label {
    color: var(--cgy-site-text) !important;
}

.panel.panel-default.content-edit .form-text,
.panel.panel-default.content-edit .help-block:not(.help-block-error),
.panel.panel-default.content-edit .text-body-secondary {
    color: var(--cgy-site-muted) !important;
}

.panel.panel-default.content-edit .form-control,
.panel.panel-default.content-edit select.form-control,
.panel.panel-default.content-edit textarea.form-control,
.panel.panel-default.content-edit .select2-container .select2-selection,
.panel.panel-default.content-edit .select2-container .select2-search__field {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-panel-bg) !important;
    border-color: var(--cgy-site-border) !important;
}

.panel.panel-default.content-edit .select2-container .select2-selection__rendered,
.panel.panel-default.content-edit .select2-container .select2-selection__placeholder,
.panel.panel-default.content-edit .select2-container .select2-selection__choice {
    color: var(--cgy-site-text) !important;
}

.panel.panel-default.content-edit .form-collapsible-fields,
.panel.panel-default.content-edit .form-collapsible-fields > fieldset {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-panel-bg) !important;
    border-color: var(--cgy-site-border) !important;
}

/* Several HumHub administration modules publish a fixed white .panel-body
   after the base theme stylesheet. Reassert the complete panel color pair so
   headings, labels, summaries, and configuration text remain visible. */
.panel.panel-default > .panel-body {
    color: var(--cgy-site-text) !important;
    background-color: var(--cgy-site-panel-bg) !important;
}

.panel.panel-default > .panel-body .summary {
    color: var(--cgy-site-muted) !important;
}

.panel.panel-default > .panel-body label,
.panel.panel-default > .panel-body .form-label,
.panel.panel-default > .panel-body .control-label,
.panel.panel-default > .panel-body .form-check-label {
    color: var(--cgy-site-text) !important;
}

.list-group > a.list-group-item:not(.active),
.list-group > button.list-group-item:not(.active) {
    color: var(--cgy-site-accent-readable) !important;
    background-color: var(--cgy-site-panel-bg) !important;
    border-color: var(--cgy-site-border) !important;
}

.cgy-admin-module-panel .panel-heading span.cgy-admin-module-panel__suite-version {
    color: var(--cgy-site-on-accent) !important;
}

.btn-success,
.btn-accent {
    color: #000000 !important;
}

/* The foreground is calculated against --cgy-site-accent. A gradient ending
   at accent-dark can invalidate that calculation, so primary actions use the
   audited solid accent surface. */
.btn-primary,
.btn-info,
button.primary,
input[type="submit"].btn-primary {
    background: var(--cgy-site-accent) !important;
    background-color: var(--cgy-site-accent) !important;
    background-image: none !important;
    color: var(--cgy-site-on-accent) !important;
}

.btn-danger,
.badge-notifications,
.text-bg-danger {
    color: #000000 !important;
}

.tox .tox-promotion-link {
    color: #0755b3 !important;
}

.alert-danger {
    color: #7f1d1d !important;
    background-color: #fff1f2 !important;
    border-color: #fecdd3 !important;
}

.alert-danger a,
.alert-danger strong,
.alert-danger span {
    color: inherit !important;
}

/* Keep the user-account tile transparent so the selected top-bar palette remains continuous. */
#topbar-first .account,
.topbar-first .account,
#topbar-first .user-account,
.topbar-first .user-account,
#topbar-first .account .dropdown-toggle,
.topbar-first .account .dropdown-toggle,
#topbar-first .user-account .dropdown-toggle,
.topbar-first .user-account .dropdown-toggle {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}
