/* Right Hand DMS woodblock design system — tokens + base.
   Source of truth: design-mockups/rhd-woodblock (site.css, Components.dc.html).
   Everything is scoped to .rhd: wrap a tree in <RhdRoot> (or add class="rhd") to opt in,
   so the logged-in app keeps its current look until it is moved over screen by screen.
   Tailwind can use the same tokens via the @theme block in styles/main.css. */
.rhd {
  --paper: #f3eada;
  --paper-2: #e8dac0;
  --card: #fbf6ec;
  --ink: #2a1c12;
  --ink-2: #5c4837;
  --rule: #cdb998;
  --amber: #a64f17;
  --on-amber: #fff8ee;
  --ai: #1f3350;
  --on-ai: #f3eada;
  --beni: #b23a28;
  --ok: #47652f;
  --hl: #f4cf8f;
  --shadow: #2a1c12;
  /* App tone washes for banners and tags (design-mockups/app-rebuild/site.css). */
  --amber-wash: #f1e2d2;
  --beni-wash: #f2dfd4;
  --ok-wash: #e5e5d5;
  --ai-wash: #e1dfd9;
  --backdrop: rgba(42, 28, 18, 0.5);
  color-scheme: light;
  --seigaiha: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2748%27 height=%2724%27%3E%3Cg fill=%27none%27 stroke=%27%23fff%27 stroke-opacity=%27.16%27 stroke-width=%271.4%27%3E%3Cpath d=%27M0 24a24 24 0 0 1 48 0M8 24a16 16 0 0 1 32 0M16 24a8 8 0 0 1 16 0M-24 12a24 24 0 0 1 48 0M-16 12a16 16 0 0 1 32 0M-8 12a8 8 0 0 1 16 0M24 12a24 24 0 0 1 48 0M32 12a16 16 0 0 1 32 0M40 12a8 8 0 0 1 16 0%27/%3E%3C/g%3E%3C/svg%3E");
  --grain: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27240%27 height=%27240%27%3E%3Cfilter id=%27n%27%3E%3CfeTurbulence type=%27fractalNoise%27 baseFrequency=%27.85%27 numOctaves=%272%27 stitchTiles=%27stitch%27/%3E%3CfeColorMatrix values=%270 0 0 0 .35 0 0 0 0 .24 0 0 0 0 .12 0 0 0 .08 0%27/%3E%3C/filter%3E%3Crect width=%27100%25%27 height=%27100%25%27 filter=%27url%28%23n%29%27/%3E%3C/svg%3E");
  --wood: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27600%27 height=%27300%27%3E%3Cfilter id=%27w%27%3E%3CfeTurbulence type=%27fractalNoise%27 baseFrequency=%27.004 .09%27 numOctaves=%273%27 seed=%277%27 stitchTiles=%27stitch%27/%3E%3CfeColorMatrix values=%270 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .11 -.02%27/%3E%3C/filter%3E%3Crect width=%27100%25%27 height=%27100%25%27 filter=%27url%28%23w%29%27/%3E%3C/svg%3E");
}
.rhd[data-theme="dark"] {
  --paper: #16110d;
  --paper-2: #241b14;
  --card: #1e1712;
  --ink: #f0e5d1;
  --ink-2: #c4b197;
  --rule: #4a3b2d;
  --amber: #e38a4b;
  --on-amber: #1a120c;
  --ai: #18243a;
  --on-ai: #f0e5d1;
  --beni: #e26a54;
  --ok: #9dbd7e;
  --hl: #6e4b1e;
  --shadow: #000;
  --amber-wash: #3e291b;
  --beni-wash: #3d241d;
  --ok-wash: #2a2f20;
  --ai-wash: #1b2230;
  --backdrop: rgba(0, 0, 0, 0.6);
  color-scheme: dark;
}
@media (prefers-color-scheme: dark) {
  .rhd:not([data-theme="light"]) {
    --paper: #16110d;
    --paper-2: #241b14;
    --card: #1e1712;
    --ink: #f0e5d1;
    --ink-2: #c4b197;
    --rule: #4a3b2d;
    --amber: #e38a4b;
    --on-amber: #1a120c;
    --ai: #18243a;
    --on-ai: #f0e5d1;
    --beni: #e26a54;
    --ok: #9dbd7e;
    --hl: #6e4b1e;
    --shadow: #000;
    --amber-wash: #3e291b;
    --beni-wash: #3d241d;
    --ok-wash: #2a2f20;
    --ai-wash: #1b2230;
    --backdrop: rgba(0, 0, 0, 0.6);
    color-scheme: dark;
  }
}
.rhd,
.rhd * {
  box-sizing: border-box;
}
.rhd {
  min-height: 100vh;
  line-height: normal;
  background-color: var(--paper);
  color: var(--ink);
  font-family: "IBM Plex Sans", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
.rhd {
  background-image: var(--grain);
}
.rhd a {
  color: var(--amber);
  /* Tailwind's preflight strips link underlines; the design keeps the browser default. */
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.rhd a:hover {
  color: var(--beni);
}
.rhd summary {
  list-style: none;
  cursor: pointer;
}
.rhd summary::-webkit-details-marker {
  display: none;
}
.rhd details[open] .rhd-plus {
  transform: rotate(45deg);
}
.rhd input,
.rhd select,
.rhd textarea,
.rhd button {
  font: inherit;
  color: inherit;
}

/* The app's base styles (index.html, styles/main.css) give every heading a fixed ink color,
   tighter tracking and line-height 1.18, and the body 15px type. The design assumes browser
   defaults — headings inherit their section's color (e.g. light text on the indigo band). */
.rhd {
  font-size: 16px;
}
.rhd :is(h1, h2, h3, h4, h5, h6) {
  color: inherit;
  letter-spacing: normal;
  line-height: normal;
}

/* Right Hand DMS woodblock components. Values are the design's, verbatim
   (design-mockups/rhd-woodblock/Components.dc.html + the page drops). */

/* ---------- type ---------- */
.rhd .rhd-mincho {
  font-family: "Shippori Mincho B1", serif;
}
.rhd .rhd-mono {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .rhd-display {
  margin: 0;
  font:
    800 clamp(38px, 5.6vw, 68px) / 1.04 "Shippori Mincho B1",
    serif;
  letter-spacing: -0.015em;
  text-wrap: balance;
}
.rhd .rhd-h1 {
  margin: 0;
  font:
    800 clamp(34px, 4.6vw, 54px) / 1.06 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .rhd-h2 {
  margin: 0;
  font:
    700 clamp(30px, 4vw, 48px) / 1.1 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .rhd-h3 {
  margin: 0;
  font:
    700 28px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-lead {
  margin: 0;
  font:
    400 clamp(17px, 1.6vw, 20px) / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  text-wrap: pretty;
}
.rhd .rhd-body {
  margin: 0;
  font:
    400 16px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-small {
  margin: 0;
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-caps {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-caps--tight {
  letter-spacing: 0.14em;
}

/* ---------- layout ---------- */
.rhd .rhd-container {
  max-width: 1240px;
  margin: 0 auto;
  padding-left: clamp(16px, 4vw, 40px);
  padding-right: clamp(16px, 4vw, 40px);
}
.rhd .rhd-section {
  padding-top: clamp(56px, 8vw, 104px);
  padding-bottom: clamp(56px, 8vw, 104px);
}
.rhd .rhd-rule-bottom {
  border-bottom: 1.5px solid var(--ink);
}

/* ---------- stamps: hanko, section label, grade, frame no. ---------- */
.rhd .rhd-hanko {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  background: var(--beni);
  color: var(--paper);
  font-family: "Shippori Mincho B1", serif;
  font-weight: 800;
  line-height: 1;
  transform: rotate(-3deg);
}
.rhd .rhd-hanko--plain {
  transform: none;
}
.rhd .rhd-stamp {
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
  color: var(--paper);
  background: var(--beni);
  padding: 5px 6px;
  border-radius: 2px;
}
.rhd .rhd-stamp--sm {
  font-size: 14px;
  padding: 6px 7px;
}
.rhd .rhd-label {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.rhd .rhd-label--tight {
  gap: 8px;
}
.rhd .rhd-grade {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 15px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .rhd-frame-no {
  font:
    600 15px "IBM Plex Mono",
    monospace;
  background: var(--hl);
  padding: 6px 9px;
  border: 1.5px dashed var(--beni);
}

/* ---------- buttons ---------- */
.rhd .rhd-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 15px 22px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  font:
    600 16px / 1 "IBM Plex Sans",
    sans-serif;
  text-decoration: none;
  cursor: pointer;
  color: var(--ink);
  background: transparent;
}
.rhd .rhd-btn--sm {
  padding: 12px 18px;
  font-size: 15px;
}
.rhd .rhd-btn--md {
  padding: 14px 20px;
  font-size: 15px;
}
.rhd .rhd-btn--block {
  display: flex;
  width: 100%;
}
.rhd .rhd-btn--primary {
  background: var(--amber);
  color: var(--on-amber);
  box-shadow: 3px 3px 0 var(--shadow);
}
.rhd .rhd-btn--paper {
  background: var(--paper);
  color: var(--ink);
  box-shadow: 3px 3px 0 var(--shadow);
}
.rhd .rhd-btn--onColor {
  color: inherit;
  border-color: currentColor;
}
.rhd .rhd-btn--primary:hover,
.rhd .rhd-btn--paper:hover {
  color: inherit;
  transform: translate(1px, 1px);
  box-shadow: 2px 2px 0 var(--shadow);
}
.rhd .rhd-btn--primary:hover {
  color: var(--on-amber);
}
.rhd .rhd-btn--secondary:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.rhd .rhd-btn--onColor:hover {
  color: inherit;
}

/* ---------- cards / panels ---------- */
.rhd .rhd-card {
  background: var(--card);
  border: 1.5px solid var(--ink);
}
.rhd .rhd-card--shadow-sm {
  box-shadow: 3px 3px 0 var(--shadow);
}
.rhd .rhd-card--shadow {
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .rhd-card--shadow-lg {
  box-shadow: 8px 8px 0 var(--shadow);
}

/* ---------- chips & pills ---------- */
.rhd .rhd-chip {
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
  padding: 6px 8px;
  border: 1px solid var(--rule);
  border-radius: 2px;
}
.rhd .rhd-chip--ink {
  border-color: var(--ink);
}
.rhd .rhd-doc {
  display: inline-flex;
  gap: 7px;
  padding: 7px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  font:
    600 12.5px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .rhd-doc__k {
  font-family: "Shippori Mincho B1", serif;
  color: var(--beni);
}
.rhd .rhd-doc--missing {
  border: 1.5px dashed var(--beni);
  background: transparent;
  color: var(--beni);
}
.rhd .rhd-pill {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 9px;
  border-radius: 20px;
  border: 1px solid transparent;
}
.rhd .rhd-pill--watching {
  border-color: var(--rule);
  color: var(--ink-2);
}
.rhd .rhd-pill--bidding {
  border-color: var(--amber);
  color: var(--amber);
}
.rhd .rhd-pill--won {
  background: var(--ok);
  color: var(--paper);
}
.rhd .rhd-pill--importing {
  background: var(--ai);
  color: var(--on-ai);
}
.rhd .rhd-pill--owned {
  border-color: var(--ink);
}
.rhd .rhd-pill--sold {
  background: var(--ink);
  color: var(--paper);
}

/* ---------- cost line ---------- */
.rhd .rhd-cost-line {
  border: 1.5px solid var(--ink);
  background: var(--card);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  padding: 10px 14px;
}
.rhd .rhd-cost-line__label {
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-cost-line__amount {
  font:
    500 14px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-cost-line__basis {
  font:
    400 11.5px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-cost-line__source {
  font:
    500 11.5px "IBM Plex Sans",
    sans-serif;
  color: var(--amber);
  text-align: right;
}

/* ---------- annotated step & timeline station ---------- */
.rhd .rhd-step {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.rhd .rhd-step__k {
  font:
    700 36px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .rhd-step__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rhd .rhd-step__title {
  font:
    600 18px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-step__text {
  font:
    400 14.5px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-callout {
  color: var(--beni);
  font-weight: 600;
}
.rhd .rhd-station {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  font:
    700 16px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 50%;
}
.rhd .rhd-station--done {
  background: var(--ink);
  color: var(--paper);
}
.rhd .rhd-station--next {
  border: 2px solid var(--ink);
}
.rhd .rhd-station-link {
  flex: 1;
  height: 3px;
  background-image: repeating-linear-gradient(90deg, var(--ink) 0 10px, transparent 10px 16px);
}

/* ---------- FAQ accordion ---------- */
.rhd .rhd-faq {
  border-top: 1.5px solid var(--ink);
  border-bottom: 1px solid var(--rule);
}
.rhd .rhd-faq + .rhd-faq {
  border-top: 0;
}
.rhd .rhd-faq__q {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0;
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-faq__a {
  margin: 0 0 14px;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-faq--lg .rhd-faq__q {
  padding: 18px 0;
  font:
    600 17px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-faq--lg .rhd-faq__a {
  margin: 0 0 18px;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-faq--lg .rhd-plus {
  font-size: 22px;
}
.rhd .rhd-plus {
  font:
    400 20px / 1 "IBM Plex Mono",
    monospace;
  color: var(--amber);
  transition: transform 0.2s;
}

/* ---------- form fields ---------- */
.rhd .rhd-field {
  display: flex;
  flex-direction: column;
  gap: 7px;
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-field__hint {
  font-weight: 400;
  color: var(--ink-2);
  font-size: 12px;
  margin-top: -4px;
}
.rhd .rhd-input {
  height: 48px;
  padding: 0 12px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
  font:
    400 16px "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd .rhd-input--quiet {
  border-color: var(--rule);
}
.rhd .rhd-input--mono {
  font-family: "IBM Plex Mono", monospace;
}
.rhd select.rhd-input {
  padding: 0 10px;
}
.rhd textarea.rhd-input {
  height: auto;
  min-height: 96px;
  padding: 10px 12px;
  resize: vertical;
}
.rhd .rhd-input:focus {
  outline: 3px solid var(--hl);
}
.rhd .rhd-toggle-group {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  border: 0;
  padding: 0;
  margin: 0;
}
.rhd .rhd-toggle {
  min-height: 44px;
  padding: 0 14px;
  border: 1.5px solid var(--rule);
  background: transparent;
  color: var(--ink);
  border-radius: 2px;
  font:
    500 15px "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .rhd-toggle[aria-pressed="true"] {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--paper);
}

/* ---------- bands (indigo wood / amber seigaiha) ---------- */
.rhd .rhd-band-ai {
  background: var(--ai);
  background-image: var(--wood);
  color: var(--on-ai);
}
.rhd .rhd-band-amber {
  background: var(--amber);
  background-image: var(--seigaiha);
  color: var(--on-amber);
}
.rhd .rhd-seigaiha-strip {
  height: 28px;
  background-image: var(--seigaiha);
}

/* ---------- logo ---------- */
.rhd .rhd-logo {
  display: flex;
  align-items: center;
  gap: 11px;
  text-decoration: none;
  color: var(--ink);
  flex-shrink: 0;
}
.rhd .rhd-logo__word {
  font:
    700 19px / 1 "Shippori Mincho B1",
    serif;
  letter-spacing: 0.01em;
}
.rhd .rhd-logo__dms {
  font-family: "IBM Plex Mono", monospace;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.06em;
  border: 1.5px solid var(--ink);
  padding: 3px 5px 2px;
  border-radius: 2px;
  margin-left: 2px;
}

/* ---------- mock browser window (product UI close-ups) ---------- */
.rhd .rhd-window {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  border-radius: 4px;
  overflow: hidden;
}
.rhd .rhd-window__bar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-bottom: 1.5px solid var(--ink);
  background: var(--paper-2);
}
.rhd .rhd-window__dots {
  display: flex;
  gap: 5px;
}
.rhd .rhd-window__dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 1.5px solid var(--ink);
}
.rhd .rhd-window__url {
  flex: 1;
  min-width: 0;
  background: var(--card);
  border: 1px solid var(--rule);
  border-radius: 2px;
  padding: 5px 10px;
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* ---------- seal (rotated ring stamp: 受付, 近日, 先行) ---------- */
.rhd .rhd-seal {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  color: var(--beni);
  border: 2.5px solid var(--beni);
  border-radius: 50%;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 800;
  line-height: 1;
  transform: rotate(-10deg);
}

/* Right Hand DMS — signed-in app components.
   Source of truth: design-mockups/app-rebuild (App-Components.dc.html, App-Sidebar.dc.html and
   the Screen-*.dc.html screens). Everything is scoped to .rhd like the marketing library;
   class names are rhd-* so pages compose them, page-only layout goes in the page's own CSS. */

/* ---------- shell ---------- */
.rhd.rhd-app {
  display: flex;
  align-items: stretch;
  min-height: 100vh;
}
.rhd .rhd-side {
  position: sticky;
  top: 0;
  flex: 0 0 236px;
  width: 236px;
  height: 100vh;
  display: flex;
  flex-direction: column;
  background-color: var(--paper-2);
  background-image: var(--grain);
  border-right: 1.5px solid var(--ink);
}
.rhd .rhd-side__brand {
  height: 64px;
  flex: none;
  padding: 0 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-bottom: 1.5px solid var(--ink);
  text-decoration: none;
  color: var(--ink);
}
.rhd .rhd-side__brand:hover {
  color: var(--ink);
}
.rhd .rhd-brand-mark {
  width: 30px;
  height: 30px;
  flex: none;
  display: grid;
  place-items: center;
  background: var(--beni);
  color: var(--paper);
  font:
    800 19px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 3px;
  box-shadow:
    inset 0 0 0 2px var(--beni),
    inset 0 0 0 3.5px var(--paper);
  transform: rotate(-3deg);
}
.rhd .rhd-brand-name {
  font:
    700 16px / 1 "Shippori Mincho B1",
    serif;
  white-space: nowrap;
}
.rhd .rhd-brand-name b {
  font:
    600 11.5px "IBM Plex Mono",
    monospace;
  letter-spacing: 0.06em;
  border: 1.5px solid var(--ink);
  padding: 2px 4px 1px;
  border-radius: 2px;
}
.rhd .rhd-side__nav {
  flex: 1;
  overflow-y: auto;
  padding: 16px 12px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .rhd-side__group {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.rhd .rhd-side__group-label {
  padding: 0 10px 6px;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-side__item {
  display: flex;
  align-items: center;
  gap: 10px;
  height: 38px;
  padding: 0 10px;
  border: 1.5px solid transparent;
  border-radius: 2px;
  text-decoration: none;
  color: var(--ink);
  font:
    500 14px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-side__item:hover {
  color: var(--ink);
  background: var(--card);
  border-color: var(--rule);
}
.rhd .rhd-side__item[aria-current="page"] {
  border-color: var(--ink);
  background: var(--card);
  box-shadow: 3px 3px 0 var(--shadow);
  font-weight: 600;
}
.rhd .rhd-side__k {
  width: 28px;
  flex: none;
  font:
    700 11px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .rhd-side__label {
  flex: 1;
}
.rhd .rhd-count {
  min-width: 22px;
  height: 20px;
  padding: 0 6px;
  display: inline-grid;
  place-items: center;
  background: var(--ink);
  color: var(--paper);
  font:
    600 11px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 10px;
}
.rhd .rhd-count--hot {
  background: var(--beni);
}
/* Amber = waiting on you to do something (a sheet to fetch); beni stays "new". */
.rhd .rhd-count--amber {
  background: var(--amber);
  color: var(--on-amber);
}
.rhd .rhd-side__foot {
  flex: none;
  border-top: 1.5px solid var(--ink);
  padding: 14px 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .rhd-side__user {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.rhd .rhd-avatar {
  width: 34px;
  height: 34px;
  flex: none;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--ink);
  background: var(--card);
  font:
    600 12px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 2px;
  text-transform: uppercase;
}
.rhd .rhd-side__who {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.rhd .rhd-side__name {
  font:
    600 13.5px / 1.2 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-side__role {
  font:
    400 12px / 1.2 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rhd .rhd-side__actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.rhd .rhd-theme-btn {
  width: 34px;
  height: 34px;
  border: 1.5px solid var(--rule);
  background: transparent;
  border-radius: 2px;
  cursor: pointer;
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ink);
}
.rhd .rhd-linkbtn {
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  color: var(--amber);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  font:
    500 13.5px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-linkbtn:hover {
  color: var(--beni);
}

/* phone bar + drawer */
.rhd .rhd-phonebar {
  display: none;
}
.rhd .rhd-main {
  flex: 1 1 600px;
  min-width: 0;
  padding: 32px 40px 72px;
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.rhd .rhd-main__inner {
  width: 100%;
  max-width: 1420px;
  display: flex;
  flex-direction: column;
  gap: 28px;
}
@media (max-width: 760px) {
  .rhd.rhd-app {
    flex-direction: column;
  }
  .rhd .rhd-side--desk {
    display: none;
  }
  .rhd .rhd-phonebar {
    position: sticky;
    top: 0;
    z-index: 40;
    height: 56px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 10px 0 14px;
    background-color: var(--paper);
    background-image: var(--grain);
    border-bottom: 1.5px solid var(--ink);
  }
  .rhd .rhd-phonebar .rhd-brand-mark {
    width: 28px;
    height: 28px;
    font-size: 18px;
  }
  .rhd .rhd-phonebar .rhd-brand-name {
    font-size: 15px;
  }
  .rhd .rhd-main {
    padding: 22px 16px 48px;
  }
}
.rhd .rhd-phonebar__btns {
  margin-left: auto;
  display: flex;
  gap: 6px;
}
.rhd .rhd-phonebar .rhd-theme-btn {
  width: 44px;
  height: 44px;
  font-size: 15px;
}
.rhd .rhd-menu-btn {
  height: 44px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1.5px solid var(--ink);
  background: var(--card);
  border-radius: 2px;
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
  cursor: pointer;
}
.rhd .rhd-menu-btn .rhd-count {
  min-width: 20px;
  height: 18px;
  font-size: 10.5px;
}
.rhd .rhd-drawer {
  position: fixed;
  inset: 0;
  z-index: 60;
  display: flex;
}
.rhd .rhd-drawer__panel {
  width: 300px;
  max-width: 84%;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--paper-2);
  background-image: var(--grain);
  border-right: 1.5px solid var(--ink);
  box-shadow: 6px 0 0 var(--shadow);
}
.rhd .rhd-drawer__head {
  height: 56px;
  flex: none;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 10px 0 14px;
  border-bottom: 1.5px solid var(--ink);
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-drawer__head .rhd-brand-mark {
  width: 28px;
  height: 28px;
  font-size: 18px;
}
.rhd .rhd-drawer__head .rhd-menu-btn {
  margin-left: auto;
}
.rhd .rhd-drawer__nav {
  flex: 1;
  overflow: auto;
  padding: 8px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rhd .rhd-drawer__group-label {
  padding: 12px 6px 4px;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-drawer__item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 6px;
  border-bottom: 1px solid var(--rule);
  text-decoration: none;
  color: var(--ink);
  font:
    500 15.5px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-drawer__item .rhd-side__k {
  width: 30px;
  font-size: 12px;
}
.rhd .rhd-drawer__here {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--amber);
}
.rhd .rhd-drawer__foot {
  flex: none;
  border-top: 1.5px solid var(--ink);
  padding: 12px 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .rhd-drawer__scrim {
  flex: 1;
  background: var(--backdrop);
  border: 0;
  cursor: pointer;
}

/* ---------- page header ---------- */
.rhd .rhd-ph {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  align-items: flex-end;
  justify-content: space-between;
  padding-bottom: 22px;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .rhd-ph--card {
  padding: 24px 28px;
  background: var(--card);
  border: 1.5px solid var(--ink);
}
.rhd .rhd-ph__mark {
  position: absolute;
  right: 220px;
  top: -70px;
  font:
    800 230px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ink);
  opacity: 0.045;
  pointer-events: none;
  user-select: none;
}
.rhd .rhd-ph__copy {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  max-width: 760px;
}
.rhd .rhd-ph__eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .rhd-ktag {
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  color: var(--paper);
  background: var(--beni);
  padding: 5px 6px;
  border-radius: 2px;
  white-space: nowrap;
}
.rhd .rhd-ktag--sm {
  font-size: 13px;
  padding: 4px 5px;
}
.rhd .rhd-eyebrow {
  font:
    600 11.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-ph__title {
  margin: 0;
  font:
    800 40px / 1.02 "Shippori Mincho B1",
    serif;
  letter-spacing: -0.01em;
}
.rhd .rhd-ph__sub {
  margin: 0;
  font:
    400 16px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-ph__actions {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.rhd .rhd-crumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  font:
    500 13px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
@media (max-width: 760px) {
  .rhd .rhd-ph__title {
    font-size: 32px;
  }
  .rhd .rhd-ph__mark {
    right: -20px;
    top: -40px;
    font-size: 160px;
  }
}

/* section heading inside a page (Mincho 24px + optional link on the right) */
.rhd .rhd-sh {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px 16px;
}
.rhd .rhd-sh__title {
  margin: 0;
  display: flex;
  align-items: baseline;
  gap: 10px;
  font:
    700 24px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-sh__count {
  font:
    500 13px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-sh__aside {
  font:
    500 13.5px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* ---------- buttons ---------- */
.rhd .rhd-b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 17px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  background: var(--card);
  color: var(--ink);
  box-shadow: 3px 3px 0 var(--shadow);
  font:
    600 14.5px / 1 "IBM Plex Sans",
    sans-serif;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}
.rhd .rhd-b:hover {
  color: var(--ink);
  background: var(--paper);
}
.rhd .rhd-b:active:not(:disabled) {
  transform: translate(2px, 2px);
  box-shadow: 1px 1px 0 var(--shadow);
}
.rhd .rhd-b--primary {
  background: var(--amber);
  color: var(--on-amber);
}
.rhd .rhd-b--primary:hover {
  background: var(--amber);
  color: var(--on-amber);
  filter: brightness(1.06);
}
.rhd .rhd-b--danger {
  background: var(--beni);
  color: #fff8ee;
}
.rhd .rhd-b--danger:hover {
  background: var(--beni);
  color: #fff8ee;
  filter: brightness(1.06);
}
.rhd .rhd-b--paper {
  background: var(--paper);
  border-color: var(--rule);
  box-shadow: none;
}
.rhd .rhd-b--paper:hover {
  background: var(--paper-2);
}
.rhd .rhd-b--ghost {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: var(--amber);
}
.rhd .rhd-b--ghost:hover {
  background: var(--amber-wash);
  color: var(--amber);
}
.rhd .rhd-b--lg {
  padding: 13px 18px;
  font-size: 15px;
}
.rhd .rhd-b--sm {
  padding: 8px 11px;
  font-size: 13px;
  box-shadow: 2px 2px 0 var(--shadow);
}
.rhd .rhd-b--sm.rhd-b--paper,
.rhd .rhd-b--sm.rhd-b--ghost {
  box-shadow: none;
}
.rhd .rhd-b--xs {
  padding: 6px 10px;
  font-size: 12.5px;
  box-shadow: none;
}
.rhd .rhd-b--block {
  display: flex;
  width: 100%;
}
.rhd .rhd-b--flat {
  box-shadow: none;
}
.rhd .rhd-b:disabled,
.rhd .rhd-b[aria-disabled="true"] {
  background: var(--paper-2);
  color: var(--ink-2);
  border: 1.5px dashed var(--rule);
  box-shadow: none;
  cursor: not-allowed;
  filter: none;
}
/* Busy (aria-busy: working, not "not now"): the button keeps its border, fill and shadow, so a
   row of buttons stays one size while one of them runs; only the label dims. */
.rhd .rhd-b[aria-busy="true"]:disabled {
  background: var(--card);
  color: var(--ink-2);
  border: 1.5px solid var(--ink);
  box-shadow: 3px 3px 0 var(--shadow);
  cursor: progress;
}
.rhd .rhd-b--primary[aria-busy="true"]:disabled {
  background: var(--amber);
  color: var(--on-amber);
}
.rhd .rhd-b--sm[aria-busy="true"]:disabled {
  box-shadow: 2px 2px 0 var(--shadow);
}
.rhd .rhd-b--paper[aria-busy="true"]:disabled,
.rhd .rhd-b--ghost[aria-busy="true"]:disabled,
.rhd .rhd-b--xs[aria-busy="true"]:disabled,
.rhd .rhd-b--flat[aria-busy="true"]:disabled {
  box-shadow: none;
}
.rhd .rhd-b__dot {
  flex: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--amber);
  animation: rhd-pulse 1.4s ease-in-out infinite;
}
.rhd .rhd-b__mono {
  font-family: "IBM Plex Mono", monospace;
}
@keyframes rhd-pulse {
  50% {
    opacity: 0.35;
  }
}
.rhd .rhd-b-note {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.rhd .rhd-b-note > span {
  font:
    400 11.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* ---------- tags & status marks ---------- */
.rhd .rhd-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 9px;
  border: 1px solid var(--rule);
  border-radius: 2px;
  color: var(--ink-2);
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}
.rhd .rhd-tag--round {
  border-radius: 20px;
  padding: 6px 10px;
}
.rhd .rhd-tag--plain {
  letter-spacing: 0;
  text-transform: none;
  font-size: 12px;
}
.rhd .rhd-tag--ok {
  border-color: var(--ok);
  color: var(--ok);
  background: var(--ok-wash);
}
.rhd .rhd-tag--okSolid {
  border-color: var(--ok);
  color: var(--paper);
  background: var(--ok);
}
.rhd .rhd-tag--amber {
  border-color: var(--amber);
  color: var(--amber);
  background: var(--amber-wash);
}
.rhd .rhd-tag--amberSolid {
  border-color: var(--amber);
  color: var(--on-amber);
  background: var(--amber);
}
.rhd .rhd-tag--beni {
  border-color: var(--beni);
  color: var(--beni);
  background: var(--beni-wash);
}
.rhd .rhd-tag--beniLine {
  border-color: var(--beni);
  color: var(--beni);
}
.rhd .rhd-tag--ai {
  border-color: var(--ai);
  color: var(--ink);
  background: var(--ai-wash);
}
.rhd .rhd-tag--aiSolid {
  border-color: var(--ai);
  color: var(--on-ai);
  background: var(--ai);
}
.rhd .rhd-tag--ink {
  border-color: var(--ink);
  color: var(--ink);
}
.rhd .rhd-tag--inkSolid {
  border-color: var(--ink);
  color: var(--paper);
  background: var(--ink);
}
.rhd .rhd-tag--muted {
  border-color: var(--paper-2);
  color: var(--ink-2);
  background: var(--paper-2);
}
.rhd .rhd-tag--dashed {
  border-style: dashed;
}
.rhd .rhd-tag--strike {
  text-decoration: line-through;
}
.rhd .rhd-tag__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}
.rhd .rhd-tag__dot--amber {
  background: var(--amber);
}

/* site badge (JCD / JDM / PCJ) */
.rhd .rhd-site {
  display: inline-block;
  font:
    600 11px / 1 "IBM Plex Mono",
    monospace;
  letter-spacing: 0.06em;
  padding: 4px 5px 3px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  color: var(--ink);
  background: var(--card);
  white-space: nowrap;
}
.rhd .rhd-site--internal {
  font-weight: 500;
  border: 1px dashed var(--ink-2);
  color: var(--ink-2);
  padding: 4px 6px 3px;
  letter-spacing: 0;
  background: transparent;
}

/* grade stamp — R / RA in amber */
.rhd .rhd-gm {
  width: 40px;
  height: 40px;
  flex: none;
  display: inline-grid;
  place-items: center;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 15px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .rhd-gm--long {
  font-size: 14px;
}
.rhd .rhd-gm--repair {
  border-color: var(--amber);
  color: var(--amber);
}
.rhd .rhd-gm--sm {
  width: 28px;
  height: 28px;
  border-width: 1.5px;
  font-size: 11px;
}
.rhd .rhd-gm--lg {
  width: 52px;
  height: 52px;
  font-size: 19px;
}

/* recommendation + match meter */
.rhd .rhd-rec {
  display: inline-flex;
  align-items: center;
  padding: 6px 9px;
  border: 1px solid var(--rule);
  border-radius: 2px;
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  white-space: nowrap;
}
.rhd .rhd-rec--bid {
  background: var(--ok);
  border-color: var(--ok);
  color: var(--paper);
}
.rhd .rhd-rec--caution {
  background: var(--amber-wash);
  border-color: var(--amber);
  color: var(--amber);
}
.rhd .rhd-rec--avoid {
  background: var(--beni-wash);
  border-color: var(--beni);
  color: var(--beni);
}
.rhd .rhd-match {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 8px;
  border: 1px solid var(--ink);
  border-radius: 2px;
  font:
    600 12px / 1 "IBM Plex Mono",
    monospace;
  white-space: nowrap;
}
.rhd .rhd-match--weak {
  border-color: var(--rule);
  color: var(--ink-2);
}
.rhd .rhd-match__bar {
  position: relative;
  width: 26px;
  height: 4px;
  background: var(--paper-2);
}
.rhd .rhd-match__fill {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background: var(--ok);
}
.rhd .rhd-match--partial .rhd-match__fill {
  background: var(--amber);
}
.rhd .rhd-match--poor .rhd-match__fill {
  background: var(--beni);
}

/* frame number highlight (app size) */
.rhd .rhd-frame {
  display: inline-block;
  font:
    600 13px "IBM Plex Mono",
    monospace;
  background: var(--hl);
  color: var(--ink);
  padding: 5px 8px;
  border: 1.5px dashed var(--beni);
  white-space: nowrap;
}
.rhd .rhd-mono {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .rhd-muted {
  color: var(--ink-2);
}
.rhd .rhd-code {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  padding: 3px 7px;
  background: var(--hl);
  border: 1px dashed var(--rule);
  color: var(--ink);
}

/* ---------- stage stepper ---------- */
.rhd .rhd-stepper {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  padding: 24px 20px 18px;
}
.rhd .rhd-stepper__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  row-gap: 14px;
}
.rhd .rhd-stepper__stop {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
}
.rhd .rhd-stepper__line {
  position: absolute;
  top: 21px;
  left: calc(50% + 26px);
  right: calc(-50% + 26px);
  height: 3px;
  background: var(--ink);
}
.rhd .rhd-stepper__line--todo {
  height: 0;
  border-top: 2px dashed var(--rule);
  background: none;
}
.rhd .rhd-stepper__dot {
  position: relative;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font:
    700 17px / 1 "Shippori Mincho B1",
    serif;
  background: var(--ink);
  color: var(--paper);
  border: 2px solid var(--ink);
}
.rhd .rhd-stepper__dot--now {
  background: var(--beni);
  border-color: var(--ink);
  box-shadow: 0 0 0 4px var(--beni-wash);
}
.rhd .rhd-stepper__dot--todo {
  background: var(--card);
  color: var(--ink-2);
  border-color: var(--rule);
}
.rhd .rhd-stepper__label {
  font:
    600 12.5px / 1.2 "IBM Plex Sans",
    sans-serif;
  text-align: center;
}
.rhd .rhd-stepper__label--todo {
  color: var(--ink-2);
}
.rhd .rhd-stepper__when {
  font:
    400 11px / 1.2 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  text-align: center;
}
.rhd .rhd-stepper__own {
  grid-column: 3 / 7;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  padding: 0 8%;
}
.rhd .rhd-stepper__own-bracket {
  height: 8px;
  border: 1.5px solid var(--beni);
  border-bottom: 0;
}
.rhd .rhd-stepper__own-label {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--beni);
}
.rhd .rhd-stepper__own-label b {
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  letter-spacing: 0;
}
@media (max-width: 760px) {
  .rhd .rhd-stepper {
    padding: 16px 10px 14px;
  }
  .rhd .rhd-stepper__dot {
    width: 34px;
    height: 34px;
    font-size: 14px;
  }
  .rhd .rhd-stepper__line {
    top: 16px;
    left: calc(50% + 20px);
    right: calc(-50% + 20px);
  }
  .rhd .rhd-stepper__label {
    font-size: 11px;
  }
  .rhd .rhd-stepper__when {
    display: none;
  }
  .rhd .rhd-stepper__own {
    grid-column: 2 / 7;
    padding: 0 4%;
  }
  .rhd .rhd-stepper__own-label {
    gap: 5px;
    font-size: 9.5px;
    letter-spacing: 0.08em;
    white-space: nowrap;
  }
}

/* ---------- panels ---------- */
.rhd .rhd-panel {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  min-width: 0;
}
.rhd .rhd-panel--flat {
  box-shadow: none;
}
.rhd .rhd-panel__band {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 16px;
  background-color: var(--ai);
  background-image: var(--wood);
  color: var(--on-ai);
  font:
    600 11.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.rhd .rhd-panel__band-k {
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  letter-spacing: 0;
}
.rhd .rhd-panel__band-aside {
  margin-left: auto;
  font:
    500 11px / 1 "IBM Plex Mono",
    monospace;
  letter-spacing: 0.1em;
  opacity: 0.85;
}
.rhd .rhd-panel__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  padding: 14px 18px;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .rhd-panel__title {
  margin: 0;
  flex: 1;
  display: flex;
  align-items: center;
  gap: 10px;
  font:
    700 19px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-panel__body {
  padding: 16px 18px;
}
.rhd .rhd-panel__foot {
  padding: 12px 18px;
  border-top: 1px solid var(--rule);
  font:
    400 12.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-rows > * + * {
  border-top: 1px solid var(--rule);
}

/* figures strip */
.rhd .rhd-figs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .rhd-fig {
  padding: 18px 18px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.rhd .rhd-fig + .rhd-fig {
  border-left: 1.5px solid var(--ink);
}
.rhd .rhd-fig__label {
  font:
    600 10.5px / 1.2 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-fig__value {
  font:
    600 30px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .rhd-fig__note {
  font:
    400 13px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
@media (max-width: 760px) {
  .rhd .rhd-figs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .rhd .rhd-fig + .rhd-fig {
    border-left: 0;
  }
  .rhd .rhd-fig:nth-child(even) {
    border-left: 1.5px solid var(--ink);
  }
  .rhd .rhd-fig:nth-child(n + 3) {
    border-top: 1.5px solid var(--ink);
  }
  .rhd .rhd-fig__value {
    font-size: 26px;
  }
}

/* key/value list */
.rhd .rhd-kv {
  display: grid;
  grid-template-columns: minmax(110px, auto) 1fr;
  gap: 8px 16px;
  margin: 0;
  font:
    400 14px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-kv dt {
  color: var(--ink-2);
}
.rhd .rhd-kv dd {
  margin: 0;
  min-width: 0;
}

/* ---------- form controls ---------- */
.rhd .rhd-f {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
  font:
    600 13.5px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-f__hint {
  font:
    400 12px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-f__err {
  font:
    500 12.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--beni);
}
.rhd .rhd-in {
  width: 100%;
  height: 44px;
  padding: 0 12px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
  font:
    400 15px "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd textarea.rhd-in {
  height: auto;
  padding: 10px 12px;
  line-height: 1.5;
  resize: vertical;
}
.rhd .rhd-in--sm {
  height: 36px;
  font-size: 14px;
}
.rhd .rhd-in--mono {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .rhd-in:focus {
  outline: 2px solid var(--amber);
  outline-offset: 1px;
}
.rhd .rhd-in[aria-invalid="true"] {
  border-color: var(--beni);
  background: var(--beni-wash);
}
.rhd .rhd-in:disabled {
  background: var(--paper-2);
  color: var(--ink-2);
  border-style: dashed;
  border-color: var(--rule);
}
.rhd .rhd-sel {
  position: relative;
  display: flex;
}
.rhd .rhd-sel select {
  appearance: none;
  padding-right: 34px;
}
.rhd .rhd-sel__arrow {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 11px;
  pointer-events: none;
}
.rhd .rhd-affix {
  display: flex;
  height: 44px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
}
.rhd .rhd-affix--sm {
  height: 36px;
}
.rhd .rhd-affix__pre {
  min-width: 38px;
  padding: 0 8px;
  display: grid;
  place-items: center;
  border-right: 1px solid var(--rule);
  font:
    600 15px "IBM Plex Mono",
    monospace;
  color: var(--amber);
}
.rhd .rhd-affix input {
  flex: 1;
  min-width: 0;
  padding: 0 10px;
  border: 0;
  background: transparent;
  font:
    600 15px "IBM Plex Mono",
    monospace;
  color: var(--ink);
}
.rhd .rhd-affix:focus-within {
  outline: 2px solid var(--amber);
  outline-offset: 1px;
}
.rhd .rhd-affix input:focus {
  outline: none;
}

/* segmented toggle */
.rhd .rhd-seg {
  display: inline-flex;
  align-self: flex-start;
  flex-wrap: wrap;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  background: var(--paper);
}
.rhd .rhd-seg__opt {
  min-width: 58px;
  height: 38px;
  padding: 0 12px;
  border: 0;
  border-right: 1px solid var(--rule);
  background: transparent;
  color: var(--ink);
  font:
    600 13.5px / 1 "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .rhd-seg__opt:last-child {
  border-right: 0;
}
.rhd .rhd-seg__opt[aria-pressed="true"] {
  background: var(--ink);
  color: var(--paper);
}

/* choice cards ("For: my shop / a customer") */
.rhd .rhd-choices {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 6px;
  padding: 5px;
  margin: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  min-width: 0;
}
.rhd .rhd-choice {
  padding: 11px 12px;
  border: 1px solid var(--rule);
  background: transparent;
  text-align: left;
  cursor: pointer;
  color: var(--ink);
  border-radius: 0;
}
.rhd .rhd-choice[aria-pressed="true"] {
  border: 2px solid var(--amber);
  padding: 10px 11px;
  background: var(--paper);
}
.rhd .rhd-choice__title {
  display: block;
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-choice__desc {
  display: block;
  font:
    400 12.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* chip filters with counts */
.rhd .rhd-fchips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.rhd .rhd-fchip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 32px;
  padding: 0 11px;
  border: 1.5px solid var(--rule);
  background: transparent;
  color: var(--ink);
  font:
    600 13px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
  cursor: pointer;
  white-space: nowrap;
}
.rhd .rhd-fchip[aria-pressed="true"] {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--paper);
}
.rhd .rhd-fchip--mono {
  height: 30px;
  padding: 0 10px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 12.5px;
}
.rhd .rhd-fchip--repair {
  border-color: var(--amber);
  color: var(--amber);
}
.rhd .rhd-fchip--repair[aria-pressed="true"] {
  background: var(--amber);
  border-color: var(--amber);
  color: var(--on-amber);
}
.rhd .rhd-fchip__n {
  font:
    500 11.5px / 1 "IBM Plex Mono",
    monospace;
  opacity: 0.8;
}

/* checkbox + switch */
.rhd .rhd-check {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font:
    500 14px / 1.4 "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .rhd-check input {
  appearance: none;
  flex: none;
  width: 20px;
  height: 20px;
  margin: 0;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
  cursor: pointer;
}
.rhd .rhd-check input:checked {
  background: var(--ink);
}
.rhd .rhd-check input:checked::after {
  content: "✓";
  color: var(--paper);
  font:
    700 12px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-check input:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 2px;
}
.rhd .rhd-switch {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--ink);
  cursor: pointer;
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  text-align: left;
}
.rhd .rhd-switch__track {
  position: relative;
  flex: none;
  width: 42px;
  height: 24px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
}
.rhd .rhd-switch__knob {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 17px;
  height: 17px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  border-radius: 1px;
  transition: left 0.15s;
}
.rhd .rhd-switch[aria-checked="true"] .rhd-switch__track {
  background: var(--ok);
}
.rhd .rhd-switch[aria-checked="true"] .rhd-switch__knob {
  left: 20px;
  background: var(--paper);
}
.rhd .rhd-switch:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

/* combobox (shared Combobox component) */
.rhd .rhd-combo {
  position: relative;
}
.rhd .rhd-combo__list {
  position: absolute;
  z-index: 30;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  max-height: 320px;
  overflow: auto;
  margin: 0;
  padding: 4px;
  list-style: none;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .rhd-combo__group {
  padding: 8px 10px 6px;
  font:
    500 11px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-combo__opt {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 10px;
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
  cursor: pointer;
}
.rhd .rhd-combo__opt[aria-selected="true"],
.rhd .rhd-combo__opt:hover {
  background: var(--paper-2);
}
.rhd .rhd-combo__hint {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-combo__empty {
  padding: 9px 10px;
  font:
    400 13.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-tokens {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  min-height: 44px;
  padding: 6px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  border-radius: 2px;
}
.rhd .rhd-tokens input {
  flex: 1;
  min-width: 80px;
  border: 0;
  background: transparent;
  font:
    400 14px "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd .rhd-tokens input:focus {
  outline: none;
}
.rhd .rhd-token {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 28px;
  padding: 0 4px 0 9px;
  background: var(--card);
  border: 1px solid var(--ink);
  font:
    500 13px "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .rhd-token button {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  background: none;
  font:
    500 13px / 1 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  cursor: pointer;
}

/* inline amount entry (Bid ¥) */
.rhd .rhd-amount {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: stretch;
}
.rhd .rhd-amount .rhd-affix {
  height: 36px;
  border-color: var(--amber);
  box-shadow: 2px 2px 0 var(--shadow);
}
.rhd .rhd-amount .rhd-affix__pre {
  font-size: 14px;
}
.rhd .rhd-amount .rhd-affix input {
  width: 110px;
  font-size: 14px;
}
.rhd .rhd-amount__x {
  width: 36px;
  padding: 0;
  background: var(--paper);
  border: 1.5px solid var(--rule);
  font:
    500 15px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 2px;
  color: var(--ink);
  cursor: pointer;
}

/* ---------- tabs (ledger index tabs) ---------- */
.rhd .rhd-tabs {
  display: flex;
  gap: 4px;
  border-bottom: 1.5px solid var(--ink);
  padding-left: 4px;
  overflow-x: auto;
}
.rhd .rhd-tab {
  position: relative;
  top: 1.5px;
  flex: none;
  height: 42px;
  padding: 0 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1.5px solid var(--rule);
  border-bottom: 1.5px solid var(--ink);
  background: var(--paper-2);
  color: var(--ink);
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  border-radius: 2px 2px 0 0;
  cursor: pointer;
  text-decoration: none;
}
.rhd .rhd-tab:hover {
  color: var(--ink);
}
.rhd .rhd-tab[aria-selected="true"] {
  border-color: var(--ink);
  border-bottom-color: var(--card);
  background: var(--card);
  font-weight: 600;
}
.rhd .rhd-tab__n {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-tabpanel {
  background: var(--card);
  border: 1.5px solid var(--ink);
  border-top: 0;
  padding: 16px 18px;
}

/* ---------- lot card & result card ---------- */
.rhd .rhd-lot {
  min-width: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  display: flex;
  flex-direction: column;
}
.rhd .rhd-photo {
  position: relative;
  aspect-ratio: 4 / 3;
  background: repeating-linear-gradient(135deg, var(--paper-2) 0 8px, var(--card) 8px 16px);
  display: grid;
  place-items: center;
  overflow: hidden;
}
.rhd .rhd-photo > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.rhd .rhd-photo__none {
  font:
    500 11px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-lot .rhd-photo {
  border-bottom: 1.5px solid var(--ink);
  overflow: visible;
}
.rhd .rhd-lot .rhd-photo > img {
  overflow: hidden;
}
.rhd .rhd-photo__when {
  position: absolute;
  left: 8px;
  top: 8px;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 5px 7px;
  background: var(--ai);
  color: var(--on-ai);
  border-radius: 2px;
}
.rhd .rhd-photo__when--past {
  background: var(--paper-2);
  color: var(--ink-2);
  border: 1px solid var(--rule);
}
.rhd .rhd-photo__site {
  position: absolute;
  right: 8px;
  top: 8px;
}
.rhd .rhd-photo__grade {
  position: absolute;
  right: 10px;
  bottom: -14px;
  background: var(--card);
}
.rhd .rhd-photo__count {
  position: absolute;
  left: 8px;
  bottom: 8px;
  font:
    500 11px / 1 "IBM Plex Mono",
    monospace;
  padding: 4px 6px;
  background: var(--card);
  border: 1px solid var(--rule);
}
.rhd .rhd-photo__new {
  position: absolute;
  left: -8px;
  top: -8px;
  font:
    700 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 5px 7px;
  background: var(--beni);
  color: #fff8ee;
  transform: rotate(-4deg);
}
.rhd .rhd-lot__body {
  padding: 14px 14px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}
.rhd .rhd-lot__title {
  font:
    600 15.5px / 1.3 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
  text-decoration: none;
}
.rhd a.rhd-lot__title:hover {
  color: var(--amber);
}
.rhd .rhd-lot__mono {
  font:
    500 12.5px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-lot__meta {
  font:
    400 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-lot__price {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px solid var(--rule);
}
.rhd .rhd-lot__yen {
  font:
    600 17px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-lot__assess {
  font:
    600 12px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-lot__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0 14px 14px;
}
.rhd .rhd-lot__actions .rhd-b {
  flex: 1;
}

.rhd .rhd-result {
  min-width: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  display: flex;
  flex-direction: column;
}
.rhd .rhd-result__top {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 16px;
}
.rhd .rhd-result__photo {
  position: relative;
  flex: 0 0 180px;
  aspect-ratio: 4 / 3;
  border: 1.5px solid var(--ink);
}
.rhd .rhd-result__info {
  flex: 1 1 260px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.rhd .rhd-result__title {
  font:
    600 17px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-result__why {
  margin: 0;
  padding: 0 16px 14px;
  font:
    400 14px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  text-wrap: pretty;
}
.rhd .rhd-bidrange {
  display: grid;
  grid-template-columns: repeat(var(--cells, 3), 1fr);
  border-top: 1.5px solid var(--ink);
  border-bottom: 1px solid var(--rule);
}
.rhd .rhd-bidrange__cell {
  padding: 12px 16px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.rhd .rhd-bidrange__cell + .rhd-bidrange__cell {
  border-left: 1px solid var(--rule);
}
.rhd .rhd-bidrange__cell--target {
  background: var(--amber-wash);
}
.rhd .rhd-bidrange__label {
  font:
    600 10.5px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__cell--target .rhd-bidrange__label {
  color: var(--amber);
}
.rhd .rhd-bidrange__cell--max {
  background: var(--ai-wash);
}
.rhd .rhd-bidrange__cell--max .rhd-bidrange__label {
  color: var(--ai);
}
@media (max-width: 760px) {
  .rhd .rhd-bidrange[data-cells="4"] {
    grid-template-columns: repeat(2, 1fr);
  }
  .rhd .rhd-bidrange[data-cells="4"] .rhd-bidrange__cell:nth-child(3) {
    border-left: none;
  }
  .rhd .rhd-bidrange[data-cells="4"] .rhd-bidrange__cell:nth-child(n + 3) {
    border-top: 1px solid var(--rule);
  }
}
.rhd .rhd-bidrange__yen {
  font:
    600 16px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-bidrange__usd {
  font:
    400 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__profit {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__profit[data-tone="ok"] {
  color: var(--ok, var(--ink));
}
.rhd .rhd-bidrange__profit[data-tone="loss"] {
  color: var(--beni);
}
.rhd .rhd-bidrange__cell--muted .rhd-bidrange__yen {
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__badge {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  padding: 8px 16px;
  border-top: 1px solid var(--rule);
  font:
    400 12.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-bidrange__badge + .rhd-bidrange {
  border-top-width: 1.5px;
}
@media (max-width: 760px) {
  /* An empty range (one cell spanning three) + max bid: stack them. */
  .rhd .rhd-bidrange[data-cells="4"] .rhd-bidrange__cell[data-span="3"] {
    grid-column: 1 / -1 !important;
  }
  .rhd .rhd-bidrange[data-cells="4"] .rhd-bidrange__cell[data-span="3"] + .rhd-bidrange__cell {
    grid-column: 1 / -1;
    border-left: none;
    border-top: 1px solid var(--rule);
  }
}
.rhd .rhd-result__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 12px 16px;
}
.rhd .rhd-result__start {
  margin-right: auto;
  font:
    400 12.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-result__start b {
  font:
    500 12.5px "IBM Plex Mono",
    monospace;
  color: var(--ink);
}
.rhd .rhd-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.rhd .rhd-thumb {
  width: 44px;
  height: 33px;
  padding: 0;
  border: 1px solid var(--rule);
  background: repeating-linear-gradient(135deg, var(--paper-2) 0 5px, var(--card) 5px 10px);
  overflow: hidden;
  cursor: pointer;
}
.rhd .rhd-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.rhd .rhd-thumb--more {
  width: auto;
  padding: 0 8px;
  display: grid;
  place-items: center;
  font:
    500 11px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  background: transparent;
}

/* ---------- data table ---------- */
.rhd .rhd-table {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  overflow-x: auto;
}
.rhd .rhd-table table {
  width: 100%;
  border-collapse: collapse;
}
.rhd .rhd-table th {
  padding: 12px 16px;
  text-align: left;
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--ink-2);
  background: var(--paper-2);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .rhd-table--ai th {
  background-color: var(--ai);
  background-image: var(--wood);
  color: var(--on-ai);
  border-bottom: 0;
}
.rhd .rhd-table th button {
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  cursor: pointer;
}
.rhd .rhd-table td {
  padding: 11px 16px;
  border-bottom: 1px solid var(--rule);
  font:
    400 14px / 1.35 "IBM Plex Sans",
    sans-serif;
  vertical-align: middle;
}
.rhd .rhd-table tbody tr:hover {
  background: var(--paper);
}
.rhd .rhd-table tbody tr[data-href] {
  cursor: pointer;
}
.rhd .rhd-table .num {
  text-align: right;
  font:
    500 13.5px "IBM Plex Mono",
    monospace;
  white-space: nowrap;
}
.rhd .rhd-table th.num {
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
}
.rhd .rhd-table tfoot td {
  padding: 12px 16px;
  border-top: 1.5px solid var(--ink);
  border-bottom: 0;
  background: var(--paper-2);
  font:
    600 13.5px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-table tfoot .rhd-table__foot-label {
  font:
    600 12px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.rhd .rhd-table__car {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.rhd .rhd-table__car b {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-table__car span {
  font:
    500 11.5px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
/* stacked rows on phones: pages render .rhd-stack instead of the table under 760px */
.rhd .rhd-stack {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .rhd-stack__row {
  padding: 12px 14px;
  border-bottom: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .rhd-stack__head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.rhd .rhd-stack__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 14px;
  font:
    400 12.5px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-stack__grid > span {
  display: flex;
  justify-content: space-between;
  gap: 6px;
}
.rhd .rhd-stack__grid b {
  font:
    500 12.5px "IBM Plex Mono",
    monospace;
  color: var(--ink);
}
.rhd .rhd-stack__foot {
  padding: 12px 14px;
  display: flex;
  justify-content: space-between;
  background: var(--paper-2);
  border-top: 1.5px solid var(--ink);
  font:
    600 15px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-desk-only {
  display: block;
}
.rhd .rhd-phone-only {
  display: none;
}
@media (max-width: 760px) {
  .rhd .rhd-desk-only {
    display: none;
  }
  .rhd .rhd-phone-only {
    display: block;
  }
}

/* ---------- banners, progress, toasts, empty, skeleton ---------- */
.rhd .rhd-banner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  padding: 12px 16px;
  background: var(--ai-wash);
  border: 1.5px solid var(--ai);
  color: var(--ink);
}
.rhd .rhd-banner--warn {
  background: var(--amber-wash);
  border-color: var(--amber);
}
.rhd .rhd-banner--error {
  background: var(--beni-wash);
  border-color: var(--beni);
}
.rhd .rhd-banner--ok {
  background: var(--ok-wash);
  border-color: var(--ok);
}
.rhd .rhd-banner__k {
  font:
    700 16px / 1 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-banner--warn .rhd-banner__k {
  color: var(--amber);
}
.rhd .rhd-banner--error .rhd-banner__k {
  color: var(--beni);
}
.rhd .rhd-banner--ok .rhd-banner__k {
  color: var(--ok);
}
.rhd .rhd-banner__text {
  flex: 1 1 320px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  font:
    500 14px / 1.45 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-banner__title {
  font:
    600 14.5px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-banner__body {
  font-weight: 400;
  font-size: 13.5px;
  color: var(--ink-2);
}
.rhd .rhd-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.rhd .rhd-progress {
  height: 14px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  position: relative;
}
.rhd .rhd-progress__fill {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background-color: var(--amber);
  background-image: var(--seigaiha);
  transition: width 0.4s;
}
.rhd .rhd-tally {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--rule);
  border: 1px solid var(--rule);
}
.rhd .rhd-tally__cell {
  background: var(--card);
  padding: 8px 10px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.rhd .rhd-tally__n {
  font:
    600 18px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-tally__label {
  font:
    500 11px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

.rhd .rhd-toasts {
  position: fixed;
  z-index: 120;
  right: 20px;
  bottom: max(20px, env(safe-area-inset-bottom));
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: min(420px, calc(100vw - 32px));
}
.rhd .rhd-toast {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  background: var(--card);
  border: 1.5px solid var(--ok);
  box-shadow: 4px 4px 0 var(--shadow);
  border-radius: 2px;
  color: var(--ink);
}
.rhd .rhd-toast--ink {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
  box-shadow: 4px 4px 0 var(--amber);
}
.rhd .rhd-toast--error {
  border-color: var(--beni);
}
.rhd .rhd-toast__k {
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ok);
}
.rhd .rhd-toast--ink .rhd-toast__k {
  color: var(--hl);
}
.rhd .rhd-toast--error .rhd-toast__k {
  color: var(--beni);
}
.rhd .rhd-toast__text {
  flex: 1;
  font:
    500 14px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-toast__act {
  padding: 0;
  background: none;
  border: 0;
  color: var(--amber);
  font:
    600 13.5px "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .rhd-toast--ink .rhd-toast__act {
  color: var(--hl);
}
/* 44pt targets for the toast's buttons (HIG). */
.rhd .rhd-toast__act,
.rhd .rhd-toast__x {
  min-height: 44px;
  min-width: 44px;
}
.rhd .rhd-toast__x {
  margin: -12px -8px -12px 0;
  padding: 0;
  background: none;
  border: 0;
  color: var(--ink-2);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}
.rhd .rhd-toast--ink .rhd-toast__x {
  color: var(--paper);
}
.rhd .rhd-toast {
  animation: rhd-toast-in 0.18s ease-out;
}
@keyframes rhd-toast-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .rhd .rhd-toast {
    animation: none;
  }
}
@media (max-width: 600px) {
  .rhd .rhd-toasts {
    left: 16px;
    right: 16px;
    max-width: none;
  }
}

.rhd .rhd-empty {
  padding: 36px 24px;
  border: 1.5px dashed var(--ink-2);
  background: var(--card);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center;
}
.rhd .rhd-empty--compact {
  padding: 22px 18px;
  gap: 8px;
}
.rhd .rhd-empty__seal {
  width: 60px;
  height: 60px;
  display: grid;
  place-items: center;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 24px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .rhd-empty--compact .rhd-empty__seal {
  width: 44px;
  height: 44px;
  font-size: 18px;
}
.rhd .rhd-empty__title {
  margin: 0;
  font:
    700 21px / 1.25 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-empty--compact .rhd-empty__title {
  font-size: 18px;
}
.rhd .rhd-empty__body {
  margin: 0;
  max-width: 380px;
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

.rhd .rhd-skel {
  display: block;
  height: 12px;
  background: var(--paper-2);
}
.rhd .rhd-skel--block {
  height: auto;
  aspect-ratio: 16 / 7;
}
.rhd .rhd-skel-btn {
  flex: 1;
  height: 30px;
  border: 1.5px dashed var(--rule);
}

/* ---------- modal & confirm ---------- */
.rhd .rhd-overlay {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 6vh 16px 24px;
  overflow-y: auto;
  background: var(--backdrop);
}
.rhd .rhd-overlay--center {
  align-items: center;
}
.rhd .rhd-modal {
  width: 100%;
  max-width: 460px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  color: var(--ink);
}
.rhd .rhd-modal--md {
  max-width: 620px;
}
.rhd .rhd-modal--lg {
  max-width: 820px;
}
.rhd .rhd-modal--xl {
  max-width: 1040px;
}
.rhd .rhd-modal__head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .rhd-modal__title {
  margin: 0;
  flex: 1;
  min-width: 0;
  font:
    700 20px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-modal__x {
  width: 32px;
  height: 32px;
  flex: none;
  padding: 0;
  background: none;
  border: 1.5px solid var(--rule);
  font:
    500 16px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 2px;
  color: var(--ink);
  cursor: pointer;
}
.rhd .rhd-modal__body {
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.rhd .rhd-modal__foot {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 18px;
  border-top: 1px solid var(--rule);
}
.rhd .rhd-modal__note {
  font:
    400 12.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-confirm {
  width: 100%;
  max-width: 380px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  color: var(--ink);
}
.rhd .rhd-confirm--danger {
  border-color: var(--beni);
}
.rhd .rhd-confirm__head {
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .rhd-confirm__seal {
  width: 30px;
  height: 30px;
  flex: none;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--beni);
  color: var(--beni);
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .rhd-confirm__title {
  margin: 0;
  font:
    700 20px / 1.25 "Shippori Mincho B1",
    serif;
}
.rhd .rhd-confirm__msg {
  margin: 0;
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-confirm__detail {
  margin: 0;
  font:
    500 13px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--ink);
}
.rhd .rhd-confirm__actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 4px;
}

/* ---------- drop zone & upload queue ---------- */
.rhd .rhd-drop {
  padding: 36px 24px;
  border: 2px dashed var(--ink-2);
  background: var(--paper-2);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  text-align: center;
}
.rhd .rhd-drop--over {
  border-color: var(--amber);
  background: var(--amber-wash);
}
.rhd .rhd-drop__k {
  font:
    800 44px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .rhd-drop__title {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .rhd-drop__sub {
  font:
    400 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-queue__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  font:
    500 13px "IBM Plex Mono",
    monospace;
}
.rhd .rhd-queue__status {
  font:
    600 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ok);
  white-space: nowrap;
}
.rhd .rhd-queue__status--bad {
  color: var(--beni);
}

/* ---------- coming soon ---------- */
.rhd .rhd-soon {
  position: relative;
  border: 1.5px dashed var(--ink-2);
  background: transparent;
  padding: 14px 16px;
  color: var(--ink-2);
}
.rhd .rhd-soon--inline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
}
.rhd .rhd-soon__content {
  opacity: 0.55;
  pointer-events: none;
  user-select: none;
}
.rhd .rhd-soon__tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 7px;
  border: 1px dashed var(--ink-2);
  background: var(--card);
  color: var(--ink-2);
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  white-space: nowrap;
}
.rhd .rhd-soon:not(.rhd-soon--inline) > .rhd-soon__tag {
  position: absolute;
  top: -11px;
  right: 12px;
}

/* ---------- misc ---------- */
.rhd .rhd-dot {
  display: inline-block;
  width: 9px;
  height: 9px;
  flex: none;
  border-radius: 50%;
  background: var(--ink-2);
}
.rhd .rhd-dot--amber {
  background: var(--amber);
}
.rhd .rhd-dot--beni {
  background: var(--beni);
}
.rhd .rhd-dot--ok {
  background: var(--ok);
}
.rhd .rhd-err {
  font:
    500 13.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--beni);
}
.rhd .rhd-note {
  font:
    400 13px / 1.45 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .rhd-arrow-link {
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
  white-space: nowrap;
}
.rhd .rhd-iframe {
  width: 100%;
  border: 1px solid var(--rule);
  background: #fff;
}

/* Tailwind palette inside the app, mapped onto the woodblock tokens so any utility class
   left on a not-yet-converted piece still reads in the right inks (and flips for dark). */
.rhd.rhd-app {
  --color-white: var(--card);
  --color-black: var(--ink);
  --color-sumi-50: var(--paper);
  --color-sumi-100: var(--paper-2);
  --color-sumi-200: var(--rule);
  --color-sumi-300: var(--rule);
  --color-sumi-400: var(--ink-2);
  --color-sumi-500: var(--ink-2);
  --color-sumi-600: var(--ink-2);
  --color-sumi-700: var(--ink);
  --color-sumi-800: var(--ink);
  --color-sumi-900: var(--ink);
  --color-washi-50: var(--card);
  --color-washi-100: var(--paper);
  --color-washi-200: var(--paper-2);
  --color-washi-300: var(--rule);
  --color-indigo-jp-50: var(--amber-wash);
  --color-indigo-jp-100: var(--amber-wash);
  --color-indigo-jp-200: var(--amber-wash);
  --color-indigo-jp-300: var(--amber);
  --color-indigo-jp-400: var(--amber);
  --color-indigo-jp-500: var(--amber);
  --color-indigo-jp-600: var(--amber);
  --color-indigo-jp-700: var(--amber);
  --color-indigo-jp-800: var(--amber);
  --color-shu-50: var(--beni-wash);
  --color-shu-100: var(--beni-wash);
  --color-shu-200: var(--beni-wash);
  --color-shu-300: var(--beni);
  --color-shu-400: var(--beni);
  --color-shu-500: var(--beni);
  --color-shu-600: var(--beni);
  --color-shu-700: var(--beni);
  --color-shu-800: var(--beni);
  --color-matcha-50: var(--ok-wash);
  --color-matcha-100: var(--ok-wash);
  --color-matcha-200: var(--ok-wash);
  --color-matcha-300: var(--ok);
  --color-matcha-400: var(--ok);
  --color-matcha-500: var(--ok);
  --color-matcha-600: var(--ok);
  --color-matcha-700: var(--ok);
  --color-matcha-800: var(--ok);
  --color-bg: var(--paper);
  --color-surface: var(--paper-2);
  --color-text: var(--ink);
  --color-accent: var(--amber);
  --color-divider: var(--rule);
}

/* A .rhd scope for overlays mounted outside the app tree (confirm dialog). */
.rhd.rhd-portal {
  min-height: 0;
  background: none;
}

/* ---------- contextual help: HelpTip "?" + bubble, HelpLink ---------- */
.rhd .rhd-helptip {
  display: inline-flex;
  vertical-align: middle;
  margin-left: 6px;
}
.rhd .rhd-helptip__btn,
.rhd .rhd-helplink {
  /* 18px mark, 32px hit area for fingers. */
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 1.5px solid var(--ink-2);
  border-radius: 50%;
  background: var(--card);
  color: var(--ink-2);
  font:
    700 11.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0;
  text-transform: none;
  text-decoration: none;
  cursor: help;
}
.rhd .rhd-helptip__btn::after,
.rhd .rhd-helplink::after {
  content: "";
  position: absolute;
  inset: -8px;
}
.rhd .rhd-helptip__btn:hover,
.rhd .rhd-helptip__btn[aria-expanded="true"],
.rhd .rhd-helplink:hover {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--paper);
}
.rhd .rhd-helptip__btn:focus-visible,
.rhd .rhd-helplink:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 2px;
}
.rhd .rhd-ph__actions .rhd-helplink {
  width: 30px;
  height: 30px;
  font-size: 15px;
  cursor: pointer;
}
.rhd .rhd-helplink--text {
  width: auto;
  height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  color: var(--amber);
  font:
    500 13.5px / 1.3 "IBM Plex Sans",
    sans-serif;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.rhd .rhd-helplink--text::after {
  content: none;
}
.rhd .rhd-helplink--text:hover {
  background: none;
  color: var(--ink);
}
.rhd .rhd-helptip__bubble {
  position: fixed;
  z-index: 95;
  width: max-content;
  max-width: min(300px, calc(100vw - 24px));
  padding: 10px 12px;
  background: var(--ink);
  color: var(--paper);
  border-radius: 2px;
  box-shadow: 4px 4px 0 var(--amber);
  font:
    400 13.5px / 1.45 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0;
  text-transform: none;
  text-align: left;
  white-space: normal;
  pointer-events: auto;
}
.rhd .rhd-helptip__bubble b {
  font-weight: 600;
}

/* Number fields: no spin buttons. They covered the digits in narrow fields (years), and a
   dealer types the number anyway; the keyboard still steps with arrow keys. */
.rhd input[type="number"]::-webkit-inner-spin-button,
.rhd input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.rhd input[type="number"] {
  -moz-appearance: textfield;
  appearance: textfield;
}

/* Route crash screen — replaces the app shell, so it carries its own .rhd root. */
.rhd.ra-crash {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 32px 16px;
}
.rhd .ra-crash__card {
  width: 100%;
  max-width: 560px;
  padding: 32px 28px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
}
.rhd .ra-crash__seal {
  width: 60px;
  height: 60px;
  display: grid;
  place-items: center;
  border: 2px solid var(--beni);
  border-radius: 50%;
  color: var(--beni);
  font:
    700 24px / 1 "Shippori Mincho B1",
    serif;
  transform: rotate(-8deg);
}
.rhd .ra-crash__title {
  margin: 0;
  font:
    700 26px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .ra-crash__sub {
  margin: 0;
  font:
    400 15px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .ra-crash__detail {
  width: 100%;
  margin: 4px 0 0;
  padding: 12px 14px;
  overflow-x: auto;
  text-align: left;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font:
    500 12px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink);
  background: var(--beni-wash);
  border: 1px dashed var(--beni);
}
.rhd .ra-crash__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 12px 18px;
  margin-top: 6px;
}

/* Marketing shell (nav, footer, CTA band). Page layouts live next to each page. */

/* ---------- nav ---------- */
/* The nav carries both layouts so a prerendered page is right at any width before JS runs:
   mk-wide shows above 940px, mk-narrow at 940px and below. */
@media (max-width: 940px) {
  .rhd .mk-wide {
    display: none !important;
  }
}
@media not all and (max-width: 940px) {
  .rhd .mk-narrow {
    display: none !important;
  }
}
.rhd .mk-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background-color: var(--paper);
  background-image: var(--grain);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-topstrip__inner {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding-top: 7px;
  padding-bottom: 7px;
  font:
    500 11px / 1.3 "IBM Plex Mono",
    monospace;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.rhd .mk-navbar {
  height: 70px;
  display: flex;
  align-items: center;
  gap: 28px;
}
.rhd .mk-nav {
  display: flex;
  align-items: center;
  gap: 4px;
  font:
    500 15px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-nav__link {
  padding: 10px 12px;
  color: var(--ink);
  text-decoration: none;
}
.rhd .mk-nav__link:hover {
  color: var(--amber);
}
.rhd .mk-nav__product {
  display: flex;
  align-items: center;
  gap: 6px;
  background: none;
  border: 0;
  padding: 10px 12px;
  cursor: pointer;
  font-weight: 500;
  color: var(--ink);
}
.rhd .mk-dropdown {
  position: absolute;
  top: 100%;
  left: -12px;
  width: 560px;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  padding: 10px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
}
.rhd .mk-dropdown__item {
  display: flex;
  gap: 12px;
  padding: 12px;
  text-decoration: none;
  color: var(--ink);
  border-radius: 2px;
}
.rhd .mk-dropdown__item:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.rhd .mk-dropdown__k {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--beni);
  color: var(--beni);
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 2px;
}
.rhd .mk-dropdown__text {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-dropdown__name {
  font:
    600 14px / 1.2 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-dropdown__line {
  font:
    400 13px / 1.35 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-actions {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 8px;
}
.rhd .mk-theme {
  width: 38px;
  height: 38px;
  border: 1.5px solid var(--rule);
  background: transparent;
  border-radius: 2px;
  cursor: pointer;
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ink);
}
.rhd .mk-theme--narrow {
  width: 44px;
  height: 44px;
}
.rhd .mk-signin {
  padding: 10px 12px;
  color: var(--ink);
  text-decoration: none;
  font:
    500 15px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-menu-btn {
  height: 44px;
  padding: 0 14px;
  border: 1.5px solid var(--ink);
  background: var(--card);
  border-radius: 2px;
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  color: var(--ink);
}
.rhd .mk-menu {
  border-top: 1.5px solid var(--ink);
  background: var(--card);
  padding: 8px 16px 20px;
  max-height: calc(100vh - 100px);
  overflow: auto;
}
.rhd .mk-menu__head {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
  padding: 14px 0 6px;
}
.rhd .mk-menu__item {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  text-decoration: none;
  color: var(--ink);
  border-bottom: 1px solid var(--rule);
  font:
    500 16px / 1.2 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-menu__k {
  width: 28px;
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-menu__links {
  display: flex;
  flex-direction: column;
  padding-top: 8px;
}
.rhd .mk-menu__link {
  min-height: 48px;
  display: flex;
  align-items: center;
  text-decoration: none;
  color: var(--ink);
  border-bottom: 1px solid var(--rule);
  font:
    500 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-menu__link:last-child {
  border-bottom: 0;
}
.rhd .mk-menu__cta {
  margin-top: 12px;
  padding: 15px;
}

/* ---------- CTA band ---------- */
.rhd .mk-cta {
  padding-bottom: 88px;
}
.rhd .mk-cta__panel {
  position: relative;
  overflow: hidden;
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  padding: clamp(32px, 5vw, 56px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.rhd .mk-cta__ghost {
  position: absolute;
  right: -20px;
  bottom: -70px;
  font:
    800 260px / 1 "Shippori Mincho B1",
    serif;
  opacity: 0.12;
  pointer-events: none;
}
.rhd .mk-cta__copy {
  position: relative;
  flex: 1 1 420px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-cta__eyebrow {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.rhd .mk-cta__title {
  margin: 0;
  font:
    700 clamp(28px, 3.6vw, 42px) / 1.12 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-cta__sub {
  margin: 0;
  font:
    400 17px / 1.55 "IBM Plex Sans",
    sans-serif;
  max-width: 560px;
}
.rhd .mk-cta__actions {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* ---------- footer ---------- */
.rhd .mk-footer {
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-footer .rhd-seigaiha-strip {
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}
.rhd .mk-footer__grid {
  padding-top: 56px;
  padding-bottom: 32px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
  gap: 40px;
}
.rhd .mk-footer__brand {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}
.rhd .mk-footer__about {
  margin: 0;
  font:
    400 14px / 1.6 "IBM Plex Sans",
    sans-serif;
  opacity: 0.85;
  text-wrap: pretty;
}
.rhd .mk-footer__contact {
  font:
    500 13px / 1.6 "IBM Plex Mono",
    monospace;
}
.rhd .mk-footer__col {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font:
    400 14px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-footer__head {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: 0.75;
  margin-bottom: 6px;
}
.rhd .mk-footer__col a,
.rhd .mk-footer__col a:hover {
  color: inherit;
  text-decoration: none;
}
.rhd .mk-footer__base {
  padding-top: 18px;
  padding-bottom: 28px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  font:
    400 12px / 1.5 "IBM Plex Mono",
    monospace;
  opacity: 0.8;
}

/* Blog index and article pages. Article bodies are plain HTML (h2, p, ul, ol, table,
   blockquote) styled here, so posts are written as prose rather than components. */

.mk-blog,
.mk-post {
  padding: 56px 0 72px;
}

.mk-blog__title,
.mk-post__title {
  margin: 18px 0 0;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 800;
  font-size: clamp(32px, 5vw, 52px);
  line-height: 1.12;
  letter-spacing: -0.01em;
  color: var(--ink);
  max-width: 22ch;
  text-wrap: balance;
}

.mk-blog__lead {
  margin: 18px 0 0;
  max-width: 62ch;
  font-size: 18px;
  line-height: 1.6;
  color: var(--ink);
}

.mk-blog__grid {
  margin-top: 36px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
}

.mk-blog__card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 24px 24px 22px;
  background: var(--card);
  border: 1.5px solid var(--rule);
  border-radius: 4px;
  color: var(--ink);
  text-decoration: none;
  overflow: hidden;
  transition:
    border-color 0.15s ease,
    transform 0.15s ease;
}

.rhd a.mk-blog__card,
.rhd a.mk-blog__card:hover {
  color: var(--ink);
  text-decoration: none;
}

.rhd a.mk-blog__card:hover .mk-blog__card-title {
  text-decoration: underline;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 3px;
}

.mk-blog__card:hover,
.mk-blog__card:focus-visible {
  border-color: var(--beni);
  transform: translateY(-2px);
}

.mk-blog__card-k {
  position: absolute;
  right: 14px;
  top: 6px;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 800;
  font-size: 56px;
  color: var(--beni);
  opacity: 0.12;
}

.mk-blog__card-topic {
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--beni);
}

.mk-blog__card-title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 1.2;
}

.mk-blog__card-excerpt {
  font-size: 15px;
  line-height: 1.55;
  opacity: 0.85;
}

.mk-blog__card-meta {
  margin-top: auto;
  padding-top: 8px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  opacity: 0.7;
}

.mk-blog__feed {
  margin-top: 28px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 13px;
}

/* ---- article ---- */

.rhd .mk-post__wrap {
  max-width: 820px;
}

.mk-post__crumbs {
  font-family: "IBM Plex Mono", monospace;
  font-size: 13px;
  margin-bottom: 28px;
  opacity: 0.8;
}

.mk-post__crumbs a {
  color: inherit;
}

.mk-post__meta {
  margin: 14px 0 0;
  font-family: "IBM Plex Mono", monospace;
  font-size: 13px;
  opacity: 0.75;
}

.mk-post__body {
  margin-top: 36px;
  font-size: 18px;
  line-height: 1.7;
  color: var(--ink);
}

.mk-post__body > * + * {
  margin-top: 1em;
}

.mk-post__body h2 {
  margin-top: 2em;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 30px;
  line-height: 1.2;
}

.mk-post__body h3 {
  margin-top: 1.6em;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 22px;
}

.mk-post__body a {
  color: var(--beni);
}

.mk-post__body ul,
.mk-post__body ol {
  padding-left: 1.3em;
}

.mk-post__body li + li {
  margin-top: 0.4em;
}

.mk-post__body blockquote {
  margin-left: 0;
  padding: 16px 20px;
  border-left: 4px solid var(--amber);
  background: var(--amber-wash);
  font-size: 16px;
}

.mk-post__body code {
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.9em;
}

.mk-post__table {
  overflow-x: auto;
}

.mk-post__body table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.45;
}

.mk-post__body th,
.mk-post__body td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--rule);
  text-align: left;
  vertical-align: top;
}

.mk-post__body th {
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.mk-post__more {
  margin-top: 64px;
  padding-top: 32px;
  border-top: 2px solid var(--rule);
}

.mk-post__more-title {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-size: 26px;
}

@media (max-width: 600px) {
  .mk-post__body {
    font-size: 17px;
  }

  .mk-post__body h2 {
    font-size: 25px;
  }
}

/* ---- import cost calculator ---- */

.mk-calc {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 300px);
  gap: 24px;
  margin: 32px 0;
  padding: 24px;
  background: var(--card);
  border: 1.5px solid var(--rule);
  border-radius: 4px;
  font-size: 15px;
  line-height: 1.4;
}

.mk-calc__group {
  margin: 0 0 18px;
  padding: 0;
  border: 0;
}

.mk-calc__group legend {
  margin-bottom: 8px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--beni);
}

.mk-calc__field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 170px;
  align-items: center;
  gap: 12px;
  padding: 6px 0;
}

.mk-calc__field--set {
  margin: 0;
  border: 0;
}

.mk-calc__group .mk-calc__field--set legend {
  float: left;
  margin: 0;
  padding: 0;
  font: inherit;
  letter-spacing: normal;
  text-transform: none;
  color: inherit;
}

.mk-calc__input {
  display: flex;
  align-items: center;
  border: 1.5px solid var(--rule);
  border-radius: 3px;
  background: var(--paper);
}

.mk-calc__unit {
  padding: 0 8px;
  font-family: "IBM Plex Mono", monospace;
  font-size: 12px;
  opacity: 0.7;
}

.mk-calc__input input {
  width: 100%;
  min-width: 0;
  padding: 8px 10px 8px 0;
  border: 0;
  background: transparent;
  color: var(--ink);
  font:
    500 15px "IBM Plex Mono",
    monospace;
  text-align: right;
}

.mk-calc__input:focus-within {
  border-color: var(--ai);
}

.mk-calc__input input:focus {
  outline: none;
}

.mk-calc__basis {
  display: flex;
  border: 1.5px solid var(--rule);
  border-radius: 3px;
  overflow: hidden;
}

.mk-calc__basis button {
  flex: 1;
  padding: 7px 6px;
  border: 0;
  background: var(--paper);
  color: var(--ink);
  font:
    500 12px "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}

.mk-calc__basis button.is-on {
  background: var(--ai);
  color: var(--on-ai);
}

.mk-calc__result {
  align-self: start;
  position: sticky;
  top: 24px;
  padding: 18px;
  background: var(--paper);
  border: 1.5px solid var(--rule);
  border-radius: 3px;
}

.mk-calc__line {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 0;
  border-bottom: 1px dashed var(--rule);
  font-family: "IBM Plex Mono", monospace;
  font-size: 13px;
}

.mk-calc__line span:last-child {
  text-align: right;
}

.mk-calc__line--total {
  margin-top: 6px;
  border-bottom: 2px solid var(--ink);
  font-size: 17px;
  font-weight: 600;
}

.mk-calc__line--sale {
  border-bottom: 0;
  color: var(--beni);
  font-weight: 600;
}

@media (max-width: 760px) {
  .mk-calc {
    grid-template-columns: 1fr;
    padding: 16px;
  }

  .mk-calc__field {
    grid-template-columns: minmax(0, 1fr) 140px;
  }

  .mk-calc__result {
    position: static;
  }
}

.mk-post__more .mk-blog__grid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

/* /faq — values from design-mockups/rhd-woodblock/FAQ.dc.html */
.rhd .mk-faq {
  max-width: 920px;
  margin: 0 auto;
  padding: clamp(40px, 6vw, 88px) clamp(16px, 4vw, 40px);
}
.rhd .mk-faq__label {
  margin-bottom: 16px;
}
.rhd .mk-faq__title {
  margin: 0 0 14px;
  font:
    800 clamp(36px, 5vw, 56px) / 1.05 "Shippori Mincho B1",
    serif;
}
.rhd .mk-faq__intro {
  margin: 0 0 48px;
  font:
    400 18px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-faq__group {
  margin-bottom: 48px;
}
.rhd .mk-faq__group-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}
.rhd .mk-faq__group-k {
  font:
    700 20px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-faq__group-name {
  margin: 0;
  font:
    700 24px / 1.2 "Shippori Mincho B1",
    serif;
}

/* /guide — layout from design-mockups/rhd-woodblock/Guide.dc.html */

/* ---------- header + step strip ---------- */
.rhd .mk-guide__header {
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-guide__head {
  padding-top: clamp(40px, 6vw, 80px);
  padding-bottom: clamp(32px, 4vw, 48px);
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-guide__title {
  margin: 0;
  font:
    800 clamp(34px, 5vw, 58px) / 1.06 "Shippori Mincho B1",
    serif;
  max-width: 920px;
  text-wrap: balance;
}
.rhd .mk-guide__lead {
  margin: 0;
  font:
    400 19px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  max-width: 720px;
}
.rhd .mk-guide__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  font:
    400 13px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-guide__strip-wrap {
  padding-bottom: 40px;
  overflow-x: auto;
}
.rhd .mk-guide__strip {
  display: grid;
  grid-template-columns: repeat(9, minmax(110px, 1fr));
  min-width: 990px;
  border: 1.5px solid var(--ink);
  background: var(--card);
}
.rhd .mk-guide__stop {
  padding: 14px 12px;
  border-right: 1px solid var(--rule);
  text-decoration: none;
  color: var(--ink);
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rhd .mk-guide__stop:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.rhd .mk-guide__stop-k {
  font:
    700 18px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-guide__stop-name {
  font:
    600 12.5px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__stop-time {
  font:
    400 11px / 1 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-guide__strip-note {
  margin-top: 8px;
  font:
    400 12px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}

/* ---------- body: sticky contents + article ---------- */
.rhd .mk-guide__body {
  padding-top: clamp(40px, 6vw, 64px);
  padding-bottom: 80px;
  display: flex;
  gap: 56px;
  align-items: flex-start;
}
.rhd .mk-guide__aside {
  position: sticky;
  top: 120px;
  width: 240px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-guide__aside-head {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
  padding: 14px 0 8px;
}
.rhd .mk-guide__aside-link {
  display: flex;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px solid var(--rule);
  text-decoration: none;
  color: var(--ink);
  font:
    500 14px / 1.35 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__aside-link:hover {
  color: var(--amber);
}
.rhd .mk-guide__aside-n {
  font:
    500 12px / 1.6 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  width: 20px;
  flex-shrink: 0;
}
.rhd .mk-guide__article {
  flex: 1;
  min-width: 0;
  max-width: 720px;
  font:
    400 17.5px / 1.7 "IBM Plex Sans",
    sans-serif;
  display: flex;
  flex-direction: column;
  gap: 64px;
}
.rhd .mk-guide__toc {
  display: none;
  border: 1.5px solid var(--ink);
  background: var(--card);
}
.rhd .mk-guide__toc-q {
  display: flex;
  justify-content: space-between;
  padding: 14px 16px;
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__toc-list {
  display: flex;
  flex-direction: column;
  padding: 0 16px 10px;
}
.rhd .mk-guide__toc-link {
  padding: 10px 0;
  border-top: 1px solid var(--rule);
  text-decoration: none;
  color: var(--ink);
  font:
    500 15px "IBM Plex Sans",
    sans-serif;
}
/* The design swaps the sticky rail for a collapsible contents block at 940px. */
@media (max-width: 940px) {
  .rhd .mk-guide__aside {
    display: none;
  }
  .rhd .mk-guide__toc {
    display: block;
  }
}

/* ---------- sections ---------- */
.rhd .mk-guide__section {
  display: flex;
  flex-direction: column;
  gap: 16px;
  scroll-margin-top: 120px;
}
.rhd .mk-guide__section p {
  margin: 0;
}
.rhd .mk-guide__eyebrow {
  font:
    500 13px "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-guide__h2 {
  margin: 0;
  font:
    700 clamp(26px, 3vw, 34px) / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-guide__panel {
  border: 1.5px solid var(--ink);
  background: var(--card);
}
.rhd .mk-guide__panel--pad {
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-guide__panel-caps {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-guide__years {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  border: 1px solid var(--ink);
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
  text-align: center;
}
.rhd .mk-guide__year {
  padding: 10px 0;
  color: var(--ink-2);
}
.rhd .mk-guide__year--ok {
  background: var(--ok);
  color: var(--paper);
}
.rhd .mk-guide__year--last {
  border-right: 3px solid var(--beni);
}
.rhd .mk-guide__note {
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-guide__grades {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}
.rhd .mk-guide__grade {
  padding: 14px;
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-guide__grade:last-child {
  border-right: 0;
}
.rhd .mk-guide__grade-v {
  font:
    700 22px "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-guide__grade-t {
  font:
    400 13.5px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-guide__fees {
  font:
    400 15px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__fee {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-guide__fee--last {
  border-bottom: 0;
}
.rhd .mk-guide__fee-v {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .mk-guide__fees-note {
  padding: 9px 16px;
  border-top: 1px solid var(--rule);
  font:
    400 12.5px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-guide__route {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  font:
    500 13px "IBM Plex Mono",
    monospace;
}
.rhd .mk-guide__route-stop {
  padding: 8px 10px;
  border: 1.5px solid var(--ink);
  background: var(--card);
}
.rhd .mk-guide__route-stop--sea {
  background: var(--ai);
  color: var(--on-ai);
}
.rhd .mk-guide__duty-caps {
  padding: 10px 16px;
  border-bottom: 1.5px solid var(--ink);
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-guide__duty {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 16px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-guide__duty:last-child {
  border-bottom: 0;
}
.rhd .mk-guide__duty b {
  font-weight: 600;
}
.rhd .mk-guide__duty-v {
  font:
    600 15px "IBM Plex Mono",
    monospace;
}
.rhd .mk-guide__duty-t {
  font-size: 14px;
  color: var(--ink-2);
  grid-column: span 2;
}
.rhd .mk-guide__aside-note {
  border: 1.5px dashed var(--rule);
  padding: 14px 16px;
  font:
    400 14.5px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* ---------- "Where Right Hand DMS helps" ---------- */
.rhd .mk-guide__help {
  border: 1.5px solid var(--amber);
  background: var(--paper-2);
  padding: 16px 18px;
  display: flex;
  gap: 14px;
}
.rhd .mk-guide__help-seal {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  background: var(--beni);
  color: var(--paper);
  font:
    800 16px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 2px;
}
.rhd .mk-guide__help-text {
  font:
    400 15.5px / 1.55 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-guide__help-text b {
  font-weight: 600;
}

/* HomePage: page layout. Built from design-mockups/rhd-woodblock; shared parts come from app/src/design. */
.rhd .mk-home__label-mb16 {
  margin-bottom: 16px;
}
.rhd .mk-home__home-hero-section {
  position: relative;
  overflow: hidden;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-home__home-hero-span {
  position: absolute;
  left: -30px;
  top: 40px;
  font:
    800 420px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ink);
  opacity: 0.045;
  pointer-events: none;
}
.rhd .mk-home__home-hero-div {
  position: relative;
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(40px, 7vw, 96px) clamp(16px, 4vw, 40px) clamp(48px, 7vw, 88px);
  display: flex;
  flex-wrap: wrap;
  gap: clamp(36px, 5vw, 64px);
  align-items: center;
}
.rhd .mk-home__home-hero-div-2 {
  flex: 1 1 400px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.rhd .mk-home__home-hero-div-3 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.rhd .mk-home__home-hero-span-2 {
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  color: var(--paper);
  background: var(--beni);
  padding: 6px 7px;
  border-radius: 2px;
}
.rhd .mk-home__home-hero-span-3 {
  font:
    600 12px / 1.3 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-home__home-hero-h1 {
  margin: 0;
  font:
    800 clamp(38px, 5.6vw, 68px) / 1.04 "Shippori Mincho B1",
    serif;
  letter-spacing: -0.015em;
  text-wrap: balance;
}
.rhd .mk-home__home-hero-p {
  margin: 0;
  font:
    400 clamp(17px, 1.6vw, 20px) / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  max-width: 540px;
  text-wrap: pretty;
}
.rhd .mk-home__home-hero-div-4 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding-top: 4px;
}
.rhd .mk-home__home-hero-div-5 {
  font:
    400 13.5px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  border-top: 1px solid var(--rule);
  padding-top: 16px;
  max-width: 520px;
}
.rhd .mk-home__home-hero-a {
  font-weight: 600;
}
.rhd .mk-home__home-hero-div-6 {
  flex: 1.25 1 520px;
  min-width: 0;
  position: relative;
}
.rhd .mk-home__home-hero-div-7 {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-home__home-hero-span-4 {
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  background: var(--beni);
  color: var(--paper);
  font:
    800 14px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 2px;
}
.rhd .mk-home__home-hero-span-5 {
  font:
    600 13px / 1 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__home-hero-span-6 {
  margin-left: auto;
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-home__home-hero-div-8 {
  padding: 12px 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-home__home-hero-div-9 {
  display: flex;
  flex-direction: column;
}
.rhd .mk-home__home-hero-div-10 {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
  background: var(--paper-2);
}
.rhd .mk-home__home-hero-div-11 {
  min-width: 0;
}
.rhd .mk-home__home-hero-div-12 {
  font:
    600 14px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__home-hero-div-13 {
  font:
    400 12px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rhd .mk-home__home-hero-span-7 {
  color: var(--amber);
}
.rhd .mk-home__home-hero-div-14 {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-home__home-hero-div-15 {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 16px;
}
.rhd .mk-home__home-hero-span-8 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ok);
  border: 1px solid var(--ok);
  padding: 2px 4px;
  border-radius: 2px;
  vertical-align: 2px;
}
.rhd .mk-home__home-hero-div-16 {
  position: relative;
  margin: -36px 0 0 auto;
  width: min(100%, 360px);
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 6px 6px 0 var(--shadow);
  border-radius: 3px;
  margin-right: clamp(0px, 2vw, -24px);
}
.rhd .mk-home__home-hero-div-17 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 14px;
  border-bottom: 1.5px solid var(--ink);
  background: var(--ai);
  color: var(--on-ai);
}
.rhd .mk-home__home-hero-span-9 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.rhd .mk-home__home-hero-span-10 {
  font:
    500 11px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-home__home-hero-div-18 {
  padding: 14px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
.rhd .mk-home__home-hero-div-19 {
  border: 1px solid var(--rule);
  padding: 8px;
  text-align: center;
}
.rhd .mk-home__home-hero-div-20 {
  font:
    500 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-home__home-hero-div-21 {
  font:
    700 24px / 1.2 "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-home__home-hero-div-22 {
  font:
    700 24px / 1.2 "IBM Plex Mono",
    monospace;
}
.rhd .mk-home__home-hero-div-23 {
  padding: 0 14px 12px;
}
.rhd .mk-home__home-hero-div-24 {
  font:
    500 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
  margin-bottom: 6px;
}
.rhd .mk-home__home-hero-span-11 {
  font-family: "Shippori Mincho B1", serif;
  letter-spacing: 0;
}
.rhd .mk-home__home-hero-div-25 {
  display: inline-block;
  font:
    600 18px / 1 "IBM Plex Mono",
    monospace;
  background: var(--hl);
  padding: 8px 10px;
  border: 1.5px dashed var(--beni);
  border-radius: 2px;
}
.rhd .mk-home__home-hero-div-26 {
  padding: 10px 14px 14px;
  border-top: 1px solid var(--rule);
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-home__home-hero-span-12 {
  font:
    600 12px "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-home__home-hero-div-27 {
  color: var(--ink-2);
}
.rhd .mk-home__problem-section {
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(56px, 8vw, 104px) clamp(16px, 4vw, 40px);
}
.rhd .mk-home__problem-h2 {
  margin: 0 0 40px;
  font:
    700 clamp(30px, 4vw, 48px) / 1.1 "Shippori Mincho B1",
    serif;
  max-width: 780px;
  text-wrap: balance;
}
.rhd .mk-home__problem-div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  border: 1.5px solid var(--ink);
}
.rhd .mk-home__problem-div-2 {
  padding: 28px;
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-home__problem-span {
  font:
    500 13px / 1 "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-home__problem-h3 {
  margin: 0;
  font:
    600 20px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__problem-p {
  margin: 0;
  font:
    400 16px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-home__problem-div-3 {
  padding: 28px;
  border-bottom: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-home__features-section {
  background: var(--paper-2);
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-home__features-div {
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(56px, 8vw, 104px) clamp(16px, 4vw, 40px);
}
.rhd .mk-home__features-div-2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
  gap: 20px;
  margin-bottom: 40px;
}
.rhd .mk-home__features-h2 {
  margin: 0;
  font:
    700 clamp(30px, 4vw, 48px) / 1.1 "Shippori Mincho B1",
    serif;
  max-width: 700px;
  text-wrap: balance;
}
.rhd .mk-home__features-div-3 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr));
  gap: 20px;
}
.rhd .mk-home__features-article {
  background: var(--card);
  border: 1.5px solid var(--ink);
  display: flex;
  flex-direction: column;
}
.rhd .mk-home__features-div-4 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-home__features-span {
  font:
    600 12px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-home__features-span-2 {
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-home__features-div-5 {
  padding: 18px 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  background: var(--paper);
}
.rhd .mk-home__features-div-6 {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.rhd .mk-home__features-span-3 {
  font:
    500 11px / 1 "IBM Plex Mono",
    monospace;
  padding: 5px 7px;
  border: 1px solid var(--ink);
  border-radius: 2px;
}
.rhd .mk-home__features-span-4 {
  font:
    500 11px / 1 "IBM Plex Mono",
    monospace;
  padding: 5px 7px;
  border: 1px solid var(--rule);
  border-radius: 2px;
}
.rhd .mk-home__features-div-7 {
  font:
    400 12px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-home__features-div-8 {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  color: var(--amber);
}
.rhd .mk-home__features-div-9 {
  padding: 18px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}
.rhd .mk-home__features-h3 {
  margin: 0;
  font:
    600 19px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__features-p {
  margin: 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-home__features-a {
  margin-top: auto;
  padding-top: 8px;
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__features-div-10 {
  padding: 18px 16px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  background: var(--paper);
  align-items: center;
}
.rhd .mk-home__features-div-11 {
  font:
    600 13px / 1.6 "Shippori Mincho B1",
    serif;
  color: var(--ink-2);
}
.rhd .mk-home__features-div-12 {
  font:
    500 12.5px / 1.6 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__features-div-13 {
  padding: 18px 16px;
  background: var(--paper);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-home__features-div-14 {
  position: relative;
  height: 26px;
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-home__features-span-5 {
  position: absolute;
  left: 12%;
  bottom: 0;
  width: 2px;
  height: 10px;
  background: var(--ink-2);
}
.rhd .mk-home__features-span-6 {
  position: absolute;
  left: 30%;
  bottom: 0;
  width: 2px;
  height: 16px;
  background: var(--ink-2);
}
.rhd .mk-home__features-span-7 {
  position: absolute;
  left: 44%;
  bottom: 0;
  width: 2px;
  height: 22px;
  background: var(--ink-2);
}
.rhd .mk-home__features-span-8 {
  position: absolute;
  left: 52%;
  bottom: 0;
  width: 2px;
  height: 18px;
  background: var(--ink-2);
}
.rhd .mk-home__features-span-9 {
  position: absolute;
  left: 70%;
  bottom: 0;
  width: 2px;
  height: 12px;
  background: var(--ink-2);
}
.rhd .mk-home__features-span-10 {
  position: absolute;
  left: 36%;
  width: 26%;
  bottom: -5px;
  height: 8px;
  background: var(--amber);
  opacity: 0.85;
}
.rhd .mk-home__features-div-15 {
  display: flex;
  justify-content: space-between;
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-home__features-span-11 {
  color: var(--ink-2);
}
.rhd .mk-home__features-div-16 {
  padding: 18px 16px;
  background: var(--paper);
  display: flex;
  flex-direction: column;
  gap: 6px;
  font:
    400 13px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__features-div-17 {
  display: flex;
  justify-content: space-between;
}
.rhd .mk-home__features-b {
  font-weight: 600;
}
.rhd .mk-home__features-span-12 {
  font:
    500 11px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-home__features-div-18 {
  padding: 18px 16px;
  background: var(--paper);
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}
.rhd .mk-home__features-span-13 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 8px;
  border: 1px solid var(--rule);
  color: var(--ink-2);
  border-radius: 20px;
}
.rhd .mk-home__features-span-14 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 8px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 20px;
}
.rhd .mk-home__features-span-15 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 8px;
  background: var(--ok);
  color: var(--paper);
  border-radius: 20px;
}
.rhd .mk-home__features-span-16 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 8px;
  border: 1px dashed var(--ink-2);
  color: var(--ink-2);
  border-radius: 20px;
}
.rhd .mk-home__features-div-19 {
  padding: 14px 16px;
  background: var(--paper);
  display: flex;
  flex-direction: column;
  gap: 5px;
  font:
    400 12.5px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-home__features-div-20 {
  display: flex;
  justify-content: space-between;
  border-top: 1.5px solid var(--ink);
  padding-top: 5px;
  font-weight: 600;
}
.rhd .mk-home__features-div-21 {
  display: flex;
  justify-content: space-between;
  border-top: 1.5px solid var(--ink);
  padding-top: 5px;
  font-weight: 600;
  color: var(--ok);
}
.rhd .mk-home__life-of-one-car-section {
  padding: clamp(56px, 8vw, 104px) 0;
  overflow: hidden;
}
.rhd .mk-home__life-of-one-car-div {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 clamp(16px, 4vw, 40px);
}
.rhd .mk-home__life-of-one-car-div-2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
  gap: 20px;
}
.rhd .mk-home__life-of-one-car-h2 {
  margin: 0;
  font:
    700 clamp(30px, 4vw, 48px) / 1.1 "Shippori Mincho B1",
    serif;
  max-width: 720px;
  text-wrap: balance;
}
.rhd .mk-home__life-of-one-car-div-3 {
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1.5px solid var(--ink);
  padding: 10px 14px;
  background: var(--card);
}
.rhd .mk-home__life-of-one-car-span {
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-home__life-of-one-car-span-2 {
  font:
    600 15px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-home__life-of-one-car-span-3 {
  font:
    400 13px / 1 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-home__life-of-one-car-div-4 {
  margin-top: 40px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 0 clamp(16px, 4vw, 40px) 24px;
  scroll-padding: 0 clamp(16px, 4vw, 40px);
}
.rhd .mk-home__life-of-one-car-div-5 {
  display: flex;
  gap: 0;
  width: max-content;
  max-width: none;
  margin: 0 auto;
}
.rhd .mk-home__life-of-one-car-div-6 {
  scroll-snap-align: start;
  width: min(78vw, 272px);
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
}
.rhd .mk-home__life-of-one-car-div-7 {
  display: flex;
  align-items: center;
  height: 44px;
}
.rhd .mk-home__life-of-one-car-span-4 {
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  background: var(--ink);
  color: var(--paper);
  font:
    700 16px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 50%;
}
.rhd .mk-home__life-of-one-car-span-5 {
  flex: 1;
  height: 3px;
  background: var(--ink);
  background-image: repeating-linear-gradient(90deg, var(--ink) 0 10px, transparent 10px 16px);
}
.rhd .mk-home__life-of-one-car-div-8 {
  padding: 16px 20px 0 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-home__life-of-one-car-div-9 {
  font:
    500 12px / 1 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-home__life-of-one-car-h3 {
  margin: 0;
  font:
    600 18px / 1.25 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__life-of-one-car-div-10 {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 4px 4px 0 var(--shadow);
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 118px;
}
.rhd .mk-home__life-of-one-car-div-11 {
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-home__life-of-one-car-div-12 {
  font:
    600 17px / 1.2 "IBM Plex Mono",
    monospace;
}
.rhd .mk-home__life-of-one-car-div-13 {
  font:
    400 13px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-home__life-of-one-car-div-14 {
  margin-top: auto;
  align-self: flex-start;
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 5px 8px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 20px;
}
.rhd .mk-home__life-of-one-car-div-15 {
  max-width: 1240px;
  margin: 8px auto 0;
  padding: 0 clamp(16px, 4vw, 40px);
  font:
    400 13px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-home__custom-orders-section {
  background: var(--ai);
  background-image: var(--wood);
  color: var(--on-ai);
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
  position: relative;
  overflow: hidden;
}
.rhd .mk-home__custom-orders-div {
  height: 24px;
  background-image: var(--seigaiha);
}
.rhd .mk-home__custom-orders-div-2 {
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(56px, 8vw, 96px) clamp(16px, 4vw, 40px);
  display: flex;
  flex-wrap: wrap;
  gap: clamp(36px, 5vw, 64px);
  align-items: center;
}
.rhd .mk-home__custom-orders-div-3 {
  flex: 1 1 400px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-home__custom-orders-div-4 {
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .mk-home__custom-orders-span {
  font:
    700 15px / 1 "Shippori Mincho B1",
    serif;
  color: var(--ai);
  background: var(--on-ai);
  padding: 5px 6px;
  border-radius: 2px;
}
.rhd .mk-home__custom-orders-span-2 {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  opacity: 0.85;
}
.rhd .mk-home__custom-orders-h2 {
  margin: 0;
  font:
    700 clamp(30px, 4vw, 48px) / 1.1 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-home__custom-orders-div-5 {
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}
.rhd .mk-home__custom-orders-div-6 {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 12px;
  padding: 16px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}
.rhd .mk-home__custom-orders-span-3 {
  font:
    500 13px / 1.5 "IBM Plex Mono",
    monospace;
  opacity: 0.8;
}
.rhd .mk-home__custom-orders-div-7 {
  font:
    400 16px / 1.55 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__custom-orders-b {
  font-weight: 600;
}
.rhd .mk-home__custom-orders-a {
  color: var(--on-ai);
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__custom-orders-div-8 {
  flex: 1 1 440px;
  min-width: 0;
  background: var(--card);
  color: var(--ink);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 #0008;
  border-radius: 3px;
  overflow: hidden;
}
.rhd .mk-home__custom-orders-div-9 {
  padding: 12px 16px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}
.rhd .mk-home__custom-orders-span-4 {
  font:
    600 14px / 1.2 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__custom-orders-span-5 {
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 5px 8px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 20px;
}
.rhd .mk-home__custom-orders-div-10 {
  padding: 16px;
  font:
    400 14.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-home__custom-orders-div-11 {
  font:
    400 12.5px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-home__custom-orders-p {
  margin: 0;
}
.rhd .mk-home__custom-orders-div-12 {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--rule);
}
.rhd .mk-home__custom-orders-div-13 {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 9px 12px;
  border-bottom: 1px solid var(--rule);
  font:
    400 13px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-home__custom-orders-div-14 {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 9px 12px;
  font:
    400 13px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-home__custom-orders-div-15 {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.rhd .mk-home__custom-orders-span-6 {
  padding: 10px 14px;
  background: var(--amber);
  color: var(--on-amber);
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-home__custom-orders-span-7 {
  padding: 10px 14px;
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-home__security-strip-section {
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(56px, 8vw, 96px) clamp(16px, 4vw, 40px) 40px;
}
.rhd .mk-home__security-strip-div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 0;
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-home__security-strip-div-2 {
  padding: 24px 20px 24px 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-home__security-strip-span {
  font:
    700 22px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-home__security-strip-b {
  font:
    600 16px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-home__security-strip-span-2 {
  font:
    400 14.5px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-home__security-strip-div-3 {
  padding: 24px 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-home__security-strip-a {
  font:
    600 15px / 1.4 "IBM Plex Sans",
    sans-serif;
  margin-top: 30px;
}
.rhd .mk-home__pricing-teaser-section {
  max-width: 1240px;
  margin: 0 auto;
  padding: 40px clamp(16px, 4vw, 40px) 72px;
}
.rhd .mk-home__pricing-teaser-div {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: center;
  justify-content: space-between;
  border: 1.5px dashed var(--ink-2);
  padding: 28px;
}
.rhd .mk-home__pricing-teaser-div-2 {
  display: flex;
  gap: 18px;
  align-items: center;
  flex: 1 1 360px;
}
.rhd .mk-home__pricing-teaser-h3 {
  margin: 0 0 6px;
  font:
    700 24px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-home__pricing-teaser-p {
  margin: 0;
  font:
    400 15.5px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-home__pricing-teaser-a {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
/* Hero lot thumbnail (replaces the design's placeholder 日産 boxes). */
.rhd .mk-home__lot-thumb {
  width: 52px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid var(--ink);
  background: var(--paper-2);
}

/* /pricing — invite-only plans priced by auction sheets read (mk-pricing__*). */
.rhd .mk-pricing {
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(40px, 6vw, 88px) clamp(16px, 4vw, 40px);
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.rhd .mk-pricing__label {
  margin-bottom: -16px;
}
.rhd .mk-pricing__title {
  margin: 0;
  font:
    800 clamp(36px, 5vw, 60px) / 1.05 "Shippori Mincho B1",
    serif;
  max-width: 820px;
  text-wrap: balance;
}
.rhd .mk-pricing__text {
  margin: 0;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__text b {
  color: var(--ink);
}

/* Invite-only banner */
.rhd .mk-pricing__invite {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px 28px;
  padding: clamp(20px, 3vw, 28px) clamp(20px, 3vw, 32px);
  background: var(--paper-2);
  border-style: dashed;
}
.rhd .mk-pricing__invite-copy {
  flex: 1 1 380px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rhd .mk-pricing__invite-title {
  margin: 0;
  font:
    700 clamp(22px, 2.6vw, 28px) / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pricing__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* Plans */
.rhd .mk-pricing__plans {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}
.rhd .mk-pricing__plan {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: clamp(22px, 3vw, 30px);
}
.rhd .mk-pricing__plan--featured {
  background: var(--card);
  outline: 2px solid var(--amber);
  outline-offset: -6px;
}
.rhd .mk-pricing__badge {
  position: absolute;
  top: -12px;
  right: 18px;
  padding: 5px 9px;
  background: var(--amber);
  color: var(--on-amber);
  border: 1.5px solid var(--ink);
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.rhd .mk-pricing__plan-head {
  display: flex;
  align-items: center;
  gap: 10px;
}
.rhd .mk-pricing__plan-k {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1.5px solid var(--beni);
  border-radius: 50%;
  color: var(--beni);
  font:
    700 14px / 1 "Shippori Mincho B1",
    serif;
  transform: rotate(-8deg);
}
.rhd .mk-pricing__plan-name {
  margin: 0;
  font:
    700 26px / 1.1 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pricing__who {
  margin: 0;
  min-height: 2.9em;
  font:
    400 14.5px / 1.45 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__price {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.rhd .mk-pricing__amount {
  font:
    600 42px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-pricing__per {
  font:
    500 15px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__annual {
  margin: -4px 0 0;
  font:
    400 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__sheets {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 12px 14px;
  background: var(--paper);
  border: 1.5px solid var(--ink);
}
.rhd .mk-pricing__sheets-n {
  font:
    600 24px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-pricing__sheets-l {
  font:
    500 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pricing__lines,
.rhd .mk-pricing__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
}
.rhd .mk-pricing__lines {
  flex: 1;
  gap: 8px;
  font:
    400 15px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pricing__lines li {
  display: flex;
  gap: 10px;
}
.rhd .mk-pricing__check {
  color: var(--beni);
  font-weight: 600;
}
.rhd .mk-pricing__plan-cta {
  align-self: stretch;
  margin-top: 6px;
}

/* Below the plans */
.rhd .mk-pricing__below {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px 48px;
  padding-top: 8px;
}
.rhd .mk-pricing__includes-head {
  display: block;
  margin-bottom: 12px;
}
.rhd .mk-pricing__list {
  font:
    400 16px / 1.45 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pricing__item {
  display: flex;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-pricing__item:last-child {
  border-bottom: 0;
}
.rhd .mk-pricing__explain {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-pricing__explain .mk-pricing__includes-head {
  margin-bottom: 0;
}

@media (max-width: 940px) {
  .rhd .mk-pricing__plans,
  .rhd .mk-pricing__below {
    grid-template-columns: 1fr;
  }
  .rhd .mk-pricing__who {
    min-height: 0;
  }
}

/* Shared layout for the /product/* pages (hero, how-it-works, FAQ, "next" link).
   Values from design-mockups/rhd-woodblock/Product-*.dc.html. Pages add their own close-ups and step bodies. */

/* ---------- hero ---------- */
.rhd .mk-pp-hero {
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-pp-hero__inner {
  padding-top: clamp(40px, 6vw, 80px);
  padding-bottom: clamp(40px, 6vw, 80px);
  display: flex;
  flex-wrap: wrap;
  gap: clamp(32px, 5vw, 56px);
  align-items: center;
}
.rhd .mk-pp-hero--marked {
  position: relative;
  overflow: hidden;
}
.rhd .mk-pp-hero__watermark {
  position: absolute;
  right: -40px;
  top: -30px;
  font:
    800 360px / 1 "Shippori Mincho B1",
    serif;
  opacity: 0.045;
  pointer-events: none;
}
.rhd .mk-pp-hero--marked .mk-pp-hero__inner {
  position: relative;
}
.rhd .mk-pp-hero__inner--start {
  align-items: flex-start;
}
.rhd .mk-pp-hero__inner--stack {
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 40px;
}
.rhd .mk-pp-hero__copy {
  flex: 1 1 380px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-pp-hero__copy--narrow {
  flex: none;
  max-width: 780px;
}
.rhd .mk-pp-hero__title {
  margin: 0;
  font:
    800 clamp(36px, 5vw, 60px) / 1.05 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-pp-hero__lead {
  margin: 0;
  font:
    400 19px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pp-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.rhd .mk-pp-hero__mock {
  flex: 1.3 1 480px;
  min-width: 0;
}

/* ---------- section scaffolding ---------- */
.rhd .mk-pp-section {
  padding-top: clamp(56px, 8vw, 96px);
  padding-bottom: clamp(56px, 8vw, 96px);
}
.rhd .mk-pp-section .rhd-label {
  margin-bottom: 16px;
}
.rhd .mk-pp-section__title {
  margin: 0 0 40px;
  font:
    700 clamp(28px, 3.6vw, 44px) / 1.1 "Shippori Mincho B1",
    serif;
  max-width: 720px;
}
.rhd .mk-pp-section__title--loose {
  margin-bottom: 48px;
}
.rhd .mk-pp-section__title--wide {
  max-width: 760px;
}

/* ---------- numbered steps ---------- */
.rhd .mk-pp-steps {
  display: flex;
  flex-direction: column;
  gap: 56px;
}
.rhd .mk-pp-step {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  align-items: center;
}
.rhd .mk-pp-step__copy {
  flex: 1 1 320px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-pp-step__k {
  font:
    700 40px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-pp-step__title {
  margin: 0;
  font:
    600 22px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pp-step__text {
  margin: 0;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pp-step__ui {
  flex: 1.3 1 400px;
  min-width: 0;
}
.rhd .mk-pp-step__ui--framed {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 5px 5px 0 var(--shadow);
}

/* ---------- details band ---------- */
.rhd .mk-pp-details {
  background: var(--paper-2);
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-pp-details__inner {
  padding-top: clamp(48px, 7vw, 80px);
  padding-bottom: clamp(48px, 7vw, 80px);
}
.rhd .mk-pp-details__title {
  margin: 0 0 32px;
  font:
    700 clamp(26px, 3.2vw, 38px) / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pp-details__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 24px 32px;
}
.rhd .mk-pp-details__item {
  border-top: 1.5px solid var(--ink);
  padding-top: 14px;
}
.rhd .mk-pp-details__item b {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pp-details--tight .mk-pp-details__item b {
  line-height: 1.3;
}
.rhd .mk-pp-details__item p {
  margin: 6px 0 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pp-band-title {
  margin: 0;
  font:
    700 clamp(26px, 3.4vw, 40px) / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pp-mock-head {
  padding: 14px 16px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}
.rhd .mk-pp-kicker {
  font:
    500 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-pp-mono-sm {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-pp-mini-btn {
  padding: 10px 14px;
  background: var(--amber);
  color: var(--on-amber);
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-pp-mini-btn--ghost {
  background: transparent;
  color: var(--ink);
}

/* ---------- FAQ (larger variant used on product pages) ---------- */
.rhd .mk-pp-faq {
  max-width: 880px;
  margin: 0 auto;
  padding: clamp(56px, 8vw, 88px) clamp(16px, 4vw, 40px);
}
.rhd .mk-pp-faq--tight-top {
  padding-top: 0;
}
.rhd .mk-pp-faq__title {
  margin: 0 0 24px;
  font:
    700 clamp(26px, 3.2vw, 38px) / 1.15 "Shippori Mincho B1",
    serif;
}
/* The design draws the list's top rule on the container, not the first row; drawing it on the
   row rounds to a different pixel and shifts everything below by 1px. */
.rhd .mk-pp-faq__list {
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-pp-faq__list .rhd-faq {
  border-top: 0;
}
/* ---------- next-page link ---------- */
.rhd .mk-pp-next-wrap {
  padding-bottom: 72px;
}
.rhd .mk-pp-next {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 24px 28px;
  border: 1.5px solid var(--ink);
  background: var(--card);
  text-decoration: none;
  color: var(--ink);
}
.rhd .mk-pp-next:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.rhd .mk-pp-next__text {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.rhd .mk-pp-next__title {
  font:
    700 26px / 1.2 "Shippori Mincho B1",
    serif;
}
.rhd .mk-pp-next__go {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
  color: var(--amber);
}

/* /product/bidding — from design-mockups/rhd-woodblock/Product-Bidding.dc.html */
.rhd .mk-pb-board {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  overflow-x: auto;
}
.rhd .mk-pb-board__grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(200px, 1fr));
  min-width: 1000px;
}
.rhd .mk-pb-col {
  border-right: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
}
.rhd .mk-pb-col__head {
  padding: 12px 14px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.rhd .mk-pb-col__count {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-pb-col__cars {
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
/* board pills are a touch tighter than the library's stage pill */
.rhd .mk-pb-pill {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 5px 9px;
  border-radius: 20px;
  border: 1px solid;
}
.rhd .mk-pb-pill--watching {
  color: var(--ink-2);
  border-color: var(--rule);
}
.rhd .mk-pb-pill--bidding {
  color: var(--amber);
  border-color: var(--amber);
}
.rhd .mk-pb-pill--won {
  background: var(--ok);
  color: var(--paper);
  border-color: var(--ok);
}
.rhd .mk-pb-pill--importing {
  background: var(--ai);
  color: var(--on-ai);
  border-color: var(--ai);
}
.rhd .mk-pb-pill--owned {
  color: var(--ink);
  border-color: var(--ink);
}
.rhd .mk-pb-car {
  border: 1px solid var(--rule);
  background: var(--paper);
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-pb-car__name {
  font:
    600 13px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pb-car__meta {
  font:
    400 11.5px / 1.3 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-pb-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr));
  gap: 20px;
}
.rhd .mk-pb-step {
  border: 1.5px solid var(--ink);
  background: var(--card);
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-pb-step__k {
  font:
    700 34px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-pb-step__title {
  margin: 0;
  font:
    600 19px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pb-step__text {
  margin: 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pb-ui {
  margin-top: auto;
}
.rhd .mk-pb-chip-btn {
  align-self: flex-start;
  padding: 9px 14px;
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-pb-chip-btn--bid {
  background: var(--amber);
  color: var(--on-amber);
  font-family: "IBM Plex Mono", monospace;
}
.rhd .mk-pb-check {
  border: 1.5px dashed var(--ok);
  padding: 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-pb-check__title {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pb-check__btns {
  display: flex;
  gap: 6px;
}
.rhd .mk-pb-check__btn {
  padding: 7px 10px;
  border: 1px solid var(--ink);
  font:
    600 13px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-pb-check__btn--ok {
  background: var(--ok);
  color: var(--paper);
  border-color: transparent;
}
.rhd .mk-pb-add {
  display: flex;
  gap: 6px;
}
.rhd .mk-pb-add__input {
  flex: 1;
  min-width: 0;
  padding: 9px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  font:
    500 14px "IBM Plex Mono",
    monospace;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.rhd .mk-pb-add__btn {
  padding: 9px 12px;
  border: 1.5px solid var(--ink);
  font:
    600 14px / 1.2 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}

/* /product/email — from design-mockups/rhd-woodblock/Product-Email.dc.html */
.rhd .mk-pe-thread {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
}
.rhd .mk-pe-thread .mk-pp-mock-head {
  padding: 12px 16px;
}
.rhd .mk-pe-thread__title {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pe-msg {
  padding: 14px 16px;
  border-bottom: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-pe-msg--sheet {
  gap: 6px;
}
.rhd .mk-pe-msg--draft {
  border-bottom: 0;
  gap: 8px;
  background: var(--paper);
}
.rhd .mk-pe-msg__head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}
.rhd .mk-pe-msg__who {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pe-msg__state {
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.rhd .mk-pe-msg__state--ok {
  color: var(--ok);
}
.rhd .mk-pe-msg__state--amber {
  color: var(--amber);
}
.rhd .mk-pe-msg__state--pill {
  padding: 4px 7px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 20px;
}
.rhd .mk-pe-msg__body {
  font:
    400 14px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-pe-msg--draft .mk-pe-msg__body {
  color: var(--ink);
}
.rhd .mk-pe-file {
  display: inline-flex;
  align-self: flex-start;
  gap: 7px;
  padding: 6px 9px;
  border: 1.5px solid var(--ink);
  font:
    600 12.5px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
}
.rhd .mk-pe-file__k {
  font-family: "Shippori Mincho B1", serif;
  color: var(--beni);
}
.rhd .mk-pe-btns {
  display: flex;
  gap: 8px;
}
.rhd .mk-pe-btns .mk-pp-mini-btn {
  padding: 9px 13px;
  font-size: 13px;
}
.rhd .mk-pe-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 20px;
}
.rhd .mk-pe-card {
  border: 1.5px solid var(--ink);
  background: var(--card);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.rhd .mk-pe-card__k {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--amber);
}
.rhd .mk-pe-card__title {
  margin: 0;
  font:
    600 20px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-pe-card__text {
  margin: 0;
  font:
    400 15.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* /product/hunts — from design-mockups/rhd-woodblock/Product-Hunts.dc.html */
.rhd .mk-ph-card {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
}
.rhd .mk-ph-card__head {
  padding: 14px 16px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  align-items: center;
}
.rhd .mk-ph-card__title {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-ph-card__name {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-card__criteria {
  font:
    400 12.5px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-ph-tag {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 9px;
  background: var(--ai);
  color: var(--on-ai);
  border-radius: 20px;
}
.rhd .mk-ph-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-ph-stat {
  padding: 12px 16px;
  border-right: 1px solid var(--rule);
}
.rhd .mk-ph-stat:last-child {
  border-right: 0;
}
.rhd .mk-ph-stat__k {
  font:
    500 10.5px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-ph-stat__v {
  font:
    600 14px "IBM Plex Mono",
    monospace;
}
.rhd .mk-ph-match {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
  font:
    400 13px / 1.4 "IBM Plex Mono",
    monospace;
}
.rhd .mk-ph-match__price {
  font-weight: 600;
}
.rhd .mk-ph-match__flag {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--amber);
  align-self: center;
}
.rhd .mk-ph-card__foot {
  padding: 14px 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
  align-items: center;
}
.rhd .mk-ph-card__note {
  font:
    500 14px "IBM Plex Sans",
    sans-serif;
}

/* steps */
.rhd .mk-ph-panel {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 5px 5px 0 var(--shadow);
}
.rhd .mk-ph-pair {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: stretch;
}
.rhd .mk-ph-email {
  flex: 1 1 200px;
  background: var(--card);
  border: 1.5px solid var(--rule);
  padding: 14px;
  font:
    400 14px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ph-email__from {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  margin-bottom: 6px;
}
.rhd .mk-ph-filled {
  flex: 1 1 200px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font:
    500 13px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-ph-filled__head {
  font:
    600 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--amber);
}
.rhd .mk-ph-filled__muted {
  color: var(--ink-2);
}
.rhd .mk-ph-choice {
  padding: 6px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}
.rhd .mk-ph-choice__opt {
  padding: 14px;
  border: 1px solid var(--rule);
}
.rhd .mk-ph-choice__opt--on {
  border: 2px solid var(--amber);
  background: var(--paper);
}
.rhd .mk-ph-choice__name {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-choice__desc {
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  margin-top: 4px;
}
.rhd .mk-ph-log {
  font:
    400 13.5px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-log__row {
  padding: 11px 14px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-ph-log__row--head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}
.rhd .mk-ph-log__row--last {
  border-bottom: 0;
  color: var(--amber);
}
.rhd .mk-ph-log__day {
  font-family: "IBM Plex Mono", monospace;
  color: var(--ink-2);
}
.rhd .mk-ph-won {
  padding: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
}
.rhd .mk-ph-won__car {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-ph-won__name {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-won__meta {
  font:
    500 13px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-ph-won__pill {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 10px;
  background: var(--ok);
  color: var(--paper);
  border-radius: 20px;
}

/* details band */
.rhd .mk-ph-details {
  background: var(--paper-2);
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-ph-details__inner {
  padding-top: clamp(48px, 7vw, 80px);
  padding-bottom: clamp(48px, 7vw, 80px);
}
.rhd .mk-ph-details__title {
  margin: 0 0 32px;
  font:
    700 clamp(26px, 3.2vw, 38px) / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-ph-details__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 24px 32px;
}
.rhd .mk-ph-detail {
  border-top: 1.5px solid var(--ink);
  padding-top: 14px;
}
.rhd .mk-ph-detail__title {
  font:
    600 16px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ph-detail__text {
  margin: 6px 0 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* /product/landed-cost — layout from design-mockups/rhd-woodblock/Product-Landed-Cost.dc.html */

/* ---------- hero ---------- */
.rhd .mk-landed__sheet-head {
  padding: 14px 16px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
  align-items: baseline;
}
.rhd .mk-landed__sheet-car {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-landed__sheet-frame {
  font:
    500 12.5px "IBM Plex Mono",
    monospace;
  background: var(--hl);
  padding: 3px 6px;
}
.rhd .mk-landed__line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  padding: 9px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-landed__line-label {
  font:
    500 14px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-landed__line-usd {
  font:
    500 14px / 1.3 "IBM Plex Mono",
    monospace;
  text-align: right;
}
.rhd .mk-landed__line-note {
  font:
    400 11.5px / 1.3 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-landed__line-doc {
  font:
    500 11.5px / 1.3 "IBM Plex Sans",
    sans-serif;
  text-align: right;
  text-decoration: none;
}
.rhd .mk-landed__total {
  display: flex;
  justify-content: space-between;
  padding: 14px 16px;
  border-top: 1.5px solid var(--ink);
  font:
    600 18px / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-landed__total-label {
  font-family: "IBM Plex Sans", sans-serif;
}
.rhd .mk-landed__missing {
  padding: 10px 16px;
  border-top: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 5px;
  font:
    600 13px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--beni);
}

/* ---------- how it works ---------- */
.rhd .mk-landed__h2 {
  margin: 0;
  font:
    700 clamp(28px, 3.6vw, 44px) / 1.1 "Shippori Mincho B1",
    serif;
}
.rhd .mk-landed__drop {
  flex: 1.3 1 400px;
  min-width: 0;
  border: 2px dashed var(--ink-2);
  background: var(--card);
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.rhd .mk-landed__drop-note {
  font:
    500 13px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-landed__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.rhd .mk-landed__chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
  font:
    600 12.5px / 1 "IBM Plex Sans",
    sans-serif;
  border-radius: 2px;
  color: var(--ink);
}
.rhd .mk-landed__chip-k {
  font:
    700 12px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-landed__review-head {
  padding: 11px 14px;
  border-bottom: 1.5px solid var(--ink);
  display: flex;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}
.rhd .mk-landed__review-title {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-landed__review-frame {
  font:
    500 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-landed__review-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--rule);
  font:
    400 13px / 1.3 "IBM Plex Mono",
    monospace;
  align-items: center;
}
.rhd .mk-landed__review-row:last-child {
  border-bottom: 0;
}
.rhd .mk-landed__ok {
  color: var(--ok);
}
.rhd .mk-landed__checklist {
  padding: 6px 0;
  font:
    400 14px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-landed__check {
  display: flex;
  gap: 10px;
  padding: 9px 14px;
}
.rhd .mk-landed__check--missing {
  color: var(--beni);
  font-weight: 600;
}
.rhd .mk-landed__sale {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  font:
    500 15px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-landed__sale-row {
  display: flex;
  justify-content: space-between;
}
.rhd .mk-landed__sale-row--muted {
  color: var(--ink-2);
}
.rhd .mk-landed__sale-row--profit {
  border-top: 1.5px solid var(--ink);
  padding-top: 8px;
  font-weight: 600;
  color: var(--ok);
}

/* ---------- one entry, five cars ---------- */
.rhd .mk-landed__band {
  background: var(--paper-2);
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-landed__entry-inner {
  padding-top: clamp(48px, 7vw, 88px);
  padding-bottom: clamp(48px, 7vw, 88px);
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.rhd .mk-landed__entry-intro {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 760px;
}
.rhd .mk-landed__body17 {
  margin: 0;
  font:
    400 17px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-landed__table {
  overflow-x: auto;
}
.rhd .mk-landed__table-inner {
  min-width: 760px;
  font:
    400 13.5px / 1.3 "IBM Plex Mono",
    monospace;
}
.rhd .mk-landed__tr {
  display: grid;
  grid-template-columns: 2.4fr 1fr 0.7fr 1fr 0.8fr 0.8fr 1fr;
  gap: 12px;
  padding: 11px 16px;
  border-bottom: 1px solid var(--rule);
  align-items: center;
}
.rhd .mk-landed__tr > span:not(:first-child) {
  text-align: right;
}
.rhd .mk-landed__tr--head {
  padding: 12px 16px;
  border-bottom: 1.5px solid var(--ink);
  align-items: stretch;
  font:
    600 11px / 1.2 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-landed__tr--total {
  padding: 13px 16px;
  border-bottom: 0;
  align-items: stretch;
  font-weight: 600;
  background: var(--paper);
}
.rhd .mk-landed__car {
  font-family: "IBM Plex Sans", sans-serif;
}
.rhd .mk-landed__car b {
  font-weight: 600;
}
.rhd .mk-landed__car-frame {
  font:
    400 12px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-landed__rate {
  color: var(--beni);
  font-weight: 600;
}
.rhd .mk-landed__tr .mk-landed__strong {
  font-weight: 600;
}
.rhd .mk-landed__footnote {
  margin: 0;
  font:
    400 13px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}

/* ---------- review flags ---------- */
.rhd .mk-landed__checks {
  padding-top: clamp(56px, 8vw, 96px);
  padding-bottom: clamp(56px, 8vw, 96px);
  display: flex;
  flex-wrap: wrap;
  gap: clamp(32px, 5vw, 56px);
  align-items: flex-start;
}
.rhd .mk-landed__checks-copy {
  flex: 1 1 320px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.rhd .mk-landed__flags {
  flex: 1.3 1 460px;
  min-width: 0;
}
.rhd .mk-landed__flag {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--rule);
  align-items: start;
}
.rhd .mk-landed__sev {
  font:
    600 10.5px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 5px 7px;
  border-radius: 2px;
  border: 1px solid currentColor;
  margin-top: 2px;
}
.rhd .mk-landed__sev--high {
  color: var(--beni);
}
.rhd .mk-landed__sev--check {
  color: var(--amber);
}
.rhd .mk-landed__sev--note {
  color: var(--ink-2);
}
.rhd .mk-landed__flag-text {
  font:
    400 14.5px / 1.5 "IBM Plex Sans",
    sans-serif;
}

/* ---------- details ---------- */
/* ---------- FAQ (large variant) ---------- */
/* ---------- next page ---------- */

/* /product/pricing-guidance — from design-mockups/rhd-woodblock/Product-Pricing-Guidance.dc.html */
.rhd .mk-ppg-card {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
}
.rhd .mk-ppg-card__car {
  font:
    600 15px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ppg-range {
  padding: 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-ppg-range__value {
  font:
    600 clamp(26px, 3.5vw, 34px) / 1 "IBM Plex Mono",
    monospace;
}
.rhd .mk-ppg-plot {
  position: relative;
  height: 44px;
  border-bottom: 1.5px solid var(--ink);
  margin-top: 8px;
}
.rhd .mk-ppg-plot__band {
  position: absolute;
  left: 33.3%;
  width: 25%;
  top: 0;
  bottom: 0;
  background: var(--amber);
  opacity: 0.18;
}
.rhd .mk-ppg-plot__dot {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--ink);
  transform: translateX(-5px);
}
.rhd .mk-ppg-axis {
  display: flex;
  justify-content: space-between;
  font:
    500 11px "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-ppg-comps {
  padding: 6px 0;
}
.rhd .mk-ppg-comp {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 14px;
  padding: 9px 16px;
  font:
    400 13px / 1.3 "IBM Plex Mono",
    monospace;
  align-items: center;
}
.rhd .mk-ppg-comp__car {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rhd .mk-ppg-comp__date {
  color: var(--ink-2);
}
.rhd .mk-ppg-comp__price {
  font-weight: 600;
}
.rhd .mk-ppg-comps__more {
  padding: 8px 16px 12px;
  font:
    600 13px "IBM Plex Sans",
    sans-serif;
  color: var(--amber);
}
.rhd .mk-ppg-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: 20px;
}
.rhd .mk-ppg-step {
  border-top: 3px solid var(--ink);
  padding-top: 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-ppg-step__k {
  font:
    700 34px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-ppg-step__title {
  margin: 0;
  font:
    600 20px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ppg-step__text {
  margin: 0;
  font:
    400 15.5px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ppg-why {
  border-top: 1.5px solid var(--ink);
  border-bottom: 1.5px solid var(--ink);
}
.rhd .mk-ppg-why__inner {
  max-width: 880px;
  margin: 0 auto;
  padding: clamp(48px, 7vw, 80px) clamp(16px, 4vw, 40px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.rhd .mk-ppg-why__k {
  font:
    800 48px / 1 "Shippori Mincho B1",
    serif;
  opacity: 0.9;
}
.rhd .mk-ppg-why__text {
  margin: 0;
  font:
    400 18px / 1.65 "IBM Plex Sans",
    sans-serif;
}

/* ProductSearchPage: page layout. Built from design-mockups/rhd-woodblock; shared parts come from app/src/design. */
.rhd .mk-product-search__search-hero-div-4 {
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
}
.rhd .mk-product-search__search-hero-div-5 {
  flex: 1 1 240px;
  padding: 18px;
  border-right: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 14px;
  background: var(--paper-2);
}
.rhd .mk-product-search__search-hero-div-6 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-product-search__search-hero-div-7 {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.rhd .mk-product-search__search-hero-span-2 {
  font:
    500 12px "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-product-search__search-hero-span-3 {
  padding: 9px 10px;
  border: 1.5px solid var(--ink);
  background: var(--card);
  font:
    500 13px "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-search__search-hero-div-8 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.rhd .mk-product-search__search-hero-span-4 {
  padding: 9px 10px;
  border: 1px solid var(--rule);
  background: var(--card);
  font:
    500 13px "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-search__search-hero-div-9 {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.rhd .mk-product-search__search-hero-span-5 {
  font:
    600 12px / 1 "IBM Plex Mono",
    monospace;
  padding: 7px 9px;
  background: var(--ink);
  color: var(--paper);
  border-radius: 2px;
}
.rhd .mk-product-search__search-hero-div-10 {
  margin-top: auto;
  padding: 10px;
  border: 1.5px dashed var(--amber);
  font:
    500 13px / 1.4 "IBM Plex Sans",
    sans-serif;
  color: var(--amber);
}
.rhd .mk-product-search__search-hero-div-11 {
  flex: 3 1 480px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.rhd .mk-product-search__search-hero-div-12 {
  padding: 12px 16px;
  border-bottom: 1px solid var(--rule);
  font:
    500 12px / 1.3 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: space-between;
}
.rhd .mk-product-search__search-hero-div-13 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-product-search__search-hero-div-14 {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-product-search__search-hero-div-15 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.rhd .mk-product-search__search-hero-span-6 {
  font:
    600 14.5px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-search__search-hero-span-7 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 2px;
}
.rhd .mk-product-search__search-hero-span-8 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  border: 1px solid var(--ok);
  color: var(--ok);
  border-radius: 2px;
}
.rhd .mk-product-search__search-hero-span-9 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  background: var(--beni);
  color: var(--paper);
  border-radius: 2px;
}
.rhd .mk-product-search__search-hero-div-16 {
  font:
    400 12.5px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}
.rhd .mk-product-search__search-hero-span-10 {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 14px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 50%;
  transform: rotate(-8deg);
}
.rhd .mk-product-search__how-it-works-div-4 {
  padding: 6px;
}
.rhd .mk-product-search__how-it-works-div-5 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-product-search__how-it-works-span-2 {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-search__how-it-works-span-3 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ok);
}
.rhd .mk-product-search__how-it-works-div-6 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px;
}
.rhd .mk-product-search__how-it-works-span-4 {
  font:
    600 12px / 1 "IBM Plex Sans",
    sans-serif;
  padding: 7px 10px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-div-7 {
  padding: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.rhd .mk-product-search__how-it-works-span-5 {
  font:
    500 13px / 1 "IBM Plex Mono",
    monospace;
  padding: 8px 10px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-span-6 {
  font:
    500 13px / 1 "IBM Plex Mono",
    monospace;
  padding: 8px 10px;
  border: 1px solid var(--rule);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-span-7 {
  color: var(--beni);
}
.rhd .mk-product-search__how-it-works-div-8 {
  width: 100%;
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
  border-top: 1px solid var(--rule);
  padding-top: 10px;
  margin-top: 4px;
}
.rhd .mk-product-search__how-it-works-span-8 {
  color: var(--beni);
  font-weight: 600;
}
.rhd .mk-product-search__how-it-works-div-10 {
  padding: 13px 16px;
  border-bottom: 1px solid var(--rule);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.rhd .mk-product-search__how-it-works-span-9 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  border: 1px solid var(--amber);
  color: var(--amber);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-span-10 {
  font:
    600 10px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 5px;
  border: 1px solid var(--ok);
  color: var(--ok);
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-div-11 {
  padding: 13px 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.rhd .mk-product-search__how-it-works-div-12 {
  padding: 16px;
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.rhd .mk-product-search__how-it-works-span-11 {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: var(--beni);
  color: var(--paper);
  font:
    800 18px / 1 "Shippori Mincho B1",
    serif;
  border-radius: 2px;
}
.rhd .mk-product-search__how-it-works-div-13 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rhd .mk-product-search__how-it-works-b {
  font:
    600 15px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-search__how-it-works-span-12 {
  font:
    400 13px / 1.5 "IBM Plex Mono",
    monospace;
  color: var(--ink-2);
}

/* ProductSheetsPage: page layout. Built from design-mockups/rhd-woodblock; shared parts come from app/src/design. */
.rhd .mk-product-sheets__sheets-hero-div-3 {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: stretch;
}
.rhd .mk-product-sheets__sheets-hero-div-4 {
  flex: 1 1 420px;
  min-width: 0;
  background: #fbf7ee;
  color: #2a1c12;
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-family: "Shippori Mincho B1", serif;
}
.rhd .mk-product-sheets__sheets-hero-div-5 {
  display: flex;
  justify-content: space-between;
  font:
    700 13px / 1 "Shippori Mincho B1",
    serif;
  border-bottom: 2px solid #2a1c12;
  padding-bottom: 8px;
}
.rhd .mk-product-sheets__sheets-hero-span {
  font-family: "IBM Plex Mono", monospace;
}
.rhd .mk-product-sheets__sheets-hero-div-6 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid #2a1c12;
  border-left: 1px solid #2a1c12;
  font-size: 12px;
}
.rhd .mk-product-sheets__sheets-hero-div-7 {
  border-right: 1px solid #2a1c12;
  border-bottom: 1px solid #2a1c12;
  padding: 6px;
}
.rhd .mk-product-sheets__sheets-hero-div-8 {
  font-size: 10px;
  color: #6b5643;
}
.rhd .mk-product-sheets__sheets-hero-div-9 {
  border-right: 1px solid #2a1c12;
  border-bottom: 1px solid #2a1c12;
  padding: 6px;
  text-align: center;
  position: relative;
}
.rhd .mk-product-sheets__sheets-hero-span-2 {
  font:
    700 22px / 1 "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-div-10 {
  grid-column: span 4;
  border-right: 1px solid #2a1c12;
  border-bottom: 1px solid #2a1c12;
  padding: 6px;
  background: #f4cf8f55;
}
.rhd .mk-product-sheets__sheets-hero-span-3 {
  font:
    600 14px "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-sheets__sheets-hero-div-11 {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.rhd .mk-product-sheets__sheets-hero-div-12 {
  position: relative;
  width: 150px;
  height: 190px;
  flex-shrink: 0;
  margin: 6px auto;
}
.rhd .mk-product-sheets__sheets-hero-div-13 {
  position: absolute;
  left: 30px;
  top: 0;
  width: 90px;
  height: 186px;
  border: 1.5px solid #2a1c12;
  border-radius: 26px 26px 14px 14px;
}
.rhd .mk-product-sheets__sheets-hero-div-14 {
  position: absolute;
  left: 42px;
  top: 62px;
  width: 66px;
  height: 70px;
  border: 1px solid #2a1c12;
  border-radius: 6px;
}
.rhd .mk-product-sheets__sheets-hero-span-4 {
  position: absolute;
  left: 4px;
  top: 22px;
  font:
    600 12px "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-span-5 {
  position: absolute;
  left: 58px;
  top: 110px;
  font:
    600 12px "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-span-6 {
  position: absolute;
  left: 60px;
  top: 168px;
  font:
    600 12px "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-span-7 {
  position: absolute;
  right: 0;
  top: 30px;
  font:
    600 12px "IBM Plex Mono",
    monospace;
  color: #b23a28;
}
.rhd .mk-product-sheets__sheets-hero-div-15 {
  flex: 1 1 140px;
  font-size: 14px;
  line-height: 1.9;
  border-left: 1px solid #2a1c12;
  padding-left: 10px;
}
.rhd .mk-product-sheets__sheets-hero-div-16 {
  flex: 1 1 420px;
  min-width: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 8px 8px 0 var(--shadow);
  display: flex;
  flex-direction: column;
}
.rhd .mk-product-sheets__sheets-hero-div-17 {
  padding: 12px 16px;
  background: var(--ai);
  color: var(--on-ai);
  display: flex;
  justify-content: space-between;
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.rhd .mk-product-sheets__sheets-hero-span-8 {
  font-family: "IBM Plex Mono", monospace;
  letter-spacing: 0;
}
.rhd .mk-product-sheets__sheets-hero-div-18 {
  padding: 16px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 12px 18px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-product-sheets__sheets-hero-div-19 {
  font:
    500 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__sheets-hero-div-20 {
  font:
    600 15px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__sheets-hero-div-21 {
  font:
    600 15px / 1.4 "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-product-sheets__sheets-hero-div-22 {
  font:
    600 15px / 1.4 "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-sheets__sheets-hero-div-23 {
  padding: 14px 16px;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-product-sheets__sheets-hero-div-24 {
  font:
    500 11px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
  margin-bottom: 6px;
}
.rhd .mk-product-sheets__sheets-hero-span-9 {
  font:
    600 19px / 1 "IBM Plex Mono",
    monospace;
  background: var(--hl);
  padding: 7px 10px;
  border: 1.5px dashed var(--beni);
  display: inline-block;
}
.rhd .mk-product-sheets__sheets-hero-div-25 {
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font:
    400 14px / 1.45 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__sheets-hero-b {
  font:
    600 13px "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-product-sheets__sheets-hero-div-26 {
  margin-top: 6px;
  padding-top: 10px;
  border-top: 1px solid var(--rule);
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr));
  gap: 20px;
}
.rhd .mk-product-sheets__how-it-works-div-2 {
  border: 1.5px solid var(--ink);
  background: var(--card);
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-product-sheets__how-it-works-span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: var(--beni);
  color: var(--paper);
  font:
    700 15px / 1 "IBM Plex Mono",
    monospace;
  border-radius: 50%;
}
.rhd .mk-product-sheets__how-it-works-h3 {
  margin: 0;
  font:
    600 19px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__how-it-works-p {
  margin: 0;
  font:
    400 15px / 1.55 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-div-3 {
  display: flex;
  gap: 6px;
  margin-top: auto;
}
.rhd .mk-product-sheets__how-it-works-span-2 {
  padding: 6px 9px;
  border: 2px solid var(--beni);
  color: var(--beni);
  font:
    700 15px "IBM Plex Mono",
    monospace;
  border-radius: 50%;
}
.rhd .mk-product-sheets__how-it-works-span-3 {
  padding: 6px 9px;
  border: 1px solid var(--rule);
  font:
    600 15px "IBM Plex Mono",
    monospace;
}
.rhd .mk-product-sheets__how-it-works-div-4 {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 3px 10px;
  font:
    400 13px / 1.4 "IBM Plex Sans",
    sans-serif;
  margin-top: auto;
}
.rhd .mk-product-sheets__how-it-works-b {
  font-family: "IBM Plex Mono", monospace;
  color: var(--beni);
}
.rhd .mk-product-sheets__how-it-works-div-5 {
  margin-top: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 10px;
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__how-it-works-span-4 {
  font-family: "Shippori Mincho B1", serif;
}
.rhd .mk-product-sheets__how-it-works-span-5 {
  margin-top: auto;
  align-self: flex-start;
  font:
    600 15px "IBM Plex Mono",
    monospace;
  background: var(--hl);
  padding: 6px 9px;
  border: 1.5px dashed var(--beni);
}
.rhd .mk-product-sheets__how-it-works-div-6 {
  margin-top: 48px;
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  align-items: center;
}
.rhd .mk-product-sheets__how-it-works-div-7 {
  flex: 1 1 320px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-product-sheets__how-it-works-span-6 {
  font:
    700 40px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-product-sheets__how-it-works-h3-2 {
  margin: 0;
  font:
    600 22px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__how-it-works-p-2 {
  margin: 0;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-div-8 {
  flex: 1.3 1 400px;
  min-width: 0;
  background: var(--card);
  border: 1.5px solid var(--ink);
  box-shadow: 5px 5px 0 var(--shadow);
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rhd .mk-product-sheets__how-it-works-div-9 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.rhd .mk-product-sheets__how-it-works-span-7 {
  font:
    500 12px "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-span-8 {
  font:
    600 11px / 1 "IBM Plex Sans",
    sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--amber);
  border: 1px solid var(--amber);
  padding: 4px 6px;
  border-radius: 2px;
}
.rhd .mk-product-sheets__how-it-works-div-10 {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
.rhd .mk-product-sheets__how-it-works-span-9 {
  font:
    600 16px "IBM Plex Mono",
    monospace;
  text-decoration: line-through;
  color: var(--ink-2);
}
.rhd .mk-product-sheets__how-it-works-span-10 {
  font:
    600 16px "IBM Plex Mono",
    monospace;
  padding: 7px 10px;
  border: 1.5px solid var(--ink);
  background: var(--paper);
}
.rhd .mk-product-sheets__how-it-works-span-11 {
  font:
    500 12px "IBM Plex Sans",
    sans-serif;
  color: var(--ok);
}
.rhd .mk-product-sheets__details-div-2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  gap: 0;
  border-top: 1.5px solid var(--ink);
  font:
    400 15px / 1.4 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-product-sheets__details-div-3 {
  padding: 14px 0;
  border-bottom: 1px solid var(--rule);
}

.rhd .mk-ra {
  padding-top: clamp(40px, 6vw, 80px);
  padding-bottom: 96px;
  display: flex;
  flex-wrap: wrap;
  gap: clamp(32px, 5vw, 64px);
  align-items: flex-start;
}
.rhd .mk-ra__intro {
  flex: 1 1 340px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.rhd .mk-ra__lede {
  margin: 0;
  font:
    400 18px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ra__steps {
  border-top: 1.5px solid var(--ink);
  display: flex;
  flex-direction: column;
  font:
    400 15.5px / 1.5 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ra__step {
  display: flex;
  gap: 14px;
  padding: 14px 0;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-ra__n {
  font:
    500 13px / 1.6 "IBM Plex Mono",
    monospace;
  color: var(--beni);
}
.rhd .mk-ra__panel {
  flex: 1.2 1 420px;
  min-width: 0;
}
.rhd .mk-ra__form {
  padding: clamp(20px, 3.5vw, 36px);
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.rhd .mk-ra__pair {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  gap: 18px;
}
.rhd .mk-ra__fieldset {
  border: 0;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rhd .mk-ra__legend {
  font:
    600 14px "IBM Plex Sans",
    sans-serif;
  margin-bottom: 8px;
}
.rhd .mk-ra__fieldset .rhd-toggle {
  font-size: 14.5px;
}
.rhd .mk-ra__call {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px;
  border: 1.5px dashed var(--amber);
  font:
    400 15px / 1.45 "IBM Plex Sans",
    sans-serif;
  cursor: pointer;
}
.rhd .mk-ra__call input {
  width: 20px;
  height: 20px;
  margin: 1px 0 0;
  accent-color: var(--amber);
}
.rhd .mk-ra__submit {
  height: 52px;
  padding: 0;
}
.rhd .mk-ra__fine {
  margin: 0;
  font:
    400 13px / 1.5 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ra__error {
  margin: 0;
  padding: 10px 12px;
  border: 1.5px solid var(--beni);
  color: var(--beni);
  font:
    500 14px / 1.45 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-ra__hp {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.rhd .mk-ra__done {
  padding: clamp(28px, 4vw, 48px);
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: flex-start;
}
.rhd .mk-ra__thanks {
  margin: 0;
  font:
    700 32px / 1.15 "Shippori Mincho B1",
    serif;
}
.rhd .mk-ra__done-text {
  margin: 0;
  font:
    400 17px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-ra__done-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.rhd .mk-ra__done-actions .rhd-btn {
  padding: 13px 18px;
  font-size: 15px;
}

/* /security — values from design-mockups/rhd-woodblock/Security.dc.html */
.rhd .mk-security {
  max-width: 880px;
  margin: 0 auto;
  padding: clamp(40px, 6vw, 88px) clamp(16px, 4vw, 40px) 88px;
}
.rhd .mk-security__label {
  margin-bottom: 16px;
}
.rhd .mk-security__title {
  margin: 0 0 16px;
  font:
    800 clamp(36px, 5vw, 56px) / 1.05 "Shippori Mincho B1",
    serif;
  text-wrap: balance;
}
.rhd .mk-security__intro {
  margin: 0 0 48px;
  font:
    400 19px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-security__list {
  display: flex;
  flex-direction: column;
  border-top: 1.5px solid var(--ink);
}
.rhd .mk-security__item {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 16px;
  padding: 28px 0;
  border-bottom: 1px solid var(--rule);
}
.rhd .mk-security__k {
  font:
    700 28px / 1 "Shippori Mincho B1",
    serif;
  color: var(--beni);
}
.rhd .mk-security__heading {
  margin: 0 0 8px;
  font:
    600 21px / 1.3 "IBM Plex Sans",
    sans-serif;
}
.rhd .mk-security__text {
  margin: 0;
  font:
    400 16.5px / 1.65 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}
.rhd .mk-security__contact {
  margin: 40px 0 0;
  font:
    400 16px / 1.6 "IBM Plex Sans",
    sans-serif;
  color: var(--ink-2);
}

/* Generated by app/scripts/fonts.mjs. Do not edit; run `yarn workspace app fonts`. */

/* ibm-plex-sans-latin-400-normal */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/11781b13e59d30facc40.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/3160b5c6767eb4c69c78.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-sans-latin-500-normal */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/d8f3e27fbeccd900a867.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/fcd7b8c3d12375eedc97.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-sans-latin-600-normal */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/57f2c00df3cb0b0cff43.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/24bc59b4b4ad02d1666d.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-mono-latin-400-normal */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/081b2e53053c361ddb54.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/2b13cc93b07c41b27134.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-mono-latin-500-normal */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/c28c19b51fcc5afd6835.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(/a1fc5384545ba0657d83.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ibm-plex-mono-latin-600-normal */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/5d11148cf713d2ddf354.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/45199eea8828315083bf.woff2) format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* shippori-mincho-b1-[68]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/ce038099fb045d928ae6.woff2)
    format("woff2");
  unicode-range:
    U+2466, U+2600, U+4eab, U+4fe3, U+4ff5, U+51a5, U+51f0, U+536f, U+53d4, U+53f1, U+54a5, U+559d, U+55e3, U+58fa, U+5962, U+59ea, U+5c16, U+5cef, U+5d16, U+5f10, U+5fd6, U+6190, U+6216, U+634f, U+63bb, U+66d6, U+6756, U+6bc5, U+6e26, U+727d, U+731f, U+76f2, U+7729, U+7a7f, U+7aff, U+7c9f, U+818f, U+8236, U+82b9, U+8338, U+85aa, U+88b4, U+8b33, U+904d, U+93a7, U+96cc, U+96eb, U+9aed, U+9b8e, U+fa11;
}

/* shippori-mincho-b1-[69]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/21828d1b623f357f6bd2.woff2)
    format("woff2");
  unicode-range:
    U+251c, U+2523, U+4e14, U+545f, U+54bd, U+553e, U+55dc, U+56da, U+589c, U+5b55, U+5bb5, U+5ce1, U+5df4, U+5eb6, U+5ec9, U+6191, U+62f7, U+6357, U+64a5, U+6591, U+65bc, U+6897, U+6e1a, U+7063, U+711a, U+721b, U+722c, U+75b9, U+75d5, U+75fa, U+7766, U+7aae, U+7b48, U+7b8b, U+7d21, U+7e55, U+7f75, U+842c, U+8910, U+8a63, U+8b39, U+8b5a, U+8cdc, U+8d74, U+907d, U+91e7, U+9306, U+96bc, U+98f4, U+9ac4;
}

/* shippori-mincho-b1-[74]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/cad9b344c8a3d1943ff9.woff2)
    format("woff2");
  unicode-range:
    U+221e, U+2514, U+51f9, U+5270, U+5449, U+5824, U+59a5, U+5a29, U+5d07, U+5e16, U+60e3, U+614c, U+6276, U+643e, U+64ab, U+6562, U+6681, U+670b, U+6734, U+67af, U+6a3d, U+6b05, U+6dc0, U+6e4a, U+7259, U+732a, U+7409, U+78a7, U+7a6b, U+8015, U+809b, U+817a, U+830e, U+837b, U+85ab, U+8a23, U+8a93, U+8b00, U+8b19, U+8b21, U+8cbf, U+8fb0, U+901d, U+91b8, U+9320, U+932c, U+9688, U+96f6, U+9df2, U+ff6a;
}

/* shippori-mincho-b1-[75]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/3a25eb0b5d52d58ac522.woff2)
    format("woff2");
  unicode-range:
    U+2002, U+2025, U+4f8d, U+51e1, U+51f8, U+5507, U+5598, U+58f1, U+5983, U+59ac, U+5c3c, U+5de7, U+5e7d, U+5eca, U+5f61, U+606d, U+60f9, U+636e, U+64ec, U+67da, U+67ff, U+6813, U+68f2, U+693f, U+6b6a, U+6bbb, U+6ef4, U+7092, U+717d, U+7261, U+73c8, U+7432, U+7483, U+76fe, U+7709, U+78d0, U+81a3, U+81b3, U+82af, U+8305, U+8309, U+8870, U+88fe, U+8cd1, U+8d66, U+906e, U+971e, U+9812, U+ff79, U+ff90;
}

/* shippori-mincho-b1-[77]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/a6721f53f365df9f52e7.woff2)
    format("woff2");
  unicode-range:
    U+2266-2267, U+4f2f, U+5208, U+5451, U+546a, U+5589, U+576a, U+5815, U+5a9a, U+5b9b, U+5c3a, U+5efb, U+5faa, U+6109, U+6643, U+6652, U+695a, U+69fd, U+6b86, U+6bb4, U+6daf, U+7089, U+70cf, U+7a00, U+7a4f, U+7b39, U+7d33, U+80e1, U+828b, U+82a6, U+86cd, U+8c8c, U+8cca, U+8df3, U+9077, U+9175, U+91dc, U+925b, U+9262, U+9271, U+92ed, U+9855, U+9905, U+9d28, U+ff3f, U+ff58, U+ff68, U+ff6d, U+ff9c;
}

/* shippori-mincho-b1-[86]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/b03fa56dc4a442c640d4.woff2)
    format("woff2");
  unicode-range:
    U+25c7, U+3007, U+504f, U+507d, U+51a0, U+52a3, U+5410, U+5510, U+559a, U+5782, U+582a, U+5c0a, U+5c3f, U+5c48, U+5f6b, U+6176, U+622f, U+6279, U+62bd, U+62dd, U+65ed, U+67b6, U+6817, U+6850, U+6d6a, U+6deb, U+6ea2, U+6edd, U+6f5c, U+72e9, U+73a9, U+7573, U+76bf, U+7950, U+7956, U+7f8a, U+7ffc, U+80a2, U+80c3, U+83ca, U+8a02, U+8a13, U+8df5, U+9375, U+983b, U+99b4, U+ff4e, U+ff71, U+ff89, U+ff97;
}

/* shippori-mincho-b1-[87]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/911a8dc93963d0b56e52.woff2)
    format("woff2");
  unicode-range:
    U+24, U+2022, U+2212, U+221f, U+2665, U+4ecf, U+5100, U+51cd, U+52d8, U+5378, U+53f6, U+574a, U+5982, U+5996, U+5c1a, U+5e1d, U+5f84, U+609f, U+61a7, U+61f8, U+6398, U+63ee, U+6676, U+6691, U+6eb6, U+7126, U+71e5, U+7687, U+7965, U+7d17, U+80a1, U+8107, U+8266, U+85a6, U+8987, U+8ca2, U+8cab, U+8e0a, U+9042, U+95c7, U+9810, U+9867, U+98fc, U+ff52-ff54, U+ff61, U+ff77, U+ff98-ff99;
}

/* shippori-mincho-b1-[89]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/281a81e60fc35a7d3b5d.woff2)
    format("woff2");
  unicode-range:
    U+25bd, U+4e59, U+4ec1, U+4ff3, U+515a, U+518a, U+525b, U+5375, U+552f, U+57a3, U+5b9c, U+5c3d, U+5e3d, U+5e7b, U+5f0a, U+6094, U+6458, U+654f, U+67f3, U+6b8a, U+6bd2, U+6c37, U+6ce1, U+6e56, U+6e7f, U+6ed1, U+6ede, U+6f0f, U+70ad, U+7267, U+7363, U+786c, U+7a42, U+7db2, U+7f85, U+8178, U+829d, U+8896, U+8c5a, U+8cb0, U+8ce2, U+8ed2, U+9047, U+9177, U+970a, U+9ea6, U+ff1b, U+ff31, U+ff39, U+ff80;
}

/* shippori-mincho-b1-[90]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/f03d83ab78f092a73f06.woff2)
    format("woff2");
  unicode-range:
    U+a5, U+4e80, U+4f34, U+4f73, U+4f75, U+511f, U+5192, U+52aa, U+53c8, U+570f, U+57cb, U+596e, U+5d8b, U+5f66, U+5fd9, U+62db, U+62f6, U+6328, U+633f, U+63a7, U+6469, U+6bbf, U+6c41, U+6c57, U+6d44, U+6dbc, U+706f, U+72c2, U+72ed, U+7551, U+75f4, U+7949, U+7e26, U+7fd4, U+8150, U+8af8, U+8b0e, U+8b72, U+8ca7, U+934b, U+9a0e, U+9a12, U+9b42, U+ff41, U+ff43, U+ff45, U+ff49, U+ff4f, U+ff62-ff63;
}

/* shippori-mincho-b1-[91]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/01c27aa67fe588b5c7ef.woff2)
    format("woff2");
  unicode-range:
    U+4e18, U+4fb5, U+5104, U+52c7, U+5353, U+5374, U+53e5, U+587e, U+594f, U+5a20, U+5de1, U+5f18, U+5fcd, U+6291, U+62ab, U+6355, U+6392, U+63da, U+63e1, U+656c, U+6687, U+68b0-68b1, U+68d2, U+68da, U+6b27, U+6cbc, U+7159, U+7344, U+73cd, U+76df, U+790e, U+7cf8, U+8102, U+88c1, U+8aa0, U+8e0f, U+9178, U+92ad, U+9670, U+96c5, U+9cf4, U+9db4, U+ff3e, U+ff6f, U+ff72, U+ff78, U+ff7d, U+ff84, U+ff8c;
}

/* shippori-mincho-b1-[93]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/8e7fe849fcc131157a85.woff2)
    format("woff2");
  unicode-range:
    U+2460, U+4e5f, U+4e7e, U+4ed9, U+501f, U+502b, U+5968, U+5974, U+5ac1, U+5b99, U+5ba3, U+5be7, U+5be9, U+5c64, U+5cb8, U+5ec3, U+5f1f, U+616e, U+6297, U+62e0, U+62ec, U+6368, U+642d, U+65e6, U+6717, U+676f, U+6b04, U+732e, U+7652, U+76ca, U+76d7, U+7802, U+7e70, U+7f6a, U+8133, U+81e8, U+866b, U+878d, U+88f8, U+8a5e, U+8cdb, U+8d08, U+907a, U+90e1, U+96f2, U+9f8d, U+ff35, U+ff37, U+ff40, U+ff9d;
}

/* shippori-mincho-b1-[95]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/fc5d3e732d9a1fa92991.woff2)
    format("woff2");
  unicode-range:
    U+2015, U+2190, U+4e43, U+5019, U+5247, U+52e7, U+5438, U+54b2, U+55ab, U+57f7, U+5bd2, U+5e8a, U+5ef6, U+6016, U+60b2, U+6162, U+6319, U+6551, U+6607, U+66b4, U+675f, U+67d4, U+6b20, U+6b53, U+6ce3, U+719f, U+75b2, U+770b, U+7720, U+77ac, U+79d2, U+7af9, U+7d05, U+7dca, U+8056, U+80f8, U+81f3, U+8352, U+885d, U+8a70, U+8aa4, U+8cbc, U+900f, U+9084, U+91e3, U+9451, U+96c4, U+99c6, U+9ad4, U+ff70;
}

/* shippori-mincho-b1-[96]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/1323e5f5155f739ba4fc.woff2)
    format("woff2");
  unicode-range:
    U+2193, U+25b2, U+4e4b, U+516d, U+51c4, U+529f, U+52c9, U+5360, U+5442, U+5857, U+5915, U+59eb, U+5a9b, U+5c3b, U+6012, U+61b6, U+62b1, U+6311, U+6577, U+65e2, U+65ec, U+6613, U+6790, U+6cb9, U+7372, U+76ae, U+7d5e, U+7fcc, U+88ab, U+88d5, U+8caf, U+8ddd, U+8ecd, U+8f38, U+8f9e, U+8feb, U+9063, U+90f5, U+93e1, U+968a, U+968f, U+98fe, U+9ec4, U+ff1d, U+ff27, U+ff2a, U+ff36, U+ff3b, U+ff3d, U+ffe5;
}

/* shippori-mincho-b1-[97]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/a96740a5773f2dd5dc27.woff2)
    format("woff2");
  unicode-range:
    U+4e03, U+4f38, U+50b7, U+5264, U+5348, U+5371, U+585a, U+58ca, U+5951, U+59b9, U+59d4, U+5b98, U+5f8b, U+6388, U+64cd, U+65e7, U+6803, U+6b6f, U+6d66, U+6e0b, U+6ecb, U+6fc3, U+72ac, U+773c, U+77e2, U+7968, U+7a74, U+7dba, U+7dd1, U+7e3e, U+808c, U+811a, U+8179, U+8239, U+8584, U+8a0e, U+8a72, U+8b66, U+8c46, U+8f29, U+90a3, U+9234, U+96f0, U+9769, U+9774, U+9aa8, U+ff26, U+ff28, U+ff9e-ff9f;
}

/* shippori-mincho-b1-[99]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/cb31eae26b769f8429c3.woff2)
    format("woff2");
  unicode-range:
    U+25cb, U+4e71, U+4f59, U+50d5, U+520a, U+5217, U+5230, U+523a-523b, U+541b, U+5439, U+5747, U+59c9, U+5bdf, U+5c31, U+5de8, U+5e7c, U+5f69, U+6050, U+60d1, U+63cf, U+663c, U+67c4, U+6885, U+6c38, U+6d6e, U+6db2, U+6df7, U+6e2c, U+6f5f, U+7532, U+76e3-76e4, U+7701, U+793c, U+79f0, U+7a93, U+7d00, U+7de0, U+7e54, U+8328, U+8840, U+969c, U+96e8, U+9811, U+9aea, U+9b5a, U+ff24, U+ff2e, U+ff57;
}

/* shippori-mincho-b1-[100]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/189462eef2f8dadbf48e.woff2)
    format("woff2");
  unicode-range:
    U+2191, U+505c, U+52e4, U+5305, U+535a, U+56e0, U+59bb, U+5acc, U+5b09, U+5b87, U+5c90, U+5df1, U+5e2d, U+5e33, U+5f3e, U+6298, U+6383, U+653b, U+6697, U+6804, U+6a39, U+6cca, U+6e90, U+6f2b, U+702c, U+7206, U+7236, U+7559, U+7565, U+7591, U+75c7, U+75db, U+7b4b, U+7bb1, U+7d99, U+7fbd, U+8131, U+885b, U+8b1d, U+8ff7, U+9003, U+9045, U+96a0, U+9732, U+990a, U+99d0, U+9e97, U+9f62, U+ff25, U+ff2d;
}

/* shippori-mincho-b1-[101]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/574c8ef39092baed7076.woff2)
    format("woff2");
  unicode-range:
    U+4e08, U+4f9d, U+5012, U+514d, U+51b7, U+5275, U+53ca, U+53f8, U+5584, U+57fc, U+5b9d, U+5bfa, U+5c3e, U+5f01, U+5fb4, U+5fd7, U+606f, U+62e1, U+6563, U+6674, U+6cb3, U+6d3e, U+6d74, U+6e1b, U+6e2f, U+718a, U+7247, U+79d8, U+7d14, U+7d66, U+7d71, U+7df4, U+7e41, U+80cc, U+8155, U+83d3, U+8a95, U+8ab2, U+8ad6, U+8ca1, U+9000, U+9006, U+9678, U+97d3, U+9808, U+98ef, U+9a5a, U+9b45, U+ff23, U+ff30;
}

/* shippori-mincho-b1-[102]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/8c90b214642d249eb5af.woff2)
    format("woff2");
  unicode-range:
    U+25bc, U+3012, U+4ef2, U+4f0a, U+516b, U+5373, U+539a, U+53b3, U+559c, U+56f0, U+5727, U+5742, U+5965, U+59ff, U+5bc6, U+5dfb, U+5e45, U+5ead, U+5fb3, U+6211, U+6253, U+639b, U+63a8, U+6545, U+6575, U+6628, U+672d, U+68a8, U+6bdb, U+6d25, U+707d, U+767e, U+7834, U+7b46, U+7bc9, U+8074, U+82e6, U+8349, U+8a2a, U+8d70, U+8da3, U+8fce, U+91cc, U+967d, U+97ff, U+9996, U+ff1c, U+ff2f, U+ff32, U+ff34;
}

/* shippori-mincho-b1-[103]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/35e86c566a3a9aab4f02.woff2)
    format("woff2");
  unicode-range:
    U+3d, U+5e, U+25cf, U+4e0e, U+4e5d, U+4e73, U+4e94, U+4f3c, U+5009, U+5145, U+51ac, U+5238, U+524a, U+53f3, U+547c, U+5802, U+5922, U+5a66, U+5c0e, U+5de6, U+5fd8, U+5feb, U+6797, U+685c, U+6b7b, U+6c5f-6c60, U+6cc9, U+6ce2, U+6d17, U+6e21, U+7167, U+7642, U+76db, U+8001, U+821e, U+8857, U+89d2, U+8b1b, U+8b70, U+8cb4, U+8cde, U+8f03, U+8f2a, U+968e, U+9b54, U+9e7f, U+9ebb, U+ff05, U+ff33;
}

/* shippori-mincho-b1-[104]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/0527827481cc87fb2ab7.woff2)
    format("woff2");
  unicode-range:
    U+500d, U+5074, U+50cd, U+5175, U+52e2, U+5352, U+5354, U+53f2, U+5409, U+56fa, U+5a18, U+5b88, U+5bdd, U+5ca9, U+5f92, U+5fa9, U+60a9, U+623f, U+6483, U+653f, U+666f, U+66ae, U+66f2, U+6a21, U+6b66, U+6bcd, U+6d5c, U+796d, U+7a4d, U+7aef, U+7b56, U+7b97, U+7c4d, U+7e04, U+7fa9, U+8377, U+83dc, U+83ef, U+8535, U+8863, U+88cf, U+88dc, U+8907, U+8acb, U+90ce, U+91dd, U+ff0b, U+ff0d, U+ff19, U+ff65;
}

/* shippori-mincho-b1-[105]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/90bbd18b721a15989de9.woff2)
    format("woff2");
  unicode-range:
    U+4e01, U+4e21, U+4e38, U+52a9, U+547d, U+592e, U+5931, U+5b63, U+5c40, U+5dde, U+5e78, U+5efa, U+5fa1, U+604b, U+6075, U+62c5, U+632f, U+6a19, U+6c0f, U+6c11, U+6c96, U+6e05, U+70ba, U+71b1, U+7387, U+7403, U+75c5, U+77ed, U+795d, U+7b54, U+7cbe, U+7d19, U+7fa4, U+8089, U+81f4, U+8208, U+8336, U+8457, U+8a33, U+8c4a, U+8ca0, U+8ca8, U+8cc0, U+9014, U+964d, U+9803, U+983c, U+98db, U+ff17, U+ff21;
}

/* shippori-mincho-b1-[106]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/046738efc0a71ae05fd0.woff2)
    format("woff2");
  unicode-range:
    U+25, U+25a0, U+4e26, U+4f4e, U+5341, U+56f2, U+5bbf, U+5c45, U+5c55, U+5c5e, U+5dee, U+5e9c, U+5f7c, U+6255, U+627f, U+62bc, U+65cf, U+661f, U+666e, U+66dc, U+67fb, U+6975, U+6a4b, U+6b32, U+6df1, U+6e29, U+6fc0, U+738b, U+7686, U+7a76, U+7a81, U+7c73, U+7d75, U+7dd2, U+82e5, U+82f1, U+85ac, U+888b, U+899a, U+8a31, U+8a8c, U+8ab0, U+8b58, U+904a, U+9060, U+9280, U+95b2, U+984d, U+9ce5, U+ff18;
}

/* shippori-mincho-b1-[107]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/2f01b9edae5acabbc9d7.woff2)
    format("woff2");
  unicode-range:
    U+30f6, U+50ac, U+5178, U+51e6, U+5224, U+52dd, U+5883, U+5897, U+590f, U+5a5a, U+5bb3, U+5c65, U+5e03, U+5e2b, U+5e30, U+5eb7, U+6271, U+63f4, U+64ae, U+6574, U+672b, U+679a, U+6a29-6a2a, U+6ca2, U+6cc1, U+6d0b, U+713c, U+74b0, U+7981, U+7a0b, U+7bc0, U+7d1a, U+7d61, U+7fd2, U+822c, U+8996, U+89aa, U+8cac, U+8cbb, U+8d77, U+8def, U+9020, U+9152, U+9244, U+9662, U+967a, U+96e3, U+9759, U+ff16;
}

/* shippori-mincho-b1-[108]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/4b6e93932ec552ca89c2.woff2)
    format("woff2");
  unicode-range:
    U+23, U+3c, U+2192, U+4e45, U+4efb, U+4f50, U+4f8b, U+4fc2, U+5024, U+5150, U+5272, U+5370, U+53bb, U+542b, U+56db, U+56e3, U+57ce, U+5bc4, U+5bcc, U+5f71, U+60aa, U+6238, U+6280, U+629c, U+6539, U+66ff, U+670d, U+677e-677f, U+6839, U+69cb, U+6b4c, U+6bb5, U+6e96, U+6f14, U+72ec, U+7389, U+7814, U+79cb, U+79d1, U+79fb, U+7a0e, U+7d0d, U+85e4, U+8d64, U+9632, U+96e2, U+9805, U+99ac, U+ff1e;
}

/* shippori-mincho-b1-[109]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/1da794b80c6a62b515a7.woff2)
    format("woff2");
  unicode-range:
    U+2605-2606, U+301c, U+4e57, U+4fee, U+5065, U+52df, U+533b, U+5357, U+57df, U+58eb, U+58f0, U+591c, U+592a-592b, U+5948, U+5b85, U+5d0e, U+5ea7, U+5ff5, U+6025, U+63a1, U+63a5, U+63db, U+643a, U+65bd, U+671d, U+68ee, U+6982, U+6b73, U+6bd4, U+6d88, U+7570, U+7b11, U+7d76, U+8077, U+8217, U+8c37, U+8c61, U+8cc7, U+8d85, U+901f, U+962a, U+9802, U+9806, U+9854, U+98f2, U+9928, U+99c5, U+9ed2;
}

/* shippori-mincho-b1-[110]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/42dbec9c3d417f07c002.woff2)
    format("woff2");
  unicode-range:
    U+266a, U+4f11, U+533a, U+5343, U+534a, U+53cd, U+5404, U+56f3, U+5b57-5b58, U+5bae, U+5c4a, U+5e0c, U+5e2f, U+5eab, U+5f35, U+5f79, U+614b, U+6226, U+629e, U+65c5, U+6625, U+6751, U+6821, U+6b69, U+6b8b, U+6bce, U+6c42, U+706b, U+7c21, U+7cfb, U+805e, U+80b2, U+82b8, U+843d, U+8853, U+88c5, U+8a3c, U+8a66, U+8d8a, U+8fba, U+9069, U+91cf, U+9752, U+975e, U+9999, U+ff0f-ff10, U+ff14-ff15;
}

/* shippori-mincho-b1-[111]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/4f866989660f0bd2298f.woff2)
    format("woff2");
  unicode-range:
    U+40, U+4e86, U+4e95, U+4f01, U+4f1d, U+4fbf, U+5099, U+5171, U+5177, U+53cb, U+53ce, U+53f0, U+5668, U+5712, U+5ba4, U+5ca1, U+5f85, U+60f3, U+653e, U+65ad, U+65e9, U+6620, U+6750, U+6761, U+6b62, U+6b74, U+6e08, U+6e80, U+7248, U+7531, U+7533, U+753a, U+77f3, U+798f, U+7f6e, U+8449, U+88fd, U+89b3, U+8a55, U+8ac7, U+8b77, U+8db3, U+8efd, U+8fd4, U+9031-9032, U+9580, U+9589, U+96d1, U+985e;
}

/* shippori-mincho-b1-[112]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/a47215ccb59a307b29ad.woff2)
    format("woff2");
  unicode-range:
    U+2b, U+d7, U+300e-300f, U+4e07, U+4e8c, U+512a, U+5149, U+518d, U+5236, U+52b9, U+52d9, U+5468, U+578b, U+57fa, U+5b8c, U+5ba2, U+5c02, U+5de5, U+5f37, U+5f62, U+623b, U+63d0, U+652f, U+672a, U+6848, U+6d41, U+7136, U+7537, U+754c, U+76f4, U+79c1, U+7ba1, U+7d44, U+7d4c, U+7dcf, U+7dda, U+7de8, U+82b1, U+897f, U+8ca9, U+8cfc, U+904e, U+9664, U+982d, U+9858, U+98a8, U+9a13, U+ff13, U+ff5c;
}

/* shippori-mincho-b1-[113]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/8cf7d2c38e3aebd57b19.woff2)
    format("woff2");
  unicode-range:
    U+4e16, U+4e3b, U+4ea4, U+4ee4, U+4f4d, U+4f4f, U+4f55, U+4f9b, U+5317, U+5358, U+53c2, U+53e4, U+548c, U+571f, U+59cb, U+5cf6, U+5e38, U+63a2, U+63b2, U+6559, U+662d, U+679c, U+6c7a, U+72b6, U+7523, U+767d, U+770c, U+7a2e, U+7a3f, U+7a7a, U+7b2c, U+7b49, U+7d20, U+7d42, U+8003, U+8272, U+8a08, U+8aac, U+8cb7, U+8eab, U+8ee2, U+9054-9055, U+90fd, U+914d, U+91cd, U+969b, U+97f3, U+984c, U+ff06;
}

/* shippori-mincho-b1-[114]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/9a972b91ebc3b786be9c.woff2)
    format("woff2");
  unicode-range:
    U+26, U+5f, U+2026, U+203b, U+4e09, U+4eac, U+4ed5, U+4fa1, U+5143, U+5199, U+5207, U+539f, U+53e3, U+53f7, U+5411, U+5473, U+5546, U+55b6, U+5929, U+597d, U+5bb9, U+5c11, U+5c4b, U+5ddd, U+5f97, U+5fc5, U+6295, U+6301, U+6307, U+671b, U+76f8, U+78ba, U+795e, U+7d30, U+7d39, U+7d9a, U+89e3, U+8a00, U+8a73, U+8a8d, U+8a9e, U+8aad, U+8abf, U+8cea, U+8eca, U+8ffd, U+904b, U+9650, U+ff11-ff12;
}

/* shippori-mincho-b1-[115]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/2d539b55ca13900d1503.woff2)
    format("woff2");
  unicode-range:
    U+3e, U+3005, U+4e0d, U+4e88, U+4ecb, U+4ee3, U+4ef6, U+4fdd, U+4fe1, U+500b, U+50cf, U+5186, U+5316, U+53d7, U+540c, U+544a, U+54e1, U+5728, U+58f2, U+5973, U+5b89, U+5c71, U+5e02, U+5e97, U+5f15, U+5fc3, U+5fdc, U+601d, U+611b, U+611f, U+671f, U+6728, U+6765, U+683c, U+6b21, U+6ce8, U+6d3b, U+6d77, U+7530, U+7740, U+7acb, U+7d50, U+826f, U+8f09, U+8fbc, U+9001, U+9053, U+91ce, U+9762, U+98df;
}

/* shippori-mincho-b1-[116]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/5d381cb798e35c158a1f.woff2)
    format("woff2");
  unicode-range:
    U+7c, U+3080, U+4ee5, U+5148, U+516c, U+521d, U+5225, U+529b, U+52a0, U+53ef, U+56de, U+56fd, U+5909, U+591a, U+5b66, U+5b9f, U+5bb6, U+5bfe, U+5e73, U+5e83, U+5ea6, U+5f53, U+6027, U+610f, U+6210, U+6240, U+660e, U+66f4, U+66f8, U+6709, U+6771, U+697d, U+69d8, U+6a5f, U+6c34, U+6cbb, U+73fe, U+756a, U+7684, U+771f, U+793a, U+7f8e, U+898f, U+8a2d, U+8a71, U+8fd1, U+9078, U+9577, U+96fb, U+ff5e;
}

/* shippori-mincho-b1-[117]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/21e760fe1bf330a30349.woff2)
    format("woff2");
  unicode-range:
    U+a9, U+3010-3011, U+30e2, U+4e0b, U+4eca, U+4ed6, U+4ed8, U+4f53, U+4f5c, U+4f7f, U+53d6, U+540d, U+54c1, U+5730, U+5916, U+5b50, U+5c0f, U+5f8c, U+624b, U+6570, U+6587, U+6599, U+691c, U+696d, U+6cd5, U+7269, U+7279, U+7406, U+767a-767b, U+77e5, U+7d04, U+7d22, U+8005, U+80fd, U+81ea, U+8868, U+8981, U+89a7, U+901a, U+9023, U+90e8, U+91d1, U+9332, U+958b, U+96c6, U+9ad8, U+ff1a, U+ff1f;
}

/* shippori-mincho-b1-[118]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/c9674d98f6d45469e728.woff2)
    format("woff2");
  unicode-range:
    U+4e, U+a0, U+3000, U+300c-300d, U+4e00, U+4e0a, U+4e2d, U+4e8b, U+4eba, U+4f1a, U+5165, U+5168, U+5185, U+51fa, U+5206, U+5229, U+524d, U+52d5, U+5408, U+554f, U+5831, U+5834, U+5927, U+5b9a, U+5e74, U+5f0f, U+60c5, U+65b0, U+65b9, U+6642, U+6700, U+672c, U+682a, U+6b63, U+6c17, U+7121, U+751f, U+7528, U+753b, U+76ee, U+793e, U+884c, U+898b, U+8a18, U+9593, U+95a2, U+ff01, U+ff08-ff09;
}

/* shippori-mincho-b1-[119]-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/76f6de870dd2705cda7e.woff2)
    format("woff2");
  unicode-range:
    U+21-22, U+27-2a, U+2c-3b, U+3f, U+41-4d, U+4f-5d, U+61-7b, U+7d, U+ab, U+ae, U+b2-b3, U+b7, U+bb, U+c9, U+cd, U+d6, U+d8, U+dc, U+e0-e5, U+e7-ed, U+ef, U+f1-f4, U+f6, U+f8, U+fa, U+fc-fd, U+103, U+14d, U+1b0, U+300-301, U+1ebf, U+1ec7, U+2013-2014, U+201c-201d, U+2039-203a, U+203c, U+2048-2049, U+2113, U+2122, U+65e5, U+6708, U+70b9;
}

/* shippori-mincho-b1-latin-ext-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/08d445e0d257f5d02fc1.woff2)
    format("woff2");
  unicode-range:
    U+20, U+2027, U+3001-3002, U+3041-307f, U+3081-308f, U+3091-3093, U+3099-309a, U+309d-309e, U+30a1-30e1, U+30e3-30ed, U+30ef-30f0, U+30f2-30f4, U+30fb-30fe, U+ff0c, U+ff0e;
}

/* shippori-mincho-b1-latin-600-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/7f2b62018b314af3f671.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(/4050a5177bd1f65f6d92.woff2)
    format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* shippori-mincho-b1-[68]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/f174dbedb6bb5dd0d870.woff2)
    format("woff2");
  unicode-range:
    U+2466, U+2600, U+4eab, U+4fe3, U+4ff5, U+51a5, U+51f0, U+536f, U+53d4, U+53f1, U+54a5, U+559d, U+55e3, U+58fa, U+5962, U+59ea, U+5c16, U+5cef, U+5d16, U+5f10, U+5fd6, U+6190, U+6216, U+634f, U+63bb, U+66d6, U+6756, U+6bc5, U+6e26, U+727d, U+731f, U+76f2, U+7729, U+7a7f, U+7aff, U+7c9f, U+818f, U+8236, U+82b9, U+8338, U+85aa, U+88b4, U+8b33, U+904d, U+93a7, U+96cc, U+96eb, U+9aed, U+9b8e, U+fa11;
}

/* shippori-mincho-b1-[69]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/6696736da8fc1fffc592.woff2)
    format("woff2");
  unicode-range:
    U+251c, U+2523, U+4e14, U+545f, U+54bd, U+553e, U+55dc, U+56da, U+589c, U+5b55, U+5bb5, U+5ce1, U+5df4, U+5eb6, U+5ec9, U+6191, U+62f7, U+6357, U+64a5, U+6591, U+65bc, U+6897, U+6e1a, U+7063, U+711a, U+721b, U+722c, U+75b9, U+75d5, U+75fa, U+7766, U+7aae, U+7b48, U+7b8b, U+7d21, U+7e55, U+7f75, U+842c, U+8910, U+8a63, U+8b39, U+8b5a, U+8cdc, U+8d74, U+907d, U+91e7, U+9306, U+96bc, U+98f4, U+9ac4;
}

/* shippori-mincho-b1-[74]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/9a254aa11bf85924480e.woff2)
    format("woff2");
  unicode-range:
    U+221e, U+2514, U+51f9, U+5270, U+5449, U+5824, U+59a5, U+5a29, U+5d07, U+5e16, U+60e3, U+614c, U+6276, U+643e, U+64ab, U+6562, U+6681, U+670b, U+6734, U+67af, U+6a3d, U+6b05, U+6dc0, U+6e4a, U+7259, U+732a, U+7409, U+78a7, U+7a6b, U+8015, U+809b, U+817a, U+830e, U+837b, U+85ab, U+8a23, U+8a93, U+8b00, U+8b19, U+8b21, U+8cbf, U+8fb0, U+901d, U+91b8, U+9320, U+932c, U+9688, U+96f6, U+9df2, U+ff6a;
}

/* shippori-mincho-b1-[75]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/2cd7c30a92d46b66d590.woff2)
    format("woff2");
  unicode-range:
    U+2002, U+2025, U+4f8d, U+51e1, U+51f8, U+5507, U+5598, U+58f1, U+5983, U+59ac, U+5c3c, U+5de7, U+5e7d, U+5eca, U+5f61, U+606d, U+60f9, U+636e, U+64ec, U+67da, U+67ff, U+6813, U+68f2, U+693f, U+6b6a, U+6bbb, U+6ef4, U+7092, U+717d, U+7261, U+73c8, U+7432, U+7483, U+76fe, U+7709, U+78d0, U+81a3, U+81b3, U+82af, U+8305, U+8309, U+8870, U+88fe, U+8cd1, U+8d66, U+906e, U+971e, U+9812, U+ff79, U+ff90;
}

/* shippori-mincho-b1-[77]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/3ae58fe43b82da26cb30.woff2)
    format("woff2");
  unicode-range:
    U+2266-2267, U+4f2f, U+5208, U+5451, U+546a, U+5589, U+576a, U+5815, U+5a9a, U+5b9b, U+5c3a, U+5efb, U+5faa, U+6109, U+6643, U+6652, U+695a, U+69fd, U+6b86, U+6bb4, U+6daf, U+7089, U+70cf, U+7a00, U+7a4f, U+7b39, U+7d33, U+80e1, U+828b, U+82a6, U+86cd, U+8c8c, U+8cca, U+8df3, U+9077, U+9175, U+91dc, U+925b, U+9262, U+9271, U+92ed, U+9855, U+9905, U+9d28, U+ff3f, U+ff58, U+ff68, U+ff6d, U+ff9c;
}

/* shippori-mincho-b1-[86]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/c3e3137603df0962fe0b.woff2)
    format("woff2");
  unicode-range:
    U+25c7, U+3007, U+504f, U+507d, U+51a0, U+52a3, U+5410, U+5510, U+559a, U+5782, U+582a, U+5c0a, U+5c3f, U+5c48, U+5f6b, U+6176, U+622f, U+6279, U+62bd, U+62dd, U+65ed, U+67b6, U+6817, U+6850, U+6d6a, U+6deb, U+6ea2, U+6edd, U+6f5c, U+72e9, U+73a9, U+7573, U+76bf, U+7950, U+7956, U+7f8a, U+7ffc, U+80a2, U+80c3, U+83ca, U+8a02, U+8a13, U+8df5, U+9375, U+983b, U+99b4, U+ff4e, U+ff71, U+ff89, U+ff97;
}

/* shippori-mincho-b1-[87]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/aff356782e79b8d48879.woff2)
    format("woff2");
  unicode-range:
    U+24, U+2022, U+2212, U+221f, U+2665, U+4ecf, U+5100, U+51cd, U+52d8, U+5378, U+53f6, U+574a, U+5982, U+5996, U+5c1a, U+5e1d, U+5f84, U+609f, U+61a7, U+61f8, U+6398, U+63ee, U+6676, U+6691, U+6eb6, U+7126, U+71e5, U+7687, U+7965, U+7d17, U+80a1, U+8107, U+8266, U+85a6, U+8987, U+8ca2, U+8cab, U+8e0a, U+9042, U+95c7, U+9810, U+9867, U+98fc, U+ff52-ff54, U+ff61, U+ff77, U+ff98-ff99;
}

/* shippori-mincho-b1-[89]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/f09e78a5cbce54117230.woff2)
    format("woff2");
  unicode-range:
    U+25bd, U+4e59, U+4ec1, U+4ff3, U+515a, U+518a, U+525b, U+5375, U+552f, U+57a3, U+5b9c, U+5c3d, U+5e3d, U+5e7b, U+5f0a, U+6094, U+6458, U+654f, U+67f3, U+6b8a, U+6bd2, U+6c37, U+6ce1, U+6e56, U+6e7f, U+6ed1, U+6ede, U+6f0f, U+70ad, U+7267, U+7363, U+786c, U+7a42, U+7db2, U+7f85, U+8178, U+829d, U+8896, U+8c5a, U+8cb0, U+8ce2, U+8ed2, U+9047, U+9177, U+970a, U+9ea6, U+ff1b, U+ff31, U+ff39, U+ff80;
}

/* shippori-mincho-b1-[90]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/9b02eb887b79ca5cc5ca.woff2)
    format("woff2");
  unicode-range:
    U+a5, U+4e80, U+4f34, U+4f73, U+4f75, U+511f, U+5192, U+52aa, U+53c8, U+570f, U+57cb, U+596e, U+5d8b, U+5f66, U+5fd9, U+62db, U+62f6, U+6328, U+633f, U+63a7, U+6469, U+6bbf, U+6c41, U+6c57, U+6d44, U+6dbc, U+706f, U+72c2, U+72ed, U+7551, U+75f4, U+7949, U+7e26, U+7fd4, U+8150, U+8af8, U+8b0e, U+8b72, U+8ca7, U+934b, U+9a0e, U+9a12, U+9b42, U+ff41, U+ff43, U+ff45, U+ff49, U+ff4f, U+ff62-ff63;
}

/* shippori-mincho-b1-[91]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/138da1ff42d2731b7b5a.woff2)
    format("woff2");
  unicode-range:
    U+4e18, U+4fb5, U+5104, U+52c7, U+5353, U+5374, U+53e5, U+587e, U+594f, U+5a20, U+5de1, U+5f18, U+5fcd, U+6291, U+62ab, U+6355, U+6392, U+63da, U+63e1, U+656c, U+6687, U+68b0-68b1, U+68d2, U+68da, U+6b27, U+6cbc, U+7159, U+7344, U+73cd, U+76df, U+790e, U+7cf8, U+8102, U+88c1, U+8aa0, U+8e0f, U+9178, U+92ad, U+9670, U+96c5, U+9cf4, U+9db4, U+ff3e, U+ff6f, U+ff72, U+ff78, U+ff7d, U+ff84, U+ff8c;
}

/* shippori-mincho-b1-[93]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/ee4d1834618c7f415a30.woff2)
    format("woff2");
  unicode-range:
    U+2460, U+4e5f, U+4e7e, U+4ed9, U+501f, U+502b, U+5968, U+5974, U+5ac1, U+5b99, U+5ba3, U+5be7, U+5be9, U+5c64, U+5cb8, U+5ec3, U+5f1f, U+616e, U+6297, U+62e0, U+62ec, U+6368, U+642d, U+65e6, U+6717, U+676f, U+6b04, U+732e, U+7652, U+76ca, U+76d7, U+7802, U+7e70, U+7f6a, U+8133, U+81e8, U+866b, U+878d, U+88f8, U+8a5e, U+8cdb, U+8d08, U+907a, U+90e1, U+96f2, U+9f8d, U+ff35, U+ff37, U+ff40, U+ff9d;
}

/* shippori-mincho-b1-[95]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/ffd2b03cac354d2a9a1c.woff2)
    format("woff2");
  unicode-range:
    U+2015, U+2190, U+4e43, U+5019, U+5247, U+52e7, U+5438, U+54b2, U+55ab, U+57f7, U+5bd2, U+5e8a, U+5ef6, U+6016, U+60b2, U+6162, U+6319, U+6551, U+6607, U+66b4, U+675f, U+67d4, U+6b20, U+6b53, U+6ce3, U+719f, U+75b2, U+770b, U+7720, U+77ac, U+79d2, U+7af9, U+7d05, U+7dca, U+8056, U+80f8, U+81f3, U+8352, U+885d, U+8a70, U+8aa4, U+8cbc, U+900f, U+9084, U+91e3, U+9451, U+96c4, U+99c6, U+9ad4, U+ff70;
}

/* shippori-mincho-b1-[96]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/c12d4eafa5675a5c6039.woff2)
    format("woff2");
  unicode-range:
    U+2193, U+25b2, U+4e4b, U+516d, U+51c4, U+529f, U+52c9, U+5360, U+5442, U+5857, U+5915, U+59eb, U+5a9b, U+5c3b, U+6012, U+61b6, U+62b1, U+6311, U+6577, U+65e2, U+65ec, U+6613, U+6790, U+6cb9, U+7372, U+76ae, U+7d5e, U+7fcc, U+88ab, U+88d5, U+8caf, U+8ddd, U+8ecd, U+8f38, U+8f9e, U+8feb, U+9063, U+90f5, U+93e1, U+968a, U+968f, U+98fe, U+9ec4, U+ff1d, U+ff27, U+ff2a, U+ff36, U+ff3b, U+ff3d, U+ffe5;
}

/* shippori-mincho-b1-[97]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/04a0cfbc680a5747ec15.woff2)
    format("woff2");
  unicode-range:
    U+4e03, U+4f38, U+50b7, U+5264, U+5348, U+5371, U+585a, U+58ca, U+5951, U+59b9, U+59d4, U+5b98, U+5f8b, U+6388, U+64cd, U+65e7, U+6803, U+6b6f, U+6d66, U+6e0b, U+6ecb, U+6fc3, U+72ac, U+773c, U+77e2, U+7968, U+7a74, U+7dba, U+7dd1, U+7e3e, U+808c, U+811a, U+8179, U+8239, U+8584, U+8a0e, U+8a72, U+8b66, U+8c46, U+8f29, U+90a3, U+9234, U+96f0, U+9769, U+9774, U+9aa8, U+ff26, U+ff28, U+ff9e-ff9f;
}

/* shippori-mincho-b1-[99]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/d0c323956056dc509cdb.woff2)
    format("woff2");
  unicode-range:
    U+25cb, U+4e71, U+4f59, U+50d5, U+520a, U+5217, U+5230, U+523a-523b, U+541b, U+5439, U+5747, U+59c9, U+5bdf, U+5c31, U+5de8, U+5e7c, U+5f69, U+6050, U+60d1, U+63cf, U+663c, U+67c4, U+6885, U+6c38, U+6d6e, U+6db2, U+6df7, U+6e2c, U+6f5f, U+7532, U+76e3-76e4, U+7701, U+793c, U+79f0, U+7a93, U+7d00, U+7de0, U+7e54, U+8328, U+8840, U+969c, U+96e8, U+9811, U+9aea, U+9b5a, U+ff24, U+ff2e, U+ff57;
}

/* shippori-mincho-b1-[100]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/4c1cb8b67738ce5ba1e1.woff2)
    format("woff2");
  unicode-range:
    U+2191, U+505c, U+52e4, U+5305, U+535a, U+56e0, U+59bb, U+5acc, U+5b09, U+5b87, U+5c90, U+5df1, U+5e2d, U+5e33, U+5f3e, U+6298, U+6383, U+653b, U+6697, U+6804, U+6a39, U+6cca, U+6e90, U+6f2b, U+702c, U+7206, U+7236, U+7559, U+7565, U+7591, U+75c7, U+75db, U+7b4b, U+7bb1, U+7d99, U+7fbd, U+8131, U+885b, U+8b1d, U+8ff7, U+9003, U+9045, U+96a0, U+9732, U+990a, U+99d0, U+9e97, U+9f62, U+ff25, U+ff2d;
}

/* shippori-mincho-b1-[101]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/a878cb9b2d9b214894ff.woff2)
    format("woff2");
  unicode-range:
    U+4e08, U+4f9d, U+5012, U+514d, U+51b7, U+5275, U+53ca, U+53f8, U+5584, U+57fc, U+5b9d, U+5bfa, U+5c3e, U+5f01, U+5fb4, U+5fd7, U+606f, U+62e1, U+6563, U+6674, U+6cb3, U+6d3e, U+6d74, U+6e1b, U+6e2f, U+718a, U+7247, U+79d8, U+7d14, U+7d66, U+7d71, U+7df4, U+7e41, U+80cc, U+8155, U+83d3, U+8a95, U+8ab2, U+8ad6, U+8ca1, U+9000, U+9006, U+9678, U+97d3, U+9808, U+98ef, U+9a5a, U+9b45, U+ff23, U+ff30;
}

/* shippori-mincho-b1-[102]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/99424cecb59e061e56fb.woff2)
    format("woff2");
  unicode-range:
    U+25bc, U+3012, U+4ef2, U+4f0a, U+516b, U+5373, U+539a, U+53b3, U+559c, U+56f0, U+5727, U+5742, U+5965, U+59ff, U+5bc6, U+5dfb, U+5e45, U+5ead, U+5fb3, U+6211, U+6253, U+639b, U+63a8, U+6545, U+6575, U+6628, U+672d, U+68a8, U+6bdb, U+6d25, U+707d, U+767e, U+7834, U+7b46, U+7bc9, U+8074, U+82e6, U+8349, U+8a2a, U+8d70, U+8da3, U+8fce, U+91cc, U+967d, U+97ff, U+9996, U+ff1c, U+ff2f, U+ff32, U+ff34;
}

/* shippori-mincho-b1-[103]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/20c19b2ea9701d41853a.woff2)
    format("woff2");
  unicode-range:
    U+3d, U+5e, U+25cf, U+4e0e, U+4e5d, U+4e73, U+4e94, U+4f3c, U+5009, U+5145, U+51ac, U+5238, U+524a, U+53f3, U+547c, U+5802, U+5922, U+5a66, U+5c0e, U+5de6, U+5fd8, U+5feb, U+6797, U+685c, U+6b7b, U+6c5f-6c60, U+6cc9, U+6ce2, U+6d17, U+6e21, U+7167, U+7642, U+76db, U+8001, U+821e, U+8857, U+89d2, U+8b1b, U+8b70, U+8cb4, U+8cde, U+8f03, U+8f2a, U+968e, U+9b54, U+9e7f, U+9ebb, U+ff05, U+ff33;
}

/* shippori-mincho-b1-[104]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/46d873932ee1350aebac.woff2)
    format("woff2");
  unicode-range:
    U+500d, U+5074, U+50cd, U+5175, U+52e2, U+5352, U+5354, U+53f2, U+5409, U+56fa, U+5a18, U+5b88, U+5bdd, U+5ca9, U+5f92, U+5fa9, U+60a9, U+623f, U+6483, U+653f, U+666f, U+66ae, U+66f2, U+6a21, U+6b66, U+6bcd, U+6d5c, U+796d, U+7a4d, U+7aef, U+7b56, U+7b97, U+7c4d, U+7e04, U+7fa9, U+8377, U+83dc, U+83ef, U+8535, U+8863, U+88cf, U+88dc, U+8907, U+8acb, U+90ce, U+91dd, U+ff0b, U+ff0d, U+ff19, U+ff65;
}

/* shippori-mincho-b1-[105]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/8f2290133a87e3b7eeee.woff2)
    format("woff2");
  unicode-range:
    U+4e01, U+4e21, U+4e38, U+52a9, U+547d, U+592e, U+5931, U+5b63, U+5c40, U+5dde, U+5e78, U+5efa, U+5fa1, U+604b, U+6075, U+62c5, U+632f, U+6a19, U+6c0f, U+6c11, U+6c96, U+6e05, U+70ba, U+71b1, U+7387, U+7403, U+75c5, U+77ed, U+795d, U+7b54, U+7cbe, U+7d19, U+7fa4, U+8089, U+81f4, U+8208, U+8336, U+8457, U+8a33, U+8c4a, U+8ca0, U+8ca8, U+8cc0, U+9014, U+964d, U+9803, U+983c, U+98db, U+ff17, U+ff21;
}

/* shippori-mincho-b1-[106]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/9e1d548e76eb494e9427.woff2)
    format("woff2");
  unicode-range:
    U+25, U+25a0, U+4e26, U+4f4e, U+5341, U+56f2, U+5bbf, U+5c45, U+5c55, U+5c5e, U+5dee, U+5e9c, U+5f7c, U+6255, U+627f, U+62bc, U+65cf, U+661f, U+666e, U+66dc, U+67fb, U+6975, U+6a4b, U+6b32, U+6df1, U+6e29, U+6fc0, U+738b, U+7686, U+7a76, U+7a81, U+7c73, U+7d75, U+7dd2, U+82e5, U+82f1, U+85ac, U+888b, U+899a, U+8a31, U+8a8c, U+8ab0, U+8b58, U+904a, U+9060, U+9280, U+95b2, U+984d, U+9ce5, U+ff18;
}

/* shippori-mincho-b1-[107]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/5a5a361e4b376bc18206.woff2)
    format("woff2");
  unicode-range:
    U+30f6, U+50ac, U+5178, U+51e6, U+5224, U+52dd, U+5883, U+5897, U+590f, U+5a5a, U+5bb3, U+5c65, U+5e03, U+5e2b, U+5e30, U+5eb7, U+6271, U+63f4, U+64ae, U+6574, U+672b, U+679a, U+6a29-6a2a, U+6ca2, U+6cc1, U+6d0b, U+713c, U+74b0, U+7981, U+7a0b, U+7bc0, U+7d1a, U+7d61, U+7fd2, U+822c, U+8996, U+89aa, U+8cac, U+8cbb, U+8d77, U+8def, U+9020, U+9152, U+9244, U+9662, U+967a, U+96e3, U+9759, U+ff16;
}

/* shippori-mincho-b1-[108]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/f9806573df847f23b06f.woff2)
    format("woff2");
  unicode-range:
    U+23, U+3c, U+2192, U+4e45, U+4efb, U+4f50, U+4f8b, U+4fc2, U+5024, U+5150, U+5272, U+5370, U+53bb, U+542b, U+56db, U+56e3, U+57ce, U+5bc4, U+5bcc, U+5f71, U+60aa, U+6238, U+6280, U+629c, U+6539, U+66ff, U+670d, U+677e-677f, U+6839, U+69cb, U+6b4c, U+6bb5, U+6e96, U+6f14, U+72ec, U+7389, U+7814, U+79cb, U+79d1, U+79fb, U+7a0e, U+7d0d, U+85e4, U+8d64, U+9632, U+96e2, U+9805, U+99ac, U+ff1e;
}

/* shippori-mincho-b1-[109]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/33a6fd5dbeec1f1de0b7.woff2)
    format("woff2");
  unicode-range:
    U+2605-2606, U+301c, U+4e57, U+4fee, U+5065, U+52df, U+533b, U+5357, U+57df, U+58eb, U+58f0, U+591c, U+592a-592b, U+5948, U+5b85, U+5d0e, U+5ea7, U+5ff5, U+6025, U+63a1, U+63a5, U+63db, U+643a, U+65bd, U+671d, U+68ee, U+6982, U+6b73, U+6bd4, U+6d88, U+7570, U+7b11, U+7d76, U+8077, U+8217, U+8c37, U+8c61, U+8cc7, U+8d85, U+901f, U+962a, U+9802, U+9806, U+9854, U+98f2, U+9928, U+99c5, U+9ed2;
}

/* shippori-mincho-b1-[110]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/2a9020f0ea095447b176.woff2)
    format("woff2");
  unicode-range:
    U+266a, U+4f11, U+533a, U+5343, U+534a, U+53cd, U+5404, U+56f3, U+5b57-5b58, U+5bae, U+5c4a, U+5e0c, U+5e2f, U+5eab, U+5f35, U+5f79, U+614b, U+6226, U+629e, U+65c5, U+6625, U+6751, U+6821, U+6b69, U+6b8b, U+6bce, U+6c42, U+706b, U+7c21, U+7cfb, U+805e, U+80b2, U+82b8, U+843d, U+8853, U+88c5, U+8a3c, U+8a66, U+8d8a, U+8fba, U+9069, U+91cf, U+9752, U+975e, U+9999, U+ff0f-ff10, U+ff14-ff15;
}

/* shippori-mincho-b1-[111]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/ed6c0d19ebe34bc53fe8.woff2)
    format("woff2");
  unicode-range:
    U+40, U+4e86, U+4e95, U+4f01, U+4f1d, U+4fbf, U+5099, U+5171, U+5177, U+53cb, U+53ce, U+53f0, U+5668, U+5712, U+5ba4, U+5ca1, U+5f85, U+60f3, U+653e, U+65ad, U+65e9, U+6620, U+6750, U+6761, U+6b62, U+6b74, U+6e08, U+6e80, U+7248, U+7531, U+7533, U+753a, U+77f3, U+798f, U+7f6e, U+8449, U+88fd, U+89b3, U+8a55, U+8ac7, U+8b77, U+8db3, U+8efd, U+8fd4, U+9031-9032, U+9580, U+9589, U+96d1, U+985e;
}

/* shippori-mincho-b1-[112]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/845376a9dfd38100589e.woff2)
    format("woff2");
  unicode-range:
    U+2b, U+d7, U+300e-300f, U+4e07, U+4e8c, U+512a, U+5149, U+518d, U+5236, U+52b9, U+52d9, U+5468, U+578b, U+57fa, U+5b8c, U+5ba2, U+5c02, U+5de5, U+5f37, U+5f62, U+623b, U+63d0, U+652f, U+672a, U+6848, U+6d41, U+7136, U+7537, U+754c, U+76f4, U+79c1, U+7ba1, U+7d44, U+7d4c, U+7dcf, U+7dda, U+7de8, U+82b1, U+897f, U+8ca9, U+8cfc, U+904e, U+9664, U+982d, U+9858, U+98a8, U+9a13, U+ff13, U+ff5c;
}

/* shippori-mincho-b1-[113]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/31911e4783fd1e4f3864.woff2)
    format("woff2");
  unicode-range:
    U+4e16, U+4e3b, U+4ea4, U+4ee4, U+4f4d, U+4f4f, U+4f55, U+4f9b, U+5317, U+5358, U+53c2, U+53e4, U+548c, U+571f, U+59cb, U+5cf6, U+5e38, U+63a2, U+63b2, U+6559, U+662d, U+679c, U+6c7a, U+72b6, U+7523, U+767d, U+770c, U+7a2e, U+7a3f, U+7a7a, U+7b2c, U+7b49, U+7d20, U+7d42, U+8003, U+8272, U+8a08, U+8aac, U+8cb7, U+8eab, U+8ee2, U+9054-9055, U+90fd, U+914d, U+91cd, U+969b, U+97f3, U+984c, U+ff06;
}

/* shippori-mincho-b1-[114]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/502bc4de98e769e09000.woff2)
    format("woff2");
  unicode-range:
    U+26, U+5f, U+2026, U+203b, U+4e09, U+4eac, U+4ed5, U+4fa1, U+5143, U+5199, U+5207, U+539f, U+53e3, U+53f7, U+5411, U+5473, U+5546, U+55b6, U+5929, U+597d, U+5bb9, U+5c11, U+5c4b, U+5ddd, U+5f97, U+5fc5, U+6295, U+6301, U+6307, U+671b, U+76f8, U+78ba, U+795e, U+7d30, U+7d39, U+7d9a, U+89e3, U+8a00, U+8a73, U+8a8d, U+8a9e, U+8aad, U+8abf, U+8cea, U+8eca, U+8ffd, U+904b, U+9650, U+ff11-ff12;
}

/* shippori-mincho-b1-[115]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/05f15756c6284c12749d.woff2)
    format("woff2");
  unicode-range:
    U+3e, U+3005, U+4e0d, U+4e88, U+4ecb, U+4ee3, U+4ef6, U+4fdd, U+4fe1, U+500b, U+50cf, U+5186, U+5316, U+53d7, U+540c, U+544a, U+54e1, U+5728, U+58f2, U+5973, U+5b89, U+5c71, U+5e02, U+5e97, U+5f15, U+5fc3, U+5fdc, U+601d, U+611b, U+611f, U+671f, U+6728, U+6765, U+683c, U+6b21, U+6ce8, U+6d3b, U+6d77, U+7530, U+7740, U+7acb, U+7d50, U+826f, U+8f09, U+8fbc, U+9001, U+9053, U+91ce, U+9762, U+98df;
}

/* shippori-mincho-b1-[116]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/01cb21e8024cfffaa5f5.woff2)
    format("woff2");
  unicode-range:
    U+7c, U+3080, U+4ee5, U+5148, U+516c, U+521d, U+5225, U+529b, U+52a0, U+53ef, U+56de, U+56fd, U+5909, U+591a, U+5b66, U+5b9f, U+5bb6, U+5bfe, U+5e73, U+5e83, U+5ea6, U+5f53, U+6027, U+610f, U+6210, U+6240, U+660e, U+66f4, U+66f8, U+6709, U+6771, U+697d, U+69d8, U+6a5f, U+6c34, U+6cbb, U+73fe, U+756a, U+7684, U+771f, U+793a, U+7f8e, U+898f, U+8a2d, U+8a71, U+8fd1, U+9078, U+9577, U+96fb, U+ff5e;
}

/* shippori-mincho-b1-[117]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/488346e2ae22b92c4732.woff2)
    format("woff2");
  unicode-range:
    U+a9, U+3010-3011, U+30e2, U+4e0b, U+4eca, U+4ed6, U+4ed8, U+4f53, U+4f5c, U+4f7f, U+53d6, U+540d, U+54c1, U+5730, U+5916, U+5b50, U+5c0f, U+5f8c, U+624b, U+6570, U+6587, U+6599, U+691c, U+696d, U+6cd5, U+7269, U+7279, U+7406, U+767a-767b, U+77e5, U+7d04, U+7d22, U+8005, U+80fd, U+81ea, U+8868, U+8981, U+89a7, U+901a, U+9023, U+90e8, U+91d1, U+9332, U+958b, U+96c6, U+9ad8, U+ff1a, U+ff1f;
}

/* shippori-mincho-b1-[118]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/7bc5fddc59ea406db7ff.woff2)
    format("woff2");
  unicode-range:
    U+4e, U+a0, U+3000, U+300c-300d, U+4e00, U+4e0a, U+4e2d, U+4e8b, U+4eba, U+4f1a, U+5165, U+5168, U+5185, U+51fa, U+5206, U+5229, U+524d, U+52d5, U+5408, U+554f, U+5831, U+5834, U+5927, U+5b9a, U+5e74, U+5f0f, U+60c5, U+65b0, U+65b9, U+6642, U+6700, U+672c, U+682a, U+6b63, U+6c17, U+7121, U+751f, U+7528, U+753b, U+76ee, U+793e, U+884c, U+898b, U+8a18, U+9593, U+95a2, U+ff01, U+ff08-ff09;
}

/* shippori-mincho-b1-[119]-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/e11d543a6d2914f1b5a8.woff2)
    format("woff2");
  unicode-range:
    U+21-22, U+27-2a, U+2c-3b, U+3f, U+41-4d, U+4f-5d, U+61-7b, U+7d, U+ab, U+ae, U+b2-b3, U+b7, U+bb, U+c9, U+cd, U+d6, U+d8, U+dc, U+e0-e5, U+e7-ed, U+ef, U+f1-f4, U+f6, U+f8, U+fa, U+fc-fd, U+103, U+14d, U+1b0, U+300-301, U+1ebf, U+1ec7, U+2013-2014, U+201c-201d, U+2039-203a, U+203c, U+2048-2049, U+2113, U+2122, U+65e5, U+6708, U+70b9;
}

/* shippori-mincho-b1-latin-ext-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/72c7fdcaad684a0f6008.woff2)
    format("woff2");
  unicode-range:
    U+20, U+2027, U+3001-3002, U+3041-307f, U+3081-308f, U+3091-3093, U+3099-309a, U+309d-309e, U+30a1-30e1, U+30e3-30ed, U+30ef-30f0, U+30f2-30f4, U+30fb-30fe, U+ff0c, U+ff0e;
}

/* shippori-mincho-b1-latin-700-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/eed99aa8d7a3d701f0d7.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url(/0bffbe8dab6ec9423886.woff2)
    format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* shippori-mincho-b1-[68]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/1d732fadc6d0f667b25d.woff2)
    format("woff2");
  unicode-range:
    U+2466, U+2600, U+4eab, U+4fe3, U+4ff5, U+51a5, U+51f0, U+536f, U+53d4, U+53f1, U+54a5, U+559d, U+55e3, U+58fa, U+5962, U+59ea, U+5c16, U+5cef, U+5d16, U+5f10, U+5fd6, U+6190, U+6216, U+634f, U+63bb, U+66d6, U+6756, U+6bc5, U+6e26, U+727d, U+731f, U+76f2, U+7729, U+7a7f, U+7aff, U+7c9f, U+818f, U+8236, U+82b9, U+8338, U+85aa, U+88b4, U+8b33, U+904d, U+93a7, U+96cc, U+96eb, U+9aed, U+9b8e, U+fa11;
}

/* shippori-mincho-b1-[69]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/62b42b7755c0d6dc5313.woff2)
    format("woff2");
  unicode-range:
    U+251c, U+2523, U+4e14, U+545f, U+54bd, U+553e, U+55dc, U+56da, U+589c, U+5b55, U+5bb5, U+5ce1, U+5df4, U+5eb6, U+5ec9, U+6191, U+62f7, U+6357, U+64a5, U+6591, U+65bc, U+6897, U+6e1a, U+7063, U+711a, U+721b, U+722c, U+75b9, U+75d5, U+75fa, U+7766, U+7aae, U+7b48, U+7b8b, U+7d21, U+7e55, U+7f75, U+842c, U+8910, U+8a63, U+8b39, U+8b5a, U+8cdc, U+8d74, U+907d, U+91e7, U+9306, U+96bc, U+98f4, U+9ac4;
}

/* shippori-mincho-b1-[74]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/e8de2a0c21b220f65905.woff2)
    format("woff2");
  unicode-range:
    U+221e, U+2514, U+51f9, U+5270, U+5449, U+5824, U+59a5, U+5a29, U+5d07, U+5e16, U+60e3, U+614c, U+6276, U+643e, U+64ab, U+6562, U+6681, U+670b, U+6734, U+67af, U+6a3d, U+6b05, U+6dc0, U+6e4a, U+7259, U+732a, U+7409, U+78a7, U+7a6b, U+8015, U+809b, U+817a, U+830e, U+837b, U+85ab, U+8a23, U+8a93, U+8b00, U+8b19, U+8b21, U+8cbf, U+8fb0, U+901d, U+91b8, U+9320, U+932c, U+9688, U+96f6, U+9df2, U+ff6a;
}

/* shippori-mincho-b1-[75]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/5040accb9532572299d7.woff2)
    format("woff2");
  unicode-range:
    U+2002, U+2025, U+4f8d, U+51e1, U+51f8, U+5507, U+5598, U+58f1, U+5983, U+59ac, U+5c3c, U+5de7, U+5e7d, U+5eca, U+5f61, U+606d, U+60f9, U+636e, U+64ec, U+67da, U+67ff, U+6813, U+68f2, U+693f, U+6b6a, U+6bbb, U+6ef4, U+7092, U+717d, U+7261, U+73c8, U+7432, U+7483, U+76fe, U+7709, U+78d0, U+81a3, U+81b3, U+82af, U+8305, U+8309, U+8870, U+88fe, U+8cd1, U+8d66, U+906e, U+971e, U+9812, U+ff79, U+ff90;
}

/* shippori-mincho-b1-[77]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/a0df658cd6931f38785c.woff2)
    format("woff2");
  unicode-range:
    U+2266-2267, U+4f2f, U+5208, U+5451, U+546a, U+5589, U+576a, U+5815, U+5a9a, U+5b9b, U+5c3a, U+5efb, U+5faa, U+6109, U+6643, U+6652, U+695a, U+69fd, U+6b86, U+6bb4, U+6daf, U+7089, U+70cf, U+7a00, U+7a4f, U+7b39, U+7d33, U+80e1, U+828b, U+82a6, U+86cd, U+8c8c, U+8cca, U+8df3, U+9077, U+9175, U+91dc, U+925b, U+9262, U+9271, U+92ed, U+9855, U+9905, U+9d28, U+ff3f, U+ff58, U+ff68, U+ff6d, U+ff9c;
}

/* shippori-mincho-b1-[86]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/5de1d012ad69306386c5.woff2)
    format("woff2");
  unicode-range:
    U+25c7, U+3007, U+504f, U+507d, U+51a0, U+52a3, U+5410, U+5510, U+559a, U+5782, U+582a, U+5c0a, U+5c3f, U+5c48, U+5f6b, U+6176, U+622f, U+6279, U+62bd, U+62dd, U+65ed, U+67b6, U+6817, U+6850, U+6d6a, U+6deb, U+6ea2, U+6edd, U+6f5c, U+72e9, U+73a9, U+7573, U+76bf, U+7950, U+7956, U+7f8a, U+7ffc, U+80a2, U+80c3, U+83ca, U+8a02, U+8a13, U+8df5, U+9375, U+983b, U+99b4, U+ff4e, U+ff71, U+ff89, U+ff97;
}

/* shippori-mincho-b1-[87]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/6142623a02422475d70d.woff2)
    format("woff2");
  unicode-range:
    U+24, U+2022, U+2212, U+221f, U+2665, U+4ecf, U+5100, U+51cd, U+52d8, U+5378, U+53f6, U+574a, U+5982, U+5996, U+5c1a, U+5e1d, U+5f84, U+609f, U+61a7, U+61f8, U+6398, U+63ee, U+6676, U+6691, U+6eb6, U+7126, U+71e5, U+7687, U+7965, U+7d17, U+80a1, U+8107, U+8266, U+85a6, U+8987, U+8ca2, U+8cab, U+8e0a, U+9042, U+95c7, U+9810, U+9867, U+98fc, U+ff52-ff54, U+ff61, U+ff77, U+ff98-ff99;
}

/* shippori-mincho-b1-[89]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/997c0aa9917a570360c6.woff2)
    format("woff2");
  unicode-range:
    U+25bd, U+4e59, U+4ec1, U+4ff3, U+515a, U+518a, U+525b, U+5375, U+552f, U+57a3, U+5b9c, U+5c3d, U+5e3d, U+5e7b, U+5f0a, U+6094, U+6458, U+654f, U+67f3, U+6b8a, U+6bd2, U+6c37, U+6ce1, U+6e56, U+6e7f, U+6ed1, U+6ede, U+6f0f, U+70ad, U+7267, U+7363, U+786c, U+7a42, U+7db2, U+7f85, U+8178, U+829d, U+8896, U+8c5a, U+8cb0, U+8ce2, U+8ed2, U+9047, U+9177, U+970a, U+9ea6, U+ff1b, U+ff31, U+ff39, U+ff80;
}

/* shippori-mincho-b1-[90]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/42f33110d33562e71026.woff2)
    format("woff2");
  unicode-range:
    U+a5, U+4e80, U+4f34, U+4f73, U+4f75, U+511f, U+5192, U+52aa, U+53c8, U+570f, U+57cb, U+596e, U+5d8b, U+5f66, U+5fd9, U+62db, U+62f6, U+6328, U+633f, U+63a7, U+6469, U+6bbf, U+6c41, U+6c57, U+6d44, U+6dbc, U+706f, U+72c2, U+72ed, U+7551, U+75f4, U+7949, U+7e26, U+7fd4, U+8150, U+8af8, U+8b0e, U+8b72, U+8ca7, U+934b, U+9a0e, U+9a12, U+9b42, U+ff41, U+ff43, U+ff45, U+ff49, U+ff4f, U+ff62-ff63;
}

/* shippori-mincho-b1-[91]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/e4f3f775f69be24afc7e.woff2)
    format("woff2");
  unicode-range:
    U+4e18, U+4fb5, U+5104, U+52c7, U+5353, U+5374, U+53e5, U+587e, U+594f, U+5a20, U+5de1, U+5f18, U+5fcd, U+6291, U+62ab, U+6355, U+6392, U+63da, U+63e1, U+656c, U+6687, U+68b0-68b1, U+68d2, U+68da, U+6b27, U+6cbc, U+7159, U+7344, U+73cd, U+76df, U+790e, U+7cf8, U+8102, U+88c1, U+8aa0, U+8e0f, U+9178, U+92ad, U+9670, U+96c5, U+9cf4, U+9db4, U+ff3e, U+ff6f, U+ff72, U+ff78, U+ff7d, U+ff84, U+ff8c;
}

/* shippori-mincho-b1-[93]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/d165b9ba1f03d9f72f02.woff2)
    format("woff2");
  unicode-range:
    U+2460, U+4e5f, U+4e7e, U+4ed9, U+501f, U+502b, U+5968, U+5974, U+5ac1, U+5b99, U+5ba3, U+5be7, U+5be9, U+5c64, U+5cb8, U+5ec3, U+5f1f, U+616e, U+6297, U+62e0, U+62ec, U+6368, U+642d, U+65e6, U+6717, U+676f, U+6b04, U+732e, U+7652, U+76ca, U+76d7, U+7802, U+7e70, U+7f6a, U+8133, U+81e8, U+866b, U+878d, U+88f8, U+8a5e, U+8cdb, U+8d08, U+907a, U+90e1, U+96f2, U+9f8d, U+ff35, U+ff37, U+ff40, U+ff9d;
}

/* shippori-mincho-b1-[95]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/8823614168f22256e7ed.woff2)
    format("woff2");
  unicode-range:
    U+2015, U+2190, U+4e43, U+5019, U+5247, U+52e7, U+5438, U+54b2, U+55ab, U+57f7, U+5bd2, U+5e8a, U+5ef6, U+6016, U+60b2, U+6162, U+6319, U+6551, U+6607, U+66b4, U+675f, U+67d4, U+6b20, U+6b53, U+6ce3, U+719f, U+75b2, U+770b, U+7720, U+77ac, U+79d2, U+7af9, U+7d05, U+7dca, U+8056, U+80f8, U+81f3, U+8352, U+885d, U+8a70, U+8aa4, U+8cbc, U+900f, U+9084, U+91e3, U+9451, U+96c4, U+99c6, U+9ad4, U+ff70;
}

/* shippori-mincho-b1-[96]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/6eaa41eefdbf60ee340b.woff2)
    format("woff2");
  unicode-range:
    U+2193, U+25b2, U+4e4b, U+516d, U+51c4, U+529f, U+52c9, U+5360, U+5442, U+5857, U+5915, U+59eb, U+5a9b, U+5c3b, U+6012, U+61b6, U+62b1, U+6311, U+6577, U+65e2, U+65ec, U+6613, U+6790, U+6cb9, U+7372, U+76ae, U+7d5e, U+7fcc, U+88ab, U+88d5, U+8caf, U+8ddd, U+8ecd, U+8f38, U+8f9e, U+8feb, U+9063, U+90f5, U+93e1, U+968a, U+968f, U+98fe, U+9ec4, U+ff1d, U+ff27, U+ff2a, U+ff36, U+ff3b, U+ff3d, U+ffe5;
}

/* shippori-mincho-b1-[97]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/1b2785780bef3845d61b.woff2)
    format("woff2");
  unicode-range:
    U+4e03, U+4f38, U+50b7, U+5264, U+5348, U+5371, U+585a, U+58ca, U+5951, U+59b9, U+59d4, U+5b98, U+5f8b, U+6388, U+64cd, U+65e7, U+6803, U+6b6f, U+6d66, U+6e0b, U+6ecb, U+6fc3, U+72ac, U+773c, U+77e2, U+7968, U+7a74, U+7dba, U+7dd1, U+7e3e, U+808c, U+811a, U+8179, U+8239, U+8584, U+8a0e, U+8a72, U+8b66, U+8c46, U+8f29, U+90a3, U+9234, U+96f0, U+9769, U+9774, U+9aa8, U+ff26, U+ff28, U+ff9e-ff9f;
}

/* shippori-mincho-b1-[99]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/10ba0f53438dbb6a5873.woff2)
    format("woff2");
  unicode-range:
    U+25cb, U+4e71, U+4f59, U+50d5, U+520a, U+5217, U+5230, U+523a-523b, U+541b, U+5439, U+5747, U+59c9, U+5bdf, U+5c31, U+5de8, U+5e7c, U+5f69, U+6050, U+60d1, U+63cf, U+663c, U+67c4, U+6885, U+6c38, U+6d6e, U+6db2, U+6df7, U+6e2c, U+6f5f, U+7532, U+76e3-76e4, U+7701, U+793c, U+79f0, U+7a93, U+7d00, U+7de0, U+7e54, U+8328, U+8840, U+969c, U+96e8, U+9811, U+9aea, U+9b5a, U+ff24, U+ff2e, U+ff57;
}

/* shippori-mincho-b1-[100]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/d49d056ad729480f39e3.woff2)
    format("woff2");
  unicode-range:
    U+2191, U+505c, U+52e4, U+5305, U+535a, U+56e0, U+59bb, U+5acc, U+5b09, U+5b87, U+5c90, U+5df1, U+5e2d, U+5e33, U+5f3e, U+6298, U+6383, U+653b, U+6697, U+6804, U+6a39, U+6cca, U+6e90, U+6f2b, U+702c, U+7206, U+7236, U+7559, U+7565, U+7591, U+75c7, U+75db, U+7b4b, U+7bb1, U+7d99, U+7fbd, U+8131, U+885b, U+8b1d, U+8ff7, U+9003, U+9045, U+96a0, U+9732, U+990a, U+99d0, U+9e97, U+9f62, U+ff25, U+ff2d;
}

/* shippori-mincho-b1-[101]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/1120f0177f5aa8c7482c.woff2)
    format("woff2");
  unicode-range:
    U+4e08, U+4f9d, U+5012, U+514d, U+51b7, U+5275, U+53ca, U+53f8, U+5584, U+57fc, U+5b9d, U+5bfa, U+5c3e, U+5f01, U+5fb4, U+5fd7, U+606f, U+62e1, U+6563, U+6674, U+6cb3, U+6d3e, U+6d74, U+6e1b, U+6e2f, U+718a, U+7247, U+79d8, U+7d14, U+7d66, U+7d71, U+7df4, U+7e41, U+80cc, U+8155, U+83d3, U+8a95, U+8ab2, U+8ad6, U+8ca1, U+9000, U+9006, U+9678, U+97d3, U+9808, U+98ef, U+9a5a, U+9b45, U+ff23, U+ff30;
}

/* shippori-mincho-b1-[102]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/3024929e33b96e6ab221.woff2)
    format("woff2");
  unicode-range:
    U+25bc, U+3012, U+4ef2, U+4f0a, U+516b, U+5373, U+539a, U+53b3, U+559c, U+56f0, U+5727, U+5742, U+5965, U+59ff, U+5bc6, U+5dfb, U+5e45, U+5ead, U+5fb3, U+6211, U+6253, U+639b, U+63a8, U+6545, U+6575, U+6628, U+672d, U+68a8, U+6bdb, U+6d25, U+707d, U+767e, U+7834, U+7b46, U+7bc9, U+8074, U+82e6, U+8349, U+8a2a, U+8d70, U+8da3, U+8fce, U+91cc, U+967d, U+97ff, U+9996, U+ff1c, U+ff2f, U+ff32, U+ff34;
}

/* shippori-mincho-b1-[103]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/3975f9dc43b9777c894d.woff2)
    format("woff2");
  unicode-range:
    U+3d, U+5e, U+25cf, U+4e0e, U+4e5d, U+4e73, U+4e94, U+4f3c, U+5009, U+5145, U+51ac, U+5238, U+524a, U+53f3, U+547c, U+5802, U+5922, U+5a66, U+5c0e, U+5de6, U+5fd8, U+5feb, U+6797, U+685c, U+6b7b, U+6c5f-6c60, U+6cc9, U+6ce2, U+6d17, U+6e21, U+7167, U+7642, U+76db, U+8001, U+821e, U+8857, U+89d2, U+8b1b, U+8b70, U+8cb4, U+8cde, U+8f03, U+8f2a, U+968e, U+9b54, U+9e7f, U+9ebb, U+ff05, U+ff33;
}

/* shippori-mincho-b1-[104]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/410db805e9d3f10a1645.woff2)
    format("woff2");
  unicode-range:
    U+500d, U+5074, U+50cd, U+5175, U+52e2, U+5352, U+5354, U+53f2, U+5409, U+56fa, U+5a18, U+5b88, U+5bdd, U+5ca9, U+5f92, U+5fa9, U+60a9, U+623f, U+6483, U+653f, U+666f, U+66ae, U+66f2, U+6a21, U+6b66, U+6bcd, U+6d5c, U+796d, U+7a4d, U+7aef, U+7b56, U+7b97, U+7c4d, U+7e04, U+7fa9, U+8377, U+83dc, U+83ef, U+8535, U+8863, U+88cf, U+88dc, U+8907, U+8acb, U+90ce, U+91dd, U+ff0b, U+ff0d, U+ff19, U+ff65;
}

/* shippori-mincho-b1-[105]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/23dd7ffb0fbb86b41b35.woff2)
    format("woff2");
  unicode-range:
    U+4e01, U+4e21, U+4e38, U+52a9, U+547d, U+592e, U+5931, U+5b63, U+5c40, U+5dde, U+5e78, U+5efa, U+5fa1, U+604b, U+6075, U+62c5, U+632f, U+6a19, U+6c0f, U+6c11, U+6c96, U+6e05, U+70ba, U+71b1, U+7387, U+7403, U+75c5, U+77ed, U+795d, U+7b54, U+7cbe, U+7d19, U+7fa4, U+8089, U+81f4, U+8208, U+8336, U+8457, U+8a33, U+8c4a, U+8ca0, U+8ca8, U+8cc0, U+9014, U+964d, U+9803, U+983c, U+98db, U+ff17, U+ff21;
}

/* shippori-mincho-b1-[106]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/d99dc1321e4906a6a4d4.woff2)
    format("woff2");
  unicode-range:
    U+25, U+25a0, U+4e26, U+4f4e, U+5341, U+56f2, U+5bbf, U+5c45, U+5c55, U+5c5e, U+5dee, U+5e9c, U+5f7c, U+6255, U+627f, U+62bc, U+65cf, U+661f, U+666e, U+66dc, U+67fb, U+6975, U+6a4b, U+6b32, U+6df1, U+6e29, U+6fc0, U+738b, U+7686, U+7a76, U+7a81, U+7c73, U+7d75, U+7dd2, U+82e5, U+82f1, U+85ac, U+888b, U+899a, U+8a31, U+8a8c, U+8ab0, U+8b58, U+904a, U+9060, U+9280, U+95b2, U+984d, U+9ce5, U+ff18;
}

/* shippori-mincho-b1-[107]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/0e600dc64307d782664d.woff2)
    format("woff2");
  unicode-range:
    U+30f6, U+50ac, U+5178, U+51e6, U+5224, U+52dd, U+5883, U+5897, U+590f, U+5a5a, U+5bb3, U+5c65, U+5e03, U+5e2b, U+5e30, U+5eb7, U+6271, U+63f4, U+64ae, U+6574, U+672b, U+679a, U+6a29-6a2a, U+6ca2, U+6cc1, U+6d0b, U+713c, U+74b0, U+7981, U+7a0b, U+7bc0, U+7d1a, U+7d61, U+7fd2, U+822c, U+8996, U+89aa, U+8cac, U+8cbb, U+8d77, U+8def, U+9020, U+9152, U+9244, U+9662, U+967a, U+96e3, U+9759, U+ff16;
}

/* shippori-mincho-b1-[108]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/08bc02ff41323873b00b.woff2)
    format("woff2");
  unicode-range:
    U+23, U+3c, U+2192, U+4e45, U+4efb, U+4f50, U+4f8b, U+4fc2, U+5024, U+5150, U+5272, U+5370, U+53bb, U+542b, U+56db, U+56e3, U+57ce, U+5bc4, U+5bcc, U+5f71, U+60aa, U+6238, U+6280, U+629c, U+6539, U+66ff, U+670d, U+677e-677f, U+6839, U+69cb, U+6b4c, U+6bb5, U+6e96, U+6f14, U+72ec, U+7389, U+7814, U+79cb, U+79d1, U+79fb, U+7a0e, U+7d0d, U+85e4, U+8d64, U+9632, U+96e2, U+9805, U+99ac, U+ff1e;
}

/* shippori-mincho-b1-[109]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/e00ce4d75bfde0f2335f.woff2)
    format("woff2");
  unicode-range:
    U+2605-2606, U+301c, U+4e57, U+4fee, U+5065, U+52df, U+533b, U+5357, U+57df, U+58eb, U+58f0, U+591c, U+592a-592b, U+5948, U+5b85, U+5d0e, U+5ea7, U+5ff5, U+6025, U+63a1, U+63a5, U+63db, U+643a, U+65bd, U+671d, U+68ee, U+6982, U+6b73, U+6bd4, U+6d88, U+7570, U+7b11, U+7d76, U+8077, U+8217, U+8c37, U+8c61, U+8cc7, U+8d85, U+901f, U+962a, U+9802, U+9806, U+9854, U+98f2, U+9928, U+99c5, U+9ed2;
}

/* shippori-mincho-b1-[110]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/f41fba9380fe9e5bf59f.woff2)
    format("woff2");
  unicode-range:
    U+266a, U+4f11, U+533a, U+5343, U+534a, U+53cd, U+5404, U+56f3, U+5b57-5b58, U+5bae, U+5c4a, U+5e0c, U+5e2f, U+5eab, U+5f35, U+5f79, U+614b, U+6226, U+629e, U+65c5, U+6625, U+6751, U+6821, U+6b69, U+6b8b, U+6bce, U+6c42, U+706b, U+7c21, U+7cfb, U+805e, U+80b2, U+82b8, U+843d, U+8853, U+88c5, U+8a3c, U+8a66, U+8d8a, U+8fba, U+9069, U+91cf, U+9752, U+975e, U+9999, U+ff0f-ff10, U+ff14-ff15;
}

/* shippori-mincho-b1-[111]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/debca3a01db53d3d3a0b.woff2)
    format("woff2");
  unicode-range:
    U+40, U+4e86, U+4e95, U+4f01, U+4f1d, U+4fbf, U+5099, U+5171, U+5177, U+53cb, U+53ce, U+53f0, U+5668, U+5712, U+5ba4, U+5ca1, U+5f85, U+60f3, U+653e, U+65ad, U+65e9, U+6620, U+6750, U+6761, U+6b62, U+6b74, U+6e08, U+6e80, U+7248, U+7531, U+7533, U+753a, U+77f3, U+798f, U+7f6e, U+8449, U+88fd, U+89b3, U+8a55, U+8ac7, U+8b77, U+8db3, U+8efd, U+8fd4, U+9031-9032, U+9580, U+9589, U+96d1, U+985e;
}

/* shippori-mincho-b1-[112]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/c156d9361d853b03a3dc.woff2)
    format("woff2");
  unicode-range:
    U+2b, U+d7, U+300e-300f, U+4e07, U+4e8c, U+512a, U+5149, U+518d, U+5236, U+52b9, U+52d9, U+5468, U+578b, U+57fa, U+5b8c, U+5ba2, U+5c02, U+5de5, U+5f37, U+5f62, U+623b, U+63d0, U+652f, U+672a, U+6848, U+6d41, U+7136, U+7537, U+754c, U+76f4, U+79c1, U+7ba1, U+7d44, U+7d4c, U+7dcf, U+7dda, U+7de8, U+82b1, U+897f, U+8ca9, U+8cfc, U+904e, U+9664, U+982d, U+9858, U+98a8, U+9a13, U+ff13, U+ff5c;
}

/* shippori-mincho-b1-[113]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/4bae60bc17feaae73649.woff2)
    format("woff2");
  unicode-range:
    U+4e16, U+4e3b, U+4ea4, U+4ee4, U+4f4d, U+4f4f, U+4f55, U+4f9b, U+5317, U+5358, U+53c2, U+53e4, U+548c, U+571f, U+59cb, U+5cf6, U+5e38, U+63a2, U+63b2, U+6559, U+662d, U+679c, U+6c7a, U+72b6, U+7523, U+767d, U+770c, U+7a2e, U+7a3f, U+7a7a, U+7b2c, U+7b49, U+7d20, U+7d42, U+8003, U+8272, U+8a08, U+8aac, U+8cb7, U+8eab, U+8ee2, U+9054-9055, U+90fd, U+914d, U+91cd, U+969b, U+97f3, U+984c, U+ff06;
}

/* shippori-mincho-b1-[114]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/280f112d47c00eec74e2.woff2)
    format("woff2");
  unicode-range:
    U+26, U+5f, U+2026, U+203b, U+4e09, U+4eac, U+4ed5, U+4fa1, U+5143, U+5199, U+5207, U+539f, U+53e3, U+53f7, U+5411, U+5473, U+5546, U+55b6, U+5929, U+597d, U+5bb9, U+5c11, U+5c4b, U+5ddd, U+5f97, U+5fc5, U+6295, U+6301, U+6307, U+671b, U+76f8, U+78ba, U+795e, U+7d30, U+7d39, U+7d9a, U+89e3, U+8a00, U+8a73, U+8a8d, U+8a9e, U+8aad, U+8abf, U+8cea, U+8eca, U+8ffd, U+904b, U+9650, U+ff11-ff12;
}

/* shippori-mincho-b1-[115]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/6925512da164e7c4284d.woff2)
    format("woff2");
  unicode-range:
    U+3e, U+3005, U+4e0d, U+4e88, U+4ecb, U+4ee3, U+4ef6, U+4fdd, U+4fe1, U+500b, U+50cf, U+5186, U+5316, U+53d7, U+540c, U+544a, U+54e1, U+5728, U+58f2, U+5973, U+5b89, U+5c71, U+5e02, U+5e97, U+5f15, U+5fc3, U+5fdc, U+601d, U+611b, U+611f, U+671f, U+6728, U+6765, U+683c, U+6b21, U+6ce8, U+6d3b, U+6d77, U+7530, U+7740, U+7acb, U+7d50, U+826f, U+8f09, U+8fbc, U+9001, U+9053, U+91ce, U+9762, U+98df;
}

/* shippori-mincho-b1-[116]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/0a6767275770191bfe10.woff2)
    format("woff2");
  unicode-range:
    U+7c, U+3080, U+4ee5, U+5148, U+516c, U+521d, U+5225, U+529b, U+52a0, U+53ef, U+56de, U+56fd, U+5909, U+591a, U+5b66, U+5b9f, U+5bb6, U+5bfe, U+5e73, U+5e83, U+5ea6, U+5f53, U+6027, U+610f, U+6210, U+6240, U+660e, U+66f4, U+66f8, U+6709, U+6771, U+697d, U+69d8, U+6a5f, U+6c34, U+6cbb, U+73fe, U+756a, U+7684, U+771f, U+793a, U+7f8e, U+898f, U+8a2d, U+8a71, U+8fd1, U+9078, U+9577, U+96fb, U+ff5e;
}

/* shippori-mincho-b1-[117]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/7d8c2965e32a672b5897.woff2)
    format("woff2");
  unicode-range:
    U+a9, U+3010-3011, U+30e2, U+4e0b, U+4eca, U+4ed6, U+4ed8, U+4f53, U+4f5c, U+4f7f, U+53d6, U+540d, U+54c1, U+5730, U+5916, U+5b50, U+5c0f, U+5f8c, U+624b, U+6570, U+6587, U+6599, U+691c, U+696d, U+6cd5, U+7269, U+7279, U+7406, U+767a-767b, U+77e5, U+7d04, U+7d22, U+8005, U+80fd, U+81ea, U+8868, U+8981, U+89a7, U+901a, U+9023, U+90e8, U+91d1, U+9332, U+958b, U+96c6, U+9ad8, U+ff1a, U+ff1f;
}

/* shippori-mincho-b1-[118]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/92fb1699d3b986e1cc4a.woff2)
    format("woff2");
  unicode-range:
    U+4e, U+a0, U+3000, U+300c-300d, U+4e00, U+4e0a, U+4e2d, U+4e8b, U+4eba, U+4f1a, U+5165, U+5168, U+5185, U+51fa, U+5206, U+5229, U+524d, U+52d5, U+5408, U+554f, U+5831, U+5834, U+5927, U+5b9a, U+5e74, U+5f0f, U+60c5, U+65b0, U+65b9, U+6642, U+6700, U+672c, U+682a, U+6b63, U+6c17, U+7121, U+751f, U+7528, U+753b, U+76ee, U+793e, U+884c, U+898b, U+8a18, U+9593, U+95a2, U+ff01, U+ff08-ff09;
}

/* shippori-mincho-b1-[119]-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/f16b488cb244970aa6f7.woff2)
    format("woff2");
  unicode-range:
    U+21-22, U+27-2a, U+2c-3b, U+3f, U+41-4d, U+4f-5d, U+61-7b, U+7d, U+ab, U+ae, U+b2-b3, U+b7, U+bb, U+c9, U+cd, U+d6, U+d8, U+dc, U+e0-e5, U+e7-ed, U+ef, U+f1-f4, U+f6, U+f8, U+fa, U+fc-fd, U+103, U+14d, U+1b0, U+300-301, U+1ebf, U+1ec7, U+2013-2014, U+201c-201d, U+2039-203a, U+203c, U+2048-2049, U+2113, U+2122, U+65e5, U+6708, U+70b9;
}

/* shippori-mincho-b1-latin-ext-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/a6166d78e3387502f194.woff2)
    format("woff2");
  unicode-range:
    U+20, U+2027, U+3001-3002, U+3041-307f, U+3081-308f, U+3091-3093, U+3099-309a, U+309d-309e, U+30a1-30e1, U+30e3-30ed, U+30ef-30f0, U+30f2-30f4, U+30fb-30fe, U+ff0c, U+ff0e;
}

/* shippori-mincho-b1-latin-800-normal */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/668660afacee2b0099b3.woff2)
    format("woff2");
  unicode-range:
    U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/*  */
@font-face {
  font-family: "Shippori Mincho B1";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url(/499da494bd3e8b8be4b0.woff2)
    format("woff2");
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-amber-50: oklch(98.7% 0.022 95.277);
    --color-amber-700: oklch(55.5% 0.163 48.998);
    --color-neutral-100: oklch(97% 0 0);
    --color-neutral-200: oklch(92.2% 0 0);
    --color-neutral-600: oklch(43.9% 0 0);
    --color-neutral-800: oklch(26.9% 0 0);
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --font-heading: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
    --font-body: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
    --color-indigo-jp-100: #fff3e4;
    --color-indigo-jp-500: #c28d41;
    --color-indigo-jp-600: #a06f24;
    --color-indigo-jp-700: #7d5411;
    --color-indigo-jp-800: #5a3b0a;
    --color-shu-50: #fdf5f3;
    --color-shu-100: #f9e8e4;
    --color-shu-200: #f0d1ca;
    --color-shu-500: #b25f52;
    --color-shu-600: #98483c;
    --color-shu-700: #7c382e;
    --color-shu-800: #5f2b23;
    --color-washi-100: #f3f2f2;
    --color-matcha-50: #f4f6f1;
    --color-matcha-100: #e7ebe0;
    --color-matcha-200: #cfd8c4;
    --color-matcha-500: #74855f;
    --color-matcha-700: #49563c;
    --color-matcha-800: #3a4530;
    --color-sumi-50: #f8f4f4;
    --color-sumi-100: #eae7e7;
    --color-sumi-200: #d7d3d3;
    --color-sumi-300: #bab6b6;
    --color-sumi-400: #9b9797;
    --color-sumi-500: #7d7979;
    --color-sumi-600: #605d5d;
    --color-sumi-700: #444141;
    --color-sumi-900: #201f1d;
    --radius-jp: 4px;
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .mx-auto {
    margin-inline: auto;
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-1\/3 {
    width: calc(1/3 * 100%);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-full {
    width: 100%;
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .flex-1 {
    flex: 1;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .resize {
    resize: both;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .items-center {
    align-items: center;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .space-y-0\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 0.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 0.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-sumi-200 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-sumi-200);
    }
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-sumi-200 {
    border-color: var(--color-sumi-200);
  }
  .border-sumi-300 {
    border-color: var(--color-sumi-300);
  }
  .bg-indigo-jp-600 {
    background-color: var(--color-indigo-jp-600);
  }
  .bg-matcha-100 {
    background-color: var(--color-matcha-100);
  }
  .bg-sumi-50 {
    background-color: var(--color-sumi-50);
  }
  .bg-sumi-100 {
    background-color: var(--color-sumi-100);
  }
  .bg-sumi-200 {
    background-color: var(--color-sumi-200);
  }
  .bg-washi-100 {
    background-color: var(--color-washi-100);
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .text-center {
    text-align: center;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[10px\] {
    font-size: 10px;
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .text-amber-700 {
    color: var(--color-amber-700);
  }
  .text-matcha-700 {
    color: var(--color-matcha-700);
  }
  .text-shu-600 {
    color: var(--color-shu-600);
  }
  .text-sumi-300 {
    color: var(--color-sumi-300);
  }
  .text-sumi-400 {
    color: var(--color-sumi-400);
  }
  .text-sumi-500 {
    color: var(--color-sumi-500);
  }
  .text-sumi-600 {
    color: var(--color-sumi-600);
  }
  .text-sumi-700 {
    color: var(--color-sumi-700);
  }
  .text-sumi-900 {
    color: var(--color-sumi-900);
  }
  .text-white {
    color: var(--color-white);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .underline {
    text-decoration-line: underline;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .hover\:bg-amber-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-50);
      }
    }
  }
  .hover\:bg-indigo-jp-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-indigo-jp-700);
      }
    }
  }
  .hover\:bg-matcha-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-matcha-50);
      }
    }
  }
  .hover\:bg-shu-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-shu-50);
      }
    }
  }
  .hover\:bg-sumi-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-sumi-50);
      }
    }
  }
  .hover\:bg-sumi-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-sumi-100);
      }
    }
  }
  .focus\:border-indigo-jp-500 {
    &:focus {
      border-color: var(--color-indigo-jp-500);
    }
  }
  .focus\:ring-2 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus\:ring-indigo-jp-500 {
    &:focus {
      --tw-ring-color: var(--color-indigo-jp-500);
    }
  }
  .disabled\:opacity-50 {
    &:disabled {
      opacity: 50%;
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:px-6 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .md\:col-span-2 {
    @media (width >= 48rem) {
      grid-column: span 2 / span 2;
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:px-8 {
    @media (width >= 64rem) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
}
:root {
  --color-bg: #f3f2f2;
  --color-surface: #eae9e9;
  --color-text: #201f1d;
  --color-accent: #b68235;
  --color-divider: color-mix(in srgb, #201f1d 16%, transparent);
  --color-neutral-100: #f8f4f4;
  --color-neutral-200: #eae7e7;
  --color-neutral-300: #d7d3d3;
  --color-neutral-400: #bab6b6;
  --color-neutral-500: #9b9797;
  --color-neutral-600: #7d7979;
  --color-neutral-700: #605d5d;
  --color-neutral-800: #444141;
  --color-neutral-900: #2d2b2b;
  --color-accent-100: #fff3e4;
  --color-accent-200: #ffe3bf;
  --color-accent-300: #facb8d;
  --color-accent-400: #e1ad66;
  --color-accent-500: #c28d41;
  --color-accent-600: #a06f24;
  --color-accent-700: #7d5411;
  --color-accent-800: #5a3b0a;
  --color-accent-900: #3a270d;
  --font-heading-weight: 600;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 7px;
  --shadow-sm: 0 1px 2px color-mix(in srgb, #2d2b2b 14%, transparent);
  --shadow-md: 0 3px 10px color-mix(in srgb, #2d2b2b 16%, transparent);
  --shadow-lg: 0 12px 32px color-mix(in srgb, #2d2b2b 22%, transparent);
}
@layer base {
  html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  body {
    background-color: var(--color-washi-100);
    color: var(--color-sumi-900);
    font-size: 15px;
    line-height: 1.5;
    font-feature-settings: "kern" 1,
      "liga" 1;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-family: var(--font-heading);
    color: var(--color-sumi-900);
    font-weight: var(--font-heading-weight);
    letter-spacing: -0.012em;
    line-height: 1.18;
  }
  :focus {
    outline: none;
  }
  :focus-visible {
    outline: 2px solid var(--color-accent);
    outline-offset: 2px;
  }
  ::selection {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 30%, transparent);
    }
  }
}
@layer components {
  .jp-card {
    background: transparent;
    border: 1px solid var(--color-divider);
    border-radius: var(--radius-jp);
    transition: box-shadow 200ms,
      border-color 200ms;
  }
  .jp-card:hover {
    box-shadow: var(--shadow-sm);
  }
  .jp-btn-primary,
  .jp-btn-secondary,
  .jp-btn-ghost,
  .jp-btn-danger,
  .jp-btn-success {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 1.5);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    font-family: var(--font-heading);
    font-weight: var(--font-heading-weight);
    font-size: 14px;
    line-height: 1.2;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--radius-jp);
    cursor: pointer;
    transition: background-color 150ms,
      color 150ms,
      border-color 150ms;
  }
  .jp-btn-primary:disabled,
  .jp-btn-secondary:disabled,
  .jp-btn-ghost:disabled,
  .jp-btn-danger:disabled,
  .jp-btn-success:disabled {
    opacity: 0.45;
    cursor: not-allowed;
  }
  .jp-btn-primary {
    color: var(--color-accent-700);
    border-color: var(--color-accent);
  }
  .jp-btn-primary:hover:not(:disabled) {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 12%, transparent);
    }
  }
  .jp-btn-primary:active:not(:disabled) {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 22%, transparent);
    }
  }
  .jp-btn-secondary {
    color: var(--color-text);
    border-color: var(--color-divider);
  }
  .jp-btn-secondary:hover:not(:disabled) {
    background: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-text) 7%, transparent);
    }
  }
  .jp-btn-secondary:active:not(:disabled) {
    background: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-text) 14%, transparent);
    }
  }
  .jp-btn-ghost {
    color: var(--color-accent-700);
  }
  .jp-btn-ghost:hover:not(:disabled) {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 10%, transparent);
    }
  }
  .jp-btn-ghost:active:not(:disabled) {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 18%, transparent);
    }
  }
  .jp-btn-danger {
    border-color: var(--color-shu-500);
    color: var(--color-shu-700);
  }
  .jp-btn-danger:hover:not(:disabled) {
    background-color: var(--color-shu-100);
    color: var(--color-shu-800);
  }
  .jp-btn-danger:active:not(:disabled) {
    background-color: var(--color-shu-200);
  }
  .jp-btn-success {
    border-color: var(--color-matcha-500);
    color: var(--color-matcha-700);
  }
  .jp-btn-success:hover:not(:disabled) {
    background-color: var(--color-matcha-100);
    color: var(--color-matcha-800);
  }
  .jp-btn-success:active:not(:disabled) {
    background-color: var(--color-matcha-200);
  }
  .jp-badge {
    display: inline-flex;
    align-items: center;
    font-size: 11.5px;
    letter-spacing: 0.02em;
    padding: 3px 10px;
    white-space: nowrap;
    border: 1px solid transparent;
    border-radius: calc(var(--radius-jp) * 0.75);
  }
  .jp-badge-active {
    background-color: var(--color-matcha-100);
    color: var(--color-matcha-800);
  }
  .jp-badge-sold {
    background-color: var(--color-indigo-jp-100);
    color: var(--color-indigo-jp-800);
  }
  .jp-badge-archived {
    background-color: var(--color-sumi-50);
    color: var(--color-sumi-700);
  }
  .jp-input,
  .jp-select {
    display: block;
    width: 100%;
    min-height: 36px;
    padding: 6px 10px;
    font-size: 14px;
    color: var(--color-text);
    caret-color: var(--color-accent);
    background: transparent;
    border: 1px solid var(--color-divider);
    border-radius: var(--radius-jp);
    transition: border-color 150ms;
  }
  .jp-input::placeholder {
    color: var(--color-sumi-400);
  }
  .jp-input:hover,
  .jp-select:hover {
    border-color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in srgb, var(--color-text) 45%, transparent);
    }
  }
  .jp-input:focus-visible,
  .jp-select:focus-visible {
    border-color: var(--color-accent);
    outline-offset: 0;
  }
  .jp-label {
    display: block;
    font-size: 12px;
    margin-bottom: 5px;
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 70%, transparent);
    }
  }
  .jp-divider {
    border-top: 1px solid var(--color-divider);
  }
  .jp-link {
    color: var(--color-accent-700);
    text-underline-offset: 3px;
    transition: color 150ms;
  }
  .jp-link:hover {
    color: var(--color-accent);
    text-decoration: underline;
  }
}
@layer components {
  .kc-quiet {
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 55%, transparent);
    }
  }
  .kc-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    text-align: left;
    background: transparent;
    border: 0;
    border-left: 2px solid transparent;
    cursor: pointer;
    font-family: var(--font-body);
    font-size: 14px;
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 78%, transparent);
    }
    padding: 5px 12px 5px 14px;
  }
  .kc-nav:hover {
    background: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-text) 6%, transparent);
    }
    color: var(--color-text);
  }
  .kc-nav[data-active="true"] {
    border-left-color: var(--color-accent);
    color: var(--color-text);
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 10%, transparent);
    }
  }
  .kc-tab {
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    cursor: pointer;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 14.5px;
    letter-spacing: 0.01em;
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 60%, transparent);
    }
    padding: 8px 2px 7px;
  }
  .kc-tab:hover {
    color: var(--color-text);
  }
  .kc-tab[data-active="true"] {
    color: var(--color-text);
    border-bottom-color: var(--color-accent);
  }
  .kc-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px;
  }
  .kc-table th {
    text-align: left;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 11.5px;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, var(--color-text) 55%, transparent);
    }
    padding: 6px 10px;
    border-bottom: 1px solid var(--color-divider);
    white-space: nowrap;
  }
  .kc-table td {
    padding: 9px 10px;
    border-bottom: 1px solid var(--color-divider);
    vertical-align: middle;
  }
  .kc-row {
    cursor: pointer;
  }
  .kc-row:hover {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 7%, transparent);
    }
  }
  [data-density="compact"] .kc-table td {
    padding: 5px 10px;
  }
  [data-density="comfortable"] .kc-table td {
    padding: 13px 10px;
  }
  .kc-table td.kc-clip {
    max-width: 340px;
    min-width: 240px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .kc-act {
    background: transparent;
    border: 1px solid var(--color-divider);
    border-radius: var(--radius-md);
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 13px;
    padding: 5px 11px;
    cursor: pointer;
    color: var(--color-text);
    white-space: nowrap;
  }
  .kc-act:hover {
    border-color: var(--color-accent);
    color: var(--color-accent-700);
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 8%, transparent);
    }
  }
  .kc-act[data-primary="true"] {
    border-color: var(--color-accent);
    color: var(--color-accent-700);
  }
  .kc-act[data-warn="true"][data-primary="true"] {
    border-color: var(--color-accent-600);
    color: var(--color-accent-800);
    background: var(--color-accent-100);
  }
  .kc-link {
    background: transparent;
    border: 0;
    padding: 0;
    cursor: pointer;
    font: inherit;
    color: var(--color-accent-700);
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .kc-thumb {
    width: 52px;
    height: 38px;
    flex: none;
    background: var(--color-neutral-200);
    border: 3px solid var(--color-surface);
    outline: 1px solid var(--color-divider);
    display: grid;
    place-items: center;
    font-size: 10px;
    letter-spacing: 0.06em;
    color: var(--color-neutral-600);
  }
  .kc-pop {
    position: absolute;
    z-index: 30;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 4px;
    max-height: 230px;
    overflow: auto;
    background: var(--color-bg);
    border: 1px solid var(--color-divider);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
  }
  .kc-opt {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    text-align: left;
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--color-divider);
    padding: 7px 10px;
    font: inherit;
    font-size: 13.5px;
    cursor: pointer;
    color: var(--color-text);
  }
  .kc-opt:last-child {
    border-bottom: 0;
  }
  .kc-opt:hover {
    background: var(--color-accent);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-accent) 12%, transparent);
    }
  }
  .kc-opt[data-on="true"] {
    color: var(--color-accent-700);
    box-shadow: inset 2px 0 0 var(--color-accent);
  }
  .kc-scroll {
    overflow-x: auto;
    max-width: 100%;
  }
  .num {
    font-variant-numeric: tabular-nums;
  }
  .tag {
    display: inline-flex;
    align-items: center;
    font-size: 11.5px;
    letter-spacing: 0.01em;
    white-space: nowrap;
    padding: 3px 10px;
    border-radius: calc(var(--radius-md) * 0.75);
  }
  .tag-accent,
  .tag-accent-2 {
    background: var(--color-accent-100);
    color: var(--color-accent-800);
  }
  .tag-neutral {
    background: var(--color-neutral-100);
    color: var(--color-neutral-800);
  }
  .tag-outline {
    border: 1px solid var(--color-accent);
    color: var(--color-accent);
  }
  [data-step="done"] {
    background: var(--color-text);
    @supports (color: color-mix(in lab, red, red)) {
      background: color-mix(in srgb, var(--color-text) 4%, transparent);
    }
  }
  [data-step="now"] {
    box-shadow: inset 0 -2px 0 var(--color-accent);
  }
  [data-step="todo"] {
    opacity: 0.5;
  }
}
@layer utilities {
  .shadow-jp {
    box-shadow: var(--shadow-sm);
  }
  .shadow-jp-md {
    box-shadow: var(--shadow-md);
  }
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
    }
  }
}


/*# sourceMappingURL=main.54b72e097cf7f602746c.css.map*/