.learning-heading{display:flex;gap:24px;align-items:start;justify-content:space-between;margin-bottom:24px}.learning-heading h1{margin:0 0 12px}.learning-eyebrow{color:#176b85;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.learning-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}.learning-actions form{display:flex;gap:8px;margin:0}.learning-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.learning-card{border:1px solid #dce5ea;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 15px #0c304008}.learning-card-body{padding:22px}.learning-card h2{font-size:21px;line-height:1.35;margin:8px 0 14px}.learning-cover{width:100%;height:160px;object-fit:cover;background:#f0f5f7}.learning-badges{display:flex;flex-wrap:wrap;gap:7px}.learning-badges span{background:#edf5f6;color:#22596a;border-radius:5px;padding:4px 8px;font-size:12px}.learning-filters{padding:18px}.learning-filters h2{font-size:19px}.learning-facet{border-top:1px solid #e6edf0;padding-top:10px;margin-top:15px}.learning-facet h3{font-size:15px}.learning-facet a{display:flex;justify-content:space-between;gap:8px;padding:5px 0;line-height:1.3}.learning-facet a.active{font-weight:700;text-decoration:underline}.learning-facet a span{background:#edf3f6;border-radius:4px;padding:0 5px;color:#4e6370}.learning-facet .text-muted{font-size:12px}.learning-detail-image{width:100%;max-height:300px;object-fit:cover;border-radius:10px;margin:15px 0 25px}.learning-metadata{display:grid;grid-template-columns:minmax(140px,1fr) 2fr;gap:10px 20px;padding:20px;background:#f4f8fa;border-radius:10px}.learning-metadata dd{margin:0;overflow-wrap:anywhere}.learning-related{margin-top:36px}.learning-related h3{font-size:17px}.learning-related-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.learning-related-list li{padding:14px;border:1px solid #dce5ea;border-radius:8px}.learning-graph{margin:24px 0;border:1px solid #dce5ea;padding:16px;border-radius:10px}.learning-graph summary{cursor:pointer;font-weight:700}.learning-graph svg{width:100%;height:auto;min-height:360px}.learning-graph a:focus rect{stroke:#005ea8;stroke-width:3}.learning-export{margin-top:24px}.learning-review-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;border-bottom:1px solid #dae4ea;padding:18px 0}.learning-review-row h2{font-size:18px}.learning-review-row>div{flex:1;min-width:180px}.learning-source-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0}.learning-source-row form{margin:0}.learning-source-form>input:not([type=checkbox]),.learning-source-form>select,.learning-source-form>textarea{width:100%;box-sizing:border-box;min-height:38px}.learning-source-form>label{display:block;margin:16px 0 6px}.learning-source-form pre,#runs pre{white-space:pre-wrap;overflow-wrap:anywhere}#sources,#runs{margin-top:36px;padding-top:20px;border-top:1px solid #dce5ea}@media(max-width:767px){.learning-heading{display:block}.learning-heading>.btn{margin-top:12px}.learning-cards,.learning-related-list{grid-template-columns:1fr}.learning-metadata{grid-template-columns:1fr;gap:4px}.learning-metadata dd{margin-bottom:12px}.learning-source-row{flex-wrap:wrap}.learning-graph{overflow:auto}.learning-graph svg{min-width:600px}.learning-review-row input{max-width:100%}}
.learning-form-section{margin:24px 0 36px}.learning-form-section legend{font-size:21px;font-weight:600;color:#235568;padding-bottom:12px;border-bottom:1px solid #dce5ea}


/* Ajustes visuales del catálogo, conservando la identidad del portal. */
.learning-heading {
    padding: 24px;
    border: 1px solid #e1edf5;
    border-radius: 12px;
    background: #f5f9fc;
    box-shadow: none;
}
.learning-heading h1 { font-size: 30px; line-height: 1.2; color: #183d56; margin-bottom: 10px; }
.learning-heading p:last-child { margin: 0; max-width: 620px; color: #526b7b; font-size: 15px; line-height: 1.6; }
.learning-heading .learning-eyebrow { margin-bottom: 10px; font-size: 11px; color: #0069b4; }
#learning-search { padding: 0 0 20px; margin-bottom: 20px; border-bottom: 1px solid #e3eaf0; box-shadow: none; }
#learning-search .search-input { margin-bottom: 16px; }
#learning-search .search-input input { border-radius: 8px; border-color: #cbdce7; min-height: 46px; font-size: 15px; padding-right: 50px; }
#learning-search .search-input button { border-radius: 6px; }
#learning-search h1 { font-size: 18px; line-height: 1.4; color: #3c5362; }
#learning-search .control-order-by { font-size: 13px; }
#learning-search select { border-radius: 6px; border-color: #cbdce7; }
.learning-cards { gap: 22px; }
.learning-card { display: flex; flex-direction: column; border-color: #dee8ee; box-shadow: 0 3px 12px rgba(21, 62, 88, .04); transition: border-color .18s, box-shadow .18s; }
.learning-card:hover { border-color: #aacbdf; box-shadow: 0 6px 20px rgba(21, 62, 88, .09); }
.learning-cover { height: 172px; display: block; }
.learning-card-body { display: flex; flex-direction: column; flex: 1; padding: 20px; }
.learning-card .learning-eyebrow { align-self: flex-start; background: #eaf4fc; color: #08659d; border-radius: 4px; padding: 4px 8px; margin: 0 0 10px; font-size: 10px; line-height: 1.4; }
.learning-card h2 { font-size: 19px; line-height: 1.45; margin: 0 0 8px; border: 0; }
.learning-card h2 a { padding: 0 !important; background: transparent !important; color: #164c6b; display: inline; text-decoration: none; }
.learning-card h2 a:hover { color: #0069b4; text-decoration: underline; }
.learning-provider { color: #6b7f8c; font-size: 12px; margin: 0 0 14px; }
.learning-description { color: #4b626f; font-size: 14px; line-height: 1.65; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 18px; }
.learning-badges { margin-top: auto; padding-top: 4px; }
.learning-badges span { background: #f0f5f8; color: #506b7b; font-size: 11px; border-radius: 4px; }
.learning-card-link { display: flex; justify-content: space-between; align-items: center; margin-top: 18px; padding-top: 14px; border-top: 1px solid #e8eef2; color: #0069b4; font-size: 13px; font-weight: 600; min-height: 40px; }
.learning-filters { padding: 18px; border: 1px solid #e1e9ef; border-radius: 10px; background: #fff; }
.learning-filters > summary { font-size: 16px; font-weight: 600; color: #254d66; cursor: pointer; list-style: none; display: flex; align-items: center; gap: 8px; }
.learning-filters > summary::after { content: '+'; margin-left: auto; font-size: 20px; font-weight: 400; }
.learning-filters[open] > summary::after { content: '−'; }
.learning-filters > summary::-webkit-details-marker { display: none; }
.learning-facet { padding-top: 12px; margin-top: 12px; border-color: #edf1f4; }
.learning-facet > summary { font-size: 13px; font-weight: 600; color: #415f72; cursor: pointer; line-height: 1.5; padding: 4px 0; }
.learning-facet a { font-size: 12px; color: #4c6c7f; border-radius: 5px; padding: 7px 6px; margin-top: 3px; }
.learning-facet a:hover, .learning-facet a.active { background: #eaf4fc; color: #0069b4; text-decoration: none; }
.learning-facet a span { background: #edf4f8; font-size: 11px; min-width: 20px; text-align: center; }
.learning-facet .text-muted { margin: 8px 0 0; color: #7d8e99; }
.learning-facet ul { margin-bottom: 0; }
.learning-detail h1 { font-size: 30px; line-height: 1.3; color: #183d56; margin-top: 10px; }
.learning-detail .lead { font-size: 15px; color: #637b8c; }
.learning-detail h2 { font-size: 22px; margin: 28px 0 16px; color: #254d66; }
.learning-detail .notes { font-size: 15px; line-height: 1.75; color: #3c5362; }
.learning-detail .btn-lg { font-size: 15px; padding: 12px 20px; border-radius: 7px; }
.learning-metadata { font-size: 14px; line-height: 1.6; background: #f5f9fc; border: 1px solid #e3edf3; }
.learning-related-list a { color: #0069b4; font-size: 14px; line-height: 1.5; }
.learning-export { font-size: 12px; }
.learning-card a:focus-visible, .learning-filters a:focus-visible, .learning-filters summary:focus-visible { outline: 3px solid #8fc6ef; outline-offset: 3px; border-radius: 4px; }
@media (max-width: 767px) {
    .learning-heading { padding: 20px; margin-bottom: 20px; }
    .learning-heading h1 { font-size: 26px; }
    .learning-heading p:last-child { font-size: 14px; }
    .learning-filters { margin-bottom: 18px; padding: 14px 16px; }
    .learning-filters > summary { min-height: 32px; }
    .learning-facet > summary, .learning-facet a { min-height: 44px; display: flex; align-items: center; box-sizing: border-box; }
    #learning-search .control-order-by { float: none; display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
    #learning-search select { flex: 1; min-width: 0; min-height: 44px; }
    #learning-search h1 { clear: both; font-size: 17px; }
    #learning-search .search-input input { font-size: 16px; }
    .learning-cover { height: auto; aspect-ratio: 16 / 9; }
    .learning-card-body { padding: 18px; }
    .learning-card-link { min-height: 44px; }
    .learning-detail h1 { font-size: 25px; }
    .learning-detail .module-content { padding: 20px 16px; }
    .learning-detail-image { max-height: 230px; margin: 12px 0 20px; }
    .learning-detail .btn-lg { display: block; text-align: center; }
    .learning-detail .notes { overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) { .learning-card { transition: none; } }

/* El tema base fuerza tipografía y fondos globales; limitar la corrección a learning. */
.learning-heading .learning-eyebrow { font-size: 11px !important; }
.learning-heading p:last-child { font-size: 15px !important; }
.learning-card .learning-eyebrow { font-size: 10px !important; }
.learning-card .learning-provider { font-size: 12px !important; }
.learning-card .learning-description { font-size: 14px !important; }
.learning-card h2 { background: transparent !important; padding: 0 !important; }
.learning-facet .text-muted { font-size: 12px !important; }
#learning-search { box-shadow: none !important; }
.learning-detail .notes p { font-size: 15px !important; }
.learning-detail .lead { font-size: 15px !important; }

body .learning-cards .learning-card h2 { background: transparent !important; padding: 0 !important; border: 0 !important; margin: 0 0 8px !important; }

@media (max-width: 767px) { #learning-search .show-filters { min-height: 44px; padding: 11px 16px; border-radius: 7px; } }

.learning-filter-close { display: none; }
@media (max-width: 767px) {
    body.filters-modal .main { z-index: 12000 !important; }
    body.filters-modal .secondary { z-index: 11000; }
    body.filters-modal .learning-filter-panel {
        z-index: 11001;
        top: 12px; bottom: 12px; left: 12px; right: 12px;
        width: auto; height: auto; max-height: calc(100dvh - 24px);
        padding: 14px; border-radius: 12px; overflow-y: auto;
        box-shadow: 0 12px 48px rgba(15, 45, 66, .2);
    }
    body.filters-modal .learning-filters { border: 0; padding: 8px 0 0; margin: 0; }
    body.filters-modal .learning-filters > summary { padding-right: 46px; min-height: 40px; }
    body.filters-modal .learning-filter-close {
        display: flex; position: absolute; top: 12px; right: 12px;
        align-items: center; justify-content: center;
        width: 44px; height: 44px; border: 0; border-radius: 7px;
        color: #315b75; background: #eef5f9; font-size: 18px;
    }
}
