/**
 * UserCP modules & plugins — tarjetas de personaje, formularios, tablas.
 */

.muvictus-ucp-module-inner {
    max-width: 920px;
    margin: 0 auto;
}

.muvictus-ucp-back {
    margin: 0 0 18px;
    font-size: 13px;
}

.muvictus-ucp-back a {
    color: #00d8ff;
    text-decoration: none;
}

.muvictus-ucp-back a:hover {
    color: #7fe7ff;
    text-shadow: 0 0 10px rgba(0, 216, 255, 0.3);
}

.muvictus-ucp-char-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.muvictus-ucp-char-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 18px 16px 16px;
    border: 1px solid rgba(0, 216, 255, 0.18);
    border-radius: 6px;
    background: rgba(4, 16, 28, 0.75);
    box-shadow: inset 0 0 24px rgba(0, 216, 255, 0.04);
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.muvictus-ucp-char-card:hover {
    border-color: rgba(0, 216, 255, 0.4);
    box-shadow: 0 0 20px rgba(0, 216, 255, 0.1);
    transform: translateY(-2px);
}

.muvictus-ucp-char-card__avatar {
    margin-bottom: 10px;
}

.muvictus-ucp-char-card__avatar img {
    display: block;
    max-width: 72px;
    height: auto;
}

.muvictus-ucp-char-card__name {
    margin-bottom: 10px;
    color: #00d8ff;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.muvictus-ucp-char-card__name a {
    color: inherit;
}

.muvictus-ucp-char-card__meta {
    width: 100%;
    margin-bottom: 12px;
    padding: 8px 10px;
    border-radius: 4px;
    background: rgba(0, 0, 0, 0.25);
    color: #b8d4e8;
    font-size: 12px;
    text-align: center;
}

.muvictus-ucp-char-card__meta strong {
    color: #f8c35c;
}

.muvictus-ucp-char-card__form {
    width: 100%;
    margin-top: auto;
}

.muvictus-ucp-char-card .button,
.muvictus-ucp-char-card .button-middle {
    width: 100%;
    max-width: 200px;
    margin: 0 auto;
    display: block;
}

.muvictus-ucp-form-panel {
    max-width: 520px;
    margin: 0 auto 20px;
    padding: 20px 18px;
    border: 1px solid rgba(0, 216, 255, 0.2);
    border-radius: 6px;
    background: rgba(4, 16, 28, 0.8);
}

.muvictus-ucp-form-panel .formGroup {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
    padding: 0;
    gap: 8px;
}

.muvictus-ucp-form-panel .muvictus-game-input,
.muvictus-ucp-form-panel .form-control {
    flex: 1;
    width: 100%;
    min-width: 0;
    height: 42px;
    padding: 0 12px;
    border: 1px solid rgba(0, 216, 255, 0.25);
    border-radius: 4px;
    background: rgba(2, 10, 22, 0.95);
    color: #e8f7ff;
}

.muvictus-ucp-form-panel label.control-label {
    display: block;
    margin-bottom: 6px;
    color: #c8e8f8;
    font-size: 12px;
    font-weight: 700;
}

.muvictus-ucp-form-panel .form-group {
    margin-bottom: 14px;
}

.muvictus-ucp-form-panel .form-group label {
    color: #c8e8f8;
}

.muvictus-ucp-form-panel .button-big {
    width: 100%;
    max-width: 280px;
    margin: 8px auto 0;
    display: block;
}

.muvictus-ucp-requirements {
    margin-top: 20px;
    padding: 16px 18px;
    border: 1px solid rgba(0, 216, 255, 0.15);
    border-radius: 6px;
    background: rgba(0, 20, 40, 0.5);
}

.muvictus-ucp-requirements__title {
    margin: 0 0 12px;
    color: #00d8ff;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.muvictus-ucp-requirements__title i {
    margin-right: 6px;
}

.muvictus-ucp-requirements ul {
    margin: 0;
    padding: 0 0 0 18px;
    color: #b8d4e8;
    font-size: 13px;
    line-height: 1.55;
}

.muvictus-ucp-requirements li {
    margin-bottom: 6px;
}

.muvictus-ucp-transfer-id {
    margin-bottom: 18px;
    padding: 14px;
    border: 1px solid rgba(248, 195, 92, 0.35);
    border-radius: 6px;
    background: rgba(40, 28, 8, 0.35);
    color: #f8e4b0;
    font-size: 13px;
    text-align: center;
}

.muvictus-ucp-transfer-id strong {
    display: block;
    margin-top: 6px;
    color: #00d8ff;
    font-size: 18px;
    letter-spacing: 0.08em;
}

.muvictus-ucp-module-inner .table.general-table-ui {
    width: 100%;
    margin-bottom: 16px;
    border-collapse: collapse;
}

.muvictus-ucp-module-inner .table.general-table-ui td {
    padding: 12px 10px;
    border-bottom: 1px solid rgba(0, 216, 255, 0.1);
    color: #dce8f5;
    vertical-align: middle;
}

.muvictus-ucp-module-inner .module-requirements {
    color: #8bb9d3;
    font-size: 13px;
}

.muvictus-ucp-module-inner .module-requirements p {
    margin: 0 0 8px;
}

/* Vote (página /vote/ y usercp/vote) */
.muvictus-vote-grid {
    margin-bottom: 8px;
}

.muvictus-vote-card__icon {
    margin-bottom: 8px;
    color: #00d8ff;
    font-size: 26px;
    line-height: 1;
    text-shadow: 0 0 14px rgba(0, 216, 255, 0.35);
}

.muvictus-vote-card .muvictus-ucp-char-card__form {
    width: 100%;
}

.muvictus-vote-card .button.button-middle {
    width: 100%;
}

.muvictus-vote-empty {
    grid-column: 1 / -1;
    margin: 0;
    padding: 28px 16px;
    text-align: center;
    color: #8bb9d3;
    font-size: 14px;
}

.muvictus-pages--vote .muvictus-vote-guest {
    padding: 28px 20px 24px;
    text-align: center;
}

.muvictus-pages--vote .muvictus-vote-guest p {
    margin: 0 0 16px;
    color: #b8d4e8;
    font-size: 14px;
}

.muvictus-pages--vote .muvictus-vote-guest .button-middle {
    min-width: 180px;
}

@media (max-width: 575px) {
    .muvictus-ucp-char-grid {
        grid-template-columns: 1fr;
    }
}
