/* gtmos.run kit — local layout on tokens */

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; background: #0B0B0D; color: #F5F1EA; font-family: var(--font-sans); }

.wrap { max-width: 1200px; margin: 0 auto; padding: 0 48px; }

/* nav */
.nav {
  position: sticky; top: 0;
  background: rgba(11,11,13,0.92);
  border-bottom: 1px solid #1A1A22;
  backdrop-filter: blur(8px);
  z-index: 10;
}
.nav-inner { display: flex; align-items: center; justify-content: space-between; padding: 16px 0; }
.nav .mark { font-family: var(--font-mono); font-weight: 500; font-size: 18px; color: #F5F1EA; letter-spacing: -0.01em; }
.nav .mark .am { color: #C2410C; }
.nav .links { display: flex; align-items: center; gap: 4px; font-family: var(--font-mono); font-size: 13px; color: #A8A5A0; }
.nav .links a { color: #A8A5A0; text-decoration: none; padding: 6px 4px; transition: color 120ms; }
.nav .links a:hover { color: #F5F1EA; }
.nav .links a.is-active { color: #F5F1EA; }
.nav .links a.is-active::after { content: ''; display: block; height: 1px; background: #C2410C; margin-top: 2px; }
.foot-inner .links a.is-active { color: #F5F1EA; }
.nav .links .sep { color: #C2410C; padding: 0 6px; }
.nav .actions { display: flex; align-items: center; gap: 12px; }

/* primary cta */
.btn-primary {
  font-family: var(--font-sans); font-size: 14px; font-weight: 500;
  background: #C2410C; color: #F5F1EA; border: 0;
  padding: 11px 18px; border-radius: 2px; cursor: pointer;
  transition: background 120ms;
}
.btn-primary:hover { background: #A23509; }
.btn-secondary {
  font-family: var(--font-sans); font-size: 14px; font-weight: 500;
  background: transparent; color: #F5F1EA; border: 1px solid #2F2F3A;
  padding: 10px 17px; border-radius: 2px; cursor: pointer;
  transition: background 120ms, border-color 120ms;
}
.btn-secondary:hover { background: #1C1C22; border-color: #3a3a44; }
.btn-ghost {
  font-family: var(--font-mono); font-size: 13px; font-weight: 400;
  background: transparent; color: #A8A5A0; border: 0; cursor: pointer;
  letter-spacing: 0.04em; padding: 8px 4px;
}
.btn-ghost:hover { color: #F5F1EA; }
.btn-ghost .am { color: #C2410C; }
a.btn-primary,
a.btn-secondary,
a.btn-ghost {
  display: inline-block;
  text-decoration: none;
}

/* section frame */
section { padding: 120px 0; border-bottom: 1px solid #1A1A22; }
section:last-of-type { border-bottom: 0; }
.eyebrow { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; color: #6E6B66; margin-bottom: 24px; }
.eyebrow .num { color: #6E6B66; }
.eyebrow .am { color: #C2410C; margin: 0 8px; }

/* hero */
.hero { padding-top: 80px; padding-bottom: 80px; }
.hero h1 {
  font-family: var(--font-sans); font-weight: 600;
  font-size: 88px; line-height: 1.02; letter-spacing: -0.025em;
  margin: 0 0 32px; max-width: 16ch;
}
.hero h1 .am { color: #C2410C; }
.hero .sub {
  font-family: var(--font-sans); font-size: 19px; color: #A8A5A0;
  max-width: 56ch; line-height: 1.55; margin-bottom: 48px;
}
.hero .ctas { display: flex; align-items: center; gap: 16px; }
.hero .meta {
  margin-top: 80px;
  display: flex; gap: 80px;
  border-top: 1px solid #1A1A22;
  padding-top: 32px;
}
.hero .meta .stat { display: flex; flex-direction: column; gap: 8px; }
.hero .meta .stat .num { font-family: var(--font-mono); font-weight: 300; font-size: 56px; line-height: 1; letter-spacing: -0.02em; color: #F5F1EA; }
.hero .meta .stat .num.am { color: #C2410C; }
.hero .meta .stat .ctx { font-family: var(--font-sans); font-size: 13px; color: #6E6B66; max-width: 26ch; line-height: 1.45; }

/* architecture */
.arch { display: flex; flex-direction: column; gap: 1px; background: #2F2F3A; border: 1px solid #2F2F3A; }
.arch-row {
  display: grid; grid-template-columns: 200px 1fr auto;
  gap: 32px; align-items: center;
  background: #0F0F13;
  padding: 28px 32px;
}
.arch-row:hover { background: #141418; }
.arch-row .name { font-family: var(--font-mono); font-size: 18px; color: #F5F1EA; font-weight: 500; }
.arch-row .name .am { color: #C2410C; }
.arch-row .desc { font-family: var(--font-sans); font-size: 15px; color: #A8A5A0; line-height: 1.5; }
.arch-row .output {
  font-family: var(--font-mono); font-size: 11px; color: #6E6B66;
  letter-spacing: 0.08em; text-transform: uppercase;
  border-left: 1px solid #2F2F3A; padding-left: 24px;
  min-width: 180px;
}
.arch-row .output .v { display: block; color: #F5F1EA; margin-top: 4px; font-size: 13px; letter-spacing: 0.04em; text-transform: none; }

/* comparison */
.cmp-table { width: 100%; border-collapse: collapse; font-family: var(--font-sans); font-size: 15px; }
.cmp-table thead th {
  text-align: right; padding: 18px 20px;
  font-family: var(--font-mono); font-weight: 400;
  font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase;
  color: #6E6B66; border-bottom: 1px solid #2F2F3A;
}
.cmp-table thead th:first-child { text-align: left; padding-left: 0; }
.cmp-table thead th.am { color: #C2410C; }
.cmp-table tbody td {
  padding: 20px;
  border-bottom: 1px solid #1F1F28;
  font-family: var(--font-mono);
  text-align: right;
  color: #A8A5A0;
}
.cmp-table tbody td:first-child {
  text-align: left; padding-left: 0;
  font-family: var(--font-sans); color: #F5F1EA;
}
.cmp-table tbody td.am { color: #C2410C; }

/* cadence */
.cad-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: #2F2F3A; border: 1px solid #2F2F3A; }
.cad-cell { background: #0F0F13; padding: 32px; }
.cad-cell .label { font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: #6E6B66; margin-bottom: 14px; }
.cad-cell .label .dot { display: inline-block; width: 7px; height: 7px; border-radius: 999px; background: #C2410C; margin-right: 8px; vertical-align: 1px; }
.cad-cell .name { font-family: var(--font-mono); font-size: 22px; color: #F5F1EA; margin-bottom: 8px; }
.cad-cell .name .am { color: #C2410C; }
.cad-cell .freq { font-family: var(--font-sans); font-size: 14px; color: #A8A5A0; margin-bottom: 14px; }
.cad-cell .desc { font-family: var(--font-sans); font-size: 14px; color: #6E6B66; line-height: 1.5; }

/* pricing */
.price-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1px; background: #2F2F3A; border: 1px solid #2F2F3A; }
.price { background: #0F0F13; padding: 36px 32px 32px; display: flex; flex-direction: column; gap: 20px; }
.price.featured { background: #131217; border-top: 2px solid #C2410C; padding-top: 34px; }
.price .tier { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; color: #6E6B66; }
.price.featured .tier { color: #C2410C; }
.price .num { font-family: var(--font-mono); font-weight: 300; font-size: 64px; line-height: 1; letter-spacing: -0.02em; color: #F5F1EA; margin-bottom: 10px; }
.price .per { font-family: var(--font-sans); font-size: 13px; color: #6E6B66; }
.price ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; font-family: var(--font-sans); font-size: 14px; color: #A8A5A0; }
.price ul li { display: flex; gap: 10px; align-items: baseline; }
.price ul li::before { content: '/'; color: #C2410C; font-family: var(--font-mono); font-weight: 500; flex-shrink: 0; }
.price ul li.signal-line { color: #C2410C; flex-wrap: wrap; row-gap: 2px; }
.price ul li.signal-line .lead { white-space: nowrap; }
.price ul li.signal-line .qual { color: #A8A5A0; font-style: italic; white-space: nowrap; flex-basis: 100%; padding-left: 0; }
.price .btn-primary,
.price .btn-secondary { margin-top: auto; }

/* footer */
.foot { padding: 48px 0 64px; border-top: 1px solid #1A1A22; }
.foot-inner { display: flex; align-items: center; justify-content: space-between; font-family: var(--font-mono); font-size: 12px; color: #6E6B66; letter-spacing: 0.04em; }
.foot-inner .mark .am { color: #C2410C; }
.foot-inner .links { display: flex; gap: 24px; }
.foot-inner .links a { color: #A8A5A0; text-decoration: none; }
.foot-inner .links a:hover { color: #F5F1EA; }

/* big-prose paragraph */
.lead {
  font-family: var(--font-sans); font-weight: 400;
  font-size: 28px; line-height: 1.4; color: #F5F1EA;
  letter-spacing: -0.01em; max-width: 28ch;
  margin: 0 0 24px;
}
.lead .am { color: #C2410C; }

.section-head {
  display: grid; grid-template-columns: 1fr 1.4fr; gap: 48px;
  margin-bottom: 64px;
  align-items: end;
}
.section-head h2 { font-family: var(--font-sans); font-weight: 600; font-size: 48px; line-height: 1.05; letter-spacing: -0.02em; margin: 0; max-width: 18ch; }
.section-head h2 .am { color: #C2410C; }
.section-head .blurb { font-family: var(--font-sans); font-size: 16px; color: #A8A5A0; line-height: 1.6; max-width: 52ch; }


/* --- The actual GTM OS rich block --- */
.gtmos-block {
  background:
    linear-gradient(#C2410C, #C2410C) 8px 10px / 3px calc(100% - 20px) no-repeat,
    #0F0F13;
  border: 1px solid #1F1F28;
  padding: 22px 26px 20px 30px;
  max-width: 720px;
  position: relative;
}
.gtmos-block::before {
  content: "";
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 8px;
  width: 3px;
  background: #C2410C;
}
.gtmos-block .header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding-bottom: 12px;
  border-bottom: 1px solid #C2410C;
  margin-bottom: 22px;
}
.gtmos-block .header .label {
  font-family: var(--font-mono);
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #F5F1EA;
}
.gtmos-block .header .label .am { color: #C2410C; margin: 0 6px; }
.gtmos-block .header .date {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  color: #6E6B66;
}

.gtmos-block .hero {
  display: flex;
  align-items: baseline;
  gap: 20px;
  margin-bottom: 24px;
}
.gtmos-block .hero .num {
  font-family: var(--font-mono);
  font-weight: 300;
  font-size: 88px;
  line-height: 1;
  letter-spacing: -0.02em;
  color: #F5F1EA;
}
.gtmos-block .hero .num.amber { color: #C2410C; }
.gtmos-block .hero .ctx {
  font-family: var(--font-sans);
  font-size: 13px;
  color: #A8A5A0;
  line-height: 1.5;
  max-width: 38ch;
  padding-bottom: 6px;
  white-space: nowrap;
}
.gtmos-block .hero .ctx.wrap { white-space: normal; }
.gtmos-block .hero .ctx strong { color: #F5F1EA; font-weight: 500; }

.gtmos-block .body { margin-bottom: 22px; }

/* generic table */
.gtmos-block table { width: 100%; border-collapse: collapse; font-family: var(--font-sans); font-size: 13px; }
.gtmos-block thead th {
  text-align: left;
  padding: 8px 0;
  font-family: var(--font-mono);
  font-weight: 400;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6E6B66;
  border-bottom: 1px solid #2F2F3A;
}
.gtmos-block tbody td {
  padding: 9px 0;
  border-bottom: 1px solid #1F1F28;
  color: #F5F1EA;
}
.gtmos-block .num-cell { font-family: var(--font-mono); font-weight: 400; text-align: right; }
.gtmos-block .num-cell.am { color: #C2410C; }
.gtmos-block .right { text-align: right; }
.gtmos-block .muted { color: #A8A5A0; }

/* footer */
.gtmos-block .footer {
  border-top: 1px solid #1F1F28;
  padding-top: 12px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: var(--font-mono);
  font-size: 11px;
  color: #6E6B66;
  letter-spacing: 0.04em;
}
.gtmos-block .footer .mark { color: #A8A5A0; }
.gtmos-block .footer .mark .am { color: #C2410C; }

/* signal intelligence list */
.sig-row {
  display: grid;
  grid-template-columns: 28px 1fr 140px 56px;
  gap: 28px;
  align-items: baseline;
  padding: 9px 0;
  border-bottom: 1px solid #1F1F28;
}
.sig-row .rank { font-family: var(--font-mono); font-size: 11px; color: #6E6B66; }
.sig-row .name { font-family: var(--font-mono); font-size: 14px; color: #F5F1EA; }
.sig-row .why { font-family: var(--font-sans); font-size: 12px; color: #A8A5A0; }
.sig-row .bucket { font-family: var(--font-mono); font-size: 11px; color: #4A4742; letter-spacing: 0.06em; text-transform: uppercase; text-align: right; }
.sig-row .score { font-family: var(--font-mono); font-size: 16px; font-weight: 500; color: #C2410C; text-align: right; }

/* delivery state list */
.del-row {
  display: grid;
  grid-template-columns: 1fr auto auto auto;
  gap: 18px;
  align-items: baseline;
  padding: 9px 0;
  border-bottom: 1px solid #1F1F28;
  font-family: var(--font-mono);
  font-size: 13px;
}
.del-row .domain { color: #F5F1EA; }
.del-row .pct { color: #A8A5A0; }
.del-row .pct.am { color: #C2410C; }
.del-row .state {
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #A8A5A0;
}

/* --- Composer --- */
.composer {
  margin: auto 28px 24px;
  border: 1px solid #2F2F3A;
  border-radius: 4px;
  padding: 12px 14px;
  font-family: var(--font-sans);
  color: #6E6B66;
  font-size: 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* --- Tab strip (post-type switcher) --- */
.tabs {
  display: flex;
  gap: 0;
  border-bottom: 1px solid #1A1A22;
  padding: 0 28px;
}
.tab {
  padding: 12px 18px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #6E6B66;
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  margin-bottom: -1px;
}
.tab:hover { color: #A8A5A0; }
.tab.active { color: #F5F1EA; border-bottom-color: #C2410C; }

.feed { flex: 1; overflow: auto; }


/* --- Delivery anomaly band (promoted) --- */
.anomaly-band {
  background: #15110D;
  border: 1px solid #3A1F0E;
  border-left: 3px solid #C2410C;
  padding: 18px 22px 20px;
}
.anomaly-band .anom-eyebrow {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #C2410C;
  display: flex;
  align-items: center;
  gap: 10px;
}
.anomaly-band .anom-eyebrow .dot {
  width: 8px; height: 8px; border-radius: 999px; background: #C2410C;
  box-shadow: 0 0 0 4px rgba(194,65,12,0.18);
}
.anomaly-band .anom-grid {
  display: grid;
  grid-template-columns: 200px 200px 1fr;
  gap: 28px;
  align-items: end;
  margin-top: 16px;
}
.anomaly-band .anom-num .big {
  font-family: var(--font-mono);
  font-weight: 300;
  font-size: 56px;
  color: #C2410C;
  line-height: 1;
  letter-spacing: -0.01em;
}
.anomaly-band .anom-num .big.alt { color: #F5F1EA; }
.anomaly-band .anom-num .big .unit {
  font-size: 22px;
  color: inherit;
  margin-left: 4px;
  opacity: 0.7;
}
.anomaly-band .anom-num .lbl {
  font-family: var(--font-sans);
  font-size: 12px;
  color: #A8A5A0;
  margin-top: 8px;
}
.anomaly-band .anom-body {
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.55;
  color: #F5F1EA;
  padding-bottom: 6px;
}
.anomaly-band .anom-body .muted-inline { color: #6E6B66; }


/* --- End-of-day terminator (Signal only, daily reset) --- */
.day-end {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 28px 28px 32px;
  max-width: 720px;
}
.day-end .rule {
  flex: 1;
  height: 1px;
  background: #1F1F28;
}
.day-end .label {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: lowercase;
  color: #4A4742;
}
.day-end .label .dot {
  color: #C2410C;
  margin: 0 4px;
}


/* ===== Hero — split layout w/ embedded Slack post ===== */
.hero-split { padding-top: 64px; padding-bottom: 96px; }
.hero-grid {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 56px;
  align-items: start;
}
.hero-left h1 {
  font-family: var(--font-sans); font-weight: 600;
  font-size: 64px; line-height: 1.02; letter-spacing: -0.025em;
  margin: 0 0 28px; max-width: 14ch;
}
.hero-left h1 .am { color: #C2410C; }
.hero-left .sub {
  font-family: var(--font-sans); font-size: 18px; color: #A8A5A0;
  max-width: 44ch; line-height: 1.55; margin: 0 0 36px;
}
.hero-left .ctas { display: flex; align-items: center; gap: 14px; }
.hero-stats {
  margin-top: 56px;
  display: grid; grid-template-columns: 1fr 1fr 1fr;
  gap: 24px;
  border-top: 1px solid #1A1A22;
  padding-top: 28px;
}
.hero-stats .hs { display: flex; flex-direction: column; gap: 8px; }
.hero-stats .hs .n {
  font-family: var(--font-mono); font-weight: 300;
  font-size: 44px; line-height: 1; letter-spacing: -0.02em;
  color: #F5F1EA;
}
.hero-stats .hs .n.am { color: #C2410C; }
.hero-stats .hs .c {
  font-family: var(--font-sans); font-size: 12px; color: #6E6B66;
  line-height: 1.5; max-width: 24ch;
}

/* Right rail — meta + chrome + foot caption */
.hero-right { display: flex; flex-direction: column; gap: 14px; }
.hero-right-meta {
  display: flex; align-items: center; gap: 10px;
  font-family: var(--font-mono); font-size: 11px;
  letter-spacing: 0.1em; text-transform: uppercase; color: #6E6B66;
}
.hero-right-meta .dot {
  width: 7px; height: 7px; border-radius: 999px; background: #6E6B66;
}
.hero-right-meta .dot.live {
  background: #C2410C;
  box-shadow: 0 0 0 4px rgba(194,65,12,0.18);
}
.hero-right-foot {
  font-family: var(--font-sans); font-size: 13px; color: #A8A5A0;
  line-height: 1.55;
}
.hero-right-foot strong { color: #F5F1EA; font-weight: 500; }
.hero-right-foot .muted { color: #6E6B66; }

/* ===== Slack chrome (faux window holding a real GTM block) ===== */
.slack-chrome {
  background: #0B0B0D;
  border: 1px solid #1F1F28;
  border-radius: 6px;
  overflow: hidden;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.02) inset,
    0 24px 60px rgba(0,0,0,0.45);
}
.slack-chrome .sc-titlebar {
  display: flex; align-items: center; gap: 12px;
  padding: 11px 14px;
  background: #07070A;
  border-bottom: 1px solid #1A1A22;
  font-family: var(--font-mono); font-size: 12px;
}
.slack-chrome .sc-dots { display: flex; gap: 6px; }
.slack-chrome .sc-dots .d {
  width: 11px; height: 11px; border-radius: 999px;
  background: #2A2A33;
}
.slack-chrome .sc-channel { color: #F5F1EA; font-weight: 500; }
.slack-chrome .sc-channel .hash { color: #6E6B66; margin-right: 2px; }
.slack-chrome .sc-spacer { flex: 1; }
.slack-chrome .sc-meta { color: #6E6B66; font-size: 11px; letter-spacing: 0.04em; }

.slack-chrome .sc-body {
  padding: 18px 18px 22px;
  background:
    repeating-linear-gradient(0deg, transparent 0 23px, #0F0F13 23px 24px),
    #0B0B0D;
  background:
    #0B0B0D;  /* keep clean — no fake message lines, brand discipline */
}
.slack-chrome .sc-post {
  display: grid; grid-template-columns: 40px 1fr; gap: 12px;
}
.slack-chrome .sc-avatar {
  width: 36px; height: 36px; border-radius: 4px;
  background: #141418; border: 1px solid #1F1F28;
  display: flex; align-items: center; justify-content: center;
}
.slack-chrome .sc-avatar span {
  font-family: var(--font-mono); font-weight: 500; font-size: 18px;
  color: #C2410C; line-height: 1;
}
.slack-chrome .sc-meta-row {
  display: flex; align-items: baseline; gap: 8px;
  margin-bottom: 6px;
}
.slack-chrome .sc-meta-row .who {
  font-family: var(--font-sans); font-weight: 600; font-size: 14px; color: #F5F1EA;
}
.slack-chrome .sc-meta-row .app {
  font-family: var(--font-sans); font-size: 10px; color: #6E6B66;
  background: #1C1C22; padding: 1px 5px; border-radius: 2px;
  letter-spacing: 0.04em; text-transform: uppercase;
}
.slack-chrome .sc-meta-row .ts {
  font-family: var(--font-sans); font-size: 12px; color: #6E6B66;
}
/* The embedded GTM block needs to lose its outer max-width inside chrome */
.slack-chrome .gtmos-block {
  max-width: none;
}

/* ===== Product section — tabbed post stage ===== */
.product { padding-top: 140px; padding-bottom: 140px; }
.post-tabs {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border: 1px solid #1F1F28;
  background: #1F1F28;
  margin-bottom: 32px;
}
.post-tab {
  background: #0B0B0D;
  border: 0; cursor: pointer;
  padding: 22px 24px;
  text-align: left;
  display: flex; flex-direction: column; gap: 6px;
  transition: background 120ms;
  border-bottom: 2px solid transparent;
}
.post-tab:hover { background: #0F0F13; }
.post-tab .lbl {
  font-family: var(--font-mono); font-size: 16px; color: #A8A5A0;
  font-weight: 500;
}
.post-tab .lbl .am { color: #C2410C; margin: 0 1px; }
.post-tab .freq {
  font-family: var(--font-mono); font-size: 11px;
  letter-spacing: 0.06em; color: #6E6B66;
}
.post-tab.active {
  background: #0F0F13;
  border-bottom-color: #C2410C;
}
.post-tab.active .lbl { color: #F5F1EA; }
.post-tab.active .freq { color: #A8A5A0; }
.post-stage { max-width: 880px; }


/* Embedded post overrides — when GTM block is inside the marketing-site Slack chrome,
   the available width is tighter than full Slack. Recompose the row grid. */
.slack-chrome .gtmos-block { padding: 18px 20px 16px 24px; }
.slack-chrome .gtmos-block .hero { gap: 16px; padding: 14px 0 18px; }
.slack-chrome .gtmos-block .hero .num { font-size: 76px !important; }
.slack-chrome .gtmos-block .sig-row {
  grid-template-columns: 22px 1fr 96px 44px;
  gap: 16px;
  padding: 7px 0;
}
.slack-chrome .gtmos-block .sig-row .name { font-size: 13px; }
.slack-chrome .gtmos-block .sig-row .why { font-size: 11px; }
.slack-chrome .gtmos-block .del-row {
  grid-template-columns: 1fr auto auto auto;
  gap: 14px;
}
.slack-chrome .gtmos-block table { font-size: 12px; }


/* ============================================================
   Cadence — year-view rhythm visualization
   Single-accent discipline: amber as data, not decoration.
   ============================================================ */
.year-view { padding-top: 120px; padding-bottom: 120px; }

.yv-frame {
  border: 1px solid #1F1F28;
  background: #0B0B0D;
  padding: 28px 32px 32px;
}

.yv-meta {
  display: flex; align-items: baseline; gap: 8px;
  font-family: var(--font-mono); font-size: 12px;
  color: #6E6B66; letter-spacing: 0.06em;
  padding-bottom: 18px; margin-bottom: 18px;
  border-bottom: 1px solid #1A1A22;
}
.yv-meta-yr { color: #F5F1EA; font-weight: 500; font-size: 14px; }
.yv-meta-sep { color: #C2410C; }
.yv-meta-ch { color: #A8A5A0; font-size: 14px; }
.yv-meta-spacer { flex: 1; }
.yv-meta-rt { font-size: 11px; text-transform: lowercase; }

/* The grid — tight, mathematical */
.yv-grid-wrap { display: flex; flex-direction: column; gap: 0; }

.yv-months,
.yv-row {
  display: grid;
  gap: 2px;
  align-items: stretch;
}
.yv-months { margin-bottom: 6px; }

.yv-corner { /* spacer cell over the weekday-label column */ }

.yv-month-cell {
  height: 16px;
  position: relative;
  font-family: var(--font-mono); font-size: 10px;
  color: #6E6B66; letter-spacing: 0.04em;
}
.yv-month-label {
  position: absolute; left: 0; bottom: 0;
  white-space: nowrap;
}

.yv-wd-label {
  font-family: var(--font-mono); font-size: 10px;
  color: #6E6B66; letter-spacing: 0.04em;
  display: flex; align-items: center;
  padding-right: 6px;
  aspect-ratio: auto;
  height: auto;
}

.yv-row { margin-bottom: 2px; }

.yv-cell {
  aspect-ratio: 1 / 1;     /* square cells = engineering-chart register */
  background: #16161C;
  position: relative;
  border-radius: 1px;
}

/* Daily Signal cell — muted amber. Two-tone amber strategy:
   muted base for the routine, full-saturation reserved for
   punctuation events. */
.yv-cell.signal { background: #7A2906; }

/* Punctuation overlays — full-saturation amber, geometric glyphs */
.yv-cell.cascade::after {
  content: ''; position: absolute;
  left: 50%; top: 50%;
  width: 4px; height: 4px;
  margin: -2px 0 0 -2px;
  background: #F5F1EA;
  border-radius: 999px;
}
.yv-cell.tam {
  background: #C2410C;        /* full saturation for quarter starts */
  outline: 1px solid #F5F1EA;
  outline-offset: -3px;
  z-index: 2;
}
.yv-cell.tam::after {
  background: #C2410C;        /* override the cascade dot to amber on tam */
}
.yv-cell.anomaly {
  background: #C2410C;        /* full saturation for anomalies */
}
.yv-cell.anomaly::after {
  content: ''; position: absolute;
  inset: 2px;
  background: transparent;
  border: 1px solid #F5F1EA;
  border-radius: 0;
  transform: rotate(45deg);
  transform-origin: center;
  width: auto; height: auto;
  margin: 0; left: 2px; top: 2px; right: 2px; bottom: 2px;
}
.yv-cell.holiday,
.yv-cell.out {
  background: #0F0F13;
}

/* Legend */
.yv-legend {
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 22px;
  align-items: center;
  padding-top: 20px;
  border-top: 1px solid #1A1A22;
  font-family: var(--font-sans);
}
.yv-leg-item { display: flex; align-items: center; gap: 10px; }
.yv-leg-text {
  font-family: var(--font-mono); font-size: 11px;
  color: #6E6B66; letter-spacing: 0.04em;
  white-space: nowrap;
}
.yv-leg-text strong {
  color: #A8A5A0; font-weight: 500;
}
.yv-leg-text strong .am { color: #C2410C; }

.yv-swatch {
  width: 14px; height: 14px;
  background: #16161C;
  border-radius: 1px;
  position: relative;
  flex-shrink: 0;
}
.yv-swatch.signal { background: #7A2906; }
.yv-swatch.empty { background: #0F0F13; }
.yv-swatch.cascade-marker { background: #7A2906; }
.yv-swatch.cascade-marker::after {
  content: ''; position: absolute;
  left: 50%; top: 50%;
  width: 4px; height: 4px; margin: -2px 0 0 -2px;
  background: #F5F1EA; border-radius: 999px;
}
.yv-swatch.tam-marker {
  background: #C2410C;
  outline: 1px solid #F5F1EA;
  outline-offset: -3px;
}
.yv-swatch.anomaly-marker { background: #C2410C; position: relative; }
.yv-swatch.anomaly-marker::after {
  content: ''; position: absolute;
  inset: 2px;
  border: 1px solid #F5F1EA;
  transform: rotate(45deg);
}

/* The stamp — DAILY · FOREVER as the punch line */
.yv-stamp {
  margin-top: 36px;
  font-family: var(--font-mono); font-weight: 500;
  font-size: 13px; letter-spacing: 0.32em;
  color: #6E6B66; text-align: right;
  padding-top: 16px;
  border-top: 1px solid #1A1A22;
}
.yv-stamp .am { color: #C2410C; margin: 0 6px; }
