/* Juzgado Repositorio - estilos institucionales */
:root{--jdf-azul:#1f3a5f;--jdf-azul-claro:#eef2f7;--jdf-oro:#b08d2e;--jdf-oro-claro:#f6efdc;--jdf-gris:#5a6472;--jdf-borde:#d7dee8;--jdf-verde:#2e7d4f;--jdf-rojo:#a23b3b}

/* Buscador destacado */
.jdf-buscador{display:flex;gap:10px;max-width:760px;margin:0 auto 10px}
.jdf-buscador input[type=search]{flex:1;padding:14px 22px;font-size:1.02rem;border:2px solid var(--jdf-azul);border-radius:30px;outline:none}
.jdf-buscador input[type=search]:focus{box-shadow:0 0 0 4px rgba(31,58,95,.15)}
.jdf-buscador button{padding:0 26px;border:none;border-radius:30px;background:var(--jdf-azul);color:#fff;font-size:.95rem;cursor:pointer}
.jdf-buscador button:hover{background:var(--jdf-oro)}

/* Meta de norma / código SIGI */
.jdf-meta-norma{background:var(--jdf-oro-claro);border-left:4px solid var(--jdf-oro);padding:8px 14px;border-radius:4px;font-size:.9rem}

/* Guía interactiva */
.jdf-arbol-contenedor{max-width:780px;margin:0 auto}
.jdf-camino{font-size:.8rem;color:var(--jdf-gris);margin-bottom:14px}
.jdf-paso-camino{display:inline-block;background:var(--jdf-azul-claro);border:1px solid var(--jdf-borde);border-radius:14px;padding:3px 12px;margin:3px 4px 3px 0}
.jdf-resp{font-weight:700;color:var(--jdf-azul)}
.jdf-nodo{background:#fff;border:1px solid var(--jdf-borde);border-radius:10px;padding:26px 30px;box-shadow:0 2px 8px rgba(20,40,70,.08)}
.jdf-nodo-fin{border-left:6px solid var(--jdf-verde)}
.jdf-tipo-nodo{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--jdf-oro);margin-bottom:6px}
.jdf-nodo h3{color:var(--jdf-azul);font-size:1.15rem;margin:0 0 10px}
.jdf-accion{font-size:.94rem;margin:0 0 6px}
.jdf-fund{font-size:.78rem;color:var(--jdf-gris);font-style:italic;margin-top:10px}
.jdf-modelo-sigi{margin-top:10px;background:var(--jdf-oro-claro);border:1px dashed var(--jdf-oro);border-radius:6px;padding:8px 12px;font-size:.84rem;color:#6d5615}
.jdf-opciones{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.jdf-btn-op{font-size:.95rem;padding:12px 26px;border-radius:8px;border:2px solid var(--jdf-azul);background:#fff;color:var(--jdf-azul);cursor:pointer;min-width:120px}
.jdf-btn-op:hover{background:var(--jdf-azul);color:#fff}
.jdf-btn-op.si{border-color:var(--jdf-verde);color:var(--jdf-verde)}
.jdf-btn-op.si:hover{background:var(--jdf-verde);color:#fff}
.jdf-btn-op.no{border-color:var(--jdf-rojo);color:var(--jdf-rojo)}
.jdf-btn-op.no:hover{background:var(--jdf-rojo);color:#fff}
.jdf-ctrl{margin-top:14px;display:flex;gap:14px}
.jdf-ctrl a{color:var(--jdf-azul);font-size:.84rem;text-decoration:underline;cursor:pointer}

/* ===== Portada (página de inicio) ===== */
.jdf-hero{text-align:center;max-width:760px;margin:0 auto 18px}
.jdf-hero h2{color:var(--jdf-azul);font-size:1.5rem;margin-bottom:6px}
.jdf-hero p{color:var(--jdf-gris);font-size:.92rem}
.jdf-sugerencias{text-align:center;font-size:.82rem;color:var(--jdf-gris);margin:12px auto 6px;max-width:760px}
.jdf-sugerencias a{color:var(--jdf-azul);text-decoration:underline dotted}
.jdf-seccion-t{color:var(--jdf-azul);font-size:1.25rem;border-bottom:2px solid var(--jdf-oro);padding-bottom:6px;margin:26px 0 18px}
.jdf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.jdf-card{display:block;background:#fff;border:1px solid var(--jdf-borde);border-radius:10px;padding:20px;box-shadow:0 1px 3px rgba(20,40,70,.06);text-decoration:none;transition:box-shadow .15s,transform .15s;color:inherit}
.jdf-card:hover{box-shadow:0 4px 14px rgba(20,40,70,.14);transform:translateY(-2px)}
.jdf-card h4{color:var(--jdf-azul);font-size:1.02rem;margin:0 0 6px}
.jdf-card p{font-size:.85rem;color:var(--jdf-gris);margin:0}
.jdf-card-destacada{border-left:5px solid var(--jdf-oro)}
.jdf-etq{display:inline-block;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;padding:2px 9px;border-radius:4px;margin-bottom:8px}
.jdf-etq-casu{background:var(--jdf-azul-claro);color:var(--jdf-azul)}
.jdf-etq-ley{background:var(--jdf-oro-claro);color:var(--jdf-oro)}
.jdf-etq-sigi{background:#e7f2ea;color:var(--jdf-verde)}
.jdf-pie-nota{text-align:center;font-size:.78rem;color:var(--jdf-gris);margin-top:28px}
