/* Tutor Eduenia — catálogo público */

.te-catalog,
.te-catalog-page{
	--te-bg:#0B0B0C;--te-card:#141417;--te-line:rgba(255,255,255,.08);
	--te-text:#F4F4F5;--te-muted:#A1A1AA;--te-lime:#F1FF82;--te-coral:#FF6B5B;
	font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}

/* página completa del catálogo */
.te-catalog-page{background:var(--te-bg);color:var(--te-text);padding:72px 0 110px}
.te-catalog-wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.te-catalog-head{text-align:center;margin-bottom:46px}
.te-catalog-head h1{font-size:clamp(34px,5vw,58px);letter-spacing:-.04em;line-height:1.05;font-weight:800;margin:18px 0 14px;color:var(--te-text)}
.te-catalog-head p{color:var(--te-muted);font-size:clamp(16px,1.3vw,19px);max-width:620px;margin:0 auto}
.te-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--te-lime);padding:7px 14px;border:1px solid rgba(241,255,130,.25);border-radius:99px;background:rgba(241,255,130,.06)}
.te-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--te-lime);box-shadow:0 0 10px var(--te-lime)}

/* barra de pestañas */
.te-cat-title{font-size:clamp(26px,3vw,40px);letter-spacing:-.03em;font-weight:800;margin:0 0 22px;color:var(--te-text)}
.te-cat-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px}
.te-cat-tabs{display:inline-flex;gap:6px;padding:5px;border:1px solid var(--te-line);border-radius:99px;background:rgba(255,255,255,.03)}
.te-cat-tab{appearance:none;border:0;background:none;color:var(--te-muted);font-family:inherit;font-weight:600;font-size:14px;padding:9px 20px;border-radius:99px;cursor:pointer;transition:.22s}
.te-cat-tab:hover{color:var(--te-text)}
.te-cat-tab.on{background:var(--te-lime);color:#0B0B0C;box-shadow:0 8px 28px -10px rgba(241,255,130,.6)}
.te-cat-search input{background:rgba(255,255,255,.04);border:1px solid var(--te-line);border-radius:12px;padding:11px 16px;color:var(--te-text);font-family:inherit;font-size:14px;min-width:240px;outline:0}
.te-cat-search input:focus{border-color:rgba(241,255,130,.5)}
.te-cat-search input::placeholder{color:var(--te-muted)}

/* rejilla */
.te-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:22px}
.te-cat-empty,.te-cat-none{color:var(--te-muted);text-align:center;padding:40px 0;font-size:16px}

/* tarjeta */
.te-card{background:var(--te-card);border:1px solid var(--te-line);border-radius:20px;overflow:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s}
.te-card:hover{transform:translateY(-5px);border-color:rgba(241,255,130,.35);box-shadow:0 24px 60px -24px rgba(0,0,0,.9)}
.te-card[hidden]{display:none}
.te-card.featured{border-color:rgba(241,255,130,.28)}
.te-card-link{display:block;color:inherit;text-decoration:none}
.te-card-link:hover,.te-card-link:focus{color:inherit;text-decoration:none}

.te-card-img{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,#232838,#0B0B0C);overflow:hidden}
.te-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.te-card:hover .te-card-img img{transform:scale(1.045)}
.te-card-tag{position:absolute;top:12px;left:12px;color:#fff;font-size:10.5px;font-weight:800;letter-spacing:.1em;padding:5px 10px;border-radius:7px;display:inline-flex;align-items:center;gap:6px}
.te-card-tag.live{background:var(--te-coral)}
.te-card-tag.live::before{content:"";width:6px;height:6px;border-radius:50%;background:#fff;animation:te-pulse 1.8s infinite}
.te-card-tag.rec{background:rgba(11,11,12,.8);border:1px solid var(--te-line);backdrop-filter:blur(8px)}
@keyframes te-pulse{0%,100%{opacity:1}50%{opacity:.35}}
.te-card-label{position:absolute;top:12px;right:12px;background:var(--te-lime);color:#0B0B0C;font-size:10.5px;font-weight:800;letter-spacing:.06em;padding:5px 10px;border-radius:7px;text-transform:uppercase}

.te-card-body{padding:18px 20px 20px}
.te-card-body h3{font-size:18px;font-weight:700;letter-spacing:-.025em;line-height:1.3;margin:0 0 12px;color:var(--te-text)}
.te-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--te-muted);margin-bottom:12px}
.te-card-ava{width:26px;height:26px;border-radius:50%;background:#3f3f46;background-size:cover;background-position:center;display:grid;place-items:center;font-size:10px;font-weight:700;color:#fff;flex:none}
.te-card-inst{font-weight:600;color:#D4D4D8}
.te-card-bits{color:var(--te-muted)}

.te-card-dates{border-top:1px solid var(--te-line);padding-top:12px;margin-bottom:14px;display:flex;flex-direction:column;gap:3px}
.te-card-when{color:var(--te-lime);font-weight:700;font-size:13px}
.te-card-sched{color:var(--te-muted);font-size:12.5px}
.te-card-cd{color:var(--te-coral);font-weight:700;font-size:12px;margin-top:2px}

.te-card-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}
.te-card-price{font-weight:800;font-size:17px;color:var(--te-text);letter-spacing:-.02em}
.te-card-price s{color:#71717a;font-weight:500;font-size:13px;margin-right:7px}
.te-card-btn{background:var(--te-lime);color:#0B0B0C;font-weight:700;font-size:13.5px;padding:10px 16px;border-radius:11px;white-space:nowrap;transition:box-shadow .25s,transform .25s}
.te-card:hover .te-card-btn{box-shadow:0 12px 32px -10px rgba(241,255,130,.7)}

@media (max-width:640px){
	.te-catalog-page{padding:48px 0 72px}
	.te-grid{grid-template-columns:1fr;gap:18px}
	.te-cat-bar{flex-direction:column;align-items:stretch}
	.te-cat-tabs{overflow-x:auto;justify-content:flex-start}
	.te-cat-search input{width:100%}
}

@media (prefers-reduced-motion:reduce){
	.te-card,.te-card-img img,.te-card-btn{transition:none}
	.te-card:hover{transform:none}
	.te-card-tag.live::before{animation:none}
}
