/* Per-company disclosure pages (ADR 0002): `/companies/{code}/` and its
   `/companies/{code}/{yyyymmdd}/` permalinks.

   Carried over from the CEO-approved density mockup
   (docs/design/2026-08-18-density-redesign/company-page.html). The mockup's
   own base layer — reset, fluid root size, body, .wrap, links, the variant-C
   masthead, the chips, the section chrome and the footer — now lives one level
   up in base.css, which every page on the site loads; the tokens live in
   tokens.css. What is left here is what only a company page has.

   Load order: tokens.css, base.css, then this file. */

/* ---- breadcrumb ---- */
.crumbs { border-bottom: 1px solid var(--hairline); background: var(--surface); }
.crumbs-row {
  padding-top: var(--space-2xs); padding-bottom: var(--space-2xs);
  font-size: var(--text-xs); color: var(--faint);
  overflow-x: auto; white-space: nowrap;
}
.crumbs-row a { color: var(--muted); text-decoration: none; }
.crumbs-row a:hover { color: var(--accent); text-decoration: underline; }
.crumbs-sep { padding: 0 var(--space-xs); color: var(--hairline); }

/* ---- company header (tearsheet register: identity, stat strip, sales bars) ---- */
.co-head { padding: var(--space-lg) 0 var(--space-lg); }
.co-head-grid {
  display: grid; grid-template-columns: minmax(0, 1fr) 17rem;
  column-gap: var(--space-2xl); align-items: start;
}
.co-name {
  font-family: var(--font-display); font-size: var(--text-headline);
  font-weight: 600; line-height: 1.15; letter-spacing: -0.01em;
  min-width: 0; overflow-wrap: anywhere;
}
.co-name .co-code {
  font-family: var(--font-data); font-size: 0.62em; font-weight: 600;
  color: var(--muted); margin-left: var(--space-xs); vertical-align: 0.08em;
}
.co-name-jp {
  font-family: var(--font-body); font-size: var(--text-sm);
  color: var(--muted); margin-top: var(--space-3xs);
}
.co-idline { margin-top: var(--space-xs); font-size: var(--text-sm); color: var(--muted); }
.co-idline .sep { color: var(--hairline); padding: 0 var(--space-2xs); }
.co-statstrip {
  display: grid; grid-template-columns: repeat(5, auto); justify-content: start;
  column-gap: var(--space-xl); row-gap: var(--space-sm);
  border-top: 1px solid var(--hairline);
  margin-top: var(--space-md); padding-top: var(--space-sm);
}
.nb-label {
  font-family: var(--font-body); font-size: var(--text-chip); font-weight: 600;
  letter-spacing: 0.05em; text-transform: uppercase; color: var(--faint);
  white-space: nowrap;
}
.nb-value {
  font-family: var(--font-data); font-size: var(--text-title); font-weight: 600;
  font-variant-numeric: tabular-nums; line-height: 1.15;
}
.nb-delta {
  font-family: var(--font-data); font-size: var(--text-xs); color: var(--muted);
  font-variant-numeric: tabular-nums;
}
.co-statnote {
  margin-top: var(--space-xs); font-family: var(--font-data);
  font-size: var(--text-xs); letter-spacing: 0.05em; text-transform: uppercase;
  color: var(--faint);
}

/* ---- net sales bars — the page's visual anchor; the numbers are the filer's own ---- */
.co-bars { border-left: 1px solid var(--hairline); padding-left: var(--space-lg); }
.co-bars-title {
  font-family: var(--font-body); font-size: var(--text-chip); font-weight: 600;
  letter-spacing: 0.05em; text-transform: uppercase; color: var(--muted);
}
.co-bars svg { display: block; width: 100%; height: auto; margin-top: var(--space-xs); }
.co-bars-note { margin-top: var(--space-2xs); font-size: var(--text-xs); color: var(--faint); }

/* ---- verification band ---- */
.verify-band {
  border-top: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline);
  background: var(--surface);
}
.verify-band-row {
  display: flex; gap: var(--space-lg); align-items: baseline; flex-wrap: wrap;
  padding-top: var(--space-xs); padding-bottom: var(--space-xs);
}
.verify-item {
  font-family: var(--font-data); font-size: var(--text-xs); letter-spacing: 0.05em;
  text-transform: uppercase; color: var(--muted);
}
.verify-item strong { color: var(--ok); font-weight: 600; }

/* ---- sections ---- */
.event-meta { font-size: var(--text-sm); color: var(--muted); }
.event-meta .chip { margin-right: var(--space-xs); }

/* ---- data tables (the issue.css register, one notch tighter) ---- */
.eyebrow {
  margin: var(--space-md) 0 var(--space-3xs); font-family: var(--font-body);
  font-size: var(--text-xs); font-weight: 600; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--muted);
}
.caveat, .event-note, .event-source {
  font-size: var(--text-sm); color: var(--muted); max-width: var(--measure-note);
}
.event-note, .event-source { margin-top: var(--space-sm); }
.event-source { color: var(--faint); }
.table-scroll { margin: var(--space-2xs) 0 var(--space-sm); }
.issue-table {
  border-collapse: collapse; width: 100%; min-width: 30rem;
  font-size: var(--text-sm); line-height: 1.4;
}
.issue-table th {
  padding: var(--space-2xs) var(--space-sm) var(--space-3xs);
  border-bottom: 1px solid var(--hairline); font-size: var(--text-chip);
  font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase;
  text-align: left; vertical-align: bottom; white-space: nowrap; color: var(--muted);
}
.issue-table td {
  padding: var(--space-2xs) var(--space-sm);
  border-bottom: 1px solid var(--hairline); vertical-align: top; color: var(--ink);
}
.issue-table tbody tr:last-child td { border-bottom: none; }
.issue-table th:first-child, .issue-table td:first-child { padding-left: 0; }
.issue-table th:last-child, .issue-table td:last-child { padding-right: 0; }
.issue-table th.num, .issue-table td.num { text-align: right; }
.issue-table td.num {
  font-family: var(--font-data); font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.issue-table .nowrap { white-space: nowrap; }
/* The securities-code column, in the data face. The shared table builder marks
   that column `nowrap` rather than `code`, so the compact table's first column
   is addressed by position here instead of forking the builder for one
   carrier — the only compact table on a company page is the coverage excerpt. */
.issue-table td.code,
.issue-table--compact td:first-child {
  font-family: var(--font-data); font-weight: 600; white-space: nowrap;
}
.issue-table tr.is-this-company td { background: var(--row-hl); }
/* the latest filing's tables run two-up where the viewport allows */
.tables-2up { display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--space-2xl); }

/* ---- disclosure history (dense ledger rows) ---- */
.hist-list { list-style: none; border-top: 1px solid var(--hairline); }
.hist-item {
  display: grid; grid-template-columns: 6rem 8.5rem minmax(0, 1fr) auto;
  gap: var(--space-sm); align-items: baseline; padding: var(--space-xs) 0;
  border-bottom: 1px solid var(--hairline);
}
.hist-date {
  font-family: var(--font-data); font-size: var(--text-xs); color: var(--faint);
  font-variant-numeric: tabular-nums; white-space: nowrap;
}
.hist-title { font-size: var(--text-sm); color: var(--ink); min-width: 0; }
.hist-status {
  font-family: var(--font-data); font-size: var(--text-xs);
  white-space: nowrap; text-align: right;
}
.hist-status.is-covered { color: var(--ok); }
.hist-status.is-covered a { color: inherit; }
/* the row the reader is already on, and the filings that predate coverage:
   both are stated, neither is a link */
.hist-status.is-current { color: var(--muted); }
.hist-status.is-precoverage { color: var(--faint); }
.hist-foot {
  margin-top: var(--space-sm); font-size: var(--text-sm); color: var(--muted);
  max-width: var(--measure-note);
}

/* ---- basis notes ---- */
.basis-notes {
  list-style: none; font-size: var(--text-sm); /* ch basis = text-sm, so the
  76ch cap lands on the same right edge as the other note-class lines */
  max-width: var(--measure-note); margin-top: var(--space-sm);
}
.basis-notes li {
  position: relative; padding: var(--space-3xs) 0 var(--space-3xs) var(--space-md);
  font-size: var(--text-sm); color: var(--muted);
}
.basis-notes li::before { content: "—"; position: absolute; left: 0; color: var(--faint); }

/* The last band on a company page is a table, so the footer needs the air a
   section would otherwise have given it. */
.footer { margin-top: var(--space-xl); }

/* ---- responsive ---- */
@media (max-width: 820px) {
  .co-head-grid, .tables-2up { grid-template-columns: minmax(0, 1fr); }
  .co-head-grid { row-gap: var(--space-lg); }
  .co-bars {
    border-left: none; border-top: 1px solid var(--hairline);
    padding-left: 0; padding-top: var(--space-sm); max-width: 20rem;
  }
  .co-statstrip { grid-template-columns: repeat(3, auto); }
  .hist-item { grid-template-columns: 5rem minmax(0, 1fr); }
  .hist-item .chip { grid-column: 2; }
  .hist-title { grid-column: 2; }
  .hist-status { grid-column: 2; text-align: left; }
}
