/* Zenity Registry — premium black-glass visual system */
:root {
  --bg: #010202;
  --bg2: #050606;
  --panel: rgba(10,12,13,.88);
  --panel2: rgba(4,5,5,.94);
  --glass: rgba(255,255,255,.028);
  --line: rgba(210,218,224,.13);
  --line2: rgba(210,218,224,.26);
  --line3: rgba(210,218,224,.06);
  --silver: #d8dfe3;
  --silver2: #aeb8be;
  --soft: #8a9399;
  --muted: #5a6468;
  --amber: #c9963a;
  --amber2: #e8b85a;
  --amber3: #ffd078;
  --danger: #c96060;
  --ok: #6ab890;
  --warn: #d4aa44;
  --info: #5a8fb8;
  --shadow: 0 32px 90px rgba(0,0,0,.72), 0 8px 24px rgba(0,0,0,.44);
  --shadow-sm: 0 8px 28px rgba(0,0,0,.5);
  --r: 18px;
  --r-sm: 12px;
  --max-w: 1320px;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { min-height: 100%; background: #000; scroll-behavior: auto; overflow-anchor: none; }
body {
  min-height: 100vh;
  color: var(--silver);
  background: radial-gradient(ellipse 120% 60% at 60% -10%, #141618 0%, #070809 40%, #010202 75%);
  overflow-x: hidden;
}
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; border: none; background: none; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }

/* Ambient */
.ambient { position: fixed; inset: 0; overflow: hidden; pointer-events: none; z-index: 0; }
.ambient::before {
  content: "";
  position: absolute; inset: -50%;
  background: conic-gradient(from 50deg, transparent 0%, rgba(255,255,255,.038) 15%, transparent 30%, rgba(201,150,58,.04) 50%, transparent 70%);
  filter: blur(80px);
  animation: ambRotate 40s linear infinite;
}
.ambient span {
  position: absolute; border-radius: 50%;
  filter: blur(12px); opacity: .18;
  background: radial-gradient(circle at 35% 30%, rgba(255,255,255,.7), rgba(80,90,95,.1) 50%, transparent 75%);
}
.ambient span:nth-child(1) { width: 50vw; height: 28vw; left: -10vw; top: 4vh; animation: ambDrift 22s ease-in-out infinite alternate; }
.ambient span:nth-child(2) { width: 44vw; height: 26vw; right: -14vw; top: 18vh; animation: ambDrift 28s ease-in-out infinite alternate-reverse; }
.ambient span:nth-child(3) { width: 38vw; height: 22vw; left: 28vw; bottom: -6vw; opacity: .1; animation: ambDrift 26s ease-in-out infinite alternate; }
@keyframes ambRotate { to { transform: rotate(360deg); } }
@keyframes ambDrift { to { transform: translate3d(3vw, 2.5vh, 0) scale(1.07); } }

/* Utilities */
.sr-only { position: absolute!important; width: 1px!important; height: 1px!important; padding: 0!important; margin: -1px!important; overflow: hidden!important; clip: rect(0,0,0,0)!important; white-space: nowrap!important; border: 0!important; }
.eyebrow { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; color: var(--amber); font-weight: 700; }
.micro { font-size: 11px; color: var(--muted); line-height: 1.5; }
.lead { font-size: 17px; line-height: 1.7; color: var(--silver2); }
.definition { font-size: 13px; line-height: 1.65; color: var(--silver2); }

/* Top bar */
#app { position: relative; z-index: 1; }

.topnav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 50;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 32px;
  height: 62px;
  background: rgba(2,3,3,.82);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(28px);
}
.topnav-brand {
  display: flex; align-items: center; gap: 13px;
}
.topnav-mark {
  width: 34px; height: 34px; border-radius: 50%;
  display: grid; place-items: center;
  border: 1px solid rgba(232,184,90,.38);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  font-size: 13px; font-weight: 700; letter-spacing: .04em;
  color: var(--amber3);
  box-shadow: 0 0 22px rgba(201,150,58,.12), inset 0 1px 0 rgba(255,255,255,.06);
  flex-shrink: 0;
}
.topnav-wordmark {
  display: flex; flex-direction: column; gap: 1px;
}
.topnav-name {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  font-size: 13px; letter-spacing: .18em; font-weight: 700;
  color: var(--silver); line-height: 1;
}
.topnav-sub {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  font-size: 8.5px; letter-spacing: .14em; text-transform: uppercase;
  color: var(--silver2); line-height: 1;
}
.topnav-actions { display: flex; align-items: center; gap: 10px; }
.btn { display: inline-flex; align-items: center; gap: 7px; padding: 9px 16px; border-radius: var(--r-sm); font-size: 12px; font-weight: 600; letter-spacing: .04em; border: 1px solid var(--line); background: var(--glass); color: var(--silver2); transition: border-color .15s, background .15s, color .15s; cursor: pointer; }
.btn:hover { border-color: var(--line2); background: rgba(255,255,255,.055); color: var(--silver); }
.btn-primary { background: linear-gradient(135deg, var(--amber3), #8b5e22); color: #0a0803; border-color: rgba(232,184,90,.5); font-weight: 700; box-shadow: 0 8px 22px rgba(201,150,58,.14); }
.btn-primary:hover { box-shadow: 0 10px 28px rgba(201,150,58,.22); }
.btn-ghost { border-color: transparent; background: transparent; }
.btn-ghost:hover { border-color: var(--line); background: var(--glass); }
.btn-danger { border-color: rgba(201,96,96,.3); color: #e08888; }
.btn-danger:hover { border-color: rgba(201,96,96,.55); }
.btn-sm { padding: 7px 12px; font-size: 11px; border-radius: 9px; }
.btn-wide { width: 100%; justify-content: center; }
.mode-pill {
  display: flex; border: 1px solid var(--line); border-radius: 999px; overflow: hidden; background: rgba(0,0,0,.4);
}
.mode-pill button {
  padding: 7px 14px; font-size: 11px; letter-spacing: .07em; font-weight: 600; color: var(--muted);
  background: transparent; border: none; transition: color .15s, background .15s;
}
.mode-pill button.active { background: rgba(210,218,224,.1); color: var(--silver); }

/* Card */
.card {
  border: 1px solid var(--line);
  border-radius: var(--r);
  background: linear-gradient(145deg, var(--panel), var(--panel2));
  box-shadow: var(--shadow), inset 0 1px 0 rgba(255,255,255,.045);
  backdrop-filter: blur(20px);
  padding: 22px;
}
.card-shine { position: relative; overflow: hidden; }
.card-shine::before { content: ""; position: absolute; inset: 0 0 auto; height: 1px; background: linear-gradient(90deg, transparent, rgba(255,213,120,.55), transparent); }

/* Badge / pill */
.badge {
  display: inline-flex; align-items: center; gap: 6px;
  border: 1px solid var(--line); border-radius: 999px;
  padding: 5px 10px; font-size: 10px; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  letter-spacing: .08em; color: var(--soft);
}
.badge::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--muted); }
.badge.ok::before { background: var(--ok); box-shadow: 0 0 10px var(--ok); }
.badge.warn::before { background: var(--warn); }
.badge.block::before { background: var(--danger); }
.badge.info::before { background: var(--info); }

/* Status badge */
.state-badge {
  display: inline-flex; padding: 4px 9px;
  border-radius: 999px; font-size: 10px; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  border: 1px solid var(--line); white-space: nowrap;
}
.state-badge.distinguished, .state-badge.distinguished-command { border-color: rgba(255,208,120,.5); color: var(--amber3); }
.state-badge.verified, .state-badge.verified-proficiency { border-color: rgba(106,184,144,.36); color: #8ddbb4; }
.state-badge.established { border-color: rgba(90,143,184,.36); color: #8ab8d8; }
.state-badge.needs-review { border-color: rgba(201,96,96,.42); color: #e09898; }

/* Ability meter */
.ability-meter { height: 6px; background: rgba(255,255,255,.04); border-radius: 999px; overflow: hidden; }
.ability-meter span { display: block; height: 100%; background: linear-gradient(90deg, #5a3a10, var(--amber3)); box-shadow: 0 0 14px rgba(201,150,58,.3); transition: width .5s ease; }

/* Issue */
.issue { border: 1px solid var(--line); border-left: 3px solid var(--muted); border-radius: 13px; padding: 13px 15px; background: rgba(0,0,0,.22); margin-bottom: 8px; }
.issue.blocking, .issue.error { border-left-color: var(--danger); }
.issue.warning { border-left-color: var(--warn); }
.issue.info { border-left-color: var(--info); }
.issue.ok { border-left-color: var(--ok); }
.issue strong { display: block; margin-bottom: 4px; font-size: 12px; }
.issue p { margin: 0; color: var(--silver2); font-size: 12px; line-height: 1.5; }

/* Form */
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.form-grid.one-col { grid-template-columns: 1fr; }
.field { display: grid; gap: 6px; }
.field.full { grid-column: 1/-1; }
.field label { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 9px; text-transform: uppercase; letter-spacing: .16em; color: var(--muted); font-weight: 700; }
.field input, .field select, .field textarea {
  width: 100%; border: 1px solid var(--line); border-radius: 10px;
  background: rgba(0,0,0,.4); padding: 10px 12px; outline: none; color: var(--silver);
  font-size: 13px; transition: border-color .15s;
}
.field input:focus, .field select:focus, .field textarea:focus { border-color: rgba(201,150,58,.55); box-shadow: 0 0 0 3px rgba(201,150,58,.07); }
.field textarea { min-height: 90px; resize: vertical; }
.check-row { display: flex; align-items: flex-start; gap: 10px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: rgba(0,0,0,.22); }
.check-row input { margin-top: 2px; accent-color: var(--amber); flex-shrink: 0; }
.check-row span { font-size: 12px; color: var(--silver2); line-height: 1.45; }
.check-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 7px; }

/* Token / evidence list */
.evidence-list { display: flex; flex-wrap: wrap; gap: 6px; }
.token { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 9px; letter-spacing: .05em; border: 1px solid var(--line); border-radius: 999px; padding: 4px 9px; color: var(--muted); }
.token.active-token { border-color: rgba(201,150,58,.35); color: var(--amber2); }

/* Empty */
.empty { text-align: center; padding: 40px 20px; color: var(--muted); font-size: 13px; }

/* Save indicator */
.save-indicator { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 10px; letter-spacing: .12em; color: var(--muted); }
.save-indicator.dirty { color: var(--amber2); }

/* Toast */
.toast {
  position: fixed; right: 20px; bottom: 20px; z-index: 200;
  border: 1px solid rgba(201,150,58,.38); border-radius: 12px;
  padding: 12px 16px; background: #0d0f0f; color: var(--silver);
  box-shadow: var(--shadow); font-size: 13px;
  animation: toastIn .22s ease-out;
}
.toast.error { border-color: rgba(201,96,96,.5); }
@keyframes toastIn { from { opacity: 0; transform: translateY(10px); } }

/* Modal */
.modal-overlay {
  position: fixed; inset: 0; background: rgba(0,0,0,.78);
  backdrop-filter: blur(12px); display: grid; place-items: center;
  padding: 20px; z-index: 100;
}
.modal-box { width: min(560px,100%); max-height: 88vh; overflow: auto; }
.modal-box h3 { font-size: 22px; letter-spacing: -.03em; margin-bottom: 14px; }
.modal-actions { display: flex; gap: 9px; justify-content: flex-end; margin-top: 20px; }

/* =============================================
   PUBLIC REGISTRY — LANDING
   ============================================= */

.registry-landing {
  padding-top: 62px;
  min-height: 100vh;
}

/* Hero */
.registry-hero {
  position: relative;
  min-height: calc(100vh - 62px);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  text-align: center;
  padding: 80px 32px 60px;
  overflow: hidden;
}
.registry-hero::before {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 80% 55% at 50% 42%, rgba(201,150,58,.07) 0%, transparent 65%);
  pointer-events: none;
}
.hero-eyebrow { margin-bottom: 22px; }
.hero-title {
  font-size: clamp(30px, 5vw, 68px);
  font-weight: 700;
  letter-spacing: -.03em;
  line-height: 1.02;
  color: var(--silver);
  margin-bottom: 28px;
  max-width: 820px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
}
.hero-title em { font-style: normal; color: var(--amber2); }
.hero-statement {
  font-size: 16px; line-height: 1.75; color: var(--silver);
  max-width: 600px; margin: 0 auto 16px;
}
.hero-statement--strong {
  font-size: 16px; color: var(--silver); font-weight: 400;
}
.hero-statement--secondary {
  font-size: 14px; color: var(--silver2); margin-bottom: 36px;
}
.hero-cta { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; }

/* Registry grid */
.registry-section {
  max-width: var(--max-w);
  margin: 0 auto;
  padding: 60px 32px 80px;
}
.section-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 32px; }
.section-header h2 { font-size: 28px; letter-spacing: -.04em; }
.section-header p { font-size: 13px; color: var(--muted); max-width: 380px; text-align: right; }

/* Filter bar */
.filter-bar {
  display: flex; gap: 9px; flex-wrap: wrap; margin-bottom: 28px;
  align-items: center;
}
.filter-select {
  border: 1px solid var(--line); border-radius: 10px;
  background: rgba(0,0,0,.45); padding: 9px 12px;
  font-size: 12px; color: var(--silver2); outline: none;
  cursor: pointer;
}
.filter-select:focus { border-color: rgba(201,150,58,.42); }

/* Verification note */
.registry-verif-note {
  font-size: 13px; color: var(--silver2); line-height: 1.65;
  border-left: 2px solid rgba(201,150,58,.35);
  padding-left: 14px;
  margin-bottom: 8px;
  max-width: 680px;
}

/* Closing section */
.registry-closing {
  border-top: 1px solid var(--line3);
  padding-top: 40px;
  max-width: 720px;
}
.registry-closing-text {
  font-size: 14px; color: var(--silver2); line-height: 1.75;
}

/* Practitioner cards */
.practitioner-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;
}
.prac-card {
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(160deg, rgba(10,12,13,.9), rgba(4,5,5,.96));
  box-shadow: var(--shadow-sm), inset 0 1px 0 rgba(255,255,255,.04);
  overflow: hidden;
  display: flex; flex-direction: column;
  transition: border-color .2s, box-shadow .2s;
  cursor: pointer;
}
.prac-card:hover { border-color: rgba(201,150,58,.3); box-shadow: 0 24px 60px rgba(0,0,0,.6), 0 0 0 1px rgba(201,150,58,.12); }
.prac-card:focus-visible { outline: 2px solid var(--amber2); outline-offset: 3px; }

/* Structural accent variants */
.prac-card--directional { border-bottom: 2px solid rgba(255,208,120,.18); }
.prac-card--continuous { border-bottom: 2px solid rgba(180,210,200,.12); }
.prac-card--signal { border-bottom: 2px solid rgba(180,190,210,.1); }

.prac-sig-area {
  height: 220px; position: relative; overflow: hidden;
  background: radial-gradient(ellipse 80% 70% at 50% 55%, rgba(201,150,58,.05), transparent 65%), #030404;
}
.prac-sig-area svg { width: 100%; height: 100%; display: block; }
.prac-body { padding: 20px; flex: 1; display: flex; flex-direction: column; gap: 12px; }
.prac-id { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 9px; letter-spacing: .22em; color: var(--amber); }
.prac-title { font-size: 19px; letter-spacing: -.03em; line-height: 1.12; color: var(--silver); font-weight: 700; }
.prac-capability {
  font-size: 13px; color: var(--silver2); line-height: 1.7;
  margin: 0; border-top: 1px solid var(--line3); padding-top: 10px;
}
.prac-domain-row {
  display: flex; align-items: center; gap: 7px; flex-wrap: wrap;
  font-size: 12px;
}
.prac-domain-row--sec { opacity: .8; }
.prac-domain-label {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 9px; letter-spacing: .1em;
  color: var(--muted); text-transform: uppercase;
}
.prac-domain-name { color: var(--silver); font-size: 12px; }
.prac-badges { display: flex; flex-wrap: wrap; gap: 5px; border-top: 1px solid var(--line3); padding-top: 10px; }
.prac-footer { padding: 0 20px 20px; }

/* Full public profile */
.public-profile-page { padding-top: 62px; }

.profile-hero {
  position: relative;
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(0,1fr) 480px;
  align-items: center;
  padding: 100px 64px 80px;
  gap: 60px;
  max-width: 1400px;
  margin: 0 auto;
}
.profile-identity {}
.profile-public-id { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 10px; letter-spacing: .22em; color: var(--amber); margin-bottom: 16px; }
.profile-hero-title {
  font-size: clamp(36px, 5.5vw, 72px);
  font-weight: 700;
  letter-spacing: -.06em;
  line-height: .92;
  margin-bottom: 16px;
}
.profile-verification { display: flex; align-items: center; gap: 10px; margin-bottom: 22px; flex-wrap: wrap; }
.profile-declaration { font-size: 16px; line-height: 1.72; color: var(--silver2); max-width: 540px; }

.profile-sig-panel {
  position: relative;
  background: radial-gradient(ellipse 90% 80% at 50% 50%, rgba(201,150,58,.07), transparent 65%), #020303;
  border: 1px solid var(--line);
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 4/5;
  max-height: 620px;
  box-shadow: var(--shadow);
  display: flex; flex-direction: column;
  justify-content: flex-end;
}
.profile-sig-panel svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.profile-sig-caption {
  position: relative; z-index: 1;
  padding: 20px 22px;
  background: linear-gradient(0deg, rgba(2,3,3,.88) 0%, transparent 100%);
  display: flex; flex-wrap: wrap; gap: 6px;
}

/* Profile sections */
.profile-content {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 32px 80px;
}
.profile-section {
  border-top: 1px solid var(--line3);
  padding-top: 52px;
  margin-top: 52px;
}
.profile-section:first-child { border-top: none; padding-top: 0; margin-top: 0; }
.profile-section-label { margin-bottom: 20px; }
.profile-section h3 { font-size: 22px; letter-spacing: -.04em; margin: 8px 0 14px; }

/* Constellation */
.constellation-wrap {
  position: relative;
  height: 320px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: radial-gradient(ellipse 80% 70% at 50% 50%, rgba(201,150,58,.05), transparent 62%), #020303;
  overflow: hidden;
  margin-bottom: 24px;
}
.constellation-wrap svg { width: 100%; height: 100%; display: block; }

/* Mastery cards */
.mastery-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.mastery-card {
  border: 1px solid var(--line);
  border-radius: var(--r);
  background: linear-gradient(160deg, rgba(10,12,13,.9), rgba(4,5,5,.96));
  padding: 20px;
  position: relative; overflow: hidden;
}
.mastery-card::after { content: ""; position: absolute; inset: 0 0 auto; height: 1px; background: linear-gradient(90deg, transparent, rgba(255,208,120,.45), transparent); }
.mastery-card-label { margin-bottom: 10px; }
.mastery-card h4 { font-size: 15px; letter-spacing: -.02em; margin: 6px 0 4px; }
.mastery-card .capability { font-size: 13px; color: var(--silver2); line-height: 1.55; }
.mastery-card .expression { font-size: 12px; color: var(--soft); font-style: italic; margin-top: 9px; line-height: 1.5; }

/* Narrative */
.narrative-block { font-size: 15px; line-height: 1.78; color: var(--silver2); }
.narrative-block + .narrative-block { margin-top: 18px; }

/* Lineage */
.lineage-card {
  border: 1px solid rgba(201,150,58,.25);
  border-radius: var(--r);
  background: linear-gradient(140deg, rgba(201,150,58,.07), rgba(0,0,0,.3));
  padding: 26px;
}
.lineage-card h4 { font-size: 17px; margin-bottom: 12px; }
.lineage-card p { font-size: 13px; color: var(--silver2); line-height: 1.65; }
.lineage-card p + p { margin-top: 10px; }

/* Authenticity */
.authenticity-block {
  border-top: 1px solid var(--line3);
  padding-top: 30px;
  margin-top: 30px;
  text-align: center;
}
.authenticity-block p { font-size: 11px; color: var(--muted); line-height: 1.65; max-width: 560px; margin: 8px auto 0; }

/* Back navigation */
.back-bar {
  position: sticky; top: 62px; z-index: 10;
  padding: 12px 32px;
  border-bottom: 1px solid var(--line3);
  background: rgba(2,3,3,.72); backdrop-filter: blur(20px);
}
.back-bar-inner { max-width: var(--max-w); margin: 0 auto; }



/* =============================================
   PUBLIC AUDIENCE TRANSLATION REPAIR v2.1
   ============================================= */
.public-copy-label {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  font-size: 9px;
  line-height: 1.4;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--amber2);
  margin-bottom: 7px;
}

.prac-name {
  color: var(--silver2);
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-top: -3px;
}
.prac-story-block {
  border-top: 1px solid var(--line3);
  padding-top: 12px;
}
.prac-story-block--meaning {
  border-top: 0;
  padding-top: 0;
}
.prac-capability,
.prac-relevance {
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
}
.prac-capability {
  color: var(--silver);
  border-top: 0;
  padding-top: 0;
}
.prac-relevance { color: var(--silver2); }

.profile-display-name {
  color: var(--silver2);
  font-size: 14px;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin: -7px 0 10px;
}
.hero-human-label {
  margin: 24px 0 8px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  color: var(--amber2);
  font-size: 9px;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.profile-leading-command {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 22px;
  padding-top: 16px;
  border-top: 1px solid var(--line3);
  color: var(--silver2);
  font-size: 12px;
}
.profile-leading-command > span {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  font-size: 9px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--muted);
}
.profile-leading-command strong { color: var(--silver); }
.profile-leading-command b { font-weight: 500; }
.profile-graphic-caption {
  flex-basis: 100%;
  color: var(--silver2);
  font-size: 11px;
  line-height: 1.45;
  margin-bottom: 6px;
}
.profile-content--wide { max-width: 1080px; }
.profile-section--opening { margin-top: 0; }
.profile-section-intro { max-width: 760px; margin-bottom: 22px; }

.audience-translation-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.audience-translation-card {
  position: relative;
  min-height: 260px;
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 26px;
  background: linear-gradient(150deg, rgba(14,16,17,.92), rgba(4,5,5,.96));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), var(--shadow-sm);
  overflow: hidden;
}
.audience-translation-card::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,208,120,.55), transparent);
}
.audience-translation-card--woman {
  background: linear-gradient(150deg, rgba(17,15,12,.94), rgba(4,5,5,.96));
}
.audience-translation-card h3 {
  font-size: 22px;
  line-height: 1.16;
  margin: 8px 0 16px;
}
.audience-translation-card p {
  color: var(--silver2);
  font-size: 15px;
  line-height: 1.78;
}

.capability-demo-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.capability-demo-card {
  border: 1px solid var(--line);
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(160deg, rgba(9,11,12,.95), rgba(3,4,4,.98));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
.capability-demo-art {
  height: 190px;
  border-bottom: 1px solid var(--line3);
  background: #020303;
}
.capability-demo-art svg { display: block; width: 100%; height: 100%; }
.capability-demo-copy { padding: 17px; }
.capability-demo-copy h4 {
  font-size: 15px;
  margin: 10px 0 7px;
  color: var(--silver);
}
.capability-demo-copy p {
  color: var(--silver2);
  font-size: 12px;
  line-height: 1.55;
}
.demo-flow {
  stroke-dasharray: 10 8;
  animation: publicDemoFlow 9s linear infinite;
}
.demo-pulse { animation: publicDemoPulse 3.2s ease-in-out infinite; transform-origin: center; }
.demo-delay-1 { animation-delay: .5s; }
.demo-delay-2 { animation-delay: 1s; }
.demo-delay-3 { animation-delay: 1.5s; }
@keyframes publicDemoFlow { to { stroke-dashoffset: -180; } }
@keyframes publicDemoPulse { 0%,100% { opacity: .95; } 50% { opacity: .28; } }

.mastery-grid--public { gap: 18px; }
.mastery-card--public { padding: 24px; }
.mastery-card--public .mastery-card-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.mastery-layer {
  border-top: 1px solid var(--line3);
  padding-top: 14px;
  margin-top: 14px;
}
.mastery-layer > span {
  display: block;
  margin-bottom: 6px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  color: var(--muted);
  font-size: 9px;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.mastery-layer p {
  color: var(--silver2);
  font-size: 13px;
  line-height: 1.68;
}
.mastery-layer--woman {
  border-left: 2px solid rgba(201,150,58,.34);
  padding-left: 14px;
}
.mastery-layer--woman p { color: var(--silver); }
.mastery-layer--personal p { color: var(--soft); }
.category-public-card h4 {
  color: var(--amber2);
  font-size: 17px;
  margin: 8px 0 2px;
}

.standing-grid {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 18px;
}
.standing-card {
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 24px;
  background: rgba(5,6,6,.72);
}
.standing-card--now {
  background: linear-gradient(150deg, rgba(201,150,58,.07), rgba(5,6,6,.85));
}
.standing-level {
  font-size: 31px;
  letter-spacing: -.04em;
  color: var(--amber3);
  margin: 8px 0 17px;
}
.standing-card p {
  color: var(--silver2);
  font-size: 14px;
  line-height: 1.72;
}
.standing-support { margin-top: 10px; color: var(--soft)!important; }
.standing-note {
  display: block;
  margin-top: 16px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.55;
}

.narrative-block--large { font-size: 17px; line-height: 1.85; }
.authentic-development-card {
  border: 1px solid rgba(201,150,58,.28);
  border-radius: 20px;
  padding: 28px;
  background:
    radial-gradient(circle at 90% 10%, rgba(201,150,58,.09), transparent 38%),
    linear-gradient(145deg, rgba(13,12,10,.94), rgba(3,4,4,.98));
}
.authentic-development-card h3 { font-size: 24px; margin: 10px 0 16px; }
.authentic-development-card p { color: var(--silver2); font-size: 15px; line-height: 1.8; }
.lineage-card--expanded { padding: 30px; }
.lineage-card--expanded h3 { font-size: 24px; }
.lineage-card--expanded > p { font-size: 15px; line-height: 1.8; }
.lineage-principle {
  display: grid;
  gap: 5px;
  border-top: 1px solid rgba(201,150,58,.18);
  margin-top: 20px;
  padding-top: 18px;
}
.lineage-principle strong { color: var(--amber3); font-size: 14px; }
.lineage-principle span { color: var(--silver2); font-size: 13px; line-height: 1.65; }
.profile-section--closing { text-align: center; }
.narrative-block--closing {
  max-width: 820px;
  margin: 0 auto;
  color: var(--silver);
  font-size: 18px;
  line-height: 1.9;
}


/* =============================================
   BUILDER
   ============================================= */

.builder-layout {
  padding-top: 62px;
  display: grid;
  grid-template-columns: 64px minmax(0,1fr) 320px;
  min-height: 100vh;
}

/* Step rail */
.step-rail {
  position: sticky; top: 62px; height: calc(100vh - 62px);
  border-right: 1px solid var(--line);
  background: rgba(4,5,5,.92); backdrop-filter: blur(20px);
  display: flex; flex-direction: column; align-items: center;
  padding: 18px 0; gap: 4px; overflow-y: auto; z-index: 4;
}
.step-dot {
  width: 40px; height: 40px; border-radius: 50%;
  display: grid; place-items: center;
  border: 1px solid var(--line);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 10px;
  color: var(--muted); background: transparent;
  cursor: pointer; transition: border-color .15s, color .15s, background .15s;
  flex-shrink: 0;
}
.step-dot:hover { border-color: var(--line2); color: var(--silver2); }
.step-dot.active { border-color: rgba(201,150,58,.55); color: var(--amber2); background: rgba(201,150,58,.09); }
.step-dot.done { border-color: rgba(106,184,144,.35); color: var(--ok); }
.step-dot.warn-dot { border-color: rgba(212,170,68,.4); color: var(--warn); }
.step-connector { width: 1px; height: 14px; background: var(--line3); flex-shrink: 0; }

/* Builder main */
.builder-main {
  padding: 28px 32px 80px;
  overflow: visible;
}
.builder-header {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 20px;
  margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--line3);
}
.builder-header h2 { font-size: 26px; letter-spacing: -.045em; margin-top: 4px; }
.builder-header-actions { display: flex; gap: 8px; flex-wrap: wrap; }

.prac-switcher { display: flex; gap: 8px; align-items: center; }
.prac-switcher select {
  border: 1px solid var(--line); border-radius: 10px;
  background: rgba(0,0,0,.45); padding: 9px 12px;
  font-size: 12px; outline: none; color: var(--silver); cursor: pointer;
}
.prac-switcher select:focus { border-color: rgba(201,150,58,.42); }

/* Builder content area */
.step-content { min-height: 400px; }

/* Reasoning drawer */
.reasoning-drawer {
  position: sticky; top: 62px; height: calc(100vh - 62px);
  border-left: 1px solid var(--line);
  background: rgba(4,5,5,.92); backdrop-filter: blur(20px);
  overflow-y: auto; padding: 20px 16px;
  z-index: 3;
}
.reasoning-drawer h4 { font-size: 13px; letter-spacing: -.01em; margin: 0 0 12px; }
.reasoning-section { margin-bottom: 20px; }
.reasoning-label { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 9px; letter-spacing: .15em; text-transform: uppercase; color: var(--muted); margin-bottom: 8px; }
.reasoning-row { display: flex; justify-content: space-between; align-items: baseline; padding: 6px 0; border-bottom: 1px solid var(--line3); font-size: 11px; color: var(--silver2); gap: 8px; }
.reasoning-row:last-child { border-bottom: none; }
.reasoning-val { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 10px; color: var(--amber2); white-space: nowrap; }
.reasoning-next { font-size: 12px; color: var(--silver2); line-height: 1.5; }
.reasoning-next b { color: var(--amber2); display: block; margin-bottom: 4px; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; }

/* Builder step panels */
.step-panel { display: none; }
.step-panel.active { display: block; }

/* Readiness summary */
.readiness-card {
  border: 1px solid var(--line);
  border-radius: var(--r);
  padding: 20px;
  background: var(--glass);
  margin-bottom: 20px;
}
.readiness-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; margin-top: 14px; }
.readiness-item { text-align: center; }
.readiness-num { font-size: 26px; font-weight: 700; letter-spacing: -.05em; color: var(--silver); }
.readiness-desc { font-size: 11px; color: var(--muted); margin-top: 3px; }
.next-action-list { display: grid; gap: 7px; margin-top: 16px; }
.next-action {
  display: flex; align-items: center; gap: 10px; padding: 11px 14px;
  border: 1px solid var(--line); border-radius: 11px; background: var(--glass);
  font-size: 12px; color: var(--silver2); cursor: pointer;
  transition: border-color .15s, background .15s;
}
.next-action:hover { border-color: var(--line2); background: rgba(255,255,255,.04); }
.next-action-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--muted); flex-shrink: 0; }
.next-action-dot.needs-work { background: var(--warn); }
.next-action-dot.blocked { background: var(--danger); }
.next-action-dot.ready { background: var(--ok); }

/* Skills table */
.table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--r-sm); background: rgba(0,0,0,.2); }
table { width: 100%; border-collapse: collapse; min-width: 900px; }
th, td { text-align: left; padding: 10px 11px; border-bottom: 1px solid rgba(210,218,224,.06); vertical-align: middle; }
th { position: sticky; top: 0; background: #080909; color: var(--muted); font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 9px; text-transform: uppercase; letter-spacing: .12em; z-index: 1; }
td { font-size: 11px; color: var(--silver2); }
td strong { color: var(--silver); font-size: 12px; }
.table-wrap select, .table-wrap input[type="text"], .table-wrap input[type="number"], .table-wrap input[type="date"] {
  background: rgba(0,0,0,.5); border: 1px solid var(--line); border-radius: 7px;
  padding: 7px 8px; max-width: 160px; font-size: 11px; color: var(--silver); outline: none;
}
.table-wrap input[type="checkbox"] { accent-color: var(--amber); }
.score-cell { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 11px; color: var(--amber2); font-weight: 700; }
.record-warning { display: block; margin-top: 4px; font-size: 10px; color: var(--warn); }

/* Category builder cards */
.cat-builder-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.mini-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin: 12px 0; }
.mini-grid.four { grid-template-columns: repeat(4,1fr); }
.mini-field label { display: block; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace; font-size: 9px; text-transform: uppercase; letter-spacing: .09em; color: var(--muted); margin-bottom: 5px; }
.mini-field input, .mini-field select { width: 100%; background: rgba(0,0,0,.5); border: 1px solid var(--line); border-radius: 8px; padding: 7px; font-size: 11px; color: var(--silver); outline: none; }

/* Ability builder cards */
.ability-builder-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.ability-score-row { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin: 12px 0; }

/* Toolbar */
.toolbar { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; }
.toolbar input[type="search"] {
  flex: 1; min-width: 200px;
  border: 1px solid var(--line); border-radius: 10px;
  background: rgba(0,0,0,.4); padding: 9px 12px;
  font-size: 12px; color: var(--silver); outline: none;
}
.toolbar input[type="search"]:focus { border-color: rgba(201,150,58,.42); }
.active-filter { border-color: rgba(201,150,58,.55)!important; background: rgba(201,150,58,.1)!important; color: var(--amber2)!important; }

/* Review panel */
.gate-list { display: grid; gap: 8px; }
.gate-item {
  display: flex; align-items: flex-start; gap: 13px; padding: 14px;
  border: 1px solid var(--line); border-radius: 12px; background: var(--glass);
}
.gate-icon { width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; flex-shrink: 0; font-size: 11px; font-weight: 700; }
.gate-icon.pass { background: rgba(106,184,144,.15); color: var(--ok); }
.gate-icon.fail { background: rgba(201,96,96,.15); color: var(--danger); }
.gate-text strong { display: block; font-size: 12px; }
.gate-text p { font-size: 12px; color: var(--soft); margin-top: 3px; line-height: 1.45; }

/* SVG signature paths/nodes shared */
.sig-path { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.sig-node { }
.sig-ring { fill: none; }
.sig-grid { fill: none; }

/* Scrollbar */
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,.08); border-radius: 99px; }

/* Focus */
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--amber2); outline-offset: 2px; }
button:disabled { cursor: not-allowed; opacity: .4; filter: saturate(.3); }

/* =============================================
   RESPONSIVE
   ============================================= */

@media (max-width: 1200px) {
  .profile-hero { grid-template-columns: 1fr 380px; padding: 80px 40px 60px; gap: 40px; }
  .builder-layout { grid-template-columns: 56px minmax(0,1fr) 280px; }
}

@media (max-width: 1024px) {
  .profile-hero { grid-template-columns: 1fr; text-align: center; }
  .profile-sig-panel { max-width: 400px; margin: 0 auto; aspect-ratio: 4/3; max-height: 320px; }
  .profile-declaration { margin: 0 auto; }
  .builder-layout { grid-template-columns: 48px minmax(0,1fr); }
  .reasoning-drawer { display: none; }
  .practitioner-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .mastery-grid { grid-template-columns: 1fr; }
  .prac-sig-area { height: 200px; }
}

@media (max-width: 760px) {
  .topnav { padding: 0 16px; }
  .topnav-sub { display: none; }
  .registry-hero { padding: 60px 20px 40px; }
  .hero-title { font-size: 36px; }
  .registry-section { padding: 40px 16px 60px; }
  .practitioner-grid { grid-template-columns: 1fr; }
  .profile-hero { padding: 60px 20px 40px; }
  .profile-content { padding: 0 16px 60px; }
  .practitioner-grid { grid-template-columns: 1fr; }
  .mastery-grid, .cat-builder-grid, .ability-builder-grid, .form-grid, .check-grid, .readiness-grid { grid-template-columns: 1fr; }
  .builder-layout { grid-template-columns: 1fr; }
  .step-rail { position: relative; top: auto; height: auto; flex-direction: row; overflow-x: auto; padding: 12px 16px; border-right: none; border-bottom: 1px solid var(--line); }
  .step-connector { width: 14px; height: 1px; }
  .builder-main { padding: 20px 16px 60px; }
  .back-bar { padding: 10px 16px; }
  .mini-grid.four { grid-template-columns: repeat(2,1fr); }
}


@media (max-width: 1024px) {
  .capability-demo-grid { grid-template-columns: 1fr; }
  .capability-demo-card { display: grid; grid-template-columns: minmax(280px,.9fr) 1.1fr; }
  .capability-demo-art { height: 210px; border-bottom: 0; border-right: 1px solid var(--line3); }
}
@media (max-width: 760px) {
  .audience-translation-grid, .standing-grid { grid-template-columns: 1fr; }
  .audience-translation-card { min-height: 0; padding: 21px; }
  .capability-demo-card { display: block; }
  .capability-demo-art { height: 190px; border-right: 0; border-bottom: 1px solid var(--line3); }
  .profile-leading-command { align-items: flex-start; }
  .profile-content--wide { padding-left: 16px; padding-right: 16px; }
  .narrative-block--closing { font-size: 16px; }
}

/* ─── Search Page ─── */
.search-page-wrap {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 20px 60px;
  padding-top: calc(62px + 60px);
}
.search-page-inner {
  width: 100%;
  max-width: 560px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}
.search-page-mark {
  margin-bottom: 32px;
}
.search-page-registry-name {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;
  font-size: 10px;
  letter-spacing: .22em;
  color: var(--amber2);
  margin-top: 8px;
}
.search-page-heading {
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: clamp(26px, 5vw, 42px);
  font-weight: 500;
  letter-spacing: -.025em;
  line-height: 1.12;
  color: #f0eadf;
  margin: 0 0 14px;
}
.search-page-sub {
  font-size: 15px;
  color: #bdb4a7;
  line-height: 1.6;
  margin: 0 0 32px;
}
.search-page-form {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}
.search-page-field-wrap {
  width: 100%;
  position: relative;
  margin-bottom: 12px;
}
.search-page-icon {
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  color: var(--muted);
  pointer-events: none;
  flex-shrink: 0;
}
.search-page-input {
  width: 100%;
  height: 56px;
  border: 1px solid var(--line2);
  border-radius: 16px;
  background: rgba(8,10,10,.82);
  color: #f0eadf;
  font-size: 18px;
  letter-spacing: .06em;
  padding: 0 20px 0 50px;
  outline: none;
  transition: border-color .18s, box-shadow .18s;
  backdrop-filter: blur(12px);
  box-shadow: 0 8px 32px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.05);
}
.search-page-input::placeholder {
  color: var(--muted);
  font-size: 16px;
  letter-spacing: .03em;
}
.search-page-input:focus {
  border-color: rgba(201,150,58,.6);
  box-shadow: 0 0 0 3px rgba(201,150,58,.1), 0 8px 32px rgba(0,0,0,.38);
}
.search-page-error {
  min-height: 20px;
  font-size: 13px;
  color: #e09898;
  margin: 0 0 14px;
  letter-spacing: .02em;
}
.search-page-btn {
  padding: 13px 38px;
  font-size: 14px;
  border-radius: 12px;
  letter-spacing: .06em;
}
.search-page-back {
  margin-top: 36px;
}

@media (max-width: 760px) {
  .search-page-wrap {
    padding-top: calc(62px + 40px);
    padding-bottom: 40px;
  }
  .search-page-heading { font-size: 28px; }
  .search-page-input { height: 50px; font-size: 16px; }
  .search-page-btn { width: 100%; justify-content: center; padding: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none!important; transition: none!important; scroll-behavior: auto!important; }
}
/* =============================================
   WOMAN-FACING EDITORIAL PUBLIC LAYER v2.5.0
   Keeps the verified black-glass system while presenting
   each practitioner as a man, not a technical dashboard.
   ============================================= */
:root {
  --ivory: #f0eadf;
  --ivory-soft: #d8d0c3;
  --wine: #3a171b;
  --bronze-soft: #c79a58;
  --editorial-serif: Georgia, 'Times New Roman', Times, serif;
}

/* Public pages use warmer hierarchy. Builder remains technical and compact. */
.registry-landing,
.public-profile-page {
  color: var(--ivory);
}
.registry-landing .hero-title,
.public-profile-page .profile-hero-title,
.registry-section .section-header h2,
.public-profile-page .profile-section > h3,
.public-profile-page .audience-translation-card h3,
.public-profile-page .authentic-development-card h3,
.public-profile-page .lineage-card--expanded h3,
.public-profile-page .woman-facing-ability-title,
.prac-title {
  font-family: var(--editorial-serif);
  font-weight: 500;
}
.registry-landing .hero-title {
  color: var(--ivory);
  letter-spacing: -.045em;
  line-height: .98;
  max-width: 940px;
}
.registry-landing .hero-title br { display: block; }
.hero-statement--strong {
  color: var(--ivory);
  font-family: var(--editorial-serif);
  font-size: clamp(18px, 2vw, 22px);
  line-height: 1.62;
  max-width: 720px;
}
.hero-statement--secondary {
  color: var(--ivory-soft);
  max-width: 760px;
  font-size: 15px;
  line-height: 1.78;
}
.registry-hero::before {
  background:
    radial-gradient(ellipse 72% 48% at 50% 38%, rgba(111,35,42,.13) 0%, transparent 66%),
    radial-gradient(ellipse 82% 58% at 50% 44%, rgba(201,150,58,.07) 0%, transparent 68%);
}
.registry-verif-note,
.registry-closing-text,
.profile-declaration,
.narrative-block,
.audience-translation-card p,
.mastery-layer p,
.capability-demo-copy p,
.standing-card p,
.authentic-development-card p,
.lineage-card--expanded > p {
  color: var(--ivory-soft);
}

/* Search and collection controls */
.registry-tools {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(210px, 300px);
  gap: 12px;
  align-items: center;
  margin-bottom: 26px;
}
.registry-search-wrap { display: block; }
.registry-search {
  width: 100%;
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(0,0,0,.43);
  color: var(--ivory);
  padding: 11px 14px;
  outline: none;
}
.registry-search::placeholder { color: #74706a; }
.registry-search:focus,
.registry-tools .filter-select:focus {
  border-color: rgba(201,150,58,.55);
  box-shadow: 0 0 0 3px rgba(201,150,58,.08);
}
.registry-tools .filter-select { min-height: 44px; }
.registry-result-count {
  color: var(--bronze-soft);
  font-size: 12px;
  letter-spacing: .06em;
  white-space: nowrap;
}
.registry-load-more {
  display: flex;
  justify-content: center;
  padding-top: 34px;
}

/* Practitioner cards read as editorial portraits. */
.prac-card {
  background:
    radial-gradient(circle at 18% 0%, rgba(92,31,37,.08), transparent 36%),
    linear-gradient(160deg, rgba(12,13,13,.94), rgba(4,5,5,.98));
}
.prac-body { gap: 14px; padding: 23px; }
.prac-title {
  color: var(--ivory);
  font-size: 22px;
  line-height: 1.08;
}
.prac-name {
  color: var(--bronze-soft);
  font-family: var(--editorial-serif);
  font-size: 14px;
  letter-spacing: .02em;
  text-transform: none;
}
.public-copy-label {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 10px;
  letter-spacing: .055em;
  text-transform: none;
  color: var(--bronze-soft);
}
.prac-story-block {
  border-top-color: rgba(210,218,224,.075);
  padding-top: 15px;
}
.prac-capability,
.prac-relevance {
  font-size: 14px;
  line-height: 1.72;
}
.prac-capability { color: var(--ivory); }
.prac-relevance { color: var(--ivory-soft); }
.prac-domain-row {
  align-items: flex-start;
  padding-top: 2px;
}
.prac-domain-label {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  text-transform: none;
  letter-spacing: .04em;
  color: var(--bronze-soft);
}
.prac-domain-name--human {
  width: 100%;
  color: var(--ivory);
  font-family: var(--editorial-serif);
  font-size: 17px;
  line-height: 1.25;
}
.prac-canonical-proof,
.canonical-proof {
  display: block;
  color: #9e9588;
  font-size: 10px;
  letter-spacing: .045em;
  line-height: 1.45;
  margin-top: 4px;
}

/* Full profile: more open portrait, less diagnostic panel. */
.profile-hero {
  grid-template-columns: minmax(0, 1fr) 440px;
  gap: 72px;
}
.profile-hero-title {
  color: var(--ivory);
  line-height: .96;
}
.profile-display-name {
  color: var(--bronze-soft);
  font-family: var(--editorial-serif);
  font-size: 17px;
  letter-spacing: .02em;
  text-transform: none;
}
.hero-human-label,
.profile-leading-command > span,
.mastery-layer > span {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  letter-spacing: .045em;
  text-transform: none;
}
.profile-declaration {
  color: var(--ivory-soft);
  font-family: var(--editorial-serif);
  font-size: 19px;
  line-height: 1.68;
}
.profile-leading-command {
  color: var(--ivory-soft);
  border-top-color: rgba(210,218,224,.08);
}
.profile-leading-command strong { color: var(--ivory); }
.profile-graphic-caption { color: var(--ivory-soft); }
.profile-content { max-width: 980px; }
.profile-section {
  border-top-color: rgba(210,218,224,.075);
  padding-top: 64px;
  margin-top: 64px;
}
.profile-section > h3 {
  color: var(--ivory);
  font-size: clamp(25px, 3vw, 34px);
  line-height: 1.14;
  letter-spacing: -.025em;
}
.profile-section-intro {
  color: #bdb4a7;
  font-size: 14px;
  line-height: 1.72;
}
.audience-translation-grid { gap: 22px; }
.audience-translation-card {
  min-height: 0;
  padding: 30px;
  border-color: rgba(210,218,224,.1);
  background:
    radial-gradient(circle at 100% 0%, rgba(102,34,40,.08), transparent 38%),
    linear-gradient(150deg, rgba(13,14,14,.93), rgba(4,5,5,.97));
}
.audience-translation-card--woman {
  border-color: rgba(201,150,58,.22);
  background:
    radial-gradient(circle at 100% 0%, rgba(102,34,40,.13), transparent 40%),
    linear-gradient(150deg, rgba(16,14,12,.95), rgba(4,5,5,.98));
}
.audience-translation-card h3 {
  color: var(--ivory);
  font-size: 27px;
}
.audience-translation-card p { font-size: 16px; line-height: 1.78; }
.capability-demo-grid { gap: 18px; }
.capability-demo-card {
  border-color: rgba(210,218,224,.095);
  background: linear-gradient(160deg, rgba(10,11,11,.96), rgba(3,4,4,.99));
}
.capability-demo-copy { padding: 21px; }
.capability-demo-copy h4 {
  color: var(--ivory);
  font-family: var(--editorial-serif);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.25;
}
.capability-demo-copy p { font-size: 13px; line-height: 1.68; }
.mastery-grid--public { gap: 22px; }
.mastery-card--public {
  padding: 28px;
  border-color: rgba(210,218,224,.095);
  background:
    radial-gradient(circle at 100% 0%, rgba(92,31,37,.065), transparent 34%),
    linear-gradient(160deg, rgba(10,11,11,.96), rgba(3,4,4,.99));
}
.mastery-card--public .mastery-card-label {
  align-items: flex-start;
  display: block;
}
.woman-facing-ability-title {
  color: var(--ivory);
  font-size: 23px !important;
  line-height: 1.2;
  margin: 0 0 7px !important;
}
.mastery-layer {
  border-top-color: rgba(210,218,224,.075);
  padding-top: 17px;
  margin-top: 17px;
}
.mastery-layer > span {
  color: var(--bronze-soft);
  font-size: 10px;
}
.mastery-layer p { font-size: 14px; line-height: 1.75; }
.mastery-layer--woman {
  border-left-color: rgba(115,39,45,.62);
  background: linear-gradient(90deg, rgba(80,25,31,.07), transparent 60%);
  padding-bottom: 2px;
}
.mastery-layer--woman p { color: var(--ivory); }
.mastery-layer--personal p { color: #c1b8aa; font-style: italic; }
.category-public-card .woman-facing-ability-title { color: var(--ivory); }
.standing-card,
.authentic-development-card,
.lineage-card--expanded {
  border-color: rgba(210,218,224,.1);
}
.standing-card--now,
.authentic-development-card,
.lineage-card--expanded {
  background:
    radial-gradient(circle at 95% 5%, rgba(98,31,38,.1), transparent 36%),
    linear-gradient(145deg, rgba(15,13,11,.94), rgba(3,4,4,.98));
}
.standing-level { font-family: var(--editorial-serif); font-weight: 500; }
.narrative-block--large,
.narrative-block--closing {
  font-family: var(--editorial-serif);
  color: var(--ivory);
}
.narrative-block--large { font-size: 20px; line-height: 1.82; }
.narrative-block--closing { font-size: 21px; line-height: 1.82; }
.lineage-principle strong { color: var(--bronze-soft); }
.authenticity-block p { color: #8e887e; }

@media (max-width: 1024px) {
  .registry-tools { grid-template-columns: 1fr 260px; }
  .profile-hero { gap: 44px; }
}
@media (max-width: 760px) {
  .registry-tools { grid-template-columns: 1fr; }
  .registry-result-count { white-space: normal; }
  .registry-collection-header { align-items: flex-start; }
  .profile-declaration { font-size: 18px; }
  .profile-section { padding-top: 48px; margin-top: 48px; }
  .profile-section > h3 { font-size: 27px; }
  .audience-translation-card,
  .mastery-card--public { padding: 23px; }
  .woman-facing-ability-title { font-size: 21px !important; }
  .narrative-block--large,
  .narrative-block--closing { font-size: 18px; }
}

/* Responsive correction after the editorial override layer. */
@media (max-width: 1024px) {
  .profile-hero {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .profile-sig-panel {
    width: min(400px, 100%);
    max-width: 400px;
    margin: 0 auto;
    aspect-ratio: 4 / 3;
    max-height: 320px;
  }
  .profile-declaration { margin: 0 auto; }
  .profile-leading-command { justify-content: center; }
}
@media (max-width: 760px) {
  .profile-hero {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    gap: 32px;
  }
  .profile-sig-panel { width: 100%; }
  .profile-leading-command { justify-content: flex-start; text-align: left; }
}

/* Keep the 53-profile Builder inside a true 390px viewport. */
@media (max-width: 760px) {
  .builder-layout,
  .builder-main,
  .builder-header,
  .builder-header-actions,
  .step-content,
  .readiness-card {
    min-width: 0;
    width: 100%;
    max-width: 100%;
  }
  .builder-layout { overflow-x: clip; }
  .step-rail {
    width: 100%;
    max-width: 100vw;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
  }
  .builder-header {
    flex-direction: column;
    align-items: stretch;
  }
  .builder-header-actions { align-items: stretch; }
  .prac-switcher {
    width: 100%;
    min-width: 0;
  }
  .prac-switcher select {
    min-width: 0;
    flex: 1 1 auto;
    width: 1%;
  }
  .table-wrap {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
  }
}


/* ═══════════════════════════════════════════════
   VANGUARD PROGRESSION / BLACK BELT SYSTEM
   ═══════════════════════════════════════════════ */
.search-page-framework-action{margin:22px auto 0;max-width:520px;text-align:center;padding-top:20px;border-top:1px solid var(--line3)}
.search-page-framework-action p{margin:9px 0 0;color:var(--muted);font-size:.82rem}
.btn-vanguard-framework{width:100%;border:1px solid rgba(201,150,58,.45);background:linear-gradient(135deg,rgba(201,150,58,.13),rgba(255,210,122,.035));color:var(--gold2);letter-spacing:.04em}
.btn-vanguard-framework:hover{border-color:rgba(255,210,122,.72);background:linear-gradient(135deg,rgba(201,150,58,.22),rgba(255,210,122,.07))}
.modal-box--vanguard{width:min(980px,calc(100vw - 32px));max-width:980px;max-height:90vh;overflow:auto;padding:38px;position:relative}
.modal-close-x{position:absolute;right:18px;top:14px;border:0;background:transparent;color:var(--muted);font-size:28px;line-height:1;cursor:pointer}
.vanguard-modal-lead{font-size:1.12rem;line-height:1.8;color:var(--text);max-width:830px;margin:18px 0}
.vanguard-modal-comparison{border-left:2px solid var(--gold);padding:14px 18px;background:rgba(201,150,58,.055);color:var(--text2);line-height:1.75;margin:20px 0 28px}
.vanguard-framework-list{display:grid;gap:12px}
.vanguard-framework-level{display:grid;grid-template-columns:58px 1fr;gap:18px;padding:20px;border:1px solid var(--line3);background:linear-gradient(135deg,rgba(255,255,255,.025),rgba(201,150,58,.025));border-radius:14px}
.vanguard-framework-number{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(201,150,58,.48);color:var(--gold2);font-weight:800;font-family:var(--mono)}
.vanguard-framework-kicker{color:var(--gold2);font-size:.74rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800}
.vanguard-framework-level h3{margin:4px 0 8px;font-size:1.12rem}
.vanguard-framework-level p{margin:0;color:var(--text2);line-height:1.7}
.vanguard-framework-comparison{margin-top:12px;padding-top:12px;border-top:1px solid var(--line3);color:var(--muted);font-size:.9rem;line-height:1.65}
.vanguard-black-belt-definition,.vanguard-black-belt-admin-head{display:grid;grid-template-columns:92px 1fr;gap:22px;align-items:center;margin-top:28px;padding:24px;border:1px solid rgba(201,150,58,.38);background:radial-gradient(circle at 10% 50%,rgba(201,150,58,.12),transparent 38%),rgba(0,0,0,.18);border-radius:16px}
.vanguard-black-belt-definition p{color:var(--text2);line-height:1.7}.vanguard-black-belt-definition small{color:var(--muted)}
.vanguard-black-belt-seal{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;text-align:center;border:2px solid var(--gold);box-shadow:0 0 0 5px rgba(201,150,58,.08),inset 0 0 24px rgba(201,150,58,.12);color:var(--gold2);font-size:.7rem;line-height:1.25;letter-spacing:.12em;font-weight:900}
.vanguard-black-belt-seal--small{width:68px;height:68px}
.vanguard-ladder{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;margin:22px 0}
.vanguard-rung{min-height:76px;padding:10px 7px;border-radius:10px;border:1px solid var(--line3);background:rgba(255,255,255,.018);display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;text-align:center;color:var(--muted)}
.vanguard-rung-number{font-family:var(--mono);font-weight:900;font-size:.8rem}
.vanguard-rung-name{font-size:.68rem;line-height:1.25}
.vanguard-rung--verified{border-color:rgba(201,150,58,.5);background:rgba(201,150,58,.11);color:var(--gold2)}
.vanguard-rung--current{border-color:var(--gold2);background:linear-gradient(180deg,rgba(201,150,58,.22),rgba(201,150,58,.08));color:#ffe3a1;box-shadow:0 0 20px rgba(201,150,58,.15)}
.vanguard-rung--next{border-color:rgba(190,201,210,.45);color:var(--silver);background:rgba(190,201,210,.04)}
.vanguard-ladder--compact{gap:4px;margin:10px 0}.vanguard-ladder--compact .vanguard-rung{min-height:25px;padding:3px;border-radius:4px}.vanguard-ladder--compact .vanguard-rung-number{font-size:.64rem}
.vanguard-compact{margin:18px 0 4px;padding:14px;border:1px solid rgba(201,150,58,.24);border-radius:12px;background:rgba(201,150,58,.035)}
.vanguard-compact-head,.vanguard-compact-copy{display:flex;align-items:center;justify-content:space-between;gap:12px}.vanguard-compact-head strong{font-size:.78rem;color:var(--gold2)}
.vanguard-compact-copy strong{font-size:.86rem}.vanguard-compact-copy span{font-size:.74rem;color:var(--muted);text-align:right}
.vanguard-black-belt-mini{font-size:.62rem;letter-spacing:.14em;color:var(--gold2);border:1px solid rgba(201,150,58,.46);padding:4px 7px;border-radius:999px}
.vanguard-profile-shell{padding:28px;border:1px solid rgba(201,150,58,.3);border-radius:18px;background:radial-gradient(circle at 0 0,rgba(201,150,58,.09),transparent 38%),rgba(0,0,0,.16)}
.vanguard-profile-shell--black-belt{border-color:rgba(255,210,122,.55);box-shadow:0 20px 60px rgba(0,0,0,.28),inset 0 0 45px rgba(201,150,58,.045)}
.vanguard-profile-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.vanguard-profile-heading h3{margin:8px 0 0}
.vanguard-standing-badge{font-size:.69rem;text-transform:uppercase;letter-spacing:.1em;border:1px solid rgba(201,150,58,.42);color:var(--gold2);padding:8px 10px;border-radius:999px;text-align:center}
.vanguard-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.vanguard-profile-grid article{padding:18px;border:1px solid var(--line3);border-radius:12px;background:rgba(255,255,255,.018)}
.vanguard-profile-grid p{margin:8px 0 0;color:var(--text2);line-height:1.72}.vanguard-profile-next{grid-column:1/-1}
.vanguard-verification-date{margin-top:14px;color:var(--silver);font-size:.78rem}.vanguard-disclaimer{margin:14px 0 0;color:var(--muted);font-size:.76rem;line-height:1.55}
.builder-vanguard-intro{display:grid;grid-template-columns:1fr minmax(260px,340px);gap:22px;padding:22px;border:1px solid rgba(201,150,58,.28);border-radius:14px;background:rgba(201,150,58,.035);margin-bottom:16px}.builder-vanguard-intro h3{margin:6px 0 8px}.builder-vanguard-intro p{margin:0;color:var(--text2);line-height:1.65}
.builder-vanguard-standing{display:flex;flex-direction:column;justify-content:center;padding:16px;border-left:1px solid rgba(201,150,58,.28)}.builder-vanguard-standing span,.builder-vanguard-standing small{color:var(--muted)}.builder-vanguard-standing strong{color:var(--gold2);margin:7px 0}
.vanguard-admin-legend{display:flex;flex-wrap:wrap;gap:12px 20px;padding:12px 14px;border:1px solid var(--line3);border-radius:10px;margin-bottom:16px;color:var(--muted);font-size:.76rem}.vanguard-legacy-count{margin-left:auto}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.legend-dot--covered{background:var(--silver)}.legend-dot--verified{background:var(--gold2)}.legend-dot--review{background:#d98f64}
.vanguard-admin-levels{display:grid;gap:14px}.vanguard-admin-level{border:1px solid var(--line3);border-radius:14px;padding:18px;background:rgba(255,255,255,.018)}.vanguard-admin-level.verified{border-color:rgba(201,150,58,.36)}.vanguard-admin-level.needs-review,.vanguard-admin-level.has-gap{border-color:rgba(217,143,100,.5)}
.vanguard-admin-level-head{display:grid;grid-template-columns:48px 1fr minmax(175px,220px);gap:16px;align-items:start}.vanguard-admin-level-number{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(201,150,58,.4);color:var(--gold2);font-family:var(--mono);font-weight:900}.vanguard-admin-public-name{color:var(--gold2);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.vanguard-admin-level h4{margin:4px 0 7px}.vanguard-admin-level-head p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.5}.vanguard-status-field{margin:0}.vanguard-admin-fields{margin-top:15px}.vanguard-note-field{margin-top:12px}.vanguard-note-field textarea{width:100%;resize:vertical}
.vanguard-gap-warning{margin:12px 0 0;padding:9px 12px;background:rgba(217,143,100,.08);border-left:2px solid #d98f64;color:#e7b69b;font-size:.78rem}
.vanguard-course-grid{margin-top:12px;border-top:1px solid var(--line3)}.vanguard-course-row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line3);font-size:.78rem}.vanguard-course-row label{color:var(--muted);display:flex;gap:6px;align-items:center}
.vanguard-black-belt-admin{margin-top:24px;padding:22px;border:1px solid var(--line3);border-radius:16px;background:rgba(0,0,0,.16)}.vanguard-black-belt-admin.is-eligible{border-color:rgba(201,150,58,.5)}.vanguard-black-belt-admin-head{margin:0 0 18px}.vanguard-black-belt-admin-head p{margin:6px 0;color:var(--text2)}.vanguard-display-controls{margin-top:18px;padding-top:16px;border-top:1px solid var(--line3)}
.vanguard-admin-issues{margin-bottom:14px}
@media(max-width:760px){.modal-box--vanguard{padding:26px 18px}.vanguard-framework-level{grid-template-columns:42px 1fr;padding:16px}.vanguard-framework-number{width:38px;height:38px}.vanguard-black-belt-definition,.vanguard-black-belt-admin-head{grid-template-columns:1fr}.vanguard-ladder{grid-template-columns:repeat(4,1fr)}.vanguard-profile-heading{display:block}.vanguard-standing-badge{display:inline-block;margin-top:12px}.vanguard-profile-grid{grid-template-columns:1fr}.vanguard-profile-next{grid-column:auto}.builder-vanguard-intro{grid-template-columns:1fr}.builder-vanguard-standing{border-left:0;border-top:1px solid rgba(201,150,58,.28)}.vanguard-admin-level-head{grid-template-columns:42px 1fr}.vanguard-status-field{grid-column:1/-1}.vanguard-course-row{grid-template-columns:1fr}.vanguard-legacy-count{width:100%;margin-left:0}}
