/* ============================================================
   KDCube public catalogs — "Open Horizon" treatment (chosen from
   news@2026-05-20-12-05/docs/services/news/catalog-mocks/
   mock-4-open-horizon.html).

   Loaded via public_content.<alias>.presentation.stylesheets on
   the news app; targets the SDK's stable kdcpub-* class contract
   (kdcube-ai-app: sdk/pub/pages.py). Tokens keep driving color —
   this sheet adds only fold-neutral signature moves, so every
   fold's accent/background works through var(--kdcpub-*).
   No eyebrow rules: the folds publish without one.
   ============================================================ */

/* the sunset tick under the display title: fold accent -> soft brass */
.kdcpub-hero h1::after{
  content:"";
  display:block;
  width:72px;
  height:2px;
  margin-top:10px;
  border-radius:1px;
  background:linear-gradient(90deg,var(--kdcpub-accent),#D9A945);
}

/* masthead meta + dates + pager counters: small mono instrumentation */
.kdcpub-meta,
.kdcpub-row-meta .kdcpub-date,
.kdcpub-pager span{
  font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* row markers: instrument rings, not filled dots */
.kdcpub-row::before{
  width:8px;
  height:8px;
  background:transparent;
  border:1.6px solid var(--kdcpub-accent);
  box-sizing:border-box;
}

/* row titles in the display serif — the engraved index */
.kdcpub-row h2{
  font-family:var(--kdcpub-display);
  font-weight:600;
  font-size:17.5px;
  letter-spacing:-.005em;
}

/* pager controls: quiet mono */
.kdcpub-pgbtn{
  font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
}

/* the article surface runs edge to edge like the landing's section
   bands; content stays in the column (the SDK's own full-bleed
   technique, with a little more vertical air) */
.kdcpub-band{
  margin:22px calc(50% - 50vw) 0;
  padding:10px calc(50vw - 50%) 8px;
}

/* ============================================================
   Item-page rail — "Index Strip" (chosen from
   catalog-mocks/rail-mock-3-index-strip.html).
   ============================================================ */

/* fix: fold pills keep natural width and wrap; no force-stretch */
.kdcpub-rail-folds{
  flex-wrap:wrap;
  gap:2px 14px;
  padding:0 14px 10px;
}
/* folds as a quiet text index with counts; underline marks the active fold */
.kdcpub-rail-fold{
  flex:0 1 auto;
  border:0;
  background:transparent;
  padding:3px 0;
  border-radius:0;
  white-space:nowrap;
  font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:10.5px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.kdcpub-rail-fold:hover{background:transparent}
.kdcpub-rail-fold.kdcpub-on{
  background:transparent;
  border:0;
  color:var(--kdcpub-accent-dark);
  box-shadow:inset 0 -2px 0 var(--kdcpub-accent);
}

/* rail cards: serif titles, hairline dividers, no rounded tint boxes */
.kdcpub-rail-item .t{
  font-family:var(--kdcpub-display);
  font-weight:600;
  font-size:14px;
  line-height:1.3;
}
.kdcpub-rail-item{
  border-radius:0;
  border:0;
  border-bottom:1px solid var(--kdcpub-border);
  margin:0;
  padding:12px 6px;
}
.kdcpub-rail-item:last-child{border-bottom:0}
.kdcpub-rail-item.kdcpub-now{
  background:rgba(var(--kdcpub-accent-rgb),.06);
  border-bottom:1px solid var(--kdcpub-border);
}

/* rail dates + pager counter join the mono instrumentation */
.kdcpub-rail-item .kdcpub-date,
.kdcpub-rail-pager span{
  font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:10.5px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
