/* Professional acknowledgements and review methodology · local revision 20261021-flow-v2. */
.credits-expanded-index{grid-template-columns:repeat(4,minmax(0,1fr))}
.acknowledgements-chapter,.methodology-chapter{scroll-margin-top:24px}
.contributors-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.contributor-card{display:flex;flex-direction:column;padding:26px;border:1px solid var(--line);border-top:3px solid var(--green);border-radius:14px;background:#fff}
.contributor-card h3{font-size:1.4rem;line-height:1.25;margin:0 0 14px}
.contributor-card p{margin:0 0 20px;font-size:.96rem}
.contributor-links{display:flex;align-items:flex-start;flex-direction:column;gap:9px;margin-top:auto;font-size:.78rem}
.contributor-links a{overflow-wrap:anywhere;text-underline-offset:3px}
.contributor-links .contributor-orcid{display:inline-flex;gap:7px;align-items:center;text-decoration:none;font-weight:700}
.contributor-orcid span{display:inline-grid;place-items:center;flex:0 0 23px;height:23px;border-radius:50%;background:#4d7114;color:#fff;font-size:.73rem}
.acknowledgements-note{margin-top:25px;padding:22px 26px;border-left:4px solid var(--ochre);border-radius:0 12px 12px 0;background:rgba(255,255,255,.75);font-size:.93rem}
.acknowledgements-note>p{margin:0}.acknowledgements-note details{margin-top:14px}.acknowledgements-note summary{cursor:pointer;font-weight:700;color:var(--blue)}

/* Diagrama de flujo vertical para Metodología de revisión y publicación */
.flow-container{position:relative;padding:20px 0;margin-top:10px}
.flow-container::before{content:'';position:absolute;left:42px;top:0;bottom:0;width:2px;background:repeating-linear-gradient(to bottom,#e5e0d4 0,#e5e0d4 10px,transparent 10px,transparent 16px);z-index:1}
.flow-step{display:flex;position:relative;margin-bottom:28px;z-index:2}
.flow-step:last-child{margin-bottom:0}
.flow-node{width:32px;height:32px;border-radius:50%;background-color:#fbf9f4;border:3px solid #e5e0d4;display:flex;align-items:center;justify-content:center;position:absolute;left:26px;top:28px;z-index:3;transition:all .3s ease}
.flow-node::after{content:'';width:10px;height:10px;border-radius:50%;background-color:#e5e0d4;transition:all .3s ease}
.flow-card{background-color:#ffffff;border:1px solid #e5e0d4;border-radius:12px;padding:28px 38px 28px 130px;margin-left:0;flex-grow:1;box-shadow:0 4px 12px rgba(0,0,0,.02);transition:all .3s cubic-bezier(.25,.8,.25,1);position:relative;cursor:pointer}
.flow-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(27,50,68,.08);border-color:#1b3244;background-color:#f9f7f0}
.flow-step:hover .flow-node{border-color:#1b3244;transform:scale(1.15)}
.flow-step:hover .flow-node::after{background-color:#9a4b1d}
.flow-card .step-number{font-family:Georgia,'Playfair Display','Times New Roman',serif;font-size:32px;font-weight:700;color:#9a4b1d;position:absolute;left:74px;top:25px;line-height:1}
.flow-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px;gap:10px}
.flow-card .card-header h3{font-family:Georgia,'Playfair Display','Times New Roman',serif;font-size:22px;color:#1b3244;font-weight:700;flex-grow:1;margin:0;line-height:1.25}
.flow-card .tag{font-family:system-ui,-apple-system,'Source Sans Pro',sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:4px 12px;border-radius:20px;white-space:nowrap}
.flow-card .tag-phase{background-color:#eaebf2;color:#1b3244}
.flow-card .tag-system{background-color:#f7ebe1;color:#9a4b1d}
.flow-card .tag-codex{background-color:#eaebf2;color:#1b3244}
.flow-card p{font-size:15px;color:#5a5a5a;max-width:850px;margin:0;line-height:1.6}
.arrow-indicator{text-align:center;color:#c9c1b0;font-size:24px;margin:-12px 0 18px 42px;position:relative;z-index:2;line-height:1}

/* Soporte RTL para Árabe */
html[dir="rtl"] .flow-container::before{left:auto;right:42px}
html[dir="rtl"] .flow-node{left:auto;right:26px}
html[dir="rtl"] .flow-card{padding:28px 130px 28px 38px}
html[dir="rtl"] .flow-card .step-number{left:auto;right:74px}
html[dir="rtl"] .arrow-indicator{margin:-12px 42px 18px 0}

.contributor-links a:focus-visible,.acknowledgements-note summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
@media(max-width:850px){
  .credits-expanded-index{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contributors-grid{grid-template-columns:minmax(0,1fr);row-gap:22px}
}
@media(max-width:768px){
  .flow-container::before{left:22px}
  .flow-node{left:6px;width:28px;height:28px;top:26px}
  .flow-card{padding:24px 22px 24px 82px}
  .flow-card .step-number{left:42px;font-size:24px;top:26px}
  .arrow-indicator{margin-left:20px}
  .flow-card .card-header h3{font-size:19px}
  html[dir="rtl"] .flow-container::before{left:auto;right:22px}
  html[dir="rtl"] .flow-node{left:auto;right:6px}
  html[dir="rtl"] .flow-card{padding:24px 82px 24px 22px}
  html[dir="rtl"] .flow-card .step-number{left:auto;right:42px}
  html[dir="rtl"] .arrow-indicator{margin-left:0;margin-right:20px}
}
@media(max-width:560px){
  .credits-expanded-index{grid-template-columns:minmax(0,1fr)}
  .contributor-card{padding:22px 18px}
  .acknowledgements-note{padding:20px 18px}
}
