/* Acabado final: lectura abierta, movimiento de entrada y exportaciones nativas. */
.lab-links{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;margin:-24px 0 48px;font-size:13px;color:var(--muted)}
.lab-links a{color:var(--cyan);min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid var(--line)}
.lab-links a:hover{color:var(--accent)}
.diagram-scroll{background:#fbfcfa;padding:16px;max-height:640px}
.diagram-scroll svg{background:#fbfcfa;color:#102c34;min-width:700px;width:100%;height:auto;max-height:none}
.diagram-section:first-child .diagram-scroll svg{height:640px;min-width:600px}
.diagram-section:first-child .diagram-scroll{max-height:none}
.diagram-copy .text-link{display:inline-flex;font-size:12px;min-height:44px;align-items:center;margin-top:18px}
#viewer-content svg{background:#fbfcfa;border-radius:8px;padding:16px}
.certificate{transition:transform .3s ease,box-shadow .3s ease}
.certificate:hover{transform:translateY(-5px);box-shadow:0 15px 35px #0003}
.is-seen{animation:enter-profile .7s cubic-bezier(.22,.7,.25,1) both}
@keyframes enter-profile{from{opacity:.45;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
body.effects-paused .is-seen{animation:none}
@media(max-width:800px){.diagram-scroll{max-height:530px}.lab-links{display:grid;gap:8px;margin-top:0}.lab-links a{justify-self:start}}
@media(max-width:800px){.diagram-card:after{content:'Desliza el diagrama horizontalmente o pulsa Ampliar';display:block;padding:12px 16px;font-size:11px;color:var(--muted);border-top:1px solid var(--line)}}
@media(prefers-reduced-motion:reduce){.is-seen{animation:none}.certificate{transition:none}.certificate:hover{transform:none}}
