/* Nordik FX blog: plantilla de ENTRADA («Nordik entrada», site part 2368).
   Se carga después de nordik-fx.css y nordik-fx-extra.css. Se engancha a data-nk con prefijo art-.
   Lo monta build/entrada.py; el comportamiento está en nordik-fx-blog.js. */

/* ---------- cabecera ---------- */
body .elementor [data-nk="art-hero"] .elementor-heading-title { font-stretch: 75%; text-wrap: balance; }
body .elementor [data-nk="art-hero"] [data-nk="art-share"],
body .elementor [data-nk="art-hero"] [data-nk="blog-crumbs"] { justify-content: center; }
body .elementor [data-nk="art-lead"] p { margin: 0; text-wrap: pretty; }

/* meta: categoría (chip verde), fecha, autor y lectura, separados por un punto verde */
body .elementor [data-nk="art-meta"] > * { display: flex !important; flex-direction: row !important; align-items: center; }
body .elementor [data-nk="art-meta"] p { margin: 0; }
body .elementor [data-nk="art-meta"] > :nth-child(n+3)::before {
  content: ""; display: inline-block; width: 4px; height: 4px; margin-right: 20px; border-radius: 50%;
  background: var(--green, #0eeed4);
}
/* el tiempo de lectura lo calcula el JS: hasta entonces no se ve */
body .elementor [data-nk="art-read"]:not(.is-ready),
body .elementor [data-nk="art-card-read"]:not(.is-ready) { display: none !important; }

/* ---------- botones de compartir ---------- */
body .elementor [data-nk="art-share-btn"] { position: relative; }
body .elementor [data-nk="art-share-btn"] [data-nk="art-btn-label"] {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
body .elementor [data-nk="art-share-btn"][data-icon]::before {
  content: ""; position: static; display: block; width: 16px; height: 16px; background-color: currentColor;
  -webkit-mask: var(--art-icon) center / contain no-repeat; mask: var(--art-icon) center / contain no-repeat;
}
body .elementor [data-nk="art-share-btn"][data-icon="link"] {
  --art-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.5.5l3-3a5 5 0 0 0-7-7l-1.7 1.7'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.5-.5l-3 3a5 5 0 0 0 7 7l1.7-1.7'/%3E%3C/svg%3E");
}
body .elementor [data-nk="art-share-btn"][data-icon="up"] {
  --art-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 19V5M5 12l7-7 7 7'/%3E%3C/svg%3E");
}
body .elementor [data-nk="art-share-btn"][data-icon="share"] {
  --art-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='5' r='3'/%3E%3Ccircle cx='6' cy='12' r='3'/%3E%3Ccircle cx='18' cy='19' r='3'/%3E%3Cpath d='M8.6 13.5l6.8 4M15.4 6.5l-6.8 4'/%3E%3C/svg%3E");
}
body .elementor [data-nk="art-share-btn"].is-copied { background: var(--black, #1a1a1a); border-color: var(--black, #1a1a1a); color: var(--green, #0eeed4); }
body .elementor [data-nk="art-hero"] [data-nk="art-share-btn"].is-copied { background: var(--green, #0eeed4); border-color: var(--green, #0eeed4); color: var(--black, #1a1a1a); }
body .elementor [data-nk="art-share-btn"]:focus-visible,
body .elementor [data-nk="art-toc"] a:focus-visible,
body .elementor [data-nk="art-toc-toggle"]:focus-visible { outline: 2px solid #0A6F65; outline-offset: 3px; }
/* aviso «Enlace copiado» */
body .elementor [data-nk="art-share-btn"][data-tip]::after {
  content: attr(data-tip); position: absolute; left: 50%; bottom: calc(100% + 8px); translate: -50% 0; z-index: 3;
  padding: 6px 10px; border-radius: 6px; background: var(--black, #1a1a1a); color: var(--green, #0eeed4);
  font-family: var(--f-mono, monospace); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; white-space: nowrap;
  pointer-events: none;
}
body .elementor [data-nk="art-hero"] [data-nk="art-share-btn"][data-tip]::after { background: var(--green, #0eeed4); color: var(--black, #1a1a1a); }

/* ---------- lateral: índice fijo ---------- */
body .elementor [data-nk="art-aside"] { position: sticky; top: 110px; align-self: start; }
body .elementor [data-nk="art-toc"].is-empty { display: none; }
body .elementor [data-nk="art-toc"].is-empty + [data-nk="art-tools"] { border-top: 0; padding-top: 0; }
body .elementor [data-nk="art-toc-list"] { max-height: calc(100vh - 290px); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
body .elementor [data-nk="art-toc-list"] ol { list-style: none; margin: 0; padding: 0; }
body .elementor [data-nk="art-toc-list"] li { margin: 0; padding: 0; }
body .elementor [data-nk="art-toc-list"] a {
  position: relative; display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 4px; padding: 9px 0 11px;
  font-family: var(--f-body, sans-serif); font-size: 14px; font-weight: 500; line-height: 1.35; color: var(--on-light, rgba(26,26,26,0.66));
  text-decoration: none; transition: color 0.3s;
}
body .elementor [data-nk="art-toc-list"] a:hover,
body .elementor [data-nk="art-toc-list"] a.is-active { color: var(--black, #1a1a1a); }
body .elementor [data-nk="art-toc-list"] .art-toc-n {
  padding-top: 2px; font-family: var(--f-mono, monospace); font-size: 11px; letter-spacing: 0.08em;
  color: var(--on-light-soft, rgba(26,26,26,0.42)); transition: color 0.3s;
}
body .elementor [data-nk="art-toc-list"] a.is-active .art-toc-n { color: #0A6F65; }
/* subrayado de progreso de la sección actual */
body .elementor [data-nk="art-toc-list"] a::before,
body .elementor [data-nk="art-toc-list"] a::after {
  content: ""; position: absolute; left: 34px; right: 0; bottom: 3px; height: 2px; border-radius: 2px;
  opacity: 0; transition: opacity 0.3s;
}
body .elementor [data-nk="art-toc-list"] a::before { background: var(--line-light, rgba(26,26,26,0.12)); }
body .elementor [data-nk="art-toc-list"] a::after {
  background: #0A6F65; transform-origin: 0 50%; transform: scaleX(var(--p, 0));
}
body .elementor [data-nk="art-toc-list"] a.is-active::before,
body .elementor [data-nk="art-toc-list"] a.is-active::after { opacity: 1; }
/* flecha del botón «Índice» (solo en móvil) */
body .elementor [data-nk="art-toc-toggle"]::after {
  content: ""; display: none; width: 14px; height: 14px; background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

/* ---------- contenido del artículo ---------- */
body .elementor [data-nk="art-content"] :where(.elementor-widget-container) > * { max-width: 720px; margin-top: 0; margin-bottom: 1.15em; }
/* imágenes, galerías y vídeos ocupan toda la columna: sobresalen a la derecha del texto */
body .elementor [data-nk="art-content"] .elementor-widget-container > :is(figure, .wp-block-image, .wp-block-gallery, .wp-block-embed, .wp-block-video, .wp-block-cover, .wp-block-columns, .alignwide, .alignfull),
body .elementor [data-nk="art-content"] .elementor-widget-container > p:has(> img:only-child) { max-width: none; width: 100%; margin: 2.2em 0; }
body .elementor [data-nk="art-content"] img { display: block; max-width: 100%; height: auto; border-radius: 18px; }
body .elementor [data-nk="art-content"] figure img { width: 100%; }
body .elementor [data-nk="art-content"] figcaption {
  margin-top: 12px; font-family: var(--f-mono, monospace); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase;
  line-height: 1.6; color: var(--on-light-soft, rgba(26,26,26,0.42)); text-align: left;
}
body .elementor [data-nk="art-content"] :is(h2, h3, h4) {
  font-family: var(--f-display, sans-serif); font-weight: 700; line-height: 1.08; letter-spacing: -0.03em;
  color: var(--black, #1a1a1a); text-wrap: balance; scroll-margin-top: 130px;
}
body .elementor [data-nk="art-content"] h2 { position: relative; font-size: clamp(1.9rem, 3vw, 2.6rem); margin: 2.1em 0 0.5em; }
body .elementor [data-nk="art-content"] h3 { font-size: clamp(1.35rem, 2vw, 1.7rem); margin: 1.7em 0 0.55em; }
body .elementor [data-nk="art-content"] h4 { font-size: 1.2rem; margin: 1.5em 0 0.5em; }
body .elementor [data-nk="art-content"] .elementor-widget-container > :first-child { margin-top: 0; }
body .elementor [data-nk="art-content"] h2[data-num]::before {
  content: attr(data-num); display: block; margin-bottom: 14px; font-family: var(--f-mono, monospace); font-size: 11px;
  font-weight: 500; letter-spacing: 0.2em; line-height: 1; color: #0A6F65;
}
body .elementor [data-nk="art-content"] a { color: inherit; text-decoration: underline; text-decoration-color: #0A6F65; text-decoration-thickness: 1.5px; text-underline-offset: 0.22em; transition: text-underline-offset 0.3s; }
body .elementor [data-nk="art-content"] a:hover { text-underline-offset: 0.4em; }
body .elementor [data-nk="art-content"] :is(ul, ol) { padding-left: 1.3em; }
body .elementor [data-nk="art-content"] li { margin-bottom: 0.4em; }
body .elementor [data-nk="art-content"] li::marker { color: #0A6F65; }
/* citas: grandes y claras, con una barra verde */
body .elementor [data-nk="art-content"] blockquote {
  position: relative; max-width: 780px; margin: 2.2em 0; padding: 0.1em 0 0.1em clamp(22px, 3.4vw, 48px);
  border: 0; background: none; quotes: none;
}
body .elementor [data-nk="art-content"] blockquote::before {
  content: ""; position: absolute; left: 0; top: 0.35em; bottom: 0.35em; width: 3px; border-radius: 3px; background: var(--green, #0eeed4);
}
body .elementor [data-nk="art-content"] blockquote p {
  margin: 0 0 0.5em; font-family: var(--f-display, sans-serif); font-weight: 400; font-size: clamp(1.5rem, 2.5vw, 2.15rem);
  line-height: 1.24; letter-spacing: -0.02em; color: rgba(26, 26, 26, 0.56); font-style: normal; text-wrap: pretty;
}
body .elementor [data-nk="art-content"] blockquote p:last-of-type { margin-bottom: 0; }
body .elementor [data-nk="art-content"] blockquote cite {
  display: block; margin-top: 14px; font-family: var(--f-mono, monospace); font-size: 11px; letter-spacing: 0.18em;
  text-transform: uppercase; font-style: normal; color: var(--on-light, rgba(26,26,26,0.66));
}
body .elementor [data-nk="art-content"] code {
  padding: 0.12em 0.4em; border-radius: 6px; background: var(--tint-light, rgba(26,26,26,0.06));
  font-family: var(--f-mono, monospace); font-size: 0.88em;
}
body .elementor [data-nk="art-content"] pre { max-width: none; padding: 1em 1.2em; overflow-x: auto; border-radius: 12px; background: var(--black, #1a1a1a); color: var(--cream, #f4f1ec); }
body .elementor [data-nk="art-content"] pre code { padding: 0; background: none; color: inherit; }
body .elementor [data-nk="art-content"] hr { margin: 2.4em 0; border: 0; border-top: 1px solid var(--line-light, rgba(26,26,26,0.12)); }
body .elementor [data-nk="art-content"] table { width: 100%; border-collapse: collapse; font-size: 0.9em; }
body .elementor [data-nk="art-content"] :is(th, td) { padding: 10px 12px; border-bottom: 1px solid var(--line-light, rgba(26,26,26,0.12)); text-align: left; }

/* ---------- final: etiquetas ---------- */
body .elementor [data-nk="art-tags"]:not(:has(a)) { display: none; }
body .elementor [data-nk="art-tags"] .elementor-widget-container { display: flex; flex-wrap: wrap; gap: 8px; }
body .elementor [data-nk="art-tags"] a {
  display: inline-block; padding: 8px 13px; border-radius: 999px; border: 1px solid var(--line-light, rgba(26,26,26,0.12));
  font-family: var(--f-mono, monospace); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; line-height: 1.3;
  color: var(--black, #1a1a1a); text-decoration: none; transition: background-color 0.3s, color 0.3s, border-color 0.3s;
}
body .elementor [data-nk="art-tags"] a:hover { background: var(--black, #1a1a1a); border-color: var(--black, #1a1a1a); color: var(--green, #0eeed4); }
body .elementor [data-nk="art-back"] svg { transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1); }
body .elementor [data-nk="art-end"] [data-nk="art-back"]:hover svg { transform: scaleX(-1) translateX(5px); }

/* ---------- relacionadas ---------- */
body .elementor [data-nk="art-related"]:not(:has([data-nk="art-card"])),
body .elementor [data-nk="art-related"][hidden] { display: none; }
body .elementor [data-nk="art-card-id"] { display: none !important; }
body .elementor [data-nk="art-card"] .elementor-widget-container > * { margin: 0; }
body .elementor [data-nk="art-card-title"] .elementor-widget {
  font-family: var(--f-display, sans-serif); font-weight: 700; font-size: 1.5rem; line-height: 1.12; letter-spacing: -0.03em;
  color: var(--black, #1a1a1a); text-wrap: balance;
}
body .elementor [data-nk="art-card-excerpt"] .elementor-widget {
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
  font-family: var(--f-body, sans-serif); font-size: 16px; line-height: 1.55; color: var(--on-light, rgba(26,26,26,0.66));
}
body .elementor [data-nk="art-card-meta"] .elementor-widget,
body .elementor [data-nk="art-card-meta"] [data-nk="art-card-read"] {
  font-family: var(--f-mono, monospace); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; line-height: 1.6;
  color: var(--on-light-soft, rgba(26,26,26,0.42));
}
body .elementor [data-nk="art-card-media"] .elementor-widget,
body .elementor [data-nk="art-card-media"] .elementor-widget-container { height: 100%; }
body .elementor [data-nk="art-card"] img {
  display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 0;
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
body .elementor [data-nk="art-card"]:hover img { transform: scale(1.05); }
body .elementor [data-nk="art-card-media"]:not(:has(img))::after {
  content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 70% 30%, rgba(14,238,212,0.22), transparent 60%);
}
body .elementor [data-nk="art-related"] [data-nk="art-back"]:hover svg { transform: translateX(5px); }
body .elementor [data-nk="art-grid"] { scrollbar-width: none; }
body .elementor [data-nk="art-grid"]::-webkit-scrollbar { display: none; }

/* ---------- tableta y móvil ---------- */
@media (max-width: 760px) {
  body .elementor [data-nk="art-aside"] { position: relative; top: 0; }
  body .elementor [data-nk="art-toc-toggle"] { cursor: pointer; }
  body .elementor [data-nk="art-toc-toggle"]::after { display: block; }
  body .elementor [data-nk="art-toc"].is-open [data-nk="art-toc-toggle"]::after { transform: rotate(180deg); }
  body .elementor [data-nk="art-toc"]:not(.is-open) [data-nk="art-toc-list"] { display: none; }
  body .elementor [data-nk="art-toc-list"] { max-height: none; padding-bottom: 10px; }
  body .elementor [data-nk="art-toc-list"] a::before,
  body .elementor [data-nk="art-toc-list"] a::after { display: none; }
  body .elementor [data-nk="art-meta"] > :nth-child(n+3)::before { display: none; }
  body .elementor [data-nk="art-meta"] { column-gap: 16px !important; }
  body .elementor [data-nk="art-content"] .elementor-widget-container > :is(figure, .wp-block-image, .wp-block-gallery, .wp-block-embed, .wp-block-video, .wp-block-cover, .wp-block-columns, .alignwide, .alignfull) { margin: 1.8em 0; }
  body .elementor [data-nk="art-content"] img { border-radius: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  body .elementor [data-nk="art-card"] img,
  body .elementor [data-nk="art-toc-list"] a::after { transition: none; }
}
