/* ============================================================
   RealRacer.ai — Coach page components  (blue lane)
   The coaching engine: live transcript, the learn-loop,
   memory/plan, and "coaches every discipline" strip.
   ============================================================ */

/* ── hero: copy + live coaching transcript ── */
.coach-hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;
  padding:130px 32px 80px;position:relative;overflow:hidden}
.coach-hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:48px;align-items:center;
  max-width:1200px;margin:0 auto;width:100%;position:relative;z-index:2}
.coach-amb{position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(ellipse 52% 60% at 78% 44%,rgba(var(--accent-rgb),0.14),transparent 70%),
  linear-gradient(to bottom,transparent 58%,var(--bg) 98%)}
@media (max-width:900px){.coach-hero-grid{grid-template-columns:1fr;gap:34px}}

/* transcript card */
.transcript{background:linear-gradient(180deg,#0f1320,#0a0c14);border:1px solid var(--border-2);
  border-radius:14px;padding:22px 22px 18px;max-width:440px;
  box-shadow:0 30px 70px -34px rgba(0,0,0,0.85),0 0 0 1px rgba(var(--accent-rgb),0.06)}
.transcript-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;
  padding-bottom:14px;border-bottom:1px solid var(--border)}
.transcript-who{display:flex;align-items:center;gap:10px}
.transcript-av{width:32px;height:32px;border-radius:9px;background:rgba(var(--accent-rgb),0.14);
  border:1px solid rgba(var(--accent-rgb),0.4);display:flex;align-items:center;justify-content:center;
  font-family:var(--display);font-weight:800;font-size:13px;color:var(--accent)}
.transcript-name{font-family:var(--display);font-weight:700;font-size:14px;color:var(--text);line-height:1.1}
.transcript-name span{display:block;font-family:var(--label);font-size:8.5px;letter-spacing:0.14em;
  text-transform:uppercase;color:var(--accent);margin-top:3px}
.transcript-eq{display:flex;align-items:flex-end;gap:2.5px;height:16px}
.transcript-eq i{width:3px;border-radius:2px;background:var(--accent);animation:eq 1.1s ease-in-out infinite}
.transcript-eq i:nth-child(1){height:35%;animation-delay:0s}
.transcript-eq i:nth-child(2){height:80%;animation-delay:.15s}
.transcript-eq i:nth-child(3){height:55%;animation-delay:.3s}
.transcript-eq i:nth-child(4){height:95%;animation-delay:.45s}
.transcript-eq i:nth-child(5){height:45%;animation-delay:.6s}
.bubbles{display:flex;flex-direction:column;gap:10px}
.bubble{border-radius:12px;padding:11px 14px;font-size:13.5px;line-height:1.5;max-width:92%}
.bubble-coach{background:rgba(var(--accent-rgb),0.1);border:1px solid rgba(var(--accent-rgb),0.22);color:var(--text);align-self:flex-start;border-bottom-left-radius:4px}
.bubble-coach b{color:var(--accent);font-weight:700}
.bubble-you{background:var(--surface-2);border:1px solid var(--border);color:var(--muted);align-self:flex-end;border-bottom-right-radius:4px;font-family:var(--mono);font-size:12.5px}
.bubble-meta{font-family:var(--label);font-size:8.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--faint);margin:2px 4px}
.bubble-good{color:var(--green)}.bubble-bad{color:var(--red)}

/* ── learn loop ── */
.loop{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:56px;align-items:stretch}
.loop-step{position:relative;background:var(--surface);border:1px solid var(--border);padding:24px 20px;text-align:center}
.loop-step:not(:last-child){border-right:none}
.loop-step:first-child{border-radius:12px 0 0 12px}
.loop-step:last-child{border-radius:0 12px 12px 0}
.loop-num{font-family:var(--mono);font-weight:700;font-size:12px;color:var(--accent);margin-bottom:12px}
.loop-step h4{font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:-0.01em;color:var(--text);margin-bottom:8px}
.loop-step p{font-size:12.5px;color:var(--muted);line-height:1.55}
.loop-step::after{content:'→';position:absolute;right:-9px;top:50%;transform:translateY(-50%);
  color:var(--accent);font-size:15px;z-index:2;background:var(--bg);width:18px;height:18px;display:flex;align-items:center;justify-content:center}
.loop-step:last-child::after{content:'↻';right:auto;left:50%;bottom:-28px;top:auto;transform:translateX(-50%);
  border:1px solid rgba(var(--accent-rgb),0.4);border-radius:50%;width:30px;height:30px;background:var(--surface)}
@media (max-width:880px){
  .loop{grid-template-columns:1fr 1fr}
  .loop-step{border-radius:0!important;border-right:1px solid var(--border)!important}
  .loop-step::after{display:none}
}

/* ── capability cards (not data, direction) ── */
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cap-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px 26px;position:relative;overflow:hidden;transition:border-color .2s,transform .15s}
.cap-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.cap-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent)}
.cap-card .cap-ic{font-family:var(--mono);font-weight:700;font-size:13px;color:var(--accent);margin-bottom:16px}
.cap-card h3{font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-0.01em;color:var(--text);margin-bottom:10px}
.cap-card p{font-size:14px;color:var(--muted);line-height:1.6}
.cap-card p strong{color:var(--text)}
@media (max-width:880px){.cap-grid{grid-template-columns:1fr}}

/* ── data vs direction compare ── */
.vs-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}
.vs-card{border-radius:12px;padding:28px;border:1px solid var(--border)}
.vs-them{background:var(--surface);opacity:0.72}
.vs-us{background:radial-gradient(120% 100% at 50% 0%,rgba(var(--accent-rgb),0.08),var(--surface) 60%);border-color:rgba(var(--accent-rgb),0.4);border-top:2px solid var(--accent)}
.vs-label{font-family:var(--label);font-size:9px;letter-spacing:0.16em;text-transform:uppercase;margin-bottom:16px}
.vs-them .vs-label{color:var(--muted)}
.vs-us .vs-label{color:var(--accent)}
.vs-readout{font-family:var(--mono);font-weight:700;font-size:30px;color:var(--text);margin-bottom:6px;letter-spacing:-0.02em}
.vs-readout .red{color:var(--red)}
.vs-them .vs-sub{font-size:14px;color:var(--faint);line-height:1.6}
.vs-quote{font-family:var(--mono);font-size:15px;color:var(--text);line-height:1.6;margin-bottom:10px}
.vs-quote .blue{color:var(--accent)}
.vs-us .vs-sub{font-size:13px;color:var(--muted);line-height:1.6}
@media (max-width:768px){.vs-grid{grid-template-columns:1fr}}

/* ── coaches every discipline strip ── */
.coaches-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:48px}
.c3{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;text-align:left}
.c3 .c3-lane{font-family:var(--label);font-size:9px;letter-spacing:0.16em;text-transform:uppercase;margin-bottom:12px}
.c3.sim .c3-lane{color:var(--orange)}.c3.trk .c3-lane{color:var(--green)}.c3.drf .c3-lane{color:var(--purple)}
.c3 h4{font-family:var(--display);font-weight:700;font-size:17px;color:var(--text);margin-bottom:10px;letter-spacing:-0.01em}
.c3 .c3-say{font-family:var(--mono);font-size:12.5px;color:var(--muted);line-height:1.55;border-left:2px solid var(--accent);padding-left:12px}
@media (max-width:880px){.coaches-3{grid-template-columns:1fr}}

/* ── memory / plan board ── */
.plan-board{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:28px}
.plan-col h4{font-family:var(--label);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.plan-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--border)}
.plan-item:last-child{border-bottom:none}
.plan-corner{font-family:var(--mono);font-size:13px;color:var(--text)}
.plan-corner span{display:block;font-family:var(--body);font-size:11.5px;color:var(--faint);margin-top:2px}
.plan-gain{font-family:var(--mono);font-weight:700;font-size:14px;font-variant-numeric:tabular-nums}
.plan-gain.fixed{color:var(--green)}.plan-gain.work{color:var(--amber)}
.plan-goal{display:flex;flex-direction:column;gap:14px}
.goal{background:#0b0d14;border:1px solid var(--border);border-radius:10px;padding:14px 16px}
.goal-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.goal-name{font-size:13px;color:var(--text);font-weight:600}
.goal-pct{font-family:var(--mono);font-weight:700;font-size:13px;color:var(--accent)}
.goal-bar{height:5px;border-radius:3px;background:var(--border-2);overflow:hidden}
.goal-bar i{display:block;height:100%;border-radius:3px;background:var(--accent)}
@media (max-width:768px){.plan-board{grid-template-columns:1fr;gap:24px}}
