:root{
  --fh-bg:#07101d;
  --fh-panel:#0d1726;
  --fh-panel-2:#111f32;
  --fh-ink:#f7fbff;
  --fh-muted:#b9c5d8;
  --fh-line:rgba(255,255,255,.14);
  --fh-gold:#f6c45c;
  --fh-blue:#61a8ff;
  --fh-green:#6ee7b7;
  --fh-red:#fb7185;
}
.field-handbook-page{background:var(--fh-bg);color:var(--fh-ink);}
.fh-container{width:min(1180px,calc(100% - 32px));margin:0 auto;}
.fh-hero{position:relative;overflow:hidden;padding:72px 0 48px;background:radial-gradient(circle at 15% 20%,rgba(97,168,255,.22),transparent 34%),linear-gradient(135deg,#06101e 0%,#0d1829 55%,#152235 100%);border-bottom:1px solid var(--fh-line);}
.fh-hero:after{content:"";position:absolute;inset:auto -10% -50% 35%;height:420px;background:radial-gradient(circle,rgba(246,196,92,.16),transparent 65%);pointer-events:none;}
.fh-hero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:28px;align-items:center;position:relative;z-index:1;}
.fh-subhero{position:relative;overflow:hidden;padding:48px 0 34px;background:radial-gradient(circle at 18% 20%,rgba(97,168,255,.18),transparent 34%),linear-gradient(135deg,#06101e 0%,#0d1829 65%,#132239 100%);border-bottom:1px solid var(--fh-line);}
.fh-kicker{margin:0 0 10px;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:900;color:var(--fh-gold);}
.fh-hero h1,.fh-subhero h1{font-size:clamp(2.55rem,6vw,5.2rem);line-height:.96;margin:0 0 18px;letter-spacing:-.06em;color:#fff;}
.fh-subhero h1{font-size:clamp(2.2rem,5vw,4.4rem);max-width:980px;}
.fh-lead{font-size:clamp(1.05rem,2vw,1.32rem);line-height:1.55;color:var(--fh-muted);max-width:820px;margin:0;}
.fh-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
.fh-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;font-weight:900;text-decoration:none;border:1px solid var(--fh-line);transition:transform .16s ease,border-color .16s ease,background .16s ease;}
.fh-button:hover{transform:translateY(-1px);text-decoration:none;}
.fh-button--primary{background:linear-gradient(135deg,#f6c45c,#ffe6a3);color:#111827;border-color:rgba(255,255,255,.18);}
.fh-button--secondary{background:rgba(255,255,255,.07);color:#fff;}
.fh-note-card{background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.055));border:1px solid var(--fh-line);border-radius:24px;padding:24px;box-shadow:0 24px 60px rgba(0,0,0,.25);}
.fh-note-card__eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;color:var(--fh-green);font-weight:900;margin:0 0 10px;}
.fh-note-card h2,.fh-note-card h3{color:#fff;margin:0 0 10px;font-size:1.55rem;}
.fh-note-card p{color:var(--fh-muted);margin:0 0 16px;line-height:1.55;}
.fh-intro-grid,.fh-methodology{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:42px 0 16px;}
.fh-methodology{align-items:stretch;padding-top:22px;}
.fh-panel{background:#f8fafc;color:#132033;border-radius:24px;padding:26px;border:1px solid rgba(15,23,42,.1);box-shadow:0 18px 46px rgba(0,0,0,.18);}
.fh-panel h2,.fh-methodology h2{margin:0 0 10px;color:#0f172a;}
.fh-panel p:last-child,.fh-methodology p{color:#46556b;line-height:1.65;}
.fh-panel--dark{background:linear-gradient(180deg,var(--fh-panel),var(--fh-panel-2));color:#fff;border-color:var(--fh-line);}
.fh-panel--dark h2{color:#fff;}.fh-panel--dark p:last-child{color:var(--fh-muted);}
.fh-methodology{background:#f8fafc;color:#132033;border-radius:28px;padding:30px;margin-top:28px;box-shadow:0 20px 50px rgba(0,0,0,.18);}
.fh-categories,.fh-directory{padding:38px 0 22px;}
.fh-section-head{max-width:860px;margin-bottom:22px;}
.fh-section-head h2{font-size:clamp(1.9rem,4vw,3rem);margin:0 0 12px;color:#fff;letter-spacing:-.04em;}
.fh-section-head p{color:var(--fh-muted);line-height:1.6;}
.fh-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;}
.fh-category-card{border:1px solid var(--fh-line);border-radius:22px;padding:20px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045));box-shadow:0 18px 44px rgba(0,0,0,.18);}
.fh-category-card h3{color:#fff;margin:0 0 8px;font-size:1.15rem;}.fh-category-card p{color:var(--fh-muted);line-height:1.5;}
.fh-search-wrap{margin-top:22px;max-width:760px;display:grid;gap:8px;}
.fh-search-label{font-weight:950;color:#fff;letter-spacing:.01em;}
.fh-search{width:100%;min-height:54px;border-radius:18px;border:1px solid var(--fh-line);background:rgba(255,255,255,.08);color:#fff;padding:0 18px;font:inherit;font-weight:850;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);}
.fh-search::placeholder{color:rgba(247,251,255,.58);font-weight:700;}
.fh-search:focus{outline:3px solid rgba(97,168,255,.25);border-color:rgba(97,168,255,.7);background:rgba(255,255,255,.11);}
.fh-search-status{margin:0;color:var(--fh-muted);font-size:.92rem;}
.fh-directory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:16px;padding-bottom:54px;}
.fh-directory-card{display:flex;flex-direction:column;gap:8px;min-height:220px;padding:18px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.05));border:1px solid var(--fh-line);text-decoration:none;color:#fff;box-shadow:0 18px 44px rgba(0,0,0,.2);transition:transform .16s ease,border-color .16s ease,background .16s ease;}
.fh-directory-card:hover{transform:translateY(-2px);border-color:rgba(246,196,92,.55);text-decoration:none;}
.fh-directory-card small{color:var(--fh-gold);font-weight:900;text-transform:uppercase;letter-spacing:.08em;}.fh-directory-card p{color:var(--fh-muted);line-height:1.45;margin:0;font-size:.94rem;}.fh-page-num{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;background:rgba(246,196,92,.12);border:1px solid rgba(246,196,92,.36);color:#ffe1a1;font-weight:950;}
.fh-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:18px;color:var(--fh-muted);font-weight:800;font-size:.92rem;}.fh-breadcrumb a{color:#fff;text-decoration:none}.fh-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px;}
.fh-page-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start;padding:36px 0 64px;}
.fh-sidebar{position:sticky;top:18px;display:grid;gap:12px;}.fh-side-card,.fh-side-link{border:1px solid var(--fh-line);border-radius:18px;padding:16px;background:rgba(255,255,255,.06);color:#fff;text-decoration:none;}.fh-side-card strong{display:block;line-height:1.35;}.fh-side-link{font-weight:900;}.fh-side-link:hover{border-color:rgba(246,196,92,.55);text-decoration:none;}
.fh-article{display:grid;gap:18px;}.fh-content-section,.fh-source-note,.fh-related-card{background:#f8fafc;color:#142033;border-radius:22px;padding:24px;border:1px solid rgba(15,23,42,.1);box-shadow:0 18px 46px rgba(0,0,0,.15);}.fh-content-section h2,.fh-source-note h2,.fh-related-card h2{color:#0f172a;margin:0 0 12px;font-size:1.6rem;letter-spacing:-.02em;}.fh-content-section p,.fh-source-note p,.fh-content-section li,.fh-related-card li{color:#46556b;line-height:1.72;}.fh-content-section strong{color:#111827;}.fh-content-section--safety{background:linear-gradient(180deg,#fff7ed,#fff1f2);border-color:rgba(251,113,133,.25);}.fh-content-section--safety h2{color:#9f1239;}
.fh-related-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}.fh-related-card ul{margin:0;padding-left:20px;}.fh-related-card a{color:#0f3d73;font-weight:900;text-decoration:underline;text-underline-offset:4px;}
.fh-source-note{background:#ecfeff;border-color:rgba(8,145,178,.2);}.fh-source-note h2{color:#0e7490;}
.fh-pager{display:grid;grid-template-columns:1fr 1fr;gap:14px;}.fh-pager__link{display:block;border:1px solid var(--fh-line);border-radius:20px;padding:18px;background:rgba(255,255,255,.07);color:#fff;text-decoration:none;}.fh-pager__link span{display:block;color:var(--fh-muted);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:900;margin-bottom:6px;}.fh-pager__link strong{display:block;}.fh-pager__link--next{text-align:right;}.fh-pager__link:hover{border-color:rgba(246,196,92,.55);text-decoration:none;}
@media(max-width:900px){.fh-hero__grid,.fh-intro-grid,.fh-methodology,.fh-page-grid,.fh-related-grid{grid-template-columns:1fr}.fh-sidebar{position:relative;top:auto;}.fh-hero{padding-top:48px}.fh-subhero{padding-top:34px}}
@media(max-width:560px){.fh-container{width:min(100% - 24px,1180px)}.fh-directory-grid{grid-template-columns:1fr}.fh-hero h1,.fh-subhero h1{letter-spacing:-.045em}.fh-pager{grid-template-columns:1fr}.fh-pager__link--next{text-align:left}.fh-content-section,.fh-source-note,.fh-related-card{padding:20px}.fh-methodology{padding:22px}}

.fh-content-section--takeaway{
  background:linear-gradient(180deg,#f0fdfa,#ecfeff);
  border-color:rgba(20,184,166,.28);
}
.fh-content-section--takeaway h2{color:#0f766e;}
.fh-content-section--takeaway p{font-size:1.08rem;color:#274356;}
.fh-content-section--safety h2::before{content:"⚠ ";}

/* Sourcebook bridge card added after MVP deployment */
.fh-sourcebook-bridge{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);
  gap:22px;
  align-items:center;
  margin-top:34px;
  padding:22px;
  border:1px solid rgba(246,196,92,.28);
  border-radius:30px;
  background:
    radial-gradient(circle at 12% 18%,rgba(246,196,92,.18),transparent 28%),
    linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.045));
  box-shadow:0 24px 70px rgba(0,0,0,.28);
  overflow:hidden;
}
.fh-sourcebook-bridge:before{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  pointer-events:none;
}
.fh-sourcebook-bridge__text{position:relative;z-index:1;padding:10px 4px 10px 10px;}
.fh-sourcebook-bridge h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1;margin:0 0 12px;color:#fff;letter-spacing:-.045em;}
.fh-sourcebook-bridge p{color:var(--fh-muted);line-height:1.62;margin:0 0 12px;}
.fh-sourcebook-bridge__quote{font-weight:950;color:#fef3c7 !important;font-size:1.15rem;}
.fh-sourcebook-bridge__plate{display:block;position:relative;z-index:1;background:#fffdf7;border:1px solid rgba(255,255,255,.32);border-radius:22px;padding:10px;box-shadow:0 22px 60px rgba(0,0,0,.30);transform:rotate(.35deg);transition:transform .16s ease,box-shadow .16s ease;}
.fh-sourcebook-bridge__plate:hover{transform:translateY(-2px) rotate(0deg);box-shadow:0 28px 76px rgba(0,0,0,.36);}
.fh-sourcebook-bridge__plate img{display:block;width:100%;height:auto;border-radius:14px;}
@media(max-width:900px){.fh-sourcebook-bridge{grid-template-columns:1fr;padding:18px}.fh-sourcebook-bridge__plate{transform:none}.fh-sourcebook-bridge__text{padding:4px}}


/* Methodology child pages + calculator bridge patch */
.fh-doctrine-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:14px;
  margin-top:18px;
}
.fh-doctrine-card{
  display:block;
  min-height:170px;
  padding:18px;
  border-radius:20px;
  border:1px solid rgba(15,23,42,.10);
  background:
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.92));
  color:#142033;
  text-decoration:none;
  box-shadow:0 14px 34px rgba(15,23,42,.10);
  position:relative;
  overflow:hidden;
}
.fh-doctrine-card:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,#f6c45c,#61a8ff,#20c997);
  opacity:.9;
}
.fh-doctrine-card:hover{transform:translateY(-1px);text-decoration:none;border-color:rgba(97,168,255,.38);}
.fh-doctrine-card h3{margin:0 0 8px;color:#0f172a;font-size:1.22rem;letter-spacing:-.02em;}
.fh-doctrine-card p{margin:0 0 8px;color:#46556b;line-height:1.52;}
.fh-doctrine-card .fh-kicker{color:#9a6a08;}
.fh-card-note{font-size:.9rem;font-weight:800;color:#64748b !important;}
.fh-side-link--active{border-color:rgba(246,196,92,.65);background:rgba(246,196,92,.13);}
.fh-calculator-bridge{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);
  gap:22px;
  align-items:center;
  margin-top:34px;
  padding:28px;
  border-radius:30px;
  border:1px solid rgba(97,168,255,.28);
  background:
    radial-gradient(circle at 14% 18%,rgba(97,168,255,.18),transparent 30%),
    linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.045));
  box-shadow:0 24px 70px rgba(0,0,0,.24);
}
.fh-calculator-bridge h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1;margin:0 0 12px;color:#fff;letter-spacing:-.045em;}
.fh-calculator-bridge p{color:var(--fh-muted);line-height:1.62;margin:0 0 12px;}
@media(max-width:900px){.fh-calculator-bridge{grid-template-columns:1fr;padding:20px}.fh-doctrine-grid{grid-template-columns:1fr}}


/* v11 Navigation / Discovery / Cross-Linking Upgrade */
.fh-command-center,
.fh-role-paths,
.fh-discovery-strip {
  margin-top: clamp(1.5rem, 3vw, 3rem);
}
.fh-command-grid,
.fh-path-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem;
}
.fh-command-card,
.fh-path-card,
.fh-journey-item {
  position: relative;
  display: block;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 22px;
  padding: 1rem;
  background:
    linear-gradient(145deg, rgba(255,255,255,.11), rgba(255,255,255,.04)),
    rgba(13, 21, 32, .78);
  color: inherit;
  box-shadow: 0 18px 46px rgba(0,0,0,.22);
  overflow: hidden;
}
.fh-command-card::before,
.fh-path-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(90deg, rgba(245,178,85,.95), rgba(103,196,255,.65));
}
.fh-command-card span,
.fh-journey-item strong {
  display: inline-block;
  color: #f5b255;
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: .35rem;
}
.fh-command-card h3,
.fh-path-card h3 {
  margin: .2rem 0 .55rem;
}
.fh-command-card p,
.fh-path-card p,
.fh-journey-item span {
  color: rgba(255,255,255,.78);
}
.fh-path-card a {
  display: inline-block;
  margin-top: .5rem;
  color: #f5b255;
  font-weight: 700;
}
.fh-journey-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: .75rem;
  margin-top: 1rem;
}
.fh-journey-strip--compact {
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}
.fh-journey-item {
  padding: .85rem;
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(245,178,85,.13), rgba(255,255,255,.04));
}
.fh-journey-item:hover,
.fh-command-card:hover,
.fh-path-card:hover {
  transform: translateY(-2px);
  border-color: rgba(245,178,85,.45);
}
@media (prefers-reduced-motion: no-preference) {
  .fh-journey-item,
  .fh-command-card,
  .fh-path-card { transition: transform .18s ease, border-color .18s ease; }
}
@media (max-width: 720px) {
  .fh-command-card,
  .fh-path-card,
  .fh-journey-item { border-radius: 18px; }
}


/* Glossary v21 */
.fh-term-panel{margin-top:clamp(18px,3vw,34px);margin-bottom:clamp(18px,3vw,34px);padding:clamp(18px,3vw,28px);border:1px solid rgba(14,165,233,.28);border-radius:24px;background:linear-gradient(135deg,rgba(2,6,23,.92),rgba(15,23,42,.86));box-shadow:0 18px 44px rgba(2,6,23,.22);color:#e5f4ff;display:grid;grid-template-columns:minmax(220px,.8fr) 1.4fr;gap:20px;align-items:start}.fh-term-panel h2{margin:.1rem 0 .35rem;color:#fff}.fh-term-panel p{margin:0;color:#cbd5e1}.fh-term-panel .fh-kicker{color:#fbbf24}.fh-term-panel__chips{display:flex;flex-wrap:wrap;gap:10px}.fh-term-chip{display:inline-flex;align-items:center;gap:.35rem;padding:9px 12px;border-radius:999px;background:rgba(14,165,233,.12);border:1px solid rgba(125,211,252,.3);color:#e0f2fe;text-decoration:none;font-weight:800;font-size:.92rem;transition:transform .16s ease,background .16s ease,border-color .16s ease}.fh-term-chip:hover{transform:translateY(-1px);background:rgba(250,204,21,.16);border-color:rgba(250,204,21,.55);color:#fff}.fh-term-chip--all{background:rgba(250,204,21,.14);border-color:rgba(250,204,21,.5);color:#fff7cc}.fh-glossary-page .fh-subhero{background:radial-gradient(circle at top left,rgba(14,165,233,.22),transparent 40%),linear-gradient(135deg,#020617,#0f172a 62%,#111827)}.fh-glossary-intro{margin-top:28px}.fh-glossary-search{margin:20px 0;display:grid;gap:8px}.fh-glossary-search label{font-weight:900;color:#0f172a}.fh-glossary-search input{width:100%;padding:14px 16px;border-radius:16px;border:1px solid rgba(15,23,42,.18);box-shadow:0 12px 30px rgba(15,23,42,.08);font-size:1rem}.fh-glossary-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.fh-glossary-nav a{padding:9px 12px;border-radius:999px;background:#f1f5f9;color:#0f172a;text-decoration:none;font-weight:800}.fh-glossary-section{scroll-margin-top:90px;margin:clamp(26px,4vw,46px) 0}.fh-glossary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.fh-glossary-entry{scroll-margin-top:90px;border:1px solid rgba(15,23,42,.12);border-radius:20px;background:#fff;box-shadow:0 14px 36px rgba(15,23,42,.08);padding:18px}.fh-glossary-entry__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.fh-glossary-entry h3{margin:0;color:#0f172a}.fh-glossary-entry dl{margin:0;display:grid;gap:10px}.fh-glossary-entry dt{font-weight:900;color:#0f172a}.fh-glossary-entry dd{margin:2px 0 0;color:#334155;line-height:1.55}.fh-return-button{border:0;border-radius:999px;background:#0f172a;color:#fff;padding:8px 10px;font-weight:900;cursor:pointer;white-space:nowrap}.fh-return-button:hover{background:#0369a1}.fh-glossary-entry:target{outline:3px solid rgba(250,204,21,.75);box-shadow:0 0 0 8px rgba(250,204,21,.18),0 14px 36px rgba(15,23,42,.12)}@media(max-width:760px){.fh-term-panel{grid-template-columns:1fr}.fh-glossary-entry__head{display:block}.fh-return-button{margin-top:10px}}

/* v22 Terminology Panel personality upgrade */
.fh-term-panel{position:relative;overflow:hidden;border-color:rgba(34,211,238,.45)!important;background:radial-gradient(circle at 28px 24px,rgba(34,211,238,.25),transparent 22%),linear-gradient(135deg,#02111f 0%,#082f49 52%,#0f172a 100%)!important;box-shadow:0 18px 46px rgba(2,132,199,.25),inset 0 0 0 1px rgba(255,255,255,.04)!important}
.fh-term-panel::before{content:"TERM";position:absolute;right:-20px;top:18px;transform:rotate(14deg);font-size:clamp(2.4rem,6vw,5.2rem);font-weight:1000;letter-spacing:.08em;color:rgba(125,211,252,.08);pointer-events:none}
.fh-term-panel .fh-kicker{display:inline-flex;align-items:center;gap:.5rem;color:#67e8f9!important;background:rgba(8,145,178,.18);border:1px solid rgba(103,232,249,.32);border-radius:999px;padding:5px 10px;width:max-content}
.fh-term-panel .fh-kicker::before{content:"◇";color:#facc15;font-size:1rem}
.fh-term-panel h2{letter-spacing:-.02em}
.fh-term-chip{box-shadow:0 8px 18px rgba(14,165,233,.12)}
.fh-term-chip::before{content:"#";opacity:.75;color:#67e8f9}
.fh-term-chip--all::before{content:"↗";color:#facc15}


/* v26 Field Handbook Card Personality System
   Keep the white-card professionalism, but give each card type a recognizable field identity. */
:root{
  --fh-personality-terminology:#22d3ee;
  --fh-personality-takeaway:#f59e0b;
  --fh-personality-safety:#ef4444;
  --fh-personality-action:#22c55e;
  --fh-personality-ghost:#a78bfa;
  --fh-personality-reverse:#f97316;
  --fh-personality-hmmmaai:#38bdf8;
  --fh-personality-qc:#14b8a6;
  --fh-personality-recipe:#84cc16;
  --fh-personality-calculator:#60a5fa;
  --fh-personality-sourcebook:#94a3b8;
}
.fh-card-personality-ready .tf-section,
.fh-card-personality-ready .tf-card,
.fh-card-personality-ready .tf-step,
.fh-card-personality-ready .tf-note,
.fh-card-personality-ready .fh-content-section,
.fh-card-personality-ready .fh-related-card,
.fh-card-personality-ready .fh-source-note,
.fh-card-personality-ready .fh-doctrine-card,
.fh-card-personality-ready .fh-command-card,
.fh-card-personality-ready .fh-path-card,
.fh-card-personality-ready .fh-panel,
.fh-card-personality-ready .fh-note-card{
  position:relative;
  overflow:hidden;
}
.fh-card-personality-ready .tf-section::before,
.fh-card-personality-ready .tf-card::before,
.fh-card-personality-ready .tf-step::before,
.fh-card-personality-ready .tf-note::before,
.fh-card-personality-ready .fh-content-section::before,
.fh-card-personality-ready .fh-related-card::before,
.fh-card-personality-ready .fh-source-note::before,
.fh-card-personality-ready .fh-doctrine-card::before,
.fh-card-personality-ready .fh-command-card::after,
.fh-card-personality-ready .fh-path-card::after,
.fh-card-personality-ready .fh-panel::before,
.fh-card-personality-ready .fh-note-card::before{
  pointer-events:none;
}
.fh-card--takeaway{--fh-card-accent:var(--fh-personality-takeaway);--fh-card-label:"WALT";--fh-card-icon:"✦";}
.fh-card--safety{--fh-card-accent:var(--fh-personality-safety);--fh-card-label:"STOP";--fh-card-icon:"⚠";}
.fh-card--action{--fh-card-accent:var(--fh-personality-action);--fh-card-label:"ACTION";--fh-card-icon:"✓";}
.fh-card--ghost{--fh-card-accent:var(--fh-personality-ghost);--fh-card-label:"GHOST";--fh-card-icon:"◇";}
.fh-card--reverse-trace{--fh-card-accent:var(--fh-personality-reverse);--fh-card-label:"TRACE";--fh-card-icon:"↩";}
.fh-card--hmmmaai{--fh-card-accent:var(--fh-personality-hmmmaai);--fh-card-label:"LENS";--fh-card-icon:"∑";}
.fh-card--qc{--fh-card-accent:var(--fh-personality-qc);--fh-card-label:"Q.C.";--fh-card-icon:"◎";}
.fh-card--recipe{--fh-card-accent:var(--fh-personality-recipe);--fh-card-label:"LOG";--fh-card-icon:"▦";}
.fh-card--calculator{--fh-card-accent:var(--fh-personality-calculator);--fh-card-label:"CALC";--fh-card-icon:"#";}
.fh-card--sourcebook{--fh-card-accent:var(--fh-personality-sourcebook);--fh-card-label:"MECH";--fh-card-icon:"⌁";}
.fh-card--terminology{--fh-card-accent:var(--fh-personality-terminology);--fh-card-label:"TERM";--fh-card-icon:"#";}

.fh-card-personality-ready .fh-card--takeaway,
.fh-card-personality-ready .fh-card--safety,
.fh-card-personality-ready .fh-card--action,
.fh-card-personality-ready .fh-card--ghost,
.fh-card-personality-ready .fh-card--reverse-trace,
.fh-card-personality-ready .fh-card--hmmmaai,
.fh-card-personality-ready .fh-card--qc,
.fh-card-personality-ready .fh-card--recipe,
.fh-card-personality-ready .fh-card--calculator,
.fh-card-personality-ready .fh-card--sourcebook,
.fh-card-personality-ready .fh-card--terminology{
  border-color:color-mix(in srgb,var(--fh-card-accent) 34%,rgba(15,23,42,.12));
  box-shadow:0 18px 46px rgba(15,23,42,.13), inset 5px 0 0 var(--fh-card-accent);
}
.fh-card-personality-ready .tf-section.fh-card--ghost,
.fh-card-personality-ready .fh-content-section.fh-card--ghost{
  background:linear-gradient(180deg,#faf5ff,#f8fafc);
}
.fh-card-personality-ready .tf-section.fh-card--reverse-trace,
.fh-card-personality-ready .fh-content-section.fh-card--reverse-trace{
  background:linear-gradient(180deg,#fff7ed,#f8fafc);
}
.fh-card-personality-ready .tf-section.fh-card--hmmmaai,
.fh-card-personality-ready .fh-content-section.fh-card--hmmmaai{
  background:linear-gradient(180deg,#eff6ff,#f8fafc);
}
.fh-card-personality-ready .tf-section.fh-card--qc,
.fh-card-personality-ready .fh-content-section.fh-card--qc{
  background:linear-gradient(180deg,#ecfdf5,#f8fafc);
}
.fh-card-personality-ready .tf-section.fh-card--recipe,
.fh-card-personality-ready .fh-content-section.fh-card--recipe{
  background:linear-gradient(180deg,#f7fee7,#f8fafc);
}
.fh-card-personality-ready .tf-section.fh-card--calculator,
.fh-card-personality-ready .fh-content-section.fh-card--calculator{
  background:linear-gradient(180deg,#eff6ff,#f8fafc);
}
.fh-card-personality-ready .tf-section.fh-card--sourcebook,
.fh-card-personality-ready .fh-content-section.fh-card--sourcebook{
  background:linear-gradient(180deg,#f1f5f9,#f8fafc);
}
.fh-card-personality-ready .tf-section.fh-card--takeaway,
.fh-card-personality-ready .fh-content-section.fh-card--takeaway{
  background:linear-gradient(180deg,#fffbeb,#f8fafc);
}
.fh-card-personality-ready .tf-section.fh-card--safety,
.fh-card-personality-ready .fh-content-section.fh-card--safety{
  background:linear-gradient(180deg,#fff1f2,#fff7ed);
}
.fh-card-personality-ready .tf-section.fh-card--action,
.fh-card-personality-ready .fh-content-section.fh-card--action{
  background:linear-gradient(180deg,#f0fdf4,#f8fafc);
}

.fh-card-personality-ready .fh-card--takeaway::after,
.fh-card-personality-ready .fh-card--safety::after,
.fh-card-personality-ready .fh-card--action::after,
.fh-card-personality-ready .fh-card--ghost::after,
.fh-card-personality-ready .fh-card--reverse-trace::after,
.fh-card-personality-ready .fh-card--hmmmaai::after,
.fh-card-personality-ready .fh-card--qc::after,
.fh-card-personality-ready .fh-card--recipe::after,
.fh-card-personality-ready .fh-card--calculator::after,
.fh-card-personality-ready .fh-card--sourcebook::after,
.fh-card-personality-ready .fh-card--terminology::after{
  content:var(--fh-card-icon) " " var(--fh-card-label);
  position:absolute;
  right:14px;
  top:12px;
  z-index:0;
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid color-mix(in srgb,var(--fh-card-accent) 38%,transparent);
  background:color-mix(in srgb,var(--fh-card-accent) 12%,white);
  color:color-mix(in srgb,var(--fh-card-accent) 70%,#0f172a);
  font-size:.68rem;
  font-weight:1000;
  letter-spacing:.12em;
  text-transform:uppercase;
  border-radius:999px;
  padding:5px 8px;
  opacity:.92;
}
.fh-card-personality-ready .fh-card--takeaway > *,
.fh-card-personality-ready .fh-card--safety > *,
.fh-card-personality-ready .fh-card--action > *,
.fh-card-personality-ready .fh-card--ghost > *,
.fh-card-personality-ready .fh-card--reverse-trace > *,
.fh-card-personality-ready .fh-card--hmmmaai > *,
.fh-card-personality-ready .fh-card--qc > *,
.fh-card-personality-ready .fh-card--recipe > *,
.fh-card-personality-ready .fh-card--calculator > *,
.fh-card-personality-ready .fh-card--sourcebook > *,
.fh-card-personality-ready .fh-card--terminology > *{
  position:relative;
  z-index:1;
}
.fh-card-personality-ready .tf-card.fh-card--takeaway,
.fh-card-personality-ready .tf-card.fh-card--safety,
.fh-card-personality-ready .tf-card.fh-card--action,
.fh-card-personality-ready .tf-card.fh-card--ghost,
.fh-card-personality-ready .tf-card.fh-card--reverse-trace,
.fh-card-personality-ready .tf-card.fh-card--hmmmaai,
.fh-card-personality-ready .tf-card.fh-card--qc,
.fh-card-personality-ready .tf-card.fh-card--recipe,
.fh-card-personality-ready .tf-card.fh-card--calculator,
.fh-card-personality-ready .tf-card.fh-card--sourcebook,
.fh-card-personality-ready .tf-card.fh-card--terminology{
  padding-top:42px;
}
.fh-card-personality-ready .tf-note.fh-card--takeaway,
.fh-card-personality-ready .tf-note.fh-card--safety,
.fh-card-personality-ready .tf-note.fh-card--action,
.fh-card-personality-ready .tf-note.fh-card--ghost,
.fh-card-personality-ready .tf-note.fh-card--reverse-trace,
.fh-card-personality-ready .tf-note.fh-card--hmmmaai,
.fh-card-personality-ready .tf-note.fh-card--qc,
.fh-card-personality-ready .tf-note.fh-card--recipe,
.fh-card-personality-ready .tf-note.fh-card--calculator,
.fh-card-personality-ready .tf-note.fh-card--sourcebook,
.fh-card-personality-ready .tf-note.fh-card--terminology{
  border-left-color:var(--fh-card-accent);
  background:color-mix(in srgb,var(--fh-card-accent) 10%,#fff);
  padding-top:42px;
}
.fh-card-personality-ready .tf-step.fh-card--action,
.fh-card-personality-ready .tf-step.fh-card--reverse-trace,
.fh-card-personality-ready .tf-step.fh-card--ghost{
  box-shadow:0 10px 28px rgba(15,23,42,.08), inset 4px 0 0 var(--fh-card-accent);
}
.fh-card-personality-ready .fh-doctrine-card.fh-card--hmmmaai::before,
.fh-card-personality-ready .fh-doctrine-card.fh-card--ghost::before,
.fh-card-personality-ready .fh-doctrine-card.fh-card--reverse-trace::before,
.fh-card-personality-ready .fh-doctrine-card.fh-card--action::before{
  background:linear-gradient(90deg,var(--fh-card-accent),rgba(246,196,92,.75));
  height:5px;
}

.fh-card-legend{margin:clamp(20px,3vw,36px) auto;padding:clamp(18px,3vw,28px);border-radius:28px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(135deg,rgba(255,255,255,.11),rgba(255,255,255,.045));box-shadow:0 22px 64px rgba(0,0,0,.22);}
.fh-card-legend h2{margin:0 0 8px;color:#fff;font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.03em;}
.fh-card-legend p{color:var(--fh-muted);line-height:1.62;max-width:860px;}
.fh-card-legend__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:16px;}
.fh-card-legend__item{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);}
.fh-card-legend__badge{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:14px;font-weight:1000;color:#07101d;background:var(--legend-accent,#f6c45c);box-shadow:0 10px 24px rgba(0,0,0,.18);}
.fh-card-legend__item strong{display:block;color:#fff;margin-bottom:2px;}
.fh-card-legend__item span{display:block;color:var(--fh-muted);font-size:.92rem;line-height:1.35;}
@media(max-width:720px){
  .fh-card-personality-ready .fh-card--takeaway::after,
  .fh-card-personality-ready .fh-card--safety::after,
  .fh-card-personality-ready .fh-card--action::after,
  .fh-card-personality-ready .fh-card--ghost::after,
  .fh-card-personality-ready .fh-card--reverse-trace::after,
  .fh-card-personality-ready .fh-card--hmmmaai::after,
  .fh-card-personality-ready .fh-card--qc::after,
  .fh-card-personality-ready .fh-card--recipe::after,
  .fh-card-personality-ready .fh-card--calculator::after,
  .fh-card-personality-ready .fh-card--sourcebook::after,
  .fh-card-personality-ready .fh-card--terminology::after{position:relative;right:auto;top:auto;margin:0 0 10px;}
  .fh-card-personality-ready .tf-card.fh-card--takeaway,
  .fh-card-personality-ready .tf-card.fh-card--safety,
  .fh-card-personality-ready .tf-card.fh-card--action,
  .fh-card-personality-ready .tf-card.fh-card--ghost,
  .fh-card-personality-ready .tf-card.fh-card--reverse-trace,
  .fh-card-personality-ready .tf-card.fh-card--hmmmaai,
  .fh-card-personality-ready .tf-card.fh-card--qc,
  .fh-card-personality-ready .tf-card.fh-card--recipe,
  .fh-card-personality-ready .tf-card.fh-card--calculator,
  .fh-card-personality-ready .tf-card.fh-card--sourcebook,
  .fh-card-personality-ready .tf-card.fh-card--terminology,
  .fh-card-personality-ready .tf-note.fh-card--takeaway,
  .fh-card-personality-ready .tf-note.fh-card--safety,
  .fh-card-personality-ready .tf-note.fh-card--action,
  .fh-card-personality-ready .tf-note.fh-card--ghost,
  .fh-card-personality-ready .tf-note.fh-card--reverse-trace,
  .fh-card-personality-ready .tf-note.fh-card--hmmmaai,
  .fh-card-personality-ready .tf-note.fh-card--qc,
  .fh-card-personality-ready .tf-note.fh-card--recipe,
  .fh-card-personality-ready .tf-note.fh-card--calculator,
  .fh-card-personality-ready .tf-note.fh-card--sourcebook,
  .fh-card-personality-ready .tf-note.fh-card--terminology{padding-top:16px;}
}


/* v27 Field Capture / Worksheets / Field Form Builder */
:root{--fh-personality-capture:#14b8a6;}
.fh-card--capture{--fh-card-accent:var(--fh-personality-capture);--fh-card-label:"CAPTURE";--fh-card-icon:"◉";}
.fh-card-personality-ready .fh-card--capture{border-color:color-mix(in srgb,var(--fh-card-accent) 34%,rgba(15,23,42,.12));box-shadow:0 18px 46px rgba(15,23,42,.13), inset 5px 0 0 var(--fh-card-accent)}
.fh-card-personality-ready .fh-card--capture::after{content:var(--fh-card-icon) " " var(--fh-card-label);position:absolute;right:14px;top:12px;display:inline-flex;align-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--fh-card-accent) 38%,transparent);background:color-mix(in srgb,var(--fh-card-accent) 12%,white);color:color-mix(in srgb,var(--fh-card-accent) 70%,#0f172a);font-size:.68rem;font-weight:1000;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:5px 8px;opacity:.92}.fh-card-personality-ready .fh-card--capture>*{position:relative;z-index:1}.fh-card-personality-ready .tf-section.fh-card--capture,.fh-card-personality-ready .fh-content-section.fh-card--capture{background:linear-gradient(180deg,#ecfeff,#f8fafc)}
.fh-worksheet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:18px}.fh-worksheet-card{display:block;text-decoration:none;color:#0f172a;background:#fff;border:1px solid rgba(15,23,42,.12);border-radius:22px;padding:18px;box-shadow:0 14px 36px rgba(15,23,42,.08);position:relative;overflow:hidden;min-height:160px}.fh-worksheet-card small{display:inline-block;color:#64748b;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px}.fh-worksheet-card h3{margin:.15rem 0 .5rem;color:#0f172a}.fh-worksheet-card p{margin:0;color:#475569;line-height:1.5}.fh-worksheet-card:hover{transform:translateY(-2px);border-color:rgba(20,184,166,.45)}
.fh-form-builder-shell{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:22px;align-items:start;margin-top:28px;margin-bottom:40px}.fh-form-builder,.fh-builder-side .fh-content-section{background:#fff;border:1px solid rgba(15,23,42,.12);border-radius:26px;box-shadow:0 18px 50px rgba(15,23,42,.12);padding:clamp(18px,3vw,28px)}.fh-builder-progress{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid rgba(15,23,42,.1)}.fh-builder-progress span{font-weight:1000;color:#0f766e}.fh-builder-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:18px 0}.fh-builder-option{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid rgba(15,23,42,.12);border-radius:16px;background:#f8fafc;color:#0f172a;font-weight:800;cursor:pointer}.fh-builder-option:hover{border-color:rgba(20,184,166,.55);background:#ecfeff}.fh-builder-option input{margin-top:2px}.fh-builder-primary{margin:16px 0;padding:14px;border:1px dashed rgba(20,184,166,.45);border-radius:16px;background:#f0fdfa}.fh-builder-primary label{font-weight:900;color:#0f172a}.fh-builder-primary select,.fh-form-grid input,.fh-form-grid textarea{width:100%;box-sizing:border-box;margin-top:6px;border:1px solid rgba(15,23,42,.18);border-radius:14px;padding:11px 12px;font:inherit;background:#fff}.fh-form-grid textarea{min-height:96px;resize:vertical}.fh-generated-section-list{display:grid;gap:10px;margin:16px 0}.fh-generated-section{padding:12px;border-radius:16px;border:1px solid rgba(20,184,166,.25);background:#f0fdfa}.fh-generated-section strong{display:block;color:#0f172a}.fh-generated-section span{display:block;color:#475569;margin-top:4px}.fh-working-form,.fh-report-preview{display:grid;gap:16px}.fh-form-section,.fh-report-preview section{border:1px solid rgba(15,23,42,.12);border-radius:20px;padding:16px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.06)}.fh-form-section h3,.fh-report-preview h3{margin-top:0;color:#0f172a}.fh-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.fh-form-grid label{font-weight:900;color:#0f172a}.fh-small-note{font-size:.9rem;color:#64748b;line-height:1.55}.fh-builder-side{display:grid;gap:14px;position:sticky;top:90px}.fh-form-hero{background:radial-gradient(circle at 20% 20%,rgba(20,184,166,.25),transparent 38%),linear-gradient(135deg,#042f2e,#0f172a 64%,#111827)}@media(max-width:900px){.fh-form-builder-shell{grid-template-columns:1fr}.fh-builder-side{position:static}.fh-builder-progress{align-items:flex-start;flex-direction:column}.fh-builder-options{grid-template-columns:1fr}}@media print{.de-common-footer,[data-de-global-nav],.fh-subhero,.fh-term-panel,.fh-builder-side,.fh-builder-progress,.fh-actions{display:none!important}.fh-form-builder-shell,.fh-form-builder{display:block!important;box-shadow:none!important;border:0!important}.fh-form-section,.fh-report-preview section{break-inside:avoid;box-shadow:none!important}.field-handbook-page{background:#fff!important}}


/* Field Form Builder v27a: clearer step instructions + visible back CTA */
.fh-form-builder [data-builder-screen] h2,
.fh-form-builder .fh-working-form h2,
.fh-form-builder .fh-report-preview h2{
  color:#0f172a !important;
}
.fh-form-builder [data-builder-screen] p,
.fh-form-builder .fh-working-form p,
.fh-form-builder .fh-report-preview p{
  color:#334155;
}
.fh-builder-question-card{
  margin:0 0 18px;
  padding:16px 18px;
  border:1px solid rgba(20,184,166,.28);
  border-left:6px solid #14b8a6;
  border-radius:20px;
  background:linear-gradient(135deg,#ecfeff,#f8fafc 70%);
  box-shadow:0 12px 28px rgba(15,23,42,.08);
}
.fh-builder-step-kicker{
  margin:0 0 6px;
  color:#0f766e !important;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:1000;
}
.fh-builder-question-card h2{
  margin:.1rem 0 .35rem;
  line-height:1.15;
}
.fh-builder-help{
  margin:.2rem 0 .55rem;
  color:#475569 !important;
  font-weight:700;
}
.fh-builder-requirement{
  margin:.6rem 0 0;
  padding:.75rem .85rem;
  border-radius:14px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(15,23,42,.1);
  color:#0f172a !important;
  line-height:1.55;
}
.fh-builder-progress .fh-button--secondary{
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1;
  background:#0f172a;
  color:#fff;
  border-color:rgba(15,23,42,.35);
}
.fh-builder-progress .fh-button--secondary:disabled,
.fh-builder-progress .fh-button--secondary[aria-disabled="true"]{
  opacity:.45;
  cursor:not-allowed;
}
.fh-builder-progress .fh-button--primary{
  background:#ffd166;
  color:#0f172a;
  border-color:rgba(15,23,42,.08);
}
.fh-builder-option span{
  color:#0f172a;
}
.fh-builder-primary select{
  color:#0f172a;
}
@media(max-width:700px){
  .fh-builder-progress{gap:10px;}
  .fh-builder-progress>div{width:100%;display:flex;justify-content:space-between;gap:10px;}
  .fh-builder-progress .fh-button{flex:1;justify-content:center;}
}

/* Field Form Builder v27b: generated form + report polish */
.fh-generated-preview{display:grid;gap:16px;}
.fh-builder-summary{border:1px solid rgba(20,184,166,.28);border-left:6px solid #14b8a6;border-radius:22px;background:linear-gradient(135deg,#f0fdfa,#ffffff 72%);padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.07);}
.fh-builder-summary h3{margin:.15rem 0 .5rem;color:#0f172a;line-height:1.25;}
.fh-builder-summary p{margin:.35rem 0;color:#334155;line-height:1.55;}
.fh-builder-summary--form{background:linear-gradient(135deg,#ecfeff,#f8fafc 74%);}
.fh-included-section-panel{border:1px solid rgba(15,23,42,.12);border-radius:22px;background:#fff;padding:18px;box-shadow:0 12px 32px rgba(15,23,42,.08);}
.fh-included-section-panel h3{margin-top:0;color:#0f172a;}
.fh-generated-section{display:grid;gap:4px;}
.fh-generated-section small{display:inline-block;color:#0f766e;font-weight:900;letter-spacing:.02em;margin-top:3px;}
.fh-form-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:8px;}
.fh-form-section-head h3{margin:.1rem 0 0;}
.fh-report-feed{display:inline-flex;align-items:center;border:1px solid rgba(20,184,166,.28);background:#ecfeff;color:#0f766e;border-radius:999px;padding:6px 9px;font-size:.76rem;font-weight:1000;white-space:nowrap;}
.fh-section-guidance{display:grid;gap:8px;margin:12px 0 16px;padding:12px;border-radius:16px;background:linear-gradient(135deg,#f8fafc,#ecfeff);border:1px solid rgba(15,23,42,.08);}
.fh-section-guidance p{margin:0;color:#334155;line-height:1.5;}
.fh-required-chip{display:inline-flex;align-items:center;margin-left:5px;border-radius:999px;background:#fef3c7;color:#92400e;padding:2px 7px;font-size:.68rem;font-weight:1000;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;}
.fh-section-mini-list{display:grid;gap:8px;margin:12px 0;padding:0;list-style:none;}
.fh-section-mini-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid rgba(15,23,42,.1);border-radius:14px;background:#f8fafc;padding:10px 12px;}
.fh-section-mini-list li strong{color:#0f172a;}
.fh-section-mini-list li span{color:#64748b;font-size:.9rem;text-align:right;}
.fh-report-cover{background:linear-gradient(135deg,#0f172a,#042f2e)!important;color:#fff;border-color:rgba(20,184,166,.38)!important;}
.fh-report-cover h3,.fh-report-cover p,.fh-report-cover strong{color:#fff!important;}
.fh-report-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:14px;}
.fh-report-meta-grid span{border:1px solid rgba(255,255,255,.15);border-radius:14px;background:rgba(255,255,255,.08);padding:10px;color:#e2e8f0;}
.fh-fact-theory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;}
.fh-fact-theory-grid>div{border:1px solid rgba(15,23,42,.1);border-radius:16px;background:#f8fafc;padding:12px;}
.fh-fact-theory-grid h4,.fh-report-appendix-card h4{margin:.1rem 0 .45rem;color:#0f172a;}
.fh-empty-field{display:inline-flex;color:#64748b;font-style:italic;background:#f8fafc;border:1px dashed rgba(100,116,139,.35);border-radius:10px;padding:3px 7px;}
.fh-report-appendix-card{border:1px solid rgba(20,184,166,.18);border-radius:16px;background:#f0fdfa;padding:12px;margin-top:10px;}
.fh-actions--sticky{position:sticky;bottom:12px;z-index:5;background:rgba(248,250,252,.94);backdrop-filter:blur(10px);border:1px solid rgba(15,23,42,.1);border-radius:18px;padding:10px;box-shadow:0 12px 34px rgba(15,23,42,.16);}
.fh-form-builder .fh-actions{flex-wrap:wrap;}
@media(max-width:700px){
  .fh-form-section-head{display:block;}
  .fh-report-feed{margin-top:8px;white-space:normal;}
  .fh-section-mini-list li{display:block;}
  .fh-section-mini-list li span{display:block;text-align:left;margin-top:3px;}
  .fh-actions--sticky{position:static;}
}
@media print{
  .fh-actions--sticky{display:none!important;}
  .fh-report-cover{background:#fff!important;color:#0f172a!important;border-color:#d1d5db!important;}
  .fh-report-cover h3,.fh-report-cover p,.fh-report-cover strong{color:#0f172a!important;}
  .fh-report-meta-grid span{background:#fff!important;color:#0f172a!important;border-color:#d1d5db!important;}
}

/* Field Form Builder v27c: completion + export hardening */
.fh-completion-panel{
  border:1px solid rgba(20,184,166,.28);
  border-left:6px solid #14b8a6;
  border-radius:22px;
  background:linear-gradient(135deg,#ecfeff,#ffffff 70%);
  box-shadow:0 12px 30px rgba(15,23,42,.08);
  padding:18px;
  display:grid;
  gap:10px;
}
.fh-completion-panel--report{
  border-left-color:#f59e0b;
  background:linear-gradient(135deg,#fffbeb,#ffffff 72%);
}
.fh-completion-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.fh-completion-head h3{margin:.15rem 0 0;color:#0f172a;line-height:1.2;}
.fh-completion-head span{display:inline-flex;align-items:center;border-radius:999px;background:#0f172a;color:#fff;padding:7px 10px;font-size:.78rem;font-weight:1000;white-space:nowrap;}
.fh-completion-panel p{margin:0;color:#334155;line-height:1.55;}
.fh-completion-bar{height:13px;border-radius:999px;overflow:hidden;background:#dbeafe;border:1px solid rgba(15,23,42,.08);}
.fh-completion-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#14b8a6,#22c55e);transition:width .25s ease;}
.fh-missing-fields{border:1px dashed rgba(15,23,42,.16);border-radius:16px;background:rgba(255,255,255,.62);padding:10px 12px;}
.fh-missing-fields summary{cursor:pointer;font-weight:1000;color:#0f172a;}
.fh-missing-fields ul{margin:10px 0 0;padding-left:18px;display:grid;gap:6px;}
.fh-missing-fields button{border:0;background:transparent;color:#0f766e;font-weight:900;text-decoration:underline;cursor:pointer;padding:0;text-align:left;}
.fh-report-warning{border:1px solid rgba(245,158,11,.38);border-left:6px solid #f59e0b;border-radius:22px;background:linear-gradient(135deg,#fffbeb,#fff7ed);padding:18px;box-shadow:0 12px 30px rgba(15,23,42,.08);display:grid;gap:8px;}
.fh-report-warning h3{margin:.1rem 0;color:#78350f;}
.fh-report-warning p{margin:0;color:#7c2d12;line-height:1.55;}
.fh-report-status{display:inline-flex!important;align-items:center;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);padding:8px 10px;margin-top:10px!important;}
.fh-report-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px;}
.fh-report-section-head h3,.fh-report-section-head h4{margin:0;color:#0f172a;}
.fh-report-edit-link{border:1px solid rgba(20,184,166,.28);border-radius:999px;background:#ecfeff;color:#0f766e;padding:6px 9px;font-weight:1000;font-size:.76rem;cursor:pointer;white-space:nowrap;}
.fh-report-edit-link:hover{background:#ccfbf1;}
.fh-section-status{color:#475569!important;}
.fh-section-pulse{animation:fhPulseSection 1.6s ease;}
@keyframes fhPulseSection{
  0%,100%{box-shadow:0 12px 30px rgba(15,23,42,.08);}
  35%{box-shadow:0 0 0 5px rgba(20,184,166,.22),0 18px 42px rgba(20,184,166,.18);}
}
@media(max-width:700px){
  .fh-completion-head,.fh-report-section-head{display:block;}
  .fh-completion-head span,.fh-report-edit-link{margin-top:8px;white-space:normal;}
}
@media print{
  .fh-completion-panel,.fh-report-warning,.fh-report-edit-link{display:none!important;}
  .fh-report-section-head{display:block!important;}
  .fh-actions:not(.fh-builder-progress){display:none!important;}
}


/* v27d Worksheet Template Browser Polish */
.fh-template-browser{position:relative;overflow:hidden;}
.fh-template-browser:before{content:"TEMPLATES";position:absolute;right:-1rem;top:1rem;font-size:4rem;font-weight:900;letter-spacing:.08em;color:rgba(15,23,42,.045);pointer-events:none;}
.fh-template-toolbar{display:grid;gap:1rem;margin:1.25rem 0;position:relative;z-index:1;}
.fh-template-toolbar label{display:grid;gap:.35rem;font-weight:800;color:#0f172a;}
.fh-template-toolbar input[type="search"]{width:100%;border:1px solid rgba(15,23,42,.14);border-radius:999px;padding:.85rem 1rem;font-weight:800;background:#fff;box-shadow:inset 0 1px 2px rgba(15,23,42,.04);}
.fh-template-filters{display:flex;flex-wrap:wrap;gap:.55rem;}
.fh-template-filter{border:1px solid rgba(14,165,233,.35);background:rgba(14,165,233,.08);color:#075985;border-radius:999px;padding:.5rem .75rem;font-weight:900;cursor:pointer;}
.fh-template-filter.is-active{background:#0f766e;color:#fff;border-color:#0f766e;box-shadow:0 8px 20px rgba(15,118,110,.22);}
.fh-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;position:relative;z-index:1;}
.fh-template-card{display:flex;flex-direction:column;gap:.45rem;text-decoration:none;color:#0f172a;border-radius:20px;padding:1.05rem;border:1px solid rgba(15,23,42,.12);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.92));box-shadow:0 14px 35px rgba(15,23,42,.08);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.fh-template-card:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(15,23,42,.14);border-color:rgba(20,184,166,.45);}
.fh-template-card small{text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#0f766e;}
.fh-template-card h3{margin:.05rem 0;font-size:1.08rem;}
.fh-template-card p{margin:.05rem 0;color:#334155;line-height:1.45;}
.fh-template-card span{margin-top:auto;display:inline-flex;align-self:flex-start;border-radius:999px;background:rgba(20,184,166,.1);color:#0f766e;font-weight:900;padding:.42rem .65rem;border:1px solid rgba(20,184,166,.25);}
.fh-template-empty{margin-top:1rem;padding:1rem;border-radius:18px;background:rgba(254,249,195,.65);border:1px solid rgba(234,179,8,.35);}
.fh-template-shortcut-panel{margin-top:1.5rem;}
.fh-template-loaded{display:inline-flex;align-items:center;gap:.4rem;margin:.35rem 0 .55rem;padding:.55rem .75rem;border-radius:999px;background:rgba(20,184,166,.1);border:1px solid rgba(20,184,166,.25);color:#0f766e;font-weight:900;}
@media(max-width:720px){.fh-template-browser:before{font-size:2.4rem;}.fh-template-card{padding:.9rem}.fh-template-filters{gap:.4rem}.fh-template-filter{font-size:.82rem}}
@media print{.fh-template-toolbar,.fh-template-filters,.fh-template-empty,.fh-template-shortcut-panel{display:none!important}.fh-template-card{break-inside:avoid}}

/* v28 Coach™ personality support retained */
:root{--fh-personality-coach:#ec4899;}
.fh-card--coach{--fh-card-accent:var(--fh-personality-coach);--fh-card-label:"COACH";--fh-card-icon:"☑";}
.fh-card-personality-ready .fh-card--coach{border-left:6px solid var(--fh-card-accent)!important;background:linear-gradient(135deg,#fff 0%,#fff 72%,rgba(236,72,153,.08) 100%)!important;}
.fh-card-personality-ready .fh-card--coach::after{content:var(--fh-card-label);position:absolute;right:16px;top:12px;font-size:.72rem;font-weight:1000;letter-spacing:.12em;color:rgba(236,72,153,.45);}

/* v29 Field Handbook Build Stamp System */
:root{--fh-build-rev:"v33";--fh-build-accent:#facc15;--fh-build-teal:#14b8a6;}
.fh-build-stamp{box-sizing:border-box;display:inline-flex;align-items:center;gap:.55rem;border:1px solid rgba(250,204,21,.38);background:linear-gradient(135deg,rgba(15,23,42,.82),rgba(4,47,46,.76));color:#fff;border-radius:999px;padding:.45rem .7rem;font-size:.76rem;font-weight:900;letter-spacing:.02em;box-shadow:0 10px 26px rgba(2,6,23,.18);}
.fh-build-stamp span{color:#fef3c7;font-weight:1000;}
.fh-build-stamp em{font-style:normal;color:#ccfbf1;font-weight:800;opacity:.95;}
.fh-build-stamp--top{margin-top:1rem;}
.fh-build-stamp--footer{margin-top:.5rem;align-self:flex-start;font-size:.72rem;padding:.34rem .6rem;box-shadow:none;background:rgba(15,23,42,.55);}
.fh-manual-revision{margin-top:1rem;padding:.75rem .9rem;border:1px solid rgba(20,184,166,.22);border-radius:14px;background:linear-gradient(135deg,#ecfeff,#ffffff);color:#0f172a;font-size:.86rem;font-weight:900;}
.fh-manual-revision strong{color:#0f766e;}
.field-handbook-page[data-field-handbook-rev] .fh-rev-aware::after{content:" · " attr(data-field-handbook-rev);}
@media(max-width:700px){.fh-build-stamp{display:flex;flex-wrap:wrap;gap:.25rem .5rem;line-height:1.35;border-radius:18px}.fh-build-stamp--top{width:100%;justify-content:flex-start}}
@media print{.fh-build-stamp{background:#fff!important;color:#0f172a!important;border-color:#94a3b8!important;box-shadow:none!important}.fh-build-stamp span,.fh-build-stamp em{color:#0f172a!important}.fh-build-stamp--top{display:block!important;margin:.5rem 0}.fh-manual-revision{break-inside:avoid;background:#fff!important;color:#0f172a!important;border-color:#cbd5e1!important}}


/* v30 Field Handbook Public Readiness + Feedback System */
.fh-foreword-card{
  margin-top:clamp(22px,4vw,42px);
  background:linear-gradient(135deg,#ffffff 0%,#f8fafc 60%,#ecfeff 100%);
  border:1px solid rgba(15,23,42,.12);
  border-left:7px solid #14b8a6;
  border-radius:28px;
  box-shadow:0 20px 54px rgba(15,23,42,.12);
  padding:clamp(22px,4vw,34px);
  position:relative;
  overflow:hidden;
}
.fh-foreword-card:after{content:"FOREWORD";position:absolute;right:-.35rem;top:.5rem;font-size:clamp(2rem,7vw,5rem);font-weight:1000;letter-spacing:.08em;color:rgba(15,23,42,.045);pointer-events:none;}
.fh-foreword-card h2{margin:.25rem 0 .75rem;color:#0f172a;}
.fh-foreword-card p{color:#334155;line-height:1.65;max-width:980px;}
.fh-foreword-callouts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:18px 0;}
.fh-foreword-callouts div{border:1px solid rgba(20,184,166,.18);background:rgba(240,253,250,.72);border-radius:18px;padding:14px;}
.fh-foreword-callouts strong{display:block;color:#0f766e;margin-bottom:4px;}
.fh-safety-boundary,.fh-request-boundary{border:1px solid rgba(245,158,11,.34);border-left:6px solid #f59e0b;border-radius:18px;background:#fffbeb;color:#78350f!important;padding:13px 14px;font-weight:850;}
.fh-submit-request-cta{margin-top:32px;margin-bottom:32px;border:1px solid rgba(20,184,166,.22);border-left:7px solid #14b8a6;border-radius:26px;background:linear-gradient(135deg,#ffffff,#f0fdfa);box-shadow:0 16px 46px rgba(15,23,42,.1);padding:clamp(18px,3vw,28px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;position:relative;overflow:hidden;}
.fh-submit-request-cta:after{content:"REQUEST";position:absolute;right:-.25rem;top:.35rem;font-size:clamp(2rem,6vw,4.5rem);font-weight:1000;letter-spacing:.08em;color:rgba(20,184,166,.08);pointer-events:none;}
.fh-submit-request-cta h2{margin:.2rem 0 .45rem;color:#0f172a;}
.fh-submit-request-cta p{margin:.35rem 0;color:#334155;line-height:1.6;}
.fh-request-form{display:grid;gap:16px;margin-top:22px;}
.fh-request-form fieldset{border:1px solid rgba(15,23,42,.12);border-radius:22px;background:#fff;padding:18px;box-shadow:0 12px 32px rgba(15,23,42,.06);}
.fh-request-form legend{font-weight:1000;color:#0f172a;padding:0 8px;}
.fh-request-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;}
.fh-request-form label{display:grid;gap:6px;font-weight:900;color:#0f172a;}
.fh-request-form input,.fh-request-form select,.fh-request-form textarea{width:100%;box-sizing:border-box;border:1px solid rgba(15,23,42,.18);border-radius:14px;padding:11px 12px;font:inherit;background:#fff;}
.fh-request-form textarea{min-height:120px;resize:vertical;}
.fh-request-options{display:grid;gap:10px;margin-top:10px;}
.fh-request-options label{display:flex;align-items:flex-start;gap:9px;font-weight:800;color:#334155;}
.fh-request-options input{width:auto;margin-top:4px;}
.fh-legal-addendum{border-left:7px solid #0f766e!important;}
.fh-legal-addendum ul{line-height:1.65;color:#334155;}
@media(max-width:760px){.fh-submit-request-cta{grid-template-columns:1fr}.fh-submit-request-cta .fh-actions{align-items:stretch}.fh-submit-request-cta .fh-button{width:100%;justify-content:center}.fh-foreword-card:after,.fh-submit-request-cta:after{font-size:2.1rem;}}
@media print{.fh-submit-request-cta,.fh-request-form{display:none!important}.fh-foreword-card{box-shadow:none!important;background:#fff!important;border-color:#cbd5e1!important}.fh-safety-boundary{background:#fff!important;color:#0f172a!important;border-color:#cbd5e1!important}}


/* v30a Field Handbook Request Supabase Intake */
.fh-request-privacy{border:1px solid rgba(20,184,166,.22);border-left:6px solid #14b8a6;border-radius:18px;background:#ecfeff;color:#134e4a!important;padding:13px 14px;font-weight:850;}
.fh-form-status{margin-top:14px;border-radius:18px;padding:13px 15px;border:1px solid rgba(15,23,42,.14);display:grid;gap:4px;box-shadow:0 10px 26px rgba(15,23,42,.07);}
.fh-form-status strong{color:#0f172a;}
.fh-form-status span{color:#334155;line-height:1.45;}
.fh-form-status--working{background:#eff6ff;border-left:6px solid #3b82f6;}
.fh-form-status--success{background:#ecfdf5;border-left:6px solid #10b981;}
.fh-form-status--warning{background:#fffbeb;border-left:6px solid #f59e0b;}
.fh-form-status--error{background:#fef2f2;border-left:6px solid #ef4444;}
.fh-request-form button[disabled]{opacity:.65;cursor:not-allowed;}
@media print{.fh-form-status{display:none!important}}

/* Field Handbook Public Readiness Gate v31 */
.fh-public-readiness-page .fh-content-section{overflow:hidden;}
.fh-readiness-grid,.fh-template-response-grid,.fh-roadmap-grid,.fh-admin-blueprint{display:grid;gap:14px;margin-top:18px;}
.fh-readiness-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));}
.fh-template-response-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));}
.fh-roadmap-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));}
.fh-admin-blueprint{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
.fh-readiness-grid article,.fh-template-response-grid article,.fh-roadmap-grid article,.fh-admin-blueprint>div{border:1px solid rgba(15,23,42,.12);border-radius:20px;background:rgba(255,255,255,.88);padding:16px;box-shadow:0 12px 28px rgba(15,23,42,.06);}
.fh-readiness-grid article span{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;background:#0f172a;color:#fff;font-weight:1000;margin-bottom:10px;}
.fh-readiness-grid h3,.fh-template-response-grid h3,.fh-roadmap-grid h3{margin:.15rem 0 .45rem;color:#0f172a;}
.fh-readiness-grid p,.fh-template-response-grid p,.fh-roadmap-grid p{margin:.25rem 0;color:#334155;line-height:1.55;}
.fh-template-response-grid article{display:grid;align-content:start;gap:10px;}
.fh-template-response-grid .fh-button{justify-self:start;min-width:92px;}
.fh-status-lane{counter-reset:status;display:grid;gap:10px;list-style:none;margin:18px 0 0;padding:0;}
.fh-status-lane li{position:relative;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:start;border:1px solid rgba(15,23,42,.12);border-left:6px solid #14b8a6;border-radius:18px;background:#fff;padding:14px 16px 14px 54px;box-shadow:0 10px 24px rgba(15,23,42,.05);}
.fh-status-lane li:before{counter-increment:status;content:counter(status);position:absolute;left:14px;top:14px;width:26px;height:26px;border-radius:999px;background:#0f766e;color:#fff;font-weight:1000;display:flex;align-items:center;justify-content:center;font-size:.82rem;}
.fh-status-lane strong{color:#0f172a;font-size:1.02rem;}
.fh-status-lane span{color:#334155;line-height:1.45;}
.fh-admin-blueprint strong{display:block;color:#0f172a;margin-bottom:4px;font-size:1.03rem;}
.fh-admin-blueprint span{display:block;color:#334155;line-height:1.5;}
@media(max-width:720px){.fh-readiness-grid,.fh-template-response-grid,.fh-roadmap-grid,.fh-admin-blueprint{grid-template-columns:1fr}.fh-status-lane li{padding-left:50px}.fh-template-response-grid .fh-button{width:100%;justify-content:center}}
@media print{.fh-template-response-grid button{display:none!important}.fh-readiness-grid article,.fh-template-response-grid article,.fh-roadmap-grid article,.fh-admin-blueprint>div,.fh-status-lane li{box-shadow:none!important;background:#fff!important}}

/* v32 Field Manual Category Reorganization + Calculator Coverage Matrix */
:root{--fh-build-rev:"v33";}
.fh-field-manual-page .fh-subhero{background:radial-gradient(circle at 18% 18%,rgba(20,184,166,.22),transparent 34%),linear-gradient(135deg,#06101e 0%,#0d1829 58%,#16213a 100%);}
.fh-manual-gate{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1fr);gap:18px;align-items:stretch;padding:36px 0 10px;}
.fh-manual-gate h2{margin:.1rem 0;color:#fff;font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.04em;}
.fh-gate-card{border:1px solid rgba(20,184,166,.25);border-left:7px solid #14b8a6;border-radius:24px;background:linear-gradient(135deg,#ffffff,#ecfeff);color:#0f172a;padding:22px;box-shadow:0 18px 48px rgba(0,0,0,.18);}
.fh-gate-card h3{margin:.1rem 0 .5rem;color:#0f766e;}.fh-gate-card p{color:#334155;line-height:1.6;margin:.25rem 0 1rem;}
.fh-status-chip-row,.fh-family-chip-row{display:flex;flex-wrap:wrap;gap:8px;}
.fh-status-chip-row span,.fh-family-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(15,118,110,.25);border-radius:999px;background:rgba(240,253,250,.82);color:#0f766e;font-weight:900;font-size:.82rem;line-height:1.25;padding:7px 10px;}
.fh-family-chip strong{color:#0f172a;}
.fh-manual-groups-section,.fh-family-library-section,.fh-coverage-section,.fh-gap-section{padding:36px 0 16px;}
.fh-manual-group-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;}
.fh-manual-group-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045));box-shadow:0 18px 48px rgba(0,0,0,.2);padding:20px;}
.fh-manual-group-card:after{content:"FM";position:absolute;right:.8rem;top:.4rem;font-size:3.2rem;font-weight:1000;color:rgba(255,255,255,.05);letter-spacing:-.08em;}
.fh-manual-group-card h3{position:relative;margin:.1rem 0 .5rem;color:#fff;font-size:1.25rem;}.fh-manual-group-card p{position:relative;color:var(--fh-muted);line-height:1.55;margin:.25rem 0 1rem;}
.fh-family-library{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;max-height:760px;overflow:auto;padding:4px 4px 12px;}
.fh-family-card{border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(255,255,255,.07);padding:16px;box-shadow:0 10px 26px rgba(0,0,0,.14);}
.fh-family-card>strong{display:inline-flex;border-radius:999px;background:rgba(246,196,92,.13);border:1px solid rgba(246,196,92,.35);color:#fef3c7;padding:5px 8px;font-size:.78rem;}
.fh-family-card h3{color:#fff;font-size:1rem;margin:.65rem 0 .35rem;line-height:1.25;}.fh-family-card p{color:var(--fh-muted);font-size:.9rem;line-height:1.45;margin:0 0 .75rem;}.fh-family-card span{color:#6ee7b7;font-weight:900;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;}
.fh-manual-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,.38fr) minmax(190px,.38fr);gap:10px;align-items:end;margin-top:18px;}
.fh-manual-toolbar label{display:grid;gap:6px;color:#fff;font-weight:900;}.fh-manual-toolbar label span{font-size:.86rem;color:var(--fh-muted);}
.fh-manual-toolbar input,.fh-manual-toolbar select{min-height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;padding:0 12px;font:inherit;font-weight:850;}.fh-manual-toolbar option{color:#0f172a;}
.fh-coverage-matrix{display:grid;gap:12px;padding-bottom:20px;}
.fh-coverage-row{display:grid;grid-template-columns:145px minmax(0,1.25fr) minmax(220px,.58fr) 150px;gap:12px;align-items:stretch;border:1px solid rgba(15,23,42,.12);border-left:7px solid #14b8a6;border-radius:22px;background:#fff;color:#0f172a;box-shadow:0 14px 34px rgba(0,0,0,.16);padding:14px;}
.fh-coverage-id{display:grid;align-content:start;gap:6px;}.fh-coverage-id strong{font-size:1rem;color:#0f766e;}.fh-coverage-id span{font-size:.8rem;font-weight:900;color:#64748b;text-transform:uppercase;letter-spacing:.08em;}
.fh-coverage-main h3{margin:.05rem 0 .35rem;font-size:1.03rem;line-height:1.3;}.fh-coverage-main a{color:#0f172a;text-decoration:none;}.fh-coverage-main a:hover{text-decoration:underline;text-underline-offset:4px;}.fh-coverage-main p{margin:0;color:#475569;line-height:1.45;font-size:.92rem;}
.fh-coverage-calc{display:grid;align-content:start;gap:5px;border-left:1px solid rgba(15,23,42,.1);padding-left:12px;}.fh-coverage-calc strong{color:#0f172a;}.fh-coverage-calc span{color:#475569;font-size:.88rem;line-height:1.35;}
.fh-coverage-status{align-self:start;justify-self:stretch;text-align:center;border-radius:999px;padding:7px 9px;font-size:.78rem;font-weight:1000;line-height:1.2;border:1px solid rgba(15,23,42,.12);background:#f8fafc;color:#334155;}.fh-coverage-status--covered{background:#ecfdf5;color:#047857;border-color:rgba(16,185,129,.28);}.fh-coverage-status--needs-calculator-module{background:#fffbeb;color:#92400e;border-color:rgba(245,158,11,.38);}.fh-coverage-status--needs-deep-link{background:#eff6ff;color:#1d4ed8;border-color:rgba(59,130,246,.32);}.fh-coverage-status--admin-tool{background:#f5f3ff;color:#6d28d9;border-color:rgba(124,58,237,.28);}.fh-coverage-status--no-calculator-required{background:#f1f5f9;color:#475569;border-color:rgba(100,116,139,.25);}
.fh-gap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;}
.fh-gap-card{position:relative;overflow:hidden;border:1px solid rgba(245,158,11,.25);border-left:7px solid #f59e0b;border-radius:22px;background:linear-gradient(135deg,#fff,#fffbeb);color:#0f172a;padding:18px;box-shadow:0 14px 34px rgba(0,0,0,.15);}.fh-gap-card>span{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:14px;background:#0f172a;color:#fef3c7;font-weight:1000;}.fh-gap-card h3{margin:.7rem 0 .35rem;color:#0f172a;}.fh-gap-card p{margin:.25rem 0;color:#475569;line-height:1.45;}.fh-gap-card strong{color:#92400e;}
.fh-home-manual-bridge{margin-top:34px;border:1px solid rgba(20,184,166,.26);border-left:7px solid #14b8a6;border-radius:30px;background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(20,184,166,.08));box-shadow:0 20px 54px rgba(0,0,0,.22);padding:clamp(20px,3vw,30px);display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.62fr);gap:20px;align-items:center;}.fh-home-manual-bridge h2{color:#fff;margin:.1rem 0 .5rem;font-size:clamp(1.9rem,4vw,3rem);letter-spacing:-.045em;}.fh-home-manual-bridge p{color:var(--fh-muted);line-height:1.62;margin:.4rem 0;}.fh-home-manual-list{display:grid;gap:9px;margin:0;padding:0;list-style:none;}.fh-home-manual-list li{border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.06);padding:10px 12px;color:#fff;font-weight:900;}.fh-home-manual-list span{display:block;color:#a7f3d0;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;}
@media(max-width:940px){.fh-manual-gate,.fh-home-manual-bridge{grid-template-columns:1fr}.fh-manual-toolbar{grid-template-columns:1fr}.fh-coverage-row{grid-template-columns:1fr}.fh-coverage-calc{border-left:0;border-top:1px solid rgba(15,23,42,.1);padding-left:0;padding-top:10px}.fh-coverage-status{justify-self:start}.fh-family-library{max-height:none;}}
@media(max-width:600px){.fh-family-chip,.fh-status-chip-row span{border-radius:14px;width:100%;justify-content:flex-start}.fh-manual-group-card,.fh-family-card,.fh-coverage-row,.fh-gap-card{border-radius:18px}.fh-manual-groups-section,.fh-family-library-section,.fh-coverage-section,.fh-gap-section{padding-top:26px}.fh-home-manual-list li{font-size:.92rem}}
@media print{.fh-manual-toolbar{display:none!important}.fh-family-library{max-height:none;overflow:visible}.fh-manual-group-card,.fh-family-card,.fh-coverage-row,.fh-gap-card,.fh-gate-card{box-shadow:none!important;background:#fff!important;color:#0f172a!important}.fh-coverage-row{break-inside:avoid}}


/* v33 Mobile Card Contrast Cleanup
   Goal: eliminate washed-out cards on phone screens while preserving light cards only for
   public notices, forms, and structured matrix/admin content. */
:root{
  --fh-muted:#d6e2f2;
  --fh-card-body:#d9e6f6;
  --fh-card-meta:#f8d98a;
  --fh-card-dark-top:#132238;
  --fh-card-dark-bottom:#081321;
  --fh-card-dark-line:rgba(226,232,240,.22);
}
.field-handbook-page{background:#06101d;color:#f8fbff;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;}
.field-handbook-page .fh-lead,
.field-handbook-page .fh-section-head p,
.field-handbook-page .fh-note-card p,
.field-handbook-page .fh-category-card p,
.field-handbook-page .fh-directory-card p,
.field-handbook-page .fh-command-card p,
.field-handbook-page .fh-path-card p,
.field-handbook-page .fh-family-card p,
.field-handbook-page .fh-manual-group-card p,
.field-handbook-page .fh-home-manual-bridge p{color:var(--fh-card-body);}

/* Default public/home cards now stay in the dark-card family. */
.field-handbook-home .fh-intro-grid .fh-panel,
.field-handbook-home .fh-methodology,
.field-handbook-home .fh-methodology .fh-note-card,
.field-handbook-home .fh-calculator-bridge .fh-note-card,
.field-handbook-home .fh-command-card,
.field-handbook-home .fh-path-card,
.field-handbook-home .fh-category-card,
.field-handbook-home .fh-directory-card,
.field-handbook-home .fh-card-legend__item,
.field-handbook-home .fh-home-manual-list li,
.field-handbook-page .fh-manual-group-card,
.field-handbook-page .fh-family-card{
  background:linear-gradient(180deg,var(--fh-card-dark-top),var(--fh-card-dark-bottom))!important;
  border-color:var(--fh-card-dark-line)!important;
  color:#ffffff!important;
  box-shadow:0 20px 54px rgba(0,0,0,.28)!important;
}
.field-handbook-home .fh-intro-grid .fh-panel h2,
.field-handbook-home .fh-methodology h2,
.field-handbook-home .fh-methodology h3,
.field-handbook-home .fh-note-card h2,
.field-handbook-home .fh-note-card h3,
.field-handbook-home .fh-command-card h3,
.field-handbook-home .fh-path-card h3,
.field-handbook-home .fh-category-card h3,
.field-handbook-home .fh-directory-card h3,
.field-handbook-home .fh-card-legend__item strong,
.field-handbook-page .fh-manual-group-card h3,
.field-handbook-page .fh-family-card h3{color:#ffffff!important;}
.field-handbook-home .fh-intro-grid .fh-panel p,
.field-handbook-home .fh-methodology p,
.field-handbook-home .fh-methodology .fh-note-card p,
.field-handbook-home .fh-calculator-bridge .fh-note-card p,
.field-handbook-home .fh-command-card p,
.field-handbook-home .fh-path-card p,
.field-handbook-home .fh-category-card p,
.field-handbook-home .fh-directory-card p,
.field-handbook-home .fh-card-legend__item span,
.field-handbook-page .fh-manual-group-card p,
.field-handbook-page .fh-family-card p{color:var(--fh-card-body)!important;}
.field-handbook-home .fh-intro-grid .fh-panel strong,
.field-handbook-home .fh-methodology strong,
.field-handbook-home .fh-path-card a,
.field-handbook-home .fh-command-card span,
.field-handbook-home .fh-directory-card small,
.field-handbook-home .fh-category-card .fh-kicker{color:#ffe19a!important;}

/* Coach/capture personality cards had enough personality but could wash out in dark grids. */
.field-handbook-home.fh-card-personality-ready .fh-command-card.fh-card--coach,
.field-handbook-home.fh-card-personality-ready .fh-path-card.fh-card--coach,
.field-handbook-home.fh-card-personality-ready .fh-command-card.fh-card--capture,
.field-handbook-home.fh-card-personality-ready .fh-path-card.fh-card--capture{
  background:linear-gradient(180deg,#18233a,#0a1322)!important;
  border-left:6px solid var(--fh-card-accent)!important;
  border-color:color-mix(in srgb,var(--fh-card-accent) 54%,rgba(226,232,240,.18))!important;
}

/* Personality badges: less haze, more readable on mobile. */
.fh-card-personality-ready .fh-card--takeaway::after,
.fh-card-personality-ready .fh-card--safety::after,
.fh-card-personality-ready .fh-card--action::after,
.fh-card-personality-ready .fh-card--ghost::after,
.fh-card-personality-ready .fh-card--reverse-trace::after,
.fh-card-personality-ready .fh-card--hmmmaai::after,
.fh-card-personality-ready .fh-card--qc::after,
.fh-card-personality-ready .fh-card--recipe::after,
.fh-card-personality-ready .fh-card--calculator::after,
.fh-card-personality-ready .fh-card--sourcebook::after,
.fh-card-personality-ready .fh-card--terminology::after,
.fh-card-personality-ready .fh-card--capture::after,
.fh-card-personality-ready .fh-card--coach::after{
  background:rgba(2,6,23,.88)!important;
  color:#ffffff!important;
  border-color:color-mix(in srgb,var(--fh-card-accent) 72%,rgba(255,255,255,.24))!important;
  opacity:1!important;
  text-shadow:none!important;
  box-shadow:0 8px 20px rgba(0,0,0,.22);
}

/* Light cards are reserved for notices/forms/matrices; make their text stronger, not hazy. */
.fh-foreword-card,
.fh-submit-request-cta,
.fh-gate-card,
.fh-gap-card,
.fh-coverage-row,
.fh-request-form fieldset,
.fh-form-builder,
.fh-builder-side .fh-content-section,
.fh-template-browser,
.fh-content-section,
.fh-related-card,
.fh-source-note{
  color:#0f172a;
}
.fh-foreword-card p,
.fh-submit-request-cta p,
.fh-gate-card p,
.fh-gap-card p,
.fh-coverage-main p,
.fh-coverage-calc span,
.fh-content-section p,
.fh-content-section li,
.fh-related-card li,
.fh-source-note p{color:#26364a!important;}
.fh-foreword-card h2,
.fh-submit-request-cta h2,
.fh-gate-card h3,
.fh-gap-card h3,
.fh-coverage-main h3,
.fh-content-section h2,
.fh-related-card h2,
.fh-source-note h2{color:#08111f!important;}
.fh-foreword-card:after,
.fh-submit-request-cta:after{color:rgba(15,23,42,.035)!important;}

/* Status and category chips need to read without zooming. */
.fh-status-chip-row span,
.fh-family-chip,
.fh-coverage-status,
.fh-template-filter,
.fh-card-legend__badge,
.fh-build-stamp{
  font-weight:1000;
  letter-spacing:.035em;
}
.fh-family-card>strong,
.fh-status-chip-row span,
.fh-family-chip{
  background:rgba(2,6,23,.78)!important;
  border-color:rgba(20,184,166,.45)!important;
  color:#d1fae5!important;
}
.fh-family-chip strong{color:#ffffff!important;}

/* Mobile tightening: larger touch targets, stronger body copy, fewer ghost-like effects. */
@media(max-width:760px){
  .field-handbook-page .fh-command-card,
  .field-handbook-page .fh-path-card,
  .field-handbook-page .fh-category-card,
  .field-handbook-page .fh-directory-card,
  .field-handbook-page .fh-manual-group-card,
  .field-handbook-page .fh-family-card,
  .field-handbook-page .fh-gap-card,
  .field-handbook-page .fh-coverage-row{min-height:auto;padding:18px;}
  .field-handbook-page .fh-command-card p,
  .field-handbook-page .fh-path-card p,
  .field-handbook-page .fh-category-card p,
  .field-handbook-page .fh-directory-card p,
  .field-handbook-page .fh-family-card p,
  .field-handbook-page .fh-coverage-main p{font-size:.98rem;line-height:1.55;}
  .fh-card-personality-ready .fh-card--takeaway::after,
  .fh-card-personality-ready .fh-card--safety::after,
  .fh-card-personality-ready .fh-card--action::after,
  .fh-card-personality-ready .fh-card--ghost::after,
  .fh-card-personality-ready .fh-card--reverse-trace::after,
  .fh-card-personality-ready .fh-card--hmmmaai::after,
  .fh-card-personality-ready .fh-card--qc::after,
  .fh-card-personality-ready .fh-card--recipe::after,
  .fh-card-personality-ready .fh-card--calculator::after,
  .fh-card-personality-ready .fh-card--sourcebook::after,
  .fh-card-personality-ready .fh-card--terminology::after,
  .fh-card-personality-ready .fh-card--capture::after,
  .fh-card-personality-ready .fh-card--coach::after{font-size:.72rem;padding:6px 9px;margin-bottom:12px;}
}


/* v33 Sticky™ + RCP doctrine additions */
.fh-sticky-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);gap:22px;align-items:center;}
.fh-sticky-identity img{width:100%;max-height:360px;object-fit:contain;filter:drop-shadow(0 20px 30px rgba(0,0,0,.26));}
.fh-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:16px;}
.fh-mini-card{border:1px solid rgba(15,23,42,.12);border-radius:18px;padding:16px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.07);}
.fh-mini-card strong{display:block;color:#0f172a;margin-bottom:6px;}
.fh-mini-card span,.fh-mini-card p{color:#475569;line-height:1.55;}
.fh-rcp-packet{border:1px solid rgba(20,184,166,.28);background:linear-gradient(180deg,#ecfeff,#f8fafc);border-radius:20px;padding:18px;}
.fh-tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.fh-tag-row span{border-radius:999px;border:1px solid rgba(20,184,166,.35);background:rgba(20,184,166,.10);color:#0f766e;font-weight:900;font-size:.76rem;letter-spacing:.04em;padding:6px 9px;text-transform:uppercase;}
@media(max-width:780px){.fh-sticky-identity{grid-template-columns:1fr}.fh-sticky-identity img{max-height:300px}.fh-mini-grid{grid-template-columns:1fr}}

/* v33m Manual RCP Packet Builder */
.fh-rcp-intro{
  border:1px solid rgba(20,184,166,.28);
  border-left:6px solid #14b8a6;
  border-radius:18px;
  background:linear-gradient(135deg,#ecfeff,#f0fdfa);
  padding:14px 16px;
  display:grid;
  gap:8px;
  margin-bottom:14px;
}
.fh-rcp-intro p{margin:0;color:#0f172a;line-height:1.55;}
.fh-form-grid select{
  width:100%;box-sizing:border-box;margin-top:6px;border:1px solid rgba(15,23,42,.18);border-radius:14px;padding:11px 12px;font:inherit;background:#fff;color:#0f172a;
}
.fh-rcp-table-wrap{overflow-x:auto;margin:14px 0;border-radius:18px;border:1px solid rgba(15,23,42,.12);background:#fff;}
.fh-rcp-table{width:100%;border-collapse:collapse;min-width:980px;}
.fh-rcp-table th,.fh-rcp-table td{border-bottom:1px solid rgba(15,23,42,.08);padding:9px;vertical-align:top;text-align:left;}
.fh-rcp-table th{background:#0f172a;color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;}
.fh-rcp-table input{width:100%;box-sizing:border-box;border:1px solid rgba(15,23,42,.16);border-radius:11px;padding:9px;font:inherit;min-width:88px;}
.fh-rcp-status{display:inline-flex;align-items:center;justify-content:center;min-width:104px;border-radius:999px;padding:7px 9px;font-size:.74rem;font-weight:1000;white-space:nowrap;border:1px solid rgba(15,23,42,.12);}
.fh-rcp-status--blank{background:#f8fafc;color:#64748b;}
.fh-rcp-status--need{background:#fffbeb;color:#92400e;border-color:rgba(245,158,11,.34);}
.fh-rcp-status--baseline{background:#eff6ff;color:#1d4ed8;border-color:rgba(59,130,246,.28);}
.fh-rcp-status--in{background:#ecfdf5;color:#047857;border-color:rgba(16,185,129,.32);}
.fh-rcp-status--low,.fh-rcp-status--high{background:#fef2f2;color:#b91c1c;border-color:rgba(239,68,68,.32);}
.fh-rcp-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0;}
.fh-rcp-summary{border:1px solid rgba(20,184,166,.25);border-left:6px solid #14b8a6;border-radius:18px;background:#f0fdfa;padding:14px 16px;margin-top:12px;}
.fh-rcp-summary h4{margin:.15rem 0 .4rem;color:#0f172a;}
.fh-rcp-summary p,.fh-rcp-summary li{color:#334155;line-height:1.55;}
.fh-rcp-report-pre{white-space:pre-wrap;border-radius:14px;background:#f8fafc;border:1px solid rgba(15,23,42,.1);padding:12px;color:#0f172a;line-height:1.55;}
@media(max-width:700px){.fh-rcp-table{min-width:860px}.fh-rcp-actions{display:grid}.fh-rcp-actions .fh-button{width:100%;justify-content:center}}
@media print{.fh-rcp-actions,.fh-rcp-table td:last-child,.fh-rcp-table th:last-child{display:none!important}.fh-rcp-table-wrap{overflow:visible;border:0}.fh-rcp-table{min-width:0;font-size:.78rem}.fh-rcp-intro,.fh-rcp-summary{break-inside:avoid}}

/* Field Handbook Rev v33m — Sticky asset + Guided RCP Packet Builder */
.fh-sticky-identity{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(180px,280px);
  align-items:center;
  gap:1.35rem;
}
.fh-sticky-identity img{
  display:block;
  width:100%;
  max-width:280px;
  height:auto;
  object-fit:contain;
  justify-self:center;
  filter:drop-shadow(0 18px 26px rgba(0,0,0,.25));
}
.fh-rcp-foundation,
.fh-rcp-active-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:.8rem;
}
.fh-rcp-foundation{margin:1rem 0;}
.fh-rcp-foundation label,
.fh-rcp-active-grid label,
.fh-rcp-table label{
  color:#0b1526;
  font-weight:800;
}
.fh-rcp-foundation input,
.fh-rcp-foundation textarea,
.fh-rcp-foundation select,
.fh-rcp-active-grid input,
.fh-rcp-active-grid textarea,
.fh-rcp-active-grid select{
  width:100%;
  margin-top:.35rem;
  border:1px solid rgba(15,23,42,.18);
  border-radius:12px;
  padding:.68rem .72rem;
  background:#fff;
  color:#0b1526;
  box-shadow:0 1px 0 rgba(15,23,42,.04);
}
.fh-rcp-wide{grid-column:1/-1;}
.fh-rcp-mode-card,
.fh-rcp-active-card,
.fh-rcp-selected,
.fh-rcp-empty{
  border:1px solid rgba(22,163,74,.24);
  background:linear-gradient(135deg,#f7fff2,#eefdf8);
  color:#0b1526;
  border-radius:18px;
  padding:1rem;
  margin:.85rem 0;
  box-shadow:0 14px 26px rgba(15,23,42,.08);
}
.fh-rcp-starter-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:.75rem;
  margin:1rem 0;
}
.fh-rcp-starter{
  appearance:none;
  text-align:left;
  border:1px solid rgba(15,23,42,.14);
  background:#fff;
  color:#0b1526;
  border-radius:16px;
  padding:.85rem;
  cursor:pointer;
  box-shadow:0 10px 20px rgba(15,23,42,.08);
}
.fh-rcp-starter strong,
.fh-rcp-starter span,
.fh-rcp-starter small{display:block;}
.fh-rcp-starter span{color:#0369a1;font-weight:800;margin:.2rem 0;}
.fh-rcp-starter small{color:#334155;line-height:1.35;}
.fh-rcp-starter:hover{transform:translateY(-1px);border-color:#22c55e;}
.fh-rcp-starter--used,
.fh-rcp-starter:disabled{
  opacity:.58;
  cursor:not-allowed;
  transform:none;
}
.fh-rcp-template-actions,
.fh-rcp-actions,
.fh-rcp-variable-nav{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.65rem;
  margin:.75rem 0;
}
.fh-rcp-variable-nav{
  justify-content:space-between;
  padding:.65rem .8rem;
  border-radius:999px;
  background:#0f172a;
  color:#f8fafc;
}
.fh-rcp-selected-list{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
}
.fh-rcp-selected-pill{
  border:1px solid rgba(15,23,42,.14);
  background:#fff;
  color:#0b1526;
  border-radius:999px;
  padding:.45rem .55rem;
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  cursor:pointer;
}
.fh-rcp-selected-pill.is-active{
  border-color:#f59e0b;
  box-shadow:0 0 0 3px rgba(245,158,11,.18);
}
.fh-rcp-status{
  display:inline-flex;
  align-items:center;
  white-space:nowrap;
  border-radius:999px;
  padding:.25rem .45rem;
  font-size:.75rem;
  font-weight:900;
  border:1px solid rgba(15,23,42,.14);
  background:#e2e8f0;
  color:#0f172a;
}
.fh-rcp-status--in{background:#dcfce7;color:#14532d;border-color:#86efac;}
.fh-rcp-status--low,
.fh-rcp-status--high{background:#fee2e2;color:#7f1d1d;border-color:#fca5a5;}
.fh-rcp-status--need{background:#fef3c7;color:#78350f;border-color:#fcd34d;}
.fh-rcp-status--baseline{background:#dbeafe;color:#1e3a8a;border-color:#93c5fd;}
.fh-rcp-status--blank{background:#e5e7eb;color:#374151;}
.fh-rcp-table-wrap{overflow-x:auto;max-width:100%;}
.fh-rcp-table{min-width:920px;width:100%;border-collapse:separate;border-spacing:0;}
.fh-rcp-table th{background:#0f172a;color:#f8fafc;text-align:left;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;padding:.75rem;}
.fh-rcp-table td{background:#fff;border-bottom:1px solid #e5e7eb;padding:.55rem;vertical-align:top;}
.fh-rcp-table input{width:100%;min-width:92px;border:1px solid #d1d5db;border-radius:10px;padding:.55rem;color:#0b1526;background:#fff;}
@media (max-width: 760px){
  .fh-sticky-identity{grid-template-columns:1fr;}
  .fh-sticky-identity img{max-width:220px;}
  .fh-rcp-variable-nav{border-radius:18px;align-items:stretch;}
  .fh-rcp-variable-nav span{width:100%;text-align:center;order:-1;}
}

/* Field Handbook Rev v33m — true Guided RCP Wizard */
.fh-rcp-mode-select{
  max-width:560px;
  margin:.85rem 0 1rem;
}
.fh-rcp-guided-wizard{
  display:block;
}
.fh-rcp-wizard-head{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:flex-start;
  border:1px solid rgba(20,184,166,.28);
  background:linear-gradient(135deg,#ecfeff,#f8fafc);
  border-radius:20px;
  padding:1rem;
  margin:.9rem 0;
  color:#0b1526;
}
.fh-rcp-wizard-head h4{margin:.15rem 0 .35rem;color:#0f172a;}
.fh-rcp-wizard-head p{margin:0;color:#334155;line-height:1.5;}
.fh-rcp-wizard-head>span{
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:.4rem .7rem;
  background:#0f172a;
  color:#f8fafc;
  font-weight:900;
  font-size:.78rem;
}
.fh-rcp-one-question{
  border:1px solid rgba(245,158,11,.28);
  border-left:6px solid #f59e0b;
  background:linear-gradient(135deg,#ffffff,#fff7ed);
  border-radius:22px;
  padding:1rem;
  margin:1rem 0;
  color:#0b1526;
  box-shadow:0 18px 34px rgba(15,23,42,.10);
}
.fh-rcp-one-question h3{margin:.15rem 0 .45rem;color:#0f172a;}
.fh-rcp-one-question p{color:#334155;line-height:1.55;}
.fh-rcp-one-question label{
  display:block;
  font-weight:900;
  color:#0b1526;
  margin:.85rem 0;
}
.fh-rcp-one-question input,
.fh-rcp-one-question textarea,
.fh-rcp-one-question select{
  width:100%;
  box-sizing:border-box;
  margin-top:.4rem;
  border:1px solid rgba(15,23,42,.18);
  border-radius:14px;
  padding:.76rem .8rem;
  color:#0b1526;
  background:#fff;
  font:inherit;
}
.fh-rcp-single-starter{
  border:1px solid rgba(20,184,166,.35);
  border-radius:18px;
  padding:1rem;
  background:#f0fdfa;
  margin:.9rem 0;
}
.fh-rcp-single-starter strong,
.fh-rcp-single-starter span,
.fh-rcp-single-starter small{display:block;}
.fh-rcp-single-starter strong{font-size:1.15rem;color:#0f172a;}
.fh-rcp-single-starter span{font-weight:900;color:#0369a1;margin:.25rem 0;}
.fh-rcp-single-starter p{margin:.35rem 0;color:#334155;}
.fh-rcp-single-starter small{color:#475569;line-height:1.45;}
.fh-rcp-navline{
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
  align-items:center;
  margin-top:1rem;
}
.fh-rcp-variable-progress{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:.75rem;
  margin-bottom:.75rem;
  color:#0f172a;
  font-weight:900;
}
.fh-rcp-summary--inline{
  margin:.8rem 0;
}
@media(max-width:700px){
  .fh-rcp-wizard-head{display:grid;}
  .fh-rcp-wizard-head>span{justify-self:start;}
  .fh-rcp-navline{display:grid;}
  .fh-rcp-navline .fh-button{width:100%;justify-content:center;}
  .fh-rcp-variable-progress{display:grid;}
}

/* Field Handbook Rev v33m — Guided RCP visibility + range-label polish */
.fh-rcp-one-question .fh-rcp-navline .fh-button--secondary,
.fh-rcp-active-card + .fh-rcp-navline .fh-button--secondary,
.fh-rcp-guided .fh-button--secondary{
  background:#0f172a !important;
  color:#ffffff !important;
  border-color:rgba(15,23,42,.42) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.12);
}
.fh-rcp-one-question .fh-rcp-navline .fh-button--secondary:hover,
.fh-rcp-guided .fh-button--secondary:hover{
  background:#1e293b !important;
  color:#ffffff !important;
}
.fh-rcp-one-question .fh-rcp-navline .fh-button:disabled,
.fh-rcp-guided .fh-button:disabled{
  opacity:.42 !important;
  cursor:not-allowed;
  filter:grayscale(.25);
}
.fh-rcp-field-help{
  display:block;
  margin:.42rem 0 0;
  color:#475569;
  font-size:.82rem;
  font-weight:700;
  line-height:1.35;
}

/* Field Handbook Rev v33m — RCP Packet Report polish */
.fh-rcp-report-preview .fh-report-cover{margin-top:0;}
.fh-rcp-report-table{margin-top:8px;}
.fh-rcp-report-table .fh-rcp-table{min-width:760px;}
.fh-rcp-draft-warning ul{margin:.25rem 0 0 1.1rem;color:#7c2d12;}
.fh-rcp-report-preview .fh-report-section-head h3{font-size:1.25rem;}
@media print{
  .fh-card--terminology{display:none!important;}
  .fh-rcp-report-preview{display:block!important;}
  .fh-rcp-report-preview .fh-report-cover,
  .fh-rcp-report-preview section{break-inside:avoid;}
  .fh-rcp-report-preview .fh-rcp-table-wrap{overflow:visible!important;}
  .fh-rcp-report-preview .fh-rcp-table{min-width:0!important;font-size:.72rem;}
  .fh-rcp-report-preview .fh-rcp-summary{background:#fff!important;border-color:#cbd5e1!important;}
}

/* Field Handbook Rev v33m — RCP naming trainer + tracker follow-up */
.fh-rcp-name-trainer{
  margin: 0.85rem 0;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(12, 180, 170, 0.45);
  border-radius: 1rem;
  background: rgba(3, 46, 56, 0.92);
  color: #eafcff;
  display: grid;
  gap: 0.35rem;
  box-shadow: 0 14px 32px rgba(0,0,0,0.18);
}
.fh-rcp-name-trainer strong{
  color: #ffd56b;
  letter-spacing: 0.03em;
}
.fh-rcp-name-trainer span{
  color: #d8f6f8;
  line-height: 1.45;
}
.fh-rcp-tracker-card{
  border-color: rgba(29, 184, 130, 0.55);
  background: linear-gradient(180deg, rgba(239,255,247,0.96), rgba(248,255,252,0.98));
}
.fh-rcp-tracker-report .fh-report-meta-grid{
  margin-bottom: 0.85rem;
}
@media print{
  .fh-rcp-name-trainer{box-shadow:none;}
}

/* Field Handbook Rev v33o — RCP workspace sidebar containment
   Keep the A.I.R.O.N. Bridge / Safety cards from overlapping the active RCP panel
   on laptop and narrow desktop widths. */
.fh-form-builder-shell{
  grid-template-columns:minmax(0, 1fr) minmax(280px, 360px);
}
.fh-form-builder,
.fh-builder-side,
.fh-builder-side .fh-content-section{
  min-width:0;
}
.fh-builder-side{
  z-index:1;
}
.fh-form-builder{
  position:relative;
  z-index:2;
}
@media(max-width:1180px){
  .fh-form-builder-shell{
    grid-template-columns:1fr;
  }
  .fh-builder-side{
    position:static;
    top:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:16px;
  }
}
@media(max-width:760px){
  .fh-builder-side{
    grid-template-columns:1fr;
  }
}
@media print{
  .fh-builder-side{display:none!important;}
}


/* Field Handbook Rev v33q — User Manual cross-links and return CTA */
.fh-page-help-card{
  margin: 1rem auto;
  max-width: 1100px;
  padding: .9rem 1rem;
  border: 1px solid rgba(82, 211, 203, .35);
  border-radius: 1rem;
  background: linear-gradient(135deg, rgba(5, 44, 62, .96), rgba(15, 23, 42, .96));
  color: #e8fbff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  box-shadow: 0 14px 32px rgba(0,0,0,.18);
}
.fh-page-help-card strong{color:#ffd76b;letter-spacing:.02em;}
.fh-page-help-card span{color:#d8edf2;line-height:1.35;}
.fh-page-help-card .fh-button{white-space:nowrap;}
.fh-manual-return{
  border-color: rgba(255, 200, 83, .55);
  background: linear-gradient(135deg, rgba(255,250,230,.98), rgba(239,255,252,.96));
}
.fh-manual-return-inline{margin-top:1rem;}
@media(max-width:760px){
  .fh-page-help-card{display:grid;align-items:start;}
  .fh-page-help-card .fh-button{width:100%;justify-content:center;}
}
@media print{.fh-page-help-card,.fh-manual-return,.fh-manual-return-inline{display:none!important;}}
