/* Campus C-Ingenieria: restore clear navigation and distinct learning activity icons.
   Presentation only. Existing access, availability and completion controls are retained. */
:root {
    --ci-icon-video: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2226%22%20height%3D%2220%22%20rx%3D%223%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222.6%22%2F%3E%3Cpath%20d%3D%22M13%2010v10l9-5z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M11%2029h10%22%20stroke%3D%22white%22%20stroke-width%3D%222.6%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E");
    --ci-icon-certificate: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20d%3D%22M19%2025H5V4h22v12M10%2010h12M10%2015h7%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2223%22%20cy%3D%2221%22%20r%3D%225%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222.5%22%2F%3E%3Cpath%20d%3D%22m20%2025-1%206%204-2%204%202-1-6%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E");
    --ci-icon-resource: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20d%3D%22M7%203h12l7%207v19H7zM19%203v8h7M12%2017h9M12%2022h9%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
    --ci-icon-link: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20d%3D%22m13%2011%205-5a7%207%200%200%201%2010%2010l-5%205M19%2021l-5%205A7%207%200%200%201%204%2016l5-5M11%2021l10-10%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%2F%3E%3C%2Fsvg%3E");
    --ci-icon-quiz: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Crect%20x%3D%225%22%20y%3D%223%22%20width%3D%2222%22%20height%3D%2226%22%20rx%3D%223%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222.5%22%2F%3E%3Cpath%20d%3D%22m10%2011%202%202%204-4M19%2011h3m-12%209%202%202%204-4M19%2020h3%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
}
@media (min-width: 768px) {
    body:not(.notloggedin) .navbar.fixed-top { overflow: visible; height: 70px; }
    body:not(.notloggedin) .navbar .primary-navigation {
        position: absolute; top: 70px; left: 0; right: 0;
        height: 58px; padding: 0 28px; background: #174aa4;
        box-shadow: 0 3px 8px #12346d26; border-top: 1px solid #ffffff26;
    }
    body:not(.notloggedin) .primary-navigation .moremenu { height: 58px; width: 100%; background: transparent; }
    body:not(.notloggedin) .primary-navigation .more-nav { height: 58px; justify-content: center; }
    body:not(.notloggedin) .primary-navigation .nav-link {
        height: 58px !important; display: flex; align-items: center; gap: 9px;
        padding: 0 22px; color: #fff !important; font-size: 16px; font-weight: 600;
        border: 0; border-bottom: 4px solid transparent; border-radius: 0;
    }
    body:not(.notloggedin) .primary-navigation .nav-link:hover,
    body:not(.notloggedin) .primary-navigation .nav-link:focus { background: #103879 !important; color: #fff !important; }
    body:not(.notloggedin) .primary-navigation .nav-link.active {
        background: #103879 !important; border-bottom-color: #ffd166 !important; color: #fff !important;
    }
    body:not(.notloggedin) .primary-navigation .dropdown-menu { background: #fff; padding: 6px; box-shadow: 0 8px 24px #18315333; }
    body:not(.notloggedin) .primary-navigation .dropdown-menu .nav-link { color: #173b75 !important; height: 48px !important; border-radius: 5px; }
    body:not(.notloggedin) .primary-navigation .dropdown-menu .nav-link:hover,
    body:not(.notloggedin) .primary-navigation .dropdown-menu .nav-link:focus { color: #fff !important; }
    body:not(.notloggedin) #page,
    body:not(.notloggedin) #page.drawers { margin-top: 128px; }
    body:not(.notloggedin) .secondary-navigation { top: 128px; background: #f8faff; border-bottom: 1px solid #cddbeb; filter: none; }
    body:not(.notloggedin) .secondary-navigation .moremenu .nav-tabs .nav-link { color: #23426a; font-size: 15px; }
    body:not(.notloggedin) .secondary-navigation .moremenu .nav-tabs .nav-link.active { color: #12489c; border-bottom: 3px solid #174aa4; }
    body:not(.notloggedin) .secondary-navigation .moremenu .nav-tabs .nav-link:hover,
    body:not(.notloggedin) .secondary-navigation .moremenu .nav-tabs .nav-link:focus { background: #e7effc; color: #103879; }
    body.has-secondarynavigation:not(.notloggedin) #page,
    body.has-secondarynavigation:not(.notloggedin) #page.drawers { margin-top: 188px; }
    body:not(.notloggedin) .drawer-left,
    body:not(.notloggedin) .drawer-right { top: 128px; height: calc(100vh - 128px); }
    body.has-secondarynavigation:not(.notloggedin) .drawer-left,
    body.has-secondarynavigation:not(.notloggedin) .drawer-right { top: 188px; height: calc(100vh - 188px); }
    body:not(.notloggedin) .drawer-toggles .drawer-toggler { top: 138px; }
    body.has-secondarynavigation:not(.notloggedin) .drawer-toggles .drawer-toggler { top: 198px; }
    body.hasaccessibilitybar:not(.notloggedin) #page { margin-top: 158px; }
    body.has-secondarynavigation.hasaccessibilitybar:not(.notloggedin) #page { margin-top: 218px; }
    body.hasaccessibilitybar:not(.notloggedin) .drawer-left,
    body.hasaccessibilitybar:not(.notloggedin) .drawer-right { top: 158px; height: calc(100vh - 158px); }
    body.has-secondarynavigation.hasaccessibilitybar:not(.notloggedin) .drawer-left,
    body.has-secondarynavigation.hasaccessibilitybar:not(.notloggedin) .drawer-right { top: 218px; height: calc(100vh - 218px); }
}
body:not(.notloggedin) .primary-navigation [data-key] > a::before {
    font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: 19px;
    width: 24px; text-align: center; flex-shrink: 0;
}
body:not(.notloggedin) .primary-navigation [data-key="home"] > a::before { content: "\f015"; }
body:not(.notloggedin) .primary-navigation [data-key="myhome"] > a::before { content: "\f009"; }
body:not(.notloggedin) .primary-navigation [data-key="mycourses"] > a::before { content: "\f19d"; }
body:not(.notloggedin) .primary-navigation [data-key="tienda"] > a::before { content: "\f290"; }
body:not(.notloggedin) .primary-navigation [data-key="ciboletinbeta"] > a::before { content: "\f1ea"; }
body:not(.notloggedin) .primary-navigation [data-key="siteadminnode"] > a::before { content: "\f013"; }
body:not(.notloggedin) #theme_boost-drawers-courseindex { background: #173e79; color: #fff; border-right: 1px solid #123565; }
body:not(.notloggedin) #theme_boost-drawers-courseindex .drawerheader { background: #10325f; border-bottom: 1px solid #ffffff26; }
body:not(.notloggedin) #theme_boost-drawers-courseindex .drawerheader button,
body:not(.notloggedin) #theme_boost-drawers-courseindex .drawerheader button .icon { color: #fff; }
body:not(.notloggedin) #theme_boost-drawers-courseindex .drawerheader button:hover { background: #245391; }
body:not(.notloggedin) #theme_boost-drawers-courseindex .drawerheader .dropdown-menu button { color: #173b75; background: #fff; }
body:not(.notloggedin) #theme_boost-drawers-courseindex .drawerheader .dropdown-menu button:hover { background: #e7effc; }
body:not(.notloggedin) #theme_boost-drawers-courseindex .drawercontent::before {
    content: "CONTENIDO DEL CURSO"; display: block; padding: 10px 16px 18px;
    font-size: 12px; letter-spacing: .08em; font-weight: 700; color: #c4dcff;
}
body:not(.notloggedin) #courseindex .courseindex-item { padding: 11px 12px; border-radius: 6px; min-height: 44px; }
body:not(.notloggedin) #courseindex .courseindex-item .courseindex-link,
body:not(.notloggedin) #courseindex .courseindex-chevron,
body:not(.notloggedin) #courseindex .courseindex-locked { color: #fff; }
body:not(.notloggedin) #courseindex .courseindex-section-title { background: #10325f; margin-bottom: 5px; border-left: 4px solid #6199ee; font-weight: 700; }
body:not(.notloggedin) #courseindex .courseindex-section { margin-bottom: 14px; }
body:not(.notloggedin) #courseindex .courseindex-item.pageitem { background: #0c274d; border-left: 4px solid #ffd166; }
body:not(.notloggedin) #courseindex .courseindex-item:hover { background: #245391; }
body:not(.notloggedin) #courseindex .courseindex-item:focus-within { outline: 2px solid #ffd166; outline-offset: -2px; }
body:not(.notloggedin) #courseindex .courseindex-item.restrictions .courseindex-link { color: #d0def2; }
body:not(.notloggedin) #courseindex a.courseindex-link[href*="/mod/"]::before {
    content: ""; display: inline-block; width: 18px; height: 18px; margin-right: 8px;
    vertical-align: -3px; background-repeat: no-repeat; background-position: center; background-size: contain;
}
body:not(.notloggedin) #courseindex a[href*="/mod/videotime/"]::before { background-image: var(--ci-icon-video); }
body:not(.notloggedin) #courseindex a[href*="/mod/customcert/"]::before { background-image: var(--ci-icon-certificate); }
body:not(.notloggedin) #courseindex a[href*="/mod/url/"]::before { background-image: var(--ci-icon-link); }
body:not(.notloggedin) #courseindex a[href*="/mod/resource/"]::before { background-image: var(--ci-icon-resource); }
body:not(.notloggedin) #courseindex a[href*="/mod/quiz/"]::before { background-image: var(--ci-icon-quiz); }
body:not(.notloggedin) .activity .activityiconcontainer.courseicon {
    width: 54px !important; height: 54px !important; min-width: 54px; min-height: 54px; max-height: 54px !important; margin-right: 16px !important;
    border-radius: 11px; background-color: #1956ac; background-position: center; background-repeat: no-repeat;
    background-size: 34px 34px; border: 1px solid #0000000d; box-shadow: 0 2px 5px #102e551a;
}
body:not(.notloggedin) .activity .activityiconcontainer.courseicon img.activityicon { filter: brightness(0) invert(1); width: 32px; height: 32px; }
body:not(.notloggedin) .activity.modtype_videotime .activityiconcontainer { background-color: #1456b8; background-image: var(--ci-icon-video); }
body:not(.notloggedin) .activity.modtype_customcert .activityiconcontainer { background-color: #a86200; background-image: var(--ci-icon-certificate); }
body:not(.notloggedin) .activity.modtype_url .activityiconcontainer { background-color: #087c83; background-image: var(--ci-icon-link); }
body:not(.notloggedin) .activity.modtype_resource .activityiconcontainer { background-color: #087c83; background-image: var(--ci-icon-resource); }
body:not(.notloggedin) .activity.modtype_quiz .activityiconcontainer { background-color: #7035aa; background-image: var(--ci-icon-quiz); }
body:not(.notloggedin) .activity:is(.modtype_videotime,.modtype_customcert,.modtype_url,.modtype_resource,.modtype_quiz) .activityiconcontainer img.activityicon { opacity: 0; }
body:not(.notloggedin) .activity .activity-name-area { min-height: 54px; justify-content: center; }
body:not(.notloggedin) .activity .instancename { font-size: 1.0625rem; font-weight: 600; }
body:not(.notloggedin) .activity.modtype_videotime .activity-name-area::before,
body:not(.notloggedin) .activity.modtype_customcert .activity-name-area::before,
body:not(.notloggedin) .activity.modtype_quiz .activity-name-area::before {
    display: block; font-size: 11px; font-weight: 700; letter-spacing: .065em; margin-bottom: 4px;
}
body:not(.notloggedin) .activity.modtype_videotime .activity-name-area::before { content: "VIDEO DE CLASE"; color: #174aa4; }
body:not(.notloggedin) .activity.modtype_customcert .activity-name-area::before { content: "CERTIFICADO"; color: #895000; }
body:not(.notloggedin) .activity.modtype_quiz .activity-name-area::before { content: "EVALUACIÓN"; color: #642a9e; }
body:not(.notloggedin) .activity.modtype_customcert > .activity-item {
    background: #fff9ec; border: 1px solid #e4c278; border-left: 5px solid #ba7a13; border-radius: 10px; padding: 18px;
}
body:not(.notloggedin) .activity.modtype_customcert .activity-availability { color: #463a25; }
@media (max-width: 767px) {
    body:not(.notloggedin) .navbar-toggler { background: #174aa4; color: #fff; border-radius: 6px; padding: 9px 12px !important; }
    body:not(.notloggedin) .navbar-toggler .navbar-toggler-icon { filter: invert(1); }
    body:not(.notloggedin) .navbar-toggler::after { content: "Menú"; font-size: 15px; font-weight: 700; margin-left: 7px; }
    body:not(.notloggedin) #theme_moove-drawers-primary .drawercontent { background: #173e79; }
    body:not(.notloggedin) #theme_moove-drawers-primary .list-group-item { background: #173e79; color: #fff; min-height: 50px; font-size: 16px; font-weight: 600; border-color: #ffffff20; }
    body:not(.notloggedin) #theme_moove-drawers-primary .list-group-item.active { background: #10325f; border-left: 4px solid #ffd166; }
    body:not(.notloggedin) .activity .activityiconcontainer.courseicon { width: 48px !important; height: 48px !important; min-width: 48px; min-height: 48px; max-height: 48px !important; margin-right: 12px !important; background-size: 30px; }
    body:not(.notloggedin) .activity .instancename { font-size: 16px; }
    body:not(.notloggedin) .activity.modtype_customcert > .activity-item { padding: 12px; }
}
@media print {
    body:not(.notloggedin) .navbar .primary-navigation { display: none; }
    body:not(.notloggedin) #page, body.has-secondarynavigation:not(.notloggedin) #page { margin-top: 0; }
}
@media (max-width: 575px) {
    body.path-course:not(.notloggedin) #page-header { padding-left: 28px; }
    body:not(.notloggedin) .course-section-header:has(#collapsesections) { flex-wrap: wrap; row-gap: 8px; }
    body:not(.notloggedin) .course-section-header > .flex-fill:has(> #collapsesections) { flex-basis: 100%; margin-top: 0 !important; margin-bottom: 8px; }
}
