/* Aprende — estilos propios (reutiliza tokens/nav/footer de /site.css) */
.aprende-controls{padding:28px 0 8px; display:flex; flex-direction:column; gap:16px;}
.search-bar{display:flex; align-items:center; gap:10px; background:var(--ivory); border:1px solid var(--line);
  border-radius:999px; padding:13px 20px; color:var(--ink-muted); max-width:560px;}
.search-bar svg{flex-shrink:0;}
.search-bar input{border:none; outline:none; background:transparent; font-size:15px; font-family:inherit; color:var(--ink); width:100%;}
.search-bar input::placeholder{color:var(--ink-faint);}

.phase-tabs{display:flex; flex-wrap:wrap; gap:8px;}
.phase-tab{font-size:13.5px; font-weight:600; padding:9px 18px; border-radius:999px; border:1px solid var(--line);
  background:var(--ivory); color:var(--ink-soft); cursor:pointer; transition:background .2s, color .2s, border-color .2s;}
.phase-tab:hover{background:#fff;}
.phase-tab.active{background:var(--coral); color:#fff; border-color:var(--coral);}

.chip-row{display:flex; flex-wrap:wrap; gap:7px;}
.cat-chip{font-size:12.5px; font-weight:600; padding:7px 14px; border-radius:999px; border:1px solid var(--line);
  background:#fff; color:var(--ink-muted); cursor:pointer; transition:background .2s, color .2s, border-color .2s;}
.cat-chip:hover{border-color:var(--coral);}
.cat-chip.active{background:var(--tyr-deep); color:#fff; border-color:var(--tyr-deep);}

.results-count{font-size:13px; color:var(--ink-muted); margin:22px 0 14px; font-style:italic;}

.card-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(270px, 1fr)); gap:20px; padding-bottom:70px;}
.a-card{display:flex; flex-direction:column; background:var(--ivory); border:1px solid var(--line); border-radius:20px;
  overflow:hidden; text-decoration:none; color:inherit; transition:transform .25s var(--ease), box-shadow .25s var(--ease);}
.a-card:hover{transform:translateY(-4px); box-shadow:0 18px 40px rgba(60,40,30,0.12);}
.a-card .thumb{aspect-ratio:4/3; background:linear-gradient(135deg, var(--peach), var(--coral-soft)); overflow:hidden; position:relative;}
.a-card .thumb img{width:100%; height:100%; object-fit:cover;}
.thumb-fallback{position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  font-family:'Cormorant Garamond',serif; font-style:italic; font-weight:600; font-size:52px; color:rgba(255,255,255,0.85);}
.a-card-body{padding:18px 20px 20px; display:flex; flex-direction:column; gap:8px; flex:1;}
.a-card-badges{display:flex; gap:6px; flex-wrap:wrap;}
.badge-phase-mini{font-size:10px; letter-spacing:0.06em; text-transform:uppercase; font-weight:700; border-radius:999px; padding:3px 9px;}
.badge-p{background:rgba(217,194,221,0.4); color:#6a4a71;}
.badge-e{background:rgba(201,124,93,0.16); color:var(--peach-deep);}
.badge-x{background:rgba(44,75,111,0.12); color:var(--tyr-deep);}
.a-card h3{font-family:'Cormorant Garamond',serif; font-style:italic; font-weight:600; font-size:20px; color:var(--ink);
  margin:2px 0 0; line-height:1.22;}
.a-card .teaser{font-size:13.5px; color:var(--ink-muted); line-height:1.5; margin:0; flex:1;}
.a-card-meta{font-size:12px; color:var(--ink-faint); margin:0; font-weight:600;}

.empty-state{max-width:480px; margin:20px auto 90px; text-align:center; background:var(--ivory); border:1px dashed var(--line);
  border-radius:20px; padding:40px 30px;}
.empty-state p{color:var(--ink-muted); font-size:14.5px; margin:0 0 14px;}
.empty-state strong{color:var(--ink); font-size:16px;}

/* ── Detalle ── */
.aprende-detail-hero{padding-top:36px;}
.back-link{display:inline-block; font-size:13.5px; font-weight:600; color:var(--ink-muted); margin-bottom:18px;}
.back-link:hover{color:var(--coral);}
.aprende-detail-hero .eyebrow{display:flex; flex-wrap:wrap; gap:6px; justify-content:center; margin-bottom:16px;}
.badge-cat{font-size:11px; font-weight:700; letter-spacing:0.04em; color:var(--coral); background:rgba(201,124,93,0.1);
  border-radius:999px; padding:5px 12px;}
.meta-line{font-size:14px; color:var(--ink-muted); margin:4px 0 0;}
.phase-badges{display:flex; gap:8px; justify-content:center; margin-top:16px; flex-wrap:wrap;}
.badge-phase{font-size:12px; font-weight:700; border-radius:999px; padding:6px 15px;}

.article-wrap{max-width:760px; padding-top:10px;}
.gallery-strip{display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:10px; margin:0 0 32px;}
.gallery-strip figure{margin:0; border-radius:16px; overflow:hidden; border:1px solid var(--line);}
.gallery-strip img{width:100%; height:100%; object-fit:cover; aspect-ratio:4/3; display:block;}

.register-switch{display:flex; gap:6px; background:var(--ivory); border:1px solid var(--line); border-radius:999px;
  padding:5px; margin:0 auto 36px; max-width:360px;}
.reg-btn{flex:1; border:none; background:transparent; padding:10px 14px; border-radius:999px; font-weight:600;
  font-size:13.5px; color:var(--ink-muted); cursor:pointer; transition:background .2s, color .2s;}
.reg-btn.active{background:var(--coral); color:#fff;}
.reg-btn:not(.active):hover{background:rgba(201,124,93,0.1); color:var(--ink);}

.article-body{font-size:16px; line-height:1.75; color:var(--ink-soft);}
.register-panel{display:none;}
.register-panel.active{display:block;}
.article-body h2{font-family:'Cormorant Garamond',serif; font-style:italic; font-weight:600; font-size:28px; color:var(--ink);
  margin:38px 0 10px; line-height:1.15;}
.article-body h2:first-child{margin-top:0;}
.article-body h3{font-size:19px; font-weight:700; color:var(--ink); margin:28px 0 8px;}
.article-body h4{font-size:16px; font-weight:700; color:var(--peach-deep); margin:22px 0 6px;}
.article-body p{margin:0 0 16px;}
.article-body strong{color:var(--ink);}
.article-body ul, .article-body ol{margin:0 0 18px; padding-left:24px;}
.article-body li{margin:6px 0;}
.article-body blockquote{background:rgba(156,146,113,0.12); border-left:3px solid var(--sage); border-radius:0 14px 14px 0;
  padding:14px 20px; margin:20px 0;}
.article-body blockquote p{margin:0; font-size:15px; font-style:italic; color:var(--ink-soft);}
.article-body sup.cite{font-size:11px; margin-left:1px;}
.article-body sup.cite a{color:var(--coral); font-weight:700;}
.table-wrap{overflow-x:auto; margin:20px 0; border:1px solid var(--line); border-radius:14px;}
.article-body table{width:100%; border-collapse:collapse; font-size:14px; min-width:420px;}
.article-body th{background:var(--ivory); text-align:left; font-weight:700; color:var(--ink); padding:10px 14px;
  border-bottom:2px solid var(--line); white-space:nowrap;}
.article-body td{padding:10px 14px; border-bottom:1px solid var(--line); color:var(--ink-soft);}
.article-body tr:last-child td{border-bottom:none;}

.disclaimer-callout{margin:36px 0;}
.refs-block{margin-top:10px;}
.back-bottom{text-align:center; margin:50px 0 70px; font-size:14.5px; font-weight:600;}

@media(max-width:820px){
  .card-grid{grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));}
  .article-body h2{font-size:24px;}
}

/* ── Uso / licencia (bloque en cada artículo) ── */
.uso-licencia{margin:44px 0 10px; padding:24px 26px; background:var(--ivory); border:1px solid var(--line); border-radius:18px;}
.uso-licencia h3{font-size:16px; font-weight:700; color:var(--ink); margin:0 0 10px;}
.uso-licencia p{font-size:14px; line-height:1.6; color:var(--ink-muted); margin:0 0 10px;}
.uso-licencia strong{color:var(--ink);}
.lic-btn{display:inline-block; margin-top:6px; background:var(--coral); color:#fff; font-weight:600; font-size:14px; padding:11px 20px; border-radius:999px; text-decoration:none;}
.lic-btn:hover{filter:brightness(1.05);}

/* ── Página de licencia + formulario ── */
.lic-page{max-width:720px;}
.lic-form{margin:30px 0 10px; padding:26px; background:var(--ivory); border:1px solid var(--line); border-radius:20px; display:flex; flex-direction:column; gap:16px;}
.lic-form h3{font-size:18px; font-weight:700; color:var(--ink); margin:0;}
.lic-form label{display:flex; flex-direction:column; gap:6px; font-size:13.5px; font-weight:600; color:var(--ink-soft);}
.lic-hint{font-weight:400; color:var(--ink-faint); font-size:12px;}
.lic-form input, .lic-form select, .lic-form textarea{font-family:inherit; font-size:15px; color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:12px; padding:11px 14px; outline:none;}
.lic-form input:focus, .lic-form select:focus, .lic-form textarea:focus{border-color:var(--coral);}
.lic-check{flex-direction:row; align-items:flex-start; gap:10px; font-weight:400; color:var(--ink-soft); font-size:13.5px;}
.lic-check input{margin-top:3px;}
.lic-rgpd{font-size:12px; color:var(--ink-faint); line-height:1.5; margin:0;}
.lic-rgpd a{color:var(--coral);}
.lic-submit{align-self:flex-start; background:var(--coral); color:#fff; font-weight:700; font-size:15px; border:none; border-radius:999px; padding:13px 28px; cursor:pointer;}
.lic-submit:hover{filter:brightness(1.05);}
.lic-ok{background:rgba(156,146,113,0.14); border-radius:12px; padding:12px 16px; font-size:13.5px; color:var(--ink-soft); margin:0;}
