/* Talleres: tarjeta con foto, tipo destacado y ficha lateral */
.tp-card{--t:#2f7d3a;--t-soft:#e5f3de;--t-ink:#17401c;}
.tp-card[data-tipo="manip"]{--t:#e07b1f;--t-soft:#fdeedd;--t-ink:#6b3606;}
.tp-card[data-tipo="sens"]{--t:#1f8a8a;--t-soft:#dff3f2;--t-ink:#0d4747;}
.tp-card[data-tipo="edu"]{--t:#3d6fb0;--t-soft:#e4edf9;--t-ink:#1b3c6b;}

/* Índice rápido */
.tp-index{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 30px;}
.tp-chip{display:inline-flex;align-items:center;gap:9px;padding:6px 16px 6px 6px;border-radius:999px;background:var(--white);box-shadow:var(--shadow-tight);color:var(--forest-900);font-weight:700;font-size:.9rem;text-decoration:none;transition:transform .15s,box-shadow .15s;}
.tp-chip:hover{transform:translateY(-2px);box-shadow:0 12px 22px -10px rgba(12,31,16,.4);}
.tp-chip-ico{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#2f7d3a;color:#fff;flex:none;}
.tp-chip[data-tipo="manip"] .tp-chip-ico{background:#e07b1f;}
.tp-chip[data-tipo="sens"] .tp-chip-ico{background:#1f8a8a;}
.tp-chip[data-tipo="edu"] .tp-chip-ico{background:#3d6fb0;}
.tp-chip-ico svg{width:16px;height:16px;}

/* Tarjeta */
.edu-resources .tp-card{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start;padding:28px;scroll-margin-top:110px;border-top:6px solid var(--t);}
.tp-photo{position:relative;margin:0 0 22px;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:16/7;background:var(--forest-100);}
.tp-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.tp-photo::after{content:"";position:absolute;inset:auto 0 0 0;height:55%;background:linear-gradient(to top,rgba(12,31,16,.65),transparent);pointer-events:none;}
.tp-badge{position:absolute;top:14px;left:14px;z-index:2;background:rgba(255,255,255,.95);color:var(--forest-900);font-weight:800;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;padding:6px 14px;border-radius:999px;}
.tp-type-pill{position:absolute;left:14px;bottom:14px;z-index:2;display:inline-flex;align-items:center;gap:9px;background:var(--t);color:#fff;font-weight:800;font-size:.95rem;padding:9px 18px 9px 12px;border-radius:999px;box-shadow:0 8px 18px -8px rgba(0,0,0,.5);}
.tp-type-pill svg{width:20px;height:20px;flex:none;}
.edu-resources .tp-title{margin:0 0 14px;font-size:clamp(1.7rem,3vw,2.3rem);}
.tp-main .prose h4{margin:22px 0 10px;}
.edu-resources .tp-main .objectives-list li{background:var(--t-soft);border-radius:var(--radius-sm);padding:10px 14px;color:var(--t-ink);}
.edu-resources .tp-main .objectives-list li svg{color:var(--t);}

/* Ficha lateral */
.tp-ficha{position:sticky;top:96px;background:var(--t-soft);border-radius:var(--radius-md);padding:0 0 20px;overflow:hidden;border:1px solid color-mix(in srgb,var(--t) 25%,transparent);}
.tp-ficha-head{display:flex;align-items:center;gap:14px;background:var(--t);color:#fff;padding:20px 20px;}
.tp-ficha-ico{width:50px;height:50px;border-radius:14px;background:rgba(255,255,255,.2);display:grid;place-items:center;flex:none;}
.tp-ficha-ico svg{width:28px;height:28px;}
.tp-ficha-head small{display:block;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;opacity:.85;font-weight:700;margin-bottom:3px;}
.tp-ficha-head strong{font-family:var(--font-display);font-size:1.2rem;line-height:1.15;font-weight:600;}
.tp-facts{margin:0;padding:16px 20px 4px;}
.tp-facts div{padding:0 0 12px;}
.tp-facts dt{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--t-ink);opacity:.7;font-weight:700;margin-bottom:3px;}
.tp-facts dd{margin:0;font-weight:700;color:var(--t-ink);}
.tp-ficha-block{padding:6px 20px 0;}
.tp-ficha-block h4{font-size:.98rem;margin:14px 0 10px;color:var(--t-ink);}
.tp-ficha .resource-row{display:flex;flex-direction:column;gap:8px;margin:0;}
.tp-ficha .resource-btn{width:100%;justify-content:flex-start;background:var(--white);border-radius:var(--radius-sm);font-size:.86rem;line-height:1.25;padding:10px 14px;text-align:left;}
.tp-ficha .ods-row{display:flex;flex-wrap:wrap;gap:8px;margin:0;}
.tp-ficha .ods-row img{width:54px;height:54px;border-radius:10px;}

@media (max-width:960px){
  .edu-resources .tp-card{grid-template-columns:1fr;gap:22px;padding:20px;}
  .tp-ficha{position:static;}
}
@media (max-width:560px){
  .tp-photo{aspect-ratio:4/3;}
  .tp-index{gap:8px;}
  .tp-chip{font-size:.82rem;}
}

/* Filtro por tipo */
.tp-filter{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 14px;}
.tp-filter-label{font-weight:800;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-right:4px;}
.tp-f{--c:var(--forest-900);display:inline-flex;align-items:center;gap:8px;border:2px solid var(--c);background:transparent;color:var(--c);font:inherit;font-weight:800;font-size:.92rem;padding:8px 16px;border-radius:999px;cursor:pointer;transition:background .15s,color .15s,transform .15s;}
.tp-f[data-tipo="guiada"]{--c:#2f7d3a;}
.tp-f[data-tipo="manip"]{--c:#e07b1f;}
.tp-f[data-tipo="sens"]{--c:#1f8a8a;}
.tp-f[data-tipo="edu"]{--c:#3d6fb0;}
.tp-f:hover{transform:translateY(-2px);}
.tp-f.is-active{background:var(--c);color:#fff;}
.tp-f-n{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:color-mix(in srgb,var(--c) 15%,transparent);font-size:.78rem;}
.tp-f.is-active .tp-f-n{background:rgba(255,255,255,.28);}
.tp-card[hidden],.tp-chip[hidden]{display:none !important;}
@media (max-width:560px){.tp-filter-label{width:100%;}.tp-f{font-size:.85rem;padding:7px 13px;}}
