/* V12 · Credencial internacional sobria. Capa FINAL: controla lo que dejaron v2–v9.
   Globo real (Natural Earth) como grabado, tarjeta compacta, medallas en una fila,
   banda de referencias institucionales cerca del pie. Sin cambios de copy ni datos. */
:root{--v12-graf:#1b242d;--v12-metal:#eef0ee;--v12-filete:#07101c1f;--v12-champ:#9a8356}

/* ---------- Superficie común de credencial ---------- */
#public-card,.hero-passport,.album-passport,.embedded-profile{position:relative;isolation:isolate;overflow:hidden}
#public-card,.hero-passport,.album-passport{
  background:linear-gradient(160deg,#fbfbf9 0%,var(--v12-metal) 58%,#e3e7e7 100%)!important;
  border:1px solid var(--v12-filete)!important;
  box-shadow:0 1px 0 #fff inset,0 18px 40px -22px #07101c55!important}
/* globo grande como grabado, visible y discreto (~10%) */
#public-card::before,.hero-passport::before,.album-passport::before,.embedded-profile::before{
  content:""!important;display:block!important;position:absolute!important;z-index:-1!important;pointer-events:none;
  width:min(78%,560px);aspect-ratio:1;right:-12%;top:14%;left:auto;bottom:auto;
  background:url(assets/globo-certificado.svg) center/contain no-repeat!important;
  opacity:.11!important;filter:grayscale(.35) contrast(1.15);
  -webkit-mask-image:radial-gradient(circle at 60% 50%,#000 55%,transparent 72%);mask-image:radial-gradient(circle at 60% 50%,#000 55%,transparent 72%)}
#public-card::after{content:""!important;display:block!important;position:absolute!important;inset:auto 0 0 0;height:3px;z-index:1;
  background:linear-gradient(90deg,var(--v12-champ),#d6000c 50%,var(--v12-champ))!important;opacity:.85!important;pointer-events:none}

/* ---------- Tarjeta pública (perfil) ---------- */
#public-card{max-width:940px!important;margin-inline:auto!important}
#public-card .public-card-header{padding:16px 26px!important;display:flex!important;align-items:center;justify-content:space-between;gap:16px}
#public-card .public-card-header img{width:170px!important;height:auto}
#public-card .public-card-header .profile-card-kind{margin:0!important}
#public-card .public-card-content{padding:20px 26px 6px!important;gap:22px!important;align-items:start}
#public-card .card-portrait,#public-card .card-portrait img{max-width:132px!important}
#public-card .public-card-name h1{font-size:clamp(30px,3.4vw,42px)!important;margin:0 0 4px!important;line-height:1.05}
#public-card .profile-specialty-intro{margin-top:12px!important}
#public-card .profile-specialty-intro h2{font-size:15px!important;margin:0 0 2px!important}
#public-card .profile-specialty-intro p{font-size:12.5px!important;margin:0!important}
#public-card .public-card-seals{display:grid!important;grid-template-columns:repeat(4,minmax(0,108px))!important;justify-content:start!important;gap:14px!important;max-width:none!important;margin:12px 0 0!important}
#public-card .public-card-seals figure{display:block!important;margin:0!important}
#public-card .public-seal-button{display:flex!important;flex-direction:column;align-items:center;min-width:44px;min-height:44px;padding:0!important;background:none;border:0}
#public-card .public-card-seals img{width:104px!important;height:104px!important;max-width:100%!important;margin:0!important}
#public-card .selection-signals{padding:10px 26px 0!important;margin:0!important;row-gap:10px!important}
#public-card .public-card-registry{padding:10px 26px 0!important}
#public-card .public-card-foot{padding:10px 26px 14px!important}

/* ---------- Pasaportes (hero y simulador) y perfil embebido ---------- */
.hero-passport,.album-passport{max-width:540px}
.hero .hero-earned,.hero-passport .hero-earned,.album-passport .hero-earned,.embedded-specialties,.personal-earned{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;
  overflow:visible!important;padding:8px 0 10px!important;justify-items:center}
.hero .hero-earned .hero-seal img,.hero-earned .hero-seal img,.embedded-specialties img,.personal-earned img{
  width:104px!important;height:104px!important;max-width:100%!important;min-width:44px!important;aspect-ratio:1}
.hero-earned .hero-seal,.embedded-specialties button,.personal-earned button{min-width:44px!important;min-height:44px!important}

/* ---------- Banda de referencias institucionales ---------- */
.v12-refs{display:flex;align-items:center;justify-content:space-between;gap:10px 18px;flex-wrap:wrap;
  margin:10px 26px 0;padding:10px 0 8px;border-top:1px solid var(--v12-filete)}
.hero-passport .v12-refs,.album-passport .v12-refs,.embedded-profile .v12-refs{margin-inline:0}
.v12-refs-label{font-size:11px;letter-spacing:.06em;color:#3a4650;text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center}
.v12-refs-logos{display:flex;align-items:center;gap:18px}
.v12-refs-logos img{display:block;height:30px;width:auto;max-width:none;object-fit:contain}
.v12-refs-logos img[src*="gct-original"]{mix-blend-mode:multiply}
.embedded-profile .v12-refs{border-top-color:#ffffff30}
.embedded-profile .v12-refs-label{color:inherit}

/* ---------- Directorio: medallas agrupadas ---------- */
.directory-specialties{gap:8px!important}
.directory-specialty img{width:64px!important;height:64px!important}

/* ---------- Móvil ---------- */
@media (max-width:760px){
  #public-card .public-card-content{padding:16px 16px 4px!important;gap:14px!important}
  #public-card .public-card-header,#public-card .selection-signals,#public-card .public-card-registry,#public-card .public-card-foot{padding-inline:16px!important}
  #public-card .card-portrait,#public-card .card-portrait img{max-width:96px!important}
  #public-card .public-card-seals{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
  #public-card .public-card-seals img,.hero .hero-earned .hero-seal img,.hero-earned .hero-seal img,.embedded-specialties img,.personal-earned img{width:72px!important;height:72px!important}
  .hero .hero-earned,.hero-earned,.embedded-specialties,.personal-earned{gap:4px!important}
  .v12-refs{margin-inline:16px;gap:4px 12px}
  .v12-refs-logos{gap:12px}
  .v12-refs-logos img{height:28px}
  #public-card::before,.hero-passport::before,.album-passport::before,.embedded-profile::before{width:90%;right:-30%;top:22%}
}
@media (max-width:340px){
  #public-card .public-card-seals img,.hero-earned .hero-seal img,.embedded-specialties img,.personal-earned img{width:62px!important;height:62px!important}
}

/* ---------- Movimiento: sólo suave, y nada con reduced-motion ---------- */
@media (prefers-reduced-motion:reduce){
  .spatial-card{transform:none!important}
  .spatial-card,.spatial-card *{transition:none!important;animation:none!important}
}

/* ---------- Compactación de la tarjeta pública (alto ~560–620) ---------- */
#public-card{display:grid!important;grid-template-columns:1fr auto;align-items:center}
#public-card>.public-card-header,#public-card>.public-card-content,#public-card>.selection-signals,#public-card>.public-card-foot{grid-column:1/-1}
#public-card>.public-card-registry{grid-column:1;padding:8px 0 8px 26px!important;border:0!important;margin:0!important}
#public-card>.v12-refs{grid-column:2;margin:0 26px 0 0;border:0;padding:8px 0}
#public-card .public-card-header{min-height:0!important;padding-block:12px!important}
#public-card .public-card-header img{width:150px!important}
#public-card .public-card-content{padding-top:16px!important}
#public-card .card-portrait,#public-card .card-portrait img{max-width:118px!important}
#public-card .public-card-name p{margin:2px 0 0!important}
#public-card .profile-specialty-intro{margin-top:8px!important}
#public-card .selection-signals{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:6px 14px!important;padding:12px 26px 10px!important;border-top:1px solid var(--v12-filete);margin:6px 26px 0!important;padding-inline:0!important}
#public-card .selection-signals dt{font-size:9.5px!important;margin:0 0 2px!important}
#public-card .selection-signals dd{font-size:12.5px!important;margin:0!important;line-height:1.35}
#public-card .demo-identification{gap:12px!important;padding:0!important;background:none!important}
#public-card .demo-identification img{width:62px!important;height:62px!important}
#public-card .public-card-foot{border-top:1px solid var(--v12-filete);margin:0 26px!important;padding:8px 0 12px!important}
@media (max-width:760px){
  #public-card{grid-template-columns:1fr}
  #public-card>.public-card-registry,#public-card>.v12-refs{grid-column:1/-1}
  #public-card>.public-card-registry{padding-left:16px!important}
  #public-card>.v12-refs{margin:0 16px;border-top:1px solid var(--v12-filete)}
  #public-card .selection-signals{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-inline:16px!important}
  #public-card .public-card-foot{margin:0 16px!important}
}
@media (min-width:761px){
  #public-card .public-card-content,#public-card.four-specialties .public-card-content{grid-template-columns:118px minmax(0,1fr)!important;column-gap:26px!important;row-gap:0!important}
  #public-card .public-card-identity,#public-card.four-specialties .public-card-identity{display:block!important;padding:0!important}
  #public-card .institutional-distinction{margin:10px 0 0!important;padding:9px 14px!important}
  #public-card .profile-specialty-intro{margin-top:12px!important}
  #public-card .public-card-seals{padding:0!important;margin-top:10px!important}
}
#public-card .public-card-registry,#public-card .demo-identification{border-top:0!important}

/* Perfil embebido: conserva su campo grafito; globo claro por encima del fondo */
.embedded-profile::before{filter:invert(1) grayscale(1)!important;opacity:.09!important}
.embedded-profile .v12-refs-logos img{background:#f4f5f2;border-radius:4px;padding:3px 6px;height:30px;box-sizing:content-box}
.embedded-profile .v12-refs-logos img{mix-blend-mode:normal!important}
/* Correcciones 30-09: retrato sprite, perfil sin foto, medallas cuadradas */
#public-card .card-portrait>img{max-width:none!important}
@media (min-width:761px){#public-card.no-portrait .public-card-content{grid-template-columns:minmax(0,1fr)!important}}
#public-card .public-card-seals img,.public-card-seals img,.passport-seals img,.hero-passport img[src*="medalla-v12"],.album-passport img[src*="medalla-v12"],.embedded-profile img[src*="medalla-v12"],img[src*="medalla-v12"]{height:auto!important;aspect-ratio:1/1!important;max-width:100%!important;object-fit:contain}
.hero-passport .hero-earned .hero-seal img,.hero .hero-earned .hero-seal.medal-v6 img,.hero-seal.medal-v6 img{height:auto!important;aspect-ratio:1/1!important}
