@import "https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&family=Roboto:wght@400;500&display=swap";

body {
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: rgb(35 39 89);
    font-family: roboto, sans-serif;
    background: url(../img/main-bg.jpg) no-repeat;
    color: white;
    background-size: cover;
}

::-webkit-scrollbar {
    width: 10px;
    background: linear-gradient(to bottom, rgb(35 39 89), transparent);
    border-radius: 0 8px 8px 0;
}

::-webkit-scrollbar-thumb {
    background: rgb(42, 48, 129);
    border-radius: 0 8px 8px 0;
}

::-webkit-scrollbar-thumb:hover {
    background: #00c3ff;

}

.admincp-button {
    position: absolute;
    top: 10%;
    left: 2%;
    z-index: 9999;
    transform: skewX(-10deg);
    border-radius: 4px !important;
    font-weight: bold !important;
    text-transform: uppercase;
    color: white !important;
    background: rgb(42, 48, 129) !important;
    transition: all .3s ease !important;
    box-shadow: 0px 0px 20px rgb(42, 48, 129);
}

.admincp-button:hover {
    transform: skewX(-10deg) translateY(-10px);
    box-shadow: 0px 0px 40px rgb(42, 48, 129);
}

.navbar-toggler {
    border: 0px !important;
    outline: 0 !important;
}

.navbar-toggler-icon {
    background-image: url(../img/menu.png) !important;
}

/* Styling the overlay that covers the whole page */
#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    /* Viewport height */
    /* Choose a background color */
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 99999;
    /* Ensure it is on top of everything */
}

.loader {
    border: 16px solid #f3f3f3;
    /* Light grey */
    border-top: 16px solid #3498db;
    /* Blue spinner */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

#videoBg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
}


/* ── Contenedor principal ── */
.container-snap {
    position: relative;
    width: 100%;
    height: 100vh;
}

/* ── Paneles apilados ── */
.panel {
    position: absolute;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100%;
    /* Todas las secciones ocultas por defecto con clip-path */
    clip-path: inset(100% 0 0 0);
    will-change: clip-path;
    color: rgba(255, 255, 255, 0.9);
}

.panel.class-section {
    background: url(../img/main-bg.jpg) no-repeat;
    background-position: 50% 19%;
    display: flex;
    background-size: cover;
    justify-content: center;
    align-items: center;
}

.panel.noticias {
    background: url(../img/main-bg.jpg) no-repeat;
    background-position: 50% 12%;
    background-size: cover;

}

.panel.rankings {
    background: url(../img/main-bg.jpg) no-repeat;
    background-position: 50% 15%;
    background-size: cover;
}

.rankingsSwiper .swiper-wrapper .swiper-slide {
    background: linear-gradient(180deg, rgb(35 39 89), transparent) !important;
    border-radius: 8px;
    padding: 20px;
}

/* La primera sección visible */
.panel.is-active {
    clip-path: inset(0 0 0 0);
}

/* ── Contenido interno animable ── */
.panel-content {
    opacity: 0;
    transform: translateY(60px);
    transition: none;
    position: relative;
    z-index: 2;
}

.panel.is-active .panel-content {
    opacity: 1;
    transform: translateY(0);
}

/* ── Colores de sección ── */
.panel.main-section {
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Gambarino', serif;
}

#particles-js {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
}



/* ── Indicador vertical de sección ── */
.section-nav {
    position: fixed;
    left: 24px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: 14px;
    z-index: 100;
}

.nav-dot {
    width: 48px;
    height: 48px;
    background: transparent;
    cursor: pointer;
    padding: 0;
    border: 0;
    transition: all 0.3s ease;
}

.nav-dot img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: brightness(0) invert(1);
    transition: all .5s ease;
}

.nav-dot.active img {
    filter: invert(1);
    transform: scale(1.2) rotate(180deg);
}

.nav-dot:hover {
    transform: scale(1.2) rotate(180deg);
}



.nav-link {
    font: 15px merriweather, serif;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    text-decoration: none;
    transition: color 0.3s ease;
    padding: 0 20px !important;
    color: rgba(242, 243, 246, .75) !important;
}

.nav-link:hover {
    color: #e8a34f !important;
}

.gradient-name {
    background: #FFFFFF;
    background: linear-gradient(to bottom, #ffffff 20%, #9c9c9c 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 800;
    letter-spacing: 5px;
}

.text-main-section {
    font: 15px merriweather, serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 26px;
    letter-spacing: 0;
    color: #f2f3f6;
    margin: 10px auto;
    text-align: center;
    text-shadow: 0 2px 5px #000000be;
    text-transform: uppercase;
    filter: drop-shadow(2px 4px 6px #000000);
}

.h2-main-section {
    color: #e8a34f;
    text-align: center;
    letter-spacing: 2.55px;
    font-size: 34px;
    line-height: 34px;
    width: 30%;
    font-weight: 700;
    text-shadow: 0 2px 5px #000000be;
    text-transform: uppercase;
    border: 2px solid #e8a34f;
    padding: 8px 22px;
    margin: 0 auto 30px;
    font-family: roboto, sans-serif;

    box-shadow: inset 0 3px 6px #00000029, 0 3px 6px #000000bf;
}

.buttons {
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: center
}

.buttons a {
    display: inline-flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    width: calc(50% - 10px);
    max-width: 400px;
    margin: 0 5px;
    padding: 24px 16px;
    text-align: right;
    background: url(../img/bg_box_active.png) top center no-repeat;
    background-size: cover;
    text-decoration: none;
}

.buttons a:nth-child(2) {
    background: url(../img/bg_box.png) top center no-repeat;
    background-size: cover;
    justify-content: flex-start
}

.buttons a:nth-child(2) span {
    text-align: left
}

.buttons a span img {
    transition: all .5s ease;
}

.tooltip-inner {
    background-color: #1a1a1a;
    color: #e8a34f;
    font-weight: 600;
}

.tooltip.bs-tooltip-right .tooltip-arrow::before {
    border-right-color: #1a1a1a;
}

@media not all and (pointer:coarse) {
    .buttons a {
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        transition: all .5s;
    }

    .buttons a:hover {
        filter: brightness(1.3)
    }

    .buttons a:hover span img {
        transform: scale(1.1);
    }
}

.buttons a span {
    padding: 0 16px;
    display: inline-flex;
    flex-direction: column;
    color: #f2f3f6;
    text-align: right;
    font-size: 14px;
    line-height: 19px;
    letter-spacing: 0;
    text-shadow: 0 2px 5px #000000be
}

.buttons a span strong {
    font: 15px merriweather, serif;
    font-weight: 700;
    font-size: 21px;
    text-transform: uppercase;
    color: #e8a34f
}

.buttons a span img {
    width: 70px
}

/* class */
#class-showcase {
    position: relative;
    height: 100vh;
    overflow: hidden;
    color: white;
}

/* Fondo con profundidad */
.class-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

/* Personaje */
.class-character {
    position: relative;
    z-index: 2;
}

.class-character img {
    height: 65vh;
    transition: all 0.5s ease;
    mask-image: linear-gradient(to bottom, #000000, #000, #000, transparent);
    filter: drop-shadow(0 0 40px rgba(255, 0, 0, 0.5));
}

/* Contenido */
.class-content {
    position: relative;
    z-index: 2;
    padding: 80px;
}

#class-title {
    font-size: 28px;
    font-family: 'merriweather', serif;
    letter-spacing: 4px;
    filter: drop-shadow(2px 4px 6px #00c3ff);
}

#class-description {
    max-width: 500px;
    font-family: 'merriweather', serif;
    color: #d8d8d8;
    font-size: 18px;
    filter: drop-shadow(2px 4px 6px #000000);
}

/* Skills */
.class-skills {
    display: flex;
    gap: 20px;
    margin-bottom: 40px;
}

.skill-circle {
    width: 80px;
    height: 80px;
    background: radial-gradient(circle, #661111, #2a0000);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: 0.3s;
}

.skill-circle:hover {
    transform: scale(1.1);
    box-shadow: 0 0 20px red;
}

/* Botón */
.class-btn {
    background: linear-gradient(45deg, #5a1a00, #b53b00);
    border: none;
    padding: 15px 40px;
    color: white;
    letter-spacing: 2px;
    font-weight: bold;
    transition: 0.3s;
}

.class-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(255, 60, 0, 0.5);
}

/* Flechas */
.class-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 40px;
    cursor: pointer;
    z-index: 3;
    padding: 20px;
    color: white;
    opacity: 0.5;
}

.class-nav:hover {
    opacity: 1;
}

.class-nav.left {
    left: 20px;
}

.class-nav.right {
    right: 20px;
}

.class-top-selector {
    justify-content: center;
    position: relative;
    margin: 0 auto;
    display: flex;
    z-index: 5;
    filter: drop-shadow(2px 4px 6px black);
}

/* Botón base */
.class-btn-top {
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: 0.3s ease;
}

/* Imagen */
.class-btn-top img {
    transition: 0.3s;
}

/* Hover */
.class-btn-top:hover {
    transform: scale(1.1);
    opacity: 1;
}

/* Activo */
.class-btn-top.active {
    opacity: 1;
}

.class-btn-top.active img {
    filter: brightness(1.2);
}

.footer-main,
.castles-main {
    padding: 10px 20px;
    border-radius: 10px;
    font-size: 0.875rem;
    color: #d1c6d08e;
    font-family: 'roboto', serif;
    background: linear-gradient(180deg, rgb(35 39 89), transparent);
    font-size: 0.625rem;
}

.footer-main .mulanesa-logo {
    height: 4rem;
    filter: brightness(0) invert(1);
    opacity: 0.5;
    transition: all 0.3s ease;
}

.footer-main a {
    color: #b3b9fd;
    transition: color 0.3s ease;
    text-decoration: none;
}

.footer-main a:hover {
    color: #e8a34f;
}

.footer-main .hover-img:hover img {
    opacity: 1 !important;
}

.news-card {
    position: relative;
    height: 420px;
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
}

.news-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    transition: transform 0.6s ease;
}

.news-card:hover .news-bg {
    transform: scale(1.1);
}

.news-overlay {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 25px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.3), transparent);
    color: #fff;
}

.news-title {
    font-weight: 700;
    margin-bottom: 10px;
}

.news-desc {
    font-size: 14px;
    margin-bottom: 15px;
}

.news-desc a {
    color: #ffc107;
    text-decoration: none;
}

.news-desc a:hover {
    text-decoration: underline;
}

.news-meta {
    font-size: 13px;
    opacity: 0.8;
}

.swiper-button-next,
.swiper-button-prev {
    color: #ffc107;
}

.swiper-button-next:hover,
.swiper-button-prev:hover {
    color: #fff;
}


.modal-content {
    border: 0 !important;
}

/* Fondo general del modal */
.custom-mu-modal {
    background: linear-gradient(180deg, rgb(35 39 89), transparent) !important;
    background-color: transparent;

    color: #ddd !important;
}

/* Header */
.custom-mu-modal .modal-title {
    font-weight: 600;
    letter-spacing: 1px;
    color: #fff;
}

/* Tabs */
.mu-tabs {
    border-bottom: 1px solid rgba(255, 140, 0, 0.2);
}

.mu-tabs .nav-link {
    color: #aaa;
    background: transparent;
    border: none;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 10px 20px;
    transition: all 0.3s ease;
}

.mu-tabs .nav-link:hover {
    color: #fff;
}

.mu-tabs .nav-link.active {
    color: #ffae42;
    border-bottom: 2px solid #ff7b00;
}

/* Cards internas */
.mu-card {
    background: linear-gradient(to bottom, rgba(20, 20, 25, 0.8), transparent);
    padding: 30px;
    border-radius: 8px;
}

/* Lista */
.mu-list {
    list-style: none;
    padding: 0;
}

.mu-list li {
    margin-bottom: 8px;
}

/* Stats */
.mu-stat {
    background: rgba(255, 120, 0, 0.08);
    border: 1px solid rgba(255, 120, 0, 0.2);
    padding: 20px;
    text-align: center;
    border-radius: 6px;
}

.mu-stat span {
    display: block;
    font-size: 12px;
    color: #aaa;
}

.mu-stat strong {
    font-size: 22px;
    color: #ffb347;
}

.card-download {
    background: linear-gradient(to bottom, rgba(20, 20, 25, 0.8), transparent);
    border-radius: 8px;
    padding: 20px;
    color: white;
    text-align: center;
    transition: all 0.3s ease;
}

.card-modules {
    background: linear-gradient(180deg, rgb(35 39 89), transparent) !important;
    border-radius: 8px;
    padding: 20px;
    color: white;
    font-family: roboto, sans serif;
    transition: all 0.3s ease;
    width: 75%;
    overflow: auto;
    max-height: 70vh;
}

.table {
    background: linear-gradient(to bottom, rgba(20, 20, 25, 0.8), transparent) !important;
    color: white;
    border-radius: 8px;
}

.table thead th,
.table tbody tr th,
.table tbody tr td {
    text-align: center;
    border-bottom: none;
    background: transparent !important;
    color: white;
}

.card-donations {
    background: linear-gradient(to bottom, rgba(20, 20, 25, 0.8), transparent);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.3s ease;
}

.card-donations img {
    max-width: 192px;
    padding: 8px;
    width: 100%;
    transition: all 0.3s ease;
}

.card-modules a:hover .card-donations {
    background: linear-gradient(to bottom, rgba(20, 20, 25, 0.8), rgb(20, 20, 25));
    ;
}

.card-modules a:hover .card-donations img {
    filter: brightness(1.2);
    transform: scale(1.05);
}

.discord-widget {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px;
    margin-inline: 8px;
    border-radius: 12px;
    max-width: 420px;
    font-family: 'Inter', sans-serif;
    opacity: 0.5;
    transition: all 0.3s ease;
}

.discord-widget:hover {
    opacity: 1;
}

.discord-left {
    display: flex;
    align-items: center;
    gap: 12px;
}

.discord-icon {
    width: 40px;
    height: 40px;
}

.discord-name {
    font-weight: 600;
    font-size: 15px;
    color: #fff;
}

.discord-members {
    font-size: 13px;
    color: #aaa;
}

.login-section {
    background: linear-gradient(180deg, rgb(35 39 89), transparent);
    position: absolute;
    height: 100%;
    color: white;
    max-width: 26%;
}

.login-section img {
    width: 100%;
    height: auto;
    filter: drop-shadow(0 0 20px rgba(0, 0, 0, 0.5));
}

.login-section form input {
    background: rgba(35, 39, 89, 0.151) !important;
    color: white !important;
    border: 1px solid rgb(43, 49, 133) !important;
    border-radius: 8;
}

.register-a {
    color: #00c3ff;
    text-transform: uppercase;
    font-weight: bold;
    text-decoration: none;
    transition: color .3s ease
}

.register-a:hover {
    color: #00c3ffbd;
}

.login-section form input::placeholder {
    color: #aaa !important;
}

.down-left-login {
    width: 14px !important;
    margin-inline: 4px;
    filter: invert(1) brightness(1.5) !important;
    transition: all 0.3s ease;
}

.to-site-login {
    margin: 0;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 10px !important;
    display: flex;
    align-items: center;
    transition: all 0.3s ease;
}

.to-site-login:hover {
    color: white !important;
}

.to-site-login:hover .down-left-login {
    margin-right: 12px;
}

/* RANKINGS MODULE */

.page-title {
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.2;
    font-size: 1.3rem;
    color: var(--bs-heading-color);
}

.rankings-table {
    width: 100%;
    border-spacing: 0 0.2em;
    background: transparent !important;
    border-collapse: separate;
}



.rankings-class-image {
    width: 30px;
    height: auto;
    -moz-box-shadow: 0 0 5px #666;
    -webkit-box-shadow: 0 0 5px #666;
    box-shadow: 0 0 5px #666;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

.rankings-table tr td {
    font-size: 16px !important;
}

.rankings-table tr td a {
    color: #3498db !important;
    font-family: roboto, sans-serif;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
}

.rankings-table tr td a:hover {
    color: white !important;
}

.rankings-table tr th {
    padding: 10px;
    font-size: 18px;
    color: #fff;
    text-shadow: 0 2px 5px #000000be;
    text-align: center;
}


.rankings-table thead {
    border-radius: 8px !important;
    backdrop-filter: blur(12px);
    transition: all 0.3s ease;
}

.rankings-table tbody tr {
    border-radius: 16px !important;
    backdrop-filter: blur(12px) drop-shadow(2px 4px 6px #3498db);
    transition: all 0.3s ease;
}

.rankings-table tr td {
    padding: 10px;
    font-size: 18px;
    vertical-align: middle !important;
    text-align: center;
    color: #3498db !important;
    font-weight: light !important;
}

.rankings-table-place {
    color: #666;
    font-weight: bold;
    font-size: 24px;
    text-align: center;
}

.rankings-table tr:first-child td {
    color: #3498db;
    border-bottom: 3px solid transparent !important;
}

.rankings-update-time {
    text-align: right;
    font-size: 11px;
    color: #ccc;
    padding: 10px 0px;
}

.rankings_menu {
    width: 100%;
    overflow: auto;
    text-align: center;
    margin-bottom: 10px;
}

.rankings_menu span {
    width: 100%;
    display: inline-block;
    padding: 10px 0px;
    color: #ccc;
    font-size: 24px;
}

.rankings_menu a {
    display: inline-block;
    width: 150px;
    border-left: 4px solid #e3e3e3;
    text-align: center;
    padding: 2px 0px;
    text-decoration: none;
    margin: 2px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    color: #ccc;
    transition: all .3s ease;
}

.rankings_menu a:hover {
    color: #3498db;
    border-color: #3498db;
}

.rankings_menu a.active {
    color: #3498db;
    border-color: #3498db;
}

.rankings_guild_logo tr td {
    border: 0px !important;
    padding: 0px !important;
    margin: 0px !important;
}

.rankings-gens-img {
    width: auto !important;
    height: 30px !important;
    border: 0 !important;
    -moz-box-shadow: 0 0 0px #000 !important;
    -webkit-box-shadow: 0 0 0px #000 !important;
    box-shadow: 0 0 0px #000 !important;
    -moz-border-radius: 0px !important;
    border-radius: 0px !important;
}


@media (max-width: 480px) {
    .h2-main-section {
        width: 100%;
    }

    .class-top-selector {
        flex-wrap: wrap;
    }

    .class-character img {
        height: 100%;
    }

    .panel.class-section {
        display: block;
    }


    .buttons {
        align-items: center;
        gap: 10px;
        flex-direction: column;
    }

    .class-content {
        position: relative;
        bottom: initial;
    }

    .buttons a {
        flex-direction: column;
    }
}

@media (min-width: 481px) and (max-width: 768px) {
    .panel.class-section {
        display: block;
    }

    .class-content {
        position: absolute;
        bottom: 0;
    }
}

@media (max-width: 991px) {

    .navbar,
    footer {
        position: initial !important;
        position: -webkit-initial !important;
    }

    body {
        overflow: auto !important;
    }
}


@media (max-width: 1024px) {
    .login-section {
        max-width: 100%;
        overflow: auto;
        display: flex;
        flex-direction: column;
        background: linear-gradient(180deg, rgb(35 39 89), rgb(35 39 89), rgb(35 39 89), transparent);

    }

    .castles-main {
        display: none;
    }

    .login-section a {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .login-section a img {
        width: 50%;
    }

    .to-site-login {
        width: 50%;
    }

    .panel.blue {
        background-size: initial;
    }
}


/* castle siege main styles */
.castles-main {
    color: white;
}

.castle-img {
    max-width: 150px;
    filter: drop-shadow(0 0 15px rgba(52, 152, 219, 0.5));
}

.btn-panel {
    transform: skewX(-10deg);
    border-radius: 4px !important;
    font-weight: bold !important;
    text-transform: uppercase;
    width: 100%;
    color: white !important;
    background: rgb(42, 48, 129) !important;
    transition: all .3s ease !important;
    box-shadow: 0px 0px 20px rgb(42, 48, 129);
}

.btn-panel span {
    transform: skewX(10deg);
    display: block;
}

.btn-panel:hover {
    transform: skewX(-10deg) translateY(-5px);
    box-shadow: 0px 0px 40px rgb(42, 48, 129);
    filter: brightness(1.1);

}

.badge {
    transform: skewX(-10deg);
}

/* ================= USERCP ================= */
.tab-content-dashboard {
    background: rgba(13, 20, 36, 0.9);
    border-radius: 8px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.5);

    border: 1px solid rgba(255, 255, 255, 0.1);
}

/* ============== RANKING FILTERING =========== */

.rankings-class-filter {
	display: inline-block;
	list-style-type: none;
	margin: 20px auto;
	padding: 10px 20px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	-khtml-border-radius: 10px;
}

	.rankings-class-filter li {
		display: inline-block;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		margin-bottom: 10px;
	}
	
	.rankings-class-filter li:hover {
		-webkit-filter: grayscale(0%);
		filter: grayscale(0%);
	}

.rankings-class-filter-selection {
	display: inline-block;
	width: 75px;
	text-align: center;
	color: #fff;
	font-size: 11px;
	cursor: pointer;
    text-decoration: none;
    transition: all .3s ease;
}

	.rankings-class-filter-selection:hover {
		color: #00c3ff !important;
	}

    .rankings-class-filter-grayscale:hover {
        filter: grayscale(0);
    }

	.rankings-class-filter-selection:hover img {
		-webkit-filter: brightness(120%);
		filter: brightness(120%);
	}

.rankings-class-filter-selection img {
	width: 40px;
	height: auto;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-khtml-border-radius: 50%;
	margin-bottom: 5px;
	-moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
	-webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.45);
	-moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.45);
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.45);
}

.rankings-class-filter-grayscale {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
}


/* MuLiberation minimal branding + Torneo PvP section */
.navbar-brand img {
    max-height: 76px;
    object-fit: contain;
    filter: drop-shadow(0 4px 10px rgba(0,0,0,.75));
}
.main-section .panel-content img[alt="Logotipo"] {
    max-width: 460px;
    width: 32% !important;
    min-width: 260px;
}
.mulanesa-logo {
    max-height: 54px;
    width: auto;
    object-fit: contain;
    filter: drop-shadow(0 4px 8px rgba(0,0,0,.65));
}
.tournament-section {
    background: radial-gradient(circle at center, rgba(22,52,108,.18), rgba(3,5,14,.78));
}
.lightnap-tournament-card {
    position: relative;
    overflow: hidden;
    padding: 38px;
    border: 1px solid rgba(210,172,91,.38);
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(13,17,35,.90), rgba(5,7,17,.78));
    box-shadow: 0 24px 70px rgba(0,0,0,.35), inset 0 0 40px rgba(69,116,201,.08);
    color: #fff;
}
.lightnap-tournament-card:before {
    content: "";
    position: absolute;
    inset: -2px;
    background: linear-gradient(110deg, transparent 0%, rgba(236,180,79,.16) 45%, transparent 70%);
    pointer-events: none;
}
.lightnap-tournament-kicker {
    display: inline-block;
    margin-bottom: 10px;
    color: #e7c47a;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
    text-transform: uppercase;
}
.lightnap-tournament-card h2 {
    margin: 0 0 12px;
    color: #fff;
    font-size: clamp(34px, 5vw, 62px);
    font-weight: 900;
    text-transform: uppercase;
    text-shadow: 0 0 26px rgba(83,133,231,.35);
}
.lightnap-tournament-card p {
    max-width: 760px;
    color: rgba(255,255,255,.74);
    font-size: 17px;
    line-height: 1.6;
}
.lightnap-prize-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 12px;
    margin: 26px 0;
}
.lightnap-prize-grid div {
    padding: 16px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 16px;
    background: rgba(255,255,255,.045);
}
.lightnap-prize-grid small {
    display: block;
    color: #a9b6cf;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.lightnap-prize-grid strong {
    display: block;
    margin-top: 4px;
    color: #f6d384;
    font-size: 20px;
}
.lightnap-tournament-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}
.btn-tournament-main,
.btn-tournament-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 24px;
    border-radius: 999px;
    font-weight: 900;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: .5px;
    transition: transform .2s ease, filter .2s ease;
}
.btn-tournament-main {
    color: #120b02;
    background: linear-gradient(180deg, #ffd682, #af7827);
    box-shadow: 0 12px 32px rgba(221,158,54,.24);
}
.btn-tournament-secondary {
    color: #fff;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.055);
}
.btn-tournament-main:hover,
.btn-tournament-secondary:hover {
    transform: translateY(-2px);
    filter: brightness(1.08);
}
.lightnap-tournament-emblem {
    opacity: .92;
    filter: drop-shadow(0 20px 50px rgba(0,0,0,.75));
}
@media (max-width: 768px) {
    .lightnap-prize-grid { grid-template-columns: 1fr; }
    .lightnap-tournament-card { padding: 26px; }
}


/* === MuLiberation Fase 10: Lightnap limpio + módulos originales === */
.section-nav{display:none!important;}
.navbar{backdrop-filter: blur(8px); border-bottom:1px solid rgba(255,174,58,.16);}
.navbar .navbar-brand img{object-fit:contain; filter:drop-shadow(0 8px 18px rgba(0,0,0,.75));}
.navbar .nav-link{text-transform:uppercase; letter-spacing:.04em; font-weight:800; color:rgba(255,255,255,.86)!important;}
.navbar .nav-link:hover{color:#ffb347!important; text-shadow:0 0 12px rgba(255,142,46,.55);}
.hero-brand-block{max-width:980px; margin:0 auto; display:flex; flex-direction:column; align-items:center;}
.hero-main-logo{width:min(560px,58vw)!important; max-width:560px; filter:drop-shadow(0 20px 35px rgba(0,0,0,.85)) drop-shadow(0 0 20px rgba(39,142,255,.22))!important; margin-bottom:4px;}
.hero-kicker{display:inline-flex; padding:7px 18px; border:1px solid rgba(245,170,64,.52); background:linear-gradient(90deg,rgba(31,14,8,.65),rgba(7,31,58,.65)); color:#ffc46b; border-radius:999px; text-transform:uppercase; font-size:.78rem; letter-spacing:.18em; font-weight:900; margin-bottom:12px;}
.text-main-section{font-size:clamp(2.4rem,5vw,5.6rem)!important; line-height:.95!important; margin:0 0 8px!important; color:#fff!important; text-shadow:0 8px 24px #000,0 0 20px rgba(49,147,255,.26);}
.hero-subtitle{max-width:760px; margin:0 auto 18px; color:rgba(255,255,255,.82); font-size:1.05rem; line-height:1.55; text-shadow:0 3px 12px #000;}
.hero-stats-grid{display:grid; grid-template-columns:repeat(4,minmax(120px,1fr)); gap:10px; width:min(760px,92vw); margin:8px auto 22px;}
.hero-stats-grid div{border:1px solid rgba(255,169,64,.28); background:linear-gradient(180deg,rgba(8,16,31,.62),rgba(5,7,13,.42)); box-shadow:inset 0 0 22px rgba(70,141,255,.08), 0 12px 30px rgba(0,0,0,.32); padding:12px 10px; border-radius:12px;}
.hero-stats-grid strong{display:block; font-size:1.45rem; color:#ffb347; line-height:1;}
.hero-stats-grid span{display:block; color:rgba(255,255,255,.72); font-size:.75rem; text-transform:uppercase; letter-spacing:.07em; margin-top:5px;}
.hero-actions{display:flex!important; gap:14px!important; justify-content:center!important; flex-wrap:wrap;}
.hero-actions a{min-width:260px!important; text-decoration:none!important; border:1px solid rgba(255,170,72,.42)!important; box-shadow:0 15px 35px rgba(0,0,0,.35), inset 0 0 24px rgba(255,121,28,.10)!important;}
.hero-actions .btn-register-hero{background:linear-gradient(135deg,rgba(21,45,78,.82),rgba(109,47,14,.72))!important;}
.hero-icon-letter{width:62px;height:62px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:900;color:#fff;background:radial-gradient(circle,#ffb347,#863814); box-shadow:0 0 20px rgba(255,147,46,.35);}
.h2-main-section{display:none!important;}
.lightnap-footer-clean .footer-main{background:linear-gradient(90deg,rgba(11,16,37,.78),rgba(17,30,64,.66)); border:1px solid rgba(255,255,255,.08); border-radius:10px; padding:12px 18px; box-shadow:0 -12px 42px rgba(0,0,0,.25);}
.lightnap-footer-clean .mulanesa-logo{max-width:118px!important; height:auto!important; filter:drop-shadow(0 7px 16px rgba(0,0,0,.8));}
.footer-server-info{display:flex; flex-direction:column; line-height:1.15;}
.footer-server-info strong{color:#fff;text-transform:uppercase;letter-spacing:.08em;font-size:.88rem;}
.footer-server-info span{color:rgba(255,255,255,.62);font-size:.74rem;}
.card-modules.lightnap-module-shell,.card-modules{background:linear-gradient(180deg,rgba(8,11,20,.88),rgba(4,6,12,.86))!important;border:1px solid rgba(255,166,63,.22)!important;border-radius:18px!important;box-shadow:0 25px 80px rgba(0,0,0,.55), inset 0 0 38px rgba(39,130,255,.08)!important; color:#fff; padding:26px!important; max-width:1180px; width:92vw; margin:120px auto 110px!important;}
.rankings-table{width:100%;border-collapse:collapse;background:rgba(3,6,12,.52);border:1px solid rgba(255,166,63,.22);border-radius:12px;overflow:hidden;}
.rankings-table th,.rankings-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.07);color:#fff;}
.rankings-table th{color:#ffbf68;text-transform:uppercase;font-size:.78rem;letter-spacing:.06em;background:rgba(92,38,8,.35);}
.rankings-table-place{color:#ff9b35!important;font-weight:900;}
.page-title{color:#ffbf68!important;text-transform:uppercase;letter-spacing:.08em;font-weight:900;}
.tournament-section .lightnap-tournament-card{background:linear-gradient(135deg,rgba(13,15,30,.84),rgba(30,11,29,.72)); border:1px solid rgba(255,174,65,.32); border-radius:20px; padding:34px; box-shadow:0 25px 80px rgba(0,0,0,.5), inset 0 0 35px rgba(57,136,255,.08);}
.lightnap-tournament-kicker{color:#ffbc62;text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:900;}
.lightnap-prize-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;}
.lightnap-prize-grid div{border:1px solid rgba(255,174,65,.24);background:rgba(0,0,0,.28);border-radius:12px;padding:12px;}
.lightnap-prize-grid small{display:block;color:rgba(255,255,255,.62);text-transform:uppercase;font-size:.72rem;}
.lightnap-prize-grid strong{color:#ffbc62;font-size:1.05rem;}
.lightnap-tournament-actions{display:flex;gap:12px;flex-wrap:wrap;}
.btn-tournament-main,.btn-tournament-secondary{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:10px;text-decoration:none;font-weight:900;text-transform:uppercase;letter-spacing:.05em;}
.btn-tournament-main{background:linear-gradient(135deg,#ff9b35,#8b3214);color:#fff;}
.btn-tournament-secondary{border:1px solid rgba(255,255,255,.18);color:#fff;background:rgba(255,255,255,.06);}
.lightnap-tournament-emblem{filter:drop-shadow(0 20px 35px rgba(0,0,0,.85));opacity:.92;}
@media(max-width:768px){.hero-stats-grid{grid-template-columns:repeat(2,1fr)}.hero-actions a{min-width:100%!important}.hero-main-logo{width:82vw!important}.lightnap-footer-clean{position:static!important}.card-modules{margin-top:100px!important;width:94vw!important}.navbar .navbar-brand img{width:105px!important}}

/* === MuLiberation Fase 11: UX real para Lightnap ===
   - Sin cambio de secciones con la rueda del mouse
   - Home de una sola página normal
   - Login/Register pequeños y centrados
   - Páginas internas con tamaño consistente y scroll normal
*/
html, body { min-height: 100%; }
body.lightnap-home-standard,
body.lightnap-inner-page,
body.lightnap-auth-page {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #030711 !important;
    color: rgba(255,255,255,.9) !important;
}
.lightnap-bg-overlay {
    position: fixed;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at 22% 18%, rgba(255,117,25,.14), transparent 32%),
        radial-gradient(circle at 77% 12%, rgba(48,139,255,.18), transparent 36%),
        linear-gradient(180deg, rgba(3,7,18,.54), rgba(2,3,8,.92));
    pointer-events: none;
}
.lightnap-topbar {
    background: linear-gradient(180deg, rgba(7,10,22,.92), rgba(7,10,22,.58)) !important;
    border-bottom: 1px solid rgba(255,174,58,.18) !important;
    backdrop-filter: blur(12px);
    box-shadow: 0 12px 40px rgba(0,0,0,.35);
}
.lightnap-topbar .container { max-width: 1320px; }
.lightnap-topbar .navbar-brand img {
    object-fit: contain;
    filter: drop-shadow(0 8px 18px rgba(0,0,0,.82));
}
.lightnap-topbar .nav-link,
.navbar .nav-link {
    font-size: .82rem !important;
    letter-spacing: .055em !important;
    padding: 12px 15px !important;
}
.lightnap-topbar .nav-link-panel {
    color: #ffbd68 !important;
}
.navbar-toggler { border-color: rgba(255,184,90,.35) !important; }
.navbar-toggler-icon { filter: invert(1); }

/* Home normal, no full-screen snap. */
.lightnap-home-page {
    position: relative;
    z-index: 2;
    padding-top: 86px;
}
.lightnap-hero-section,
.lightnap-dashboard-section,
.lightnap-tournament-home {
    position: relative;
    padding: 64px 0;
}
.lightnap-hero-section {
    min-height: 100vh;
    display: flex;
    align-items: center;
    padding-top: 110px;
}
.lightnap-hero-container { position: relative; z-index: 3; }
#particles-js { pointer-events: none; }
.lightnap-hero-logo {
    width: min(500px, 90vw) !important;
    max-width: 500px !important;
    background: transparent !important;
    margin-bottom: 8px;
}
.lightnap-status-card,
.lightnap-country-card,
.lightnap-tournament-card {
    border: 1px solid rgba(255,174,65,.28);
    background: linear-gradient(180deg, rgba(9,14,30,.82), rgba(5,8,17,.68));
    border-radius: 22px;
    box-shadow: 0 24px 75px rgba(0,0,0,.48), inset 0 0 34px rgba(48,137,255,.08);
}
.lightnap-status-card {
    padding: 28px;
}
.lightnap-card-kicker,
.lightnap-section-heading span {
    display: inline-flex;
    color: #ffbd68;
    text-transform: uppercase;
    letter-spacing: .18em;
    font-size: .75rem;
    font-weight: 900;
    margin-bottom: 8px;
}
.lightnap-status-card h2,
.lightnap-section-heading h2 {
    color: #fff;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
    text-shadow: 0 6px 18px #000;
}
.lightnap-status-grid { width: 100%; grid-template-columns: repeat(2, 1fr); }
.lightnap-progress-wrap { margin-top: 14px; }
.lightnap-progress-wrap span {
    display: block;
    color: rgba(255,255,255,.68);
    font-size: .76rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    margin-bottom: 7px;
}
.lightnap-progress-wrap div {
    height: 9px;
    border-radius: 999px;
    overflow: hidden;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.08);
}
.lightnap-progress-wrap i {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, #ff8e2e, #4aa3ff);
    box-shadow: 0 0 18px rgba(255,142,46,.4);
}
.lightnap-card-button {
    margin-top: 18px;
    display: inline-flex;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 900;
    letter-spacing: .05em;
    color: #fff;
    background: linear-gradient(135deg,#ff9b35,#8b3214);
    padding: 11px 16px;
    border-radius: 10px;
}
.lightnap-section-heading {
    max-width: 830px;
    margin: 0 auto 28px;
}
.lightnap-section-heading p {
    color: rgba(255,255,255,.74);
    line-height: 1.55;
}
.lightnap-ranking-swiper {
    padding: 12px 8px 52px !important;
}
.lightnap-ranking-swiper .swiper-slide {
    height: auto;
    min-height: 265px;
}
.lightnap-country-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 18px;
}
.lightnap-country-card { padding: 22px; }
.lightnap-country-card small {
    color: #ffbd68;
    text-transform: uppercase;
    letter-spacing: .16em;
    font-weight: 900;
}
.lightnap-country-card strong {
    display: block;
    color: #fff;
    font-size: 1.15rem;
    margin: 4px 0 8px;
}
.lightnap-country-card p { color: rgba(255,255,255,.68); margin: 0; }
.lightnap-tournament-home { padding-bottom: 95px; }
.lightnap-footer-static {
    position: relative !important;
    z-index: 5;
    background: transparent !important;
}
.lightnap-footer-static .footer-main {
    margin-bottom: 14px;
}

/* Páginas internas: todas con tamaño normal, scroll de navegador y no scrollbar metido dentro. */
.lightnap-page-main {
    position: relative;
    z-index: 3;
    min-height: calc(100vh - 110px);
    padding: 108px 0 50px;
}
.lightnap-page-section {
    width: 100%;
}
body.lightnap-inner-page .card-modules.lightnap-module-shell,
body.lightnap-inner-page .card-modules {
    width: min(1080px, calc(100vw - 64px)) !important;
    max-width: 1080px !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 0 auto 40px !important;
    padding: 24px !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(7,10,20,.91), rgba(3,5,10,.90)) !important;
    border: 1px solid rgba(255,166,63,.24) !important;
    box-shadow: 0 26px 75px rgba(0,0,0,.55), inset 0 0 35px rgba(52,132,255,.07) !important;
}
body.lightnap-inner-page .page-title {
    margin: 0 0 18px !important;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,174,65,.18);
    font-size: 1.55rem !important;
}
body.lightnap-inner-page .page-title span {
    color: #ffbd68 !important;
    font-size: 1.55rem !important;
}
body.lightnap-inner-page .table-responsive,
body.lightnap-inner-page .rankings-table-wrapper {
    overflow-x: auto;
    width: 100%;
}
body.lightnap-inner-page .rankings-table,
body.lightnap-inner-page table {
    font-size: .86rem;
}
body.lightnap-inner-page .rankings-table th,
body.lightnap-inner-page .rankings-table td {
    padding: 8px 10px !important;
}
body.lightnap-inner-page .rankings_menu {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px !important;
}
body.lightnap-inner-page .rankings_menu a,
body.lightnap-inner-page .rankings_menu span {
    margin: 0 !important;
    padding: 9px 12px !important;
    font-size: .78rem !important;
    line-height: 1.1 !important;
    border-radius: 8px !important;
}
body.lightnap-inner-page .alert { border-radius: 12px; }

/* Login / Registro: pequeño, centrado, sutil. */
body.lightnap-auth-page {
    min-height: 100vh;
}
.lightnap-auth-wrapper {
    position: relative;
    z-index: 4;
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 32px 16px;
}
.lightnap-auth-card {
    width: min(430px, calc(100vw - 32px));
    max-height: calc(100vh - 42px);
    overflow-y: auto;
    padding: 24px 24px 20px;
    border-radius: 18px;
    border: 1px solid rgba(255,184,90,.30);
    background: linear-gradient(180deg, rgba(8,12,25,.90), rgba(4,6,12,.88));
    box-shadow: 0 30px 90px rgba(0,0,0,.62), inset 0 0 34px rgba(58,136,255,.08);
    color: #fff;
}
.lightnap-auth-logo {
    display: flex;
    justify-content: center;
    margin-bottom: 12px;
}
.lightnap-auth-logo img {
    width: 154px;
    max-width: 72%;
    filter: drop-shadow(0 10px 22px rgba(0,0,0,.85));
}
.lightnap-auth-card .page-title {
    text-align: center;
    margin: 0 0 16px !important;
    border: 0 !important;
    padding: 0 !important;
}
.lightnap-auth-card .page-title span {
    color: #ffbd68 !important;
    font-size: 1.4rem !important;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.lightnap-auth-card .col-xs-8,
.lightnap-auth-card .col-xs-offset-2 {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}
.lightnap-auth-card form,
.lightnap-auth-card .form-horizontal { width: 100%; }
.lightnap-auth-card .form-group {
    display: block !important;
    margin: 0 0 12px !important;
}
.lightnap-auth-card label.control-label,
.lightnap-auth-card .control-label {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 0 5px !important;
    text-align: left !important;
    color: rgba(255,255,255,.76);
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.lightnap-auth-card .col-sm-8,
.lightnap-auth-card .col-sm-offset-4 {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
.lightnap-auth-card .form-control {
    height: 42px;
    border-radius: 10px !important;
    border: 1px solid rgba(255,184,90,.22) !important;
    background: rgba(255,255,255,.06) !important;
    color: #fff !important;
    box-shadow: inset 0 0 18px rgba(0,0,0,.22) !important;
}
.lightnap-auth-card .help-block {
    display: block;
    margin-top: 4px;
    color: rgba(255,255,255,.55);
    font-size: .76rem;
}
.lightnap-auth-card .help-block a { color: #ffbd68; }
.lightnap-auth-card .btn,
.lightnap-auth-card .btn-primary {
    width: 100%;
    height: 42px;
    border: 0 !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg,#ff9b35,#8b3214) !important;
    color: #fff !important;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
    margin-top: 6px;
}
.lightnap-auth-return {
    text-align: center;
    margin-top: 12px;
    font-size: .82rem;
}
.lightnap-auth-return a { color: rgba(255,255,255,.66); text-decoration: none; }
.lightnap-auth-return a:hover { color: #ffbd68; }

/* Desactivar cualquier rastro de snap visual viejo. */
.section-nav { display: none !important; }
.container-snap { height: auto !important; min-height: 100vh; }

@media (max-width: 992px) {
    .lightnap-country-grid { grid-template-columns: 1fr; }
    .lightnap-hero-section { padding-top: 105px; text-align: center; }
    .lightnap-main-actions a { min-width: min(100%, 310px) !important; }
    body.lightnap-inner-page .card-modules.lightnap-module-shell,
    body.lightnap-inner-page .card-modules { width: min(94vw, 1080px) !important; padding: 18px !important; }
    .lightnap-footer-static .footer-main { text-align: center; }
}
@media (max-width: 576px) {
    .lightnap-hero-logo { width: 92vw !important; }
    .hero-stats-grid { grid-template-columns: repeat(2,1fr) !important; }
    body.lightnap-inner-page .rankings-table,
    body.lightnap-inner-page table { font-size: .78rem; }
    body.lightnap-inner-page .rankings-table th,
    body.lightnap-inner-page .rankings-table td { padding: 7px 7px !important; }
    .lightnap-auth-card { padding: 20px 18px; }
}


/* FASE13 DONACIONES POPUP: ventana compacta, sin página de selección */
.mulib-donation-popup{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.72);padding:18px}
.mulib-donation-popup.is-open{display:flex}
.mulib-donation-box{width:min(760px,94vw);max-height:88vh;overflow:auto;background:linear-gradient(180deg,rgba(11,15,24,.98),rgba(3,5,8,.98));border:1px solid rgba(214,139,54,.65);box-shadow:0 25px 70px rgba(0,0,0,.88),0 0 28px rgba(214,139,54,.16);padding:18px;position:relative;color:#eaf3ff;border-radius:6px}
.mulib-donation-x{position:absolute;right:10px;top:7px;border:0;background:transparent;color:#ff5a36;font-size:22px;font-weight:900;line-height:1;cursor:pointer}
.mulib-donation-title{text-align:center;margin-bottom:12px}.mulib-donation-title span{display:block;color:#d68b36;font-weight:900;letter-spacing:3px;text-transform:uppercase;font-size:11px}.mulib-donation-title h2{margin:2px 0 3px;font-size:26px;line-height:1;color:#fff;text-transform:uppercase}.mulib-donation-title p{margin:0;color:#b8c2cf;font-size:13px}
.mulib-donation-tabs-lite{display:flex;justify-content:center;gap:8px;margin:8px 0 14px}.mulib-donation-tabs-lite button{border:1px solid rgba(214,139,54,.55);background:rgba(255,255,255,.045);color:#f2d79b;padding:8px 18px;font-weight:900;text-transform:uppercase;font-size:12px;border-radius:4px;cursor:pointer}.mulib-donation-tabs-lite button.is-active{background:linear-gradient(180deg,#8f3213,#3b0c03);color:#fff}
.mulib-donation-pane{display:none}.mulib-donation-pane.is-active{display:block}.mulib-benefit-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.mulib-benefit-mini div{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);padding:8px;text-align:center}.mulib-benefit-mini b{display:block;color:#f2c56d;font-size:12px}.mulib-benefit-mini span{display:block;color:#c2ccd7;font-size:11px;line-height:1.25}.mulib-beneficiary{display:flex;align-items:center;justify-content:center;gap:9px;color:#d7deea;font-size:12px;margin:8px 0 12px}.mulib-beneficiary input{height:28px;width:180px;background:#05070a;border:1px solid rgba(255,255,255,.22);color:#fff;padding:3px 8px}
.mulib-donation-cards{display:grid;gap:12px}.mulib-donation-cards.two{grid-template-columns:repeat(2,minmax(160px,210px));justify-content:center}.mulib-donation-cards.four{grid-template-columns:repeat(4,minmax(130px,1fr))}.mulib-donation-cards article{background:linear-gradient(180deg,rgba(35,35,35,.92),rgba(8,8,8,.96));border:1px solid rgba(255,255,255,.14);padding:13px 10px;text-align:center;min-height:138px}.mulib-donation-cards h3{margin:0;color:#fff;font-size:20px;font-weight:900}.mulib-donation-cards strong{display:block;color:#ff9d32;text-transform:uppercase;font-size:12px;margin-top:4px}.mulib-donation-cards em{display:block;color:#fff;font-style:normal;font-weight:950;font-size:22px;line-height:1.15;margin:4px 0}.mulib-donation-cards small{display:block;color:#bfc6cf;min-height:14px;font-size:10px}.mulib-methods{display:grid;gap:5px;margin-top:9px}.mulib-methods button{height:24px;border:1px solid #6e5532;background:linear-gradient(180deg,#4c3116,#18100a);color:#f1dcc0;font-weight:800;font-size:11px;cursor:pointer}.mulib-methods button:hover{filter:brightness(1.18)}
.mulib-donation-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;border-top:1px solid rgba(255,255,255,.1);padding-top:10px;color:#aeb8c5;font-size:11px}.mulib-donation-foot a{color:#f2c56d;text-decoration:none;font-weight:900;white-space:nowrap}
@media(max-width:760px){.mulib-benefit-mini,.mulib-donation-cards.four,.mulib-donation-cards.two{grid-template-columns:1fr}.mulib-donation-foot{display:block;text-align:center}.mulib-donation-foot a{display:inline-block;margin-top:8px}.mulib-beneficiary{display:grid;text-align:center}.mulib-beneficiary input{margin:auto}}


/* FASE14: inicio limpio, header compacto, ranking reset + gens */
html, body { overflow-x: hidden !important; overflow-y: auto !important; }
body.lightnap-home-compact-v15,
body.lightnap-inner-page { background-color:#050810 !important; }
.lightnap-topbar{
    min-height:62px !important;
    padding:6px 0 !important;
    background:rgba(2,5,14,.88) !important;
    border-bottom:1px solid rgba(214,139,54,.16) !important;
    backdrop-filter: blur(10px);
}
.lightnap-topbar .container{ min-height:52px !important; }
.lightnap-topbar .navbar-brand{ padding:0 !important; margin-right:28px !important; display:flex; align-items:center; }
.lightnap-topbar .navbar-brand img{ width:88px !important; max-height:54px !important; object-fit:contain; filter:drop-shadow(0 8px 16px rgba(0,0,0,.72)); }
.lightnap-topbar .nav-link{
    padding:8px 14px !important;
    font-size:.78rem !important;
    line-height:1 !important;
    letter-spacing:.04em !important;
}
.lightnap-topbar .nav-link-panel{ color:#ffbd68 !important; }
.admincp-button{
    position:fixed !important;
    top:72px !important;
    left:18px !important;
    z-index:9998 !important;
    padding:7px 14px !important;
    font-size:.76rem !important;
    line-height:1 !important;
    border-radius:8px !important;
    transform:none !important;
    box-shadow:0 0 16px rgba(42,48,129,.55) !important;
}
.admincp-button:hover{ transform:translateY(-2px) !important; }

.lightnap-home-v14{ position:relative; z-index:3; padding-top:70px; }
.mulib-start-section{ position:relative; min-height:560px; padding:32px 0 28px; display:flex; align-items:center; }
.mulib-start-container{ position:relative; z-index:3; }
.mulib-logo-center{ text-align:center; margin-bottom:18px; }
.mulib-center-logo{ width:min(360px,72vw); max-height:170px; object-fit:contain; filter:drop-shadow(0 18px 30px rgba(0,0,0,.82)); }
.mulib-start-grid{ display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:22px; align-items:center; max-width:1040px; margin:0 auto; }
.mulib-main-panel{
    min-height:250px;
    border:1px solid rgba(255,174,70,.25);
    border-radius:18px;
    padding:28px 30px;
    background:linear-gradient(135deg,rgba(7,10,22,.78),rgba(28,13,6,.42));
    box-shadow:0 22px 60px rgba(0,0,0,.42), inset 0 0 38px rgba(255,147,44,.05);
}
.mulib-panel-kicker,.mulib-section-title span,.mulib-status-mini>span{ display:block; color:#ffb35b; text-transform:uppercase; font-weight:900; letter-spacing:.22em; font-size:.68rem; margin-bottom:8px; }
.mulib-main-panel h1{ margin:0 0 10px; color:#fff; font-size:clamp(2.2rem,5vw,4.1rem); line-height:.95; text-transform:uppercase; font-weight:950; text-shadow:0 8px 26px rgba(0,0,0,.65); }
.mulib-main-panel p{ max-width:660px; margin:0 0 20px; color:rgba(236,242,255,.77); font-size:.98rem; line-height:1.6; }
.mulib-home-actions{ display:flex; flex-wrap:wrap; gap:10px; }
.mulib-home-actions a{
    display:inline-flex; align-items:center; justify-content:center;
    min-width:150px; height:42px; padding:0 18px;
    color:#fff !important; text-decoration:none !important; text-transform:uppercase;
    font-weight:900; font-size:.75rem; letter-spacing:.06em;
    border:1px solid rgba(255,184,88,.34);
    border-radius:12px;
    background:linear-gradient(135deg,rgba(171,75,23,.84),rgba(39,15,8,.92));
    box-shadow:0 12px 24px rgba(0,0,0,.32);
}
.mulib-home-actions a:hover{ filter:brightness(1.15); transform:translateY(-1px); }
.mulib-status-mini{
    width:100%; max-width:330px; justify-self:end;
    border:1px solid rgba(91,147,255,.24);
    border-radius:16px;
    padding:18px;
    background:linear-gradient(180deg,rgba(7,13,28,.86),rgba(2,5,12,.86));
    box-shadow:0 18px 48px rgba(0,0,0,.46), inset 0 0 35px rgba(64,119,255,.08);
}
.mulib-status-mini h2{ margin:0 0 12px; color:#fff; font-size:1.22rem; font-weight:900; text-transform:uppercase; }
.mulib-status-row{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 0; border-bottom:1px solid rgba(255,255,255,.08); }
.mulib-status-row b{ color:#ffbd68; font-size:1.18rem; }
.mulib-status-row small{ color:rgba(255,255,255,.62); text-align:right; }
.mulib-status-bar{ height:8px; margin:15px 0; border-radius:999px; overflow:hidden; background:rgba(255,255,255,.08); }
.mulib-status-bar i{ display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#ff9b35,#39a7ff); }
.mulib-status-mini a{ display:flex; align-items:center; justify-content:center; height:36px; color:#fff; text-decoration:none; text-transform:uppercase; font-weight:900; font-size:.72rem; letter-spacing:.08em; border-radius:10px; border:1px solid rgba(255,184,88,.28); background:rgba(255,255,255,.06); }

.mulib-home-rankings{ position:relative; z-index:3; padding:16px 0 58px; }
.mulib-section-title{ text-align:center; margin-bottom:18px; }
.mulib-section-title h2{ color:#fff; margin:0; font-size:clamp(1.8rem,3.2vw,2.6rem); font-weight:950; text-transform:uppercase; }
.mulib-rank-grid{ display:grid; grid-template-columns:repeat(2,minmax(280px,1fr)); gap:18px; max-width:1040px; margin:0 auto; }
.mulib-rank-card{
    min-height:290px;
    padding:18px;
    border-radius:16px;
    border:1px solid rgba(255,174,70,.22);
    background:linear-gradient(180deg,rgba(5,10,20,.86),rgba(2,4,9,.88));
    box-shadow:0 20px 55px rgba(0,0,0,.42), inset 0 0 34px rgba(255,147,44,.035);
}
.mulib-rank-card .swiper-slide{ width:auto !important; height:auto !important; margin:0 !important; display:block !important; }
.mulib-rank-card .page-title{ margin:0 0 14px !important; padding:0 0 10px !important; font-size:1.15rem !important; border-bottom:1px solid rgba(255,184,88,.18); color:#ffbd68 !important; text-transform:uppercase; }
.mulib-rank-card .rankings-table{ width:100% !important; font-size:.86rem !important; margin:0 !important; }
.mulib-rank-card .rankings-table th,.mulib-rank-card .rankings-table td{ padding:8px 10px !important; vertical-align:middle !important; }
.mulib-rank-card .rankings-table-place{ color:#ffbd68 !important; font-weight:900 !important; }
.lightnap-footer-static{ position:relative !important; z-index:3; background:rgba(2,5,14,.72) !important; border-top:1px solid rgba(255,174,70,.12); }
.lightnap-footer-static .mulanesa-logo{ width:82px !important; max-height:42px !important; object-fit:contain; }

/* Páginas internas compactas: evita que vuelvan gigantes */
body.lightnap-inner-page .lightnap-page-main{ padding-top:86px !important; }
body.lightnap-inner-page .card-modules.lightnap-module-shell,
body.lightnap-inner-page .card-modules{ width:min(1040px,calc(100vw - 70px)) !important; padding:20px !important; border-radius:16px !important; }
body.lightnap-inner-page .page-title span, body.lightnap-inner-page .page-title{ font-size:1.35rem !important; }

@media(max-width:992px){
    .mulib-start-section{ padding-top:30px; min-height:auto; }
    .mulib-start-grid{ grid-template-columns:1fr; max-width:760px; }
    .mulib-status-mini{ justify-self:center; max-width:100%; }
    .mulib-main-panel{ text-align:center; }
    .mulib-main-panel p{ margin-left:auto; margin-right:auto; }
    .mulib-home-actions{ justify-content:center; }
    .mulib-rank-grid{ grid-template-columns:1fr; }
    .lightnap-topbar .navbar-collapse{ background:rgba(2,5,14,.96); padding:12px; border-radius:12px; margin-top:8px; border:1px solid rgba(255,184,88,.16); }
}
@media(max-width:576px){
    .lightnap-topbar .navbar-brand img{ width:78px !important; }
    .mulib-center-logo{ width:min(300px,82vw); }
    .mulib-main-panel{ padding:22px 18px; }
    .mulib-home-actions a{ width:100%; }
    body.lightnap-inner-page .card-modules.lightnap-module-shell,
    body.lightnap-inner-page .card-modules{ width:min(94vw,1040px) !important; padding:16px !important; }
    .admincp-button{ top:66px !important; left:12px !important; font-size:.68rem !important; }
}


/* FASE15: panel estado sin nivel máximo + rankings laterales bajo panel */
.lightnap-home-v14{ padding-top:58px !important; }
.lightnap-home-v14 .mulib-start-section{ min-height:auto !important; padding:24px 0 44px !important; align-items:flex-start !important; }
.lightnap-home-v14 .mulib-logo-center{ margin-bottom:12px !important; }
.lightnap-home-v14 .mulib-center-logo{ width:min(310px,64vw) !important; max-height:135px !important; }
.lightnap-home-v14 .mulib-start-grid{
    grid-template-columns:minmax(0,1fr) 330px !important;
    align-items:start !important;
    gap:18px !important;
    max-width:1120px !important;
}
.lightnap-home-v14 .mulib-main-panel{ min-height:235px !important; padding:24px 26px !important; }
.mulib-right-stack{ display:flex; flex-direction:column; gap:12px; width:100%; max-width:330px; justify-self:end; }
.mulib-right-stack .mulib-status-mini{ max-width:100% !important; width:100% !important; justify-self:stretch !important; padding:16px !important; }
.mulib-right-stack .mulib-status-mini h2{ font-size:1.08rem !important; margin-bottom:8px !important; }
.mulib-right-stack .mulib-status-row{ padding:7px 0 !important; }
.mulib-right-stack .mulib-status-row b{ font-size:1.08rem !important; }
.mulib-right-stack .mulib-status-row small{ font-size:.78rem !important; }
.mulib-right-stack .mulib-status-bar{ height:7px !important; margin:12px 0 !important; }
.mulib-right-stack .mulib-status-mini a{ height:34px !important; font-size:.68rem !important; }
.mulib-side-rank{
    overflow:hidden;
    border:1px solid rgba(255,116,52,.24);
    border-radius:3px;
    background:rgba(3,8,16,.86);
    box-shadow:0 16px 34px rgba(0,0,0,.36), inset 0 0 26px rgba(255,123,45,.035);
}
.mulib-side-rank-title{
    height:42px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 11px 0 14px;
    background:linear-gradient(180deg,rgba(124,34,18,.96),rgba(87,18,9,.96));
    border-bottom:1px solid rgba(255,121,46,.33);
    color:#ffcb79;
    font-family:Georgia,'Times New Roman',serif;
    font-size:1.02rem;
    font-weight:900;
    letter-spacing:.03em;
    text-transform:uppercase;
    text-shadow:0 2px 4px rgba(0,0,0,.78);
}
.mulib-side-rank-title a{
    width:25px;
    height:25px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#ffca82 !important;
    text-decoration:none !important;
    border:1px solid rgba(255,167,82,.38);
    background:rgba(90,22,9,.55);
    font-weight:700;
    line-height:1;
}
.mulib-side-rank-body{ padding:8px 10px 10px; }
.mulib-side-rank .swiper-slide{
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    display:block !important;
    transform:none !important;
}
.mulib-side-rank .page-title,
.mulib-side-rank .rankings-table thead{ display:none !important; }
.mulib-side-rank .rankings-table{
    width:100% !important;
    margin:0 !important;
    border-collapse:collapse !important;
    font-size:.78rem !important;
    color:#eaf0ff !important;
}
.mulib-side-rank .rankings-table tr{ border-bottom:1px solid rgba(255,255,255,.065) !important; }
.mulib-side-rank .rankings-table tr:last-child{ border-bottom:0 !important; }
.mulib-side-rank .rankings-table td,
.mulib-side-rank .rankings-table th{
    padding:8px 4px !important;
    vertical-align:middle !important;
    border:0 !important;
    background:transparent !important;
}
.mulib-side-rank .rankings-table td:first-child{
    width:24px !important;
    color:#ff9b48 !important;
    font-weight:900 !important;
}
.mulib-side-rank .rankings-table td:nth-child(2){ color:#f4f7ff !important; font-weight:800 !important; }
.mulib-side-rank .rankings-table td:last-child{
    color:#31d3ff !important;
    font-weight:900 !important;
    text-align:right !important;
}
.mulib-side-rank-general .rankings-table td:last-child{ color:#ff3d47 !important; }
.mulib-side-rank-guilds .rankings-table td:last-child{ color:#79ff84 !important; }
.mulib-side-rank a{ color:inherit; }
.mulib-side-rank .alert{ margin:0 !important; padding:8px !important; font-size:.78rem !important; background:rgba(255,184,88,.08) !important; color:#ffcf85 !important; border:1px solid rgba(255,184,88,.18) !important; }

@media(max-width:992px){
    .lightnap-home-v14 .mulib-start-grid{ grid-template-columns:1fr !important; max-width:760px !important; }
    .mulib-right-stack{ max-width:100% !important; justify-self:stretch !important; }
}

/* FASE16: Inicio tipo portal moderno: izquierda funciones, centro noticias, derecha estado/rankings */
body.lightnap-home-v16{
    overflow-x:hidden !important;
    overflow-y:auto !important;
    background:#020712 !important;
}
.lightnap-home-v16 .lightnap-topbar{
    min-height:58px !important;
    padding:4px 0 !important;
    background:linear-gradient(180deg,rgba(3,8,18,.96),rgba(2,5,13,.92)) !important;
    border-bottom:1px solid rgba(73,142,255,.16) !important;
    box-shadow:0 12px 34px rgba(0,0,0,.42) !important;
}
.lightnap-home-v16 .lightnap-topbar .container{min-height:48px !important; max-width:1380px !important;}
.lightnap-home-v16 .lightnap-topbar .navbar-brand img{width:82px !important; max-height:48px !important; object-fit:contain !important;}
.lightnap-home-v16 .lightnap-topbar .nav-link{font-size:.78rem !important; padding:8px 13px !important;}
.lightnap-home-v16 .lightnap-home-page{padding-top:58px !important;}
.lightnap-home-v16 .mulib-start-section{padding:18px 0 42px !important; min-height:auto !important; align-items:flex-start !important;}
.lightnap-home-v16 .mulib-v16-container{max-width:1380px !important; position:relative; z-index:3;}
.lightnap-home-v16 .mulib-v16-logo-wrap{margin:2px 0 14px !important; text-align:center;}
.lightnap-home-v16 .mulib-center-logo{width:min(280px,52vw) !important; max-height:118px !important; object-fit:contain !important; filter:drop-shadow(0 16px 24px rgba(0,0,0,.78));}
.mulib-v16-layout{
    display:grid;
    grid-template-columns:250px minmax(0,1fr) 330px;
    gap:16px;
    align-items:start;
}
.mulib-left-stack,.mulib-center-stack,.mulib-right-stack{display:flex; flex-direction:column; gap:13px; min-width:0;}
.mulib-panel-card,
.lightnap-home-v16 .mulib-status-mini,
.lightnap-home-v16 .mulib-side-rank{
    border:1px solid rgba(90,154,255,.18) !important;
    border-radius:14px !important;
    background:linear-gradient(180deg,rgba(7,16,32,.88),rgba(2,7,16,.94)) !important;
    box-shadow:0 18px 44px rgba(0,0,0,.38), inset 0 0 34px rgba(73,142,255,.035) !important;
    overflow:hidden;
}
.mulib-card-title,
.lightnap-home-v16 .mulib-side-rank-title{
    min-height:42px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    padding:0 14px !important;
    background:linear-gradient(90deg,rgba(9,33,63,.96),rgba(7,17,35,.98) 48%,rgba(92,50,18,.72)) !important;
    border-bottom:1px solid rgba(255,188,91,.18) !important;
    color:#ffd28a !important;
    font-family:Georgia,'Times New Roman',serif !important;
    font-size:1rem !important;
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.04em !important;
    text-shadow:0 2px 8px rgba(0,0,0,.72) !important;
}
.mulib-card-title a,
.lightnap-home-v16 .mulib-side-rank-title a{
    height:25px !important;
    min-width:25px !important;
    padding:0 8px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:8px !important;
    border:1px solid rgba(255,194,105,.28) !important;
    background:rgba(255,255,255,.045) !important;
    color:#ffd28a !important;
    text-decoration:none !important;
    font-size:.72rem !important;
    line-height:1 !important;
}
.mulib-function-list{display:grid; gap:8px; padding:11px;}
.mulib-function-list a{
    min-height:42px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:8px 11px;
    border-radius:10px;
    border:1px solid rgba(255,190,96,.14);
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
    color:#f4dfb2 !important;
    text-decoration:none !important;
    font-weight:900;
    text-transform:uppercase;
    font-size:.78rem;
    letter-spacing:.02em;
    transition:all .18s ease;
}
.mulib-function-list a i{
    width:27px;
    height:27px;
    display:grid;
    place-items:center;
    flex:0 0 27px;
    border-radius:50%;
    border:1px solid rgba(255,197,112,.26);
    background:rgba(4,12,26,.62);
    color:#ffbd68;
    font-style:normal;
    font-size:.74rem;
    box-shadow:inset 0 0 14px rgba(73,142,255,.06);
}
.mulib-function-list a:hover{
    transform:translateX(3px);
    border-color:rgba(255,188,91,.38);
    color:#fff !important;
    background:linear-gradient(90deg,rgba(11,48,92,.72),rgba(92,48,16,.35));
    box-shadow:0 10px 22px rgba(0,0,0,.22);
}
.mulib-quick-links{display:grid; gap:7px; padding:11px;}
.mulib-quick-links a{
    display:flex; align-items:center; justify-content:space-between;
    color:#dce9ff !important; text-decoration:none !important;
    padding:8px 10px; border-radius:9px;
    background:rgba(255,255,255,.035);
    border:1px solid rgba(255,255,255,.07);
    font-size:.82rem; font-weight:800;
}
.mulib-quick-links a:after{content:'›'; color:#ffbd68; font-size:1rem;}
.lightnap-home-v16 .mulib-welcome-panel{
    min-height:165px !important;
    padding:22px 24px !important;
    border-radius:18px !important;
    border:1px solid rgba(255,188,91,.18) !important;
    background:
        radial-gradient(circle at 12% 0%,rgba(255,137,42,.14),transparent 34%),
        radial-gradient(circle at 100% 0%,rgba(73,142,255,.16),transparent 32%),
        linear-gradient(180deg,rgba(8,15,31,.88),rgba(3,7,16,.94)) !important;
    box-shadow:0 22px 60px rgba(0,0,0,.38) !important;
}
.lightnap-home-v16 .mulib-welcome-panel h1{font-size:clamp(2rem,3.4vw,3.35rem) !important; margin-bottom:8px !important;}
.lightnap-home-v16 .mulib-welcome-panel p{font-size:.92rem !important; max-width:780px !important; margin-bottom:15px !important;}
.lightnap-home-v16 .mulib-home-actions a{height:38px !important; min-width:136px !important; border-radius:10px !important; font-size:.7rem !important;}
.mulib-news-modern{min-height:310px;}
.mulib-card-title-row a{text-transform:uppercase; font-weight:900;}
.mulib-news-list-modern{padding:12px; display:grid; gap:9px;}
.mulib-news-row-modern{
    display:grid;
    grid-template-columns:34px minmax(0,1fr) 92px 82px;
    gap:10px;
    align-items:center;
    min-height:76px;
    padding:10px;
    border-radius:13px;
    background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(255,255,255,.018));
    border:1px solid rgba(255,255,255,.07);
}
.mulib-news-mark{
    width:34px; height:34px; border-radius:50%;
    display:grid; place-items:center;
    background:linear-gradient(135deg,#0b3769,#0a1424);
    border:1px solid rgba(255,190,96,.28);
    color:#ffbd68; font-weight:950;
}
.mulib-news-copy-modern h3{margin:0 0 4px; color:#ffd28a; font-size:.98rem; font-weight:950; text-transform:uppercase; letter-spacing:.02em;}
.mulib-news-copy-modern p{margin:0; color:rgba(231,239,255,.72); font-size:.82rem; line-height:1.35;}
.mulib-news-row-modern time{color:#aab8cc; font-size:.78rem; text-align:right; font-weight:800;}
.mulib-news-btn{
    height:32px; display:flex; align-items:center; justify-content:center;
    color:#fff !important; text-decoration:none !important;
    border-radius:9px; border:1px solid rgba(255,188,91,.22);
    background:linear-gradient(180deg,rgba(129,58,22,.72),rgba(41,17,9,.85));
    font-size:.68rem; font-weight:950; text-transform:uppercase;
}
.lightnap-home-v16 .mulib-status-mini{padding:15px !important; max-width:100% !important; width:100% !important; border-radius:14px !important;}
.lightnap-home-v16 .mulib-status-mini>span,
.lightnap-home-v16 .mulib-panel-kicker{color:#ffbd68 !important; font-size:.64rem !important; letter-spacing:.2em !important;}
.lightnap-home-v16 .mulib-status-mini h2{font-size:1rem !important;}
.lightnap-home-v16 .mulib-status-row{padding:7px 0 !important;}
.lightnap-home-v16 .mulib-status-row b{font-size:1.05rem !important; color:#ffbd68 !important;}
.lightnap-home-v16 .mulib-side-rank{border-radius:13px !important;}
.lightnap-home-v16 .mulib-side-rank-body{padding:8px 10px 10px !important;}
.lightnap-home-v16 .mulib-side-rank .rankings-table{font-size:.76rem !important;}
.lightnap-home-v16 .mulib-side-rank .rankings-table td,
.lightnap-home-v16 .mulib-side-rank .rankings-table th{padding:7px 4px !important;}
.lightnap-home-v16 .mulib-side-rank-general .rankings-table td:last-child{color:#ff6b73 !important;}
.lightnap-home-v16 .mulib-side-rank-gens .rankings-table td:last-child{color:#37d8ff !important;}
.lightnap-home-v16 .mulib-side-rank-guilds .rankings-table td:last-child{color:#7cff9a !important;}
.lightnap-home-v16 .lightnap-footer-static{margin-top:0 !important;}
@media(max-width:1180px){
    .mulib-v16-layout{grid-template-columns:220px minmax(0,1fr) 300px; gap:12px;}
    .mulib-news-row-modern{grid-template-columns:30px minmax(0,1fr) 78px;}
    .mulib-news-btn{display:none;}
}
@media(max-width:992px){
    .mulib-v16-layout{grid-template-columns:1fr !important; max-width:760px; margin:0 auto;}
    .mulib-left-stack{order:2;}
    .mulib-center-stack{order:1;}
    .mulib-right-stack{order:3; max-width:100% !important;}
    .mulib-function-list{grid-template-columns:repeat(2,minmax(0,1fr));}
    .mulib-news-row-modern{grid-template-columns:30px minmax(0,1fr);}
    .mulib-news-row-modern time{grid-column:2; text-align:left;}
}
@media(max-width:576px){
    .mulib-function-list{grid-template-columns:1fr;}
    .lightnap-home-v16 .mulib-center-logo{width:min(230px,78vw) !important;}
    .lightnap-home-v16 .mulib-welcome-panel{padding:18px !important;}
}


/* FASE17: Inicio más limpio, notificaciones modernas y estadísticas por país */
body.lightnap-home-v17 .mulib-home-actions a[href*="register"]{display:none !important;}
body.lightnap-home-v17 .mulib-v16-layout{
    grid-template-columns:250px minmax(0,1fr) 330px !important;
}
body.lightnap-home-v17 .mulib-welcome-panel{
    min-height:145px !important;
    padding:20px 24px !important;
    background:
        radial-gradient(circle at 0% 10%,rgba(255,149,54,.14),transparent 31%),
        radial-gradient(circle at 100% 0%,rgba(56,146,255,.15),transparent 35%),
        linear-gradient(135deg,rgba(8,17,36,.90),rgba(3,7,16,.95)) !important;
}
body.lightnap-home-v17 .mulib-welcome-panel h1{
    font-size:clamp(2.1rem,3.2vw,3.25rem) !important;
    letter-spacing:.01em !important;
}
body.lightnap-home-v17 .mulib-welcome-panel p{
    max-width:760px !important;
    font-size:.90rem !important;
    color:rgba(233,240,255,.72) !important;
}
body.lightnap-home-v17 .mulib-home-actions{
    gap:10px !important;
}
body.lightnap-home-v17 .mulib-home-actions a{
    min-width:150px !important;
    height:38px !important;
    background:linear-gradient(180deg,rgba(135,69,28,.90),rgba(71,30,13,.92)) !important;
    border:1px solid rgba(255,190,100,.28) !important;
    box-shadow:0 10px 22px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.10) !important;
}

body.lightnap-home-v17 .mulib-news-modern{
    min-height:0 !important;
    background:
        radial-gradient(circle at top left,rgba(52,138,255,.08),transparent 38%),
        linear-gradient(180deg,rgba(6,15,32,.88),rgba(2,7,16,.96)) !important;
}
body.lightnap-home-v17 .mulib-news-list-modern{
    padding:14px !important;
    gap:10px !important;
}
body.lightnap-home-v17 .mulib-news-row-modern{
    grid-template-columns:42px minmax(0,1fr) 86px 78px !important;
    min-height:74px !important;
    padding:11px 12px !important;
    border-radius:14px !important;
    background:
        linear-gradient(90deg,rgba(12,30,57,.72),rgba(8,14,27,.82)) !important;
    border:1px solid rgba(91,163,255,.12) !important;
    box-shadow:inset 0 0 22px rgba(255,255,255,.025), 0 8px 20px rgba(0,0,0,.16) !important;
    overflow:hidden !important;
}
body.lightnap-home-v17 .mulib-news-row-modern:hover{
    border-color:rgba(255,188,91,.26) !important;
    transform:translateY(-1px);
}
body.lightnap-home-v17 .mulib-news-mark{
    width:38px !important;
    height:38px !important;
    border-radius:12px !important;
    color:#fff !important;
    background:linear-gradient(135deg,#0e4b86,#081629) !important;
    box-shadow:0 0 18px rgba(40,147,255,.18) !important;
}
body.lightnap-home-v17 .mulib-news-copy-modern{min-width:0 !important; overflow:hidden !important;}
body.lightnap-home-v17 .mulib-news-copy-modern h3{
    color:#ffd995 !important;
    font-size:.90rem !important;
    line-height:1.25 !important;
    max-width:100% !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    letter-spacing:.01em !important;
}
body.lightnap-home-v17 .mulib-news-copy-modern p{
    color:rgba(229,238,255,.68) !important;
    font-size:.78rem !important;
    line-height:1.35 !important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
body.lightnap-home-v17 .mulib-news-row-modern time{
    color:#97acc7 !important;
    font-size:.74rem !important;
}
body.lightnap-home-v17 .mulib-news-btn{
    height:30px !important;
    border-radius:9px !important;
    background:linear-gradient(180deg,rgba(120,60,25,.86),rgba(45,19,10,.92)) !important;
}

body.lightnap-home-v17 .mulib-visitor-card-v17{
    border-color:rgba(255,188,91,.16) !important;
}
.mulib-visitor-body-v17{
    padding:13px 14px 15px;
}
.mulib-visitor-total-v17{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 0 10px;
    margin-bottom:9px;
    border-bottom:1px solid rgba(255,255,255,.08);
    color:#dce8fb;
    font-size:.80rem;
    font-weight:800;
}
.mulib-visitor-total-v17 strong{
    color:#fff;
    font-size:1rem;
    text-shadow:0 0 10px rgba(255,189,104,.22);
}
.mulib-visitor-label-v17{
    color:#99abc3;
    font-size:.72rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
    margin-bottom:8px;
}
.mulib-country-list-v17{display:grid; gap:7px;}
.mulib-country-row-v17{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    min-height:30px;
    padding:6px 8px;
    border-radius:9px;
    background:rgba(255,255,255,.035);
    border:1px solid rgba(255,255,255,.055);
}
.mulib-country-row-v17 span{display:flex; align-items:center; gap:8px; min-width:0;}
.mulib-country-row-v17 img{
    width:24px;
    height:16px;
    object-fit:cover;
    border-radius:3px;
    box-shadow:0 0 0 1px rgba(255,255,255,.18),0 5px 10px rgba(0,0,0,.22);
}
.mulib-country-row-v17 em{
    color:#edf4ff;
    font-style:normal;
    font-size:.78rem;
    font-weight:900;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.mulib-country-row-v17 strong{
    color:#ffbd68;
    font-size:.82rem;
    font-weight:950;
}
.mulib-country-empty-v17{
    padding:10px;
    border-radius:10px;
    color:#ffcf85;
    background:rgba(255,189,104,.07);
    border:1px solid rgba(255,189,104,.14);
    text-align:center;
    font-size:.80rem;
    font-weight:800;
}

@media(max-width:1180px){
    body.lightnap-home-v17 .mulib-v16-layout{grid-template-columns:225px minmax(0,1fr) 300px !important;}
    body.lightnap-home-v17 .mulib-news-row-modern{grid-template-columns:38px minmax(0,1fr) 76px !important;}
    body.lightnap-home-v17 .mulib-news-btn{display:none !important;}
}
@media(max-width:992px){
    body.lightnap-home-v17 .mulib-v16-layout{grid-template-columns:1fr !important;}
    body.lightnap-home-v17 .mulib-news-row-modern{grid-template-columns:38px minmax(0,1fr) !important;}
    body.lightnap-home-v17 .mulib-news-row-modern time{grid-column:2 !important; text-align:left !important;}
}

/* FASE18: descargas reales + logos de clanes */
.mulib-downloads-wrap{
    width:min(980px,92vw);
    margin:0 auto;
    display:grid;
    gap:18px;
}
.mulib-downloads-hero{
    padding:20px 22px;
    border-radius:18px;
    border:1px solid rgba(255,188,91,.18);
    background:
        radial-gradient(circle at 0% 0%,rgba(255,154,65,.13),transparent 35%),
        radial-gradient(circle at 100% 0%,rgba(54,143,255,.12),transparent 38%),
        linear-gradient(135deg,rgba(7,16,34,.92),rgba(3,8,18,.96));
    box-shadow:0 18px 50px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.05);
}
.mulib-downloads-hero span,
.mulib-download-group-title h3{
    color:#ffbd68;
    text-transform:uppercase;
    font-weight:950;
    letter-spacing:.14em;
}
.mulib-downloads-hero h2{
    color:#fff;
    text-transform:uppercase;
    font-size:clamp(2rem,4vw,3.3rem);
    line-height:.95;
    margin:6px 0 8px;
    font-weight:950;
}
.mulib-downloads-hero p{margin:0;color:rgba(231,239,255,.72);font-weight:700;line-height:1.55;}
.mulib-download-group{
    border-radius:18px;
    border:1px solid rgba(91,163,255,.13);
    background:linear-gradient(180deg,rgba(5,15,32,.82),rgba(2,7,16,.94));
    overflow:hidden;
}
.mulib-download-group-title{padding:13px 18px;border-bottom:1px solid rgba(255,255,255,.07);}
.mulib-download-group-title h3{font-size:1rem;margin:0;}
.mulib-download-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;padding:16px;}
.mulib-download-card{
    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    gap:14px;
    align-items:center;
    padding:15px;
    border-radius:15px;
    background:linear-gradient(135deg,rgba(14,31,58,.80),rgba(8,13,25,.90));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 12px 28px rgba(0,0,0,.20);
}
.mulib-download-icon{
    width:52px;height:52px;border-radius:16px;display:grid;place-items:center;
    background:linear-gradient(135deg,#123f73,#081629);
    color:#ffbd68;font-size:1.45rem;font-weight:950;
    border:1px solid rgba(255,188,91,.18);
}
.mulib-download-content h4{margin:0;color:#fff;font-weight:950;text-transform:uppercase;font-size:1rem;}
.mulib-download-content p{margin:4px 0;color:rgba(231,239,255,.68);font-size:.82rem;font-weight:700;}
.mulib-download-content small{color:#ffbd68;font-weight:900;}
.mulib-download-btn{
    grid-column:1 / -1;
    height:38px;
    border-radius:11px;
    display:flex;align-items:center;justify-content:center;
    color:#fff !important;text-decoration:none !important;
    text-transform:uppercase;font-weight:950;font-size:.74rem;letter-spacing:.04em;
    border:1px solid rgba(255,188,91,.22);
    background:linear-gradient(180deg,rgba(139,70,28,.95),rgba(68,28,12,.95));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 12px 22px rgba(0,0,0,.22);
}
.mulib-download-btn:hover{filter:brightness(1.12);}
.mulib-download-empty{
    padding:18px;
    text-align:center;
    border-radius:14px;
    color:#ffcf85;
    background:rgba(255,189,104,.07);
    border:1px solid rgba(255,189,104,.14);
    font-weight:900;
}

.mulib-compact-ranking{display:grid;gap:6px;}
.mulib-compact-row{
    display:grid;
    grid-template-columns:22px minmax(0,1fr) auto;
    gap:9px;
    align-items:center;
    min-height:34px;
    padding:6px 3px;
    border-bottom:1px solid rgba(255,255,255,.055);
}
.mulib-guild-row{grid-template-columns:22px 24px minmax(0,1fr) auto;}
.mulib-compact-row strong{color:#ff9f43;font-weight:950;text-align:center;}
.mulib-compact-row span,
.mulib-compact-row span a{min-width:0;color:#31c6ff !important;text-decoration:none !important;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mulib-compact-row b{color:#7cff9a;font-weight:950;}
.mulib-guild-mark{
    width:22px;height:22px;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);
    gap:0;border-radius:4px;overflow:hidden;background:rgba(255,255,255,.03);
    box-shadow:0 0 0 1px rgba(255,255,255,.12),0 4px 10px rgba(0,0,0,.3);
}
.mulib-guild-mark i{display:block;width:100%;height:100%;}
.mulib-guild-mark-empty{
    width:22px;height:22px;border-radius:6px;display:grid;place-items:center;color:#ffbd68;
    background:rgba(255,189,104,.08);border:1px solid rgba(255,189,104,.16);font-size:.74rem;
}
.mulib-side-empty{
    padding:10px;border-radius:10px;color:#ffcf85;text-align:center;background:rgba(255,189,104,.07);border:1px solid rgba(255,189,104,.14);font-weight:800;font-size:.8rem;
}

/* FASE19: descargas compactas + rankings/cache reales + noticias limpias */
.mulib-downloads-wrap.mulib-downloads-wrap-compact{
    width:min(760px,90vw) !important;
    gap:12px !important;
}
.mulib-downloads-wrap-compact .mulib-downloads-hero{
    padding:14px 18px !important;
    border-radius:14px !important;
}
.mulib-downloads-wrap-compact .mulib-downloads-hero h2{
    font-size:clamp(1.65rem,3vw,2.35rem) !important;
    margin:3px 0 5px !important;
}
.mulib-downloads-wrap-compact .mulib-downloads-hero p{
    font-size:.86rem !important;
    line-height:1.4 !important;
}
.mulib-downloads-wrap-compact .mulib-download-group{
    border-radius:14px !important;
}
.mulib-downloads-wrap-compact .mulib-download-group-title{
    padding:10px 15px !important;
}
.mulib-downloads-wrap-compact .mulib-download-grid{
    padding:12px !important;
    gap:10px !important;
}
.mulib-downloads-wrap-compact .mulib-download-card{
    grid-template-columns:42px minmax(0,1fr) 180px !important;
    padding:11px 12px !important;
    border-radius:12px !important;
    gap:11px !important;
}
.mulib-downloads-wrap-compact .mulib-download-icon{
    width:42px !important;
    height:42px !important;
    border-radius:12px !important;
    font-size:1.1rem !important;
}
.mulib-downloads-wrap-compact .mulib-download-content h4{
    font-size:.9rem !important;
}
.mulib-downloads-wrap-compact .mulib-download-content p{
    margin:2px 0 !important;
    font-size:.74rem !important;
}
.mulib-downloads-wrap-compact .mulib-download-content small{
    font-size:.78rem !important;
}
.mulib-downloads-wrap-compact .mulib-download-btn{
    grid-column:auto !important;
    height:36px !important;
    border-radius:10px !important;
    font-size:.72rem !important;
}

.mulib-gens-family-title{
    color:#ffbd68;
    font-size:.72rem;
    text-transform:uppercase;
    font-weight:950;
    letter-spacing:.12em;
    text-align:center;
    padding:4px 0 3px;
    border-bottom:1px solid rgba(255,255,255,.06);
}
.mulib-compact-gens .mulib-compact-row{
    min-height:31px;
}
.mulib-rank-red{color:#ff4f66 !important;}
.mulib-rank-cyan{color:#32dcff !important;}
.mulib-compact-row span a{color:inherit !important;}

.mulib-news-page-wrap{
    width:min(900px,92vw);
    margin:0 auto;
    display:grid;
    gap:14px;
}
.mulib-news-page-hero{
    padding:16px 18px;
    border-radius:16px;
    border:1px solid rgba(255,188,91,.18);
    background:
        radial-gradient(circle at 0% 0%,rgba(255,154,65,.12),transparent 36%),
        radial-gradient(circle at 100% 0%,rgba(54,143,255,.11),transparent 38%),
        linear-gradient(135deg,rgba(7,16,34,.92),rgba(3,8,18,.96));
}
.mulib-news-page-hero span{
    color:#ffbd68;
    text-transform:uppercase;
    font-weight:950;
    letter-spacing:.14em;
    font-size:.78rem;
}
.mulib-news-page-hero h2{
    color:#fff;
    text-transform:uppercase;
    font-size:2.1rem;
    line-height:1;
    margin:4px 0 6px;
    font-weight:950;
}
.mulib-news-page-hero p{margin:0;color:rgba(231,239,255,.70);font-weight:750;}
.mulib-news-page-list{display:grid;gap:10px;}
.mulib-news-page-item{
    display:grid;
    grid-template-columns:42px minmax(0,1fr) 90px;
    gap:12px;
    align-items:center;
    padding:12px;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.08);
    background:linear-gradient(135deg,rgba(10,24,48,.80),rgba(4,8,17,.94));
}
.mulib-news-page-number{
    width:38px;height:38px;border-radius:14px;display:grid;place-items:center;
    color:#ffbd68;font-weight:950;background:rgba(38,109,183,.30);border:1px solid rgba(91,174,255,.25);
}
.mulib-news-page-copy h3{
    margin:0 0 4px;
    color:#ffca78;
    font-weight:950;
    text-transform:uppercase;
    font-size:.94rem;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.mulib-news-page-copy p{margin:0;color:rgba(231,239,255,.68);font-size:.82rem;font-weight:700;}
.mulib-news-page-item time{color:#c6d1e2;font-size:.78rem;font-weight:900;text-align:right;}
.mulib-news-page-empty{padding:16px;border-radius:14px;color:#ffcf85;background:rgba(255,189,104,.07);border:1px solid rgba(255,189,104,.14);font-weight:900;text-align:center;}

@media(max-width:768px){
    .mulib-downloads-wrap-compact .mulib-download-card{grid-template-columns:42px minmax(0,1fr) !important;}
    .mulib-downloads-wrap-compact .mulib-download-btn{grid-column:1 / -1 !important;}
    .mulib-news-page-item{grid-template-columns:38px minmax(0,1fr);}
    .mulib-news-page-item time{grid-column:2;text-align:left;}
}

/* FASE20: logos Gens reales + Comunidad debajo de Estadísticas */
body.lightnap-home-v20 .mulib-gens-row{
    grid-template-columns:22px minmax(0,1fr) 28px auto !important;
    gap:8px !important;
}
.mulib-gens-rank-icon{
    width:22px;
    height:22px;
    object-fit:contain;
    display:block;
    justify-self:center;
    filter:drop-shadow(0 0 7px rgba(255,201,122,.42));
}
.mulib-gens-rank-fallback{
    width:22px;
    height:22px;
    display:grid;
    place-items:center;
    justify-self:center;
    color:#ffbd68;
    font-size:.70rem;
    font-weight:950;
    border-radius:50%;
    border:1px solid rgba(255,189,104,.20);
    background:rgba(255,189,104,.07);
}
body.lightnap-home-v20 .mulib-compact-gens .mulib-compact-row span,
body.lightnap-home-v20 .mulib-compact-gens .mulib-compact-row span a{
    color:#f3f7ff !important;
}
body.lightnap-home-v20 .mulib-compact-gens .mulib-gens-family-title{
    margin-top:3px;
}
body.lightnap-home-v20 .mulib-compact-gens .mulib-gens-family-title:first-child{
    margin-top:0;
}
.mulib-community-card-v20{
    margin-top:14px;
}
.mulib-community-links-v20{
    display:grid;
    gap:8px;
    padding:12px 13px 14px;
}
.mulib-community-links-v20 a{
    min-height:36px;
    display:flex;
    align-items:center;
    gap:10px;
    color:#edf4ff !important;
    text-decoration:none !important;
    font-size:.80rem;
    font-weight:900;
    border-radius:10px;
    padding:7px 9px;
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
    border:1px solid rgba(255,255,255,.065);
    transition:.18s ease;
}
.mulib-community-links-v20 a:hover{
    transform:translateX(3px);
    border-color:rgba(255,188,91,.24);
    background:linear-gradient(180deg,rgba(255,188,91,.10),rgba(24,49,88,.10));
}
.mulib-community-links-v20 i{
    width:26px;
    height:26px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:#ffbd68;
    font-style:normal;
    font-weight:950;
    border:1px solid rgba(255,188,91,.22);
    background:rgba(255,188,91,.07);
    box-shadow:0 0 10px rgba(255,188,91,.08);
}
.mulib-community-links-v20 span{
    min-width:0;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
@media(max-width:992px){
    .mulib-community-card-v20{margin-top:10px;}
}


/* FASE21: nitidez, noticias reales, descargas compactas y selector de clases */
html, body{
    overflow-x:hidden !important;
    -webkit-font-smoothing:antialiased !important;
    -moz-osx-font-smoothing:grayscale !important;
    text-rendering:geometricPrecision !important;
}
body.lightnap-home-v21,
body.lightnap-v21-crisp{
    color:#f4f8ff !important;
    font-family:'Roboto', Arial, sans-serif !important;
    letter-spacing:.005em;
}
body.lightnap-home-v21 .lightnap-bg-overlay,
body.lightnap-v21-crisp .lightnap-bg-overlay{
    background:radial-gradient(circle at 50% 10%, rgba(46,99,168,.16), transparent 34%), linear-gradient(180deg, rgba(4,9,20,.58), rgba(2,5,12,.84)) !important;
    backdrop-filter:none !important;
}
body.lightnap-home-v21 .mulib-panel-card,
body.lightnap-home-v21 .mulib-main-panel,
body.lightnap-v21-crisp .lightnap-module-shell,
body.lightnap-v21-crisp .mulib-downloads-wrap,
body.lightnap-v21-crisp .mulib-news-page-wrap{
    background:linear-gradient(145deg, rgba(6,16,31,.94), rgba(4,8,17,.91)) !important;
    border:1px solid rgba(255,180,83,.18) !important;
    box-shadow:0 18px 45px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body.lightnap-home-v21 .mulib-card-title,
body.lightnap-home-v21 .mulib-side-rank-title{
    background:linear-gradient(90deg, rgba(10,41,70,.96), rgba(81,37,22,.88)) !important;
    border-bottom:1px solid rgba(255,187,91,.18) !important;
}
body.lightnap-home-v21 .mulib-news-modern{min-height:auto !important;}
body.lightnap-home-v21 .mulib-news-list-modern{gap:10px !important;padding:14px !important;}
body.lightnap-home-v21 .mulib-news-row-modern{
    grid-template-columns:38px minmax(0,1fr) 82px 76px !important;
    min-height:68px !important;
    background:linear-gradient(90deg, rgba(12,25,45,.96), rgba(8,14,25,.84)) !important;
    border:1px solid rgba(255,255,255,.07) !important;
    border-radius:12px !important;
    box-shadow:0 8px 20px rgba(0,0,0,.18) !important;
}
body.lightnap-home-v21 .mulib-news-copy-modern h3{
    color:#ffd089 !important;
    font-size:.88rem !important;
    line-height:1.25 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    text-shadow:0 1px 2px rgba(0,0,0,.8) !important;
}
body.lightnap-home-v21 .mulib-news-copy-modern p{
    color:#d8e4f7 !important;
    opacity:1 !important;
    font-size:.80rem !important;
    line-height:1.35 !important;
    max-height:2.7em !important;
    overflow:hidden !important;
}
body.lightnap-home-v21 .mulib-news-row-modern time{color:#d0d8e7 !important;opacity:1 !important;font-size:.74rem !important;}
body.lightnap-home-v21 .mulib-news-btn{height:28px !important;padding:0 10px !important;font-size:.67rem !important;}

/* Selector de clases estilo Lightnap original, sin robar la rueda del mouse */
.mulib-classes-mini{overflow:hidden !important;}
.mulib-class-mini-body{position:relative;padding:16px;min-height:270px;}
.mulib-classes-mini .class-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.12;filter:saturate(1.1);pointer-events:none;}
.mulib-class-tabs-mini{position:relative;z-index:2;display:flex;justify-content:center;gap:4px;flex-wrap:wrap;margin:0 0 12px;}
.mulib-class-tabs-mini .class-btn-top{
    width:62px;height:62px;border:0;background:transparent;padding:0;margin:0;cursor:pointer;opacity:.76;transition:transform .2s ease, opacity .2s ease, filter .2s ease;
}
.mulib-class-tabs-mini .class-btn-top img{width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 8px 12px rgba(0,0,0,.48));}
.mulib-class-tabs-mini .class-btn-top:hover,
.mulib-class-tabs-mini .class-btn-top.active{opacity:1;transform:translateY(-3px);filter:brightness(1.15);}
.mulib-class-preview{position:relative;z-index:2;display:grid;grid-template-columns:minmax(170px, 42%) 1fr;align-items:center;gap:18px;}
.mulib-class-art{height:210px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;}
.mulib-class-art img{max-height:235px;max-width:100%;object-fit:contain;filter:drop-shadow(0 18px 26px rgba(0,0,0,.55));transition:opacity .18s ease, transform .18s ease;}
.mulib-class-info h2{margin:0 0 8px;color:#f3fbff;text-transform:uppercase;letter-spacing:.12em;font-family:'Merriweather', serif;font-size:1.55rem;text-shadow:0 0 18px rgba(82,169,255,.36);}
.mulib-class-info p{margin:0;color:#e5edf9;font-size:.92rem;line-height:1.55;font-weight:700;}

/* Descargas más pequeñas y limpias */
body.lightnap-v21-crisp .lightnap-module-shell{max-width:920px !important;padding:20px !important;margin-left:auto !important;margin-right:auto !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21{max-width:760px !important;margin:0 auto !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-downloads-hero{max-width:640px !important;padding:18px 22px !important;margin:0 auto 12px !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-downloads-hero h2{font-size:2rem !important;line-height:1 !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-downloads-hero p{font-size:.86rem !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-download-group{max-width:640px !important;margin:0 auto !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-download-grid{display:block !important;padding:12px !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-download-card{min-height:72px !important;padding:12px 14px !important;grid-template-columns:46px 1fr 150px !important;gap:12px !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-download-icon{width:42px !important;height:42px !important;font-size:1.1rem !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-download-content h4{font-size:.88rem !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-download-content p{font-size:.72rem !important;margin:2px 0 !important;}
body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-download-btn{height:40px !important;min-width:135px !important;font-size:.72rem !important;}

/* Página de noticias */
body.lightnap-v21-crisp .mulib-news-page-wrap-v21{max-width:900px !important;margin:0 auto !important;padding:20px !important;}
body.lightnap-v21-crisp .mulib-news-page-hero{padding:18px 22px !important;margin-bottom:14px !important;}
body.lightnap-v21-crisp .mulib-news-page-hero h2{font-size:2.2rem !important;}
body.lightnap-v21-crisp .mulib-news-page-item{background:linear-gradient(90deg, rgba(12,27,48,.95), rgba(7,14,26,.9)) !important;border-radius:12px !important;}
body.lightnap-v21-crisp .mulib-news-page-copy h3{color:#ffd089 !important;font-size:.95rem !important;}
body.lightnap-v21-crisp .mulib-news-page-copy p{color:#dbe6f7 !important;opacity:1 !important;font-size:.84rem !important;}

@media (max-width: 991px){
    .mulib-class-preview{grid-template-columns:1fr; text-align:center;}
    .mulib-class-art{height:170px;}
    .mulib-class-tabs-mini .class-btn-top{width:52px;height:52px;}
    body.lightnap-home-v21 .mulib-news-row-modern{grid-template-columns:34px minmax(0,1fr) !important;}
    body.lightnap-home-v21 .mulib-news-row-modern time{grid-column:2;text-align:left !important;}
    body.lightnap-home-v21 .mulib-news-btn{display:none !important;}
}
@media (max-width: 640px){
    body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-download-card{grid-template-columns:42px 1fr !important;}
    body.lightnap-v21-crisp .mulib-downloads-wrap-v21 .mulib-download-btn{grid-column:1 / -1;width:100%;}
}


/* FASE22: noticias con detalle real, no fondo/foto suelta */
body.lightnap-v21-crisp .mulib-news-page-wrap-v22,
.mulib-news-page-wrap-v22{
    max-width:920px !important;
    margin:0 auto !important;
    padding:18px !important;
}
.mulib-news-page-item-link{
    grid-template-columns:42px minmax(0,1fr) 86px 86px !important;
}
.mulib-news-page-read,
.mulib-news-back{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:32px;
    padding:0 14px;
    border-radius:10px;
    color:#fff !important;
    text-decoration:none !important;
    font-weight:950;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.03em;
    background:linear-gradient(180deg, rgba(148,77,34,.96), rgba(99,42,18,.96));
    border:1px solid rgba(255,181,92,.32);
    box-shadow:0 8px 18px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.08);
}
.mulib-news-page-read:hover,
.mulib-news-back:hover{
    filter:brightness(1.12);
    transform:translateY(-1px);
}
.mulib-news-detail-card{
    border-radius:18px;
    padding:18px;
    border:1px solid rgba(255,188,91,.18);
    background:
        radial-gradient(circle at 0 0, rgba(255,153,65,.10), transparent 36%),
        radial-gradient(circle at 100% 0, rgba(54,143,255,.10), transparent 38%),
        linear-gradient(145deg, rgba(6,16,31,.96), rgba(4,8,17,.94));
    box-shadow:0 22px 55px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04);
}
.mulib-news-detail-head{
    margin:14px 0 16px;
    padding:18px 20px;
    border-radius:16px;
    background:linear-gradient(135deg, rgba(10,41,70,.70), rgba(73,35,20,.42));
    border:1px solid rgba(255,255,255,.07);
}
.mulib-news-detail-head span{
    color:#ffbd68;
    text-transform:uppercase;
    font-weight:950;
    letter-spacing:.15em;
    font-size:.74rem;
}
.mulib-news-detail-head h2{
    margin:6px 0 8px;
    color:#fff;
    font-size:1.55rem;
    line-height:1.2;
    font-weight:950;
    text-transform:uppercase;
    text-shadow:0 2px 8px rgba(0,0,0,.65);
}
.mulib-news-detail-head p{
    margin:0;
    color:#d3e0f4;
    font-size:.82rem;
    font-weight:800;
}
.mulib-news-detail-body{
    color:#edf5ff;
    font-size:.95rem;
    line-height:1.72;
    font-weight:650;
    letter-spacing:.005em;
    text-rendering:geometricPrecision;
    -webkit-font-smoothing:antialiased;
    overflow:hidden;
}
.mulib-news-detail-body p,
.mulib-news-detail-body div{
    margin:0 0 12px;
}
.mulib-news-detail-body h1,
.mulib-news-detail-body h2,
.mulib-news-detail-body h3,
.mulib-news-detail-body h4{
    color:#ffd089;
    margin:14px 0 10px;
    line-height:1.25;
    text-transform:none;
}
.mulib-news-detail-body ul,
.mulib-news-detail-body ol{
    padding-left:24px;
    margin:10px 0 14px;
}
.mulib-news-detail-body li{margin:5px 0;}
.mulib-news-detail-body a{color:#6bd7ff;text-decoration:none;font-weight:900;}
.mulib-news-detail-body img{
    max-width:100%;
    height:auto;
    border-radius:14px;
    display:block;
    margin:14px auto;
    border:1px solid rgba(255,255,255,.08);
}
@media(max-width:768px){
    .mulib-news-page-item-link{grid-template-columns:38px minmax(0,1fr) !important;}
    .mulib-news-page-item-link time,
    .mulib-news-page-item-link .mulib-news-page-read{grid-column:2;text-align:left;justify-self:start;}
    .mulib-news-detail-head h2{font-size:1.18rem;}
}


/* FASE23: detalle de noticia completo dentro del mismo cuadro */
body.lightnap-v21-crisp .mulib-news-page-wrap-v23,
.mulib-news-page-wrap-v23{
    max-width:980px !important;
    margin:0 auto !important;
    padding:18px !important;
}
.mulib-news-page-wrap-v23 .mulib-news-detail-card{
    max-width:900px !important;
    margin:0 auto !important;
    padding:20px !important;
    overflow:visible !important;
}
.mulib-news-page-wrap-v23 .mulib-news-detail-body{
    margin-top:14px !important;
    padding:18px 20px !important;
    border-radius:16px !important;
    border:1px solid rgba(255,255,255,.075) !important;
    background:linear-gradient(180deg, rgba(9,22,41,.82), rgba(3,8,17,.55)) !important;
    overflow:visible !important;
    color:#f2f7ff !important;
    font-size:.93rem !important;
    line-height:1.72 !important;
    font-weight:750 !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
}
.mulib-news-page-wrap-v23 .mulib-news-detail-body p{
    margin:0 0 12px !important;
    color:#f0f6ff !important;
    text-shadow:none !important;
}
.mulib-news-page-wrap-v23 .mulib-news-detail-body h3{
    display:block !important;
    margin:18px 0 8px !important;
    color:#ffd089 !important;
    font-family:'Merriweather', serif !important;
    font-size:1.02rem !important;
    line-height:1.35 !important;
    text-transform:none !important;
    letter-spacing:.01em !important;
}
.mulib-news-page-wrap-v23 .mulib-news-detail-body h3:first-child{margin-top:0 !important;}
.mulib-news-page-wrap-v23 .mulib-news-detail-head{
    margin:14px 0 0 !important;
}
.mulib-news-page-wrap-v23 .mulib-news-detail-head h2{
    font-size:1.42rem !important;
}
@media(max-width:768px){
    .mulib-news-page-wrap-v23 .mulib-news-detail-card{padding:14px !important;}
    .mulib-news-page-wrap-v23 .mulib-news-detail-body{padding:14px !important;font-size:.88rem !important;}
    .mulib-news-page-wrap-v23 .mulib-news-detail-head h2{font-size:1.12rem !important;}
}
