/* ft-teacher.css — Teacher Research Initiative page
   Extends style.css design tokens (colors, fonts, .btn, .section, .feature-card, .form-control, etc.) */

/* ── Nav fix ──────────────────────────────────────────────────── */
.nav-dashboard-btn{white-space:nowrap}

/* ── Small helpers ────────────────────────────────────────────── */
.tr-badge{display:inline-block;padding:7px 18px;background:rgba(70,213,249,0.12);border:1px solid rgba(70,213,249,0.26);border-radius:999px;font-size:11px;color:var(--cyan-light);margin-bottom:22px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.tr-note{font-size:12px;color:var(--muted);line-height:1.7;max-width:640px;margin:18px auto 0}
.tr-note.left{margin-left:0}

/* ── Hero ─────────────────────────────────────────────────────── */
.tr-hero{display:block;min-height:auto;padding:150px 24px 80px;max-width:900px;margin:0 auto;text-align:center;position:relative}
.tr-hero h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(30px,5.5vw,54px);font-weight:800;line-height:1.15;margin-bottom:22px;color:#fff}
.tr-hero-desc{font-size:16px;color:var(--muted);line-height:1.75;max-width:640px;margin:0 auto 14px}
.tr-hero-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:34px}

/* ── Phase 2 card ─────────────────────────────────────────────── */
.tr-phase-card{max-width:780px;margin:0 auto;background:linear-gradient(145deg,rgba(16,29,51,.98),rgba(12,22,40,.92));border:1px solid rgba(70,213,249,0.22);border-radius:26px;padding:44px 48px;box-shadow:var(--shadow-cyan);text-align:center}
.tr-phase-tag{display:inline-block;padding:5px 16px;background:rgba(70,213,249,0.14);border:1px solid rgba(70,213,249,0.3);border-radius:999px;font-size:11px;color:var(--cyan-light);font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:22px}
.tr-phase-stats{display:flex;justify-content:center;gap:0;flex-wrap:wrap;margin-bottom:26px}
.tr-phase-stat{flex:1;min-width:120px;padding:0 16px}
.tr-phase-stat .stat-num,.tr-phase-stat .tr-phase-static{display:block;font-family:'Space Grotesk',sans-serif;font-size:clamp(30px,5vw,44px);font-weight:800;color:var(--cyan)}
.tr-phase-stat small{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}
.tr-phase-text{font-size:14px;color:var(--muted);line-height:1.8;max-width:600px;margin:0 auto 10px}

/* ── Global stat ──────────────────────────────────────────────── */
.tr-globe-wrap{display:grid;grid-template-columns:auto 1fr;gap:52px;align-items:center;background:linear-gradient(145deg,rgba(16,29,51,.98),rgba(12,22,40,.92));border:1px solid rgba(168,237,252,.10);border-radius:26px;padding:48px 52px;box-shadow:var(--shadow)}
.tr-globe-num{font-family:'Space Grotesk',sans-serif;font-size:clamp(56px,9vw,96px);font-weight:800;color:var(--cyan);line-height:1;text-align:center}
.tr-globe-num small{display:block;font-family:'Inter',sans-serif;font-size:14px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-top:8px}
.tr-globe-ring{position:relative;width:170px;height:170px;border-radius:50%;border:1px dashed rgba(70,213,249,.35);display:flex;align-items:center;justify-content:center;margin:0 auto}
.tr-globe-ring::before{content:'';position:absolute;inset:14px;border-radius:50%;border:1px solid rgba(70,213,249,.18)}
.tr-globe-text p{font-size:15px;color:var(--muted);line-height:1.8}

/* ── Research intro list ──────────────────────────────────────── */
.tr-pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:32px}
.tr-pillar{background:rgba(70,213,249,0.07);border:1px solid rgba(70,213,249,0.16);border-radius:14px;padding:16px 18px;font-size:13px;color:var(--cyan-light);font-weight:600;display:flex;align-items:center;gap:10px}
.tr-pillar i{color:var(--cyan);font-size:16px}
.tr-quote{font-family:'Space Grotesk',sans-serif;font-size:clamp(20px,3vw,28px);color:#fff;text-align:center;max-width:720px;margin:36px auto;line-height:1.4;padding:22px 28px;border-left:3px solid var(--cyan);border-right:3px solid var(--cyan);background:rgba(70,213,249,0.05);border-radius:14px}

/* ── Flow diagram ─────────────────────────────────────────────── */
.tr-flow{display:flex;flex-direction:column;align-items:center;gap:0;max-width:480px;margin:0 auto 8px}
.tr-flow-step{width:100%;text-align:center;padding:16px 20px;border-radius:14px;font-size:14px;font-weight:700;border:1px solid var(--border)}
.tr-flow-step.dim{color:var(--muted);background:var(--bg3)}
.tr-flow-step.brand{color:#000;background:linear-gradient(135deg,var(--cyan),var(--cyan2));border:none;box-shadow:0 8px 24px rgba(70,213,249,.25)}
.tr-flow-step.bright{color:var(--cyan-light);background:rgba(70,213,249,0.10);border-color:rgba(70,213,249,0.3)}
.tr-flow-arrow{color:var(--cyan);font-size:20px;line-height:1;margin:4px 0}
.tr-flow-msg{text-align:center;font-family:'Space Grotesk',sans-serif;font-size:clamp(22px,3.2vw,32px);color:#fff;margin:36px 0 14px}

/* ── Icon check grid (why teachers / benefits) ───────────────── */
.tr-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.tr-check-card{background:linear-gradient(145deg,rgba(16,29,51,.98),rgba(12,22,40,.92));border:1px solid rgba(168,237,252,.10);border-radius:16px;padding:20px 22px;display:flex;gap:14px;align-items:flex-start;transition:all .3s}
.tr-check-card:hover{border-color:rgba(70,213,249,0.3);transform:translateY(-3px)}
.tr-check-card i{color:var(--cyan);font-size:18px;margin-top:2px;flex-shrink:0}
.tr-check-card span{font-size:13px;color:var(--text);line-height:1.6}

/* ── Question protection flow ─────────────────────────────────── */
.tr-protect-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.tr-protect-flow{display:flex;flex-direction:column;gap:0;align-items:stretch}
.tr-protect-node{background:var(--bg3);border:1px solid var(--border);border-radius:12px;padding:14px 18px;font-size:13px;font-weight:700;color:var(--text);text-align:center}
.tr-protect-node.accent{background:rgba(70,213,249,0.10);border-color:rgba(70,213,249,0.3);color:var(--cyan-light)}
.tr-protect-arrow{text-align:center;color:var(--cyan);font-size:16px;padding:4px 0}
.tr-protect-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}

/* ── Qualification badge ──────────────────────────────────────── */
.tr-qual-badge{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,var(--cyan),var(--cyan2));color:#000;font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:22px;padding:14px 30px;border-radius:16px;box-shadow:0 8px 24px rgba(70,213,249,.28);margin-bottom:24px}
.tr-req-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;max-width:820px;margin:0 auto}
.tr-req-list li{font-size:13px;color:var(--text);padding:10px 14px;background:var(--bg3);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;gap:8px}
.tr-req-list li::before{content:'\2713';color:var(--cyan);font-weight:800}

/* ── Level / subject pill clouds ─────────────────────────────── */
.tr-pill-cloud{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:900px;margin:0 auto}
.tr-pill{font-size:13px;font-weight:700;padding:9px 18px;border-radius:999px;background:rgba(70,213,249,0.08);border:1px solid rgba(70,213,249,0.2);color:var(--cyan-light)}
.tr-pill.alt{background:rgba(139,92,246,0.08);border-color:rgba(139,92,246,0.18);color:#c9b3fb}

/* ── Generic two-column card (mode / roles / comparisons) ──────── */
.tr-two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tr-two-col-card{background:linear-gradient(145deg,rgba(16,29,51,.98),rgba(12,22,40,.92));border:1px solid rgba(168,237,252,.10);border-radius:20px;padding:30px}
.tr-two-col-card h3{font-family:'Space Grotesk',sans-serif;font-size:19px;color:#fff;margin-bottom:14px;display:flex;align-items:center;gap:10px}
.tr-two-col-card h3 i{color:var(--cyan)}
.tr-two-col-card ul{list-style:none}
.tr-two-col-card ul li{font-size:13px;color:var(--muted);padding:7px 0;border-bottom:1px solid var(--border)}
.tr-two-col-card ul li:last-child{border-bottom:none}
.tr-mode-plus{text-align:center;margin-top:24px;font-size:13px;color:var(--cyan);font-weight:700}

/* ── Contributor badge ───────────────────────────────────────── */
.tr-contrib-badge{max-width:320px;margin:0 auto;background:linear-gradient(145deg,rgba(16,29,51,.98),rgba(12,22,40,.92));border:1px solid rgba(70,213,249,0.3);border-radius:20px;padding:36px 30px;text-align:center;box-shadow:var(--shadow-cyan)}
.tr-contrib-badge .tr-logo{font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:20px;color:var(--cyan);letter-spacing:.05em;margin-bottom:14px}
.tr-contrib-badge .tr-role{font-size:22px;color:#fff;font-weight:700;font-family:'Space Grotesk',sans-serif;margin-bottom:8px}
.tr-contrib-badge .tr-sub{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}

/* ── Apply CTA card ───────────────────────────────────────────── */
.tr-apply-card{background:linear-gradient(145deg,rgba(16,29,51,.98),rgba(12,22,40,.92));border:1px solid rgba(70,213,249,0.18);border-radius:26px;padding:48px;box-shadow:var(--shadow-cyan);max-width:640px;margin:0 auto;text-align:center}
.tr-apply-card-icon{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,rgba(70,213,249,.18),rgba(59,130,246,.10));border:1px solid rgba(168,237,252,.16);color:var(--cyan);display:flex;align-items:center;justify-content:center;font-size:26px;margin:0 auto 18px}
.tr-apply-card h3{font-family:'Space Grotesk',sans-serif;font-size:19px;color:#fff;margin-bottom:18px}
.tr-apply-card .tr-req-list{grid-template-columns:1fr 1fr;text-align:left;max-width:100%}
.btn-apply-lg{padding:16px 36px;font-size:15px}
.tr-disclaimer{font-size:12px;color:var(--muted);line-height:1.7;max-width:720px;margin:28px auto 0;text-align:center;padding:16px 20px;background:var(--bg3);border:1px solid var(--border);border-radius:12px}

/* ── FAQ accordion ────────────────────────────────────────────── */
.tr-faq{max-width:760px;margin:0 auto}
.tr-faq-item{border:1px solid var(--border);border-radius:14px;margin-bottom:10px;overflow:hidden;background:var(--bg3)}
.tr-faq-q{width:100%;text-align:left;background:none;border:none;padding:18px 22px;color:#fff;font-family:'Inter',sans-serif;font-size:14px;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px}
.tr-faq-q .tr-faq-icon{color:var(--cyan);transition:transform .25s;flex-shrink:0}
.tr-faq-item.open .tr-faq-icon{transform:rotate(45deg)}
.tr-faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.tr-faq-a p{padding:0 22px 18px;font-size:13px;color:var(--muted);line-height:1.7}
.tr-faq-q:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}

/* ── Final CTA ────────────────────────────────────────────────── */
.tr-final{text-align:center}
.tr-final-btns{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:28px}

/* ── Floating Apply CTA ───────────────────────────────────────── */
.tr-float-apply{position:fixed;right:24px;bottom:24px;z-index:200;display:inline-flex;align-items:center;gap:9px;padding:15px 26px;border-radius:999px;background:linear-gradient(135deg,var(--cyan),var(--cyan2));color:#06131b;font-family:'Inter',sans-serif;font-weight:800;font-size:14px;text-decoration:none;box-shadow:0 14px 36px rgba(70,213,249,.35);opacity:0;transform:translateY(16px) scale(.95);pointer-events:none;transition:opacity .3s,transform .3s}
.tr-float-apply.show{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.tr-float-apply i{font-size:17px}
.tr-float-apply:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 18px 44px rgba(70,213,249,.45);color:#06131b}

/* ── Responsive ───────────────────────────────────────────────── */
@media(max-width:1024px){
.tr-globe-wrap{grid-template-columns:1fr;text-align:center;padding:36px 28px}
.tr-protect-grid{grid-template-columns:1fr;gap:28px}
}
@media(max-width:900px){
.tr-two-col-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
.tr-hero{padding:120px 20px 60px}
.tr-apply-card{padding:32px 22px}
.tr-apply-card .tr-req-list{grid-template-columns:1fr}
.tr-qual-badge{font-size:17px;padding:12px 20px}
.tr-phase-card{padding:32px 22px}
.tr-phase-stats{gap:12px}
.tr-float-apply{left:16px;right:16px;bottom:16px;justify-content:center;padding:14px 20px;font-size:13px}
.tr-float-apply span{white-space:nowrap}
}
