/* ============================
   360MiQ.com Theme System
   ============================ */

:root, [data-theme="light"] {
  /* ---------- Backgrounds ---------- */
  --bg-primary: #ffffff;
  --bg-secondary: #f5f5f5;
  --bg-card: #ffffff;
  --bg-card-header: darkgray;
  --bg-navbar: #ffffff;
  --bg-bottom-nav: #ffffff;
  --bg-chatbot-header: #393285;
  --bg-chatbot-message-ai: #f0f0f0;
  --bg-chatbot-message-user: #bbffff;
  --bg-chatbot-message-window: #fff;
  --bg-chatbot-entry: #fff;
  --bg-bottom-sheet: #fff;
  --bg-sheet-overlay: rgba(0, 0, 0, 0.5);
  --sheet-radius: 20px;
  --sheet-handle-color: #ccc;
  --sheet-handle-active-color: #999;
  --sheet-transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --bg-tooltip: #f8f8ff;
  --bg-help-tip: #BCDBEA;
  --bg-help-tip2: rgba(188, 219, 234, 0.7);
  --bg-autocomplete-alt: #ecf6fc;
  --bg-icon: #fff;
  --bg-loader-dot: black;

  /* ---------- Text ---------- */
  --text-primary: #000000;
  --text-secondary: #333333;
  --text-muted: #666666;
  --text-link: #007bff;
  --text-link-hover: #0056b3;
  --text-chatbot-link: #7226e0;
  --text-bottom-nav: #666666;
  --text-bottom-nav-active: #FF8C00;
  --text-sheet-content: #555;
  --text-chatbot-header: #fff;
  --text-chatbot-input: #333333;
  --text-chatbot-placeholder: #7f7f7f;
  --text-highlight: #00ffff;
  --text-card-header: white;
  --text-langbtn: #9f9f9f;
  --text-langbtn-hover: #000000;
  --text-recentpost: #000;

  /* ---------- Buttons ---------- */
  --button-primary-bg: #007bff;
  --button-primary-border: #007bff;
  --button-primary-hover-bg: #0069d9;
  --button-primary-hover-border: #0062cc;
  --button-outline-color: #007bff;
  --button-outline-border: #007bff;
  --button-outline-hover-bg: #007bff;
  --button-outline-hover-border: #007bff;
  --button-outline-subtle-border: rgba(0, 123, 255, .25);
  --button-outline-active-bg: rgba(0, 123, 255, .13);
  --button-outline-active-shadow: rgba(0, 123, 255, .24);

  /* ---------- Borders ---------- */
  --border-color: #dee2e6;
  --border-chatbot-header: #eee;
  --border-sheet-content: #f5f5f5;
  --border-icon: #eee;
  --border-chatbot-button: #7226e0;
  --border-no-style-button: #ccc;
  --border-scrollbar-thumb: #ccc;
  --border-table: #ccc;

  /* ---------- Positive / Negative (gain/loss) ---------- */
  --color-positive: #00aa44;
  --color-negative: #dd2222;
  --color-positive-bg: rgba(0, 170, 68, 0.12);
  --color-negative-bg: rgba(221, 34, 34, 0.12);

  /* ---------- Chart (Highcharts / AnyChart chrome) ---------- */
  --chart-bg: #eee;
  --chart-border: #777;
  --chart-grid-line: #e6e6e6;
  --chart-axis-line: #ccc;
  --chart-tick-color: #ccc;
  --chart-axis-label: #333333;
  --chart-title: #1a1a1a;
  --chart-subtitle: #4a4a4a;
  --chart-tooltip-bg: #ffffff;
  --chart-tooltip-border: #ccc;
  --chart-tooltip-text: #333333;
  --chart-legend-text: #333333;
  --chart-legend-hover: #000000;
  --chart-credits: #999;
  --chart-mask-fill: rgba(0, 0, 0, 0.15);
  --chart-navigator-handle-bg: #d9e6f2;
  --chart-navigator-handle-border: #777;
  --chart-navigator-outline: #ccc;
  --chart-scrollbar-bar-bg: #f0f0f0;
  --chart-scrollbar-bar-border: #ccc;
  --chart-scrollbar-button-bg: #f0f0f0;
  --chart-scrollbar-track-bg: #e6e6e6;
  --chart-scrollbar-track-border: #ccc;
  --chart-range-selector-bg: #f0f0f0;
  --chart-range-selector-border: #ccc;
  --chart-range-selector-text: #333;
  --chart-range-selector-input-text: #333;
  --chart-anychart-grid: #cccccc;
  --chart-anychart-bg: #888;
}

/* ---- chart legend rows (HK property table) ---- */
.legend-row { background: #fff; }

[data-theme="dark"] {
  --miq-autofill-bg: var(--bg-primary);
  --miq-autofill-text: var(--text-primary);
  /* ---------- Backgrounds ---------- */
  --bg-primary: #1a1a2e;
  --bg-secondary: #1a1a1a;
  --bg-card: #1e1e32;
  --bg-card-header: #2a2a3e;
  --bg-navbar: #22233a;
  --bg-bottom-nav: #1a1a2e;
  --bg-chatbot-header: #5f3dc4;
  --bg-chatbot-header-hover: #7048e8;
  --bg-chatbot-message-ai: #2a2a3e;
  --bg-chatbot-message-user: #1a3a4e;
  --bg-chatbot-message-window: #1a1a2e;
  --bg-chatbot-entry: #1a1a2e;
  --bg-bottom-sheet: #1e1e32;
  --bg-sheet-overlay: rgba(0, 0, 0, 0.7);
  --bg-tooltip: #2a2a3e;
  --bg-help-tip: #3a5a7e;
  --bg-help-tip2: rgba(58, 90, 126, 0.7);
  --bg-autocomplete-alt: #2a2a3e;
  --bg-icon: #2a2a3e;
  --bg-loader-dot: #cccccc;

  /* ---------- Text ---------- */
  --text-primary: #e8e8e8;
  --text-secondary: #c0c0c0;
  --text-muted: #999999;
  --text-link: #6ea8ff;
  --text-link-bright: #66c7ff;
  --text-link-hover: #8ec8ff;
  --text-chatbot-link: #9b5ce0;
  --text-bottom-nav: #aaaaaa;
  --text-bottom-nav-active: #FF8C00;
  --text-sheet-content: #aaaaaa;
  --text-chatbot-header: #fff;
  --text-chatbot-input: #cccccc;
  --text-chatbot-placeholder: #888888;
  --text-highlight: #00ffff;
  --text-card-header: #cccccc;
  --text-langbtn: #aaaaaa;
  --text-langbtn-hover: #ffffff;
  --text-recentpost: #cccccc;

  /* ---------- Buttons: restore solid controls to Bootstrap blue ---------- */
  --button-primary-bg: #007bff;
  --button-primary-border: #007bff;
  --button-primary-hover-bg: #0069d9;
  --button-primary-hover-border: #0062cc;
  --button-outline-color: var(--text-link-bright);
  --button-outline-border: var(--text-link-bright);
  --button-outline-hover-bg: var(--text-link-bright);
  --button-outline-hover-border: var(--text-link-bright);
  --button-outline-subtle-border: rgba(102, 199, 255, .35);
  --button-outline-active-bg: rgba(102, 199, 255, .15);
  --button-outline-active-shadow: rgba(102, 199, 255, .28);

  /* ---------- Borders ---------- */
  --border-color: #3a3a4e;
  --border-chatbot-header: #2a2a3e;
  --border-sheet-content: #2a2a3e;
  --border-icon: #3a3a4e;
  --border-chatbot-button: #9b5ce0;
  --border-no-style-button: #555;
  --border-scrollbar-thumb: #555;
  --border-table: #3a3a4e;

  /* ---------- Positive / Negative — BRIGHTER in dark mode ---------- */
  --color-positive: #44ff44;
  --color-negative: #ff4444;
  --color-positive-bg: rgba(68, 255, 68, 0.2);
  --color-negative-bg: rgba(255, 68, 68, 0.2);

  /* ---------- Chart ---------- */
  --chart-bg: #2a2a3e;
  --chart-border: #555;
  --chart-grid-line: #45475f;
  --chart-axis-line: #444;
  --chart-tick-color: #444;
  --chart-axis-label: #cccccc;
  --chart-title: #e8e8e8;
  --chart-subtitle: #b0b0b0;
  --chart-tooltip-bg: #2a2a2a;
  --chart-tooltip-border: #444;
  --chart-tooltip-text: #e8e8e8;
  --chart-legend-text: #cccccc;
  --chart-legend-hover: #ffffff;
  --chart-credits: #666;
  --chart-mask-fill: rgba(0, 0, 0, 0.35);
  --chart-navigator-handle-bg: #4b5673;
  --chart-navigator-handle-border: #555;
  --chart-navigator-outline: #555;
  --chart-scrollbar-bar-bg: #2a2a3e;
  --chart-scrollbar-bar-border: #444;
  --chart-scrollbar-button-bg: #2a2a3e;
  --chart-scrollbar-track-bg: #1a1a2e;
  --chart-scrollbar-track-border: #444;
  --chart-range-selector-bg: #2a2a3e;
  --chart-range-selector-border: #444;
  --chart-range-selector-text: #cccccc;
  --chart-range-selector-input-text: #cccccc;
  --chart-anychart-grid: #3a3a4e;
  --chart-anychart-bg: #2a2a3e;
}

/* Keep native form controls dark without forcing third-party frames into a dark color scheme. */
[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] textarea {
  color-scheme: dark;
}

/* Keep browser autofill aligned with dark theme controls across pages. */
[data-theme="dark"] input:-webkit-autofill,
[data-theme="dark"] input:-webkit-autofill:hover,
[data-theme="dark"] input:-webkit-autofill:focus,
[data-theme="dark"] input:-webkit-autofill:active {
  background-color: var(--miq-autofill-bg) !important;
  background-image: none !important;
  -webkit-text-fill-color: var(--miq-autofill-text) !important;
  -webkit-box-shadow: 0 0 0 1000px var(--miq-autofill-bg) inset !important;
  box-shadow: 0 0 0 1000px var(--miq-autofill-bg) inset !important;
  caret-color: var(--miq-autofill-text);
}

[data-theme="dark"] input:autofill,
[data-theme="dark"] input:autofill:hover,
[data-theme="dark"] input:autofill:focus,
[data-theme="dark"] input:autofill:active {
  background-color: var(--miq-autofill-bg) !important;
  background-image: none !important;
  color: var(--miq-autofill-text) !important;
  -webkit-text-fill-color: var(--miq-autofill-text) !important;
  box-shadow: 0 0 0 1000px var(--miq-autofill-bg) inset !important;
  caret-color: var(--miq-autofill-text);
}

/* Keep the document canvas aligned with the active theme, including page gutters. */
html[data-theme],
html[data-theme] body {
  background-color: var(--bg-primary);
  color: var(--text-primary);
}

/* ============================
   CHATBOT / BOTTOM-NAV / SHEET
   ============================ */

[data-theme="dark"] .chatbot__header {
  background-color: var(--bg-chatbot-header);
  color: #fff;
}

[data-theme="dark"] .chatbot__header:hover {
  background-color: var(--bg-chatbot-header-hover);
}

[data-theme="dark"] .chatbot__submit {
  fill: #9b5ce0;
}

[data-theme="dark"] .chatbot__submit:hover {
  fill: #7b3cc0;
}

[data-theme="dark"] .chatbot__message-window {
  background-color: var(--bg-chatbot-message-window);
}

[data-theme="dark"] .chatbot__entry {
  background: var(--bg-chatbot-entry);
}

[data-theme="dark"] .chatbot__message button {
  background-color: var(--bg-chatbot-message-ai);
  border: 2px solid var(--border-chatbot-button);
}

[data-theme="dark"] .chatbot__message button:hover {
  background-color: #3a3a4e;
}

[data-theme="dark"] .chatbot__message button.no-chatbot-style {
  background-color: var(--bg-card);
  color: var(--text-secondary);
  border: 1px solid var(--border-no-style-button);
}

[data-theme="dark"] .chatbot__message .card {
  background-color: var(--bg-card);
  color: var(--text-primary);
}

[data-theme="dark"] .chatbot__message a {
  color: var(--text-chatbot-link);
}

[data-theme="dark"] .chatbot__arrow--right {
  border-left: 6px solid var(--bg-chatbot-message-user);
}

[data-theme="dark"] .chatbot__arrow--left {
  border-right: 6px solid var(--bg-chatbot-message-ai);
}

[data-theme="dark"] .bottom-nav {
  background-color: var(--bg-bottom-nav);
}

[data-theme="dark"] .bottom-sheet {
  background: var(--bg-bottom-sheet);
}

[data-theme="dark"] .sheet-content a,
[data-theme="dark"] .sheet-content button {
  color: var(--text-sheet-content) !important;
  border-bottom: 1px solid var(--border-sheet-content);
}

[data-theme="dark"] .sheet-content .sheet-stock-item {
  color: #f3f4f6 !important;
}

[data-theme="dark"] .sheet-content .sheet-stock-item span {
    color: #d1d5db;
    opacity: 1;
}

[data-theme="dark"] .sheet-content .sheet-choice-item span,
[data-theme="dark"] .sheet-content .sheet-indicator-item span {
    color: #d1d5db;
    opacity: 1;
}

[data-theme="dark"] .sheet-search-input {
    background: #141b2e;
    border-color: #3a4763;
    color: #f3f4f6;
}

[data-theme="dark"] .chatbot__input {
  color: var(--text-chatbot-input);
}

[data-theme="dark"] .chatbot__input::placeholder {
  color: var(--text-chatbot-placeholder);
}

[data-theme="dark"] .chatbot__input::-webkit-input-placeholder {
  color: var(--text-chatbot-placeholder);
}

[data-theme="dark"] .chatbot__input:-moz-placeholder {
  color: var(--text-chatbot-placeholder);
}

[data-theme="dark"] .chatbot__input::-moz-placeholder {
  color: var(--text-chatbot-placeholder);
}

[data-theme="dark"] .chatbot__input:-ms-input-placeholder {
  color: var(--text-chatbot-placeholder);
}

[data-theme="dark"] .chatbot__message-window::-webkit-scrollbar-thumb {
  background: var(--border-scrollbar-thumb);
}

/* ============================
   UI COMPONENTS
   ============================ */

[data-theme="dark"] span.mytooltip:hover::after {
  background-color: var(--bg-tooltip);
  color: var(--text-primary);
}

[data-theme="dark"] .help-tip,
[data-theme="dark"] .help-tip2 {
  background-color: var(--bg-help-tip);
}

[data-theme="dark"] .help-tip2 p {
  background-color: var(--bg-tooltip);
  color: var(--text-primary);
}

[data-theme="dark"] .help-tip2 p:before {
  border-bottom-color: var(--bg-tooltip);
}

[data-theme="dark"] .card-header {
  background-color: var(--bg-card-header);
  color: var(--text-card-header);
}

[data-theme="dark"] .langbtn {
  color: var(--text-langbtn);
}

[data-theme="dark"] .langbtn:hover {
  color: var(--text-langbtn-hover);
}

[data-theme="dark"] .icon {
  background-color: var(--bg-icon);
  border: 1px solid var(--border-icon);
}

[data-theme="dark"] .ui-autocomplete .ui-menu-item:nth-child(even) {
  background-color: var(--bg-autocomplete-alt);
}

/* ============================
   NAVBAR — override Bootstrap classes
   ============================ */

@media (min-width: 992px) {
  .clean-navbar .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem;
  }

  .clean-navbar .miq-header-search {
    flex: 0 0 auto;
    margin-left: auto;
  }

  .clean-navbar .miq-header-search #ac2 {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
  }

  .clean-navbar .miq-header-search #autocomplete2 {
    width: 150px;
    flex: 0 1 150px;
    min-width: 0;
  }
}

@media (max-width: 991.98px) {
  .clean-navbar .miq-header-search {
    display: none;
  }
}

[data-theme="dark"] .navbar {
  background-color: var(--bg-navbar) !important;
}

[data-theme="dark"] .navbar .nav-link,
[data-theme="dark"] .navbar .navbar-brand {
  color: #bbbbbb !important;
}

[data-theme="dark"] .navbar .nav-item.active .nav-link,
[data-theme="dark"] .navbar .nav-link.active {
  font-weight: bold !important;
  color: #ffffff !important;
}

[data-theme="dark"] .navbar .nav-link:hover,
[data-theme="dark"] .navbar .navbar-brand:hover {
  color: #ffffff !important;
}

[data-theme="dark"] .navbar .navbar-toggler .navtitle {
  color: #ffffff;
}

[data-theme="dark"] .navbar .dropdown-menu {
  background-color: var(--bg-navbar);
}

[data-theme="dark"] .navbar .dropdown-item {
  color: #bbbbbb;
}

[data-theme="dark"] .navbar .dropdown-item:hover {
  color: #ffffff;
  background-color: var(--bg-secondary);
}

[data-theme="dark"] .nav-tabs .nav-link:not(.active),
[data-theme="dark"] .nav-tabs .nav-link.mynav-link:not(.active),
[data-theme="dark"] .nav-tabs .nav-link.nl:not(.active) {
  color: var(--text-link-bright) !important;
}

[data-theme="dark"] .nav-tabs .nav-link:not(.active):hover,
[data-theme="dark"] .nav-tabs .nav-link:not(.active):focus,
[data-theme="dark"] .nav-tabs .nav-link.mynav-link:not(.active):hover,
[data-theme="dark"] .nav-tabs .nav-link.mynav-link:not(.active):focus,
[data-theme="dark"] .nav-tabs .nav-link.nl:not(.active):hover,
[data-theme="dark"] .nav-tabs .nav-link.nl:not(.active):focus {
  color: var(--text-link-hover) !important;
}

[data-theme="dark"] .navbar .btn-outline-primary,
[data-theme="dark"] .navbar .btn-outline-primary .fa-search {
  border-color: var(--button-outline-border) !important;
  color: var(--button-outline-color) !important;
}

[data-theme="dark"] .navbar .btn-outline-primary:hover,
[data-theme="dark"] .navbar .btn-outline-primary:focus,
[data-theme="dark"] .navbar .btn-outline-primary:active,
[data-theme="dark"] .navbar .btn-outline-primary:not(:disabled):not(.disabled):active,
[data-theme="dark"] .navbar .btn-outline-primary:not(:disabled):not(.disabled).active,
[data-theme="dark"] .navbar .show > .btn-outline-primary.dropdown-toggle {
  background-color: var(--button-outline-hover-bg) !important;
  border-color: var(--button-outline-hover-border) !important;
  color: #ffffff !important;
}

[data-theme="dark"] .navbar .btn-outline-primary:hover .fa-search,
[data-theme="dark"] .navbar .btn-outline-primary:focus .fa-search,
[data-theme="dark"] .navbar .btn-outline-primary:active .fa-search,
[data-theme="dark"] .navbar .btn-outline-primary:not(:disabled):not(.disabled):active .fa-search,
[data-theme="dark"] .navbar .btn-outline-primary:not(:disabled):not(.disabled).active .fa-search {
  color: #ffffff !important;
}

/* Keep solid controls on Bootstrap blue while outlined controls retain the header accent. */
[data-theme="dark"] .btn-primary,
[data-theme="dark"] .btn-primary:disabled,
[data-theme="dark"] .btn-primary.disabled {
  background-color: var(--button-primary-bg) !important;
  border-color: var(--button-primary-border) !important;
  color: #ffffff !important;
}

[data-theme="dark"] .btn-primary:hover,
[data-theme="dark"] .btn-primary:focus,
[data-theme="dark"] .btn-primary:active,
[data-theme="dark"] .btn-primary:not(:disabled):not(.disabled):active,
[data-theme="dark"] .btn-primary:not(:disabled):not(.disabled).active,
[data-theme="dark"] .show > .btn-primary.dropdown-toggle {
  background-color: var(--button-primary-hover-bg) !important;
  border-color: var(--button-primary-hover-border) !important;
  color: #ffffff !important;
}

[data-theme="dark"] .btn-outline-primary,
[data-theme="dark"] .btn-outline-primary:disabled,
[data-theme="dark"] .btn-outline-primary.disabled {
  background-color: transparent !important;
  border-color: var(--button-outline-border) !important;
  color: var(--button-outline-color) !important;
}

[data-theme="dark"] .btn-outline-primary:hover,
[data-theme="dark"] .btn-outline-primary:focus,
[data-theme="dark"] .btn-outline-primary:active,
[data-theme="dark"] .btn-outline-primary:not(:disabled):not(.disabled):active,
[data-theme="dark"] .btn-outline-primary:not(:disabled):not(.disabled).active,
[data-theme="dark"] .show > .btn-outline-primary.dropdown-toggle {
  background-color: var(--button-primary-bg) !important;
  border-color: var(--button-primary-border) !important;
  color: #ffffff !important;
}

.highcharts-data-label.advdec-percent-label text,
.highcharts-data-label.advdec-percent-label tspan:not(.highcharts-text-outline) {
  color: #000000 !important;
  fill: #000000 !important;
  stroke: none !important;
}

.highcharts-data-label.advdec-percent-label .highcharts-text-outline {
  fill: #ffffff !important;
  stroke: #ffffff !important;
  stroke-width: 2px !important;
}

/* ============================
   THEME TOGGLE BUTTON
   ============================ */

#theme-toggle {
  background: transparent;
  border: none;
  cursor: pointer;
  font-size: 1.2rem;
  padding: 0;
  line-height: inherit;
  color: #f9a825;
  text-decoration: none;
  position: relative;
  top: 3px;
  min-width: 1.5rem;
  text-align: center;
}

#theme-toggle:hover {
  background: rgba(255, 255, 255, 0.1);
}

#theme-toggle .miq-theme-label {
  display: none;
}

@media (max-width: 991.98px) {
  #theme-toggle {
    display: grid;
    grid-template-columns: max-content 1.25rem;
    column-gap: .4rem;
    align-items: center;
    justify-content: start;
    top: 0;
    padding: .5rem 0;
    font-size: .8rem;
    line-height: 1.5;
    text-align: left;
  }

  #theme-toggle .miq-theme-icon {
    display: inline-flex;
    grid-column: 2;
    grid-row: 1;
    width: 1.25rem;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    line-height: 1;
    text-align: center;
  }

  #theme-toggle .miq-theme-label {
    display: block;
    grid-column: 1;
    grid-row: 1;
    color: rgba(0, 0, 0, .5);
    font-size: .8rem;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
    text-transform: uppercase;
  }

  #theme-toggle:hover .miq-theme-label {
    color: rgba(0, 0, 0, .7);
  }

  [data-theme="dark"] .navbar #theme-toggle .miq-theme-label {
    color: #bbbbbb;
  }

  [data-theme="dark"] .navbar #theme-toggle:hover .miq-theme-label {
    color: #ffffff;
  }
}

#theme-toggle .theme-icon-dark {
  display: none;
}

[data-theme="dark"] #theme-toggle {
  color: #9ecbff;
}

[data-theme="dark"] #theme-toggle .theme-icon-light {
  display: none;
}

[data-theme="dark"] #theme-toggle .theme-icon-dark {
  display: inline;
}

/* ============================
   TABLE ALTERNATING ROW COLORS
   ============================ */

[data-theme="dark"] #no-more-tables tr {
  border: 1px solid var(--border-table);
}

[data-theme="dark"] #no-more-tables td {
  color: var(--text-secondary);
}

/* ============================
   INLINE-COLORED H4s — dark mode override
   ============================ */

[data-theme="dark"] h4[style*="color:#444444"] {
  color: #cccccc !important;
}

/* ============================
   FEATURED POST TITLE OVERLAYS — dark mode
   ============================ */

[data-theme="dark"] div[id^="featuredposttitle"] {
  background: rgba(30, 30, 50, 0.9);
  color: #e8e8e8;
}
[data-theme="dark"] div[id^="featuredposttitle"] p {
  color: #e8e8e8;
}
[data-theme="dark"] div[id^="pinnedposttitle"] {
  background: rgba(30, 30, 50, 0.9) !important;
  color: #e8e8e8 !important;
}

/* ============================
   NOTEWRAPPER — dark mode
   ============================ */

[data-theme="dark"] .noteWrapper {
  color: var(--text-secondary) !important;
}
[data-theme="dark"] .noteWrapper.collapsed::after {
  background: linear-gradient(to bottom, rgba(26, 26, 46, 0), rgba(26, 26, 46, 1)) !important;
}

[data-theme="dark"] main.page hr {
  border-color: #72758f !important;
  background-color: #72758f !important;
  color: #72758f !important;
  opacity: 0.9;
}

/* ============================
   GREEN / RED / BLACK TEXT — brighter in dark mode
   ============================ */

[data-theme="dark"] *[style*="color:green"],
[data-theme="dark"] *[style*="color:'green'"],
[data-theme="dark"] *[style*='color:"green"'],
[data-theme="dark"] *[style*="color:red"],
[data-theme="dark"] *[style*="color:'red'"],
[data-theme="dark"] *[style*='color:"red"'],
[data-theme="dark"] *[style*="color:black"],
[data-theme="dark"] *[style*="color:'black'"],
[data-theme="dark"] *[style*='color:"black"'],
[data-theme="dark"] font[color="green"],
[data-theme="dark"] font[color="red"],
[data-theme="dark"] font[color="black"] {
  color: inherit;
}
[data-theme="dark"] *[style*="color:green"],
[data-theme="dark"] *[style*="color:'green'"],
[data-theme="dark"] *[style*='color:"green"'],
[data-theme="dark"] font[color="green"] {
  color: #44ff44 !important;
}
[data-theme="dark"] *[style*="color:red"],
[data-theme="dark"] *[style*="color:'red'"],
[data-theme="dark"] *[style*='color:"red"'],
[data-theme="dark"] font[color="red"] {
  color: #ff4444 !important;
}
[data-theme="dark"] *[style*="color:black"],
[data-theme="dark"] *[style*="color:'black'"],
[data-theme="dark"] *[style*='color:"black"'],
[data-theme="dark"] font[color="black"] {
  color: #cccccc !important;
}

/* ============================
   #007bff LINK COLOR — brighter in dark mode
   ============================ */

[data-theme="dark"] .code-link,
[data-theme="dark"] .code-link2,
[data-theme="dark"] .showNote,
[data-theme="dark"] .miq-community-pulse-link,
[data-theme="dark"] .miq-workspace-page .miq-dashboard-panel-heading > a,
[data-theme="dark"] .miq-workspace-page .miq-dashboard-stock-list > a,
[data-theme="dark"] .miq-workspace-page .miq-asset-title,
[data-theme="dark"] .miq-workspace-page .miq-management-card a:not(.btn):not(.text-danger),
[data-theme="dark"] .miq-workspace-page .miq-user-admin-table td > a,
[data-theme="dark"] .miq-workspace-page .miq-user-admin-controls summary,
[data-theme="dark"] .miq-workspace-page .miq-user-admin-pagination a:not(.is-active),
[data-theme="dark"] .miq-workspace-page .btn-link:not(.text-danger),
[data-theme="dark"] .miq-community-page .btn-link:not(.text-danger),
[data-theme="dark"] .miq-account-page .btn-link:not(.text-danger) {
  color: var(--text-link) !important;
}

[data-theme="dark"] a:not([class]),
[data-theme="dark"] a.code-link,
[data-theme="dark"] a.code-link2 {
  color: var(--text-link) !important;
}

[data-theme="dark"] a:not([class]):hover,
[data-theme="dark"] a.code-link:hover,
[data-theme="dark"] a.code-link2:hover,
[data-theme="dark"] .miq-community-pulse-link:hover,
[data-theme="dark"] .miq-community-pulse-link:focus,
[data-theme="dark"] .miq-workspace-page .miq-dashboard-panel-heading > a:hover,
[data-theme="dark"] .miq-workspace-page .miq-dashboard-panel-heading > a:focus,
[data-theme="dark"] .miq-workspace-page .miq-dashboard-stock-list > a:hover,
[data-theme="dark"] .miq-workspace-page .miq-dashboard-stock-list > a:focus,
[data-theme="dark"] .miq-workspace-page .miq-asset-title:hover,
[data-theme="dark"] .miq-workspace-page .miq-asset-title:focus,
[data-theme="dark"] .miq-workspace-page .miq-management-card a:not(.btn):not(.text-danger):hover,
[data-theme="dark"] .miq-workspace-page .miq-management-card a:not(.btn):not(.text-danger):focus,
[data-theme="dark"] .miq-workspace-page .miq-user-admin-table td > a:hover,
[data-theme="dark"] .miq-workspace-page .miq-user-admin-table td > a:focus,
[data-theme="dark"] .miq-workspace-page .miq-user-admin-controls summary:hover,
[data-theme="dark"] .miq-workspace-page .miq-user-admin-controls summary:focus,
[data-theme="dark"] .miq-workspace-page .miq-user-admin-pagination a:not(.is-active):hover,
[data-theme="dark"] .miq-workspace-page .miq-user-admin-pagination a:not(.is-active):focus,
[data-theme="dark"] .miq-workspace-page .btn-link:not(.text-danger):hover,
[data-theme="dark"] .miq-workspace-page .btn-link:not(.text-danger):focus,
[data-theme="dark"] .miq-community-page .btn-link:not(.text-danger):hover,
[data-theme="dark"] .miq-community-page .btn-link:not(.text-danger):focus,
[data-theme="dark"] .miq-account-page .btn-link:not(.text-danger):hover,
[data-theme="dark"] .miq-account-page .btn-link:not(.text-danger):focus {
  color: var(--text-link-hover) !important;
}

[data-theme="dark"] .page-footer.dark a {
  color: #d2d1d1 !important;
}

[data-theme="dark"] .page-footer.dark a:hover,
[data-theme="dark"] .page-footer.dark a:focus {
  color: #ffffff !important;
}

[data-theme="dark"] .page-footer.dark a[style*="color: #aaa"],
[data-theme="dark"] .page-footer.dark a[style*="color:#aaa"] {
  color: #aaa !important;
}

/* ============================
   LOADER DOT — dark mode override
   ============================ */

[data-theme="dark"] .loader__dot {
  background: var(--bg-loader-dot);
}

/* ============================
   COOKIE CONSENT — dark mode
   ============================ */

[data-theme="dark"] #cc__modal__container #cc__modal {
  background: var(--bg-card);
  color: var(--text-primary);
}

[data-theme="dark"] #cc__modal__container #cc__policy {
  background: var(--bg-card);
}

[data-theme="dark"] #cc__modal__container #cc__policy__header {
  background: var(--bg-card);
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] #cc__modal__container #cc__policy__content table tr:nth-of-type(odd) {
  background: var(--bg-secondary);
}

/* ============================
   HIGHCHARTS CONTEXT MENU — dark mode
   ============================ */

[data-theme="dark"] .highcharts-contextmenu {
  background: #2a2a3e;
  border: 1px solid #3a3a4e;
}
[data-theme="dark"] .highcharts-contextmenu .highcharts-menu {
  background: #2a2a3e !important;
  color: #cccccc !important;
  border: 1px solid #3a3a4e !important;
  list-style: none;
}
[data-theme="dark"] .highcharts-contextmenu .highcharts-menu-item {
  color: #cccccc !important;
  background: transparent !important;
}
[data-theme="dark"] .highcharts-contextmenu .highcharts-menu-item:hover,
[data-theme="dark"] .highcharts-contextmenu .highcharts-menu-item.highcharts-menu-item-hover {
  background: #3a3a4e !important;
  color: #ffffff !important;
}
[data-theme="dark"] .highcharts-contextmenu hr {
  color: #3a3a4e !important;
  background: #3a3a4e !important;
  border-top: 1px solid #3a3a4e !important;
}

/* ---- legend rows in HK property table ---- */
.legend-row { background: #fff; }
[data-theme="dark"] .legend-row { background: #1e1e32; }

/* ============================
   Inline #f9f9f9 backgrounds — dark mode override
   Used in stockinfo.php for performance table cells,
   peer table alternating rows, and clean cards.
   ============================ */
[data-theme="dark"] *[style*="background-color:#f9f9f9"],
[data-theme="dark"] *[style*="background-color: #f9f9f9"],
[data-theme="dark"] *[style*='background-color:#f9f9f9'],
[data-theme="dark"] *[style*='background-color: #f9f9f9'],
[data-theme="dark"] *[style*="rgb(249, 249, 249)"] {
  background-color: #2a2a3e !important;
}

/* -- stockinfo.php: table cells with #ecf6fc highlighting -- */
[data-theme="dark"] *[style*="background-color:#ecf6fc"],
[data-theme="dark"] *[style*="background-color: #ecf6fc"],
[data-theme="dark"] *[style*='background-color:#ecf6fc'],
[data-theme="dark"] *[style*='background-color: #ecf6fc'] {
  background-color: #1e1e32 !important;
}

/* -- stockinfo.php: inner div background-color:white (not SVG rect fills) -- */
[data-theme="dark"] div[style*="background-color:white"],
[data-theme="dark"] div[style*="background-color: white"] {
  background-color: #2a2a3e !important;
}

/* -- Price card header gradients (stockinfo.php) --
     Up:   light green  → dark green
     Down: light red    → dark red
     Flat: light beige  → dark neutral
     Browser serialises hex to rgb(), so match both forms.
  -- */
[data-theme="dark"] *[style*="#FFE0E0"],
[data-theme="dark"] *[style*="rgb(255, 224, 224)"],
[data-theme="dark"] *[style*="rgb(255,247,246)"] {
  background-image: linear-gradient(#3e1a1a, #2a1a2e, #3e1a1a) !important;
}
[data-theme="dark"] *[style*="rgb(221, 243, 170)"],
[data-theme="dark"] *[style*="rgb(255, 255, 224)"],
[data-theme="dark"] *[style*="#ddf3aa"],
[data-theme="dark"] *[style*="#ffffe0"] {
  background-image: linear-gradient(#1a3e1a, #1e2a2e, #1a3e1a) !important;
}
[data-theme="dark"] *[style*="rgb(233, 233, 233)"],
[data-theme="dark"] *[style*="rgb(255, 255, 251)"],
[data-theme="dark"] *[style*="rgb(243, 243, 201)"],
[data-theme="dark"] *[style*="rgb(255, 255, 233)"],
[data-theme="dark"] *[style*="#e9e9e9, #Fffffb, #e9e9e9"],
[data-theme="dark"] *[style*="#F3f3c9"] {
  background-image: linear-gradient(#2a2a3e, #1a1a2e, #2a2a3e) !important;
}

/* -- Range chart SVG backgrounds (stockinfo.php card header) -- */
[data-theme="dark"] #rangecontainer .highcharts-background,
[data-theme="dark"] #volrangecontainer .highcharts-background {
  fill: #2a2a3e !important;
}

/* ============================
   CONTACT FORM — dark mode
   ============================ */

/* Page section background */
[data-theme="dark"] .clean-block.clean-form {
  background-color: var(--bg-primary);
}

[data-theme="dark"] .clean-block.clean-form .container {
  background-color: var(--bg-primary);
}

/* Form card — slightly lighter than page so it stands out */
[data-theme="dark"] .clean-block.clean-form form,
[data-theme="dark"] .clean-block.clean-form .form-wrapper {
  background-color: var(--bg-card) !important;
  border-right: 1px solid var(--border-color) !important;
  border-bottom: 1px solid var(--border-color) !important;
  border-left: 1px solid var(--border-color) !important;
  border-radius: 6px;
  padding: 24px !important;
}

[data-theme="dark"] .clean-block.clean-form .block-heading h1,
[data-theme="dark"] .clean-block.clean-form .block-heading p {
  color: var(--text-secondary);
}

[data-theme="dark"] .clean-block.clean-form .form-group label {
  color: var(--text-secondary);
}

/* Inputs — darker than card so they read as inset fields */
[data-theme="dark"] .clean-block.clean-form .form-control {
  background-color: var(--bg-primary) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

[data-theme="dark"] .clean-block.clean-form .form-control:focus {
  background-color: var(--bg-primary) !important;
  color: var(--text-primary) !important;
  border-color: #6ea8ff !important;
  box-shadow: 0 0 0 0.2rem rgba(110, 168, 255, 0.2) !important;
}

[data-theme="dark"] .clean-block.clean-form .form-control::placeholder {
  color: var(--text-muted);
}

[data-theme="dark"] .clean-block.clean-form .form-control:disabled {
  background-color: var(--bg-secondary) !important;
  color: var(--text-muted) !important;
  border-color: var(--border-color) !important;
}

/*[data-theme="dark"] .clean-block.clean-form .btn-primary {
  background-color: #4a5a9e;
  border-color: #5a6aae;
  color: #ffffff;
}

[data-theme="dark"] .clean-block.clean-form .btn-primary:hover:not(:disabled) {
  background-color: #5a6aae;
  border-color: #6a7abe;
}

[data-theme="dark"] .clean-block.clean-form .btn-primary:disabled {
  background-color: #3a3a5e;
  border-color: #4a4a6e;
  color: var(--text-muted);
}*/

[data-theme="dark"] .navbar-toggler .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,0.7)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

[data-theme="dark"] .navbar-toggler {
  border-color: rgba(255, 255, 255, 0.4);
}

[data-theme="dark"] td.dt-body-center.dtr-control.sorting_1 {
  color: #aaaaaa !important;
}
