/* HPOfficial homepage — original high-energy result system. */
body.home-page {
  --ho-cobalt: #0b2e79;
  --ho-deep: #071d57;
  --ho-ruby: #c2185b;
  --ho-marigold: #ffd54a;
  --ho-marigold-strong: #ffc928;
  --ho-cream: #fff8e8;
  --ho-sky: #eef5ff;
  --ho-ink: #17233b;
  --ho-muted: #5d6980;
  --ho-green: #087a50;
  --ho-white: #ffffff;
  --ho-line: #173a79;
  --ho-soft-line: #b9c8e5;
  min-width: 280px;
  overflow-x: hidden;
  background: var(--ho-cream);
  color: var(--ho-ink);
  color-scheme: light;
  font-family: Arial, Helvetica, system-ui, sans-serif;
  font-size: 16px;
  line-height: 1.35;
}

body.home-page::before { display: none !important; }
body.home-page *,
body.home-page *::before,
body.home-page *::after { min-width: 0; }
body.home-page ::selection { background: var(--ho-marigold); color: var(--ho-deep); }
body.home-page :focus-visible { outline: 3px solid var(--ho-ruby); outline-offset: 2px; }

body.home-page .skip-link {
  border: 2px solid var(--ho-deep);
  border-radius: 4px;
  background: var(--ho-marigold);
  color: var(--ho-deep);
  font-weight: 900;
}

/* Branded shell. Navigation is intentionally owned by its separate stylesheet. */
body.home-page .site-head {
  position: relative;
  z-index: 20;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(400px, 460px) minmax(0, 1fr);
  align-items: center;
  width: min(1160px, calc(100% - 20px));
  min-height: 120px;
  margin: 8px auto;
  padding: 8px 14px;
  border: 2px solid var(--ho-deep);
  border-radius: 8px;
  background: var(--ho-sky);
  box-shadow: 4px 4px 0 var(--ho-marigold);
}

body.home-page .brand { grid-column: 2; display: block; width: min(460px, 100%); height: 102px; justify-self: center; }
body.home-page .brand img { width: 100%; height: 100%; object-fit: contain; filter: none; }

body.home-page .head-status {
  grid-column: 3;
  justify-self: end;
  display: grid;
  grid-template-columns: 8px auto;
  align-items: center;
  gap: 0 8px;
  padding: 7px 10px;
  border: 2px solid var(--ho-marigold);
  border-radius: 5px;
  background: var(--ho-deep);
  color: #fff;
  backdrop-filter: none;
}

body.home-page .head-status i {
  grid-row: 1 / 3;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #55d49c;
  box-shadow: 0 0 0 3px rgba(85, 212, 156, .2);
}

body.home-page .head-status span,
body.home-page .head-status strong { line-height: 1.05; letter-spacing: .08em; }
body.home-page .head-status span { color: #dce7ff; font-size: .72rem; font-weight: 900; }
body.home-page .head-status strong { color: var(--ho-marigold); font-size: .84rem; font-weight: 900; }

body.home-page main > section,
body.home-page main > article,
body.home-page .site-support-card,
body.home-page > footer {
  width: min(1160px, calc(100% - 20px));
  max-width: 1160px;
  margin-inline: auto;
}

body.home-page main > section,
body.home-page main > article { margin-top: 10px; }

/* Primary Hira Panna result */
body.home-page .hira-feature {
  overflow: hidden;
  border: 2px solid var(--ho-deep);
  border-radius: 10px;
  background: var(--ho-white);
  box-shadow: 4px 4px 0 rgba(7, 29, 87, .2);
}

body.home-page .hira-feature-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 64px;
  gap: 14px;
  padding: 9px 16px;
  border: 0;
  border-bottom: 4px solid var(--ho-marigold-strong);
  background: var(--ho-cobalt);
  color: #fff;
}

body.home-page .hira-feature-head > div > span {
  display: block;
  color: var(--ho-marigold);
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .13em;
}

body.home-page .hira-feature-head h1,
body.home-page .hira-feature-head h2 {
  margin: 2px 0 0;
  color: #fff;
  font-family: "Arial Black", Arial, Helvetica, sans-serif;
  font-size: clamp(1.45rem, 3vw, 2.15rem);
  font-weight: 900;
  letter-spacing: -.035em;
  line-height: 1;
}

body.home-page .hira-feature-head h1 em,
body.home-page .hira-feature-head h2 em { color: var(--ho-marigold); font-style: normal; }

body.home-page .market-state {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  overflow: hidden;
  color: var(--ho-muted);
  font-size: .57rem;
  font-weight: 900;
  letter-spacing: .05em;
  line-height: 1.1;
  text-transform: uppercase;
}

body.home-page .market-state span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.home-page .market-state .status-short { display: none; }
body.home-page .market-state i {
  flex: 0 0 7px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #7b8596;
  box-shadow: none;
}

body.home-page .is-published i,
body.home-page .is-open i { background: var(--ho-green); }
body.home-page .is-live i { background: var(--ho-ruby); box-shadow: 0 0 0 3px rgba(194, 24, 91, .17); }
body.home-page .is-pending i,
body.home-page .is-last i { background: #d08c00; }
body.home-page .is-holiday i,
body.home-page .is-closed i { background: #9c214b; }

body.home-page .hira-feature-head .market-state {
  flex: 0 1 auto;
  max-width: 42%;
  margin: 0;
  padding: 7px 9px;
  border: 2px solid var(--ho-marigold);
  border-radius: 4px;
  background: var(--ho-deep);
  color: #fff;
}

body.home-page .hira-feature-board {
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr) 104px;
  min-height: 190px;
  background: var(--ho-white);
}

body.home-page .hira-chart-action,
body.home-page .market-side-action {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 1px;
  min-height: 44px;
  padding: 8px 4px;
  border-radius: 0;
  text-align: center;
  transition: background-color .15s ease, color .15s ease;
}

body.home-page .hira-chart-action.is-jodi,
body.home-page .market-side-action.is-jodi { background: var(--ho-ruby); color: #fff; }
body.home-page .hira-chart-action.is-panel,
body.home-page .market-side-action.is-panel { background: var(--ho-marigold-strong); color: var(--ho-deep); }
body.home-page .hira-chart-action:hover,
body.home-page .market-side-action:hover { background: var(--ho-deep); color: #fff; }
body.home-page .hira-chart-action small { opacity: 1; font-size: .56rem; font-weight: 900; letter-spacing: .1em; }
body.home-page .hira-chart-action b { font-family: "Arial Black", Arial, sans-serif; font-size: 1rem; line-height: 1.1; }
body.home-page .hira-chart-action span { opacity: 1; font-size: .55rem; font-weight: 900; letter-spacing: .08em; }
body.home-page .hira-chart-action.is-jodi small,
body.home-page .hira-chart-action.is-jodi span { color: #fff; }

body.home-page .hira-feature-main {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 13px 16px;
  overflow: hidden;
  border-inline: 2px solid var(--ho-deep);
  background: var(--ho-cream);
  text-align: center;
}

body.home-page .verified-result-label {
  color: var(--ho-cobalt);
  font-size: .61rem;
  font-weight: 900;
  letter-spacing: .12em;
}

body.home-page .hira-number {
  display: flex;
  align-items: baseline;
  justify-content: center;
  max-width: 100%;
  gap: clamp(5px, 1.3vw, 14px);
  margin-top: 5px;
  padding-block: 3px;
  overflow: hidden;
  color: var(--ho-deep);
  font-family: "Arial Black", Arial, Helvetica, sans-serif;
  font-size: clamp(2.75rem, 6.4vw, 4.8rem);
  font-weight: 900;
  letter-spacing: -.075em;
  line-height: .98;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.home-page .hira-number > * { line-height: 1; }
body.home-page .hira-number strong { color: var(--ho-ruby); font-size: 1em; }
body.home-page .hira-number i { color: #8190ad; font-size: .43em; font-style: normal; font-weight: 900; }

body.home-page .hira-times {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: min(100%, 360px);
  gap: 6px;
  margin-top: 13px;
}

body.home-page .hira-times span {
  padding: 6px 5px;
  overflow: hidden;
  border: 2px solid var(--ho-soft-line);
  border-radius: 5px;
  background: var(--ho-white);
}

body.home-page .hira-times small,
body.home-page .hira-times b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.home-page .hira-times small { color: var(--ho-ruby); font-size: .5rem; font-weight: 900; letter-spacing: .08em; }
body.home-page .hira-times b { margin-top: 1px; color: var(--ho-deep); font-size: .61rem; font-weight: 900; font-variant-numeric: tabular-nums; }

body.home-page .hira-feature > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  gap: 10px;
  padding: 5px 10px;
  border: 0;
  border-top: 2px solid var(--ho-deep);
  background: var(--ho-sky);
}

body.home-page .hira-feature > footer > span { color: var(--ho-cobalt); font-size: .55rem; font-weight: 900; letter-spacing: .07em; }
body.home-page .hira-feature > footer i { display: inline-block; width: 7px; height: 7px; margin-right: 4px; border-radius: 50%; background: var(--ho-ruby); }
body.home-page .hira-feature > footer i.is-online { background: var(--ho-green); box-shadow: none; }
body.home-page .hira-feature > footer button {
  min-height: 44px;
  padding: 6px 10px;
  border: 2px solid var(--ho-cobalt);
  border-radius: 5px;
  background: var(--ho-white);
  color: var(--ho-deep);
  font-size: .57rem;
  font-weight: 900;
}
body.home-page .hira-feature > footer button:hover { background: var(--ho-marigold); }
body.home-page .hira-feature > footer button b { color: var(--ho-ruby); }

body.home-page .hira-feature.is-offline { border-color: var(--ho-ruby); }
body.home-page .hira-feature.is-offline .hira-feature-main { min-height: 165px; border: 0; }
body.home-page .hira-feature.is-offline .hira-feature-main p { margin: 8px 0 0; color: var(--ho-ruby); font-weight: 800; }

/* Forthcoming standard current-market status block */
body.home-page .current-market-status {
  overflow: hidden;
  border: 2px solid var(--ho-deep);
  border-radius: 8px;
  background: var(--ho-white);
  box-shadow: 3px 3px 0 rgba(7, 29, 87, .16);
}

body.home-page .current-market-status > header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  min-height: 58px;
  gap: 12px;
  padding: 8px 12px;
  border: 0;
  border-bottom: 3px solid var(--ho-marigold-strong);
  background: var(--ho-deep);
  color: #fff;
}

body.home-page .current-market-status > header span { display: block; color: var(--ho-marigold); font-size: .52rem; font-weight: 900; letter-spacing: .12em; }
body.home-page .current-market-status > header h2 { margin: 2px 0 0; color: #fff; font-family: "Arial Black", Arial, sans-serif; font-size: clamp(1.05rem, 2.5vw, 1.45rem); line-height: 1; }
body.home-page .current-market-status > header button {
  min-height: 44px;
  padding: 6px 10px;
  border: 2px solid var(--ho-marigold);
  border-radius: 5px;
  background: var(--ho-cobalt);
  color: #fff;
  font-size: .58rem;
  font-weight: 900;
}
body.home-page .current-market-status > header button:hover { background: var(--ho-ruby); }
body.home-page .current-market-status > header button b { margin-right: 4px; color: var(--ho-marigold); font-size: .95rem; }

body.home-page .current-state-pill {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  gap: 6px;
  padding: 5px 8px;
  border: 2px solid var(--ho-marigold);
  border-radius: 999px;
  background: var(--ho-cobalt);
  color: #fff;
  font-size: .55rem;
  font-weight: 900;
  letter-spacing: .06em;
}
body.home-page .current-state-pill i { width: 8px; height: 8px; border-radius: 50%; background: #55d49c; }
body.home-page .current-state-pill span { color: #fff; }

body.home-page .current-live-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
body.home-page .current-live-list article {
  min-height: 82px;
  padding: 10px 12px;
  border-right: 2px solid var(--ho-soft-line);
  background: var(--ho-sky);
  text-align: center;
}
body.home-page .current-live-list article:last-child { border-right: 0; }
body.home-page .current-live-list article[data-live-state="published"] { background: #e8fff5; }
body.home-page .current-live-list article[data-live-state="pending"] { background: #fff3c5; }
body.home-page .current-live-list article[data-live-state="ready"] { background: var(--ho-sky); }
body.home-page .current-live-list span { display: block; color: var(--ho-cobalt); font-size: .67rem; font-weight: 900; letter-spacing: .08em; }
body.home-page .current-live-list strong { display: block; margin-top: 2px; color: var(--ho-ruby); font-family: "Arial Black", Arial, sans-serif; font-size: clamp(1.2rem, 3vw, 1.65rem); line-height: 1; font-variant-numeric: tabular-nums; }
body.home-page .current-live-list p { margin: 5px 0 0; color: var(--ho-ink); font-size: .68rem; font-weight: 700; }

body.home-page .hp-status-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 44px;
  gap: 10px;
  padding: 5px 10px;
  border-top: 2px solid var(--ho-deep);
  background: var(--ho-cream);
  color: var(--ho-cobalt);
  font-size: .56rem;
  font-weight: 900;
  letter-spacing: .05em;
}
body.home-page .hp-status-foot a {
  display: grid;
  min-height: 34px;
  place-items: center;
  padding: 4px 8px;
  border: 2px solid var(--ho-cobalt);
  border-radius: 4px;
  background: #fff;
  color: var(--ho-deep);
}
body.home-page .hp-status-foot a:hover { background: var(--ho-marigold); }

/* Compact live ticker */
body.home-page .live-wire {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  align-items: stretch;
  min-height: 44px;
  margin-top: 10px;
  overflow: hidden;
  border: 2px solid var(--ho-deep);
  border-radius: 6px;
  background: var(--ho-sky);
}

body.home-page .wire-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 8px;
  border: 0;
  border-right: 2px solid var(--ho-deep);
  background: var(--ho-ruby);
  color: #fff;
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .08em;
}

body.home-page .wire-label i { width: 7px; height: 7px; border-radius: 50%; background: var(--ho-marigold); box-shadow: none; }
body.home-page .wire-track { display: flex; align-items: center; min-height: 42px; gap: 28px; overflow: hidden; padding: 0 12px; white-space: nowrap; }
body.home-page .wire-track span { overflow: hidden; color: var(--ho-muted); font-size: .63rem; font-weight: 700; text-overflow: ellipsis; }
body.home-page .wire-track b { color: var(--ho-deep); font-weight: 900; }

/* All-market directory */
body.home-page .result-hub,
body.home-page .hira-history,
body.home-page .hp-lucky-wheel,
body.home-page .hp-daily-ank {
  overflow: hidden;
  border: 2px solid var(--ho-deep);
  border-radius: 8px;
  background: var(--ho-white);
  box-shadow: 3px 3px 0 rgba(7, 29, 87, .14);
}

body.home-page .result-board-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 72px;
  gap: 18px;
  padding: 10px 14px;
  border: 0;
  border-bottom: 4px solid var(--ho-marigold-strong);
  background: var(--ho-cobalt);
  color: #fff;
}

body.home-page .result-board-heading > div > span { display: block; color: var(--ho-marigold); font-size: .54rem; font-weight: 900; letter-spacing: .13em; }
body.home-page .result-board-heading h2 { margin: 2px 0 0; color: #fff; font-family: "Arial Black", Arial, sans-serif; font-size: clamp(1.3rem, 3.2vw, 1.95rem); letter-spacing: -.025em; line-height: 1; }
body.home-page .result-board-heading p { margin: 4px 0 0; color: #dbe6ff; font-size: .66rem; font-weight: 700; }

body.home-page .hub-sync {
  display: grid;
  grid-template-columns: 7px auto;
  align-items: center;
  min-width: 150px;
  gap: 0 7px;
  color: #fff;
}
body.home-page .hub-sync i { grid-row: 1 / 3; width: 7px; height: 7px; border-radius: 50%; background: var(--ho-ruby); }
body.home-page .hub-sync i.is-online { background: #55d49c; box-shadow: none; }
body.home-page .hub-sync span { color: #dbe6ff; font-size: .5rem; font-weight: 900; letter-spacing: .08em; }
body.home-page .hub-sync span b { color: var(--ho-marigold); }
body.home-page .hub-sync strong { color: #fff; font-size: .58rem; font-weight: 900; font-variant-numeric: tabular-nums; }

body.home-page .command-bar {
  display: grid;
  grid-template-columns: minmax(190px, 1fr) auto auto;
  align-items: center;
  gap: 7px;
  margin: 0;
  padding: 8px;
  border: 0;
  border-bottom: 2px solid var(--ho-deep);
  background: var(--ho-sky);
}

body.home-page .market-search {
  display: flex;
  align-items: center;
  min-height: 44px;
  gap: 8px;
  padding: 0 10px;
  border: 2px solid var(--ho-soft-line);
  border-radius: 5px;
  background: var(--ho-white);
}
body.home-page .market-search:focus-within { border-color: var(--ho-ruby); }
body.home-page .market-search b { color: var(--ho-ruby); font-size: 1rem; }
body.home-page .market-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--ho-ink); font-size: .78rem; font-weight: 700; }
body.home-page .market-search input::placeholder { color: #77839a; }

body.home-page .filter-chips { display: flex; flex-wrap: wrap; gap: 5px; margin: 0; padding: 0; overflow: visible; }
body.home-page .filter-chips button,
body.home-page .refresh-results {
  min-height: 44px;
  padding: 0 10px;
  border: 2px solid var(--ho-soft-line);
  border-radius: 5px;
  background: var(--ho-white);
  color: var(--ho-deep);
  font-size: .59rem;
  font-weight: 900;
  letter-spacing: .045em;
}
body.home-page .filter-chips button b { color: var(--ho-ruby); }
body.home-page .filter-chips button:hover,
body.home-page .filter-chips button.is-active { border-color: var(--ho-deep); background: var(--ho-cobalt); color: #fff; }
body.home-page .filter-chips button.is-active b { color: var(--ho-marigold); }
body.home-page .refresh-results { display: flex; align-items: center; gap: 7px; border-color: var(--ho-cobalt); }
body.home-page .refresh-results:hover { background: var(--ho-marigold); }
body.home-page .refresh-results b { color: var(--ho-ruby); font-size: 1rem; }
body.home-page .refresh-results.is-loading b { animation: ho-spin .7s linear infinite; }

body.home-page .market-grid { display: grid; grid-template-columns: 1fr; gap: 0; }
body.home-page .market-card {
  position: relative;
  content-visibility: visible;
  contain-intrinsic-size: none;
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr) 86px;
  width: 100%;
  height: 112px;
  min-height: 112px;
  max-height: 112px;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-bottom: 2px solid var(--ho-soft-line);
  border-radius: 0;
  background: var(--ho-white);
  box-shadow: none;
  transition: background-color .15s ease;
}

body.home-page .market-card:last-child { border-bottom: 0; }
body.home-page .market-card::after { display: none; }
body.home-page .market-card:hover { z-index: 1; border-color: var(--ho-soft-line); background: var(--ho-sky); box-shadow: inset 4px 0 var(--ho-ruby); transform: none; }
body.home-page .market-card.is-primary { background: #fff3b8; box-shadow: inset 5px 0 var(--ho-marigold-strong); }
body.home-page .market-card.is-live { background: #e9fff6; box-shadow: inset 5px 0 var(--ho-green); }
body.home-page .market-card.is-primary.is-live { background: #f2ffe2; }
body.home-page .market-card[hidden] { display: none !important; }

body.home-page .market-side-action { height: 100%; border-inline: 2px solid var(--ho-deep); }
body.home-page .market-side-action.is-jodi { grid-column: 1; border-left: 0; }
body.home-page .result-row-main { grid-column: 2; }
body.home-page .market-side-action.is-panel { grid-column: 3; border-right: 0; }
body.home-page .market-side-action b { font-family: "Arial Black", Arial, sans-serif; font-size: .75rem; line-height: 1.05; }
body.home-page .market-side-action span { opacity: 1; font-size: .55rem; font-weight: 900; letter-spacing: .07em; }

body.home-page .result-row-main {
  display: grid;
  grid-template-rows: 24px 20px 36px 20px;
  align-content: center;
  height: 100%;
  padding: 6px 13px;
  overflow: hidden;
  text-align: center;
}

body.home-page .result-row-top {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 0;
  gap: 7px;
  overflow: visible;
}
body.home-page .result-row-top .market-index { flex: 0 0 auto; margin-right: auto; color: var(--ho-cobalt); font-size: .57rem; font-weight: 900; }
body.home-page .result-row-top .market-state { flex: 0 1 auto; max-width: 62%; margin: 0; font-size: .56rem; }

body.home-page .favorite-market {
  position: relative;
  flex: 0 0 28px;
  display: grid;
  width: 28px;
  height: 28px;
  margin-left: auto;
  padding: 0;
  place-items: center;
  border: 2px solid var(--ho-soft-line);
  border-radius: 4px;
  background: var(--ho-white);
  color: #71809a;
  font-size: .95rem;
}
body.home-page .favorite-market::before { position: absolute; inset: -8px; content: ""; }
body.home-page .favorite-market:hover,
body.home-page .favorite-market[aria-pressed="true"] { border-color: var(--ho-ruby); background: #ffe7f0; color: var(--ho-ruby); }
body.home-page .favorite-market { border-color: #7892c2; color: var(--ho-cobalt); font-weight: 900; }

body.home-page .result-row-main h3 {
  margin: 0;
  overflow: hidden;
  color: var(--ho-cobalt);
  font-family: "Arial Black", Arial, sans-serif;
  font-size: 1.05rem;
  font-weight: 900;
  letter-spacing: -.01em;
  line-height: 20px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.home-page .card-result {
  display: flex;
  align-items: baseline;
  justify-content: center;
  min-height: 0;
  gap: 5px;
  margin: 0;
  overflow: hidden;
  color: var(--ho-deep);
  font-family: "Arial Black", Arial, Helvetica, sans-serif;
  font-size: clamp(1.55rem, 3.35vw, 2.05rem);
  font-weight: 900;
  letter-spacing: -.065em;
  line-height: 36px;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
body.home-page .card-result > * { line-height: 1; }
body.home-page .card-result strong { color: var(--ho-ruby); font-size: 1em; }
body.home-page .card-result i { color: #8290ab; font-size: .46em; font-style: normal; font-weight: 900; }

body.home-page .result-row-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
  width: min(100%, 540px);
  justify-self: center;
  gap: 0;
  margin: 0;
  overflow: hidden;
  color: var(--ho-muted);
  font-size: .57rem;
  font-weight: 800;
  line-height: 20px;
  font-variant-numeric: tabular-nums;
}
body.home-page .result-row-meta span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.home-page .result-row-meta span + span { border-left: 1px solid var(--ho-soft-line); }
body.home-page .result-row-meta b { color: var(--ho-deep); font-weight: 900; }
body.home-page .result-row-meta small { color: var(--ho-ruby); font-weight: 900; letter-spacing: .04em; }

body.home-page .empty-filter { margin: 10px; padding: 40px 16px; border: 2px dashed var(--ho-cobalt); border-radius: 6px; background: var(--ho-sky); color: var(--ho-muted); }
body.home-page .empty-filter span { color: var(--ho-ruby); }
body.home-page .empty-filter strong { color: var(--ho-deep); }

/* Hira history */
body.home-page .hira-history .result-board-heading nav { display: flex; flex-wrap: wrap; gap: 6px; }
body.home-page .hira-history .result-board-heading nav a {
  display: grid;
  min-height: 44px;
  place-items: center;
  padding: 6px 10px;
  border: 2px solid var(--ho-marigold);
  border-radius: 5px;
  background: var(--ho-deep);
  color: #fff;
  font-size: .56rem;
  font-weight: 900;
}
body.home-page .hira-history .result-board-heading nav a:hover { background: var(--ho-ruby); }
body.home-page .hira-history-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
body.home-page .hira-history-grid article { min-height: 86px; padding: 10px 5px; border-right: 2px solid var(--ho-soft-line); background: var(--ho-white); text-align: center; }
body.home-page .hira-history-grid article:last-child { border-right: 0; }
body.home-page .hira-history-grid article.is-today { background: #fff1a8; box-shadow: inset 0 5px var(--ho-marigold-strong); }
body.home-page .hira-history-grid time { display: block; color: var(--ho-ruby); font-size: .63rem; font-weight: 900; letter-spacing: .07em; }
body.home-page .hira-history-grid time small { display: block; margin-top: 1px; color: var(--ho-muted); font-size: .57rem; }
body.home-page .hira-history-grid strong { display: block; margin-top: 7px; overflow-wrap: anywhere; color: var(--ho-deep); font-size: .68rem; font-weight: 900; font-variant-numeric: tabular-nums; }
body.home-page .history-empty { grid-column: 1 / -1; margin: 0; padding: 28px; color: var(--ho-muted); text-align: center; }

body.home-page .share-panel {
  margin-top: 10px;
  overflow: hidden;
  border: 2px solid var(--ho-deep);
  border-radius: 8px;
  background: var(--ho-white);
  box-shadow: 3px 3px 0 rgba(7, 29, 87, .14);
}
body.home-page .share-panel > header h2 { color: var(--ho-cobalt); font-family: "Arial Black", Arial, sans-serif; }
body.home-page .share-panel > header p,
body.home-page .share-feedback { color: var(--ho-muted); font-weight: 700; }
body.home-page .share-actions a,
body.home-page .share-actions button { min-height: 44px; border: 2px solid var(--ho-soft-line); border-radius: 5px; background: var(--ho-sky); color: var(--ho-deep); font-weight: 900; }
body.home-page .share-actions a:hover,
body.home-page .share-actions button:hover { border-color: var(--ho-ruby); background: #ffe7f0; }

body.home-page .site-support-card {
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 14px;
  border: 2px solid var(--ho-deep);
  border-radius: 8px;
  background: var(--ho-sky);
  color: var(--ho-ink);
  box-shadow: 3px 3px 0 rgba(7, 29, 87, .14);
}
body.home-page .site-support-copy > span { color: var(--ho-ruby); font-weight: 900; }
body.home-page .site-support-copy strong { color: var(--ho-cobalt); font-family: "Arial Black", Arial, sans-serif; }
body.home-page .site-support-copy p { color: var(--ho-muted); font-weight: 700; }
body.home-page .site-support-email { min-height: 44px; border: 2px solid var(--ho-cobalt); border-radius: 5px; background: var(--ho-white); }
body.home-page .site-support-email > b { border-radius: 4px; background: var(--ho-marigold); color: var(--ho-deep); }
body.home-page .site-support-email strong { color: var(--ho-deep); }
body.home-page .site-support-email small { color: var(--ho-muted); }

body.home-page > footer {
  margin-top: 10px;
  margin-bottom: 14px;
  padding: 24px 14px;
  border: 2px solid var(--ho-deep);
  border-radius: 8px;
  background: var(--ho-deep);
  color: #d9e4ff;
}
body.home-page > footer > strong { color: var(--ho-marigold); font-family: "Arial Black", Arial, sans-serif; }
body.home-page > footer > p { color: #d9e4ff; }
body.home-page .footer-mark { border: 2px solid var(--ho-marigold); border-radius: 5px; }
body.home-page .footer-links a { min-height: 44px; color: #fff; font-weight: 800; }
body.home-page .footer-links a:hover,
body.home-page > footer a { color: var(--ho-marigold); }
body.home-page > footer > p:last-child a {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

/* Lightweight, client-only lucky wheel. The result is random entertainment;
   its three-spin IST counter never leaves the visitor's browser. */
body.home-page .hp-lucky-wheel > header {
  display: flex;
  min-height: 68px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 14px;
  border-bottom: 4px solid var(--ho-marigold-strong);
  background: var(--ho-deep);
  color: #fff;
}
body.home-page .hp-lucky-wheel > header span { color: var(--ho-marigold); font-size: .55rem; font-weight: 900; letter-spacing: .13em; }
body.home-page .hp-lucky-wheel > header h2 { margin: 2px 0 0; color: #fff; font-family: "Arial Black", Arial, sans-serif; font-size: 1.35rem; }
body.home-page .hp-lucky-wheel > header > strong { padding: 6px 9px; border: 2px solid var(--ho-marigold); border-radius: 999px; color: var(--ho-marigold); font-size: .62rem; letter-spacing: .06em; }
body.home-page .hp-lucky-layout { display: grid; grid-template-columns: minmax(280px, 340px) minmax(0, 1fr); align-items: center; gap: 24px; padding: 18px clamp(14px, 4vw, 40px); background: linear-gradient(135deg, #eef5ff, #fff8e8); }
body.home-page .hp-wheel-stage { position: relative; width: 290px; height: 290px; margin: 0 auto; }
body.home-page .hp-wheel-rotor {
  position: absolute;
  inset: 12px;
  overflow: hidden;
  border: 7px solid var(--ho-deep);
  border-radius: 50%;
  background: repeating-conic-gradient(from -18deg, var(--ho-cobalt) 0deg 36deg, var(--ho-ruby) 36deg 72deg);
  box-shadow: inset 0 0 0 4px var(--ho-marigold), 0 7px 18px rgba(7, 29, 87, .24);
  will-change: transform;
}
body.home-page .wheel-result-0 .hp-wheel-rotor { animation: hp-wheel-spin-0 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .wheel-result-1 .hp-wheel-rotor { animation: hp-wheel-spin-1 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .wheel-result-2 .hp-wheel-rotor { animation: hp-wheel-spin-2 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .wheel-result-3 .hp-wheel-rotor { animation: hp-wheel-spin-3 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .wheel-result-4 .hp-wheel-rotor { animation: hp-wheel-spin-4 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .wheel-result-5 .hp-wheel-rotor { animation: hp-wheel-spin-5 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .wheel-result-6 .hp-wheel-rotor { animation: hp-wheel-spin-6 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .wheel-result-7 .hp-wheel-rotor { animation: hp-wheel-spin-7 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .wheel-result-8 .hp-wheel-rotor { animation: hp-wheel-spin-8 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .wheel-result-9 .hp-wheel-rotor { animation: hp-wheel-spin-9 2.6s cubic-bezier(.12,.72,.16,1) forwards; }
body.home-page .hp-wheel-rotor::after { position: absolute; inset: 48%; border-radius: 50%; background: var(--ho-marigold); content: ""; }
body.home-page .hp-wheel-rotor > span { position: absolute; top: 50%; left: 50%; width: 32px; height: 32px; }
body.home-page .hp-wheel-rotor .wheel-digit-0 { transform: translate(-50%, -50%) rotate(0deg) translateY(-104px) rotate(0deg); }
body.home-page .hp-wheel-rotor .wheel-digit-1 { transform: translate(-50%, -50%) rotate(36deg) translateY(-104px) rotate(-36deg); }
body.home-page .hp-wheel-rotor .wheel-digit-2 { transform: translate(-50%, -50%) rotate(72deg) translateY(-104px) rotate(-72deg); }
body.home-page .hp-wheel-rotor .wheel-digit-3 { transform: translate(-50%, -50%) rotate(108deg) translateY(-104px) rotate(-108deg); }
body.home-page .hp-wheel-rotor .wheel-digit-4 { transform: translate(-50%, -50%) rotate(144deg) translateY(-104px) rotate(-144deg); }
body.home-page .hp-wheel-rotor .wheel-digit-5 { transform: translate(-50%, -50%) rotate(180deg) translateY(-104px) rotate(-180deg); }
body.home-page .hp-wheel-rotor .wheel-digit-6 { transform: translate(-50%, -50%) rotate(216deg) translateY(-104px) rotate(-216deg); }
body.home-page .hp-wheel-rotor .wheel-digit-7 { transform: translate(-50%, -50%) rotate(252deg) translateY(-104px) rotate(-252deg); }
body.home-page .hp-wheel-rotor .wheel-digit-8 { transform: translate(-50%, -50%) rotate(288deg) translateY(-104px) rotate(-288deg); }
body.home-page .hp-wheel-rotor .wheel-digit-9 { transform: translate(-50%, -50%) rotate(324deg) translateY(-104px) rotate(-324deg); }
body.home-page .hp-wheel-rotor b { display: grid; width: 32px; height: 32px; place-items: center; color: #fff; font-family: "Arial Black", Arial, sans-serif; font-size: 1.13rem; text-shadow: 0 2px 1px #000; }
body.home-page .hp-wheel-pointer { position: absolute; top: 0; left: 50%; z-index: 4; width: 0; height: 0; border-right: 15px solid transparent; border-left: 15px solid transparent; border-top: 30px solid var(--ho-marigold-strong); filter: drop-shadow(0 2px 0 var(--ho-deep)); transform: translateX(-50%); }
body.home-page [data-lucky-spin] { position: absolute; top: 50%; left: 50%; z-index: 5; display: grid; width: 96px; height: 96px; place-content: center; border: 5px solid var(--ho-marigold); border-radius: 50%; background: var(--ho-deep); color: #fff; font-family: "Arial Black", Arial, sans-serif; font-size: 1.12rem; line-height: 1; box-shadow: 0 4px 12px rgba(0, 0, 0, .28); transform: translate(-50%, -50%); }
body.home-page [data-lucky-spin] small { display: block; margin-top: 4px; color: var(--ho-marigold); font-family: Arial, sans-serif; font-size: .5rem; letter-spacing: .06em; }
body.home-page [data-lucky-spin]:hover:not(:disabled) { background: var(--ho-ruby); }
body.home-page [data-lucky-spin]:disabled { cursor: not-allowed; opacity: .66; }
body.home-page .hp-lucky-feedback { padding: 18px; border: 2px solid var(--ho-soft-line); border-radius: 8px; background: #fff; text-align: center; }
body.home-page .hp-lucky-feedback > strong { display: block; color: var(--ho-ruby); font-family: "Arial Black", Arial, sans-serif; font-size: 1.05rem; }
body.home-page .hp-lucky-feedback p { margin: 8px 0; color: var(--ho-deep); font-size: .9rem; font-weight: 900; }
body.home-page .hp-lucky-feedback small { display: block; color: var(--ho-muted); font-size: .68rem; font-weight: 700; }
body.home-page .hp-lucky-dialog { width: min(360px, calc(100% - 24px)); padding: 0; border: 3px solid var(--ho-deep); border-radius: 10px; background: #fff; color: var(--ho-ink); }
body.home-page .hp-lucky-dialog::backdrop { background: rgba(7, 29, 87, .72); }
body.home-page .hp-lucky-dialog > div { padding: 22px; text-align: center; }
body.home-page .hp-lucky-dialog span { color: var(--ho-ruby); font-size: .62rem; font-weight: 900; letter-spacing: .12em; }
body.home-page .hp-lucky-dialog h2 { margin: 4px 0; color: var(--ho-deep); font-family: "Arial Black", Arial, sans-serif; font-size: 1.35rem; }
body.home-page .hp-lucky-dialog strong { display: grid; width: 92px; height: 92px; margin: 14px auto; place-items: center; border: 5px solid var(--ho-marigold); border-radius: 50%; background: var(--ho-cobalt); color: #fff; font-family: "Arial Black", Arial, sans-serif; font-size: 3rem; }
body.home-page .hp-lucky-dialog p { color: var(--ho-muted); font-size: .75rem; font-weight: 700; }
body.home-page .hp-lucky-dialog button { min-width: 120px; min-height: 42px; border: 2px solid var(--ho-deep); border-radius: 5px; background: var(--ho-ruby); color: #fff; font-weight: 900; }

body.home-page .hp-daily-ank > header {
  display: flex;
  min-height: 66px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 14px;
  border-bottom: 4px solid var(--ho-marigold-strong);
  background: var(--ho-cobalt);
  color: #fff;
}
body.home-page .hp-daily-ank > header span { color: var(--ho-marigold); font-size: .54rem; font-weight: 900; letter-spacing: .12em; }
body.home-page .hp-daily-ank > header h2 { margin: 2px 0 0; color: #fff; font-family: "Arial Black", Arial, sans-serif; font-size: 1.25rem; }
body.home-page .hp-daily-ank > header time { padding: 6px 9px; border: 2px solid var(--ho-marigold); border-radius: 5px; color: var(--ho-marigold); font-size: .72rem; font-weight: 900; }
body.home-page .hp-daily-ank-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: var(--ho-soft-line); }
body.home-page .hp-daily-ank-grid article { display: grid; min-height: 60px; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 7px; padding: 7px 10px; background: var(--ho-white); }
body.home-page .hp-daily-ank-grid article:nth-child(even) { background: var(--ho-sky); }
body.home-page .hp-daily-ank-grid article > strong { overflow: hidden; color: var(--ho-deep); font-size: .68rem; font-weight: 900; text-overflow: ellipsis; white-space: nowrap; }
body.home-page .hp-ank-value { display: inline-flex; align-items: center; gap: 2px; color: var(--ho-ruby); font-variant-numeric: tabular-nums; }
body.home-page .hp-ank-value b { display: grid; width: 25px; height: 29px; place-items: center; border: 1px solid var(--ho-cobalt); border-radius: 4px; background: #fff; color: var(--ho-ruby); font-family: "Arial Black", Arial, sans-serif; font-size: 1rem; }
body.home-page .hp-ank-value i { color: var(--ho-muted); font-size: .65rem; font-style: normal; }
body.home-page .hp-daily-ank-grid article:not([data-guess-state="published"]) .hp-ank-value b { border-color: #9da9bb; background: #f1f3f6; color: #77839a; }
body.home-page .hp-daily-ank > footer { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 8px 12px; border-top: 2px solid var(--ho-deep); background: #fff4bf; text-align: center; }
body.home-page .hp-daily-ank > footer strong { color: var(--ho-ruby); font-size: .62rem; white-space: nowrap; }
body.home-page .hp-daily-ank > footer p { margin: 0; color: var(--ho-muted); font-size: .62rem; font-weight: 700; }

@keyframes ho-spin { to { transform: rotate(360deg); } }
@keyframes hp-wheel-spin-0 { to { transform: rotate(2160deg); } }
@keyframes hp-wheel-spin-1 { to { transform: rotate(2484deg); } }
@keyframes hp-wheel-spin-2 { to { transform: rotate(2448deg); } }
@keyframes hp-wheel-spin-3 { to { transform: rotate(2412deg); } }
@keyframes hp-wheel-spin-4 { to { transform: rotate(2376deg); } }
@keyframes hp-wheel-spin-5 { to { transform: rotate(2340deg); } }
@keyframes hp-wheel-spin-6 { to { transform: rotate(2304deg); } }
@keyframes hp-wheel-spin-7 { to { transform: rotate(2268deg); } }
@keyframes hp-wheel-spin-8 { to { transform: rotate(2232deg); } }
@keyframes hp-wheel-spin-9 { to { transform: rotate(2196deg); } }

@media (max-width: 780px) {
  body.home-page .site-head {
    display: flex;
    justify-content: center;
    width: calc(100% - 10px);
    min-height: 96px;
    margin: 5px auto;
    padding: 5px 8px;
    border-radius: 6px;
    box-shadow: 3px 3px 0 var(--ho-marigold);
  }

  body.home-page .brand { flex: 0 0 auto; width: min(340px, 92vw); height: 82px; }
  body.home-page .head-status { display: none; }

  body.home-page main > section,
  body.home-page main > article,
  body.home-page .site-support-card,
  body.home-page > footer { width: calc(100% - 10px); }

  body.home-page main > section,
  body.home-page main > article { margin-top: 6px; }

  body.home-page .hira-feature,
  body.home-page .current-market-status,
  body.home-page .result-hub,
  body.home-page .hira-history { border-radius: 6px; }

  body.home-page .hp-lucky-wheel { border-radius: 6px; }
  body.home-page .hp-daily-ank { border-radius: 6px; }
  body.home-page .hp-lucky-wheel > header { min-height: 58px; padding: 8px 9px; }
  body.home-page .hp-lucky-wheel > header h2 { font-size: 1rem; }
  body.home-page .hp-lucky-wheel > header > strong { padding: 4px 6px; font-size: .52rem; }
  body.home-page .hp-lucky-layout { grid-template-columns: 1fr; gap: 10px; padding: 12px 8px; }
  body.home-page .hp-wheel-stage { width: 260px; height: 260px; }
  body.home-page .hp-wheel-rotor .wheel-digit-0 { transform: translate(-50%, -50%) rotate(0deg) translateY(-92px) rotate(0deg); }
  body.home-page .hp-wheel-rotor .wheel-digit-1 { transform: translate(-50%, -50%) rotate(36deg) translateY(-92px) rotate(-36deg); }
  body.home-page .hp-wheel-rotor .wheel-digit-2 { transform: translate(-50%, -50%) rotate(72deg) translateY(-92px) rotate(-72deg); }
  body.home-page .hp-wheel-rotor .wheel-digit-3 { transform: translate(-50%, -50%) rotate(108deg) translateY(-92px) rotate(-108deg); }
  body.home-page .hp-wheel-rotor .wheel-digit-4 { transform: translate(-50%, -50%) rotate(144deg) translateY(-92px) rotate(-144deg); }
  body.home-page .hp-wheel-rotor .wheel-digit-5 { transform: translate(-50%, -50%) rotate(180deg) translateY(-92px) rotate(-180deg); }
  body.home-page .hp-wheel-rotor .wheel-digit-6 { transform: translate(-50%, -50%) rotate(216deg) translateY(-92px) rotate(-216deg); }
  body.home-page .hp-wheel-rotor .wheel-digit-7 { transform: translate(-50%, -50%) rotate(252deg) translateY(-92px) rotate(-252deg); }
  body.home-page .hp-wheel-rotor .wheel-digit-8 { transform: translate(-50%, -50%) rotate(288deg) translateY(-92px) rotate(-288deg); }
  body.home-page .hp-wheel-rotor .wheel-digit-9 { transform: translate(-50%, -50%) rotate(324deg) translateY(-92px) rotate(-324deg); }
  body.home-page [data-lucky-spin] { width: 82px; height: 82px; border-width: 4px; font-size: .98rem; }
  body.home-page .hp-lucky-feedback { padding: 10px; }
  body.home-page .hp-daily-ank > header { min-height: 56px; padding: 7px 8px; }
  body.home-page .hp-daily-ank > header h2 { font-size: .95rem; }
  body.home-page .hp-daily-ank > header time { padding: 4px 5px; font-size: .61rem; }
  body.home-page .hp-daily-ank-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.home-page .hp-daily-ank-grid article { min-height: 54px; grid-template-columns: 1fr; gap: 4px; padding: 6px 4px; text-align: center; }
  body.home-page .hp-daily-ank-grid article > strong { font-size: .62rem; }
  body.home-page .hp-ank-value { justify-content: center; }
  body.home-page .hp-ank-value b { width: 23px; height: 26px; font-size: .88rem; }
  body.home-page .hp-daily-ank > footer { align-items: stretch; flex-direction: column; gap: 3px; padding: 7px; }
  body.home-page .hp-daily-ank > footer strong { white-space: normal; }

  body.home-page .hira-feature-head { min-height: 62px; gap: 7px; padding: 7px 8px; }
  body.home-page .hira-feature-head > div { overflow: hidden; }
  body.home-page .hira-feature-head > div > span { font-size: .46rem; }
  body.home-page .hira-feature-head h1,
  body.home-page .hira-feature-head h2 { font-size: clamp(1rem, 4.8vw, 1.28rem); line-height: 1.02; }
  body.home-page .hira-feature-head h1 em,
  body.home-page .hira-feature-head h2 em { display: block; }
  body.home-page .market-state .status-long { display: none; }
  body.home-page .market-state .status-short { display: inline; }
  body.home-page .hira-feature-head .market-state { max-width: 46%; padding: 5px 6px; font-size: .68rem; }

  body.home-page .hira-feature-board { grid-template-columns: 60px minmax(0, 1fr) 60px; min-height: 168px; }
  body.home-page .hira-chart-action { padding: 5px 2px; }
  body.home-page .hira-chart-action small,
  body.home-page .hira-chart-action span { font-size: .54rem; }
  body.home-page .hira-chart-action b { font-size: .76rem; }
  body.home-page .hira-feature-main { padding: 9px 4px; }
  body.home-page .verified-result-label { font-size: .57rem; letter-spacing: .05em; }
  body.home-page .hira-number { gap: 3px; margin-top: 4px; font-size: clamp(1.55rem, 7.8vw, 2.2rem); }
  body.home-page .hira-times { gap: 3px; margin-top: 9px; }
  body.home-page .hira-times span { padding: 4px 2px; border-width: 1px; }
  body.home-page .hira-times small { font-size: .52rem; letter-spacing: .02em; }
  body.home-page .hira-times b { font-size: .58rem; }
  body.home-page .hira-feature > footer { min-height: 44px; padding: 3px 6px; }
  body.home-page .hira-feature > footer > span { max-width: 63%; overflow: hidden; font-size: .54rem; text-overflow: ellipsis; white-space: nowrap; }
  body.home-page .hira-feature > footer button { padding: 4px 6px; font-size: .56rem; }

  body.home-page .current-market-status > header { min-height: 56px; padding: 6px 8px; }
  body.home-page .current-market-status > header span { font-size: .54rem; }
  body.home-page .current-market-status > header h2 { font-size: 1rem; }
  body.home-page .current-market-status > header button { padding: 4px 7px; font-size: .56rem; }
  body.home-page .current-market-status > header button b { margin: 0 0 0 2px; }
  body.home-page .current-live-list { grid-template-columns: 1fr; }
  body.home-page .current-live-list article { min-height: 74px; padding: 8px; border-right: 0; border-bottom: 2px solid var(--ho-soft-line); }
  body.home-page .current-live-list article:last-child { border-bottom: 0; }
  body.home-page .current-live-list strong { font-size: 1.18rem; }
  body.home-page .hp-status-foot { padding: 4px 6px; font-size: .54rem; }

  body.home-page .live-wire { grid-template-columns: 94px minmax(0, 1fr); min-height: 44px; }
  body.home-page .wire-label { padding: 0 4px; font-size: .47rem; }
  body.home-page .wire-track { min-height: 40px; padding: 0 7px; }
  body.home-page .wire-track span { font-size: .52rem; }

  body.home-page .result-board-heading { min-height: 74px; padding: 8px 9px; }
  body.home-page .result-board-heading > div > span { font-size: .54rem; }
  body.home-page .result-board-heading h2 { font-size: 1.22rem; }
  body.home-page .result-board-heading p { max-width: 310px; overflow: visible; font-size: .64rem; line-height: 1.25; text-overflow: clip; white-space: normal; }
  body.home-page .hub-sync { display: none; }

  body.home-page .command-bar { grid-template-columns: minmax(0, 1fr) 44px; gap: 5px; padding: 6px; }
  body.home-page .market-search { min-height: 44px; padding-inline: 8px; }
  body.home-page .refresh-results { justify-content: center; padding: 0; }
  body.home-page .refresh-results span { display: none; }
  body.home-page .filter-chips { grid-row: 2; grid-column: 1 / -1; justify-content: center; gap: 4px; }
  body.home-page .filter-chips button { flex: 1 1 auto; padding: 0 7px; font-size: .68rem; }

  body.home-page .market-card {
    grid-template-columns: 58px minmax(0, 1fr) 58px;
    height: 118px;
    min-height: 118px;
    max-height: 118px;
  }

  body.home-page .market-side-action b { font-size: .75rem; }
  body.home-page .market-side-action span { display: none; }
  body.home-page .result-row-main { grid-template-rows: 24px 20px 34px 22px; padding: 7px 4px; }
  body.home-page .result-row-top { gap: 3px; }
  body.home-page .result-row-top .market-index { flex-basis: 27px; width: 27px; margin-right: auto; visibility: hidden; }
  body.home-page .result-row-top .market-state { max-width: 66%; font-size: .75rem; letter-spacing: .02em; }
  body.home-page .favorite-market { flex-basis: 27px; width: 27px; height: 27px; font-size: .84rem; }
  body.home-page .result-row-main h3 { font-size: .84rem; line-height: 20px; }
  body.home-page .card-result { gap: 3px; font-size: clamp(1.15rem, 5.8vw, 1.48rem); line-height: 34px; }
  body.home-page .result-row-meta { font-size: .75rem; line-height: 22px; }
  body.home-page .result-row-meta small { display: none; }

  body.home-page .hira-history .result-board-heading { align-items: flex-start; flex-direction: column; gap: 7px; }
  body.home-page .hira-history .result-board-heading nav { width: 100%; }
  body.home-page .hira-history .result-board-heading nav a { flex: 1; }
  body.home-page .hira-history-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.home-page .hira-history-grid article { min-height: 68px; padding: 8px 4px; border-right: 2px solid var(--ho-soft-line); border-bottom: 2px solid var(--ho-soft-line); }
  body.home-page .hira-history-grid article:nth-child(2n) { border-right: 0; }
  body.home-page .hira-history-grid article:nth-child(7) { grid-column: 1 / -1; border-right: 0; border-bottom: 0; }
  body.home-page .hira-history-grid time { font-size: .75rem; }
  body.home-page .hira-history-grid time small { font-size: .7rem; }
  body.home-page .hira-history-grid strong { margin-top: 4px; font-size: .75rem; }

  body.home-page .site-support-card { grid-template-columns: 1fr; padding: 11px; }
  body.home-page .site-support-email { width: 100%; }
  body.home-page > footer { border-radius: 6px; }
}

@media (max-width: 390px) {
  body.home-page .hira-feature-board { grid-template-columns: 56px minmax(0, 1fr) 56px; }
  body.home-page .hira-number { font-size: clamp(1.48rem, 7.4vw, 1.8rem); }
  body.home-page .market-card {
    grid-template-columns: 55px minmax(0, 1fr) 55px;
    height: 118px;
    min-height: 118px;
    max-height: 118px;
  }
  body.home-page .result-row-main { grid-template-rows: 24px 20px 34px 22px; padding: 7px 3px; }
  body.home-page .result-row-main h3 { font-size: .82rem; line-height: 20px; }
  body.home-page .card-result { font-size: clamp(1.08rem, 5.45vw, 1.3rem); line-height: 34px; }
  body.home-page .result-row-meta { font-size: .75rem; line-height: 22px; }
  body.home-page .filter-chips button { padding-inline: 6px; }
}

@media (max-width: 330px) {
  body.home-page .site-head { justify-content: center; }
  body.home-page .brand { width: min(290px, 94vw); height: 82px; }
  body.home-page .head-status { display: none; }
  body.home-page .hira-feature-head h1,
  body.home-page .hira-feature-head h2 { font-size: .92rem; }
  body.home-page .hira-feature-board { grid-template-columns: 52px minmax(0, 1fr) 52px; }
  body.home-page .hira-number { font-size: 1.45rem; }
  body.home-page .hira-times b { font-size: .56rem; }
  body.home-page .market-card { grid-template-columns: 52px minmax(0, 1fr) 52px; }
  body.home-page .market-side-action b { font-size: .75rem; }
  body.home-page .card-result { font-size: 1.05rem; }
  body.home-page .result-row-meta { font-size: .75rem; }
  body.home-page .filter-chips button { padding-inline: 4px; font-size: .68rem; }
}

@media (prefers-reduced-motion: reduce) {
  body.home-page *,
  body.home-page *::before,
  body.home-page *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* Homepage clarity pass: fewer competing surfaces, more breathing room and a
   larger live desk while keeping every result and control immediately usable. */
body.home-page {
  --ho-soft-line: #d6deeb;
  background: #f4f7fb;
}

body.home-page .site-head,
body.home-page main > section,
body.home-page main > article,
body.home-page .home-tools-grid,
body.home-page .site-support-card,
body.home-page > footer {
  width: min(1240px, calc(100% - 24px));
  max-width: 1240px;
}

body.home-page main > section,
body.home-page main > article,
body.home-page .home-tools-grid { margin-top: 14px; }

body.home-page .site-head {
  border-color: #c7d2e5;
  background: #fff;
  box-shadow: 0 8px 24px rgba(7, 29, 87, .09);
}

body.home-page .hira-feature,
body.home-page .result-hub,
body.home-page .hira-history,
body.home-page .hp-daily-ank,
body.home-page .hp-lucky-wheel,
body.home-page .share-panel,
body.home-page .site-support-card {
  border: 1px solid #c7d2e5;
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(7, 29, 87, .08);
}

body.home-page .hira-feature-head,
body.home-page .result-board-heading,
body.home-page .hp-daily-ank > header,
body.home-page .hp-lucky-wheel > header { border-bottom-width: 2px; }

body.home-page .hira-chart-action.is-jodi,
body.home-page .market-side-action.is-jodi {
  background: #f9e8ef;
  color: #9d164b;
}

body.home-page .hira-chart-action.is-panel,
body.home-page .market-side-action.is-panel {
  background: #fff4cc;
  color: var(--ho-deep);
}

body.home-page .hira-chart-action.is-jodi small,
body.home-page .hira-chart-action.is-jodi span { color: #9d164b; }

body.home-page .hira-chart-action:hover,
body.home-page .market-side-action:hover {
  background: var(--ho-deep);
  color: #fff;
}

body.home-page .hira-chart-action.is-jodi:hover small,
body.home-page .hira-chart-action.is-jodi:hover span { color: #fff; }

body.home-page .current-market-status {
  border: 2px solid var(--ho-deep);
  border-radius: 12px;
  box-shadow: 0 10px 28px rgba(7, 29, 87, .13);
}

body.home-page .current-market-status > header {
  min-height: 72px;
  padding: 11px 17px;
  border-bottom-width: 2px;
}

body.home-page .current-market-status > header h2 {
  font-size: clamp(1.3rem, 2.6vw, 1.7rem);
  letter-spacing: -.02em;
}

body.home-page .current-live-list article {
  min-height: 118px;
  padding: 18px 20px;
  border-right: 1px solid var(--ho-soft-line);
}

body.home-page .current-live-list span { font-size: .75rem; }
body.home-page .current-live-list strong { margin-top: 5px; font-size: clamp(1.7rem, 3.2vw, 2.25rem); }
body.home-page .current-live-list p { margin-top: 8px; font-size: .78rem; }
body.home-page .hp-status-foot { min-height: 48px; padding-inline: 14px; }

body.home-page .result-hub { overflow: hidden; }
body.home-page .result-board-heading { min-height: 68px; }
body.home-page .result-board-heading h2 { font-size: clamp(1.25rem, 2.7vw, 1.75rem); }

body.home-page .command-bar {
  padding: 10px;
  border-bottom: 1px solid #c7d2e5;
  background: #f6f8fc;
}

body.home-page .market-grid {
  gap: 10px;
  padding: 10px;
  background: #f1f4f9;
}

body.home-page .market-card {
  grid-template-columns: 70px minmax(0, 1fr) 70px;
  height: 120px;
  min-height: 120px;
  max-height: 120px;
  border: 1px solid #cbd5e5;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 3px 10px rgba(7, 29, 87, .045);
}

body.home-page .market-card:last-child { border-bottom: 1px solid #cbd5e5; }
body.home-page .market-card:hover {
  border-color: #92a6c7;
  background: #fff;
  box-shadow: 0 7px 18px rgba(7, 29, 87, .09);
  transform: translateY(-1px);
}
body.home-page .market-card.is-primary { border-color: #d5ad35; background: #fffaf0; box-shadow: none; }
body.home-page .market-card.is-live { border-color: #73b89a; background: #f3fff9; box-shadow: none; }
body.home-page .market-card.is-primary.is-live { background: #f7fff0; }

body.home-page .market-side-action {
  border: 0;
  border-right: 1px solid #cbd5e5;
}
body.home-page .market-side-action.is-panel { border-right: 0; border-left: 1px solid #cbd5e5; }
body.home-page .result-row-main { grid-template-rows: 24px 30px 32px 20px; padding-inline: 9px; }
body.home-page .market-title-block {
  display: grid;
  align-content: center;
  min-width: 0;
  overflow: hidden;
}
body.home-page .result-row-main h3 {
  font-size: 1.08rem;
  line-height: 18px;
}
body.home-page .market-result-date {
  display: block;
  overflow: hidden;
  color: #596986;
  font-family: Arial, Helvetica, sans-serif;
  font-size: .64rem;
  font-weight: 900;
  letter-spacing: .04em;
  line-height: 10px;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}
body.home-page .card-result { font-size: clamp(1.38rem, 2.25vw, 1.78rem); line-height: 32px; }
body.home-page .result-row-meta { width: min(100%, 360px); font-size: .66rem; }

body.home-page .home-tools-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  align-items: start;
  gap: 14px;
  margin-inline: auto;
}

body.home-page .home-tools-grid > section {
  width: 100%;
  max-width: none;
  margin: 0;
}

body.home-page .home-tools-grid .hp-daily-ank-grid article { min-height: 60px; padding-block: 6px; }
body.home-page .home-tools-grid .hp-lucky-layout {
  grid-template-columns: 1fr;
  gap: 10px;
  padding: 14px;
}
body.home-page .home-tools-grid .hp-lucky-feedback { padding: 12px; }

body.home-page .hira-history-grid article {
  min-height: 72px;
  border-right: 1px solid var(--ho-soft-line);
}

body.home-page .share-panel { margin-top: 14px; padding: 12px; }
body.home-page .share-panel > header p { display: none; }
body.home-page .share-actions { gap: 6px; margin-top: 8px; }
body.home-page .share-actions a,
body.home-page .share-actions button { border-width: 1px; background: #f6f8fc; }

body.home-page .site-support-card {
  margin-top: 14px;
  margin-bottom: 12px;
  padding: 12px 14px;
  background: #fff;
}

body.home-page > footer {
  margin-top: 12px;
  padding: 22px 14px 26px;
  border: 0;
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(7, 29, 87, .1);
}

@media (min-width: 900px) {
  body.home-page .market-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.home-page .market-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
  body.home-page .market-card { grid-template-columns: 66px minmax(0, 1fr) 66px; }
  body.home-page .market-side-action b { font-size: .7rem; }
  body.home-page .market-side-action span { font-size: .5rem; }
  body.home-page .result-row-main { grid-template-rows: 24px 30px 32px 20px; padding-inline: 8px; }
  body.home-page .result-row-main h3 { font-size: 1.05rem; }
  body.home-page .card-result { font-size: clamp(1.3rem, 1.8vw, 1.65rem); line-height: 32px; }
  body.home-page .result-row-meta { font-size: .66rem; }
}

@media (max-width: 1279px) {
  body.home-page .home-tools-grid { grid-template-columns: 1fr; }
  body.home-page .home-tools-grid .hp-lucky-layout {
    grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
    gap: 20px;
  }
}

@media (max-width: 780px) {
  body.home-page .site-head,
  body.home-page main > section,
  body.home-page main > article,
  body.home-page .home-tools-grid,
  body.home-page .site-support-card,
  body.home-page > footer { width: calc(100% - 12px); }

  body.home-page main > section,
  body.home-page main > article,
  body.home-page .home-tools-grid { margin-top: 8px; }

  body.home-page .hira-feature,
  body.home-page .current-market-status,
  body.home-page .result-hub,
  body.home-page .hira-history,
  body.home-page .hp-daily-ank,
  body.home-page .hp-lucky-wheel,
  body.home-page .share-panel,
  body.home-page .site-support-card { border-radius: 9px; box-shadow: 0 5px 16px rgba(7, 29, 87, .07); }

  body.home-page .current-market-status > header { min-height: 64px; padding: 8px 10px; }
  body.home-page .current-market-status > header h2 { font-size: 1.12rem; }
  body.home-page .current-live-list article { min-height: 104px; padding: 13px 10px; }
  body.home-page .current-live-list span { font-size: .7rem; }
  body.home-page .current-live-list strong { font-size: 1.5rem; }
  body.home-page .current-live-list p { font-size: .72rem; }

  body.home-page .result-board-heading { min-height: 64px; }
  body.home-page .result-board-heading p { display: none; }
  body.home-page .command-bar { padding: 7px; }
  body.home-page .market-grid { gap: 7px; padding: 7px; }
  body.home-page .market-card {
    grid-template-columns: 54px minmax(0, 1fr) 54px;
    height: 110px;
    min-height: 110px;
    max-height: 110px;
  }
  body.home-page .result-row-main { grid-template-rows: 22px 29px 30px 19px; padding: 4px; }
  body.home-page .result-row-main h3 { font-size: .96rem; line-height: 18px; }
  body.home-page .market-result-date { font-size: .62rem; line-height: 10px; }
  body.home-page .card-result { font-size: clamp(1.1rem, 5.3vw, 1.38rem); line-height: 30px; }
  body.home-page .result-row-meta { font-size: .68rem; line-height: 19px; }
  body.home-page .result-row-meta small { display: inline; }

  body.home-page .home-tools-grid { gap: 8px; }
  body.home-page .home-tools-grid .hp-daily-ank-grid article { min-height: 48px; }
  body.home-page .home-tools-grid .hp-lucky-layout { grid-template-columns: 1fr; padding: 10px 7px; }

  body.home-page .hira-history-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  body.home-page .hira-history-grid article,
  body.home-page .hira-history-grid article:nth-child(2n),
  body.home-page .hira-history-grid article:nth-child(7) {
    min-height: 62px;
    grid-column: auto;
    padding: 7px 3px;
    border-right: 1px solid var(--ho-soft-line);
    border-bottom: 1px solid var(--ho-soft-line);
  }
  body.home-page .hira-history-grid article:nth-child(4n),
  body.home-page .hira-history-grid article:last-child { border-right: 0; }
  body.home-page .hira-history-grid article:nth-last-child(-n + 3) { border-bottom: 0; }
  body.home-page .hira-history-grid time { font-size: .64rem; }
  body.home-page .hira-history-grid time small { font-size: .6rem; }
  body.home-page .hira-history-grid strong { font-size: .62rem; }

  body.home-page .share-panel { padding: 9px; }
  body.home-page .share-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.home-page .share-action { gap: 4px; padding-inline: 3px; font-size: .58rem; }
  body.home-page .site-support-card { padding: 10px; }
  body.home-page .site-support-copy p { display: none; }
  body.home-page > footer { padding: 20px 10px 22px; }
}

@media (max-width: 350px) {
  body.home-page .market-card { grid-template-columns: 50px minmax(0, 1fr) 50px; }
  body.home-page .card-result { font-size: 1.04rem; }
  body.home-page .share-action span { font-size: .53rem; }
  body.home-page .current-market-status > header { gap: 6px; padding-inline: 7px; }
  body.home-page .current-market-status > header h2 { font-size: .92rem; white-space: nowrap; }
  body.home-page .current-market-status > header .current-status-refresh > span { display: none; }
}

/* Homepage legibility pass: keep secondary information compact, but never
   faint or microscopically small. */
body.home-page .hira-feature-head > div > span,
body.home-page .current-market-status > header .current-status-title > span,
body.home-page .result-board-heading > div > span,
body.home-page .hp-daily-ank > header span,
body.home-page .hp-lucky-wheel > header span {
  font-size: .65rem;
  font-weight: 900;
}

body.home-page .head-status span { font-size: .72rem; font-weight: 900; }
body.home-page .head-status strong { font-size: .84rem; font-weight: 900; }
body.home-page .verified-result-label { font-size: .7rem; font-weight: 900; }
body.home-page .hira-times small { font-size: .65rem; font-weight: 900; }
body.home-page .hira-times b { font-size: .72rem; font-weight: 900; }
body.home-page .hira-feature-head .market-state { font-size: .65rem; font-weight: 900; }
body.home-page .hira-chart-action small,
body.home-page .hira-chart-action span { font-size: .65rem; font-weight: 900; }
body.home-page .hira-feature > footer > span,
body.home-page .hp-status-foot { font-size: .64rem; font-weight: 900; }
body.home-page .hira-feature > footer button { font-size: .65rem; font-weight: 900; }
body.home-page .current-market-status > header button { font-size: .65rem; font-weight: 900; }
body.home-page .current-state-pill { font-size: .63rem; font-weight: 900; }
body.home-page .current-market-status > header .current-state-pill span,
body.home-page .current-market-status > header .current-status-refresh span { font-size: .63rem; font-weight: 900; }
body.home-page .hub-sync span { font-size: .64rem; font-weight: 900; }
body.home-page .hub-sync strong { font-size: .66rem; }
body.home-page .result-row-top .market-index,
body.home-page .result-row-top .market-state { font-size: .64rem; font-weight: 900; }
body.home-page .market-side-action span { font-size: .65rem; font-weight: 900; }
body.home-page .card-result i { font-size: .62em; }
body.home-page .result-row-meta small { font-size: .64rem; }
body.home-page .filter-chips button,
body.home-page .refresh-results,
body.home-page .hira-history .result-board-heading nav a { font-size: .68rem; font-weight: 900; }
body.home-page .hp-daily-ank > header time { font-size: .76rem; }
body.home-page .hp-daily-ank-grid article > strong { font-size: .72rem; }
body.home-page .hp-daily-ank > footer strong,
body.home-page .hp-daily-ank > footer p { font-size: .68rem; font-weight: 800; }
body.home-page .hp-lucky-wheel > header > strong { font-size: .68rem; font-weight: 900; }
body.home-page [data-lucky-spin] small { font-size: .65rem; font-weight: 900; }
body.home-page .hp-lucky-dialog span { font-size: .68rem; font-weight: 900; }
body.home-page .hp-lucky-feedback small { font-size: .72rem; font-weight: 800; }
body.home-page .hira-history-grid time { font-size: .7rem; }
body.home-page .hira-history-grid time small { font-size: .65rem; font-weight: 800; }
body.home-page .hira-history-grid strong { font-size: .72rem; }
body.home-page .share-action { font-size: .68rem; font-weight: 900; }
body.home-page .site-support-copy > span,
body.home-page .site-support-email span strong { font-size: .7rem; font-weight: 900; }
body.home-page .site-support-email span small,
body.home-page .footer-links a { font-size: .74rem; font-weight: 800; }

@media (min-width: 1280px) {
  body.home-page .home-tools-grid .hp-daily-ank-grid article {
    grid-template-columns: 1fr;
    gap: 3px;
    text-align: center;
  }
  body.home-page .home-tools-grid .hp-ank-value { justify-content: center; }
}

@media (max-width: 780px) {
  body.home-page .hira-feature-head > div > span,
  body.home-page .current-market-status > header .current-status-title > span,
  body.home-page .result-board-heading > div > span,
  body.home-page .hp-daily-ank > header span,
  body.home-page .hp-lucky-wheel > header span { font-size: .62rem; }
  body.home-page .verified-result-label { font-size: .64rem; }
  body.home-page .head-status strong { font-size: .75rem; }
  body.home-page .hira-chart-action small,
  body.home-page .hira-chart-action span { font-size: .62rem; }
  body.home-page .hira-feature > footer > span,
  body.home-page .hp-status-foot { font-size: .62rem; letter-spacing: .02em; }
  body.home-page .result-row-top .market-state { font-size: .68rem; }
  body.home-page .hp-daily-ank-grid article > strong { font-size: .68rem; }
  body.home-page .hira-history-grid time { font-size: .7rem; }
  body.home-page .hira-history-grid time small { font-size: .64rem; }
  body.home-page .hira-history-grid strong { font-size: .68rem; }
  body.home-page .share-action,
  body.home-page .share-action span { font-size: .66rem; font-weight: 900; }
}

/* Official chart-record actions: clear controls without full-height side rails. */
body.home-page .chart-record-link {
  --chart-accent: var(--ho-cobalt);
  display: flex;
  min-width: 0;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 6px 12px;
  border: 1px solid #b7c5dc;
  border-radius: 7px;
  background: #fff;
  box-shadow: inset 4px 0 0 var(--chart-accent);
  color: var(--ho-deep);
  text-decoration: none;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
}

body.home-page .chart-record-link.is-jodi {
  --chart-accent: var(--ho-ruby);
  background: linear-gradient(180deg, #fff 0%, #fff8fb 100%);
}
body.home-page .chart-record-link.is-panel {
  --chart-accent: #c58a00;
  background: linear-gradient(180deg, #fff 0%, #fffdf5 100%);
}
body.home-page .chart-record-copy {
  display: grid;
  min-width: 0;
  gap: 2px;
  color: inherit;
  line-height: 1;
  text-align: left;
}
body.home-page .chart-record-copy b {
  overflow: hidden;
  font-family: Arial, Helvetica, sans-serif;
  font-size: .82rem;
  font-weight: 900;
  letter-spacing: .01em;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.home-page .chart-record-copy small {
  color: #5d6980;
  font-size: .64rem;
  font-weight: 900;
  letter-spacing: .045em;
  line-height: 1;
  white-space: nowrap;
}
body.home-page .chart-record-arrow {
  flex: 0 0 auto;
  color: var(--chart-accent);
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1;
}
body.home-page .chart-record-mark {
  flex: 0 0 28px;
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid #c7d2e5;
  border-radius: 6px;
  background: #f4f7fc;
  color: var(--chart-accent);
  font-size: .75rem;
  font-weight: 900;
}
body.home-page .chart-record-link:hover {
  border-color: var(--ho-deep);
  background: var(--ho-deep);
  color: #fff;
  transform: translateY(-1px);
}
body.home-page .chart-record-link:hover small { color: #dce7ff; }
body.home-page .chart-record-link:hover .chart-record-arrow { color: var(--ho-marigold); }
body.home-page .chart-record-link:focus-visible {
  position: relative;
  z-index: 2;
  outline: 3px solid var(--ho-marigold-strong);
  outline-offset: 1px;
}

body.home-page .hira-feature-board {
  grid-template-columns: 1fr;
  grid-template-rows: minmax(130px, 1fr) 60px;
  min-height: 190px;
}
body.home-page .hira-feature-main { border-inline: 0; border-bottom: 1px solid #cbd5e5; }
body.home-page .hira-chart-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 7px 10px;
  background: #f4f7fc;
}

body.home-page .market-card { grid-template-columns: minmax(0, 1fr) 96px; }
body.home-page .result-row-main { grid-column: 1; }
body.home-page .market-chart-dock {
  grid-column: 2;
  display: grid;
  height: 100%;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 5px;
  padding: 5px;
  border-left: 1px solid #cbd5e5;
  background: #f4f7fc;
}
body.home-page .market-chart-dock .chart-record-link {
  min-height: 0;
  gap: 4px;
  padding: 0 7px;
  border-radius: 6px;
  box-shadow: inset 3px 0 0 var(--chart-accent);
}
body.home-page .market-chart-dock .chart-record-copy b { font-size: .78rem; }
body.home-page .market-chart-dock .chart-record-copy small { font-size: .64rem; }
body.home-page .market-chart-dock .chart-record-arrow { font-size: .95rem; }

@media (max-width: 780px) {
  body.home-page .hira-feature-board {
    grid-template-rows: minmax(126px, 1fr) 54px;
    min-height: 180px;
  }
  body.home-page .hira-chart-actions { gap: 6px; padding: 5px 8px; }
  body.home-page .hira-chart-actions .chart-record-link { min-height: 44px; gap: 6px; padding: 5px 8px; }
  body.home-page .hira-chart-actions .chart-record-mark { flex-basis: 24px; width: 24px; height: 24px; }
  body.home-page .hira-chart-actions .chart-record-copy b { font-size: .8rem; }
  body.home-page .hira-chart-actions .chart-record-copy small { font-size: .64rem; }
  body.home-page .market-card { grid-template-columns: minmax(0, 1fr) 90px; }
  body.home-page .market-chart-dock { gap: 4px; padding: 4px; }
  body.home-page .market-chart-dock .chart-record-link { gap: 3px; padding: 0 6px; }
  body.home-page .market-chart-dock .chart-record-copy b { font-size: .78rem; }
  body.home-page .market-chart-dock .chart-record-copy small { font-size: .64rem; }
}

@media (max-width: 350px) {
  body.home-page .hira-chart-actions .chart-record-mark { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  body.home-page .chart-record-link { transition: none; }
}

/* Two-market result reveal: the interaction follows a familiar flip-card
   pattern, while the artwork stays inside the HPOfficial visual system. */
body.home-page .hp-flip-showcase,
body.home-page .weekly-records-section {
  overflow: hidden;
  border: 2px solid var(--ho-deep);
  border-radius: 10px;
  background: var(--ho-white);
  box-shadow: 4px 4px 0 rgba(7, 29, 87, .16);
}

body.home-page .hp-flip-heading,
body.home-page .weekly-records-heading {
  display: flex;
  min-height: 72px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 10px 14px;
  border-bottom: 4px solid var(--ho-marigold-strong);
  background: linear-gradient(120deg, var(--ho-deep), var(--ho-cobalt) 70%, #123f96);
  color: #fff;
}

body.home-page .hp-flip-heading span,
body.home-page .weekly-records-heading span {
  display: block;
  color: var(--ho-marigold);
  font-size: .67rem;
  font-weight: 900;
  letter-spacing: .12em;
}

body.home-page .hp-flip-heading h2,
body.home-page .weekly-records-heading h2 {
  margin: 2px 0 0;
  color: #fff;
  font-family: "Arial Black", Arial, Helvetica, sans-serif;
  font-size: clamp(1.35rem, 3vw, 1.95rem);
  font-weight: 900;
  letter-spacing: -.025em;
  line-height: 1;
}

body.home-page .hp-flip-heading p,
body.home-page .weekly-records-heading p {
  margin: 0;
  color: #e6eeff;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .02em;
  text-align: right;
}

body.home-page .hp-flip-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 12px;
  background:
    linear-gradient(135deg, rgba(11, 46, 121, .035) 25%, transparent 25%) 0 0 / 18px 18px,
    var(--ho-sky);
}

body.home-page .hp-flip-card { min-width: 0; perspective: 1100px; }
body.home-page .hp-flip-trigger {
  display: block;
  width: 100%;
  height: clamp(220px, 22vw, 252px);
  min-height: 44px;
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: inherit;
  cursor: pointer;
  font: inherit;
  perspective: 1100px;
  -webkit-tap-highlight-color: transparent;
}

body.home-page .hp-flip-trigger:focus-visible {
  outline: 4px solid var(--ho-ruby);
  outline-offset: 3px;
}

body.home-page .hp-flip-inner {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  transition: transform .52s cubic-bezier(.2, .72, .24, 1);
  transform-style: preserve-3d;
}

body.home-page .hp-flip-card.is-flipped .hp-flip-inner { transform: rotateY(180deg); }
body.home-page .hp-flip-face {
  position: absolute;
  inset: 0;
  display: flex;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border: 3px solid var(--ho-marigold-strong);
  border-radius: 12px;
  box-shadow: 0 7px 18px rgba(7, 29, 87, .25), inset 0 0 0 2px rgba(255, 255, 255, .35);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

body.home-page .hp-flip-face > * { position: relative; z-index: 1; }
body.home-page .hp-flip-face.is-cover {
  gap: 5px;
  padding: 33px 14px 48px;
  background:
    radial-gradient(circle at 50% 44%, rgba(255, 213, 74, .18), transparent 38%),
    repeating-linear-gradient(135deg, rgba(255, 255, 255, .035) 0 2px, transparent 2px 16px),
    linear-gradient(145deg, #081c50, #0b2e79 72%, #07163f);
  color: #fff;
  text-align: center;
}

body.home-page .hp-flip-card.is-hira .hp-flip-face.is-cover {
  background:
    radial-gradient(circle at 50% 44%, rgba(255, 213, 74, .2), transparent 38%),
    repeating-linear-gradient(135deg, rgba(255, 255, 255, .035) 0 2px, transparent 2px 16px),
    linear-gradient(145deg, #58103a, #9d1554 70%, #4c0a31);
}

body.home-page .hp-flip-face.is-cover::before {
  position: absolute;
  inset: 8px;
  border: 1px solid rgba(255, 213, 74, .78);
  border-radius: 8px;
  content: "";
}

body.home-page .hp-flip-topline {
  position: absolute;
  top: 13px;
  right: 15px;
  left: 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--ho-marigold);
}

body.home-page .hp-flip-topline b,
body.home-page .hp-flip-topline small {
  font-size: .67rem;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1;
}

body.home-page .hp-flip-seal {
  position: relative;
  display: grid;
  width: 66px;
  height: 66px;
  place-items: center;
  border: 3px solid var(--ho-marigold);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 5px rgba(255, 213, 74, .13);
  color: var(--ho-deep);
}

body.home-page .hp-flip-card.is-hira .hp-flip-seal { color: var(--ho-ruby); }
body.home-page .hp-flip-seal b { font-family: "Arial Black", Arial, sans-serif; font-size: 1.42rem; line-height: 1; }
body.home-page .hp-flip-seal i {
  position: absolute;
  right: -5px;
  bottom: -3px;
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--ho-green);
  color: #fff;
  font-size: .7rem;
  font-style: normal;
  font-weight: 900;
}

body.home-page .hp-flip-face.is-cover > strong {
  max-width: 100%;
  overflow: hidden;
  color: #fff;
  font-family: "Arial Black", Arial, Helvetica, sans-serif;
  font-size: clamp(1.12rem, 3vw, 2rem);
  font-weight: 900;
  line-height: 1.05;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.home-page .hp-flip-cover-label {
  color: #f3f6ff;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .1em;
}

body.home-page .hp-flip-open-copy,
body.home-page .hp-flip-close-copy {
  position: absolute;
  right: 10px;
  bottom: 10px;
  left: 10px;
  display: flex;
  min-height: 32px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 5px 8px;
  border: 1px solid rgba(255, 255, 255, .65);
  border-radius: 999px;
  background: var(--ho-marigold);
  color: var(--ho-deep);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .055em;
}

body.home-page .hp-flip-open-copy b { font-size: 1rem; }
body.home-page .hp-flip-face.is-result {
  gap: 5px;
  padding: 13px 12px 48px;
  border-color: var(--ho-cobalt);
  background:
    radial-gradient(circle at 50% 22%, rgba(11, 46, 121, .14), transparent 36%),
    linear-gradient(160deg, #fff, #eef5ff);
  color: var(--ho-ink);
  text-align: center;
  transform: rotateY(180deg);
}

body.home-page .hp-flip-card.is-hira .hp-flip-face.is-result {
  border-color: var(--ho-ruby);
  background:
    radial-gradient(circle at 50% 22%, rgba(194, 24, 91, .13), transparent 36%),
    linear-gradient(160deg, #fff, #fff3f8);
}

body.home-page .hp-flip-kicker {
  padding: 4px 8px;
  border-radius: 999px;
  background: var(--ho-marigold);
  color: var(--ho-deep);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .07em;
  line-height: 1;
}

body.home-page .hp-flip-market-name {
  max-width: 100%;
  overflow: hidden;
  color: var(--ho-deep);
  font-family: "Arial Black", Arial, sans-serif;
  font-size: clamp(1.05rem, 2.5vw, 1.55rem);
  font-weight: 900;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.home-page .hp-flip-card.is-hira .hp-flip-market-name { color: var(--ho-ruby); }
body.home-page .hp-flip-value {
  max-width: 100%;
  overflow: hidden;
  color: var(--ho-deep);
  font-family: "Arial Black", Arial, Helvetica, sans-serif;
  font-size: clamp(1.18rem, 3.4vw, 2.05rem);
  font-weight: 900;
  letter-spacing: -.04em;
  line-height: 1.05;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.home-page .hp-flip-value.pending { animation: none; color: #8a4d00; }
body.home-page .hp-flip-status {
  display: inline-flex;
  width: auto;
  max-width: 100%;
  min-height: 27px;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 4px 8px;
  font-size: .67rem;
  font-weight: 900;
  line-height: 1;
}

body.home-page .hp-flip-status i { width: 7px; height: 7px; }
body.home-page .hp-flip-face.is-result > time {
  color: var(--ho-cobalt);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .035em;
  line-height: 1;
}

body.home-page .hp-flip-time {
  color: #495a78;
  font-size: .67rem;
  font-weight: 800;
  line-height: 1.2;
}

body.home-page .hp-flip-time b { color: var(--ho-ruby); font-weight: 900; }
body.home-page .hp-flip-time i { color: #8290aa; font-style: normal; }
body.home-page .hp-flip-close-copy { border-color: var(--ho-cobalt); background: var(--ho-deep); color: #fff; }
body.home-page .hp-flip-card.is-hira .hp-flip-close-copy { border-color: var(--ho-ruby); background: var(--ho-ruby); }
body.home-page .hp-flip-note {
  display: flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 0;
  padding: 6px 10px;
  border-top: 1px solid var(--ho-soft-line);
  background: #fff;
  color: var(--ho-cobalt);
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-align: center;
}

body.home-page .hp-flip-note i { width: 8px; height: 8px; border-radius: 50%; background: var(--ho-ruby); }
body.home-page .hp-flip-note i.is-online { background: var(--ho-green); }
body.home-page .hp-flip-noscript { padding: 8px 12px; background: #fff; color: var(--ho-deep); font-size: .8rem; }
body.home-page .hp-flip-noscript p { margin: 3px 0; }

/* Current Monday-to-Sunday records: two market boxes, one explicit state per
   date. Kalyan's weekly closed day remains visible as CLOSED. */
body.home-page .weekly-records-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 12px;
  background: var(--ho-sky);
}

body.home-page .weekly-record-box {
  overflow: hidden;
  border: 2px solid var(--ho-cobalt);
  border-radius: 8px;
  background: #fff;
  box-shadow: 2px 2px 0 rgba(7, 29, 87, .12);
}

body.home-page .weekly-record-box.is-hira { border-color: var(--ho-ruby); }
body.home-page .weekly-record-box-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 9px 10px;
  border-bottom: 3px solid var(--ho-marigold-strong);
  background: var(--ho-deep);
  color: #fff;
}

body.home-page .weekly-record-box.is-hira .weekly-record-box-head { background: #751143; }
body.home-page .weekly-record-box-head > div > span {
  display: block;
  color: var(--ho-marigold);
  font-size: .65rem;
  font-weight: 900;
  letter-spacing: .09em;
}

body.home-page .weekly-record-box-head h3 {
  margin: 2px 0 0;
  color: #fff;
  font-family: "Arial Black", Arial, sans-serif;
  font-size: 1.35rem;
  font-weight: 900;
  line-height: 1;
}

body.home-page .weekly-record-box-head > b {
  padding: 5px 7px;
  border: 1px solid var(--ho-marigold);
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  color: var(--ho-marigold);
  font-size: .68rem;
  font-weight: 900;
  white-space: nowrap;
}

body.home-page .weekly-record-box-head nav {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

body.home-page .weekly-chart-link {
  display: grid;
  min-height: 44px;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  align-items: center;
  gap: 0 6px;
  padding: 5px 9px;
  border: 1px solid rgba(255, 255, 255, .6);
  border-radius: 6px;
  background: #fff;
  color: var(--ho-deep);
  text-decoration: none;
}

body.home-page .weekly-chart-link.is-jodi { box-shadow: inset 4px 0 var(--ho-ruby); }
body.home-page .weekly-chart-link.is-panel { box-shadow: inset 4px 0 #c58a00; }
body.home-page .weekly-chart-link strong { font-size: .78rem; font-weight: 900; line-height: 1; }
body.home-page .weekly-chart-link small { color: var(--ho-muted); font-size: .64rem; font-weight: 900; line-height: 1; }
body.home-page .weekly-chart-link i { grid-column: 2; grid-row: 1 / 3; color: var(--ho-ruby); font-size: 1rem; font-style: normal; font-weight: 900; }
body.home-page .weekly-chart-link.is-panel i { color: #a66e00; }
body.home-page .weekly-chart-link:hover { border-color: var(--ho-marigold); background: var(--ho-marigold); }
body.home-page .weekly-chart-link:focus-visible { outline: 3px solid var(--ho-marigold); outline-offset: 2px; }

body.home-page .weekly-record-list {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
}

body.home-page .weekly-record-list > li {
  position: relative;
  display: flex;
  min-height: 112px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 7px;
  padding: 8px 4px;
  overflow: hidden;
  border-right: 1px solid var(--ho-soft-line);
  background: #fff;
  text-align: center;
}

body.home-page .weekly-record-list > li:last-child { border-right: 0; }
body.home-page .weekly-record-list time,
body.home-page .weekly-record-list time strong,
body.home-page .weekly-record-list time span { display: block; }
body.home-page .weekly-record-list time strong { color: var(--ho-ruby); font-size: .72rem; font-weight: 900; line-height: 1; }
body.home-page .weekly-record-list time span {
  margin-top: 4px;
  color: #53617a;
  font-size: .64rem;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

body.home-page .weekly-record-value {
  display: block;
  max-width: 100%;
  overflow: hidden;
  color: var(--ho-deep);
  font-family: "Arial Black", Arial, sans-serif;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: -.025em;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.home-page .weekly-record-marker {
  padding: 3px 6px;
  border-radius: 999px;
  background: var(--ho-ruby);
  color: #fff;
  font-size: .6rem;
  font-weight: 900;
  letter-spacing: .05em;
  line-height: 1;
}

body.home-page .weekly-record-list > li.is-today { box-shadow: inset 0 0 0 3px var(--ho-marigold-strong); }
body.home-page .weekly-record-list > li.state-partial,
body.home-page .weekly-record-list > li.state-pending { background: #fff6cc; }
body.home-page .weekly-record-list > li.state-partial .weekly-record-value,
body.home-page .weekly-record-list > li.state-pending .weekly-record-value { color: #8a4d00; }
body.home-page .weekly-record-list > li.state-upcoming { background: #f2f5fa; }
body.home-page .weekly-record-list > li.state-upcoming .weekly-record-value { color: #61708a; }
body.home-page .weekly-record-list > li.state-empty { background: #f7f7f8; }
body.home-page .weekly-record-list > li.state-empty .weekly-record-value { color: #6e7480; }
body.home-page .weekly-record-list > li.state-closed {
  background: repeating-linear-gradient(135deg, #edf0f5 0 8px, #e3e7ed 8px 16px);
}
body.home-page .weekly-record-list > li.state-closed .weekly-record-value { color: #3e4757; }
body.home-page .weekly-record-list > li.state-holiday { background: #fff0f3; }
body.home-page .weekly-record-list > li.state-holiday .weekly-record-value { color: #a60032; }
body.home-page .weekly-record-empty { min-height: 150px; margin: 0; padding: 22px; color: var(--ho-ruby); font-size: .8rem; font-weight: 900; text-align: center; }
body.home-page .weekly-record-box > footer {
  min-height: 32px;
  padding: 7px 9px;
  border-top: 1px solid var(--ho-soft-line);
  background: var(--ho-cream);
  color: var(--ho-cobalt);
  font-size: .65rem;
  font-weight: 900;
  letter-spacing: .045em;
  text-align: center;
}

@media (max-width: 1119px) {
  body.home-page .weekly-record-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.home-page .weekly-record-list > li {
    min-height: 74px;
    padding: 8px 7px;
    border-right: 1px solid var(--ho-soft-line);
    border-bottom: 1px solid var(--ho-soft-line);
  }
  body.home-page .weekly-record-list > li:nth-child(2n) { border-right: 0; }
  body.home-page .weekly-record-list > li:nth-child(7) { grid-column: 1 / -1; border-right: 0; border-bottom: 0; }
  body.home-page .weekly-record-list time strong { font-size: .76rem; }
  body.home-page .weekly-record-list time span { font-size: .66rem; }
  body.home-page .weekly-record-value { font-size: .82rem; }
}

@media (max-width: 699px) {
  body.home-page .hp-flip-heading,
  body.home-page .weekly-records-heading {
    min-height: 0;
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
    padding: 9px 10px;
  }
  body.home-page .hp-flip-heading h2,
  body.home-page .weekly-records-heading h2 { font-size: 1.15rem; }
  body.home-page .hp-flip-heading p,
  body.home-page .weekly-records-heading p { font-size: .68rem; text-align: left; }
  body.home-page .weekly-records-grid { grid-template-columns: 1fr; gap: 9px; padding: 9px; }
}

@media (max-width: 420px) {
  body.home-page .hp-flip-grid { gap: 7px; padding: 7px; }
  body.home-page .hp-flip-trigger { height: 218px; }
  body.home-page .hp-flip-face.is-cover { gap: 4px; padding: 32px 7px 44px; }
  body.home-page .hp-flip-topline { top: 12px; right: 10px; left: 10px; justify-content: center; }
  body.home-page .hp-flip-topline small { display: none; }
  body.home-page .hp-flip-topline b { font-size: .65rem; }
  body.home-page .hp-flip-seal { width: 52px; height: 52px; }
  body.home-page .hp-flip-seal b { font-size: 1.12rem; }
  body.home-page .hp-flip-seal i { width: 20px; height: 20px; font-size: .62rem; }
  body.home-page .hp-flip-face.is-cover > strong { font-size: 1rem; }
  body.home-page .hp-flip-cover-label { font-size: .63rem; letter-spacing: .055em; }
  body.home-page .hp-flip-open-copy,
  body.home-page .hp-flip-close-copy { right: 7px; bottom: 7px; left: 7px; min-height: 30px; padding: 4px; font-size: .65rem; }
  body.home-page .hp-flip-face.is-result { gap: 4px; padding: 10px 6px 42px; }
  body.home-page .hp-flip-kicker { padding: 3px 5px; font-size: .6rem; letter-spacing: .035em; }
  body.home-page .hp-flip-market-name { font-size: .98rem; }
  body.home-page .hp-flip-value { font-size: 1.08rem; }
  body.home-page .hp-flip-status { min-height: 25px; padding: 3px 6px; font-size: .62rem; }
  body.home-page .hp-flip-face.is-result > time { font-size: .61rem; letter-spacing: 0; }
  body.home-page .hp-flip-time { font-size: .61rem; }
  body.home-page .hp-flip-note { font-size: .64rem; }
  body.home-page .weekly-record-box-head h3 { font-size: 1.16rem; }
  body.home-page .weekly-record-box-head > div > span { font-size: .62rem; }
  body.home-page .weekly-record-list time strong { font-size: .74rem; }
  body.home-page .weekly-record-list time span { font-size: .64rem; }
  body.home-page .weekly-record-value { font-size: .78rem; }
}

@media (prefers-reduced-motion: reduce) {
  body.home-page .hp-flip-inner { transition: none; }
}
