:root {
    --fondo-general: #171a1f;
    --fondo-encabezado: #0b0c0e;
    --fondo-seccion: #22262d;
    --fondo-control: #2b3038;
    --fondo-input: #15171b;
    --rojo-principal: #c62828;
    --rojo-hover: #e53935;
    --rojo-usuario: #ef5350;
    --dorado-principal: #d4af37;
    --dorado-hover: #f0c95a;
    --texto-principal: #f5f5f5;
    --texto-secundario: #b8bdc6;
    --texto-deshabilitado: #777e89;
    --borde: #414751;
    --negro: #0b0c0e;
    --blanco: #ffffff;

    --mp-black: var(--negro);
    --mp-bg: var(--fondo-general);
    --mp-surface: var(--fondo-seccion);
    --mp-surface-alt: var(--fondo-control);
    --mp-surface-raised: color-mix(in srgb, var(--fondo-control) 88%, var(--blanco));
    --mp-surface-hover: color-mix(in srgb, var(--fondo-control) 82%, var(--blanco));
    --mp-border: var(--borde);
    --mp-border-strong: color-mix(in srgb, var(--borde) 78%, var(--blanco));
    --mp-white: var(--blanco);
    --mp-text: var(--texto-principal);
    --mp-muted: var(--texto-secundario);
    --mp-red: var(--rojo-principal);
    --mp-red-dark: color-mix(in srgb, var(--rojo-principal) 70%, var(--negro));
    --mp-red-bright: var(--rojo-hover);
    --mp-red-text: var(--rojo-usuario);
    --mp-gold: var(--dorado-principal);
    --mp-gold-light: var(--dorado-hover);
    --mp-success: #72c28a;
    --mp-info: #76afe8;
    --mp-warning: #e1b95e;
    --mp-danger: #ff8d95;
    --mp-tmdb-bg: var(--mp-surface);
    --mp-tmdb-surface: var(--mp-surface-alt);
    --mp-tmdb-border: var(--mp-border);
    --mp-tmdb-text: var(--mp-white);
    --mp-tmdb-muted: var(--mp-muted);
    --mp-tmdb-red: var(--mp-red);
    --mp-tmdb-red-dark: var(--mp-red-dark);
    --mp-tmdb-gold: var(--mp-gold);
}

html,
body.site {
    color-scheme: dark;
    color: var(--mp-text);
    background: var(--mp-bg);
}

body.site,
#sp-main-body,
#sp-main-body .container-inner,
#sp-component {
    background-color: var(--mp-bg);
}

/* Full-width forum: remove Helix's boxed shell and Bootstrap desktop cap. */
body.com-kunena.layout-boxed .body-innerwrapper {
    width: 100%;
    max-width: none;
    margin: 0;
    box-shadow: none;
}

body.com-kunena #sp-main-body > .container {
    width: 100%;
    max-width: none;
    padding-right: clamp(12px, 2vw, 32px);
    padding-left: clamp(12px, 2vw, 32px);
}

body.com-kunena #sp-main-body {
    padding-top: 42px;
    padding-bottom: 64px;
}

body.com-kunena #sp-main-body > .container > .container-inner,
body.com-kunena #sp-component,
body.com-kunena #kunena.layout {
    width: 100%;
    max-width: none;
}

body.site a {
    color: var(--mp-gold-light);
    text-decoration-color: rgba(240, 206, 121, .55);
    transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease;
}

body.site a:hover,
body.site a:focus-visible {
    color: var(--mp-white);
}

body.site :focus-visible {
    outline: 2px solid var(--mp-gold-light) !important;
    outline-offset: 2px;
}

/* Header and global navigation */
#sp-header {
    color: var(--mp-white);
    background: var(--mp-black);
    border-bottom: 3px solid var(--mp-red);
    box-shadow: none;
}

#sp-header.header-sticky {
    background: rgba(8, 9, 12, .97);
}

#sp-header .logo img,
#sp-header .logo-image {
    max-height: 54px;
}

.sp-megamenu-parent > li > a,
.sp-megamenu-parent > li > span,
#offcanvas-toggler,
#sp-header .form-control,
#sp-header .form-control::placeholder {
    color: var(--mp-white);
}

.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li:hover > a,
.sp-megamenu-parent > li:focus-within > a {
    color: var(--mp-gold-light);
}

.sp-megamenu-parent > li.active > a::after {
    position: absolute;
    right: 20px;
    bottom: 0;
    left: 20px;
    height: 3px;
    content: "";
    background: var(--mp-red);
}

.sp-dropdown .sp-dropdown-inner,
.offcanvas-menu {
    color: var(--mp-text);
    background: var(--mp-surface);
    border: 1px solid var(--mp-border);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .42);
}

.sp-dropdown li.sp-menu-item > a,
.offcanvas-menu .offcanvas-inner ul.menu > li > a,
.offcanvas-menu .offcanvas-inner ul.menu > li > span {
    color: var(--mp-white);
}

.sp-dropdown li.sp-menu-item > a:hover,
.sp-dropdown li.sp-menu-item.active > a,
.offcanvas-menu .offcanvas-inner ul.menu > li > a:hover {
    color: var(--mp-gold-light);
    background: var(--mp-surface-alt);
}

#sp-header .form-control {
    background: var(--mp-surface-alt);
    border-color: var(--mp-border-strong);
}

/* Shared controls */
body.site .form-control,
body.site .form-select,
body.site input[type="text"],
body.site input[type="email"],
body.site input[type="password"],
body.site input[type="search"],
body.site input[type="date"],
body.site textarea,
body.site select {
    color: var(--mp-text);
    background-color: var(--mp-surface-alt);
    border-color: var(--mp-border-strong);
}

body.site select option,
body.site select optgroup {
    color: var(--mp-text);
    background: var(--mp-surface-raised);
}

body.site select option:checked {
    color: var(--mp-black);
    background: var(--mp-gold);
}

body.site .form-control::placeholder,
body.site textarea::placeholder,
body.site input::placeholder {
    color: #96969b;
    opacity: 1;
}

body.site .form-control:focus,
body.site .form-select:focus,
body.site input:focus,
body.site textarea:focus,
body.site select:focus {
    color: var(--mp-text);
    background-color: var(--mp-surface-alt);
    border-color: var(--mp-gold);
    box-shadow: 0 0 0 3px rgba(202, 164, 79, .22);
}

body.site .btn {
    border-radius: 3px;
    box-shadow: none;
    transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease;
}

body.site .btn-primary,
body.site .btn-success {
    color: #fff;
    background: var(--mp-red);
    border-color: var(--mp-red);
}

body.site .btn-primary:hover,
body.site .btn-primary:focus,
body.site .btn-success:hover,
body.site .btn-success:focus {
    color: #fff;
    background: var(--mp-red-bright);
    border-color: var(--mp-gold);
}

body.site .btn-outline-primary,
body.site .btn-secondary,
body.site .btn-outline-secondary,
body.site .btn-light,
body.site .btn-default {
    color: var(--mp-text);
    background: var(--mp-surface-raised);
    border-color: var(--mp-border-strong);
}

body.site .btn-outline-primary:hover,
body.site .btn-secondary:hover,
body.site .btn-outline-secondary:hover,
body.site .btn-light:hover,
body.site .btn-default:hover {
    color: var(--mp-black);
    background: var(--mp-gold);
    border-color: var(--mp-gold);
}

body.site .dropdown-menu,
body.site .popover,
body.site .modal-content,
body.site .offcanvas,
body.site .toast {
    --bs-dropdown-color: var(--mp-text);
    --bs-dropdown-bg: var(--mp-surface-raised);
    --bs-dropdown-border-color: var(--mp-border-strong);
    --bs-dropdown-link-color: var(--mp-text);
    --bs-dropdown-link-hover-color: var(--mp-white);
    --bs-dropdown-link-hover-bg: var(--mp-surface-hover);
    --bs-dropdown-link-active-color: var(--mp-black);
    --bs-dropdown-link-active-bg: var(--mp-gold);
    --bs-popover-bg: var(--mp-surface-raised);
    --bs-popover-body-color: var(--mp-text);
    --bs-popover-header-color: var(--mp-white);
    --bs-popover-header-bg: var(--mp-surface-alt);
    --bs-modal-color: var(--mp-text);
    color: var(--mp-text);
    background: var(--mp-surface-raised);
    border-color: var(--mp-border);
    box-shadow: 0 16px 38px rgba(0, 0, 0, .46);
}

body.site .dropdown-menu .dropdown-item,
body.site .dropdown-menu a,
body.site .dropdown-menu button,
body.site .dropdown-menu p,
body.site .dropdown-menu span,
body.site .popover-body,
body.site .toast-body {
    color: var(--mp-text);
}

body.site .dropdown-menu .dropdown-header,
body.site .dropdown-menu small,
body.site .dropdown-menu .small {
    color: var(--mp-muted) !important;
}

body.site .dropdown-menu .dropdown-divider,
body.site .modal-header,
body.site .modal-footer,
body.site .toast-header {
    border-color: var(--mp-border);
}

body.site .popover-header,
body.site .toast-header {
    color: var(--mp-white);
    background: var(--mp-surface-alt);
}

body.site .dropdown-menu .dropdown-item:hover,
body.site .dropdown-menu .dropdown-item:focus,
body.site .dropdown-menu .dropdown-item.active,
body.site .dropdown-menu a:hover,
body.site .dropdown-menu a:focus {
    color: var(--mp-black);
    background: var(--mp-gold);
}

body.site .tooltip {
    --bs-tooltip-color: var(--mp-white);
    --bs-tooltip-bg: var(--mp-black);
    --bs-tooltip-opacity: 1;
}

body.site .tooltip-inner {
    color: var(--mp-white);
    background: var(--mp-black);
    border: 1px solid var(--mp-border-strong);
}

body.site .alert {
    --bs-alert-color: var(--mp-text);
    --bs-alert-bg: var(--mp-surface-raised);
    --bs-alert-border-color: var(--mp-border-strong);
    color: var(--mp-text) !important;
    background: var(--mp-surface-raised) !important;
    border: 1px solid var(--mp-border-strong) !important;
    border-left-width: 4px !important;
}

body.site .alert-heading,
body.site .alert strong {
    color: var(--mp-white) !important;
}

body.site .alert a {
    color: var(--mp-gold-light) !important;
    font-weight: 700;
}

body.site .alert-success {
    border-left-color: var(--mp-success) !important;
}

body.site .alert-info,
body.site .alert-primary {
    border-left-color: var(--mp-info) !important;
}

body.site .alert-warning {
    border-left-color: var(--mp-warning) !important;
}

body.site .alert-danger,
body.site .alert-error {
    border-left-color: var(--mp-red-bright) !important;
}

#system-message-container joomla-alert {
    color: var(--mp-text) !important;
    background: var(--mp-surface-raised) !important;
    border-color: var(--mp-border-strong) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .38);
}

#system-message-container joomla-alert .alert-wrapper,
#system-message-container joomla-alert .alert-message {
    color: var(--mp-text) !important;
    background: transparent !important;
}

#system-message-container joomla-alert[type="success"],
#system-message-container joomla-alert[type="message"] {
    --alert-accent-color: #397c50;
    --alert-close-button: var(--mp-success);
}

#system-message-container joomla-alert[type="info"],
#system-message-container joomla-alert[type="notice"] {
    --alert-accent-color: #315f8e;
    --alert-close-button: var(--mp-info);
}

#system-message-container joomla-alert[type="warning"] {
    --alert-accent-color: #8b6824;
    --alert-close-button: var(--mp-warning);
}

#system-message-container joomla-alert[type="error"],
#system-message-container joomla-alert[type="danger"] {
    --alert-accent-color: var(--mp-red-dark);
    --alert-close-button: var(--mp-danger);
}

body.site .accordion {
    --bs-accordion-color: var(--mp-text);
    --bs-accordion-bg: var(--mp-surface);
    --bs-accordion-border-color: var(--mp-border);
    --bs-accordion-btn-color: var(--mp-text);
    --bs-accordion-btn-bg: var(--mp-surface-alt);
    --bs-accordion-active-color: var(--mp-gold-light);
    --bs-accordion-active-bg: var(--mp-surface-raised);
}

body.site .accordion-button,
body.site .accordion-body,
body.site details,
body.site details > summary {
    color: var(--mp-text);
    background: var(--mp-surface);
    border-color: var(--mp-border);
}

body.site .accordion-button:not(.collapsed),
body.site details[open] > summary {
    color: var(--mp-gold-light);
    background: var(--mp-surface-raised);
}

body.site .accordion-button::after {
    filter: grayscale(1) brightness(2.2);
}

/* Kunena forum */
#kunena.layout {
    color: var(--mp-text);
}

#kunena.layout .navbar,
#kunena.layout .navbar-light,
#kunena.layout .navbar.bg-light {
    --bs-navbar-color: var(--mp-text);
    --bs-navbar-hover-color: var(--mp-gold-light);
    --bs-navbar-active-color: var(--mp-white);
    color: var(--mp-text) !important;
    background: var(--mp-surface) !important;
    border-color: var(--mp-border) !important;
}

#kunena.layout .navbar .nav-link {
    color: var(--mp-text) !important;
}

#kunena.layout .navbar .nav-link:hover,
#kunena.layout .navbar .nav-link:focus,
#kunena.layout .navbar .nav-link.active {
    color: var(--mp-gold-light) !important;
}

#kunena.layout .navbar-toggler,
#kunena.layout .btn-close {
    color: var(--mp-white);
    border-color: var(--mp-border-strong);
}

#kunena.layout .navbar-toggler-icon,
#kunena.layout .btn-close {
    filter: grayscale(1) invert(1) brightness(1.8);
}

#kunena.layout h1,
#kunena.layout h2,
#kunena.layout h3,
#kunena.layout h4,
#kunena.layout h5,
#kunena.layout h6,
#kunena.layout strong,
#kunena.layout label,
#kunena.layout legend {
    color: var(--mp-white);
}

#kunena.layout a {
    color: var(--mp-gold-light);
}

#kunena.layout a:hover,
#kunena.layout a:focus-visible {
    color: var(--mp-white);
}

#kunena.layout a.kwho-admin,
#kunena.layout .kwho-admin a,
#kunena.layout .dropdown-menu a.kwho-admin {
    color: var(--mp-red-text) !important;
}

#kunena.layout a.kwho-admin:hover,
#kunena.layout a.kwho-admin:focus-visible,
#kunena.layout .kwho-admin a:hover,
#kunena.layout .kwho-admin a:focus-visible {
    color: var(--mp-white) !important;
}

#kunena.layout .text-muted,
#kunena.layout small,
#kunena.layout .small,
#kunena.layout .desc,
#kunena.layout .kdate,
#kunena.layout .ktopic-details {
    color: var(--mp-muted) !important;
}

#kunena.layout .breadcrumb {
    padding: .65rem .8rem;
    background: var(--mp-black);
    border-left: 3px solid var(--mp-red);
    border-radius: 2px;
}

#kunena.layout .breadcrumb-item,
#kunena.layout .breadcrumb-item::before {
    color: var(--mp-muted);
}

#kunena.layout .kfrontend,
#kunena.layout .card,
#kunena.layout .horizontal-message,
#kunena.layout .horizontal-message-top,
#kunena.layout .horizontal-message-bottom,
#kunena.layout [class*="badger-left"] {
    color: var(--mp-white);
    background: var(--mp-surface);
    border-color: var(--mp-border) !important;
    border-radius: 3px;
    box-shadow: none !important;
}

#kunena.layout .card-header,
#kunena.layout .kfrontend > .card-header,
#kunena.layout .modal-header,
#kunena.layout .offcanvas-header {
    color: var(--mp-white);
    background: var(--mp-black);
    border-top: 2px solid var(--mp-red);
    border-bottom: 1px solid var(--mp-border);
}

#kunena.layout .card-header a,
#kunena.layout .card-header h1,
#kunena.layout .card-header h2,
#kunena.layout .card-header h3,
#kunena.layout .card-header h4 {
    color: var(--mp-gold-light);
}

#kunena.layout .card-body,
#kunena.layout .card-footer,
#kunena.layout .list-group-item,
#kunena.layout .bg-light,
#kunena.layout .bg-white,
#kunena.layout .profile-horizontal-top,
#kunena.layout .profile-horizontal-bottom,
#kunena.layout .kprofile-down {
    color: var(--mp-text) !important;
    background-color: var(--mp-surface) !important;
    border-color: var(--mp-border) !important;
}

#kunena.layout .card-body p,
#kunena.layout .card-body li,
#kunena.layout .card-footer,
#kunena.layout .table tbody td,
#kunena.layout .table tbody th {
    color: var(--mp-text);
}

#kunena.layout .list-group-item-action:hover,
#kunena.layout .list-group-item-action:focus,
#kunena.layout .list-group-item.active {
    color: var(--mp-white) !important;
    background: var(--mp-surface-hover) !important;
    border-color: var(--mp-border-strong) !important;
}

#kunena.layout .dropdown-menu {
    min-width: 14rem;
    background: var(--mp-surface-raised);
    border-color: var(--mp-border-strong);
}

#kunena.layout .dropdown-menu .dropdown-divider {
    border-top-color: var(--mp-border);
}

#kunena.layout .dropdown-menu .text-muted,
#kunena.layout .dropdown-menu time {
    color: var(--mp-muted) !important;
}

#kunena.layout .dropdown-menu .btn-outline-success,
#kunena.layout .dropdown-menu .btn-outline-warning,
#kunena.layout .dropdown-menu .btn-outline-danger,
#kunena.layout .dropdown-menu .btn-outline-secondary {
    color: var(--mp-text);
    background: var(--mp-surface-alt);
}

#kunena.layout .dropdown-menu .btn-outline-success {
    border-color: var(--mp-success);
}

#kunena.layout .dropdown-menu .btn-outline-warning {
    border-color: var(--mp-gold);
}

#kunena.layout .dropdown-menu .btn-outline-danger {
    border-color: var(--mp-red-bright);
}

#kunena.layout .dropdown-menu .btn-outline-secondary {
    border-color: var(--mp-border-strong);
}

#kunena.layout .dropdown-menu .btn:hover,
#kunena.layout .dropdown-menu .btn:focus {
    color: var(--mp-black);
    background: var(--mp-gold);
    border-color: var(--mp-gold-light);
}

#kunena.layout .table {
    --bs-table-color: var(--mp-text);
    --bs-table-bg: transparent;
    --bs-table-border-color: var(--mp-border);
    --bs-table-striped-color: var(--mp-text);
    --bs-table-striped-bg: rgba(255, 255, 255, .025);
    --bs-table-hover-color: var(--mp-white);
    --bs-table-hover-bg: var(--mp-surface-hover);
    color: var(--mp-text);
    border-color: var(--mp-border);
}

#kunena.layout .table > :not(caption) > * > * {
    color: inherit;
    background-color: transparent;
    border-color: var(--mp-border);
    box-shadow: none;
}

#kunena.layout .table thead th,
#kunena.layout .table > thead {
    color: var(--mp-white);
    background: var(--mp-surface-alt);
}

#kunena.layout .table tbody tr:nth-child(even) {
    background: rgba(255, 255, 255, .03);
}

#kunena.layout .table tbody tr:hover,
#kunena.layout .topic-item:hover {
    background: var(--mp-surface-hover);
}

#kunena.layout .topic-item-unread {
    background: rgba(189, 23, 34, .1);
    border-left-color: var(--mp-red) !important;
}

#kunena.layout .topic-item-unread a {
    color: var(--mp-white);
    font-weight: 800;
}

#kunena.layout .krow1-stickymsg,
#kunena.layout .category-stickymsg {
    background: rgba(202, 164, 79, .12) !important;
    border-left: 3px solid var(--mp-gold);
}

#kunena.layout .moved,
#kunena.layout .message-unapproved,
#kunena.layout .unapproved,
#kunena.layout .deleted,
#kunena.layout .message-deleted {
    color: var(--mp-muted);
    background: rgba(189, 23, 34, .11) !important;
}

#kunena.layout .badge,
#kunena.layout .topic-starter {
    color: var(--mp-black);
    background: var(--mp-gold);
    border-color: var(--mp-gold);
    border-radius: 2px;
}

#kunena.layout .topic-moderator,
#kunena.layout .badge.bg-danger,
#kunena.layout .badge.bg-primary {
    color: #fff;
    background: var(--mp-red) !important;
    border-color: var(--mp-red);
}

#kunena.layout .pagination .page-link,
#kunena.layout .pagination li > a,
#kunena.layout .pagination li > span {
    color: var(--mp-white);
    background: var(--mp-surface-alt);
    border-color: var(--mp-border);
}

#kunena.layout .pagination .active .page-link,
#kunena.layout .pagination li.active > a,
#kunena.layout .pagination li.active > span,
#kunena.layout .pagination a:hover {
    color: #fff;
    background: var(--mp-red);
    border-color: var(--mp-red);
}

#kunena.layout .kmessage {
    color: var(--mp-white);
    font-size: 15px;
    line-height: 1.65;
}

#kunena.layout .kmessage hr,
#kunena.layout .ksignature,
#kunena.layout .kmessagepadding {
    border-color: var(--mp-border);
}

#kunena.layout div.kmsgtext-quote,
#kunena.layout blockquote {
    color: var(--mp-white);
    background: var(--mp-surface-alt);
    border: 1px solid var(--mp-border);
    border-left: 4px solid var(--mp-gold);
}

#kunena.layout div.kmsgtext-code,
#kunena.layout pre,
#kunena.layout code {
    color: #fff;
    background: var(--mp-black);
    border-color: var(--mp-border);
}

#kunena.layout .nav-tabs {
    border-color: var(--mp-border);
}

#kunena.layout .nav-tabs .nav-link {
    color: var(--mp-muted);
    background: transparent;
    border-color: transparent;
}

#kunena.layout .nav-tabs .nav-link:hover,
#kunena.layout .nav-tabs .nav-link.active {
    color: var(--mp-gold-light);
    background: var(--mp-surface);
    border-color: var(--mp-border) var(--mp-border) var(--mp-surface);
}

#kunena.layout .sceditor-container,
#kunena.layout .sceditor-toolbar,
#kunena.layout .sceditor-group {
    background: var(--mp-surface-alt) !important;
    border-color: var(--mp-border) !important;
}

#kunena.layout .sceditor-button {
    filter: invert(1) grayscale(1);
}

#kunena.layout .sceditor-button:hover,
#kunena.layout .sceditor-button.active {
    background: rgba(202, 164, 79, .24) !important;
}

#kunena.layout .dropdown-toggle .status-green,
#kunena.layout .dropdown-toggle img.green {
    box-shadow: 0 0 0 2px #49a861, 0 0 0 4px var(--mp-black), 0 2px 5px rgba(0, 0, 0, .35);
}

#kunena.layout .mp-tmdb-panel {
    background: var(--mp-surface);
    border-color: var(--mp-border);
    border-top-color: var(--mp-red);
}

#kunena.layout .kmessage table:has(a[href*="themoviedb.org/movie/"]) {
    border-top-color: var(--mp-red);
}

#kunena.layout .kmessage table:has(a[href*="themoviedb.org/movie/"]) td {
    border-bottom-color: var(--mp-border);
}

/* El feed sigue disponible para integraciones, pero no ocupa espacio en la interfaz. */
#kunena.layout a[href*="format=feed"][href*="type=rss"],
#kunena.layout a[href*="mode-topics"][href*="format=feed"] {
    display: none !important;
}

/* Reemplaza el crédito visible de Kunena sin modificar sus archivos internos. */
.layout#kunena + div[style*="text-align:center"] {
    padding: .75rem 0;
    color: var(--mp-muted);
    font-size: 0;
    text-align: center;
}

.layout#kunena + div[style*="text-align:center"] > a {
    width: 0;
    height: 0;
    overflow: hidden;
    font-size: 0 !important;
    pointer-events: none;
}

.layout#kunena + div[style*="text-align:center"]::after {
    color: var(--mp-muted);
    content: "Powered by Movie! Plus";
    font-size: .78rem;
    font-weight: 700;
}

#sp-footer,
#sp-bottom {
    color: var(--mp-muted);
    background: var(--mp-black);
    border-top: 1px solid var(--mp-border);
}

#sp-footer a,
#sp-bottom a {
    color: var(--mp-gold-light);
}

@media (max-width: 767.98px) {
    body.com-kunena #sp-main-body {
        padding-top: 24px;
        padding-bottom: 32px;
    }

    #kunena.layout .breadcrumb {
        padding: .55rem .65rem;
        font-size: .78rem;
    }

    #kunena.layout .card-header,
    #kunena.layout .card-body,
    #kunena.layout .card-footer {
        padding-right: .7rem;
        padding-left: .7rem;
    }

    #kunena.layout .table td,
    #kunena.layout .table th {
        padding: .65rem .45rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.site *,
    body.site *::before,
    body.site *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
    }
}


/* El resumen comunitario pertenece únicamente al índice del foro. */
body.com-kunena:not(.view-category.layout-list) #kunena .mp-community {
    display: none !important;
}


/* Movie Plus: buscador siempre accesible en tablet y movil. */
@media (max-width: 991.98px) {
  #sp-header {
    height: auto !important;
    min-height: 118px;
    overflow: visible;
  }

  #sp-header #sp-menu .header-modules {
    position: absolute;
    top: 58px;
    right: 0;
    left: auto;
    display: flex !important;
    width: calc(100vw - 24px);
    margin: 0;
  }

  #sp-header #sp-menu .header-modules .sp-module,
  #sp-header #sp-menu .header-modules .sp-module-content,
  #sp-header #sp-menu .header-modules .mod-finder,
  #sp-header #sp-menu .header-modules .awesomplete {
    width: 100%;
  }

  #sp-header #mod-finder-searchword-header {
    width: 100%;
    min-height: 44px;
    padding: .65rem .85rem;
    border-radius: 4px;
  }
}


@media (max-width: 991.98px) {
  #sp-header #sp-menu .header-modules {
    gap: 8px;
  }

  #sp-header #sp-menu .header-modules > .sp-module:first-child {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
  }

  #sp-header #sp-menu .header-modules > .sp-module:has(.sp-sign-in) {
    display: flex;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    width: 44px;
    min-height: 44px;
  }
}



/* Movie Plus: experiencia movil compacta */
@media (max-width: 767.98px) {
  html,
  body.com-kunena {
    overflow-x: hidden;
  }

  body.com-kunena #sp-header {
    min-height: 108px !important;
  }

  body.com-kunena #sp-header .logo img {
    width: auto !important;
    max-width: 82px !important;
    max-height: 38px !important;
    object-fit: contain;
  }

  body.com-kunena #sp-header #sp-menu .header-modules {
    top: 52px !important;
    width: calc(100vw - 20px) !important;
  }

  body.com-kunena #sp-header #mod-finder-searchword-header {
    min-height: 46px;
    font-size: 16px;
  }

  body.com-kunena #sp-main-body {
    padding-top: 18px !important;
  }

  #kunena.layout,
  #kunena.layout .container,
  #kunena.layout .container-fluid {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  #kunena.layout .breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 5px;
    margin-bottom: 14px;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  #kunena.layout h1 {
    margin-bottom: 12px;
    font-size: 1.28rem !important;
    line-height: 1.25;
  }

  #kunena.layout .btn,
  #kunena.layout button,
  #kunena.layout select,
  #kunena.layout input[type="search"],
  #kunena.layout input[type="text"] {
    min-height: 44px;
  }

  #kunena.layout table:has(tbody.topic-list) {
    display: block;
    width: 100%;
    table-layout: fixed;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  #kunena.layout table:has(tbody.topic-list) > thead,
  #kunena.layout table:has(tbody.topic-list) > tfoot {
    display: none !important;
  }

  #kunena.layout tbody.topic-list {
    display: grid;
    width: 100%;
    gap: 10px;
  }

  #kunena.layout tbody.topic-list tr.category {
    position: relative;
    display: block;
    width: 100%;
    padding: 14px;
    border: 1px solid var(--borde) !important;
    border-left: 3px solid var(--rojo-principal) !important;
    background: var(--fondo-seccion) !important;
    transition: border-color 150ms ease, background-color 150ms ease;
  }

  #kunena.layout tbody.topic-list tr.category:active {
    border-left-color: var(--dorado-principal) !important;
    background: var(--fondo-control) !important;
  }

  #kunena.layout tbody.topic-list tr.category > th,
  #kunena.layout tbody.topic-list tr.category > td {
    display: none !important;
  }

  #kunena.layout tbody.topic-list tr.category > td:nth-child(2) {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
  }

  #kunena.layout tbody.topic-list tr.category > td.center:last-child {
    position: absolute;
    top: 12px;
    right: 10px;
    display: block !important;
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
  }

  #kunena.layout tbody.topic-list .topictitle {
    display: block;
    padding-right: 32px;
    color: var(--dorado-hover) !important;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.3;
    overflow-wrap: anywhere;
  }

  #kunena.layout tbody.topic-list .float-end {
    float: none !important;
  }

  #kunena.layout tbody.topic-list .started {
    margin-top: 8px;
    color: var(--texto-secundario) !important;
    font-size: .82rem;
    line-height: 1.45;
  }

  #kunena.layout tbody.topic-list .ktopic-category {
    display: inline-block;
    margin-bottom: 3px;
  }

  #kunena.layout tbody.topic-list #klastpostphone {
    margin-top: 10px;
    padding-top: 9px;
    border-top: 1px solid var(--borde);
    color: var(--texto-secundario);
    font-size: .8rem;
    line-height: 1.45;
  }

  #kunena.layout tbody.topic-list #klastpostphone a,
  #kunena.layout tbody.topic-list .started a {
    color: var(--rojo-usuario) !important;
    font-weight: 600;
  }

  #kunena.layout .pagination {
    flex-wrap: wrap;
    gap: 4px;
  }

  #kunena.layout .pagination .page-link {
    min-width: 42px;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  #kunena.layout .kmsg,
  #kunena.layout .kmsgtext,
  #kunena.layout .message-published {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  #kunena.layout .kmsgtext img,
  #kunena.layout .kmsgtext video,
  #kunena.layout .kmsgtext iframe,
  #kunena.layout .movieplus-tmdb-card img,
  #kunena.layout .movieplus-tmdb-card iframe {
    display: block;
    max-width: 100% !important;
    height: auto;
  }

  #kunena.layout .kmsgtext iframe,
  #kunena.layout .movieplus-tmdb-card iframe {
    width: 100% !important;
    aspect-ratio: 16 / 9;
    min-height: 0 !important;
  }

  #kunena.layout .dropdown-menu {
    max-width: calc(100vw - 24px);
    white-space: normal;
  }
}



/* Portada y ficha de TMDB a ancho completo en pantallas pequenas */
@media (max-width: 767.98px) {
  #kunena.layout .kmsg table:has(.kmsgimage),
  #kunena.layout .kmsg table:has(.kmsgimage) tbody,
  #kunena.layout .kmsg table:has(.kmsgimage) tr,
  #kunena.layout .kmsg table:has(.kmsgimage) td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  #kunena.layout .kmsg table:has(.kmsgimage) td {
    padding: 0 0 14px !important;
    border: 0 !important;
    overflow-wrap: anywhere;
    line-height: 1.55;
  }

  #kunena.layout .kmsg table:has(.kmsgimage) .kmsgimage {
    width: min(48vw, 180px);
    margin: 0 auto 8px;
  }

  #kunena.layout .kmsg table:has(.kmsgimage) .kmsgimage img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain;
  }
}
