/* idx03 readability pass: raise contrast without changing layout. */
:root {
  --idx03-text: #172033;
  --idx03-muted: #334155;
  --idx03-soft: #475569;
  --idx03-link: #0b5fcc;
  --idx03-link-dark: #064b9b;
}

html,
body {
  color: var(--idx03-text);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body,
p,
li,
dd,
td,
th,
summary,
details,
figcaption,
span,
div {
  color: inherit;
}

p,
li,
dd,
td,
summary,
.input_c791,
.glass-400d span,
.fast-f960,
.secondary-black-d8a7,
.fresh_c898,
.inner-424d,
.banner_stone_8039,
.dabo-summary,
.summary,
.meta,
.dabo-app span {
  color: var(--idx03-muted) !important;
}

a {
  color: var(--idx03-link);
}

a:hover,
a:focus {
  color: var(--idx03-link-dark);
}

.advanced-3805,
.upper_281e,
.section_solid_1c2c,
[style*="linear-gradient"] {
  color: #ffffff;
}

.advanced-3805 p,
.advanced-3805 span,
.advanced-3805 li,
.advanced-3805 div,
.advanced-3805 strong,
.advanced-3805 a,
.upper_281e p,
.upper_281e span,
.upper_281e li,
.upper_281e div,
.upper_281e strong,
.upper_281e a,
.section_solid_1c2c p,
.section_solid_1c2c span,
.section_solid_1c2c li,
.section_solid_1c2c div,
.section_solid_1c2c strong,
.section_solid_1c2c a {
  color: #ffffff !important;
}

.advanced-3805 a,
.upper_281e a,
.section_solid_1c2c a {
  text-decoration-color: rgba(255, 255, 255, 0.7);
}

.advanced-3805 [style*="background: white"],
.advanced-3805 [style*="background:#fff"],
.advanced-3805 [style*="background: #fff"],
.upper_281e [style*="background: white"],
.upper_281e [style*="background:#fff"],
.upper_281e [style*="background: #fff"],
.section_solid_1c2c [style*="background: white"],
.section_solid_1c2c [style*="background:#fff"],
.section_solid_1c2c [style*="background: #fff"] {
  color: var(--idx03-text) !important;
}

.advanced-3805 [style*="background: white"] *,
.advanced-3805 [style*="background:#fff"] *,
.advanced-3805 [style*="background: #fff"] *,
.upper_281e [style*="background: white"] *,
.upper_281e [style*="background:#fff"] *,
.upper_281e [style*="background: #fff"] *,
.section_solid_1c2c [style*="background: white"] *,
.section_solid_1c2c [style*="background:#fff"] *,
.section_solid_1c2c [style*="background: #fff"] * {
  color: inherit !important;
}

.advanced-3805 [style*="rgba(255,255,255,0.1)"],
.advanced-3805 [style*="rgba(255, 255, 255, 0.1)"],
.advanced-3805 [style*="rgba(255,255,255,0.15)"],
.advanced-3805 [style*="rgba(255, 255, 255, 0.15)"],
.upper_281e [style*="rgba(255,255,255,0.1)"],
.upper_281e [style*="rgba(255, 255, 255, 0.1)"],
.upper_281e [style*="rgba(255,255,255,0.15)"],
.upper_281e [style*="rgba(255, 255, 255, 0.15)"] {
  background: rgba(15, 23, 42, 0.24) !important;
  border: 1px solid rgba(255, 255, 255, 0.32);
}

.notice_f002,
header.popup-922d {
  background: rgba(255, 255, 255, 0.99) !important;
  color: var(--idx03-text) !important;
}

.notice_f002 *,
header.popup-922d * {
  color: var(--idx03-text) !important;
}

.feature-cd0f,
.card_cc7e,
.background_short_8169 {
  color: var(--idx03-text) !important;
}

.detail_fe63 {
  background: #ffffff !important;
  border: 1px solid #d7dde8 !important;
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.16) !important;
}

.detail_fe63 a,
.detail_fe63 button {
  color: var(--idx03-text) !important;
}

.element-tiny-6001,
.element-tiny-6001 *,
.plasma-e78a,
.plasma-e78a * {
  color: inherit;
}

.element-tiny-6001:not([style*="background: white"]):not([style*="background:#fff"]):not([style*="background: #fff"]),
.plasma-e78a:not([style*="background: white"]):not([style*="background:#fff"]):not([style*="background: #fff"]) {
  color: #ffffff !important;
}

.footer-4c2a,
.footer-4c2a *,
.box-fresh-a30d,
.box-fresh-a30d * {
  color: #ffffff !important;
}

.secondary-0d4b {
  background: #111827 !important;
  color: #f8fafc !important;
}

.secondary-0d4b p,
.secondary-0d4b li,
.secondary-0d4b span,
.secondary-0d4b div,
.secondary-0d4b a {
  color: #e5e7eb !important;
}

.secondary-0d4b h1,
.secondary-0d4b h2,
.secondary-0d4b h3,
.secondary-0d4b h4,
.secondary-0d4b strong {
  color: #ffffff !important;
}

[style*="color: #666"],
[style*="color:#666"] {
  color: var(--idx03-muted) !important;
}

[style*="color: #999"],
[style*="color:#999"] {
  color: var(--idx03-soft) !important;
}

[style*="opacity: 0.8"],
[style*="opacity:.8"],
[style*="opacity:0.8"],
[style*="opacity: 0.7"],
[style*="opacity:.7"],
[style*="opacity:0.7"] {
  opacity: 1 !important;
}

@media (max-width: 768px) {
  body {
    font-size: 16px;
  }

  p,
  li,
  dd {
    line-height: 1.75;
  }
}

/* Full idx03 contrast hardening: fix every low-contrast pattern used by this skin. */
:root {
  --color-text: #111827;
  --color-text-light: #374151;
  --color-text-lighter: #4b5563;
  --color-border: #cbd5e1;
  --idx03-text: #111827;
  --idx03-muted: #374151;
  --idx03-soft: #4b5563;
  --idx03-on-dark: #ffffff;
  --idx03-on-dark-muted: #f1f5f9;
}

main,
main section,
main article,
main aside,
.dabo-detail,
.article-wrap,
.game-wrap {
  color: var(--idx03-text);
}

main :is(p, li, dd, td, th, summary, figcaption),
.dabo-detail :is(p, li, dd, td, th, summary, figcaption),
.article-wrap :is(p, li, dd, td, th, summary, figcaption),
.game-wrap :is(p, li, dd, td, th, summary, figcaption) {
  color: var(--idx03-muted) !important;
}

main :is(h1, h2, h3, h4, h5, h6, strong, dt, label),
.dabo-detail :is(h1, h2, h3, h4, h5, h6, strong, dt, label),
.article-wrap :is(h1, h2, h3, h4, h5, h6, strong, dt, label),
.game-wrap :is(h1, h2, h3, h4, h5, h6, strong, dt, label) {
  color: var(--idx03-text) !important;
}

.advanced-3805:not([style*="color: white"]),
.section_solid_1c2c:not([style*="color: white"]),
.upper_281e:not([style*="color: white"]),
.dynamic_9f36,
.down_cae5,
.background_2563,
.block-east-d7ef,
.upper-695a,
.logo-hot-9478,
.gradient-0940,
.inner_df91,
.article_copper_7543,
.outline_7f1f,
.main-8ebf,
.liquid-9417,
.upper-83f6,
.sort_9c42,
.main-west-14b6,
.cold-2f45,
.dabo-card,
.card,
.content,
.article-head,
.dabo-hero,
.hero {
  color: var(--idx03-text) !important;
}

.advanced-3805:not([style*="color: white"]) :is(p, li, span, div, dd, td, th, figcaption),
.section_solid_1c2c:not([style*="color: white"]) :is(p, li, span, div, dd, td, th, figcaption),
.upper_281e:not([style*="color: white"]) :is(p, li, span, div, dd, td, th, figcaption),
.dynamic_9f36 :is(p, li, span, div, dd, td, th, figcaption),
.down_cae5 :is(p, li, span, div, dd, td, th, figcaption),
.background_2563 :is(p, li, span, div),
.block-east-d7ef :is(p, li, span, div),
.upper-695a :is(p, li, span, div),
.logo-hot-9478 :is(p, li, span, div),
.gradient-0940 :is(p, li, span, div),
.inner_df91 :is(p, li, span, div),
.article_copper_7543 :is(p, li, span, div),
.outline_7f1f :is(p, li, span, div),
.main-8ebf :is(p, li, span, div),
.liquid-9417 :is(p, li, span, div),
.upper-83f6 :is(p, li, span, div),
.sort_9c42 :is(p, li, span, div),
.main-west-14b6 :is(p, li, span, div),
.cold-2f45 :is(p, li, span, div),
.dabo-card :is(p, li, span, div, dd),
.card :is(p, li, span, div, dd),
.content :is(p, li, span, div, dd),
.article-head :is(p, li, span, div, dd),
.dabo-hero :is(p, li, span, div, dd),
.hero :is(p, li, span, div, dd) {
  color: var(--idx03-muted) !important;
}

/* Dark gradient panels: keep every readable text node light. */
.sort_upper_f548,
.card_3b32,
.avatar_focused_e348,
.tag_1088,
.column_383c,
.highlight-fd5f,
.gradient_b11f,
.action-0299,
.header-current-b0aa,
[style*="color: white"][style*="linear-gradient"],
[style*="color:white"][style*="linear-gradient"] {
  color: var(--idx03-on-dark) !important;
}

.sort_upper_f548 :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong, a),
.card_3b32 :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong),
.avatar_focused_e348 :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong),
.tag_1088 :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong),
.column_383c :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong),
.highlight-fd5f :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong),
.gradient_b11f :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong),
.action-0299 :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong),
.header-current-b0aa :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong),
[style*="color: white"][style*="linear-gradient"] :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong, a),
[style*="color:white"][style*="linear-gradient"] :is(p, li, span, div, dd, td, th, h1, h2, h3, h4, h5, h6, strong, a) {
  color: var(--idx03-on-dark-muted) !important;
}

.sort_upper_f548 :is(h1, h2, h3, h4, h5, h6, strong),
.card_3b32 :is(h1, h2, h3, h4, h5, h6, strong),
.avatar_focused_e348 :is(h1, h2, h3, h4, h5, h6, strong),
.tag_1088 :is(h1, h2, h3, h4, h5, h6, strong),
.column_383c :is(h1, h2, h3, h4, h5, h6, strong),
.highlight-fd5f :is(h1, h2, h3, h4, h5, h6, strong),
.gradient_b11f :is(h1, h2, h3, h4, h5, h6, strong),
.header-current-b0aa :is(h1, h2, h3, h4, h5, h6, strong),
[style*="color: white"][style*="linear-gradient"] :is(h1, h2, h3, h4, h5, h6, strong),
[style*="color:white"][style*="linear-gradient"] :is(h1, h2, h3, h4, h5, h6, strong) {
  color: #ffffff !important;
}

/* Light gradient panels must not inherit the previous broad white-text rule. */
[style*="linear-gradient"]:not([style*="color: white"]):not([style*="color:white"]):not(.sort_upper_f548):not(.card_3b32):not(.avatar_focused_e348):not(.tag_1088):not(.column_383c):not(.highlight-fd5f):not(.gradient_b11f):not(.action-0299),
.background_2563,
.block-east-d7ef {
  color: var(--idx03-text) !important;
}

[style*="linear-gradient"]:not([style*="color: white"]):not([style*="color:white"]):not(.sort_upper_f548):not(.card_3b32):not(.avatar_focused_e348):not(.tag_1088):not(.column_383c):not(.highlight-fd5f):not(.gradient_b11f):not(.action-0299) :is(p, li, span, div, dd, td, th),
.background_2563 :is(p, li, span, div, dd),
.block-east-d7ef :is(p, li, span, div, dd) {
  color: var(--idx03-muted) !important;
}

/* White cards and white buttons inside dark blocks need their own text color. */
[style*="background: white"],
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background:#ffffff"],
[style*="background: #ffffff"] {
  color: var(--idx03-text) !important;
}

[style*="background: white"] :is(p, li, span, div, dd, td, th),
[style*="background:#fff"] :is(p, li, span, div, dd, td, th),
[style*="background: #fff"] :is(p, li, span, div, dd, td, th),
[style*="background:#ffffff"] :is(p, li, span, div, dd, td, th),
[style*="background: #ffffff"] :is(p, li, span, div, dd, td, th) {
  color: var(--idx03-muted) !important;
}

[style*="background: white"] :is(h1, h2, h3, h4, h5, h6, strong),
[style*="background:#fff"] :is(h1, h2, h3, h4, h5, h6, strong),
[style*="background: #fff"] :is(h1, h2, h3, h4, h5, h6, strong),
[style*="background:#ffffff"] :is(h1, h2, h3, h4, h5, h6, strong),
[style*="background: #ffffff"] :is(h1, h2, h3, h4, h5, h6, strong) {
  color: var(--idx03-text) !important;
}

.element-tiny-6001[style*="background: #fff"],
.element-tiny-6001[style*="background:#fff"],
.element-tiny-6001[style*="background: white"],
.element-tiny-6001.header_smooth_9140,
.element-tiny-6001.light-430e,
.header_smooth_9140,
.light-430e {
  color: var(--idx03-link-dark) !important;
  background-color: #ffffff;
  border-color: #b6c3d4 !important;
}

.outline_f9a4,
.footer-4c2a,
.static-c4b3,
.notification_hard_69ea,
.feature-cd0f.fn-active-ad8a {
  color: #ffffff !important;
}

/* Inline low-contrast colors used heavily across idx03 subpages. */
[style*="color: #666"],
[style*="color:#666"],
[style*="color: #777"],
[style*="color:#777"],
[style*="color: #808080"],
[style*="color:#808080"] {
  color: var(--idx03-muted) !important;
}

[style*="color: #888"],
[style*="color:#888"],
[style*="color: #999"],
[style*="color:#999"],
[style*="color: #b0b0b0"],
[style*="color:#b0b0b0"] {
  color: var(--idx03-soft) !important;
}

.secondary-0d4b [style*="color: #666"],
.secondary-0d4b [style*="color:#666"],
.secondary-0d4b [style*="color: #777"],
.secondary-0d4b [style*="color:#777"],
.secondary-0d4b [style*="color: #808080"],
.secondary-0d4b [style*="color:#808080"],
.secondary-0d4b [style*="color: #999"],
.secondary-0d4b [style*="color:#999"],
.secondary-0d4b [style*="color: #b0b0b0"],
.secondary-0d4b [style*="color:#b0b0b0"],
.secondary-0d4b :is(p, li, span, div, a, dd) {
  color: #dbe4ef !important;
}

/* Utility text classes from the generated template. */
.box-dd93,
.yellow-5933,
.wood-74f8,
.pagination_8105,
.small_ed2e,
.static_bfc7,
.button-1bea,
.active-9cc9,
.disabled-south-e2a5,
.icon_blue_5211,
.north_2499 p,
.shade_1064,
.solid-acd8 span,
.shadow_adb9,
.article_copper_7543 p,
.upper-695a p,
.liquid-9417 p,
.dabo-summary,
.summary,
.meta,
.dabo-app span,
.crumb {
  color: var(--idx03-muted) !important;
}

.photo-b24f,
.photo-b24f *,
.prev-860e {
  color: #f8fafc !important;
}

.photo-b24f {
  background: #111827 !important;
}

/* Avoid washed-out translucent labels. */
[style*="opacity: 0.95"],
[style*="opacity:.95"],
[style*="opacity:0.95"],
[style*="opacity: 0.9"],
[style*="opacity:.9"],
[style*="opacity:0.9"],
[style*="opacity: 0.85"],
[style*="opacity:.85"],
[style*="opacity:0.85"] {
  opacity: 1 !important;
}

@media (max-width: 768px) {
  main :is(p, li, dd, td, th, summary, figcaption),
  .dabo-detail :is(p, li, dd, td, th, summary, figcaption),
  .article-wrap :is(p, li, dd, td, th, summary, figcaption),
  .game-wrap :is(p, li, dd, td, th, summary, figcaption) {
    font-size: 1rem !important;
    line-height: 1.78 !important;
  }

  .component_next_71cf,
  .table_selected_0e36,
  .article-head h1,
  .dabo-hero h1,
  .hero h1 {
    line-height: 1.22 !important;
  }
}

/* Final homepage readability lock. This is intentionally last-loaded. */
main {
  color: #0f172a !important;
}

main :is(section, article, aside, div, dl, dt, dd, table, tr, td, th, details, summary) {
  border-color: #cbd5e1;
}

main :is(h1, h2, h3, h4, h5, h6, strong, b, dt, summary, label) {
  color: #0b1220 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

main :is(p, li, dd, td, th, figcaption, small, em),
main :is(span, div):not(.thumbnail_motion_2f94):not(.input_2633):not(.medium_6e39):not(.block_9c8d):not(.action-0299):not(.white_80f1):not(.fluid_b6a5):not(.footer-320b) {
  color: #1f2937 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

main :is(a) {
  color: #0756a8 !important;
  font-weight: 650;
}

main :is(a:hover, a:focus) {
  color: #003f7d !important;
}

main :is(.advanced-3805, .section_solid_1c2c, .upper_281e, .dynamic_9f36, .down_cae5) {
  background-color: #ffffff;
}

main .dark_9797,
main .upper_281e,
main .down_cae5,
main .dabo-regular-seo-topics {
  background: #f3f6fa !important;
}

main :is(.main-west-14b6, .sort_9c42, .logo-hot-9478, .upper-695a, .inner_df91, .article_copper_7543, .outline_7f1f, .pagination_1f09, .main-8ebf, .gradient-0940, .upper-83f6, .liquid-9417, .cold-2f45, .dabo-editorial-depth article, .dabo-editorial-depth [style*="background:#f9fafb"], .dabo-editorial-depth [style*="background: #f9fafb"]) {
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08) !important;
}

main :is(.main-west-14b6, .sort_9c42, .logo-hot-9478, .upper-695a, .inner_df91, .article_copper_7543, .outline_7f1f, .pagination_1f09, .main-8ebf, .gradient-0940, .upper-83f6, .liquid-9417, .cold-2f45, .dabo-editorial-depth article) :is(p, li, span, div, dd, td, th, em, small) {
  color: #1f2937 !important;
}

main :is(.main-west-14b6, .sort_9c42, .logo-hot-9478, .upper-695a, .inner_df91, .article_copper_7543, .outline_7f1f, .pagination_1f09, .main-8ebf, .gradient-0940, .upper-83f6, .liquid-9417, .cold-2f45, .dabo-editorial-depth article) :is(h1, h2, h3, h4, h5, h6, strong, b, dt) {
  color: #0b1220 !important;
}

main :is(.sort_upper_f548, .card_3b32, .avatar_focused_e348, .tag_1088, .column_383c, .highlight-fd5f, .gradient_b11f, .header-current-b0aa, .action-0299, [style*="background: linear-gradient(135deg, #1976d2"], [style*="background:linear-gradient(135deg,#1976d2"], [style*="background: linear-gradient(135deg, #2e7d32"], [style*="background:linear-gradient(135deg,#2e7d32"]) {
  color: #ffffff !important;
}

main :is(.sort_upper_f548, .card_3b32, .avatar_focused_e348, .tag_1088, .column_383c, .highlight-fd5f, .gradient_b11f, .header-current-b0aa, .action-0299, [style*="background: linear-gradient(135deg, #1976d2"], [style*="background:linear-gradient(135deg,#1976d2"], [style*="background: linear-gradient(135deg, #2e7d32"], [style*="background:linear-gradient(135deg,#2e7d32"]) :is(p, li, span, div, dd, td, th, em, small, h1, h2, h3, h4, h5, h6, strong, b, a) {
  color: #ffffff !important;
}

main :is(.sort_upper_f548, .card_3b32, .avatar_focused_e348, .tag_1088, .column_383c, .highlight-fd5f, .gradient_b11f, .header-current-b0aa) :is([style*="background: white"], [style*="background:#fff"], [style*="background: #fff"], [style*="background:#ffffff"], [style*="background: #ffffff"]) {
  background: #ffffff !important;
  color: #0f172a !important;
}

main :is(.sort_upper_f548, .card_3b32, .avatar_focused_e348, .tag_1088, .column_383c, .highlight-fd5f, .gradient_b11f, .header-current-b0aa) :is([style*="background: white"], [style*="background:#fff"], [style*="background: #fff"], [style*="background:#ffffff"], [style*="background: #ffffff"]) * {
  color: #1f2937 !important;
}

main :is(.background_2563, .block-east-d7ef, [style*="background: linear-gradient(135deg, #e8f5e9"], [style*="background: linear-gradient(135deg, #fff3e0"], [style*="background: linear-gradient(135deg, #f5f7fa"], [style*="background:linear-gradient(135deg,#e8f5e9"], [style*="background:linear-gradient(135deg,#fff3e0"], [style*="background:linear-gradient(135deg,#f5f7fa"]) {
  color: #0f172a !important;
  border: 1px solid #b9c8d8 !important;
}

main :is(.background_2563, .block-east-d7ef, [style*="background: linear-gradient(135deg, #e8f5e9"], [style*="background: linear-gradient(135deg, #fff3e0"], [style*="background: linear-gradient(135deg, #f5f7fa"], [style*="background:linear-gradient(135deg,#e8f5e9"], [style*="background:linear-gradient(135deg,#fff3e0"], [style*="background:linear-gradient(135deg,#f5f7fa"]) :is(p, li, span, div, dd, td, th, em, small) {
  color: #1f2937 !important;
}

main :is(.outline_f9a4, .static-c4b3, .notification_hard_69ea, .footer-4c2a, .plasma-e78a:not(.header_smooth_9140):not(.light-430e)) {
  color: #ffffff !important;
  text-shadow: none !important;
}

main :is(.outline_f9a4, .static-c4b3, .notification_hard_69ea, .footer-4c2a, .plasma-e78a:not(.header_smooth_9140):not(.light-430e)) * {
  color: #ffffff !important;
}

main :is(.header_smooth_9140, .light-430e, [style*="background: #fff"].element-tiny-6001, [style*="background:white"].element-tiny-6001, [style*="background: white"].element-tiny-6001) {
  background: #ffffff !important;
  color: #064b9b !important;
  border: 2px solid #7aa4d6 !important;
}

main :is(table, .cool_429e, .complex-ff90, .center-073e) {
  color: #0f172a !important;
}

main :is(table, .cool_429e, .complex-ff90, .center-073e) :is(td, th, p, span, div) {
  color: #0f172a !important;
}

main :is(table, .cool_429e, .complex-ff90, .center-073e) thead,
main :is(table, .cool_429e, .complex-ff90, .center-073e) thead * {
  color: #ffffff !important;
}

main .photo-b24f,
main .photo-b24f *,
main .prev-860e {
  background: #0f172a !important;
  color: #f8fafc !important;
}

main .dabo-risk-notice,
main .dabo-risk-notice * {
  color: #3f2a12 !important;
}

main .dabo-risk-notice h2,
main .dabo-risk-notice strong {
  color: #7c2d12 !important;
}

@media (max-width: 768px) {
  main :is(p, li, dd, td, th, figcaption, small, em, span) {
    color: #111827 !important;
  }

  main :is(.input_c791, .box-dd93, .yellow-5933, .wood-74f8, .pagination_8105, .small_ed2e, .static_bfc7, .button-1bea, .active-9cc9) {
    font-size: 1rem !important;
    line-height: 1.8 !important;
  }
}

/* TOC must stay crisp: the global section fixes above used to fight this block. */
main .upper_281e {
  background: #eef3f8 !important;
  color: #0b1220 !important;
}

main .upper_281e .sort_9c42 {
  background: #ffffff !important;
  color: #0b1220 !important;
  border: 2px solid #b8c7d9 !important;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.12) !important;
}

main .upper_281e .button_f4d6 {
  color: #06101f !important;
  font-weight: 800 !important;
  text-shadow: none !important;
}

main .upper_281e .accent_in_9b09,
main .upper_281e .accent_in_9b09 li {
  color: #0b1220 !important;
  opacity: 1 !important;
}

main .upper_281e .accent_in_9b09 li a {
  background: #ffffff !important;
  color: #061b3a !important;
  border: 1px solid #c6d3e2 !important;
  border-radius: 10px !important;
  font-weight: 800 !important;
  line-height: 1.45 !important;
  text-decoration: none !important;
  text-shadow: none !important;
  box-shadow: 0 2px 0 rgba(15, 23, 42, 0.04) !important;
}

main .upper_281e .accent_in_9b09 li a::before {
  background: #0b5fcc !important;
  color: #ffffff !important;
  border: 2px solid #084a9f !important;
  font-weight: 900 !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

main .upper_281e .accent_in_9b09 li a:hover,
main .upper_281e .accent_in_9b09 li a:focus {
  background: #e8f1ff !important;
  color: #002f6c !important;
  border-color: #0b5fcc !important;
  outline: 3px solid rgba(11, 95, 204, 0.18) !important;
}

@media (max-width: 768px) {
  main .upper_281e .sort_9c42 {
    padding: 1.25rem !important;
  }

  main .upper_281e .accent_in_9b09 li a {
    font-size: 1rem !important;
    padding: 0.85rem !important;
  }
}

/* Tutorial cards and recommendation boxes: keep white body text dark and crisp. */
main .inner_df91 {
  background: #ffffff !important;
  color: #0b1220 !important;
  border: 2px solid #c5d1df !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.1) !important;
}

main .inner_df91 .tag_1088,
main .inner_df91 .tag_1088 * {
  color: #ffffff !important;
}

main .inner_df91 .tabs_yellow_980a,
main .inner_df91 .right-d781 {
  background: #ffffff !important;
  color: #0b1220 !important;
}

main .inner_df91 .right-d781 :is(p, ol, ul, li, span, div, em, small) {
  color: #111827 !important;
  opacity: 1 !important;
  text-shadow: none !important;
  font-weight: 500;
}

main .inner_df91 .right-d781 :is(strong, b, h3, h4, h5) {
  color: #06101f !important;
  opacity: 1 !important;
  text-shadow: none !important;
  font-weight: 800 !important;
}

main .inner_df91 .right-d781 li {
  line-height: 1.75 !important;
  margin-bottom: 0.55rem !important;
}

main .inner_df91 :is(.chip-gas-3e33, .progress_8944, .accent-0159, .modal-complex-e84e, .layout-simple-e9cf, .feature-484c, .filter-999b) {
  background: #f1f6fb !important;
  color: #0b1220 !important;
  border: 1px solid #b7c8da !important;
  border-left: 5px solid #0b5fcc !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.65) !important;
}

main .inner_df91 :is(.chip-gas-3e33, .progress_8944, .accent-0159, .modal-complex-e84e, .layout-simple-e9cf, .feature-484c, .filter-999b) :is(p, li, span, div, em, small) {
  color: #111827 !important;
  opacity: 1 !important;
}

main .inner_df91 :is(.chip-gas-3e33, .progress_8944, .accent-0159, .modal-complex-e84e, .layout-simple-e9cf, .feature-484c, .filter-999b) :is(strong, b) {
  color: #06101f !important;
  font-weight: 900 !important;
}

main .inner_df91 .chip-gas-3e33 li {
  color: #0b2a18 !important;
  font-weight: 650 !important;
}

@media (max-width: 768px) {
  main .inner_df91 .tabs_yellow_980a {
    padding: 1rem !important;
  }

  main .inner_df91 .right-d781 :is(p, li, span, div) {
    font-size: 1rem !important;
    line-height: 1.8 !important;
  }
}

/* CTA/help buttons: never render as adjacent plain links. */
main .red-9b41 {
  background: #f1f6fb !important;
  color: #0b1220 !important;
  border: 2px solid #bfd0e2 !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.1) !important;
}

main .red-9b41 h4 {
  color: #06101f !important;
  font-weight: 900 !important;
  font-size: 1.25rem !important;
}

main .red-9b41 p,
main .red-9b41 p * {
  color: #111827 !important;
  opacity: 1 !important;
}

main .red-9b41 p a {
  color: #064b9b !important;
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
}

main :is(.thumbnail_2404, .alert_ff42, .motion_f132) {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.875rem !important;
}

main .motion_f132 {
  margin-top: 1.75rem !important;
}

main :is(.thumbnail_2404, .alert_ff42, .motion_f132) > a.element-tiny-6001 {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  min-width: 180px !important;
  padding: 0.85rem 1.25rem !important;
  border-radius: 10px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12) !important;
}

main :is(.thumbnail_2404, .alert_ff42, .motion_f132) > a.light-430e,
main :is(.thumbnail_2404, .alert_ff42, .motion_f132) > a.header_smooth_9140 {
  background: #ffffff !important;
  color: #064b9b !important;
  border: 2px solid #0b5fcc !important;
}

main :is(.thumbnail_2404, .alert_ff42, .motion_f132) > a.outline_f9a4 {
  background: #0b5fcc !important;
  color: #ffffff !important;
  border: 2px solid #084a9f !important;
}

main :is(.thumbnail_2404, .alert_ff42, .motion_f132) > a.element-tiny-6001 *,
main :is(.thumbnail_2404, .alert_ff42, .motion_f132) > a.outline_f9a4 * {
  color: inherit !important;
}

main :is(.thumbnail_2404, .alert_ff42, .motion_f132) > a.element-tiny-6001:hover,
main :is(.thumbnail_2404, .alert_ff42, .motion_f132) > a.element-tiny-6001:focus {
  transform: translateY(-1px) !important;
  outline: 3px solid rgba(11, 95, 204, 0.2) !important;
}

@media (max-width: 768px) {
  main :is(.thumbnail_2404, .alert_ff42, .motion_f132) {
    align-items: stretch !important;
    gap: 0.75rem !important;
  }

  main :is(.thumbnail_2404, .alert_ff42, .motion_f132) > a.element-tiny-6001 {
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* Hero feature chips and primary actions. */
main .advanced-3805 .in_b7e6 {
  display: grid !important;
  gap: 0.875rem !important;
}

main .advanced-3805 .fixed_4875 {
  align-items: flex-start !important;
  gap: 0.85rem !important;
  background: #ffffff !important;
  color: #0b1220 !important;
  border: 1px solid #c4d0df !important;
  border-radius: 12px !important;
  padding: 0.95rem !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08) !important;
}

main .advanced-3805 .pro-d8a0 {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  background: #0b5fcc !important;
  color: #ffffff !important;
  border: 2px solid #084a9f !important;
  font-weight: 900 !important;
  opacity: 1 !important;
}

main .advanced-3805 .glass-400d strong {
  color: #06101f !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

main .advanced-3805 .glass-400d span {
  color: #1f2937 !important;
  font-weight: 550 !important;
  line-height: 1.5 !important;
}

main .advanced-3805 .over_db19 {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.875rem !important;
  align-items: center !important;
}

main .advanced-3805 .over_db19 > a.element-tiny-6001 {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 52px !important;
  min-width: 220px !important;
  padding: 0.9rem 1.35rem !important;
  border-radius: 10px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.14) !important;
}

main .advanced-3805 .over_db19 > a.outline_f9a4 {
  background: #0b5fcc !important;
  color: #ffffff !important;
  border: 2px solid #084a9f !important;
}

main .advanced-3805 .over_db19 > a.header_smooth_9140 {
  background: #ffffff !important;
  color: #064b9b !important;
  border: 2px solid #0b5fcc !important;
}

main .advanced-3805 .over_db19 > a.element-tiny-6001 *,
main .advanced-3805 .over_db19 > a.outline_f9a4 * {
  color: inherit !important;
}

@media (max-width: 768px) {
  main .advanced-3805 .over_db19 {
    align-items: stretch !important;
  }

  main .advanced-3805 .over_db19 > a.element-tiny-6001 {
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* Decision cards and global button spacing fallback. */
main .active-b02d {
  display: grid !important;
  gap: 1rem !important;
}

main .active-b02d .tag_1211 {
  color: #ffffff !important;
  border: 2px solid rgba(255, 255, 255, 0.42) !important;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.16) !important;
}

main .active-b02d .tag_1211 :is(h4, li, span, div, p, strong) {
  color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

main .active-b02d .tag_1211 > a.element-tiny-6001 {
  display: flex !important;
  width: 100% !important;
  min-height: 50px !important;
  margin-top: 1rem !important;
  padding: 0.9rem 1.25rem !important;
  border-radius: 10px !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  text-decoration: none !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  border: 2px solid rgba(255, 255, 255, 0.9) !important;
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.16) !important;
}

main .active-b02d .tag_1211 > a.light-430e {
  background: #ffffff !important;
  color: #4f2db7 !important;
}

main .active-b02d .tag_1211 > a.outline_f9a4 {
  background: #ffffff !important;
  color: #b91c4b !important;
}

main a.element-tiny-6001 + a.element-tiny-6001 {
  margin-left: 0.875rem !important;
}

main :is(.over_db19, .thumbnail_2404, .alert_ff42, .motion_f132, .active-b02d) a.element-tiny-6001 + a.element-tiny-6001 {
  margin-left: 0 !important;
}

main a.element-tiny-6001 {
  white-space: normal !important;
}

@media (max-width: 768px) {
  main a.element-tiny-6001 + a.element-tiny-6001 {
    margin-left: 0 !important;
    margin-top: 0.75rem !important;
  }

  main .active-b02d .tag_1211 > a.element-tiny-6001 {
    width: 100% !important;
  }
}

/* Final button contrast override: no white-on-white buttons anywhere in content. */
main a.element-tiny-6001,
main a.element-tiny-6001.light-430e,
main a.element-tiny-6001.header_smooth_9140,
main a.element-tiny-6001.outline_f9a4,
main a.element-tiny-6001.plasma-e78a,
main .active-b02d .tag_1211 > a.element-tiny-6001,
main .thumbnail_2404 > a.element-tiny-6001,
main .motion_f132 > a.element-tiny-6001,
main .alert_ff42 > a.element-tiny-6001,
main .over_db19 > a.element-tiny-6001 {
  background: #0b3f8a !important;
  background-image: linear-gradient(135deg, #0b5fcc 0%, #083a7a 100%) !important;
  color: #ffffff !important;
  border: 2px solid #062f63 !important;
  text-shadow: none !important;
  box-shadow: 0 10px 22px rgba(8, 58, 122, 0.28) !important;
}

main a.element-tiny-6001 *,
main a.element-tiny-6001.light-430e *,
main a.element-tiny-6001.header_smooth_9140 *,
main a.element-tiny-6001.outline_f9a4 *,
main a.element-tiny-6001.plasma-e78a * {
  color: #ffffff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

main a.element-tiny-6001:hover,
main a.element-tiny-6001:focus {
  background: #062f63 !important;
  background-image: linear-gradient(135deg, #084a9f 0%, #062f63 100%) !important;
  color: #ffffff !important;
  border-color: #021f44 !important;
}
