/* Contenedores principales del flujo vendedor, mensajes de acceso y listado de cartas propias. */
.fortaleza-tcg-seller,
.fortaleza-tcg-shell,
.fortaleza-tcg-my-area {
    background:
        radial-gradient(circle at 18% 0%, rgba(35, 76, 112, 0.22), transparent 36%),
        radial-gradient(circle at 88% 16%, rgba(118, 38, 72, 0.22), transparent 32%),
        linear-gradient(180deg, #0b0f14 0%, #07090d 100%);
    border: 1px solid rgba(118, 89, 127, 0.28);
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.38);
    color: #f5f7fb;
    margin: 0 auto;
    max-width: none;
    padding: clamp(24px, 3vw, 44px);
    width: min(1240px, calc(100vw - 48px));
}

/* Espaciado de las paginas virtuales que renderiza el plugin sin pagina real de WordPress. */
.fortaleza-tcg-virtual-page {
    padding: clamp(28px, 5vw, 72px) 0 84px;
}

/* Centra el modulo cuando vive dentro del contenido normal de una pagina WordPress. */
.entry-content .fortaleza-tcg-seller,
.entry-content .fortaleza-tcg-shell,
.entry-content .fortaleza-tcg-my-area,
.entry-content .fortaleza-tcg-register {
    margin-left: 50%;
    transform: translateX(-50%);
}

/* Encabezado comun para registro y venta. */
.fortaleza-tcg-header h1 {
    color: #ffffff;
    font-size: clamp(34px, 4vw, 56px);
    line-height: 1.15;
    margin: 0 0 10px;
    text-shadow: 0 10px 30px rgba(0, 0, 0, 0.36);
}

.fortaleza-tcg-header p {
    color: #c9d6e5;
    font-size: 16px;
    margin: 0;
    max-width: 760px;
}

.fortaleza-tcg-seller .fortaleza-tcg-header {
    align-items: start;
    display: flex;
    gap: 16px;
    justify-content: space-between;
}

.fortaleza-tcg-dashboard-link {
    flex: 0 0 auto;
    margin-top: 10px;
}

/* Indicador de los tres pasos: elegir TCG, elegir carta y completar detalles. */
.fortaleza-tcg-steps {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    list-style: none;
    margin: 32px 0 24px;
    padding: 0;
}

.fortaleza-tcg-steps li {
    background: rgba(14, 18, 27, 0.78);
    border: 1px solid rgba(94, 108, 136, 0.34);
    border-bottom: 3px solid rgba(94, 108, 136, 0.46);
    border-radius: 12px;
    color: #93a4b8;
    font-weight: 900;
    padding: 14px 16px;
}

.fortaleza-tcg-steps li.is-active,
.fortaleza-tcg-steps li.is-done {
    border-color: #2e8ba4;
    color: #ffffff;
}

.fortaleza-tcg-steps li.is-active {
    background: linear-gradient(135deg, rgba(35, 76, 112, 0.34), rgba(118, 38, 72, 0.22));
}

/* Panel que contiene cada paso del flujo. */
.fortaleza-tcg-panel {
    background: rgba(9, 13, 19, 0.9);
    border: 1px solid rgba(94, 108, 136, 0.28);
    border-radius: 18px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
    padding: clamp(22px, 3vw, 36px);
}

.fortaleza-tcg-panel h2 {
    color: #ffffff;
    font-size: clamp(24px, 2.4vw, 34px);
    line-height: 1.15;
    margin: 0 0 22px;
}

/* Grilla de opciones de TCG. */
.fortaleza-tcg-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

/* Tarjetas clickeables: opciones de TCG y resultados de cartas. */
.fortaleza-tcg-option,
.fortaleza-tcg-card {
    background: linear-gradient(180deg, rgba(28, 36, 49, 0.9), rgba(13, 18, 27, 0.92));
    border: 1px solid rgba(94, 108, 136, 0.32);
    border-radius: 14px;
    color: #ffffff;
    cursor: pointer;
    text-align: left;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.fortaleza-tcg-option:hover,
.fortaleza-tcg-card:hover,
.fortaleza-tcg-option:focus-visible,
.fortaleza-tcg-card:focus-visible {
    border-color: rgba(126, 65, 95, 0.82);
    box-shadow: 0 18px 34px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(55, 97, 142, 0.2);
    outline: none;
    transform: translateY(-2px);
}

.fortaleza-tcg-option {
    display: grid;
    font-size: 17px;
    font-weight: 900;
    gap: 6px;
    min-height: 72px;
    padding: 20px;
}

.fortaleza-tcg-option span {
    color: #aab8c9;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.fortaleza-tcg-option.is-disabled {
    cursor: not-allowed;
    opacity: 0.56;
}

.fortaleza-tcg-option.is-disabled:hover {
    border-color: rgba(94, 108, 136, 0.32);
    box-shadow: none;
    transform: none;
}

/* Tarjetas de carta y sus imagenes dentro de los resultados de busqueda. */
.fortaleza-tcg-card {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
}

.fortaleza-tcg-card-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(auto-fill, minmax(150px, 190px));
    justify-content: start;
}

.fortaleza-tcg-card img,
.fortaleza-tcg-card__placeholder {
    aspect-ratio: 3 / 4.2;
    background: rgba(255, 255, 255, 0.07);
    border-radius: 10px;
    height: 218px;
    object-fit: contain;
    width: 100%;
}

.fortaleza-tcg-card strong {
    font-size: 14px;
    line-height: 1.25;
}

/* Textos auxiliares y precios destacados. */
.fortaleza-tcg-muted {
    color: #aab8c9;
    font-size: 13px;
}

.fortaleza-tcg-price {
    color: #79d783;
    font-weight: 800;
}

/* Buscador de carta dentro del segundo paso. */
.fortaleza-tcg-search {
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-bottom: 20px;
}

/* Campos base usados por registro y publicacion de carta. */
.fortaleza-tcg-field {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.fortaleza-tcg-field label {
    color: #f4f7fb;
    font-weight: 700;
}

.fortaleza-tcg-field input,
.fortaleza-tcg-field select,
.fortaleza-tcg-field textarea {
    background: #ffffff;
    border: 1px solid rgba(207, 216, 227, 0.82);
    border-radius: 12px;
    color: #111820;
    min-height: 50px;
    padding: 12px 14px;
}

.fortaleza-tcg-search input[type="search"] {
    background: #ffffff;
    border: 1px solid rgba(207, 216, 227, 0.82);
    border-radius: 999px;
    color: #111820;
    min-height: 52px;
    padding: 0 20px;
}

/* Botones principales y secundarios del flujo. */
.fortaleza-tcg-button {
    align-items: center;
    background: linear-gradient(135deg, #7c294b, #244a70);
    border: 1px solid rgba(107, 143, 194, 0.42);
    border-radius: 999px;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.24);
    color: #ffffff;
    cursor: pointer;
    display: inline-flex;
    font-weight: 900;
    justify-content: center;
    min-height: 50px;
    padding: 0 22px;
    text-decoration: none;
}

.fortaleza-tcg-button.is-secondary {
    background: #111d2b;
    box-shadow: none;
}

/* Layout del paso de detalles: carta elegida, formulario y calculadora. */
.fortaleza-tcg-details {
    display: grid;
    gap: 24px;
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr) minmax(220px, 300px);
}

/* Paneles laterales para resumen de carta y calculadora. */
.fortaleza-tcg-selected-card,
.fortaleza-tcg-costs {
    background: rgba(28, 36, 49, 0.78);
    border: 1px solid rgba(94, 108, 136, 0.34);
    border-radius: 16px;
    color: #ffffff;
    padding: 18px;
}

.fortaleza-tcg-selected-card img,
.fortaleza-tcg-card__image {
    border-radius: 12px;
    display: block;
    max-width: 100%;
}

.fortaleza-tcg-selected-card h3,
.fortaleza-tcg-costs h3 {
    color: #ffffff;
}

.fortaleza-tcg-costs dl {
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr auto;
    margin: 0;
}

.fortaleza-tcg-costs dt,
.fortaleza-tcg-costs dd {
    margin: 0;
}

.fortaleza-tcg-costs .is-total {
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    font-weight: 900;
    padding-top: 10px;
}

.fortaleza-tcg-costs dd:not(.is-total) {
    color: #dfe8f5;
}

.fortaleza-tcg-costs dd:nth-of-type(2),
.fortaleza-tcg-costs dd:nth-of-type(3) {
    color: #f1b7c4;
}

.fortaleza-tcg-costs dd.is-total {
    color: #7ddf88;
}

/* Formulario de publicacion de la carta. */
.fortaleza-tcg-form {
    display: grid;
    gap: 16px;
}

.fortaleza-tcg-form-row {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Selector de foto real: el input nativo queda invisible y se muestra un control estilizado. */
.fortaleza-tcg-file {
    align-items: center;
    background: #ffffff;
    border: 1px solid rgba(207, 216, 227, 0.82);
    border-radius: 12px;
    color: #111820;
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr);
    min-height: 52px;
    overflow: hidden;
    padding: 7px;
    position: relative;
}

.fortaleza-tcg-file input[type="file"] {
    cursor: pointer;
    inset: 0;
    opacity: 0;
    position: absolute;
    width: 100%;
}

.fortaleza-tcg-file span {
    background: linear-gradient(135deg, #7c294b, #244a70);
    border-radius: 999px;
    color: #ffffff;
    font-weight: 900;
    padding: 9px 14px;
    position: relative;
    z-index: 1;
}

.fortaleza-tcg-file small {
    color: #516078;
    overflow: hidden;
    position: relative;
    text-overflow: ellipsis;
    white-space: nowrap;
    z-index: 1;
}

/* Mensajes de estado, error y exito para busquedas, registro y publicacion. */
.fortaleza-tcg-message {
    border-radius: 7px;
    font-weight: 700;
    padding: 12px 14px;
}

.fortaleza-tcg-message.is-error {
    background: #ffe6e6;
    color: #9f1d1d;
}

.fortaleza-tcg-message.is-success {
    background: #e6f8eb;
    color: #136b31;
}

/* Fila individual en la pantalla "Mis cartas TCG". */
.fortaleza-tcg-my-card {
    align-items: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(180px, 1fr) auto minmax(360px, 1.4fr);
    padding: 12px 0;
}

.fortaleza-tcg-my-card > div:first-child {
    display: grid;
    gap: 4px;
}

.fortaleza-tcg-my-card a {
    color: #8bb9ff;
    font-weight: 800;
}

.fortaleza-tcg-my-card > a {
    align-items: center;
    background: rgba(18, 33, 55, 0.86);
    border: 1px solid rgba(139, 185, 255, 0.34);
    border-radius: 999px;
    color: #dcebff;
    display: inline-flex;
    justify-content: center;
    min-height: 36px;
    padding: 0 16px;
    text-decoration: none;
}

.fortaleza-tcg-my-card > a:hover {
    background: rgba(39, 91, 142, 0.42);
    border-color: rgba(139, 185, 255, 0.62);
}

.fortaleza-tcg-my-area {
    display: grid;
    gap: 28px;
}

.fortaleza-tcg-my-section {
    display: grid;
    gap: 16px;
}

.fortaleza-tcg-my-section h2 {
    color: #ffffff;
    font-size: 24px;
    line-height: 1.2;
    margin: 0;
}

.fortaleza-tcg-dashboard {
    display: grid;
    gap: 20px;
}

.fortaleza-tcg-month-filter,
.fortaleza-tcg-period-filter {
    align-items: center;
    background: rgba(8, 13, 22, 0.54);
    border: 1px solid rgba(119, 135, 170, 0.26);
    border-radius: 8px;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(150px, 1fr)) auto auto;
    justify-content: flex-start;
    padding: 8px;
    width: min(100%, 720px);
}

.fortaleza-tcg-month-filter label,
.fortaleza-tcg-period-filter label,
.fortaleza-tcg-balance-withdrawal label {
    color: #f4f7fb;
    font-weight: 800;
}

.fortaleza-tcg-period-field {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.fortaleza-tcg-period-field label {
    color: #aab8c9;
    font-size: 12px;
}

.fortaleza-tcg-month-filter input,
.fortaleza-tcg-period-filter input,
.fortaleza-tcg-balance-withdrawal textarea {
    background: rgba(13, 19, 30, 0.92);
    border: 1px solid rgba(139, 185, 255, 0.34);
    border-radius: 8px;
    color: #eaf2ff;
    min-height: 38px;
    padding: 7px 11px;
    width: 100%;
}

.fortaleza-tcg-period-filter input {
    min-width: 0;
}

.fortaleza-tcg-button.is-compact {
    align-self: end;
    min-height: 38px;
    padding: 0 16px;
}

.fortaleza-tcg-secondary-link {
    align-self: end;
    color: #8bb9ff;
    font-weight: 800;
    padding: 9px 4px;
}

.fortaleza-tcg-dashboard__cards {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(8, minmax(0, 1fr));
}

.fortaleza-tcg-dashboard__card {
    background:
        linear-gradient(145deg, rgba(29, 38, 51, 0.96), rgba(13, 17, 24, 0.98));
    border: 1px solid rgba(119, 135, 170, 0.32);
    border-radius: 8px;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.05);
    display: grid;
    gap: 6px;
    min-width: 0;
    min-height: 104px;
    padding: 13px;
}

.fortaleza-tcg-dashboard__card.is-primary {
    background: linear-gradient(135deg, rgba(43, 102, 90, 0.92), rgba(22, 58, 75, 0.92));
    border-color: rgba(46, 139, 164, 0.7);
}

.fortaleza-tcg-dashboard__card span,
.fortaleza-tcg-dashboard__card small,
.fortaleza-tcg-balance-withdrawal p {
    color: #aab8c9;
    overflow-wrap: anywhere;
}

.fortaleza-tcg-dashboard__card strong {
    color: #ffffff;
    font-size: clamp(17px, 1.28vw, 21px);
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.fortaleza-tcg-dashboard__insights {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.fortaleza-tcg-dashboard__tools {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.fortaleza-tcg-dashboard__panel {
    background:
        linear-gradient(180deg, rgba(16, 22, 32, 0.92), rgba(10, 14, 21, 0.92));
    border: 1px solid rgba(119, 135, 170, 0.3);
    border-radius: 8px;
    box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.04);
    display: grid;
    gap: 14px;
    min-height: 190px;
    padding: 16px;
}

.fortaleza-tcg-dashboard__panel.is-wide {
    grid-column: span 2;
}

.fortaleza-tcg-dashboard__panel-header {
    align-items: start;
    display: flex;
    gap: 14px;
    justify-content: space-between;
}

.fortaleza-tcg-dashboard__panel-header span {
    color: #8fa0b4;
    display: block;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.12em;
    line-height: 1.2;
    text-transform: uppercase;
}

.fortaleza-tcg-dashboard__panel-header h2 {
    color: #ffffff;
    font-size: 18px;
    line-height: 1.2;
    margin: 4px 0 0;
}

.fortaleza-tcg-dashboard__panel-header strong {
    color: #7ddf88;
    font-size: 16px;
    white-space: nowrap;
}

.fortaleza-tcg-sales-chart {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(8, minmax(34px, 1fr));
    min-height: 190px;
    padding-top: 18px;
}

.fortaleza-tcg-sales-chart__bar {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-rows: 22px 126px auto;
    min-width: 0;
}

.fortaleza-tcg-sales-chart__bar span {
    color: #dfe8f5;
    font-size: 11px;
    font-weight: 800;
    min-height: 22px;
    overflow: hidden;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
}

.fortaleza-tcg-sales-chart__bar i {
    align-self: end;
    background: linear-gradient(180deg, #28a6ff, #7ddf88);
    border-radius: 8px 8px 2px 2px;
    box-shadow: 0 10px 28px rgba(40, 166, 255, 0.2);
    display: block;
    height: var(--bar-height);
    min-height: 8px;
    width: 100%;
}

.fortaleza-tcg-sales-chart__bar small {
    color: #9ba9bb;
    font-size: 11px;
    line-height: 1.2;
    text-align: center;
}

.fortaleza-tcg-status-stack {
    background: rgba(255, 255, 255, 0.08);
    border-radius: 999px;
    display: flex;
    height: 14px;
    overflow: hidden;
}

.fortaleza-tcg-status-stack span {
    display: block;
    min-width: 0;
}

.fortaleza-tcg-status-stack .is-pending {
    background: #f5b84b;
}

.fortaleza-tcg-status-stack .is-transit {
    background: #28a6ff;
}

.fortaleza-tcg-status-stack .is-completed {
    background: #7ddf88;
}

.fortaleza-tcg-dashboard__list {
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin: 0;
}

.fortaleza-tcg-dashboard__list dt,
.fortaleza-tcg-dashboard__list dd {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    margin: 0;
    padding-bottom: 8px;
}

.fortaleza-tcg-dashboard__list dt {
    color: #aab8c9;
}

.fortaleza-tcg-dashboard__list dd {
    color: #ffffff;
    font-weight: 900;
    text-align: right;
}

.fortaleza-tcg-top-products {
    display: grid;
    gap: 10px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.fortaleza-tcg-top-products li {
    display: grid;
    gap: 3px;
    grid-template-columns: minmax(0, 1fr) auto;
}

.fortaleza-tcg-top-products span {
    color: #ffffff;
    font-weight: 800;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fortaleza-tcg-top-products strong {
    color: #7ddf88;
    font-size: 13px;
}

.fortaleza-tcg-top-products small {
    color: #aab8c9;
    grid-column: 1 / -1;
}

.fortaleza-tcg-funnel {
    display: grid;
    gap: 12px;
}

.fortaleza-tcg-funnel div {
    background: rgba(255, 255, 255, 0.06);
    border-radius: 8px;
    display: grid;
    gap: 4px;
    overflow: hidden;
    padding: 10px;
    position: relative;
}

.fortaleza-tcg-funnel div span {
    background: linear-gradient(90deg, rgba(40, 166, 255, 0.38), rgba(125, 223, 136, 0.38));
    bottom: 0;
    left: 0;
    position: absolute;
    top: 0;
    z-index: 0;
}

.fortaleza-tcg-funnel strong,
.fortaleza-tcg-funnel small {
    position: relative;
    z-index: 1;
}

.fortaleza-tcg-funnel strong {
    color: #ffffff;
    font-size: 20px;
}

.fortaleza-tcg-funnel small {
    color: #dfe8f5;
}

.fortaleza-tcg-mini-bars {
    align-items: end;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    min-height: 140px;
}

.fortaleza-tcg-mini-bars div {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-rows: 100px auto;
}

.fortaleza-tcg-mini-bars span {
    align-self: end;
    background: linear-gradient(180deg, #9f7cff, #28a6ff);
    border-radius: 999px 999px 3px 3px;
    display: block;
    height: var(--bar-height);
    min-height: 10px;
    width: 100%;
}

.fortaleza-tcg-mini-bars small {
    color: #aab8c9;
    font-size: 11px;
    text-align: center;
}

.fortaleza-tcg-alert-list {
    display: grid;
    gap: 10px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.fortaleza-tcg-alert-list li {
    border-left: 3px solid #28a6ff;
    background: rgba(255, 255, 255, 0.07);
    border-radius: 8px;
    display: grid;
    gap: 4px;
    padding: 11px 12px;
}

.fortaleza-tcg-alert-list li.is-money {
    border-left-color: #7ddf88;
}

.fortaleza-tcg-alert-list li.is-shipping,
.fortaleza-tcg-alert-list li.is-conversion {
    border-left-color: #f5b84b;
}

.fortaleza-tcg-alert-list li.is-listing {
    border-left-color: #9f7cff;
}

.fortaleza-tcg-alert-list strong {
    color: #ffffff;
}

.fortaleza-tcg-alert-list span {
    color: #aab8c9;
    font-size: 13px;
}

.fortaleza-tcg-listing-insights {
    display: grid;
    gap: 10px;
}

.fortaleza-tcg-listing-insights article {
    background: rgba(255, 255, 255, 0.065);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1.2fr) minmax(220px, 0.8fr);
    padding: 12px;
}

.fortaleza-tcg-listing-insights a {
    color: #ffffff;
    text-decoration: none;
}

.fortaleza-tcg-listing-insights strong,
.fortaleza-tcg-listing-insights small {
    display: block;
}

.fortaleza-tcg-listing-insights strong {
    line-height: 1.25;
    margin-bottom: 4px;
}

.fortaleza-tcg-listing-insights small,
.fortaleza-tcg-listing-insights p {
    color: #aab8c9;
    margin: 0;
}

.fortaleza-tcg-listing-insights dl {
    display: grid;
    gap: 6px;
    grid-template-columns: auto 1fr;
    margin: 0;
}

.fortaleza-tcg-listing-insights dt,
.fortaleza-tcg-listing-insights dd {
    margin: 0;
}

.fortaleza-tcg-listing-insights dt {
    color: #8fa0b4;
}

.fortaleza-tcg-listing-insights dd {
    color: #ffffff;
    font-weight: 800;
    text-align: right;
}

.fortaleza-tcg-listing-insights p {
    background: rgba(245, 184, 75, 0.1);
    border: 1px solid rgba(245, 184, 75, 0.2);
    border-radius: 999px;
    color: #f7d291;
    font-size: 12px;
    font-weight: 800;
    grid-column: 1 / -1;
    padding: 7px 10px;
}

.fortaleza-tcg-contact-list {
    display: grid;
    gap: 10px;
}

.fortaleza-tcg-contact-list article {
    background: rgba(255, 255, 255, 0.065);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 8px;
    display: grid;
    gap: 6px;
    padding: 12px;
}

.fortaleza-tcg-contact-list strong {
    color: #ffffff;
}

.fortaleza-tcg-contact-list small {
    color: #aab8c9;
}

.fortaleza-tcg-contact-list div {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fortaleza-tcg-contact-list a {
    background: rgba(139, 185, 255, 0.12);
    border: 1px solid rgba(139, 185, 255, 0.26);
    border-radius: 999px;
    color: #cfe2ff;
    font-size: 12px;
    font-weight: 900;
    padding: 6px 10px;
    text-decoration: none;
}

.fortaleza-tcg-export-form {
    display: flex;
    justify-content: flex-start;
}

.fortaleza-tcg-vacation-panel {
    align-items: center;
    background:
        linear-gradient(135deg, rgba(159, 124, 255, 0.12), rgba(40, 166, 255, 0.08));
    border: 1px solid rgba(159, 124, 255, 0.26);
    border-radius: 8px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: space-between;
    padding: 16px;
}

.fortaleza-tcg-vacation-panel h2 {
    color: #ffffff;
    font-size: 20px;
    margin: 0 0 4px;
}

.fortaleza-tcg-vacation-panel p {
    color: #aab8c9;
    margin: 0;
}

.fortaleza-tcg-listing-tools {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.fortaleza-tcg-listing-tools > form:first-child,
.fortaleza-tcg-listing-tools > form:nth-child(2) {
    display: inline-flex;
}

.fortaleza-tcg-quick-edit {
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    display: grid;
    flex-basis: 100%;
    gap: 6px;
    grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
    padding: 8px;
}

.fortaleza-tcg-quick-edit label {
    color: #aab8c9;
    display: grid;
    font-size: 12px;
    font-weight: 800;
    gap: 3px;
}

.fortaleza-tcg-quick-edit input,
.fortaleza-tcg-proof-form input,
.fortaleza-tcg-order-message-form textarea {
    background: #ffffff;
    border: 1px solid rgba(207, 216, 227, 0.82);
    border-radius: 8px;
    color: #111820;
    min-height: 34px;
    padding: 6px 9px;
    width: 100%;
}

.fortaleza-tcg-proof-form input,
.fortaleza-tcg-proof-form textarea,
.fortaleza-tcg-order-message-form textarea {
    font-size: 13px;
}

.fortaleza-tcg-quick-edit button {
    align-self: end;
}

.fortaleza-tcg-order-message-form {
    display: grid;
    gap: 7px;
    margin-top: 10px;
    min-width: 220px;
}

.fortaleza-tcg-order-message-form label {
    color: #aab8c9;
    font-size: 12px;
    font-weight: 800;
}

.fortaleza-tcg-product-seller__badges {
    display: flex !important;
    flex-wrap: wrap;
    gap: 6px;
}

.fortaleza-tcg-product-seller__badges em {
    background: rgba(125, 223, 136, 0.12);
    border: 1px solid rgba(125, 223, 136, 0.28);
    border-radius: 999px;
    color: #d9ffe0;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
    padding: 5px 8px;
}

.fortaleza-tcg-balance-withdrawal {
    background: rgba(9, 13, 19, 0.78);
    border: 1px solid rgba(94, 108, 136, 0.28);
    border-radius: 8px;
    display: grid;
    gap: 12px;
    max-width: 760px;
    padding: 16px;
}

.fortaleza-tcg-balance-withdrawal h2 {
    color: #ffffff;
    font-size: 20px;
    margin: 0 0 4px;
}

.fortaleza-tcg-balance-withdrawal p {
    margin: 0;
}

.fortaleza-tcg-balance-withdrawal textarea {
    min-height: 86px;
    resize: vertical;
}

.fortaleza-tcg-button:disabled,
.fortaleza-tcg-button[disabled] {
    cursor: not-allowed;
    opacity: 0.55;
}

.fortaleza-tcg-sale-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.fortaleza-tcg-sale-filters a {
    align-items: center;
    background: rgba(14, 18, 27, 0.78);
    border: 1px solid rgba(94, 108, 136, 0.42);
    border-radius: 8px;
    color: #f5f7fb;
    display: inline-flex;
    font-weight: 900;
    gap: 8px;
    min-height: 40px;
    padding: 0 12px;
    text-decoration: none;
}

.fortaleza-tcg-sale-filters a.is-active {
    border-color: rgba(46, 139, 164, 0.78);
}

.fortaleza-tcg-sale-filters span {
    color: #aab8c9;
    font-size: 12px;
}

.fortaleza-tcg-table-wrap {
    overflow-x: auto;
}

.fortaleza-tcg-seller-sales {
    border-collapse: collapse;
    color: #f5f7fb;
    min-width: 980px;
    width: 100%;
}

.fortaleza-tcg-seller-sales th,
.fortaleza-tcg-seller-sales td {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    padding: 12px;
    text-align: left;
    vertical-align: top;
}

.fortaleza-tcg-seller-sales th {
    color: #ffffff;
    font-size: 12px;
    text-transform: uppercase;
}

.fortaleza-tcg-seller-sales small,
.fortaleza-tcg-seller-sales label {
    color: #aab8c9;
}

.fortaleza-tcg-seller-sales a {
    color: #8bb9ff;
}

.fortaleza-tcg-proof-form {
    display: grid;
    gap: 8px;
    margin-top: 10px;
    min-width: 240px;
}

.fortaleza-tcg-proof-form input,
.fortaleza-tcg-proof-form textarea {
    background: #ffffff;
    border: 1px solid rgba(207, 216, 227, 0.82);
    border-radius: 10px;
    color: #111820;
    font-size: 13px;
    padding: 8px 10px;
    width: 100%;
}

.fortaleza-tcg-proof-form textarea {
    min-height: 64px;
    resize: vertical;
}

/* Caja que aparece en la ficha del producto indicando que es venta de jugador. */
.fortaleza-tcg-product-seller {
    background: #101820;
    border-left: 4px solid #2e8ba4;
    color: #ffffff;
    display: grid;
    gap: 4px;
    margin: 18px 0;
    padding: 14px 16px;
}

.fortaleza-tcg-product-seller strong {
    color: #ffffff;
    font-size: 16px;
}

.fortaleza-tcg-product-seller span {
    color: #d7e1ea;
}

/* Panel protegido para que el admin gestione pagos vendedores desde el sitio. */
.fortaleza-tcg-payouts {
    background:
        radial-gradient(circle at 18% 0%, rgba(35, 76, 112, 0.16), transparent 36%),
        radial-gradient(circle at 88% 16%, rgba(118, 38, 72, 0.18), transparent 32%),
        linear-gradient(180deg, #0b0f14 0%, #07090d 100%);
    border: 1px solid rgba(118, 89, 127, 0.28);
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.38);
    color: #f5f7fb;
    margin: 0 auto;
    max-width: none;
    padding: clamp(24px, 3vw, 44px);
    width: min(1240px, calc(100vw - 48px));
}

.fortaleza-tcg-payouts h1 {
    color: #ffffff;
    font-size: clamp(30px, 3vw, 46px);
    line-height: 1.15;
    margin: 0 0 10px;
}

.fortaleza-tcg-payouts p {
    color: #c9d6e5;
}

.fortaleza-tcg-payouts__summary {
    max-width: none !important;
}

.fortaleza-tcg-payouts__stat {
    background: rgba(28, 36, 49, 0.9) !important;
    border: 1px solid rgba(94, 108, 136, 0.34) !important;
    border-radius: 10px !important;
    color: #ffffff;
}

.fortaleza-tcg-payouts__stat p:last-child {
    color: #7ddf88;
    font-weight: 900;
}

.fortaleza-tcg-payouts__filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    margin: 22px 0 14px;
    padding: 0;
}

.fortaleza-tcg-payouts__filters li {
    margin: 0;
}

.fortaleza-tcg-payouts__filters a {
    background: rgba(17, 29, 43, 0.9);
    border: 1px solid rgba(94, 108, 136, 0.34);
    border-radius: 999px;
    color: #dfe8f5;
    display: inline-flex;
    font-weight: 800;
    padding: 8px 13px;
    text-decoration: none;
}

.fortaleza-tcg-payouts__filters a.current {
    background: linear-gradient(135deg, #7c294b, #244a70);
    color: #ffffff;
}

.fortaleza-tcg-payouts__table {
    border-collapse: collapse;
    color: #f5f7fb;
    min-width: 1080px;
    width: 100%;
}

.fortaleza-tcg-payouts__table th,
.fortaleza-tcg-payouts__table td {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    padding: 12px;
    text-align: left;
    vertical-align: middle;
}

.fortaleza-tcg-payouts__table th {
    color: #ffffff;
    font-size: 13px;
    text-transform: uppercase;
}

.fortaleza-tcg-payouts__table a {
    color: #8bb9ff;
}

.fortaleza-tcg-payouts__table small {
    color: #aab8c9;
}

.fortaleza-tcg-payouts__table .button {
    background: linear-gradient(135deg, #7c294b, #244a70);
    border: 1px solid rgba(107, 143, 194, 0.42);
    border-radius: 999px;
    color: #ffffff;
    cursor: pointer;
    font-weight: 900;
    min-height: 38px;
    padding: 0 14px;
}

.fortaleza-tcg-payouts .fortaleza-tcg-payouts__table {
    display: block;
    overflow-x: auto;
}

/* Acceso admin a pagos desde la pagina Mi cuenta. */
.fortaleza-tcg-account-links {
    display: grid;
    gap: 12px;
    margin-top: 12px;
    max-width: 268px;
}

.fortaleza-tcg-account-link-item {
    list-style: none;
    margin-top: 12px;
}

.fortaleza-tcg-account-links a {
    align-items: center;
    background: rgba(18, 23, 32, 0.96);
    border: 1px solid rgba(94, 108, 136, 0.58);
    border-radius: 999px;
    color: #ffffff;
    display: flex;
    font-weight: 900;
    min-height: 44px;
    padding: 0 17px;
    text-decoration: none;
    width: 100%;
}

.fortaleza-tcg-account-links a:hover,
.fortaleza-tcg-account-links a:focus {
    border-color: rgba(126, 65, 95, 0.82);
    color: #ffffff;
}

/* Pantalla de registro o actualizacion del perfil vendedor. */
.fortaleza-tcg-register {
    background:
        radial-gradient(circle at 18% 0%, rgba(35, 76, 112, 0.16), transparent 36%),
        radial-gradient(circle at 88% 16%, rgba(118, 38, 72, 0.18), transparent 32%),
        linear-gradient(180deg, #0b0f14 0%, #07090d 100%);
    border: 1px solid rgba(118, 89, 127, 0.28);
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.38);
    color: #f5f7fb;
    margin: 0 auto;
    max-width: none;
    padding: clamp(24px, 3vw, 44px);
    width: min(1180px, calc(100vw - 48px));
}

.fortaleza-tcg-register__panel {
    background: rgba(12, 18, 26, 0.84);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 18px;
    display: grid;
    gap: 22px;
    padding: clamp(22px, 3vw, 36px);
}

.fortaleza-tcg-register__grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fortaleza-tcg-register__full {
    grid-column: 1 / -1;
}

/* Ajuste para tablets: la calculadora baja debajo del formulario cuando no cabe en 3 columnas. */
@media (max-width: 1160px) {
    .fortaleza-tcg-details {
        grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
    }

    .fortaleza-tcg-costs {
        grid-column: 1 / -1;
    }

    .fortaleza-tcg-dashboard__insights {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fortaleza-tcg-dashboard__tools {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fortaleza-tcg-dashboard__cards {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .fortaleza-tcg-quick-edit {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Ajuste movil: todo pasa a una columna y se reduce el ancho/padding del modulo. */
@media (max-width: 860px) {
    .fortaleza-tcg-seller,
    .fortaleza-tcg-shell,
    .fortaleza-tcg-my-area,
    .fortaleza-tcg-register {
        padding: 18px;
        width: min(100% - 24px, 100vw - 24px);
    }

    .fortaleza-tcg-seller .fortaleza-tcg-header {
        align-items: start;
        flex-direction: column;
        gap: 12px;
    }

    .fortaleza-tcg-dashboard-link {
        margin-top: 0;
    }

    .fortaleza-tcg-details,
    .fortaleza-tcg-form-row,
    .fortaleza-tcg-search,
    .fortaleza-tcg-register__grid,
    .fortaleza-tcg-dashboard__insights,
    .fortaleza-tcg-dashboard__tools,
    .fortaleza-tcg-listing-insights article {
        grid-template-columns: 1fr;
    }

    .fortaleza-tcg-dashboard__panel.is-wide {
        grid-column: auto;
    }

    .fortaleza-tcg-dashboard__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fortaleza-tcg-dashboard__card {
        min-height: 96px;
        padding: 12px;
    }

    .fortaleza-tcg-dashboard__card strong {
        font-size: 17px;
    }

    .fortaleza-tcg-dashboard__panel {
        gap: 12px;
        min-height: 0;
        padding: 14px;
    }

    .fortaleza-tcg-dashboard__panel-header h2 {
        font-size: 16px;
    }

    .fortaleza-tcg-sales-chart {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        min-height: 160px;
    }

    .fortaleza-tcg-sales-chart__bar {
        grid-template-rows: 20px 96px auto;
    }

    .fortaleza-tcg-steps {
        grid-template-columns: 1fr;
    }

    .fortaleza-tcg-my-card {
        grid-template-columns: 1fr;
    }

    .fortaleza-tcg-quick-edit {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fortaleza-tcg-quick-edit label:nth-of-type(4),
    .fortaleza-tcg-quick-edit button {
        grid-column: 1 / -1;
    }
}

@media (max-width: 620px) {
    .fortaleza-tcg-period-filter {
        gap: 8px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .fortaleza-tcg-period-filter .fortaleza-tcg-button {
        grid-column: 1 / -1;
        width: 100%;
    }

    .fortaleza-tcg-period-filter .fortaleza-tcg-secondary-link {
        grid-column: 1 / -1;
        justify-self: center;
        padding: 2px 0;
    }
}

@media (max-width: 520px) {
    .fortaleza-tcg-dashboard__cards {
        gap: 9px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 360px) {
    .fortaleza-tcg-dashboard__cards {
        grid-template-columns: 1fr;
    }

    .fortaleza-tcg-quick-edit {
        grid-template-columns: 1fr;
    }

}
