@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');

:root {
  --background: #f6f8fa;
  --foreground: #1f2328;
  --card: #ffffff;
  --primary: #b42318;
  --primary-foreground: #ffffff;
  --secondary: #eaeef2;
  --secondary-foreground: #32383f;
  --summary-foreground: #59636e;
  --muted: #dde3ea;
  --muted-foreground: #656d76;
  --border: #d0d7de;
  --separator: #e1e6eb;
  --ring: #b42318;

  --link-hover: #8f514c;

  --down: #2f7050;

  --scrollbar: color-mix(in srgb, var(--muted-foreground) 45%, var(--background));

  --serif: 'Playfair Display', serif;
  --mono: 'JetBrains Mono', monospace;
  --sans: 'Inter', sans-serif;
  --sidebar: 220px;

  --masthead: 48px;
}

* { box-sizing: border-box; }

html, body { height: 100%; margin: 0; }

html { -webkit-text-size-adjust: 100%; }

body {
  font-family: var(--sans);
  background-color: var(--background);
  color: var(--foreground);
}

a:hover { --primary: var(--link-hover); }

::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background-color: transparent; }
::-webkit-scrollbar-corner { background-color: transparent; }

::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar);
  background-clip: content-box;
  border: 2px solid transparent;
  border-radius: 6px;
}

::-webkit-scrollbar-thumb:hover { background-color: var(--muted-foreground); }

@media (hover: none), (max-width: 768px) {
  .main::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 8px;
  }

  .main::-webkit-scrollbar-track { background-color: var(--secondary); }

  .main::-webkit-scrollbar-thumb {
    background-color: var(--scrollbar);
    background-clip: border-box;
    border: 0;
    border-radius: 4px;
  }
}

@supports not selector(::-webkit-scrollbar) {
  html { scrollbar-color: var(--scrollbar) transparent; }

  .calendar__days,
  .masthead__nav { scrollbar-width: thin; }
}

.eyebrow {
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: 2px;

  text-transform: uppercase;
}

.en {
  font-weight: 400;
  letter-spacing: 0.02em;
  text-transform: none;
  color: var(--muted-foreground);
}

.masthead__tab .en,
.footer__link .en,
.about__heading .en,
.about__link .en,
.hits__title .en {
  margin-left: 0.35em;
  font-size: 0.85em;
}

.pager__step .en {
  font-size: 1em;
  color: inherit;
}

.eyebrow .en {
  margin-left: 0.4em;
  letter-spacing: 0.08em;
  font-size: 9px;
}

.shell {
  display: flex;
  flex-direction: column;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
}

.masthead {
  display: flex;
  align-items: center;
  height: var(--masthead);
  flex-shrink: 0;
  border-bottom: 1px solid var(--border);
  background-color: var(--card);
}

.drawer__state {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
}

.masthead__drawer { display: none; }

.calendar__scrim { display: none; }

.calendar__toggle { display: none; }

@media (min-width: 769px) {
  html.cal-off .calendar { display: none; }

  html.js .calendar__toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: flex-start;
    width: 16px;
    height: 56px;
    flex-shrink: 0;
    padding: 0;
    margin-left: -1px;
    border: 1px solid var(--border);
    border-left: 0;
    border-radius: 0 6px 6px 0;
    background-color: var(--card);
    cursor: pointer;
    z-index: 2;
  }

  html.cal-off .calendar__toggle {
    margin-left: 0;
    border-left: 1px solid var(--border);
  }

  .calendar__toggle-icon {
    position: relative;
    display: block;
    width: 10px;
    height: 16px;
    border: 1.5px solid var(--foreground);
    border-radius: 2px;
    transition: border-color .15s;
  }

  .calendar__toggle-icon::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 3px;
    background-color: var(--foreground);
    transition: background-color .15s;
  }

  .calendar__toggle-icon::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 1px;
    width: 3px;
    height: 3px;
    border-left: 1.3px solid var(--foreground);
    border-bottom: 1.3px solid var(--foreground);
    transform: translateY(-50%) rotate(45deg);
    transition: border-color .15s, transform .18s;
  }

  html.cal-off .calendar__toggle-icon::after {
    transform: translateY(-50%) rotate(-135deg);
  }

  .calendar__toggle:hover {
    border-color: var(--primary);
  }

  .calendar__toggle:hover .calendar__toggle-icon { border-color: var(--primary); }

  .calendar__toggle:hover .calendar__toggle-icon::before {
    background-color: var(--primary);
  }

  .calendar__toggle:hover .calendar__toggle-icon::after {
    border-color: var(--primary);
  }

  .calendar__toggle:focus-visible {
    outline: 2px solid var(--ring);
    outline-offset: 2px;
  }
}

.masthead__brand {
  display: flex;
  align-items: center;
  height: 100%;
  flex-shrink: 0;
  padding: 0 12px;
  border-right: 1px solid var(--border);
  text-decoration: none;
}

.masthead__logo {
  display: block;
  width: 48px;
  height: 48px;
  object-fit: contain;
  border-radius: 4px;
  flex-shrink: 0;
}

.masthead__nav {
  display: flex;
  height: 100%;
  margin-left: 4px;
  min-width: 0;
  overflow-x: auto;
}

.masthead__nav::-webkit-scrollbar { height: 6px; }

.masthead__nav::-webkit-scrollbar-thumb {
  border: 1px solid transparent;
  border-radius: 3px;
}

.masthead__tab {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  flex-shrink: 0;
  min-width: 76px;
  padding: 0 14px;
  text-decoration: none;
  font-weight: 400;
  color: var(--muted-foreground);
  border-bottom: 2px solid transparent;
  transition: color .15s, border-color .15s;
  white-space: nowrap;
}

.masthead__tab-zh {
  font-size: 14px;
  line-height: 1.15;
}

.masthead__tab-en {
  margin-top: 2px;
  font-family: var(--sans);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.15;
  color: var(--muted-foreground);
}

.masthead__tab--active {
  font-weight: 600;
  color: var(--primary);
  border-bottom-color: var(--primary);
}

.masthead__tab--active .masthead__tab-en {
  color: var(--primary);
  opacity: 0.72;
}

.finder__box {
  display: flex;
  flex: 1 1 380px;
  max-width: 560px;
  align-items: center;
  gap: 8px;
  padding: 3px 4px 3px 14px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background-color: var(--card);
  transition: border-color .12s, box-shadow .12s;
}

.finder__box:focus-within {
  border-color: var(--primary);
  box-shadow: 0 2px 14px rgba(26, 23, 20, .10);
}

.finder__icon {
  position: relative;
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  border: 2px solid var(--muted-foreground);
  border-radius: 50%;
}

.finder__icon::after {
  content: "";
  position: absolute;
  right: -5px;
  bottom: -2px;
  width: 7px;
  height: 2px;
  background-color: var(--muted-foreground);
  border-radius: 1px;
  transform: rotate(45deg);
}

.finder__input {
  flex: 1 1 auto;
  min-width: 0;
  padding: 8px 0;
  border: 0;
  background: none;
  font-family: var(--sans);
  font-size: 14px;
  line-height: 1.4;
  color: var(--foreground);
  outline: none;
}

.finder__input::placeholder { color: var(--muted-foreground); }

.finder__submit {
  flex: 0 0 auto;
  padding: 8px 18px;
  border: 0;
  border-radius: 999px;
  background-color: var(--primary);
  font-family: var(--sans);
  font-size: 14px;
  font-weight: 500;
  color: var(--primary-foreground);
  cursor: pointer;
  transition: background-color .12s;
}

.finder__submit:hover { background-color: color-mix(in srgb, var(--primary) 86%, #000); }

.finder__dock:empty { display: none; }

.finder__dock:not(:empty) {
  display: flex;
  align-items: center;
  height: 100%;
  width: var(--finder-dock-width);
  flex: 0 0 var(--finder-dock-width);
  margin-left: 10px;
  padding-right: 10px;
}

.finder__dock:not(:empty) .finder__box {
  width: 100%;
  max-width: none;
  padding: 1px 3px 1px 12px;
  box-shadow: 0 2px 10px rgb(31 35 40 / 0.12);
}

.finder__dock:not(:empty) .finder__input { padding-block: 6px; }

.finder__dock:not(:empty) .finder__submit { padding-block: 6px; }

.finder__dock.masthead__search {
  --finder-dock-width: clamp(200px, 25vw, 340px);
  margin-left: auto;
}

.masthead__search-link { display: none; }

.finder__dock.masthead__search + .masthead__account { margin-left: 0; }

.masthead__account {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 100%;
  flex-shrink: 0;
  margin-left: auto;
  padding: 0;
  border-left: 1px solid var(--border);
  font-size: 13px;
  color: var(--muted-foreground);
  text-decoration: none;
  white-space: nowrap;
  transition: color .15s;
}

.masthead__account:hover { color: var(--primary); }

.masthead__account--active { color: var(--primary); font-weight: 600; }

.masthead__avatar {
  position: relative;
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  border-radius: 50%;
  border: 1px solid var(--border);
  background-color: var(--secondary);
  overflow: hidden;
}

.masthead__avatar::before,
.masthead__avatar::after {
  content: '';
  position: absolute;
  left: 50%;
  background-color: var(--muted-foreground);
  transition: background-color .15s;
}

.masthead__avatar::before {
  top: 4px;
  width: 7px;
  height: 7px;
  margin-left: -3.5px;
  border-radius: 50%;
}

.masthead__avatar::after {
  top: 13px;
  width: 13px;
  height: 9px;
  margin-left: -6.5px;
  border-radius: 7px 7px 0 0;
}

.masthead__account:hover .masthead__avatar { border-color: var(--primary); }

.masthead__account:hover .masthead__avatar::before,
.masthead__account:hover .masthead__avatar::after,
.masthead__account--active .masthead__avatar::before,
.masthead__account--active .masthead__avatar::after {
  background-color: var(--primary);
}

.masthead__mark { display: none; }

.masthead__account:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: -2px;
}

.body {
  display: flex;
  flex: 1;

  min-height: 0;
  overflow: hidden;
}

.main {
  flex: 1;
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;

  scroll-behavior: smooth;
  scroll-timeline-name: --main;
}

.main > * { flex-shrink: 0; }

.top-anchor { height: 0; }

.calendar {
  width: var(--sidebar);
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--border);
  background-color: var(--card);
  overflow: hidden;
}

.calendar__section {
  padding: 14px 14px 10px;
  border-bottom: 1px solid var(--border);
}

.calendar__section + .calendar__section { padding-top: 12px; }

.calendar__section:last-child { border-bottom: 0; }

.calendar__label {
  margin: 0 0 8px;
  font-weight: 600;
  letter-spacing: 1.5px;
}

.calendar__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
}

.calendar__cell {
  padding: 5px 0;
  font-size: 11px;
  text-align: center;
  text-decoration: none;
  font-weight: 400;
  border: 1px solid color-mix(in srgb, var(--border) 58%, transparent);
  border-radius: 6px;
  background-color: color-mix(in srgb, var(--background) 45%, transparent);
  color: var(--foreground);
  transition: background-color .14s, border-color .14s, color .14s;
}

.calendar__cell:hover {
  border-color: color-mix(in srgb, var(--border) 82%, transparent);
  background-color: var(--secondary);
}

.calendar__cell--year {
  font-family: var(--mono);
  font-weight: 500;
  color: var(--muted-foreground);
}

.calendar__cell--active {
  font-weight: 600;
  border-color: color-mix(in srgb, var(--primary) 24%, var(--border));
  background-color: color-mix(in srgb, var(--primary) 8%, var(--card));
  color: color-mix(in srgb, var(--primary) 78%, var(--foreground));
}

.calendar__cell--empty {
  border-color: transparent;
  background-color: transparent;
  color: var(--muted-foreground);
  opacity: 0.3;
}

.calendar__days {
  flex: 1;
  overflow-y: auto;
}

.calendar__days::-webkit-scrollbar { width: 8px; height: 8px; }

.calendar__days::-webkit-scrollbar-thumb {
  border: 1px solid transparent;
  border-radius: 4px;
}

.calendar__month-label { padding: 10px 14px 6px; }
.calendar__month-label .calendar__label { margin-bottom: 0; }

.calendar__label a {
  color: inherit;
  text-decoration: none;
}

.calendar__label a:hover { text-decoration: underline; }

.calendar__day {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 8px 14px;
  text-decoration: none;
  border-left: 3px solid transparent;
  transition: background-color .14s, border-color .14s;
}

.calendar__day:hover { background-color: color-mix(in srgb, var(--secondary) 62%, transparent); }

.calendar__day--active {
  background-color: color-mix(in srgb, var(--primary) 6%, var(--card));
  border-left-color: color-mix(in srgb, var(--primary) 38%, var(--border));
}

.calendar__day-number {
  font-family: var(--serif);
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  width: 30px;
  flex-shrink: 0;
  color: var(--foreground);
}

.calendar__day--weekend .calendar__day-number {
  color: var(--muted-foreground);
  opacity: 0.6;
}

.calendar__day--active .calendar__day-number {
  color: color-mix(in srgb, var(--primary) 72%, var(--foreground));
  opacity: 1;
}

.calendar__day-weekday {
  font-size: 10px;
  font-family: var(--mono);
  padding-right: 6px;
  flex-shrink: 0;
  white-space: nowrap;
  color: var(--muted-foreground);
}

.calendar__day-weekday .en { font-size: 9px; }

.calendar__day-count {
  margin-left: auto;
  font-size: 10px;
  font-family: var(--mono);
  background-color: var(--muted);
  color: var(--muted-foreground);
  border-radius: 8px;
  padding: 1px 6px;
}

.calendar__day--active .calendar__day-count {
  background-color: color-mix(in srgb, var(--primary) 11%, var(--card));
  color: color-mix(in srgb, var(--primary) 72%, var(--foreground));
}

.aside-row {
  display: block;
  padding-top: 9px;
  padding-bottom: 9px;
}

.aside-row__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--foreground);
}

.calendar__day--active .aside-row__title { font-weight: 600; color: var(--primary); }

.aside-row__divider {
  height: 0;
  margin: 6px 12px;
  border-top: 1px solid var(--border);
}

.aside-row__meta {
  display: block;
  margin-top: 3px;
  font-size: 10px;
  font-family: var(--mono);
  color: var(--muted-foreground);
}

.page {
  width: 100%;
  max-width: 780px;
  margin: 0 auto;
  padding: 0px 28px 64px;
}

.page__header {
  margin-bottom: 26px;
  padding-top: 20px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--foreground);
}

.page__eyebrow { margin-bottom: 6px; }

.page__eyebrow--channels {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.page__eyebrow-text { min-width: 0; }

.page__eyebrow-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 0 auto;
  gap: 10px;
  margin-left: auto;
}

.page__eyebrow-link {
  font-family: var(--sans);
  font-size: 11px;
  line-height: 1.5;
  letter-spacing: 0;
  color: var(--foreground);
  text-decoration: none;
  text-transform: none;
  white-space: nowrap;
  border-bottom: 1px solid var(--border);
  transition: color .12s, border-color .12s;
}

.page__eyebrow-link:hover,
.page__eyebrow-link:focus-visible { color: var(--primary); border-bottom-color: var(--primary); }

.page__eyebrow--tools {
  display: flex;
  align-items: center;
  gap: 0 10px;
}

.page__eyebrow-main { min-width: 0; }

.page__eyebrow--tools .co-print,
.page__eyebrow--tools .bookmark { flex: none; }

.page__title {
  margin: 0 0 6px;
  font-family: var(--serif);
  font-size: 34px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1px;
}

.page__title--long {
  font-size: 22px;
  letter-spacing: -0.3px;
  overflow-wrap: break-word;
}

.page__titles {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0 16px;
}

.page__titles:has(> .page__title-alt) {
  row-gap: 6px;
}

.page__titles:has(> .page__title-alt) > .page__title {
  flex: 1 0 100%;
  margin-bottom: 0;
}

.page__title-alt {
  font-family: var(--sans);
  font-size: 17px;
  font-weight: 600;
  letter-spacing: -0.3px;
  color: var(--secondary-foreground);
  text-decoration: none;
  border-bottom: 1px solid var(--border);
  transition: color .12s, border-color .12s;
}

.page__title-alt:hover { color: var(--primary); border-bottom-color: var(--primary); }

.page__title-alt .en { font-size: 0.8em; }

.co-print { display: none; }

.js .co-print {
  display: inline-flex;
  align-items: center;
  margin-left: auto;
  padding: 3px 10px;
  font-family: var(--sans);
  font-size: 12.5px;
  color: var(--muted-foreground);
  background: none;
  border: 1px solid var(--border);
  border-radius: 2px;
  cursor: pointer;
  transition: color .12s, border-color .12s;
}

.js .co-print:hover { color: var(--primary); border-color: var(--primary); }

.js .co-print:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

.page__title-en {
  display: inline-block;
  margin-left: 0.35em;
  font-family: var(--sans);
  font-weight: 500;
  font-size: 0.42em;
  letter-spacing: 0.04em;
  vertical-align: middle;
  color: var(--muted-foreground);
}

.page__lede {
  margin: 10px 0 0;
  font-size: 13px;
  line-height: 1.9;
  color: var(--muted-foreground);
}

.page__lede--en {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.7;
  opacity: 0.92;
}

.pager {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  margin-top: 12px;
}

.pager > :first-child { justify-self: start; }

.pager__today { justify-self: center; }

.pager > :last-child { justify-self: end; }

.pager__step {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0;
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
  background: none;
  font-family: var(--sans);
  font-size: 11px;
  line-height: 1.5;
  letter-spacing: 0;
  color: var(--foreground);
  text-decoration: none;
  text-transform: none;
  white-space: nowrap;
  transition: color .12s, border-color .12s;
}

.pager__step:hover,
.pager__step:focus-visible {
  color: var(--primary);
  border-bottom-color: var(--primary);
}

.pager__step--end {
  border-bottom-color: transparent;
  color: var(--muted-foreground);
}

.pager__step--end:hover {
  color: var(--muted-foreground);
  border-bottom-color: transparent;
}

.pager__date {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
}

.pager__step:hover .pager__date { color: var(--primary); }

.daynav {
  position: sticky;
  top: 50%;

  z-index: 5;
  height: 0;

  pointer-events: none;
  display: none;
}

.daynav__step {
  position: absolute;
  top: 0;
  transform: translateY(-50%);
  pointer-events: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 46px;
  border: 1px solid var(--border);
  background-color: var(--card);
  box-shadow: 0 2px 10px rgba(26, 23, 20, .12);
  font-size: 13px;
  line-height: 1;
  color: var(--muted-foreground);
  text-decoration: none;

  opacity: 0.5;
  transition: opacity .12s, color .12s, background-color .12s;
}

.daynav__step:active {
  opacity: 1;
  color: var(--primary);
  background-color: var(--background);
}

.daynav__step--prev {
  left: 0;
  border-left: 0;
  border-radius: 0 23px 23px 0;
}

.daynav__step--next {
  right: 0;
  border-right: 0;
  border-radius: 23px 0 0 23px;
}

.trail { display: block; }

@media (hover: hover) {
  .trail__step:hover {
    opacity: 1;
    color: var(--primary);
    background-color: var(--background);
  }
}

@media (min-width: 1180px) {
  .trail__step {
    width: 40px;
    height: 40px;
    border-radius: 20px;
  }

  .trail .daynav__step--prev {
    left: max(0px, calc(50% - 438px));
    border-left: 1px solid var(--border);
    border-radius: 20px;
  }

  .trail .daynav__step--next {
    right: max(0px, calc(50% - 438px));
    border-right: 1px solid var(--border);
    border-radius: 20px;
  }
}

.footer-gap { flex: 1 0 48px; }

.footer {
  border-top: 1px solid var(--border);
  background-color: var(--card);
  font-size: 12px;
  line-height: 1.6;
  color: var(--muted-foreground);
}

.footer__inner {
  max-width: 780px;
  margin: 0 auto;
  padding: 14px 28px 16px;
}

.footer p { margin: 0; }

.footer p.footer__en {
  margin-top: 1px;
  margin-bottom: 4px;
  font-size: 11px;
  line-height: 1.5;
  opacity: 0.9;
}

.footer__links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 6px;
}

.footer__links[hidden] { display: none; }

.footer__links--timeline {
  align-items: baseline;
  gap: 4px 14px;
}

.footer__links--timeline > span:first-child {
  font-weight: 600;
  color: var(--foreground);
}

.footer__link {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid var(--border);
}

.footer__link:hover { color: var(--primary); border-bottom-color: var(--primary); }

.ad {
  max-width: 780px;
  min-height: 280px;
  margin: 0 auto 28px;
  padding: 0 28px;
}

.page__notice {
  padding: 40px 24px;
  text-align: center;
  border: 1px dashed var(--border);
  border-radius: 3px;
  color: var(--muted-foreground);
  font-size: 13px;
  line-height: 1.9;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.page__crumb {
  color: var(--muted-foreground);
  text-decoration: none;
  border-bottom: 1px solid var(--border);
}

.page__crumb:hover { color: var(--primary); }

.page__links-row { flex-basis: 100%; }

.page__crumb--ai {
  color: var(--foreground);
  font-size: 14px;
  line-height: 1.6;
  border-bottom-color: color-mix(in srgb, var(--primary) 35%, var(--border));
}

.page__ai-label {
  display: inline-block;
  margin-right: 8px;
  padding: 0 6px;
  border: 1px solid color-mix(in srgb, var(--primary) 28%, transparent);
  border-radius: 2px;
  background-color: color-mix(in srgb, var(--primary) 9%, transparent);
  color: var(--primary);
  font-size: 11px;
  line-height: 1.7;
  letter-spacing: .04em;
  vertical-align: 1px;
}

.page__note { color: var(--muted-foreground); }

.page__header--timeline .page__title {
  font-size: 28px;
  letter-spacing: -0.6px;
}

.page__links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 18px;
  margin: 10px 0 0;
  font-size: 13px;
}

.about { margin-bottom: 26px; }

.about__heading {
  margin: 0 0 10px;
  padding-bottom: 8px;
  font-family: var(--serif);
  font-size: 20px;
  font-weight: 700;
  border-bottom: 1px solid var(--border);
}

.about__heading .en {
  margin-left: 0.4em;
  font-family: var(--sans);
  font-size: 0.7em;
  font-weight: 500;
}

.about__text {
  margin: 0;
  font-size: 14px;
  line-height: 2;
  color: var(--secondary-foreground);
  text-align: justify;
}

.about__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.about__item {
  padding: 10px 0;
  font-size: 14px;
  line-height: 1.9;
  color: var(--secondary-foreground);
}

.about__item + .about__item { border-top: 1px solid var(--border); }

.about__link {
  font-weight: 600;
  color: var(--foreground);
  text-decoration: none;
  border-bottom: 1px solid var(--border);
}

.about__link:hover { color: var(--primary); border-bottom-color: var(--primary); }

.bookmark,
.saved__tools {
  display: none;
}

.bookmark {
  width: 22px;
  height: 22px;
  padding: 0;
  border: 0;
  background: none;
  font-size: 15px;
  line-height: 1;
  color: var(--muted-foreground);
  cursor: pointer;
  transition: color .12s, opacity .12s;
}

.js .bookmark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.bookmark::before { content: "☆"; }
.bookmark:hover { color: var(--primary); }
.bookmark[aria-pressed="true"] { color: var(--primary); }
.bookmark[aria-pressed="true"]::before { content: "★"; }

@media (hover: hover) {
  .js .bookmark { opacity: 0; }

  .js .report:hover .bookmark,
  .js .flash:hover .bookmark,
  .js .stock:hover .bookmark,

  .js .page__eyebrow .bookmark,
  .js .bookmark:focus-visible,
  .js .bookmark[aria-pressed="true"] { opacity: 1; }
}

.report__byline .bookmark,
.stock__head .bookmark { margin-left: auto; }

.stock__head .bookmark { align-self: center; }

.flash__head { position: relative; }
.js .flash__head { padding-right: 26px; }

.flash .bookmark {
  position: absolute;
  top: 0;
  right: 0;
}

.saved__heading {
  margin: 0 0 14px;
  font-family: var(--serif);
  font-size: 19px;
  font-weight: 700;
  letter-spacing: -0.3px;
}

.saved__heading .en {
  margin-left: 0.4em;
  font-family: var(--sans);
  font-size: 0.68em;
  font-weight: 500;
  color: var(--muted-foreground);
}

.js .saved__tools {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
}

.saved__tool {
  padding: 6px 14px;
  border: 1px solid var(--border);
  border-radius: 2px;
  background-color: var(--card);
  font-family: inherit;
  font-size: 13px;
  color: var(--secondary-foreground);
  cursor: pointer;
  transition: color .12s, border-color .12s;
}

.saved__tool:hover { color: var(--primary); border-color: var(--primary); }

.saved__item {
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
}

.saved__meta {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
}

.saved__label {
  padding: 2px 7px;
  border-radius: 2px;
  font-family: var(--mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.5px;
  white-space: nowrap;
  background-color: color-mix(in srgb, var(--primary) 10%, transparent);
  color: var(--primary);
  border: 1px solid color-mix(in srgb, var(--primary) 25%, transparent);
}

.saved__date {
  font-family: var(--mono);
  font-size: 11px;
  color: var(--muted-foreground);
}

.saved__remove {
  margin-left: auto;
  padding: 0;
  border: 0;
  background: none;
  font-family: var(--mono);
  font-size: 11px;
  color: var(--muted-foreground);
  cursor: pointer;
  transition: color .12s;
}

.saved__remove:hover { color: var(--primary); }

.saved__title {
  display: block;
  font-family: var(--serif);
  font-size: 17px;
  font-weight: 600;
  line-height: 1.5;
  color: var(--foreground);
  text-decoration: none;
}

.saved__title:hover { color: var(--primary); }

.saved__empty,
.saved__note {
  margin: 16px 0 0;
  font-size: 13px;
  line-height: 1.9;
  color: var(--muted-foreground);
}

.saved__note--en {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.7;
  opacity: 0.92;
}

.saved__note-link {
  color: var(--secondary-foreground);
  text-decoration: none;
  border-bottom: 1px solid var(--border);
}

.saved__note-link:hover { color: var(--primary); border-bottom-color: var(--primary); }

.tagset {
  margin-bottom: 26px;
  scroll-margin-top: 12px;
}

.tagset__label {
  margin-bottom: 10px;
  padding-bottom: 6px;
  font-weight: 600;
  letter-spacing: 1.5px;
  border-bottom: 1px solid var(--border);
}

.tagset__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.tagset__list[hidden] { display: none; }

.tagset__more {
  margin: 10px 0 0;
  font-size: 13px;
  color: var(--muted-foreground);
}

.tag {
  display: inline-flex;
  align-items: baseline;
  gap: 7px;
  padding: 6px 11px;
  border: 1px solid var(--border);
  border-radius: 3px;
  background-color: var(--card);
  font-size: 13px;
  color: var(--foreground);
  text-decoration: none;
  transition: color .12s, border-color .12s;
}

.tag:hover { color: var(--primary); border-color: var(--primary); }

.tag__count {
  font-family: var(--mono);
  font-size: 11px;
  color: var(--muted-foreground);
}

.tagset__list--wide .tag {
  max-width: 22em;
  align-items: center;
}

.tagset__list--wide .tag__name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tagsplit {
  height: 0;
  margin: 4px 0 26px;
  border: 0;
  border-top: 1px solid var(--border);
}

.hits__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 4px;
  padding-bottom: 10px;
}

.hits__title {
  margin: 0;
  font-family: var(--serif);
  font-size: 20px;
  font-weight: 700;
}

.hits__note {
  margin: 8px 0 0;
  font-size: 12px;
  color: var(--muted-foreground);
}

.hits__years {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.hits__year {
  padding: 2px 7px;
  border: 1px solid var(--border);
  border-radius: 3px;
  font-family: var(--mono);
  font-size: 11px;
  color: var(--muted-foreground);
  text-decoration: none;
  transition: color .12s, border-color .12s;
}

.hits__year:hover { color: var(--primary); border-color: var(--primary); }

.hit {
  display: grid;
  grid-template-columns: 88px 1fr;
  gap: 0 14px;
  padding: 13px 0;
  border-bottom: 1px solid var(--border);
}

.hit__date {
  font-family: var(--mono);
  font-size: 12px;
  line-height: 1.95;
  color: var(--muted-foreground);
  text-decoration: none;
  white-space: nowrap;
}

.hit__date:hover { color: var(--primary); }

.hit__list {
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 0;
}

.hit__list li + li { margin-top: 6px; }

.hit__link {
  font-size: 14px;
  line-height: 1.65;
  color: var(--foreground);
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.hit__link:hover { color: var(--primary); border-bottom-color: var(--primary); }

.plate-day + .plate-day { margin-top: 8px; }

.plate-day__head {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px 10px;
  margin: 0;
  padding: 16px 0 0;
}

.plate-day__date {
  font-family: var(--mono);
  font-size: 13px;
  font-weight: 600;
  color: var(--foreground);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: color .12s, border-color .12s;
}

.plate-day__date:hover { color: var(--primary); border-bottom-color: var(--primary); }

.plate-day__meta {
  font-family: var(--mono);
  font-size: 11px;
  font-weight: 400;
  color: var(--muted-foreground);
}

.contents {
  margin-bottom: 30px;
  padding: 14px 18px 16px;
  border: 1px solid var(--border);
  border-radius: 3px;
  background-color: var(--card);
}

.contents__label { margin-bottom: 10px; }

.contents__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 7px 20px;
}

.contents__item {
  display: flex;
  gap: 8px;
  min-width: 0;
}

.contents__index {
  font-family: var(--mono);
  font-size: 11px;
  color: var(--muted-foreground);
  padding-top: 2px;
  flex-shrink: 0;
}

.contents__link {
  font-size: 13px;
  line-height: 1.6;
  color: var(--foreground);
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contents__link:hover { color: var(--primary); }

.report {
  padding: 16px 0;
  border-bottom: 1px solid var(--separator);
  scroll-margin-top: 16px;
}

.report__main { display: flow-root; }

.report__head { margin-bottom: 14px; }

.report__byline {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
}

.report__source {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.5px;
  padding: 2px 7px;
  border-radius: 2px;
  font-family: var(--mono);
  background-color: color-mix(in srgb, var(--primary) 10%, transparent);
  color: var(--primary);
  border: 1px solid color-mix(in srgb, var(--primary) 25%, transparent);
}

.report__time {
  font-size: 11px;
  font-family: var(--mono);
  color: var(--muted-foreground);
}

.report__origin {
  font-size: 11px;
  font-family: var(--mono);
  color: var(--muted-foreground);
  text-decoration: none;
  border-bottom: 1px solid var(--border);
}

.report__origin:hover { color: var(--primary); }

.report__title {
  margin: 0;
  font-family: var(--serif);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.45;
  color: var(--foreground);
}

.chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 14px;
}

.chips__tag {
  padding: 2px 8px;
  border: 1px solid var(--border);
  border-radius: 10px;
  font-size: 11px;
  color: var(--muted-foreground);
  text-decoration: none;
  transition: color .12s, border-color .12s;
}

.chips__tag:hover { color: var(--primary); border-color: var(--primary); }

.report__brief {
  margin: 0 0 16px;
  padding: 10px 14px;
  background-color: var(--card);
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: .06em;
  color: var(--secondary-foreground);
}

.report__body {
  font-size: 15px;
  line-height: 1.5;
  letter-spacing: .06em;
  color: var(--foreground);
}

.report__body p {
  margin: 0 0 12px;
  text-align: justify;
}

.report__body p:last-child { margin-bottom: 0; }

.hits__note .en,
.page__notice .en {
  display: block;
  margin-top: 4px;
  margin-left: 0;
  font-size: 0.95em;
}

.page__tab {
  font-family: var(--serif);
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -0.3px;
  color: var(--muted-foreground);
  text-decoration: none;
  border-bottom: 1px solid var(--border);
  transition: color .12s, border-color .12s;
}

.page__tab:hover { color: var(--primary); border-bottom-color: var(--primary); }

.page__tab--cls::after,
.page__tab--bill::after { content: " \2192"; }
.page__tab--picks::before,
.page__tab--limit::before { content: "\2190 "; }

.tab-anchor { display: block; height: 0; }

.tab-panel__lede { margin-bottom: 14px; }

@supports selector(:has(*)) {
  .tab-panel--cls,
  .tab-panel--bill { display: none; }
  .page:has(.cls-on:target) .tab-panel--cls,
  .page:has(.bill-on:target) .tab-panel--bill { display: block; }

  .page:has(.cls-on:target):not(.page--find) .tab-panel--home,
  .page:has(.bill-on:target):not(.page--find) .tab-panel--home { display: none; }
  .page--find .tab-panel--cls,
  .page--find .tab-panel--bill { display: block; }

  .page__tab--picks,
  .page__tab--limit { display: none; }
  .page:has(.cls-on:target) .page__tab--cls,
  .page:has(.bill-on:target) .page__tab--bill { display: none; }
  .page:has(.cls-on:target) .page__tab--picks,
  .page:has(.bill-on:target) .page__tab--limit { display: inline; }
}

.flash {
  padding: 14px 0;
  border-bottom: 1px solid var(--separator);
  scroll-margin-top: 16px;
  font-size: 17px;
  line-height: 1.5;
}

.flash__time {
  margin-right: 8px;
  font-family: var(--mono);
  font-size: 11px;
  white-space: nowrap;
  color: var(--muted-foreground);
}

.flash__source {
  display: inline-block;
  margin-right: 6px;
  padding: 1px 6px;
  border: 1px solid var(--border);
  border-radius: 4px;
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  vertical-align: 2px;
  white-space: nowrap;
  color: var(--muted-foreground);
}

.flash__title {
  display: inline;
  margin: 0;
  font-family: var(--serif);
  font-size: 14px;
  font-weight: 600;
  color: var(--foreground);
}

.flash__brief {
  margin: 6px 0 0 8px;
  font-size: 13.5px;
  line-height: 1.5;
  letter-spacing: .08em;
  color: var(--secondary-foreground);
  text-align: justify;
}

.flash__stocks {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 8px 0 0;
}

.flash__stock {
  padding: 2px 8px;
  border: 1px solid var(--border);
  border-radius: 2px;
  background-color: var(--card);
  font-size: 12px;
  line-height: 1.6;
  color: var(--secondary-foreground);
  text-decoration: none;
  transition: color .12s, border-color .12s;
}

.flash__stock:hover { color: var(--primary); border-color: var(--primary); }

.flash__stock i {
  margin-left: 5px;
  font-family: var(--mono);
  font-style: normal;
  font-size: 11px;
  color: var(--muted-foreground);
}

.stock {
  padding: 15px 0;
  border-bottom: 1px solid var(--separator);
  scroll-margin-top: 16px;
}

.stock__head {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px 9px;
  margin-bottom: 7px;
}

.stock__boards {
  font-family: var(--mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.5px;
  padding: 2px 7px;
  border-radius: 2px;
  white-space: nowrap;
  background-color: var(--muted);
  color: var(--muted-foreground);
  border: 1px solid var(--border);
}

.stock__boards--run {
  background-color: color-mix(in srgb, var(--primary) 12%, transparent);
  color: var(--primary);
  border-color: color-mix(in srgb, var(--primary) 30%, transparent);
}

.stock__name {
  margin: 0;
  font-family: var(--serif);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--foreground);
}

.stock__code {
  font-family: var(--mono);
  font-size: 12px;
  color: var(--muted-foreground);
}

.stock__code--link {
  color: var(--secondary-foreground);
  text-decoration: none;
  border-bottom: 1px dotted var(--muted-foreground);
  transition: color .12s, border-color .12s;
}

.stock__code--link:hover { color: var(--primary); border-bottom-color: var(--primary); }

.stock__plate {
  font-size: 11px;
  padding: 1px 8px;
  border: 1px solid var(--border);
  border-radius: 10px;
  color: var(--muted-foreground);
}

.stock__plate--link {
  color: var(--secondary-foreground);
  text-decoration: none;
  transition: color .12s, border-color .12s;
}

.stock__plate--link:hover { color: var(--primary); border-color: var(--primary); }

.stock__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  margin-bottom: 9px;
  font-family: var(--mono);
  font-size: 11.5px;
  color: var(--secondary-foreground);
}

.stock__stat i {
  margin-right: 5px;
  font-style: normal;
  color: var(--muted-foreground);
}

.stock__stat--warn { color: var(--primary); }

.stock__reason {
  font-size: 13.5px;
  line-height: 1.5;
  letter-spacing: .06em;
  color: var(--foreground);
  text-align: justify;
}

.stock__reason p { margin: 0 0 6px; }
.stock__reason p:last-child { margin-bottom: 0; }

.stock__plate-reason,
.plate-day__reason {
  margin-top: 8px;
  padding-left: 10px;
  border-left: 2px solid var(--border);
  font-size: 12.5px;
  line-height: 1.5;
  letter-spacing: .06em;
  color: var(--muted-foreground);
}

.stock__plate-reason p,
.plate-day__reason p { margin: 0; }

.plate-day__reason { margin-bottom: 4px; }

.hk {
  margin-top: 26px;
  padding-top: 18px;
  border-top: 2px solid var(--border);
}

.hk__title {
  margin: 0 0 5px;
  font-family: var(--serif);
  font-size: 19px;
  font-weight: 700;
}

.hk__note {
  margin: 0 0 12px;
  font-size: 12px;
  line-height: 1.5;
  color: var(--muted-foreground);
}

.hk-item {
  padding: 11px 0;
  border-bottom: 1px solid var(--border);
  scroll-margin-top: 16px;
}

.hk-item__head {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px 9px;
  margin-bottom: 6px;
}

.hk-item__head .bookmark {
  margin-left: auto;
  align-self: center;
}

.hk-item__change {
  font-family: var(--mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.5px;
  padding: 2px 7px;
  border-radius: 2px;
  white-space: nowrap;
  background-color: color-mix(in srgb, var(--primary) 12%, transparent);
  color: var(--primary);
  border: 1px solid color-mix(in srgb, var(--primary) 30%, transparent);
}

.hk-item__name {
  margin: 0;
  font-family: var(--serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--foreground);
}

.hk-item__code {
  font-family: var(--mono);
  font-size: 12px;
  color: var(--muted-foreground);
}

.hk-item .stock__stats { margin-bottom: 0; }

.fold__state {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
}

.fold__body {

  max-height: 6em;
  overflow: hidden;
  overflow: clip;
  mask-image: linear-gradient(to bottom, #000 70%, transparent 100%);
  -webkit-mask-image: linear-gradient(to bottom, #000 70%, transparent 100%);
}

.fold__state:checked ~ .fold__body {
  max-height: none;
  mask-image: none;
  -webkit-mask-image: none;
}

.fold__toggle {
  display: inline-flex;
  align-items: center;
  margin-top: 2px;
  padding: 4px 12px;
  cursor: pointer;
  border: 1px solid var(--border);
  border-radius: 3px;
  background-color: var(--card);
  font-family: var(--mono);
  font-size: 11px;
  color: var(--muted-foreground);
  transition: color .12s, border-color .12s;
}

.fold__toggle:hover {
  color: var(--primary);
  border-color: var(--primary);
}

.fold__toggle::after { content: '展开全文 Expand ▾'; }
.fold__state:checked ~ .fold__toggle::after { content: '收起 Collapse ▴'; }

.fold__state:focus-visible ~ .fold__toggle {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

.co-summary {
  margin-top: 14px;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: .06em;
  color: var(--secondary-foreground);
  text-align: justify;
}

.co-summary p { margin: 0 0 0px; }
.co-summary p:last-child { margin-bottom: 0; }

.company-chart__toggle {
  padding: 0;
  font: inherit;
  color: var(--muted-foreground);
  background: none;
  border: 0;
  border-bottom: 1px solid var(--border);
  cursor: pointer;
}

.company-chart__toggle::after {
  content: ' ▾';
  color: var(--muted-foreground);
}

.company-chart__toggle[aria-expanded='true']::after { content: ' ▴'; }

.company-chart {
  width: min(100%, 506px);
  margin-top: 14px;
}

.company-chart__image {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--border);
}

.company-chart__source,
.company-chart__status {
  margin: 5px 0 0;
  font-size: 11px;
  color: var(--muted-foreground);
}

.company-chart__remember {
  margin-left: 8px;
  white-space: nowrap;
  cursor: pointer;
}

.company-chart__remember input {
  margin: 0 2px 0 0;
  accent-color: var(--primary);
  vertical-align: -1px;
}

.co-toc {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin-top: 14px;
}

.co-toc .page__title-alt {
  font-size: 12px;
}

.co-section {
  margin-bottom: 30px;

  scroll-margin-top: 12px;
}

.co-section--row {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 8px 12px;
  padding-bottom: 7px;
  border-bottom: 1px solid var(--border);
}

.co-section--row .co-section__title {
  margin: 0;
  padding: 0;
  border: none;
  font-family: inherit;
  font-size: 14px;
  font-weight: 400;
}

.co-section__title {
  margin: 0 0 12px;
  padding-bottom: 7px;
  font-family: var(--serif);
  font-size: 19px;
  font-weight: 700;
  border-bottom: 1px solid var(--border);
}

.co-section__title--linked {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.co-section__more {
  flex: none;
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 400;
  white-space: nowrap;
}

.co-section__note {
  font-family: var(--sans);
  font-size: 12px;
  font-weight: 400;
  color: var(--muted-foreground);
  white-space: nowrap;
}

.co-kv {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 22px;
  margin: 0 0 14px;
}

.co-kv__row {
  display: grid;
  grid-template-columns: 7.5em minmax(0, 1fr);
  gap: 10px;
  padding: 5px 0;
  border-bottom: 1px dotted var(--border);
  font-size: 13px;
  line-height: 1.7;
}

.co-kv__row--wide {
  grid-template-columns: 10em minmax(0, 1fr);
}

.co-kv__row--wider {
  grid-template-columns: 12em minmax(0, 1fr);
}

.co-kv__row--wide dt,
.co-kv__row--wider dt { white-space: nowrap; }

.co-kv__row--full { grid-column: 1 / -1; }

.co-kv dt {
  color: var(--muted-foreground);

  overflow-wrap: anywhere;
}

.co-kv dd {
  margin: 0;
  color: var(--foreground);
  overflow-wrap: anywhere;
}

.co-kv__prose {
  line-height: 1.7;
  text-align: justify;
}

.co-kv__prose p { margin: 0 0 6px; }
.co-kv__prose p:last-child { margin-bottom: 0; }

.co-scroll {
  overflow-x: auto;
  margin-bottom: 12px;
  border: 1px solid var(--border);
  border-radius: 3px;
  background-color: var(--card);
}

.co-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12.5px;
  line-height: 1.4;
}

.co-table th,
.co-table td {
  padding: 6px 10px;
  text-align: left;
  white-space: nowrap;
  border-bottom: 1px solid var(--border);
}

.co-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  background-color: var(--secondary);
  font-weight: 500;
  font-size: 11.5px;
  color: var(--secondary-foreground);

  white-space: normal;
  line-height: 1.3;
  vertical-align: bottom;
}

.co-table__unit {
  display: block;
  font-weight: 400;
  font-size: 10.5px;
}

.co-table__sub {
  font-family: var(--mono);
  letter-spacing: 0;
  color: var(--muted-foreground);
}

.co-table tbody tr:last-child th,
.co-table tbody tr:last-child td { border-bottom: 0; }

.co-table tbody tr:hover td,
.co-table tbody tr:hover th { background-color: var(--secondary); }

.co-table__num {
  font-family: var(--mono);
  font-size: 11.5px;
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.co-sort {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  background: none;
  border: 0;
  cursor: pointer;
}

.co-sort:hover { color: var(--primary); }

.co-sort:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

.co-sort__arrow {
  margin-left: 3px;
  font-family: var(--mono);
  opacity: 0.35;
}

.co-sort__arrow::after { content: '↕'; }

.co-sort:hover .co-sort__arrow { opacity: 0.7; }

th[aria-sort='descending'] .co-sort__arrow,
th[aria-sort='ascending'] .co-sort__arrow {
  opacity: 1;
  color: var(--primary);
}

th[aria-sort='descending'] .co-sort__arrow::after { content: '↓'; }
th[aria-sort='ascending'] .co-sort__arrow::after { content: '↑'; }

.co-table__mark {
  margin-left: 0.25em;
  font-size: 11px;
  color: var(--muted-foreground);
  cursor: help;
}

.co-table tbody tr:has(.co-table__mark--exit) {
  opacity: 0.68;
}

.co-table tbody tr:not(:has(.co-table__mark--exit)) + tr:has(.co-table__mark--exit) td {
  border-top: 2px solid var(--border);
}

.co-table--ccass th[title="broker_name"],
.co-table--ccass tbody td:first-child {

  white-space: normal;
  line-height: 1.35;
  vertical-align: top;
}

.co-table__wrap { white-space: normal; }

.co-table__wrap > div {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;

  white-space: normal;
}

.co-table__wrap--name > div {
  min-width: 8em;
  max-width: 14em;
}

.co-table__wrap--role > div {
  min-width: 6em;
  max-width: 12em;
}

.co-table__subtext {
  display: block;
  margin-top: 2px;
  font-family: var(--mono);
  font-size: 10.5px;
  line-height: 1.3;
  color: var(--muted-foreground);
  white-space: nowrap;
}

.co-section#aperson .co-table td:nth-child(2),
.co-section#hperson .co-table td:nth-child(2) {
  white-space: normal;
}

.co-table__wrap--text > div {
  min-width: 20em;
  max-width: 42em;
}

.co-section#coretheme_boardtype .co-table__wrap--text > div {
  max-width: none;
}

.co-section#aperson .co-table th:first-child,
.co-section#aperson .co-table td:first-child,
.co-section#hperson .co-table th:first-child,
.co-section#hperson .co-table td:first-child {
  width: 7em;
  max-width: 7em;
  white-space: normal;
  overflow-wrap: anywhere;
  vertical-align: middle;
}

section[id="aperson"] .co-table__wrap--text > div,
section[id="hperson"] .co-table__wrap--text > div {
  -webkit-line-clamp: 4;
}

.co-unclamp {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
}

.co-unclamp:checked ~ .co-fold .co-table__wrap--text > div {
  -webkit-line-clamp: none;

  min-width: 34em;
  max-width: 48em;
}

.co-unclamp:checked ~ .co-fold .co-table__wrap--name > div,
.co-unclamp:checked ~ .co-fold .co-table__wrap--role > div {
  -webkit-line-clamp: none;
}

.co-unclamp__toggle {
  margin-left: 6px;
  cursor: pointer;
  font-family: var(--mono);
  color: var(--secondary-foreground);
}

.co-unclamp__toggle:hover { color: var(--primary); }

.co-unclamp__toggle::after { content: '展开 ▾'; }

.co-unclamp:checked ~ .co-fold .co-unclamp__toggle::after { content: '收起 ▴'; }

.co-unclamp:focus-visible ~ .co-fold .co-unclamp__toggle {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

.co-table--pivot th[scope='row'] {
  position: sticky;
  left: 0;
  z-index: 1;
  background-color: var(--card);
  font-weight: 400;
  color: var(--secondary-foreground);
}

.co-table--pivot tbody tr:hover th[scope='row'] { background-color: var(--secondary); }

.co-subtitle {
  margin: 16px 0 7px;
  font-size: 13px;
  font-weight: 600;
  color: var(--secondary-foreground);
}

.co-fold { margin-bottom: 12px; }

.co-fold__state {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
}

.co-fold__body--clip tbody tr:nth-child(n + 19) { display: none; }

.co-fold--finance .co-fold__body--clip tbody tr:nth-child(n + 13) { display: none; }

.co-fold__state:checked ~ .co-fold__body--clip tbody tr { display: table-row; }

.co-fold .co-scroll { margin-bottom: 0; }

.co-fold__body--clip .co-scroll { border-bottom-style: dashed; }

.co-fold__state:checked ~ .co-fold__body--clip .co-scroll { border-bottom-style: solid; }

.co-fold__toggle {
  display: inline-flex;
  align-items: center;
  margin-top: 6px;
  padding: 4px 12px;
  cursor: pointer;
  border: 1px solid var(--border);
  border-radius: 3px;
  background-color: var(--card);
  font-family: var(--mono);
  font-size: 11px;
  color: var(--secondary-foreground);
}

.co-fold__toggle:hover {
  color: var(--primary);
  border-color: var(--primary);
}

.co-fold__toggle::after { content: '展开全部 Expand ▾'; }
.co-fold__state:checked ~ .co-fold__toggle::after { content: '收起 Collapse ▴'; }

.co-fold__state:focus-visible ~ .co-fold__toggle {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

.co-prose__title {
  margin: 16px 0 6px;
  font-size: 14px;
  font-weight: 600;
  color: var(--secondary-foreground);
}

.co-prose {
  font-size: 13.5px;
  line-height: 1.6;
  letter-spacing: .06em;
  color: var(--foreground);
  text-align: justify;
}

.co-prose p { margin: 0 0 4px; }
.co-prose p:last-child { margin-bottom: 0; }

.co-note {
  margin: 0 0 12px;
  font-size: 12px;
  line-height: 1.7;
  color: var(--muted-foreground);
}

.co-note__hl { color: var(--primary); }

.bill { table-layout: fixed; }

.bill__net--down { color: var(--down); }

.co-table th.bill__dept,
.co-table td.bill__dept {
  white-space: normal;
  overflow-wrap: break-word;
  line-height: 1.45;
}

.bill .bill__date {
  width: 7.5em;
  white-space: nowrap;
  padding-left: 8px;
  padding-right: 8px;
}

.bill .co-table__num {
  width: 5.5em;
  white-space: nowrap;
  padding-left: 8px;
  padding-right: 8px;
}

.bill tbody tr.bill-on:has(+ tr:not(.bill-on)) td {
  border-bottom: 0;
  padding-bottom: 2px;
}

.co-table td.bill__stocks {
  padding-top: 0;
  white-space: normal;
  line-height: 1.9;
}

.bill tbody tr.bill-on:hover + tr:not(.bill-on) td,
.bill tbody tr.bill-on:has(+ tr:not(.bill-on):hover) td {
  background-color: var(--secondary);
}

.bill__stock {
  display: inline-block;
  white-space: nowrap;
  margin: 1px 4px 1px 0;
  padding: 1px 8px;
  border: 1px solid var(--border);
  border-radius: 10px;
  font-size: 11px;
  color: var(--muted-foreground);
  text-decoration: none;
  transition: color .12s, border-color .12s;
}

a.bill__stock { color: var(--secondary-foreground); }
a.bill__stock:hover { color: var(--primary); border-color: var(--primary); }

.co-find {
  margin: 0 0 16px;
}

.co-find__label {
  display: block;
  margin-bottom: 8px;
  font-size: 12px;
  letter-spacing: .04em;
  color: var(--muted-foreground);
}

.co-find__bar {
  display: flex;
  align-items: center;
  gap: 10px;
}

.co-find__bar .co-find__label {
  flex: none;
  margin-bottom: 0;
  white-space: nowrap;
  font-size: 14px;
  color: var(--foreground);
}

.co-find__field {
  position: relative;
  flex: 1 1 12em;
  max-width: 22em;
  min-width: 0;
}

.co-find__field::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 50%;
  width: 14px;
  height: 14px;
  transform: translateY(-50%);
  pointer-events: none;
  background-color: var(--muted-foreground);
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='6.9' cy='6.9' r='4.6'/%3E%3Cpath d='m10.5 10.5 3.3 3.3'/%3E%3C/g%3E%3C/svg%3E");
  mask-size: 100% 100%;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='6.9' cy='6.9' r='4.6'/%3E%3Cpath d='m10.5 10.5 3.3 3.3'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
}

.co-find__input {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 7px 14px 7px 34px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background-color: var(--card);
  font-family: inherit;
  font-size: 15px;
  color: var(--foreground);
}

.co-find__input:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 2px 10px rgba(26, 23, 20, .08);
}

.co-find__input::placeholder {
  font-size: 13px;
  color: var(--muted-foreground);
}

.co-find__status:empty { display: none; }

.co-find__status {
  margin: 8px 0 0;
  font-size: 12px;
  color: var(--muted-foreground);
}

.co-find__results:empty { display: none; }

.co-find__results {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--border);
}

.co-find__group {
  flex: 0 0 100%;
  margin: 6px 0 -2px;
  font-size: 11px;
  letter-spacing: .04em;
  color: var(--muted-foreground);
}

.co-find__group:first-child { margin-top: 0; }

.co-hit {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  padding: 4px 10px;
  border: 1px solid var(--border);
  border-radius: 2px;
  background-color: var(--background);
  font-size: 13px;
  color: var(--foreground);
  text-decoration: none;
  transition: color .12s, border-color .12s;
}

.co-hit:hover { color: var(--primary); border-color: var(--primary); }

.co-hit__code {
  font-family: var(--mono);
  font-style: normal;
  font-size: 11px;
  color: var(--muted-foreground);
}

.co-boards,
.co-names {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
}

.co-board,
.co-name {
  padding: 4px 10px;
  border: 1px solid var(--border);
  border-radius: 2px;
  background-color: var(--card);
  font-size: 13px;
  color: var(--foreground);
  text-decoration: none;
}

.co-name { transition: color .12s, border-color .12s; }
.co-name:hover { color: var(--primary); border-color: var(--primary); }

.co-board i,
.co-name i {
  margin-left: 6px;
  font-family: var(--mono);
  font-style: normal;
  font-size: 11px;
  color: var(--muted-foreground);
}

.co-name b {
  margin-left: 6px;
  font-family: var(--mono);
  font-size: 11px;
  font-weight: 600;
  color: var(--primary);
}

.co-row {
  padding: 11px 0;
  border-bottom: 1px solid var(--separator);
}

.co-row:last-child { border-bottom: 0; }

.co-row__head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 10px;
  margin-bottom: 5px;
}

.co-row__name {
  font-family: var(--serif);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--foreground);
  text-decoration: none;
  transition: color .12s;
}

.co-row__name:hover { color: var(--primary); }

.co-row__code {
  font-family: var(--mono);
  font-size: 12px;
  color: var(--muted-foreground);
  text-decoration: none;
  transition: color .12s;
}

.co-row__code:hover { color: var(--primary); }

.co-row__flag {
  padding: 1px 8px;
  border: 1px solid color-mix(in srgb, var(--primary) 30%, transparent);
  border-radius: 10px;
  background-color: color-mix(in srgb, var(--primary) 10%, transparent);
  font-size: 11px;
  color: var(--primary);
}

.co-row__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  font-family: var(--mono);
  font-size: 11.5px;
  color: var(--secondary-foreground);
}

.co-row__stat i {
  margin-right: 5px;
  font-style: normal;
  color: var(--muted-foreground);
}

.co-row__business {
  margin: 5px 0 0;
  font-size: 13.5px;
  line-height: 1.75;
  color: var(--summary-foreground);
}

.lookup {
  position: fixed;

  z-index: 6;
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border: 1px solid var(--primary);
  border-radius: 2px;
  background-color: var(--primary);
  box-shadow: 0 2px 10px rgba(26, 23, 20, .18);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  color: var(--primary-foreground);
  text-decoration: none;
  white-space: nowrap;

  user-select: none;
  -webkit-user-select: none;
}

.lookup::before {
  content: "";
  flex: none;
  width: .95em;
  height: .95em;
  margin-right: 5px;
  background-color: currentColor;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='6.9' cy='6.9' r='4.6'/%3E%3Cpath d='m10.5 10.5 3.3 3.3'/%3E%3C/g%3E%3C/svg%3E");
  mask-size: 100% 100%;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='6.9' cy='6.9' r='4.6'/%3E%3Cpath d='m10.5 10.5 3.3 3.3'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
}

.lookup[hidden] { display: none; }

.lookup--not {
  border-color: var(--border);
  background-color: var(--card);
  color: var(--foreground);
  font-weight: 500;
}

.lookup--not::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='8' cy='8' r='5.6'/%3E%3Cpath d='M5.2 8h5.6'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='8' cy='8' r='5.6'/%3E%3Cpath d='M5.2 8h5.6'/%3E%3C/g%3E%3C/svg%3E");
}

.lookup:hover { box-shadow: 0 4px 16px rgba(26, 23, 20, .3); }

@media (hover: none) {
  .lookup {
    padding: 10px 16px;
    font-size: 15px;
  }

  .lookup:active { box-shadow: 0 4px 16px rgba(26, 23, 20, .3); }
}

.to-top {
  position: fixed;
  right: 22px;
  bottom: 22px;

  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
  width: 46px;
  height: 46px;
  border: 1px solid var(--border);
  border-radius: 50%;
  background-color: var(--card);
  box-shadow: 0 2px 10px rgba(26, 23, 20, .12);
  color: var(--muted-foreground);
  text-decoration: none;
  transition: color .12s, border-color .12s, background-color .12s;
}

.to-top:hover {
  color: var(--primary);
  border-color: var(--primary);
  background-color: var(--background);
}

.to-top:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

.to-top__arrow {
  font-size: 13px;
  line-height: 1;
}

.to-top__label {
  font-size: 10px;
  line-height: 1;
  letter-spacing: 0.5px;
}

@supports (animation-timeline: scroll()) {
  .to-top {
    animation: to-top-in linear both;
    animation-timeline: --main;

    animation-range: 140px 340px;
  }

  @keyframes to-top-in {
    from { opacity: 0; pointer-events: none; }
    to { opacity: 1; pointer-events: auto; }
  }
}

@media (max-width: 768px) {
  .masthead {
    --masthead-edge: clamp(32px, 6.25vw, 48px);
    padding-left: 0;
  }

  .masthead__drawer {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--masthead-edge);
    height: 100%;
    flex-shrink: 0;
    border-right: 1px solid var(--border);
    cursor: pointer;
  }

  .masthead__drawer-icon {
    position: relative;
    display: block;
    width: clamp(16px, 2.5vw, 19px);
    height: 1.5px;
    border-radius: 1px;
    background-color: var(--foreground);
    transition: background-color .18s;
  }

  .masthead__drawer-icon::before,
  .masthead__drawer-icon::after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 1.5px;
    border-radius: 1px;
    background-color: var(--foreground);
    transition: transform .18s;
  }

  .masthead__drawer-icon::before { top: -5px; }
  .masthead__drawer-icon::after { top: 5px; }

  .drawer__state:checked ~ .masthead .masthead__drawer-icon {
    background-color: transparent;
  }

  .drawer__state:checked ~ .masthead .masthead__drawer-icon::before {
    transform: translateY(5px) rotate(45deg);
  }

  .drawer__state:checked ~ .masthead .masthead__drawer-icon::after {
    transform: translateY(-5px) rotate(-45deg);
  }

  .drawer__state:focus-visible ~ .masthead .masthead__drawer {
    outline: 2px solid var(--ring);
    outline-offset: -2px;
  }

  .masthead__brand { display: none; }
  .masthead__account { width: var(--masthead-edge); }
  .masthead__avatar { display: none; }
  .masthead__mark {
    display: block;
    font-family: var(--sans);
    font-size: clamp(15px, 2.35vw, 18px);
    font-weight: 700;
    line-height: 1;
  }

  .masthead__nav { margin-left: 0; flex: 1; }
  .masthead__tab { min-width: 44px; padding: 0 4px; flex: 1 0 auto; }

  .masthead__tab-zh { font-size: 12px; transform: translateY(4px); }
  .masthead__tab-en { display: none; }
  .finder__dock.masthead__search { display: none; }
  .masthead__search-link {
    display: flex;
    flex: 0 0 40px;
    align-items: center;
    justify-content: center;
    height: 100%;
    margin-left: auto;
    text-decoration: none;
  }
  .masthead__search-link:hover { background-color: var(--secondary); }
  .masthead__search-link:focus-visible {
    outline: 2px solid var(--ring);
    outline-offset: -4px;
  }
  .page__eyebrow-links { gap: 8px; }
  .page__eyebrow-link .en { display: none; }

  .calendar {
    position: fixed;
    top: var(--masthead);
    bottom: 0;
    left: 0;
    z-index: 20;
    width: min(272px, 78vw);
    transform: translateX(-100%);
    transition: transform .22s ease;
  }

  .drawer__state:checked ~ .body .calendar {
    transform: translateX(0);
    box-shadow: 6px 0 24px rgba(26, 23, 20, .18);
  }

  .calendar__scrim {
    display: block;
    position: fixed;
    top: var(--masthead);
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10;
    background-color: rgba(26, 23, 20, .45);
    opacity: 0;
    pointer-events: none;
    transition: opacity .22s ease;
  }

  .drawer__state:checked ~ .body .calendar__scrim {
    opacity: 1;
    pointer-events: auto;
  }

  .daynav { display: block; }

  .page { padding: 22px 16px 56px; }
  .page__header { margin-bottom: 20px; padding-bottom: 14px; }
  .page__title { font-size: 26px; letter-spacing: -0.5px; }
  .page__header--timeline .page__title { font-size: 24px; letter-spacing: -0.3px; }

  .page__title--long { font-size: 19px; letter-spacing: -0.2px; }

  .pager { gap: 8px; }
  .pager__step { gap: 5px; }

  .footer__inner { padding: 12px 16px 14px; }

  .ad { min-height: 250px; padding: 0 16px; }

  .contents { margin-bottom: 24px; padding: 12px 14px 14px; }
  .contents__list { grid-template-columns: 1fr; }

  .hit { grid-template-columns: 1fr; gap: 4px; }
  .hit__date { line-height: 1.4; }

  .report { padding: 22px 0; }
  .report__title { font-size: 17px; }

  .report__origin .en { display: none; }

  .flash { padding: 8px 0; font-size: 14px; }

  .stock { padding: 17px 0; }
  .stock__name { font-size: 17px; }
  .stock__stats { gap: 4px 12px; }

  .co-kv { grid-template-columns: minmax(0, 1fr); }
  .co-kv__row { grid-template-columns: 6.5em minmax(0, 1fr); }
  .co-kv__row--wide { grid-template-columns: 10em minmax(0, 1fr); }
  .co-kv__row--wider { grid-template-columns: 12em minmax(0, 1fr); }
  .co-section__title { font-size: 17px; }

  .co-scroll { max-width: 100%; }

  .to-top {
    right: 14px;
    bottom: 14px;
    width: 42px;
    height: 42px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .calendar, .calendar__scrim, .masthead__drawer-icon,
  .masthead__drawer-icon::before, .masthead__drawer-icon::after,
  .calendar__toggle-icon, .calendar__toggle-icon::before,
  .calendar__toggle-icon::after {
    transition: none;
  }

  .main { scroll-behavior: auto; }
}

@media print {
  .fold__body { max-height: none; mask-image: none; -webkit-mask-image: none; }

  .co-fold .co-fold__body--clip tbody tr { display: table-row; }
  .co-fold--finance .co-fold__body--clip tbody tr:nth-child(n + 13) { display: table-row; }
  .co-fold__body--clip .co-scroll { border-bottom-style: solid; }
  .co-table__wrap > div { -webkit-line-clamp: none; }
  .fold__toggle, .co-fold__toggle, .co-unclamp__toggle { display: none; }
  .calendar, .calendar__toggle, .masthead, .pager, .to-top, .daynav { display: none; }

  .footer-gap { display: none; }

  .shell { height: auto; overflow: visible; }
  .main { overflow: visible; }
  .co-scroll { overflow-x: visible; }

  .co-table thead { display: table-header-group; }
  .co-table tr { break-inside: avoid; }
  .bill tbody tr.bill-on { break-after: avoid; }
  .bill tbody tr.bill-on + tr { break-before: avoid; }
  .co-section__title { break-after: avoid; }

  .ad, .lookup, .co-sort__arrow { display: none; }

  .js .co-print,
  .js .bookmark { display: none; }
}
