/* Conexión Católica 5.6.26 · Confesión, biblioteca y novenas */

.confession-hero-v5626,
.formation-library-hero-v5626,
.formation-detail-hero-v5626{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);
  gap:1rem;
  margin-bottom:1.2rem;
}
.confession-hero-v5626>div,
.formation-library-hero-v5626>div:first-child,
.formation-detail-hero-v5626>div{
  padding:clamp(1.5rem,4vw,3rem);
  border-radius:28px;
  color:#fff;
  background:linear-gradient(135deg,#163f53,#167078 58%,#2da298);
}
.confession-hero-v5626 h1,
.formation-library-hero-v5626 h1,
.formation-detail-hero-v5626 h1{color:#fff;font-size:clamp(2.1rem,5vw,4.1rem);line-height:1.02;margin:.35rem 0}
.confession-hero-v5626 p,
.formation-library-hero-v5626 p,
.formation-detail-hero-v5626 p{color:rgba(255,255,255,.93)}
.confession-hero-v5626>aside,
.formation-detail-hero-v5626>aside{
  padding:1.4rem;border:1px solid var(--line);border-radius:28px;
  background:linear-gradient(180deg,#fffaf1,#f1fbfa);
  display:flex;flex-direction:column;justify-content:center;gap:.55rem;
}
.confession-hero-v5626>aside p,
.formation-detail-hero-v5626>aside p{color:var(--text)}

.confession-foundations-v5626,
.precept-grid-v5626,
.vice-grid-v5626,
.state-grid-v5626,
.mercy-columns-v5626{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem;margin:1rem 0
}
.confession-foundations-v5626 article,
.precept-grid-v5626 article,
.vice-grid-v5626 article,
.state-grid-v5626 article,
.mercy-columns-v5626 article{
  padding:1rem;border:1px solid var(--line);border-radius:18px;background:var(--surface)
}
.confession-foundations-v5626 h2,
.precept-grid-v5626 h3,
.vice-grid-v5626 h3,
.state-grid-v5626 h3,
.mercy-columns-v5626 h3{margin:.1rem 0 .55rem}

.confession-roadmap-v5626,
.confession-section-v5626{
  padding:clamp(1.2rem,3vw,2rem);border:1px solid var(--line);
  border-radius:24px;background:var(--surface);margin:1rem 0;box-shadow:var(--shadow-sm)
}
.confession-roadmap-v5626 ol{display:grid;gap:.7rem;list-style:none;padding:0;margin:0}
.confession-roadmap-v5626 li{display:grid;grid-template-columns:46px 1fr;gap:.8rem;padding:.9rem;border-radius:16px;background:var(--surface-soft)}
.confession-roadmap-v5626 li>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#176f72;color:#fff;font-weight:900}
.confession-roadmap-v5626 h3{margin:0}
.confession-roadmap-v5626 p{margin:.25rem 0}

.commandment-grid-v5626{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.75rem}
.commandment-card-v5626{border:1px solid var(--line);border-radius:18px;background:var(--surface-soft);overflow:hidden}
.commandment-card-v5626 summary{display:flex;align-items:center;gap:.65rem;padding:1rem;cursor:pointer;list-style:none}
.commandment-card-v5626 summary::-webkit-details-marker{display:none}
.commandment-card-v5626 summary>span{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#174e63;color:#fff;font-weight:900}
.commandment-card-v5626 ul{padding:0 1.1rem 0 2.1rem;display:grid;gap:.5rem}
.confession-local-check-v5626{display:flex;gap:.55rem;align-items:flex-start;padding:1rem;border-top:1px solid var(--line);font-weight:750}
.confession-local-check-v5626 input{margin-top:.2rem;inline-size:20px;block-size:20px}

.confession-section-v5626.mercy{background:linear-gradient(135deg,#f0fbfa,#fffaf2)}
.omission-list-v5626{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.55rem;padding:0;list-style:none}
.omission-list-v5626 li{padding:.75rem;border-radius:14px;background:#fff;border:1px solid #dce8e7}
.say-it-list-v5626{display:grid;gap:.55rem}
.confession-safety-v5626,.formation-review-note-v5626,.formation-policy-v5626{
  display:grid;grid-template-columns:52px 1fr;gap:1rem;padding:1.2rem;border-radius:20px;
  background:#fff8e8;border:1px solid #e8d49c;margin:1rem 0
}
.confession-safety-v5626>span,.formation-review-note-v5626>span,.formation-policy-v5626>span{
  width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#174e63;color:#fff;font-size:1.3rem
}

.novena-status-grid-v5626{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1.25rem 0 1.8rem
}
.novena-status-card-v5626{
  min-height:145px;padding:1.2rem;border:1px solid var(--line);border-radius:20px;
  background:var(--surface);display:flex;flex-direction:column;align-items:center;
  justify-content:center;text-align:center;text-decoration:none;box-shadow:var(--shadow-sm)
}
.novena-status-card-v5626>span{font-weight:850;color:var(--primary-deep)}
.novena-status-card-v5626>strong{display:block;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1;margin:.45rem 0;font-weight:950;color:#154e63}
.novena-status-card-v5626>small{color:var(--muted)}
.novena-status-card-v5626.is-active{background:#164e63;border-color:#164e63}
.novena-status-card-v5626.is-active :is(span,strong,small){color:#fff}

.formation-library-hero-v5626{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}
.formation-summary-v5626{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}
.formation-summary-v5626 article{padding:1rem;border:1px solid var(--line);border-radius:18px;background:var(--surface);display:grid;place-items:center;text-align:center}
.formation-summary-v5626 strong{font-size:2rem;color:#164e63}
.formation-summary-v5626 span{color:var(--muted);font-weight:750}

.formation-type-section-v5626,.formation-import-section-v5626{margin:1.5rem 0}
.formation-card-grid-v5626{display:grid;grid-template-columns:repeat(auto-fit,minmax(285px,1fr));gap:1rem}
.formation-card-grid-v5626.compact{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.formation-card-v5626{display:flex;flex-direction:column;gap:.65rem;padding:1.15rem;border-radius:20px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm)}
.formation-card-v5626 header{display:flex;align-items:center;justify-content:space-between}
.formation-card-v5626 header>span{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:#e8f7f5;font-size:1.35rem}
.formation-card-v5626 header>small{font-weight:800;color:#17675f}
.formation-card-v5626 h3{margin:0;font-size:1.22rem}
.formation-card-v5626 p{margin:0}
.formation-card-v5626 dl{margin:auto 0 0}
.formation-card-v5626 dl div{display:grid;gap:.15rem}
.formation-card-v5626 dt{font-size:.75rem;text-transform:uppercase;color:var(--muted);font-weight:800}
.formation-card-v5626 dd{margin:0;font-size:.9rem}
.formation-card-v5626.type-retreat{border-top:5px solid #6c58a0}
.formation-card-v5626.type-route{border-top:5px solid #17887f}
.formation-card-v5626.type-novena{border-top:5px solid #c58a1b}

.formation-detail-hero-v5626.type-retreat>div{background:linear-gradient(135deg,#3d315f,#7059a0)}
.formation-detail-hero-v5626.type-novena>div{background:linear-gradient(135deg,#5e3a17,#a66a1c)}
.formation-facts-v5626{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.formation-facts-v5626 span{padding:.45rem .7rem;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;font-weight:750}
.formation-source-v5626,.formation-progress-panel-v5626{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;
  padding:1.2rem;border:1px solid var(--line);border-radius:20px;background:var(--surface);margin:1rem 0
}
.formation-source-v5626 code{padding:.65rem;border-radius:12px;background:var(--surface-soft);word-break:break-word}
.formation-progress-number-v5626{display:grid;place-items:center;min-width:140px;padding:1rem;border-radius:18px;background:#164e63;color:#fff}
.formation-progress-number-v5626 strong{font-size:2rem}
.formation-unit-list-v5626{display:grid;gap:.85rem}
.formation-unit-list-v5626 article{display:grid;grid-template-columns:58px 1fr;gap:1rem;padding:1.1rem;border:1px solid var(--line);border-radius:20px;background:var(--surface)}
.formation-unit-list-v5626 article>label{display:flex;flex-direction:column;align-items:center;gap:.4rem}
.formation-unit-list-v5626 article>label input{inline-size:24px;block-size:24px}
.formation-unit-list-v5626 article>label span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#e8f7f5;color:#164e63;font-weight:900}
.formation-unit-list-v5626 h2{margin:0 0 .55rem}
.formation-unit-list-v5626 p{margin:.35rem 0}

html[data-a11y-contrast="high"] body :where(
  .confession-hero-v5626>div,.confession-hero-v5626>aside,.confession-foundations-v5626 article,
  .confession-roadmap-v5626,.confession-section-v5626,.commandment-card-v5626,
  .precept-grid-v5626 article,.vice-grid-v5626 article,.state-grid-v5626 article,
  .mercy-columns-v5626 article,.novena-status-card-v5626,.formation-library-hero-v5626>div,
  .formation-summary-v5626 article,.formation-card-v5626,.formation-detail-hero-v5626>div,
  .formation-detail-hero-v5626>aside,.formation-source-v5626,.formation-progress-panel-v5626,
  .formation-unit-list-v5626 article
){background:#fff!important;background-image:none!important;color:#111!important;border-color:#111!important;box-shadow:none!important}

html[data-a11y-contrast="maximum"] body :where(
  .confession-hero-v5626>div,.confession-hero-v5626>aside,.confession-foundations-v5626 article,
  .confession-roadmap-v5626,.confession-section-v5626,.commandment-card-v5626,
  .precept-grid-v5626 article,.vice-grid-v5626 article,.state-grid-v5626 article,
  .mercy-columns-v5626 article,.novena-status-card-v5626,.formation-library-hero-v5626>div,
  .formation-summary-v5626 article,.formation-card-v5626,.formation-detail-hero-v5626>div,
  .formation-detail-hero-v5626>aside,.formation-source-v5626,.formation-progress-panel-v5626,
  .formation-unit-list-v5626 article
){background:#000!important;background-image:none!important;color:#fff!important;border-color:#fff!important;box-shadow:none!important}

@media(max-width:980px){
  .confession-hero-v5626,.formation-library-hero-v5626,.formation-detail-hero-v5626,
  .formation-source-v5626,.formation-progress-panel-v5626{grid-template-columns:1fr}
  .novena-status-grid-v5626{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .commandment-grid-v5626,.novena-status-grid-v5626{grid-template-columns:1fr}
  .novena-status-card-v5626{min-height:115px}
  .formation-unit-list-v5626 article{grid-template-columns:1fr}
  .formation-unit-list-v5626 article>label{flex-direction:row;justify-content:flex-start}
}
