:root {
  --bw-primary: #0094e0;
  --bw-primary-deep: #0877c9;
  --bw-primary-dark: #075fa7;
  --bw-primary-soft: #eaf7ff;
  --bw-primary-pale: #f6fbff;
  --bw-line: #d8ecfb;
  --bw-text: #24445f;
  --bw-muted: #7893a8;
  --bw-white: #ffffff;
  --bw-shadow: 0 12px 34px rgba(34, 117, 174, .12);
}

* { box-sizing: border-box; }
html, body { min-height: 100%; }
html { background: #eef8ff !important; }
body {
  margin: 0 !important;
  color: var(--bw-text);
  background:
    radial-gradient(circle at 12% -8%, rgba(76, 185, 252, .22), transparent 34%),
    linear-gradient(180deg, #f7fcff 0%, #edf8ff 100%) !important;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
  overflow-x: hidden;
}

.views_szjys,
.view_szjys,
.pages_szjys,
.page_szjys,
.page-content_szjys {
  background: transparent !important;
}

.page-content_szjys {
  padding: 18px 12px 34px !important;
}

.content-block_szjys {
  width: calc(100% - 4px) !important;
  max-width: 860px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid var(--bw-line);
  border-radius: 22px;
  box-shadow: var(--bw-shadow);
  overflow: hidden;
}

/* Connected header */
.site-head-blue {
  position: relative;
  text-align: center;
  padding: 26px 18px 20px;
  background:
    radial-gradient(circle at 88% 12%, rgba(255,255,255,.45), transparent 20%),
    linear-gradient(135deg, #f9fdff 0%, #e9f7ff 55%, #dff3ff 100%);
  border-bottom: 1px solid var(--bw-line);
}
.site-head-blue::after {
  content: "";
  position: absolute;
  left: 20%; right: 20%; bottom: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(0,148,224,.55), transparent);
}
.site-brand-blue {
  margin: 0;
  color: #126fae;
  font-size: 30px;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: .5px;
}
.site-url-blue {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin: 10px auto 12px;
  padding: 7px 16px;
  color: #2d6f9d;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
  background: rgba(255,255,255,.86);
  border: 1px solid #b9e0f8;
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(0,148,224,.08);
}
.site-remember-label {
  color: #397ca9;
}
.site-display-url {
  color: #008fe0;
  font-size: 17px;
  font-weight: 900;
  letter-spacing: .2px;
}
.site-contact-blue {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7px 12px;
  font-size: 13px;
  line-height: 1.45;
}
.site-contact-blue a {
  color: #2879b8 !important;
  text-decoration: none !important;
}
.site-contact-blue a:hover { color: var(--bw-primary) !important; }

/* Connected nav / filter rows */
.buttons-row_szjys {
  display: flex !important;
  gap: 8px;
  align-items: stretch;
  margin: 0 !important;
  padding: 11px 14px;
  border-bottom: 1px solid #e6f2fb;
  background: #fff;
}
.buttons-row_szjys .button_szjys,
.button_szjys {
  min-height: 38px;
  height: auto !important;
  line-height: 1.25 !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex: 1 1 0;
  margin: 0 !important;
  padding: 9px 8px !important;
  border: 1px solid #b9dff7 !important;
  border-radius: 10px !important;
  color: #1b79b7 !important;
  background: #f8fcff !important;
  font-size: 13px;
  font-weight: 650;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.button_szjys:active { transform: scale(.985); }
.button_szjys.active {
  border-color: transparent !important;
  color: #fff !important;
  background: linear-gradient(135deg, #12a1ea, #0878cf) !important;
  box-shadow: 0 6px 14px rgba(0, 148, 224, .20) !important;
}
.button_szjys.active span { color: #fff !important; }

/* Algorithm recommendation marker: keep it red even inside the active blue button. */
.algorithm-recommend {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 3px;
  color: #ff3b30 !important;
  font-weight: 900;
  line-height: 1;
}
.button_szjys.active .algorithm-recommend {
  color: #ff2d24 !important;
  background: rgba(255,255,255,.96);
  border-radius: 5px;
  padding: 2px 4px;
  box-shadow: 0 1px 4px rgba(0,0,0,.08);
}



/* Six platform shortcut cards between header and prediction section */
.platform-nav-wrap {
  padding: 12px 14px 13px;
  background: #fff;
  border-bottom: 1px solid #e6f2fb;
}
.platform-nav-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.platform-nav-card {
  position: relative;
  min-width: 0;
  min-height: 66px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 36px 10px 10px;
  border: 1px solid #c9e6f8;
  border-radius: 13px;
  color: #166fa9 !important;
  background: linear-gradient(145deg, #ffffff 0%, #f4fbff 58%, #eaf7ff 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95), 0 3px 10px rgba(40,125,182,.07);
  text-decoration: none !important;
  overflow: hidden;
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.platform-nav-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: linear-gradient(180deg, #32b8f6, #0879cf);
  opacity: .95;
}
.platform-nav-card:hover {
  transform: translateY(-1px);
  border-color: #83cdf3;
  background: linear-gradient(145deg, #fff 0%, #eef9ff 60%, #e2f4ff 100%);
  box-shadow: 0 6px 16px rgba(17,132,202,.13);
}
.platform-nav-card:active { transform: scale(.985); }
.platform-nav-logo {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 11px;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
  background: linear-gradient(145deg, #29b3f4, #0879cf);
  box-shadow: 0 5px 10px rgba(8,121,207,.17), inset 0 1px 0 rgba(255,255,255,.28);
}

.platform-nav-logo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: inherit;
}
.platform-nav-logo > span {
  display: inline-flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
}

.platform-nav-copy {
  min-width: 0;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  line-height: 1.2;
}
.platform-nav-copy strong {
  overflow: hidden;
  color: #1479b7;
  font-size: 14px;
  font-weight: 800;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.platform-nav-copy small {
  color: #87a2b5;
  font-size: 10px;
  font-weight: 600;
  white-space: nowrap;
}
.platform-nav-arrow {
  position: absolute;
  right: 11px;
  top: 50%;
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #188bd0;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  background: #e8f6ff;
  transform: translateY(-50%);
}

/* Scratch launcher / live draw strip */
.scratch-livebar {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) 210px;
  align-items: stretch;
  border-bottom: 1px solid #dceefa;
  background: linear-gradient(90deg, #fbfeff 0%, #f2faff 53%, #fbfeff 100%);
}
.scratch-live-launch,
.scratch-live-result,
.scratch-live-next {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 14px;
}
.scratch-live-launch {
  flex-direction: column;
  gap: 8px;
}
.scratch-live-issue {
  color: #53758d;
  font-size: 12px;
  font-weight: 650;
  white-space: nowrap;
}
.scratch-live-issue strong {
  color: #0786d7;
  font-size: 15px;
  font-weight: 850;
}
.scratch-live-result {
  flex-direction: column;
  gap: 7px;
  border-left: 1px solid #deedf7;
  border-right: 1px solid #deedf7;
}
.scratch-live-caption {
  width: 100%;
  color: #54748a;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}
.scratch-live-caption small {
  margin-left: 4px;
  color: #8aa2b3;
  font-size: 10px;
  font-weight: 600;
}
.scratch-live-formula {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  white-space: nowrap;
}
.scratch-live-number {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #d6ebf9;
  border-radius: 7px;
  color: #0787d8;
  font-size: 20px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
  background: #f0f8fd;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}
.scratch-live-number.is-sum {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(145deg, #1aa6ec, #0877cc);
  box-shadow: 0 5px 12px rgba(8,119,204,.18);
}
.scratch-live-op {
  color: #7390a4;
  font-size: 20px;
  font-weight: 750;
}
.scratch-live-tag {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
  font-size: 16px;
  font-weight: 850;
  background: linear-gradient(145deg, #0d9ce5, #0878cc);
  box-shadow: 0 5px 12px rgba(0,135,215,.17);
}
.scratch-live-tag.is-soft {
  background: linear-gradient(145deg, #55bdf1, #2097dc);
}
.scratch-live-next {
  position: relative;
  flex-direction: column;
  gap: 7px;
}
.scratch-live-timer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.scratch-live-timebox {
  min-width: 42px;
  height: 40px;
  padding: 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  color: #fff;
  font-size: 20px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
  background: linear-gradient(145deg, #1aa6ec, #0877cc);
  box-shadow: 0 5px 12px rgba(8,119,204,.17);
}
.scratch-live-timer b {
  color: #506e83;
  font-size: 15px;
  font-weight: 700;
}
.scratch-live-opening {
  display: none;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 15px;
  border-radius: 8px;
  color: #0780cf;
  font-size: 16px;
  font-weight: 850;
  background: #eaf7ff;
}
.scratch-live-eta {
  color: #91a7b7;
  font-size: 10px;
  line-height: 1;
  white-space: nowrap;
}
.scratch-launch-btn {
  position: relative;
  width: 98px;
  min-height: 46px;
  border: 1px solid #d82d29;
  border-radius: 8px;
  padding: 9px 14px;
  color: #fff;
  font-size: 18px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: 0;
  cursor: pointer;
  background: linear-gradient(180deg, #ef4138 0%, #e7352e 56%, #df2e29 100%);
  box-shadow:
    5px 6px 0 #a8211d,
    0 9px 15px rgba(170, 40, 34, .16),
    inset 0 1px 0 rgba(255,255,255,.34),
    inset 0 -1px 0 rgba(143, 22, 18, .18);
  text-shadow: 0 1px 1px rgba(118, 20, 16, .34);
  transition: transform .12s ease, box-shadow .12s ease, filter .12s ease;
}
.scratch-launch-btn:hover {
  filter: brightness(1.035);
  transform: translateY(-1px);
  box-shadow:
    5px 7px 0 #a8211d,
    0 10px 17px rgba(170, 40, 34, .18),
    inset 0 1px 0 rgba(255,255,255,.38),
    inset 0 -1px 0 rgba(143, 22, 18, .18);
}
.scratch-launch-btn:active {
  transform: translate(3px, 4px);
  box-shadow:
    2px 2px 0 #a8211d,
    0 4px 8px rgba(170, 40, 34, .14),
    inset 0 1px 0 rgba(255,255,255,.25);
}
.scratch-launch-btn:focus-visible {
  outline: 3px solid rgba(0,148,224,.24);
  outline-offset: 5px;
}

/* Tables */
.sui-table_szjys {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
  background: #fff;
}
.sui-table_szjys thead tr {
  color: #277fb9 !important;
  background: #edf8ff !important;
  font-size: 12px !important;
}
.sui-table_szjys th,
.sui-table_szjys td {
  padding: 10px 5px !important;
  border-color: #e5f1fa !important;
  vertical-align: middle !important;
}
.sui-table_szjys tbody tr:nth-child(even) { background: #fbfdff !important; }
.sui-table_szjys tbody tr:hover { background: #f5fbff !important; }

.badge_szjys {
  color: #fff !important;
  font-weight: 700;
  min-width: 26px;
  text-align: center;
}
.bg-blue_szjys { background-color: #85aeca !important; }
.bg-red_szjys { background-color: var(--bw-primary) !important; }

/* Scratch modal - intentionally no black backdrop */
.scratch-modal {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  background:
    radial-gradient(circle at 50% 18%, rgba(255,255,255,.82), rgba(229,246,255,.83) 46%, rgba(210,237,253,.88) 100%);
  -webkit-backdrop-filter: blur(6px) saturate(1.03);
  backdrop-filter: blur(6px) saturate(1.03);
  transition: opacity .22s ease, visibility .22s ease;
}
.scratch-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.scratch-modal-shell {
  width: min(620px, 100%);
  max-height: calc(100dvh - 18px);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.scratch-dialog {
  position: relative;
  width: 100%;
  max-height: calc(100dvh - 82px);
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid rgba(255,255,255,.9);
  border-radius: 24px;
  background: #fff;
  box-shadow:
    0 20px 55px rgba(16, 104, 166, .24),
    0 0 0 5px rgba(65, 177, 245, .10);
  transform: translateY(16px) scale(.97);
  transition: transform .28s cubic-bezier(.2,.9,.2,1);
}
.scratch-modal.is-open .scratch-dialog { transform: translateY(0) scale(1); }

.scratch-dialog-header {
  position: relative;
  overflow: hidden;
  padding: 22px 18px 17px;
  text-align: center;
  color: #fff;
  background:
    radial-gradient(circle at 18% 30%, rgba(255,255,255,.23), transparent 13%),
    radial-gradient(circle at 82% 18%, rgba(255,255,255,.24), transparent 15%),
    linear-gradient(135deg, #1aa8ef 0%, #0785dc 50%, #0a69bf 100%);
}
.scratch-dialog-header::before,
.scratch-dialog-header::after {
  content: "✦";
  position: absolute;
  color: rgba(255,255,255,.75);
  font-size: 21px;
  animation: scratchTwinkle 1.8s ease-in-out infinite alternate;
}
.scratch-dialog-header::before { left: 9%; top: 16px; }
.scratch-dialog-header::after { right: 10%; bottom: 13px; animation-delay: .7s; }
@keyframes scratchTwinkle { from { transform: scale(.8); opacity:.35; } to { transform: scale(1.2); opacity:1; } }

.scratch-title {
  margin: 0;
  font-size: 34px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: 4px;
  text-shadow: 0 3px 0 rgba(4,81,143,.24);
}
.scratch-title-sub {
  margin-top: 9px;
  font-size: 15px;
  opacity: .92;
}
.scratch-issue-ribbon {
  margin: 0;
  padding: 14px 16px;
  text-align: center;
  color: #27678f;
  font-size: 17px;
  font-weight: 750;
  background: linear-gradient(180deg, #f7fcff, #e8f6ff);
  border-bottom: 1px solid #d8ecfb;
}
.scratch-issue-ribbon strong { color: #0789dc; font-size: 20px; }

.scratch-body { padding: 16px; background: #fff; }
.scratch-stage {
  position: relative;
  width: 100%;
  min-height: 238px;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid #c9e4f6;
  background:
    radial-gradient(circle at 50% 36%, rgba(48,166,236,.10), transparent 38%),
    linear-gradient(180deg, #f9fdff 0%, #eef8ff 100%);
  box-shadow: inset 0 0 0 4px rgba(255,255,255,.82);
}
.scratch-result {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 12px;
}
.scratch-result-label {
  margin-bottom: 14px;
  color: #708fa5;
  font-size: 13px;
  font-weight: 650;
  letter-spacing: .4px;
}
.scratch-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  white-space: nowrap;
}
.scratch-ball {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #0c7dca;
  font-size: 27px;
  font-weight: 850;
  background: linear-gradient(180deg, #ffffff, #eff8ff);
  border: 2px solid #9fd7f8;
  box-shadow: 0 7px 15px rgba(20,125,192,.12), inset 0 2px 5px rgba(255,255,255,.9);
}
.scratch-ball.sum {
  color: #fff;
  background: linear-gradient(145deg, #11a2eb, #0b72c8);
  border-color: #fff;
  box-shadow: 0 8px 18px rgba(7,124,203,.25);
}
.scratch-op {
  color: #327298;
  font-size: 25px;
  font-weight: 800;
}
.scratch-result-meta {
  margin-top: 15px;
  display: inline-flex;
  gap: 8px;
  color: #2c668c;
  font-size: 13px;
}
.scratch-result-meta span {
  padding: 5px 10px;
  border-radius: 999px;
  background: #e7f5ff;
  border: 1px solid #c6e7fb;
}
#scratchCanvas {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 17px;
  cursor: crosshair;
  touch-action: none;
  opacity: 1;
  transition: opacity .38s ease, transform .38s ease;
}
#scratchCanvas.is-cleared {
  opacity: 0;
  transform: scale(1.02);
  pointer-events: none;
}
.scratch-hint {
  margin: 10px 2px 0;
  text-align: center;
  color: #7b98ab;
  font-size: 12px;
}

.scratch-dialog.is-revealed .scratch-stage {
  animation: resultGlow .8s ease both;
}
@keyframes resultGlow {
  0% { box-shadow: inset 0 0 0 4px rgba(255,255,255,.82), 0 0 0 rgba(0,148,224,0); }
  50% { box-shadow: inset 0 0 0 4px rgba(255,255,255,.82), 0 0 26px rgba(0,148,224,.30); }
  100% { box-shadow: inset 0 0 0 4px rgba(255,255,255,.82), 0 9px 24px rgba(23,131,198,.12); }
}

.scratch-countdown {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  color: #2a648a;
  background: linear-gradient(90deg, #e8f6ff 0%, #f7fcff 100%);
  border-top: 1px solid #d8ecfb;
}
.scratch-countdown-text {
  min-width: 0;
  font-size: 14px;
  font-weight: 650;
}
.scratch-countdown-text strong { color: #008edc; font-size: 16px; }
.scratch-time {
  display: inline-block;
  min-width: 54px;
  color: #0a75c5;
  font-size: 19px;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
}
.scratch-refresh {
  flex: 0 0 auto;
  border: 1px solid #a7d8f6;
  border-radius: 999px;
  padding: 8px 18px;
  color: #0879c7;
  font-weight: 750;
  background: #fff;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(23,129,194,.10);
}
.scratch-close {
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  border: 2px solid #fff;
  border-radius: 50%;
  color: #fff;
  font-size: 34px;
  line-height: 46px;
  font-weight: 300;
  text-align: center;
  cursor: pointer;
  background: linear-gradient(145deg, #1aa4ea, #0875c8);
  box-shadow: 0 8px 22px rgba(0, 113, 190, .25), 0 0 0 4px rgba(64,176,244,.16);
}
body.scratch-modal-open { overflow: hidden !important; }

@media (max-width: 620px) {
  .page-content_szjys { padding: 0 !important; }
  .content-block_szjys {
    width: 100% !important;
    border-radius: 0;
    border-left: 0;
    border-right: 0;
    box-shadow: none;
  }
  .site-head-blue { padding: 22px 14px 16px; }
  .site-brand-blue { font-size: 27px; }
  .site-url-blue { font-size: 14px; padding: 7px 13px; }
  .site-display-url { font-size: 16px; }
  .buttons-row_szjys { gap: 6px; padding: 9px 10px; }
  .buttons-row_szjys .button_szjys { font-size: 12px; padding: 8px 5px !important; }
  .scratch-livebar { grid-template-columns: 102px minmax(0, 1fr); }
  .scratch-live-launch { padding: 12px 8px; }
  .scratch-live-issue { font-size: 10px; }
  .scratch-live-issue strong { font-size: 12px; }
  .scratch-launch-btn { width: 84px; min-height: 42px; padding: 8px 8px; font-size: 16px; box-shadow: 4px 5px 0 #a8211d, 0 7px 12px rgba(170,40,34,.14), inset 0 1px 0 rgba(255,255,255,.34), inset 0 -1px 0 rgba(143,22,18,.18); }
  .scratch-live-result { padding: 12px 8px; border-right: 0; }
  .scratch-live-caption { font-size: 11px; }
  .scratch-live-formula { gap: 5px; }
  .scratch-live-number, .scratch-live-tag { width: 34px; height: 34px; font-size: 16px; }
  .scratch-live-op { font-size: 16px; }
  .scratch-live-next { grid-column: 1 / -1; flex-direction: row; gap: 9px; padding: 10px 12px; border-top: 1px solid #deedf7; }
  .scratch-live-next .scratch-live-caption { width: auto; }
  .scratch-live-timebox { min-width: 36px; height: 34px; font-size: 17px; }
  .scratch-live-timer { gap: 6px; }
  .scratch-live-timer b { font-size: 13px; }
  .scratch-live-eta { margin-left: auto; }
  .sui-table_szjys th, .sui-table_szjys td { padding: 9px 3px !important; font-size: 12px; }

  .scratch-modal { padding: 10px; }
  .scratch-dialog { border-radius: 20px; max-height: calc(100dvh - 74px); }
  .scratch-dialog-header { padding: 19px 12px 15px; }
  .scratch-title { font-size: 30px; }
  .scratch-issue-ribbon { padding: 12px 8px; font-size: 15px; }
  .scratch-issue-ribbon strong { font-size: 18px; }
  .scratch-body { padding: 12px; }
  .scratch-stage { min-height: 220px; }
  .scratch-ball { width: 50px; height: 50px; font-size: 24px; }
  .scratch-op { font-size: 22px; }
  .scratch-countdown { padding: 12px; }
  .scratch-countdown-text { font-size: 12px; }
  .scratch-countdown-text strong { font-size: 14px; }
  .scratch-time { min-width: 45px; font-size: 17px; }
  .scratch-refresh { padding: 7px 14px; }
  .scratch-close { width: 48px; height: 48px; flex-basis: 48px; line-height: 40px; font-size: 31px; }
}

@media (max-width: 380px) {
  .scratch-live-formula { gap: 3px; }
  .scratch-live-number, .scratch-live-tag { width: 30px; height: 30px; font-size: 14px; }
  .scratch-live-op { font-size: 14px; }
  .scratch-live-next { padding-left: 8px; padding-right: 8px; }
  .scratch-live-eta { display: none; }
  .scratch-numbers { gap: 5px; }
  .scratch-ball { width: 45px; height: 45px; font-size: 22px; }
  .scratch-op { font-size: 20px; }
  .scratch-countdown { gap: 7px; }
  .scratch-refresh { padding: 7px 11px; font-size: 12px; }
}

/* v6: in-place scratch refresh; never leave the modal when a new draw arrives */
.scratch-dialog.is-new-result {
  animation: scratchNewResultPulse .68s ease-out;
}
@keyframes scratchNewResultPulse {
  0% { transform: translateY(0) scale(1); box-shadow: 0 18px 52px rgba(0,116,190,.20); }
  45% { transform: translateY(-2px) scale(1.012); box-shadow: 0 20px 62px rgba(0,148,224,.34), 0 0 0 5px rgba(40,163,239,.08); }
  100% { transform: translateY(0) scale(1); box-shadow: 0 18px 52px rgba(0,116,190,.20); }
}
.scratch-refresh:disabled {
  opacity: .62;
  cursor: default;
}


/* V10 - prediction table clarity */
#table .draw-pending-row {
  background: linear-gradient(90deg, #f3fbff 0%, #eaf7ff 50%, #f7fcff 100%) !important;
  box-shadow: inset 4px 0 0 #1296db, inset 0 -1px 0 #d9edf9;
}
#table .draw-pending-row td {
  background: transparent !important;
  border-top-color: #cfe8f7 !important;
  border-bottom-color: #cfe8f7 !important;
}
.draw-pending-issue {
  color: #0b7fc1;
  font-weight: 800;
}
.draw-pending-countdown,
.draw-pending-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 52px;
  min-height: 28px;
  padding: 3px 10px;
  border-radius: 999px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}
.draw-pending-countdown {
  color: #0b7fc1;
  background: #fff;
  border: 1px solid #a8d7f3;
  box-shadow: 0 2px 8px rgba(18,150,219,.08);
}
.draw-pending-status {
  color: #fff;
  background: linear-gradient(135deg, #1aa5e8, #087fd0);
  box-shadow: 0 4px 10px rgba(18,150,219,.18);
}
.draw-pending-status.is-opening {
  animation: drawPendingPulse 1.05s ease-in-out infinite alternate;
}
@keyframes drawPendingPulse {
  from { transform: scale(1); box-shadow: 0 3px 8px rgba(18,150,219,.15); }
  to { transform: scale(1.055); box-shadow: 0 5px 16px rgba(18,150,219,.32); }
}

/* The prediction column uses blue for the selected/matching item and a pale outlined
   blue for the other item. Result correctness is communicated only in the last column. */
#table .prediction-cell .bg-red_szjys {
  background: #1296db !important;
  color: #fff !important;
  border: 1px solid #1296db;
  box-shadow: 0 2px 6px rgba(18,150,219,.12);
}
#table .prediction-cell .bg-blue_szjys {
  background: #eef7fc !important;
  color: #7192a9 !important;
  border: 1px solid #c9e3f2;
  box-shadow: none;
}
#table .badge-right {
  background: #e84c3d !important;
  color: #fff !important;
  box-shadow: 0 2px 6px rgba(232,76,61,.14);
}
#table .badge-wrong {
  background: #1296db !important;
  color: #fff !important;
  box-shadow: 0 2px 6px rgba(18,150,219,.14);
}

@media (max-width: 680px) {
  .draw-pending-countdown,
  .draw-pending-status {
    min-width: 46px;
    min-height: 25px;
    padding: 3px 7px;
    font-size: 12px;
  }
}


@media (max-width: 640px) {
  .platform-nav-wrap { padding: 9px 10px 10px; }
  .platform-nav-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  .platform-nav-card { min-height: 58px; gap: 8px; padding: 8px 30px 8px 8px; border-radius: 10px; }
  .platform-nav-logo { width: 35px; height: 35px; border-radius: 9px; font-size: 15px; }
  .platform-nav-copy strong { font-size: 12px; }
  .platform-nav-copy small { font-size: 9px; }
  .platform-nav-arrow { right: 8px; width: 18px; height: 18px; font-size: 18px; }
}


/* V12: main prediction/statistics navigation */
.main-section-nav .button_szjys { min-width: 0; }

/* V12: Canada 28 interval/statistics page */
.stats-page {
  padding: 14px;
  background: #fff;
  border-top: 1px solid #e4f2fb;
}
.stats-intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 15px 16px;
  border: 1px solid #cce8f8;
  border-radius: 14px;
  background: linear-gradient(145deg, #f9fdff, #eef8ff);
}
.stats-intro h2 {
  margin: 0 0 5px;
  color: #0f79bc;
  font-size: 19px;
  font-weight: 850;
}
.stats-intro p {
  margin: 0;
  color: #7694a8;
  font-size: 12px;
  line-height: 1.55;
}
.stats-refresh {
  text-decoration: none;
  flex: 0 0 auto;
  border: 0;
  border-radius: 999px;
  padding: 9px 15px;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  background: linear-gradient(135deg, #12a1ea, #0878cf);
  box-shadow: 0 5px 12px rgba(0,148,224,.18);
}
.stats-section { margin-top: 14px; }
.stats-section-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
  padding: 0 2px;
}
.stats-section-title strong { color: #166fa9; font-size: 15px; }
.stats-section-title span { color: #91a9b9; font-size: 11px; }
.stats-focus-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
}
.stats-focus-card {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid #cae7f9;
  border-radius: 13px;
  background: linear-gradient(145deg, #fff, #f1f9ff);
}
.stats-focus-num {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  background: linear-gradient(145deg, #22aef0, #0878cf);
  box-shadow: 0 5px 11px rgba(7,124,203,.17);
}
.stats-focus-copy {
  min-width: 0;
  display: grid;
  grid-template-columns: auto auto;
  align-items: end;
  column-gap: 3px;
}
.stats-focus-copy small { grid-column: 1 / -1; color: #8ca5b6; font-size: 10px; }
.stats-focus-copy strong { color: #0d79bd; font-size: 24px; line-height: 1; }
.stats-focus-copy em { color: #7796aa; font-size: 11px; font-style: normal; }
.stats-focus-card.is-high .stats-focus-copy strong { color: #e84c3d; }
.stats-category-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
}
.stats-category-item {
  min-width: 0;
  text-align: center;
  padding: 10px 6px;
  border: 1px solid #d6eaf7;
  border-radius: 11px;
  background: #f8fcff;
}
.stats-category-item span { display: block; color: #347b9f; font-size: 12px; font-weight: 750; }
.stats-category-item b { display: inline-block; margin-top: 3px; color: #0c89d1; font-size: 19px; }
.stats-category-item b.is-high { color: #e84c3d; }
.stats-category-item small { margin-left: 2px; color: #91a7b5; font-size: 9px; }
.stats-special-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 7px;
}
.stats-special-item {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5px;
  padding: 9px 8px;
  border: 1px solid #d6eaf7;
  border-radius: 10px;
  background: #fbfdff;
}
.stats-special-item.is-focus {
  border-color: #8ccff3;
  background: #edf8ff;
  box-shadow: inset 0 0 0 1px rgba(18,161,234,.06);
}
.stats-special-num {
  min-width: 30px;
  color: #167fbd;
  font-size: 14px;
  font-weight: 900;
}
.stats-special-item div { min-width: 0; text-align: right; }
.stats-special-item b { display: block; color: #2a759e; font-size: 15px; line-height: 1.05; }
.stats-special-item b.is-high { color: #e84c3d; }
.stats-special-item small { display: block; color: #9aadb9; font-size: 8px; white-space: nowrap; }

@media (max-width: 640px) {
  .stats-page { padding: 10px; }
  .stats-intro { align-items: flex-start; padding: 12px; }
  .stats-intro h2 { font-size: 17px; }
  .stats-refresh { padding: 8px 12px; }
  .stats-focus-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
  .stats-focus-card { padding: 10px; }
  .stats-focus-num { width: 40px; height: 40px; flex-basis: 40px; font-size: 16px; }
  .stats-focus-copy strong { font-size: 21px; }
  .stats-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stats-special-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
  .stats-special-item { padding: 8px 6px; }
}


/* V13 stats: 回本统计 + 数据源修复后的统计状态 */
.stats-data-warning {
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid #ffd5d0;
  border-radius: 10px;
  background: #fff7f5;
  color: #d65345;
  font-size: 12px;
  text-align: center;
}
.stats-refund-section {
  position: relative;
  margin-top: 15px;
  padding-top: 18px;
  border: 1px solid #d6ebf8;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}
.stats-ribbon-title {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 94px;
  padding: 6px 16px 7px;
  border-radius: 0 0 12px 0;
  color: #fff;
  font-size: 14px;
  font-weight: 850;
  text-align: center;
  background: linear-gradient(135deg, #1ba7ea, #0b7bce);
}
.stats-refund-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 16px;
}
.stats-refund-card {
  min-width: 0;
  text-align: center;
  border-right: 1px solid #e1eff8;
}
.stats-refund-card:last-child { border-right: 0; }
.stats-refund-line {
  padding: 11px 10px 9px;
  background: #eef8ff;
  color: #3f4b53;
  font-size: 14px;
}
.stats-refund-line strong {
  display: inline-block;
  min-width: 22px;
  margin: 0 5px;
  color: #1598df;
  font-size: 18px;
  font-weight: 900;
}
.stats-refund-line strong.is-high { color: #f25542; }
.stats-refund-line em {
  color: #4c5961;
  font-style: normal;
}
.stats-refund-prob {
  padding: 10px 10px 11px;
  color: #4a555d;
  font-size: 13px;
}
.stats-refund-prob b {
  margin-left: 4px;
  color: #ff583f;
  font-size: 15px;
  font-weight: 850;
}
.stats-refund-prob small {
  margin-left: 6px;
  color: #8da5b5;
  font-size: 10px;
}
.stats-refund-note {
  padding: 8px 12px 9px;
  border-top: 1px solid #edf5fa;
  color: #8aa2b3;
  font-size: 10px;
  text-align: center;
  background: #fbfdff;
}
@media (max-width: 640px) {
  .stats-refund-line { font-size: 12px; }
  .stats-refund-line strong { font-size: 17px; margin: 0 3px; }
  .stats-refund-prob { font-size: 11px; padding-left: 5px; padding-right: 5px; }
  .stats-refund-prob b { font-size: 13px; }
  .stats-refund-prob small { display: block; margin: 3px 0 0; }
}


/* V14 trend page */
.trend-page {
  padding: 13px;
  background: #fff;
}
.trend-intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #cbe7f8;
  border-radius: 14px;
  background: linear-gradient(135deg, #f9fdff, #edf8ff);
}
.trend-intro h2 {
  margin: 0 0 4px;
  color: #1177b7;
  font-size: 19px;
  font-weight: 900;
}
.trend-intro p {
  margin: 0;
  color: #7f9bae;
  font-size: 11px;
}
.trend-refresh {
  text-decoration: none;
  flex: 0 0 auto;
  border: 0;
  border-radius: 999px;
  padding: 9px 15px;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  background: linear-gradient(135deg, #12a1ea, #0878cf);
  box-shadow: 0 5px 12px rgba(0,148,224,.18);
}
.trend-table-wrap {
  margin-top: 12px;
  overflow-x: auto;
  border: 1px solid #d6eaf7;
  border-radius: 13px;
  background: #fff;
  -webkit-overflow-scrolling: touch;
}
.trend-table {
  width: 100%;
  min-width: 730px;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  color: #234b63;
  font-size: 12px;
}
.trend-table th,
.trend-table td {
  height: 44px;
  padding: 6px 5px;
  border-right: 1px solid #e4f0f7;
  border-bottom: 1px solid #e4f0f7;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
}
.trend-table th:last-child,
.trend-table td:last-child { border-right: 0; }
.trend-table tbody tr:last-child td { border-bottom: 0; }
.trend-table thead th {
  position: sticky;
  top: 0;
  z-index: 5;
  color: #0d73b2;
  font-weight: 850;
  background: #eaf7ff;
}
.trend-table tbody tr:nth-child(even) td { background: #fbfdff; }
.trend-issue-col { width: 95px; }
.trend-sum-col { width: 54px; }
.trend-sticky-col {
  position: sticky;
  left: 0;
  z-index: 3;
  background: #fff !important;
}
.trend-sticky-col-2 {
  position: sticky;
  left: 95px;
  z-index: 3;
  background: #fff !important;
  box-shadow: 6px 0 8px rgba(16,126,189,.04);
}
.trend-table thead .trend-sticky-col,
.trend-table thead .trend-sticky-col-2 {
  z-index: 7;
  background: #eaf7ff !important;
}
.trend-table tbody tr:nth-child(even) .trend-sticky-col,
.trend-table tbody tr:nth-child(even) .trend-sticky-col-2 { background: #fbfdff !important; }
.trend-table td strong {
  color: #315c74;
  font-weight: 800;
}
.trend-sum-badge {
  display: inline-flex;
  min-width: 31px;
  height: 31px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  background: linear-gradient(145deg, #27adee, #087acc);
  box-shadow: 0 3px 8px rgba(12,126,203,.17);
}
.trend-hit {
  display: inline-flex;
  min-width: 28px;
  height: 28px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 0 7px;
  color: #fff;
  font-weight: 900;
  border: 0;
  box-shadow: 0 3px 8px rgba(33, 83, 118, .14);
}
/* V15 走势颜色：大/小、单/双使用明显反差；组合直接用对应两种颜色拼接 */
.trend-hit.trend-big { background: linear-gradient(135deg, #ff665f, #e43d39); }
.trend-hit.trend-small { background: linear-gradient(135deg, #32b7ff, #087fd5); }
.trend-hit.trend-odd { background: linear-gradient(135deg, #9a72ff, #6f49dc); }
.trend-hit.trend-even { background: linear-gradient(135deg, #36c99a, #149a72); }
.trend-hit.trend-combo {
  min-width: 38px;
  color: #fff;
  border: 0;
  text-shadow: 0 1px 1px rgba(0,0,0,.16);
  box-shadow: 0 4px 9px rgba(34,75,105,.16);
}
.trend-hit.trend-big-odd { background: linear-gradient(90deg, #e94a43 0 50%, #7651e6 50% 100%); }
.trend-hit.trend-big-even { background: linear-gradient(90deg, #e94a43 0 50%, #169f77 50% 100%); }
.trend-hit.trend-small-odd { background: linear-gradient(90deg, #1189dc 0 50%, #7651e6 50% 100%); }
.trend-hit.trend-small-even { background: linear-gradient(90deg, #1189dc 0 50%, #169f77 50% 100%); }
.trend-tip {
  margin-top: 8px;
  color: #91a9b9;
  font-size: 10px;
  text-align: center;
}
@media (max-width: 640px) {
  .main-section-nav .button_szjys { font-size: 11px; padding-left: 4px; padding-right: 4px; }
  .trend-page { padding: 9px; }
  .trend-intro { padding: 11px 12px; align-items: flex-start; }
  .trend-intro h2 { font-size: 17px; }
  .trend-refresh { padding: 8px 11px; }
  .trend-table { min-width: 700px; font-size: 11px; }
  .trend-table th, .trend-table td { height: 41px; padding: 5px 4px; }
  .trend-issue-col { width: 88px; }
  .trend-sticky-col-2 { left: 88px; }
  .trend-sum-col { width: 50px; }
  .trend-sum-badge { min-width: 29px; height: 29px; }
  .trend-hit { min-width: 26px; height: 26px; padding: 0 6px; }
}

/* =====================================================================
   V21 - 蓝白主色 + 多彩功能强调色
   目的：保留原站蓝白识别，同时用青/紫/绿/橙/红拉开模块层级。
   仅修改视觉，不改变开奖、预测、刮奖、统计、走势逻辑。
   ===================================================================== */
:root {
  --accent-cyan: #13b7d6;
  --accent-violet: #7357df;
  --accent-green: #17a978;
  --accent-amber: #f29b24;
  --accent-coral: #e8564f;
  --accent-rose: #d94c79;
}

html { background: #f1f7ff !important; }
body {
  background:
    radial-gradient(circle at 8% 0%, rgba(32,173,237,.18), transparent 30%),
    radial-gradient(circle at 94% 10%, rgba(115,87,223,.10), transparent 30%),
    radial-gradient(circle at 50% 100%, rgba(23,169,120,.08), transparent 34%),
    linear-gradient(180deg, #f9fcff 0%, #eef7ff 55%, #f7fbff 100%) !important;
}
.content-block_szjys {
  border-color: #d5e8f7;
  box-shadow: 0 14px 38px rgba(40,102,149,.13), 0 2px 7px rgba(67,94,124,.04);
}

/* 顶部：仍然是蓝白，但加入轻微紫/青层次 */
.site-head-blue {
  background:
    radial-gradient(circle at 14% 20%, rgba(19,183,214,.11), transparent 22%),
    radial-gradient(circle at 88% 18%, rgba(115,87,223,.10), transparent 24%),
    linear-gradient(135deg, #fbfdff 0%, #eef9ff 48%, #f2f0ff 100%);
}
.site-brand-blue {
  color: #116fae;
  background: linear-gradient(90deg, #0878cf 0%, #0f9fd7 52%, #6758d5 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.site-url-blue {
  color: #47718d;
  border-color: #d8d6f4;
  background: linear-gradient(90deg, rgba(255,255,255,.96), rgba(247,244,255,.96));
  box-shadow: 0 5px 14px rgba(86,86,164,.08);
}
.site-display-url { color: #6a51d4; }
.site-contact-blue a:nth-child(1) { color: #0787d2 !important; }
.site-contact-blue a:nth-child(2) { color: #7556d8 !important; }
.site-contact-blue a:hover { filter: brightness(.9); }

/* 6个平台卡片：每张卡一个轻量强调色，避免一整片蓝 */
.platform-nav-card:nth-child(1) { --pc-a:#078bd8; --pc-b:#20b6ee; --pc-bg:#edf8ff; --pc-soft:#e5f5ff; --pc-border:#bfe2f5; --pc-shadow:rgba(7,139,216,.14); }
.platform-nav-card:nth-child(2) { --pc-a:#7257dc; --pc-b:#9a78ed; --pc-bg:#f5f1ff; --pc-soft:#eee9ff; --pc-border:#d8cff5; --pc-shadow:rgba(114,87,220,.14); }
.platform-nav-card:nth-child(3) { --pc-a:#149b73; --pc-b:#32c69a; --pc-bg:#effbf7; --pc-soft:#e3f8f0; --pc-border:#c4e9dc; --pc-shadow:rgba(20,155,115,.14); }
.platform-nav-card:nth-child(4) { --pc-a:#ec8b23; --pc-b:#f6b443; --pc-bg:#fff8ec; --pc-soft:#fff1d9; --pc-border:#f3d8ae; --pc-shadow:rgba(236,139,35,.14); }
.platform-nav-card:nth-child(5) { --pc-a:#0ca4b8; --pc-b:#37c8d5; --pc-bg:#effbfc; --pc-soft:#e1f8fa; --pc-border:#bfe7eb; --pc-shadow:rgba(12,164,184,.14); }
.platform-nav-card:nth-child(6) { --pc-a:#d64d75; --pc-b:#ed7697; --pc-bg:#fff2f6; --pc-soft:#ffe7ef; --pc-border:#f0c7d4; --pc-shadow:rgba(214,77,117,.14); }
.platform-nav-card {
  border-color: var(--pc-border, #c9e6f8);
  color: var(--pc-a, #166fa9) !important;
  background: linear-gradient(145deg, #fff 0%, var(--pc-bg, #f4fbff) 100%);
}
.platform-nav-card::before { background: linear-gradient(180deg, var(--pc-b, #32b8f6), var(--pc-a, #0879cf)); }
.platform-nav-logo { background: linear-gradient(145deg, var(--pc-b, #29b3f4), var(--pc-a, #0879cf)); }
.platform-nav-copy strong { color: var(--pc-a, #1479b7); }
.platform-nav-arrow { color: var(--pc-a, #188bd0); background: var(--pc-soft, #e8f6ff); }
.platform-nav-card:hover {
  border-color: var(--pc-a, #188bd0);
  background: linear-gradient(145deg, #fff 0%, var(--pc-soft, #e8f6ff) 100%);
  box-shadow: 0 7px 17px var(--pc-shadow, rgba(24,139,208,.14));
}

/* 预测 / 走势 / 统计：三个功能入口固定三种强调色 */
.main-section-nav .button_szjys:nth-child(1) { color:#087fca !important; border-color:#b9def4 !important; background:#f4fbff !important; }
.main-section-nav .button_szjys:nth-child(2) { color:#7053d5 !important; border-color:#d7cff6 !important; background:#faf8ff !important; }
.main-section-nav .button_szjys:nth-child(3) { color:#138e6a !important; border-color:#c7eadf !important; background:#f5fcf9 !important; }
.main-section-nav .button_szjys:nth-child(1).active { color:#fff !important; background:linear-gradient(135deg,#16a4e9,#0877ca) !important; box-shadow:0 6px 14px rgba(8,126,202,.20) !important; }
.main-section-nav .button_szjys:nth-child(2).active { color:#fff !important; background:linear-gradient(135deg,#8d6ce8,#6548cd) !important; box-shadow:0 6px 14px rgba(101,72,205,.20) !important; }
.main-section-nav .button_szjys:nth-child(3).active { color:#fff !important; background:linear-gradient(135deg,#2abb8e,#118966) !important; box-shadow:0 6px 14px rgba(17,137,102,.20) !important; }

/* 首页开奖条：号码、和值、大小单双、倒计时各有自己的视觉重点 */
.scratch-livebar {
  background: linear-gradient(90deg, #fbfeff 0%, #f5faff 45%, #fffaf2 100%);
}
.scratch-live-result { background: linear-gradient(180deg, rgba(247,252,255,.72), rgba(248,247,255,.60)); }
#scratchLiveN1 { color:#087fd0; border-color:#b8ddf5; background:#f1f9ff; }
#scratchLiveN2 { color:#7053d5; border-color:#d7cff6; background:#f7f4ff; }
#scratchLiveN3 { color:#149970; border-color:#c5eadf; background:#f2fbf7; }
#scratchLiveSum {
  color:#fff;
  border-color:transparent;
  background:linear-gradient(145deg,#f7ad39,#ed861b);
  box-shadow:0 5px 12px rgba(236,137,29,.24);
}
#scratchLiveDx { background:linear-gradient(145deg,#f26861,#df443e); box-shadow:0 5px 12px rgba(223,68,62,.20); }
#scratchLiveDs { background:linear-gradient(145deg,#9275ec,#6b50d5); box-shadow:0 5px 12px rgba(107,80,213,.20); }
.scratch-live-next { background:linear-gradient(180deg, rgba(255,253,248,.65), rgba(255,248,235,.72)); }
.scratch-live-timebox {
  background:linear-gradient(145deg,#f5ad3d,#ec861e);
  box-shadow:0 5px 12px rgba(236,134,30,.20);
}
.scratch-live-opening { color:#b66b14; background:#fff3dc; }

/* 四种预测模式：选中后颜色不同；算法逻辑完全不变 */
.button_szjys.active[href*="type=1"] { background:linear-gradient(135deg,#17a1e5,#0876c9) !important; }
.button_szjys.active[href*="type=2"] { background:linear-gradient(135deg,#f1a331,#e7831d) !important; box-shadow:0 6px 14px rgba(231,131,29,.20) !important; }
.button_szjys.active[href*="type=3"] { background:linear-gradient(135deg,#ef6c64,#d94742) !important; box-shadow:0 6px 14px rgba(217,71,66,.20) !important; }
.button_szjys.active[href*="type=4"] { background:linear-gradient(135deg,#8c6de6,#6649cc) !important; box-shadow:0 6px 14px rgba(102,73,204,.20) !important; }
.button_szjys.active .algorithm-recommend { color:#ff2d24 !important; background:#fff !important; }

/* 预测表：对红、错蓝，只给等待开奖加暖色提醒 */
.sui-table_szjys thead tr {
  background:linear-gradient(90deg,#eaf7ff 0%,#f2efff 100%) !important;
}
#table .draw-pending-row {
  background:linear-gradient(90deg,#fffaf0 0%,#fff5df 48%,#fffaf2 100%) !important;
  box-shadow:inset 4px 0 0 #efa12d, inset 0 -1px 0 #f3dfba;
}
.draw-pending-countdown { color:#bd741b; border-color:#f0c985; background:#fffdf8; }
.draw-pending-status { background:linear-gradient(135deg,#f1aa3a,#e7831e); box-shadow:0 4px 10px rgba(231,131,30,.20); }

/* 刮刮卡：蓝色主体 + 金色揭晓重点 + 紫色辅助 */
.scratch-dialog-header {
  background:
    radial-gradient(circle at 18% 30%, rgba(255,255,255,.24), transparent 13%),
    radial-gradient(circle at 82% 18%, rgba(255,215,111,.24), transparent 15%),
    linear-gradient(135deg,#19a9ee 0%,#087fd3 48%,#6552d2 100%);
}
.scratch-dialog-header::before,
.scratch-dialog-header::after { color:#ffe09a; }
.scratch-issue-ribbon {
  color:#7f6728;
  background:linear-gradient(180deg,#fffdf6,#fff4d7);
  border-bottom-color:#f2dfad;
}
.scratch-issue-ribbon strong { color:#e78a1e; }
#scratchN1 { color:#087fd0; border-color:#9fd7f8; background:linear-gradient(180deg,#fff,#eff8ff); }
#scratchN2 { color:#7053d5; border-color:#cec2f5; background:linear-gradient(180deg,#fff,#f4f1ff); }
#scratchN3 { color:#149970; border-color:#b8e5d7; background:linear-gradient(180deg,#fff,#effbf6); }
#scratchSum {
  color:#fff;
  border-color:#fff;
  background:linear-gradient(145deg,#f5ad3d,#e9821e);
  box-shadow:0 8px 18px rgba(233,130,30,.25);
}
.scratch-countdown { background:linear-gradient(90deg,#eef8ff 0%,#f6f2ff 55%,#fff8e9 100%); }
.scratch-countdown-text strong { color:#6b51d4; }
.scratch-time { color:#e18419; }
.scratch-refresh { color:#6650cb; border-color:#cec3f2; background:#fff; }

/* 统计页：不同统计类型用不同浅色卡，保持可读性 */
.stats-intro,
.trend-intro {
  border-color:#d8d3f2;
  background:linear-gradient(135deg,#f8fdff 0%,#f1f8ff 52%,#f7f3ff 100%);
}
.stats-refresh { background:linear-gradient(135deg,#28b98d,#118966); box-shadow:0 5px 12px rgba(17,137,102,.18); }
.stats-ribbon-title { background:linear-gradient(135deg,#f0a22f,#e47e1c); }
.stats-refund-card:nth-child(1) .stats-refund-line { background:#fff7e8; }
.stats-refund-card:nth-child(1) .stats-refund-line strong { color:#e88a1d; }
.stats-refund-card:nth-child(2) .stats-refund-line { background:#f5f1ff; }
.stats-refund-card:nth-child(2) .stats-refund-line strong { color:#7154d6; }
.stats-refund-card .stats-refund-line strong.is-high { color:#e84c3d !important; }

.stats-focus-card:nth-child(1) { border-color:#bddff5; background:linear-gradient(145deg,#fff,#edf8ff); }
.stats-focus-card:nth-child(1) .stats-focus-num { background:linear-gradient(145deg,#21acef,#0879ce); }
.stats-focus-card:nth-child(2) { border-color:#d8cff5; background:linear-gradient(145deg,#fff,#f5f1ff); }
.stats-focus-card:nth-child(2) .stats-focus-num { background:linear-gradient(145deg,#9275ea,#6c50d4); }
.stats-focus-card:nth-child(3) { border-color:#f3d6a7; background:linear-gradient(145deg,#fff,#fff7e9); }
.stats-focus-card:nth-child(3) .stats-focus-num { background:linear-gradient(145deg,#f5ad3b,#e7831d); }
.stats-focus-card:nth-child(4) { border-color:#bde7d9; background:linear-gradient(145deg,#fff,#effbf6); }
.stats-focus-card:nth-child(4) .stats-focus-num { background:linear-gradient(145deg,#32c59a,#14996f); }

/* 分类遗漏顺序：单/双/小/大/大单/大双/小单/小双/极大/极小 */
.stats-category-item { border-top-width:3px; }
.stats-category-item:nth-child(1) { border-top-color:#7758dc; background:#faf8ff; }
.stats-category-item:nth-child(1) span,.stats-category-item:nth-child(1) b { color:#7053d5; }
.stats-category-item:nth-child(2) { border-top-color:#18a277; background:#f5fcf9; }
.stats-category-item:nth-child(2) span,.stats-category-item:nth-child(2) b { color:#138e6a; }
.stats-category-item:nth-child(3) { border-top-color:#168fd9; background:#f5fbff; }
.stats-category-item:nth-child(3) span,.stats-category-item:nth-child(3) b { color:#0b82cd; }
.stats-category-item:nth-child(4) { border-top-color:#e4514a; background:#fff7f6; }
.stats-category-item:nth-child(4) span,.stats-category-item:nth-child(4) b { color:#d94742; }
.stats-category-item:nth-child(5) { border-top-color:#d95a70; background:#fff7fa; }
.stats-category-item:nth-child(5) span,.stats-category-item:nth-child(5) b { color:#ca4962; }
.stats-category-item:nth-child(6) { border-top-color:#df7c31; background:#fff9f3; }
.stats-category-item:nth-child(6) span,.stats-category-item:nth-child(6) b { color:#cd6c25; }
.stats-category-item:nth-child(7) { border-top-color:#5479dc; background:#f7f9ff; }
.stats-category-item:nth-child(7) span,.stats-category-item:nth-child(7) b { color:#476bc8; }
.stats-category-item:nth-child(8) { border-top-color:#12a0a9; background:#f4fcfc; }
.stats-category-item:nth-child(8) span,.stats-category-item:nth-child(8) b { color:#0d8c94; }
.stats-category-item:nth-child(9) { border-top-color:#e6a329; background:#fffaf0; }
.stats-category-item:nth-child(9) span,.stats-category-item:nth-child(9) b { color:#c98513; }
.stats-category-item:nth-child(10) { border-top-color:#1eb7d1; background:#f3fbfd; }
.stats-category-item:nth-child(10) span,.stats-category-item:nth-child(10) b { color:#1699b0; }
.stats-category-item b.is-high { color:#e84c3d !important; }

/* 00-27：按号码区间分成四个浅色段，不影响“高遗漏=红” */
.stats-special-item:nth-child(-n+7) .stats-special-num { color:#087fca; }
.stats-special-item:nth-child(n+8):nth-child(-n+14) .stats-special-num { color:#149970; }
.stats-special-item:nth-child(n+15):nth-child(-n+21) .stats-special-num { color:#7053d5; }
.stats-special-item:nth-child(n+22) .stats-special-num { color:#df861d; }
.stats-special-item:nth-child(-n+7) { background:#f8fcff; }
.stats-special-item:nth-child(n+8):nth-child(-n+14) { background:#f7fcfa; }
.stats-special-item:nth-child(n+15):nth-child(-n+21) { background:#faf8ff; }
.stats-special-item:nth-child(n+22) { background:#fffaf4; }
.stats-special-item.is-focus { background:#eef8ff; }
.stats-special-item b.is-high { color:#e84c3d !important; }

/* 走势页：已有大小单双反差色，再增强表头分组和和值层级 */
.trend-refresh { background:linear-gradient(135deg,#8d6ce8,#6548cd); box-shadow:0 5px 12px rgba(101,72,205,.18); }
.trend-sum-badge { background:linear-gradient(145deg,#f5ad3b,#e7831d); box-shadow:0 3px 8px rgba(231,131,29,.20); }
.trend-table thead th:nth-child(3) { color:#d94742; background:#fff3f2; }
.trend-table thead th:nth-child(4) { color:#087fcf; background:#f0f8ff; }
.trend-table thead th:nth-child(5) { color:#7053d5; background:#f6f2ff; }
.trend-table thead th:nth-child(6) { color:#138e6a; background:#f1fbf7; }
.trend-table thead th:nth-child(n+7):nth-child(-n+10) { background:#f8f7ff; }

@media (max-width: 620px) {
  .site-head-blue { background:linear-gradient(135deg,#fbfdff 0%,#eef9ff 55%,#f5f2ff 100%); }
  .platform-nav-card { box-shadow:0 3px 9px rgba(45,91,127,.06); }
}


/* ============================================================
   V22 — 顶部视觉收敛：统一蓝白，网址红色突出
   ============================================================ */

/* 顶部背景回归统一蓝白，去掉紫/绿混色 */
body {
  background:
    radial-gradient(circle at 8% 0%, rgba(32,173,237,.15), transparent 30%),
    radial-gradient(circle at 92% 8%, rgba(0,148,224,.08), transparent 28%),
    linear-gradient(180deg, #f9fcff 0%, #eef8ff 55%, #f7fbff 100%) !important;
}
.site-head-blue {
  background:
    radial-gradient(circle at 88% 12%, rgba(255,255,255,.52), transparent 22%),
    linear-gradient(135deg, #fbfdff 0%, #eef9ff 52%, #e5f5ff 100%);
}
.site-brand-blue {
  color: #0b76b8;
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
  -webkit-text-fill-color: currentColor;
}
.site-url-blue {
  color: #47718d;
  border-color: #bfe1f5;
  background: rgba(255,255,255,.95);
  box-shadow: 0 4px 12px rgba(0,148,224,.08);
}
.site-remember-label {
  color: #397ca9;
}
.site-display-url {
  color: #e53935 !important;
  font-weight: 900;
  text-shadow: 0 1px 0 rgba(255,255,255,.85);
}
.site-contact-blue a,
.site-contact-blue a:nth-child(1),
.site-contact-blue a:nth-child(2) {
  color: #147dbb !important;
}
.site-contact-blue a:hover {
  color: #075fa7 !important;
  filter: none;
}

/* 6个平台卡片统一为同一套蓝白色，不再每张一种颜色 */
.platform-nav-card,
.platform-nav-card:nth-child(1),
.platform-nav-card:nth-child(2),
.platform-nav-card:nth-child(3),
.platform-nav-card:nth-child(4),
.platform-nav-card:nth-child(5),
.platform-nav-card:nth-child(6) {
  --pc-a: #087dca;
  --pc-b: #20aceb;
  --pc-bg: #f1f9ff;
  --pc-soft: #e7f5ff;
  --pc-border: #c5e4f7;
  --pc-shadow: rgba(8,125,202,.13);
}
.platform-nav-card {
  border-color: var(--pc-border);
  color: var(--pc-a) !important;
  background: linear-gradient(145deg, #ffffff 0%, var(--pc-bg) 100%);
}
.platform-nav-card::before {
  background: linear-gradient(180deg, var(--pc-b), var(--pc-a));
}
.platform-nav-logo {
  background: linear-gradient(145deg, #29b3f4, #0879cf);
  box-shadow: 0 5px 10px rgba(8,121,207,.16), inset 0 1px 0 rgba(255,255,255,.28);
}
.platform-nav-copy strong { color: #1479b7; }
.platform-nav-arrow { color: #188bd0; background: #e8f6ff; }
.platform-nav-card:hover {
  border-color: #83cdf3;
  background: linear-gradient(145deg, #fff 0%, #eaf7ff 100%);
  box-shadow: 0 7px 17px rgba(24,139,208,.13);
}

/* 顶部“预测 / 走势 / 统计”也统一蓝白，仅当前页使用实心蓝 */
.main-section-nav .button_szjys:nth-child(1),
.main-section-nav .button_szjys:nth-child(2),
.main-section-nav .button_szjys:nth-child(3) {
  color: #1479b7 !important;
  border-color: #b9def4 !important;
  background: #f7fbff !important;
  box-shadow: none !important;
}
.main-section-nav .button_szjys:nth-child(1).active,
.main-section-nav .button_szjys:nth-child(2).active,
.main-section-nav .button_szjys:nth-child(3).active {
  color: #fff !important;
  border-color: #0a83cf !important;
  background: linear-gradient(135deg,#18a5e9,#0877ca) !important;
  box-shadow: 0 5px 12px rgba(8,126,202,.18) !important;
}

@media (max-width: 620px) {
  .site-head-blue {
    background: linear-gradient(135deg,#fbfdff 0%,#eef9ff 55%,#e7f6ff 100%);
  }
}

/* V23 预测列表颜色优化：仅修改数据区，顶部表头保持原蓝白醒目风格 */
#table tbody .prediction-cell .bg-red_szjys {
  background:linear-gradient(135deg,#ff6b6b,#e53935) !important;
  color:#fff !important;
  border-color:#e53935 !important;
  box-shadow:0 3px 8px rgba(229,57,53,.25);
}
#table tbody .prediction-cell .bg-blue_szjys {
  background:linear-gradient(135deg,#1e9cff,#006edc) !important;
  color:#fff !important;
  border-color:#006edc !important;
  box-shadow:0 3px 8px rgba(0,110,220,.25);
}
/* 对错：对红、错蓝，增强反差 */
#table tbody .badge-right {
  background:linear-gradient(135deg,#ff6464,#d90000) !important;
  color:#fff !important;
  border-color:#d90000 !important;
  box-shadow:0 3px 8px rgba(217,0,0,.25);
}
#table tbody .badge-wrong {
  background:linear-gradient(135deg,#1688ff,#005fd1) !important;
  color:#fff !important;
  border-color:#005fd1 !important;
  box-shadow:0 3px 8px rgba(0,95,209,.28);
}
/* 预测标签间距和可读性 */
#table tbody .prediction-cell .badge_szjys,
#table tbody td .badge-right,
#table tbody td .badge-wrong {
  font-weight:700;
  min-width:32px;
  padding:5px 9px;
  border-radius:18px;
}
/* 顶部表头只增强，不改变颜色体系 */
#table thead td {
  font-weight:800 !important;
  letter-spacing:.5px;
}


/* V24 prediction result emphasis
   Correct: red, Wrong: blue. Keep table header unchanged. */
#table .badge-right,
#table .result-right,
#table .is-right {
  background: linear-gradient(135deg,#ff5b57,#e12d2d) !important;
  color:#fff !important;
  border-color:#e12d2d !important;
  box-shadow:0 3px 8px rgba(225,45,45,.22) !important;
}
#table .badge-wrong,
#table .result-wrong,
#table .is-wrong {
  background: linear-gradient(135deg,#20a4ef,#0878cf) !important;
  color:#fff !important;
  border-color:#0878cf !important;
  box-shadow:0 3px 8px rgba(8,120,207,.22) !important;
}

/* prediction row status: hit red, miss blue */
#table tr.prediction-hit .prediction-cell,
#table tr.is-hit .prediction-cell {
  color:#fff !important;
}
#table tr.prediction-hit .prediction-cell span,
#table tr.is-hit .prediction-cell span {
  background:#ef3f3f !important;
  color:#fff !important;
  border-color:#ef3f3f !important;
}
#table tr.prediction-miss .prediction-cell span,
#table tr.is-miss .prediction-cell span {
  background:#168fdc !important;
  color:#fff !important;
  border-color:#168fdc !important;
}
