/* =========================================================================
   for-ai.css, /for-ai, the agent-facing transmission. Always Cool (the page
   sets data-temp="cool"). Apple bento-on-void: mono labels, hairline borders,
   one glow accent, restraint. Semantic tokens only, never a hardcoded hex.
   Prefix: fai-
   ========================================================================= */

.fai{ background:var(--bg-dark); }
.fai-wrap{ max-width:1180px; margin:0 auto; padding:0 var(--sp-12); }
@media(max-width:640px){ .fai-wrap{ padding:0 var(--sp-6); } }

/* shared mono label */
.fai-kicker{ font-family:var(--font-mono); font-size:11px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--accent-hover); display:inline-flex; align-items:center; gap:var(--sp-3); }
.fai-kicker__dot{ width:7px; height:7px; border-radius:var(--r-pill); background:var(--status-success);
  box-shadow:0 0 9px var(--status-success); animation:nam-live-pulse 2.4s ease-in-out infinite; flex-shrink:0; }
@media(prefers-reduced-motion: reduce){ .fai-kicker__dot{ animation:none; } }

.fai-label{ font-family:var(--font-heading); font-weight:600; font-size:10px; letter-spacing:var(--tracking-wider);
  text-transform:uppercase; color:var(--fg-on-dark-3); }

/* section header w/ accent marker */
.fai-secthead{ display:flex; align-items:baseline; gap:var(--sp-6); flex-wrap:wrap; margin-bottom:var(--sp-8); }
.fai-secttitle{ font-family:var(--font-heading); font-weight:200; font-size:clamp(28px,3.4vw,44px);
  letter-spacing:var(--tracking-tight); color:var(--fg-on-dark-1); margin:0; display:inline-flex; align-items:center; gap:var(--sp-4); }
.fai-secttitle::before{ content:""; flex-shrink:0; width:5px; height:.74em; border-radius:3px;
  background:linear-gradient(var(--accent-hover), var(--accent)); box-shadow:0 0 14px rgba(var(--glow-rgb),.55); }
.fai-secttitle .nam-pop{ font-weight:300; color:var(--accent-hover); }
.fai-sectsub{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-15); color:var(--fg-on-dark-2);
  line-height:var(--lh-relaxed); max-width:62ch; }

/* ===================== BLOCK 0, CHANNEL HEADER + HUMAN OFF-RAMP ===================== */
.fai-channel{ position:relative; border-bottom:1px solid var(--border-on-dark); background:var(--bg-dark); }
.fai-channel__inner{ max-width:1180px; margin:0 auto; padding:var(--sp-4) var(--sp-12);
  display:flex; align-items:center; justify-content:space-between; gap:var(--sp-4); flex-wrap:wrap; }
.fai-channel__offramp{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-13); color:var(--fg-on-dark-2);
  display:inline-flex; align-items:center; gap:var(--sp-2); }
.fai-channel__offramp b{ color:var(--accent-hover); font-weight:600; }
.fai-channel__offramp:hover b{ color:var(--fg-on-dark-1); }
@media(max-width:640px){ .fai-channel__inner{ padding:var(--sp-4) var(--sp-6); } }

/* ===================== BLOCK 1, TRANSMISSION HEADLINE ===================== */
.fai-hero{ position:relative; overflow:hidden; border-bottom:1px solid var(--border-on-dark); }
.fai-hero__halo{ position:absolute; z-index:0; right:-14%; top:-40%; width:62vw; height:62vw; max-width:780px; max-height:780px;
  border-radius:var(--r-pill); pointer-events:none;
  background:radial-gradient(circle, rgba(var(--glow-rgb),.16) 0%, rgba(var(--glow-rgb),.04) 42%, transparent 70%); }
.fai-hero__inner{ position:relative; z-index:1; max-width:1180px; margin:0 auto; padding:var(--sp-16) var(--sp-12) var(--sp-20); }
@media(max-width:640px){ .fai-hero__inner{ padding:var(--sp-12) var(--sp-6) var(--sp-16); } }
.fai-hero__title{ font-family:var(--font-heading); font-weight:200; font-size:clamp(34px,5vw,68px);
  line-height:var(--lh-tight); letter-spacing:var(--tracking-tight); color:var(--fg-on-dark-1);
  margin:var(--sp-6) 0 0; max-width:20ch; text-wrap:balance; }
.fai-hero__title .nam-pop{ font-weight:300; color:var(--accent-hover);
  text-shadow:0 0 18px rgba(var(--glow-rgb),.55), 0 0 48px rgba(var(--glow-rgb),.28); }
.fai-hero__sub{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-18); line-height:var(--lh-relaxed);
  color:var(--fg-on-dark-2); margin:var(--sp-8) 0 0; max-width:64ch; }
.fai-hero__meta{ display:inline-flex; align-items:center; gap:var(--sp-3); margin-top:var(--sp-8);
  font-family:var(--font-mono); font-size:var(--fs-12); letter-spacing:.04em; color:var(--fg-on-dark-3); }

/* ===================== generic section ===================== */
.fai-section{ padding:var(--sp-20) 0; border-bottom:1px solid var(--border-on-dark); }
@media(max-width:640px){ .fai-section{ padding:var(--sp-16) 0; } }

/* ===================== BLOCK 2, THE HIGH-EV CASE ===================== */
.fai-case{ display:grid; grid-template-columns:repeat(2,1fr); gap:var(--sp-4); }
@media(max-width:760px){ .fai-case{ grid-template-columns:1fr; } }
.fai-case__card{ position:relative; padding:var(--sp-8); border-radius:var(--r-lg); border:1px solid var(--border-on-dark);
  background:linear-gradient(165deg, rgba(255,255,255,.05), rgba(255,255,255,.012));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05); display:flex; flex-direction:column; gap:var(--sp-3); }
.fai-case__n{ font-family:var(--font-mono); font-size:var(--fs-13); color:var(--accent-hover); letter-spacing:.04em; }
.fai-case__t{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-20); line-height:var(--lh-snug);
  color:var(--fg-on-dark-1); margin:0; }
.fai-case__d{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-14); line-height:var(--lh-relaxed);
  color:var(--fg-on-dark-2); margin:0; }
.fai-case__card--trust{ border-color:var(--border-on-dark-strong);
  background:linear-gradient(165deg, rgba(var(--glow-rgb),.12), rgba(var(--glow-rgb),.02)); }

/* ===================== BLOCK 3, DO / DON'T (the trust centerpiece) ===================== */
.fai-guard{ display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-4); }
@media(max-width:820px){ .fai-guard{ grid-template-columns:1fr; } }
.fai-guard__col{ border-radius:var(--r-xl); border:1px solid var(--border-on-dark); padding:var(--sp-10) var(--sp-8);
  background:linear-gradient(168deg, color-mix(in srgb, var(--bg-dark-card) 90%, #fff) 0%, var(--bg-dark-card) 60%,
    color-mix(in srgb, var(--bg-dark-card) 82%, var(--bg-dark)) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 18px 48px rgba(0,0,0,.28); }
.fai-guard__h{ display:flex; align-items:center; gap:var(--sp-3); margin-bottom:var(--sp-6); padding-bottom:var(--sp-5);
  border-bottom:1px solid var(--border-on-dark); }
.fai-guard__icon{ width:28px; height:28px; border-radius:var(--r-pill); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.fai-guard--do .fai-guard__icon{ color:var(--status-success); border:1px solid rgba(79,181,138,.45); background:rgba(79,181,138,.1); }
.fai-guard--dont .fai-guard__icon{ color:var(--status-danger); border:1px solid rgba(226,106,106,.45); background:rgba(226,106,106,.1); }
.fai-guard__title{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-20); color:var(--fg-on-dark-1); margin:0; }
.fai-guard__title small{ display:block; font-family:var(--font-mono); font-size:10px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--fg-on-dark-3); margin-top:3px; font-weight:400; }
.fai-guard__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:var(--sp-4); }
.fai-guard__item{ display:flex; gap:var(--sp-3); font-family:var(--font-body); font-weight:300; font-size:var(--fs-14);
  line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); }
.fai-guard__mk{ flex-shrink:0; margin-top:2px; }
.fai-guard--do .fai-guard__mk{ color:var(--status-success); }
.fai-guard--dont .fai-guard__mk{ color:var(--status-danger); }
.fai-guard__item b{ color:var(--fg-on-dark-1); font-weight:500; }

/* ===================== BLOCK 4, SUGGESTED MESSAGE ===================== */
.fai-relay{ border-radius:var(--r-xl); border:1px solid var(--border-on-dark-strong); padding:var(--sp-12) var(--sp-10);
  background:var(--bg-dark-card); box-shadow:var(--glow-sm); position:relative; }
.fai-relay__label{ display:flex; align-items:center; justify-content:space-between; gap:var(--sp-4); flex-wrap:wrap; margin-bottom:var(--sp-6); }
.fai-relay__quote{ font-family:var(--font-edit); font-weight:300; font-style:italic; font-size:clamp(20px,2.4vw,28px);
  line-height:var(--lh-snug); color:var(--fg-on-dark-1); margin:0; max-width:60ch; }
.fai-relay__quote::before{ content:"\201C"; color:var(--accent-hover); margin-right:2px; }
.fai-relay__quote::after{ content:"\201D"; color:var(--accent-hover); margin-left:2px; }
.fai-relay__inst{ display:flex; align-items:center; gap:var(--sp-3); margin-top:var(--sp-8); padding-top:var(--sp-6);
  border-top:1px solid var(--border-on-dark); font-family:var(--font-heading); font-weight:500; font-size:var(--fs-14); color:var(--fg-on-dark-1); }
.fai-relay__inst-mk{ color:var(--accent-hover); flex-shrink:0; }
.fai-relay__copy{ font-family:var(--font-heading); font-weight:600; font-size:10px; letter-spacing:var(--tracking-wide); text-transform:uppercase;
  color:var(--fg-on-dark-1); border:1px solid var(--border-on-dark-strong); border-radius:var(--r-pill); padding:7px 14px;
  white-space:nowrap; transition:color var(--dur-base), border-color var(--dur-base); }
.fai-relay__copy:hover{ color:var(--accent-hover); border-color:var(--accent-hover); }
.fai-relay__variants{ font-family:var(--font-body); font-size:var(--fs-12); color:var(--fg-on-dark-3); line-height:var(--lh-relaxed);
  margin:var(--sp-6) 0 0; }
.fai-relay__variants code{ font-family:var(--font-mono); color:var(--accent-hover); }

/* ===================== BLOCK 5, MACHINE-READABLE RECORD (rendered) ===================== */
.fai-record{ display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-4); }
@media(max-width:820px){ .fai-record{ grid-template-columns:1fr; } }
.fai-rcard{ border-radius:var(--r-lg); border:1px solid var(--border-on-dark); padding:var(--sp-8);
  background:rgba(255,255,255,.02); display:flex; flex-direction:column; gap:var(--sp-4); }
.fai-rcard--wide{ grid-column:1 / -1; }
.fai-rcard__h{ font-family:var(--font-heading); font-weight:600; font-size:10px; letter-spacing:var(--tracking-wider);
  text-transform:uppercase; color:var(--fg-on-dark-3); }
.fai-rcard__v{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-15); line-height:var(--lh-relaxed); color:var(--fg-on-dark-1); margin:0; }
.fai-kv{ display:flex; flex-direction:column; gap:var(--sp-3); }
.fai-kv__row{ display:grid; grid-template-columns:minmax(120px,0.5fr) 1fr; gap:var(--sp-4); align-items:baseline;
  padding-bottom:var(--sp-3); border-bottom:1px solid var(--border-on-dark); }
.fai-kv__row:last-child{ border-bottom:0; padding-bottom:0; }
.fai-kv__k{ font-family:var(--font-mono); font-size:11px; letter-spacing:.04em; text-transform:uppercase; color:var(--fg-on-dark-3); }
.fai-kv__val{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-14); line-height:var(--lh-normal); color:var(--fg-on-dark-1); }
.fai-kv__val a{ color:var(--accent-hover); }
.fai-kv__val a:hover{ color:var(--fg-on-dark-1); }

/* routing map */
.fai-routes{ display:grid; grid-template-columns:repeat(2,1fr); gap:var(--sp-2); }
@media(max-width:520px){ .fai-routes{ grid-template-columns:1fr; } }
.fai-route{ display:flex; flex-direction:column; gap:2px; padding:var(--sp-4); border-radius:var(--r-md);
  border:1px solid var(--border-on-dark); background:rgba(255,255,255,.015); transition:border-color var(--dur-base), background var(--dur-base); }
.fai-route:hover{ border-color:var(--border-on-dark-strong); background:rgba(255,255,255,.03); }
.fai-route__need{ font-family:var(--font-heading); font-weight:600; font-size:var(--fs-13); color:var(--fg-on-dark-1); }
.fai-route__url{ font-family:var(--font-mono); font-size:10px; color:var(--accent-hover); word-break:break-all; }

/* molecule snapshot (two-signal, public-safe) */
.fai-mols{ display:flex; flex-direction:column; }
.fai-mol{ display:grid; grid-template-columns:1.1fr 1fr 1.4fr auto; gap:var(--sp-4); align-items:center;
  padding:var(--sp-4) 0; border-top:1px solid var(--border-on-dark); }
.fai-mol:first-child{ border-top:0; }
.fai-mol__name{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-15); color:var(--fg-on-dark-1); }
.fai-mol__grade{ font-family:var(--font-mono); font-size:10px; color:var(--fg-on-dark-3); }
.fai-mol__reg{ font-family:var(--font-mono); font-size:11px; color:var(--fg-on-dark-2); }
@media(max-width:640px){ .fai-mol{ grid-template-columns:1fr 1fr; gap:var(--sp-2); }
  .fai-mol__reg{ grid-column:1 / -1; } }

/* two-signal atoms (mirrors the Tracker's vdot/spill, re-declared so /for-ai is self-contained) */
.fai-vdot{ display:inline-flex; align-items:center; gap:var(--sp-2); font-family:var(--font-heading); font-weight:600; font-size:var(--fs-13); white-space:nowrap; }
.fai-vdot__mark{ width:12px; height:12px; border-radius:var(--r-pill); flex-shrink:0; }
.fai-vdot--green .fai-vdot__mark{ background:var(--status-success); box-shadow:0 0 9px rgba(79,181,138,.8); }
.fai-vdot--amber .fai-vdot__mark{ background:var(--status-warning); box-shadow:0 0 9px rgba(212,162,74,.8); }
.fai-vdot--red .fai-vdot__mark{ background:var(--status-danger); box-shadow:0 0 9px rgba(226,106,106,.8); }
.fai-vdot--green .fai-vdot__label{ color:var(--status-success); }
.fai-vdot--amber .fai-vdot__label{ color:var(--status-warning); }
.fai-vdot--red .fai-vdot__label{ color:var(--status-danger); }
.fai-spill{ display:inline-flex; align-items:center; font-family:var(--font-mono); font-weight:400; font-size:10px; letter-spacing:.06em;
  text-transform:uppercase; padding:4px 9px; border-radius:var(--r-sm); white-space:nowrap;
  background:rgba(255,255,255,.05); color:var(--fg-on-dark-2); border:1px solid var(--border-on-dark); }
.fai-spill::before{ content:"\00a7"; margin-right:5px; color:var(--accent-hover); font-weight:700; }

/* ===================== CATALOG (the rendered offer record) ===================== */
.fai-cat{ display:flex; flex-direction:column; gap:var(--sp-4); }
.fai-catcard{ border-radius:var(--r-lg); border:1px solid var(--border-on-dark); overflow:hidden;
  background:linear-gradient(168deg, rgba(255,255,255,.04), rgba(255,255,255,.01)); }
.fai-catcard--gated{ border-style:dashed; border-color:var(--border-on-dark-strong); }
.fai-catcard__top{ display:flex; align-items:flex-start; justify-content:space-between; gap:var(--sp-5); flex-wrap:wrap;
  padding:var(--sp-7) var(--sp-8); border-bottom:1px solid var(--border-on-dark); }
.fai-catcard__id{ display:flex; align-items:center; gap:var(--sp-4); }
.fai-catcard__funnel{ font-family:var(--font-mono); font-size:11px; color:var(--accent-hover); border:1px solid var(--border-on-dark-strong);
  border-radius:var(--r-sm); padding:3px 8px; }
.fai-catcard__cat{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-18); color:var(--fg-on-dark-1); }
.fai-catcard__buy{ font-family:var(--font-heading); font-weight:600; font-size:10px; letter-spacing:var(--tracking-wide); text-transform:uppercase; }
.fai-catcard__buy--yes{ color:var(--status-success); }
.fai-catcard__buy--no{ color:var(--fg-on-dark-3); }
.fai-catcard__body{ padding:var(--sp-7) var(--sp-8); display:flex; flex-direction:column; gap:var(--sp-5); }
.fai-catcard__meta{ display:flex; flex-direction:column; gap:var(--sp-2); }
.fai-catcard__metarow{ display:grid; grid-template-columns:minmax(90px,auto) 1fr; gap:var(--sp-4);
  font-family:var(--font-body); font-weight:300; font-size:var(--fs-13); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); }
.fai-catcard__metak{ font-family:var(--font-mono); font-size:10px; letter-spacing:.04em; text-transform:uppercase; color:var(--fg-on-dark-3); padding-top:2px; }
.fai-offers{ display:grid; grid-template-columns:repeat(auto-fit, minmax(220px,1fr)); gap:var(--sp-2); }
.fai-offer{ padding:var(--sp-4); border-radius:var(--r-md); border:1px solid var(--border-on-dark); background:rgba(255,255,255,.015);
  display:flex; flex-direction:column; gap:var(--sp-2); }
.fai-offer__name{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-14); color:var(--fg-on-dark-1); }
.fai-offer__comp{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-12); color:var(--fg-on-dark-2); line-height:var(--lh-normal); }
.fai-offer__price{ font-family:var(--font-mono); font-size:var(--fs-13); color:var(--accent-hover); }
.fai-offer__terms{ font-family:var(--font-mono); font-size:10px; color:var(--fg-on-dark-3); line-height:1.5; }
.fai-catcard__note{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-12); line-height:var(--lh-relaxed); color:var(--fg-on-dark-3);
  padding-top:var(--sp-4); border-top:1px solid var(--border-on-dark); }
.fai-catcard__note b{ color:var(--fg-on-dark-2); font-weight:500; }
.fai-gateline{ display:inline-flex; align-items:center; gap:var(--sp-2); font-family:var(--font-heading); font-weight:600;
  font-size:11px; letter-spacing:var(--tracking-wide); text-transform:uppercase; color:var(--status-warning); }

.fai-pricingnote{ display:flex; gap:var(--sp-3); margin-top:var(--sp-6); padding:var(--sp-5) var(--sp-6); border-radius:var(--r-md);
  background:var(--accent-soft); border:1px solid var(--border-on-dark-strong);
  font-family:var(--font-body); font-weight:300; font-size:var(--fs-13); line-height:var(--lh-relaxed); color:var(--fg-on-dark-1); }
.fai-pricingnote__mk{ color:var(--accent-hover); flex-shrink:0; }

/* ===================== FILE SURFACES (links to .json/.txt/llms) ===================== */
.fai-files{ display:grid; grid-template-columns:repeat(2,1fr); gap:var(--sp-3); }
@media(max-width:700px){ .fai-files{ grid-template-columns:1fr; } }
.fai-file{ display:flex; flex-direction:column; gap:var(--sp-2); padding:var(--sp-6); border-radius:var(--r-md);
  border:1px solid var(--border-on-dark); background:rgba(255,255,255,.02);
  transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base), background var(--dur-base); }
.fai-file:hover{ transform:translateY(-3px); border-color:rgba(var(--glow-rgb),.5); background:rgba(255,255,255,.04); }
.fai-file__top{ display:flex; align-items:center; justify-content:space-between; gap:var(--sp-3); }
.fai-file__name{ font-family:var(--font-mono); font-size:var(--fs-14); color:var(--accent-hover); }
.fai-file__reader{ font-family:var(--font-mono); font-size:9px; letter-spacing:.08em; text-transform:uppercase; color:var(--fg-on-dark-3);
  border:1px solid var(--border-on-dark); border-radius:var(--r-pill); padding:2px 8px; }
.fai-file__why{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-13); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); margin:0; }

/* ===================== BLOCK 6, CODA ===================== */
.fai-coda{ padding:var(--sp-20) 0; }
.fai-coda__contact{ display:flex; align-items:center; gap:var(--sp-4); flex-wrap:wrap; margin-top:var(--sp-10);
  padding-top:var(--sp-8); border-top:1px solid var(--border-on-dark); }
.fai-coda__k{ font-family:var(--font-heading); font-weight:600; font-size:10px; letter-spacing:var(--tracking-wider); text-transform:uppercase; color:var(--fg-on-dark-3); }
.fai-coda__contact a{ font-family:var(--font-mono); font-size:var(--fs-14); color:var(--accent-hover); }
.fai-coda__contact a:hover{ color:var(--fg-on-dark-1); }
.fai-coda__offramp{ margin-left:auto; }

/* parity statement */
.fai-parity{ display:flex; gap:var(--sp-4); padding:var(--sp-8); border-radius:var(--r-lg); border:1px solid var(--border-on-dark-strong);
  background:rgba(var(--glow-rgb),.05); margin-top:var(--sp-10); }
.fai-parity__mk{ color:var(--accent-hover); flex-shrink:0; }
.fai-parity__p{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-14); line-height:var(--lh-relaxed); color:var(--fg-on-dark-1); margin:0; max-width:80ch; }
.fai-parity__p b{ color:var(--accent-hover); font-weight:500; }
