/* RESET E ESTILOS GERAIS */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Montserrat', sans-serif;
        }

        body {
            background-color: #050b09;
            background-image:
                radial-gradient(circle at 50% 30%, rgba(20, 45, 35, 0.6) 0%, rgba(5, 11, 9, 0.95) 80%),
                linear-gradient(to bottom, rgba(5, 11, 9, 0.8), #050b09);
            color: #e0e0e0;
            min-height: 100vh;
            display: flex;
            justify-content: center;
            align-items: flex-start;
            padding: 20px 10px 60px 10px;
            position: relative;
        }

        .app-container {
            width: 100%;
            max-width: 440px;
            display: flex;
            flex-direction: column;
            align-items: stretch;
            padding: 10px;
        }

        /* LOGO BDA NO TOPO */
        .top-logo-header {
            width: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            padding-bottom: 20px;
        }

        .top-logo-img {
            max-width: 180px;
            height: auto;
            filter: drop-shadow(0px 4px 10px rgba(229, 57, 53, 0.4));
        }

        /* BOTÃO DE CRÉDITOS */
        .btn-creditos {
            position: absolute;
            top: 15px;
            right: 15px;
            background: rgba(13, 26, 21, 0.8);
            border: 1px solid #173a63;
            color: #79aee8;
            padding: 6px 12px;
            border-radius: 6px;
            font-size: 0.7rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 1px;
            cursor: pointer;
            transition: all 0.2s;
            z-index: 100;
        }

        .btn-creditos:hover {
            background: #173a63;
            color: #ffffff;
            border-color: #e53935;
        }

        /* TELA INITIAL */
        .subtitle {
            font-size: 0.85rem;
            font-weight: 700;
            letter-spacing: 2px;
            color: #79aee8;
            margin-bottom: 15px;
            text-transform: uppercase;
        }

        .logo-title {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 7.5rem;
            line-height: 0.85;
            letter-spacing: -2px;
            background: linear-gradient(180deg, #5aa7ff 0%, #ffffff 40%, #e53935 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            filter: drop-shadow(0px 4px 15px rgba(229, 57, 53, 0.25));
        }

        .tagline {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 2.2rem;
            line-height: 0.95;
            color: #ffffff;
            margin-top: 15px;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        .description {
            font-size: 0.95rem;
            line-height: 1.5;
            color: #9fb5cc;
            margin-bottom: 20px;
        }

        .support-link-box {
            font-size: 0.85rem;
            color: #79aee8;
            font-weight: 600;
            margin-bottom: 30px;
        }

        .support-link-box a {
            color: #e53935;
            font-weight: 800;
            text-decoration: none;
            transition: color 0.2s;
        }

        .support-link-box a:hover {
            color: #5aa7ff;
            text-decoration: underline;
        }

        /* REDES SOCIAIS */
        .social-container {
            margin-top: 25px;
            display: flex;
            flex-direction: column;
            gap: 8px;
            font-size: 0.85rem;
            color: #79aee8;
            font-weight: 600;
        }

        .social-title {
            font-size: 0.8rem;
            text-transform: uppercase;
            letter-spacing: 1px;
            color: #9fb5cc;
        }

        .social-links {
            display: flex;
            align-items: center;
            gap: 15px;
            flex-wrap: wrap;
        }

        .social-item {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            text-decoration: none;
            font-weight: 800;
            font-size: 0.9rem;
            line-height: 1;
            transition: opacity 0.2s;
        }

        .social-item:hover {
            opacity: 0.8;
        }

        .social-icon {
            width: 18px;
            height: 18px;
            object-fit: contain;
            vertical-align: middle;
        }

        .link-insta {
            color: #e1306c;
        }

        .link-x {
            color: #ffffff;
        }

        .btn-primary {
            width: 100%;
            background: linear-gradient(135deg, #e53935 0%, #d44d0d 100%);
            color: #ffffff;
            border: none;
            padding: 18px 24px;
            border-radius: 8px;
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.8rem;
            letter-spacing: 1.5px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            cursor: pointer;
            box-shadow: 0 8px 20px rgba(229, 57, 53, 0.35);
            transition: all 0.2s;
        }

        .btn-primary:hover {
            transform: translateY(-2px);
            box-shadow: 0 12px 25px rgba(229, 57, 53, 0.5);
        }

        .btn-secondary {
            width: 100%;
            background: transparent;
            border: 2px solid #173a63;
            color: #9fb5cc;
            padding: 14px 20px;
            border-radius: 8px;
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.5rem;
            letter-spacing: 1px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            cursor: pointer;
            transition: all 0.2s;
        }

        .btn-secondary:hover {
            background: #142a22;
            color: #ffffff;
            border-color: #79aee8;
        }

        /* POP-UP / MODAL */
        .modal-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            background: rgba(0, 0, 0, 0.85);
            backdrop-filter: blur(5px);
            display: flex;
            justify-content: center;
            align-items: center;
            z-index: 9999;
            padding: 15px;
        }

        .modal-card {
            background: #0d1a15;
            border: 2px solid #e53935;
            border-radius: 16px;
            width: 100%;
            max-width: 420px;
            max-height: 85vh;
            display: flex;
            flex-direction: column;
            padding: 20px;
            position: relative;
            box-shadow: 0 0 25px rgba(229, 57, 53, 0.3);
            overflow: hidden;
        }

        .modal-close-x {
            position: absolute;
            top: 15px;
            right: 18px;
            background: transparent;
            border: none;
            color: #9fb5cc;
            font-size: 1.5rem;
            font-weight: 900;
            cursor: pointer;
            transition: color 0.2s;
            line-height: 1;
        }

        .modal-close-x:hover {
            color: #e53935;
        }

        .modal-header-title {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 2.2rem;
            letter-spacing: 1px;
            color: #e53935;
            line-height: 1;
            margin-bottom: 4px;
        }

        .modal-date {
            font-size: 0.8rem;
            font-weight: 700;
            color: #79aee8;
            text-transform: uppercase;
            margin-bottom: 15px;
            border-bottom: 1px solid #173a63;
            padding-bottom: 10px;
        }

        .modal-body-scroll {
            overflow-y: auto;
            display: flex;
            flex-direction: column;
            gap: 15px;
            padding-right: 5px;
            margin-bottom: 15px;
        }

        .modal-body-scroll::-webkit-scrollbar {
            width: 4px;
        }
        .modal-body-scroll::-webkit-scrollbar-thumb {
            background: #e53935;
            border-radius: 4px;
        }

        .update-item {
            font-size: 0.85rem;
            line-height: 1.5;
            color: #e0e0e0;
            display: flex;
            align-items: flex-start;
            gap: 8px;
        }

        .update-item-arrow {
            color: #e53935;
            font-weight: 900;
            font-size: 1rem;
            line-height: 1.2;
        }

        .update-item-text strong {
            color: #5aa7ff;
        }

        .btn-modal-close {
            width: 100%;
            background: linear-gradient(135deg, #e53935 0%, #d44d0d 100%);
            color: #ffffff;
            border: none;
            padding: 14px;
            border-radius: 8px;
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.6rem;
            letter-spacing: 1.5px;
            cursor: pointer;
            box-shadow: 0 4px 15px rgba(229, 57, 53, 0.3);
            transition: all 0.2s;
            text-align: center;
        }

        .btn-modal-close:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(229, 57, 53, 0.5);
        }

        /* GERENCIAMENTO DE TELAS */
        #home-screen-view {
            display: flex;
            flex-direction: column;
        }

        /* Telas escondidas inicialmente por padrão, mas serão geridas no JS */
        #mode-selection-screen, #bda10-submenu-screen, #trio-selection-screen, #sim-format-screen, #draft-screen, #sim-screen, #card-screen, #multiplayer-menu-screen, #multiplayer-draft-screen, #multiplayer-pass-screen, #multiplayer-battle-screen, #multiplayer-final-screen {
            display: none;
            flex-direction: column;
            gap: 15px;
        }

        .top-status {
            display: flex;
            justify-content: space-between;
            align-items: center;
            background: rgba(15, 30, 24, 0.8);
            border: 1px solid #1c3d30;
            padding: 10px 15px;
            border-radius: 8px;
        }

        .counter-box {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 2rem;
            color: #5aa7ff;
        }

        /* JURADOS */
        .judges-box {
            font-size: 0.75rem;
            color: #79aee8;
            text-align: center;
            margin-top: -5px;
            margin-bottom: 10px;
            text-transform: uppercase;
            letter-spacing: 1px;
            font-weight: 600;
        }

        .card-drawn {
            background: #0d1a15;
            border: 1px solid #173a63;
            border-radius: 8px;
            padding: 15px;
        }

        .card-label {
            font-size: 0.75rem;
            color: #79aee8;
            font-weight: 700;
            letter-spacing: 1px;
        }

        .card-title {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 2.2rem;
            color: #ffffff;
            line-height: 1;
            margin: 5px 0;
            transition: opacity 0.1s;
        }

        .card-bda {
            color: #e53935;
            font-weight: 700;
            font-size: 0.9rem;
        }

        .btn-resort {
            background: transparent;
            border: 1px solid #173a63;
            color: #9fb5cc;
            padding: 8px 12px;
            border-radius: 6px;
            font-size: 0.8rem;
            font-weight: 600;
            cursor: pointer;
            margin-top: 10px;
            width: 100%;
            transition: 0.2s;
        }

        .btn-resort:hover:not(:disabled) {
            background: #142a22;
            color: #fff;
        }

        /* LISTA DE MCS PARA SELEÇÃO COM PESQUISA */
        .mc-list-container {
            background: #0d1a15;
            border: 1px solid #173a63;
            border-radius: 8px;
            overflow: hidden;
            max-height: 280px;
            overflow-y: auto;
            position: relative;
        }

        .mc-list-header-sticky {
            position: sticky;
            top: 0;
            background: #0d1a15;
            z-index: 5;
        }

        .mc-list-title {
            padding: 10px 15px;
            font-size: 0.8rem;
            font-weight: 700;
            color: #79aee8;
            border-bottom: 1px solid #173a63;
            text-transform: uppercase;
        }

        .search-wrapper {
            padding: 10px 15px;
            border-bottom: 1px solid #173a63;
        }

        .search-bar {
            width: 100%;
            padding: 10px 12px;
            background: rgba(5, 11, 9, 0.9);
            border: 1px solid #1c3d30;
            color: #ffffff;
            border-radius: 6px;
            font-family: 'Montserrat', sans-serif;
            font-size: 0.85rem;
            outline: none;
            transition: border-color 0.2s;
        }

        .search-bar:focus {
            border-color: #e53935;
            box-shadow: 0 0 8px rgba(229, 57, 53, 0.2);
        }

        .search-bar::placeholder {
            color: #3b5c4f;
        }

        .mc-item {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 12px 15px;
            border-bottom: 1px solid rgba(29, 59, 47, 0.5);
            cursor: pointer;
            transition: 0.2s;
        }

        .mc-item:last-child {
            border-bottom: none;
        }

        .mc-item:hover:not(.blocked) {
            background: rgba(90, 167, 255, 0.08);
        }

        .mc-info {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .mc-state {
            color: #79aee8;
            font-weight: 700;
            font-size: 0.85rem;
            width: 30px;
        }

        .mc-name {
            color: #ffffff;
            font-weight: 700;
            font-size: 1.1rem;
        }

        .mc-bda-tag {
            font-size: 0.65rem;
            color: #e53935;
            font-weight: 700;
            margin-left: 6px;
        }

        .mc-overall {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.6rem;
            color: #ffffff;
        }

        .mc-item.blocked {
            opacity: 0.35;
            cursor: not-allowed;
            background: rgba(0, 0, 0, 0.3);
        }

        .mc-item.blocked .mc-name::after {
            content: attr(data-reason);
            font-size: 0.7rem;
            color: #e53935;
            margin-left: 5px;
        }

        /* CARD DE SELEÇÃO DE TRIOS PRONTOS */
        .trio-select-card {
            background: #0d1a15;
            border: 1px solid #173a63;
            border-radius: 8px;
            padding: 15px;
            margin-bottom: 10px;
            cursor: pointer;
            transition: 0.2s;
            display: flex;
            flex-direction: column;
            text-align: center;
        }

        .trio-select-card:hover {
            background: rgba(90, 167, 255, 0.08);
            border-color: #79aee8;
        }

        .trio-select-names {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.5rem;
            color: #ffffff;
        }

        .trio-select-ovr {
            font-size: 0.8rem;
            color: #5aa7ff;
            font-weight: bold;
            margin-top: 4px;
        }

        /* OCTÓGONO / RINGUE DE LUTA */
        .ring-wrapper {
            position: relative;
            width: 100%;
            padding-top: 100%;
            margin-top: 10px;
        }

        .ring-container {
            position: absolute;
            top: 0; left: 0; right: 0; bottom: 0;
            background: #020504;
            border-radius: 12px;
            border: 1px solid #173a63;
            display: flex;
            justify-content: center;
            align-items: center;
            overflow: hidden;
        }

        .ring-svg {
            position: absolute;
            width: 90%;
            height: 90%;
        }

        .slot {
            position: absolute;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            z-index: 10;
        }

        .slot-1 { top: 18%; left: 50%; transform: translateX(-50%); }
        .slot-2 { bottom: 20%; left: 22%; }
        .slot-3 { bottom: 20%; right: 22%; }

        .badge-state {
            width: 48px;
            height: 48px;
            border-radius: 50%;
            background: #ffffff;
            color: #000000;
            border: 3px solid #e53935;
            display: flex;
            justify-content: center;
            align-items: center;
            font-weight: 900;
            font-size: 0.95rem;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.8);
        }

        .badge-empty {
            background: #12221b;
            color: #3b5c4f;
            border: 2px dashed #244738;
        }

        .mc-slot-name {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.1rem;
            color: #ffffff;
            background: rgba(5, 11, 9, 0.9);
            padding: 2px 8px;
            border-radius: 4px;
            margin-top: 4px;
            white-space: nowrap;
            border: 1px solid #173a63;
        }
       
        .btn-remove-mc {
            position: absolute;
            top: -8px;
            right: -8px;
            background: transparent;
            border: none;
            width: 26px;
            height: 26px;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 20;
            transition: transform 0.2s;
            padding: 0;
        }

        .btn-remove-mc img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            filter: drop-shadow(0 2px 4px rgba(0,0,0,0.8));
        }

        .btn-remove-mc:hover {
            transform: scale(1.15);
        }

        /* SIMULAÇÃO DA BATALHA */
        .battle-card {
            background: #0d1a15;
            border: 1px solid #173a63;
            border-radius: 8px;
            padding: 15px;
            margin-bottom: 12px;
        }

        .battle-header {
            display: flex;
            flex-direction: column;
            border-bottom: 1px solid #173a63;
            padding-bottom: 8px;
            margin-bottom: 10px;
        }

        .phase-title {
            font-size: 0.75rem;
            font-weight: 700;
            color: #79aee8;
            text-transform: uppercase;
        }

        .opp-title {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.25rem;
            color: #e53935;
            margin-top: 2px;
        }

        .rounds-list {
            display: flex;
            flex-direction: column;
            gap: 6px;
        }

        .round-item {
            display: flex;
            justify-content: space-between;
            align-items: center;
            background: rgba(5, 11, 9, 0.6);
            padding: 8px 12px;
            border-radius: 4px;
            font-size: 0.85rem;
            border-left: 3px solid #3b5c4f;
        }

        .round-item.win { border-left-color: #5aa7ff; }
        .round-item.loss { border-left-color: #e53935; }

        .round-desc {
            color: #e0e0e0;
            font-weight: 600;
        }

        .round-score {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.2rem;
            color: #ffffff;
        }

        /* CAIXA DE ESCOLHA DE X1 */
        .x1-choice-box {
            background: #0a1410;
            border: 2px solid #e53935;
            border-radius: 8px;
            padding: 12px;
            margin-top: 10px;
            display: flex;
            flex-direction: column;
            gap: 8px;
        }

        .x1-choice-title {
            font-size: 0.8rem;
            font-weight: 700;
            color: #e53935;
            text-transform: uppercase;
            text-align: center;
        }

        /* CARD DE INTERVALO DE EVENTO */
        .interval-card {
            background: linear-gradient(135deg, #1c1308 0%, #0d1a15 100%);
            border: 2px solid #e53935;
            border-radius: 8px;
            padding: 15px;
            margin-bottom: 12px;
            box-shadow: 0 0 15px rgba(229, 57, 53, 0.2);
        }

        .interval-header {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.5rem;
            color: #e53935;
            border-bottom: 1px dashed #173a63;
            padding-bottom: 6px;
            margin-bottom: 10px;
            text-align: center;
            letter-spacing: 1px;
        }

        .interval-lines-list {
            display: flex;
            flex-direction: column;
            gap: 8px;
        }

        .interval-line-item {
            font-size: 0.85rem;
            color: #5aa7ff;
            font-weight: 600;
            background: rgba(5, 11, 9, 0.7);
            padding: 8px 10px;
            border-radius: 4px;
            border-left: 3px solid #e53935;
            line-height: 1.4;
        }

        .final-result-box {
            text-align: center;
            background: #0d1a15;
            border: 2px solid #e53935;
            padding: 20px;
            border-radius: 8px;
            margin-top: 15px;
        }

        .final-score-title {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 4rem;
            color: #5aa7ff;
            line-height: 1;
        }

        /* CARD FINAL DE ESTATÍSTICAS */
        .summary-card-container {
            background: linear-gradient(180deg, #0f241a 0%, #050b09 100%);
            border: 2px solid #173a63;
            border-radius: 12px;
            padding: 20px;
            display: flex;
            flex-direction: column;
            gap: 15px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.8);
            position: relative;
        }

        .card-close-x {
            position: absolute;
            top: 12px;
            right: 15px;
            background: transparent;
            border: none;
            color: #9fb5cc;
            font-size: 1.5rem;
            font-weight: 900;
            cursor: pointer;
            transition: color 0.2s;
            line-height: 1;
            z-index: 2;
        }

        .card-close-x:hover {
            color: #e53935;
        }

        .card-header-status {
            text-align: center;
            border-bottom: 1px solid #173a63;
            padding-bottom: 10px;
        }

        .card-status-title {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 2.8rem;
            letter-spacing: 1px;
            line-height: 1;
        }

        .card-status-title.campeao { color: #5aa7ff; text-shadow: 0 0 10px rgba(90, 167, 255, 0.4); }
        .card-status-title.eliminado { color: #e53935; text-shadow: 0 0 10px rgba(229, 57, 53, 0.4); }

        .card-score-big {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 2.2rem;
            color: #ffffff;
        }

        .stats-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 10px;
        }

        .stat-box {
            background: rgba(5, 11, 9, 0.7);
            border: 1px solid #1c3d30;
            padding: 10px;
            border-radius: 6px;
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        .stat-label {
            font-size: 0.7rem;
            font-weight: 700;
            color: #79aee8;
            text-transform: uppercase;
        }

        .stat-value {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.8rem;
            color: #ffffff;
            margin-top: 2px;
        }

        .mvp-box {
            grid-column: span 2;
            background: linear-gradient(135deg, rgba(229, 57, 53, 0.15) 0%, rgba(5, 11, 9, 0.8) 100%);
            border: 1px solid #e53935;
        }

        .mvp-box .stat-value {
            color: #e53935;
            font-size: 2.2rem;
        }

        .trio-cards-container {
            display: flex;
            justify-content: space-between;
            gap: 8px;
            margin-top: 10px;
        }

        .mc-fut-card {
            flex: 1;
            background: #0a1410;
            border: 1px solid #1c3d30;
            border-radius: 8px;
            padding: 10px 5px;
            display: flex;
            flex-direction: column;
            align-items: center;
            position: relative;
            box-shadow: 0 4px 10px rgba(0,0,0,0.5);
        }

        .mc-fut-card.gold-icon {
            background: linear-gradient(135deg, #2c2206 0%, #0d0a02 100%);
            border: 2px solid #ffd700;
            box-shadow: 0 0 12px rgba(255, 215, 0, 0.3);
        }

        .mc-fut-card.gold-icon .mc-fut-ovr { color: #ffd700; }
        .mc-fut-card.gold-icon .mc-fut-name { color: #fff8d6; }

        .mc-fut-ovr {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.8rem;
            line-height: 1;
            color: #5aa7ff;
        }

        .mc-fut-state {
            font-size: 0.65rem;
            font-weight: 800;
            color: #79aee8;
            margin-bottom: 4px;
        }

        .mc-fut-name {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.1rem;
            color: #ffffff;
            text-align: center;
            line-height: 1;
            margin-top: 4px;
        }

        .mc-fut-bda {
            font-size: 0.6rem;
            font-weight: 700;
            color: #e53935;
            margin-top: 2px;
        }

        .mode-title {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 4.5rem;
            color: #ffffff;
            text-align: center;
            margin-bottom: 20px;
            text-shadow: 0px 4px 10px rgba(0,0,0,0.5);
        }

        .credits-watermark {
            position: fixed;
            bottom: 12px;
            right: 15px;
            font-size: 0.75rem;
            font-weight: 600;
            color: rgba(90, 167, 255, 0.72);
            letter-spacing: 1px;
            pointer-events: none;
            z-index: 999;
        }

/* V8 — HISTÓRICO DA CAMPANHA */
.campaign-history {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 18px 0 22px;
    text-align: left;
}

.campaign-history-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.35rem;
    letter-spacing: 1.2px;
    color: #e53935;
    border-bottom: 1px solid rgba(229, 57, 53, 0.35);
    padding-bottom: 6px;
}

.history-battle {
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: rgba(255, 255, 255, 0.035);
    border-radius: 8px;
    padding: 12px;
}

.history-battle-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.history-battle-header > div {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.history-index {
    font-size: 0.62rem;
    color: #79aee8;
    letter-spacing: 1px;
}

.history-result {
    font-size: 0.72rem;
    font-weight: 900;
    white-space: nowrap;
}

.history-result-win,
.history-win span:last-child {
    color: #63a9ff;
}

.history-result-loss,
.history-loss span:last-child {
    color: #ff5c5c;
}

.history-opponent {
    margin-top: 8px;
    font-size: 0.77rem;
    color: #9fb5cc;
    line-height: 1.35;
}

.history-rounds {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 9px;
}

.history-round {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    font-size: 0.68rem;
    color: #d9e5f2;
    padding-top: 4px;
    border-top: 1px solid rgba(255,255,255,.05);
}

@media (max-width: 520px) {
    .social-links {
        gap: 10px;
    }
    .social-item {
        font-size: 0.82rem;
    }
    .history-battle-header {
        flex-direction: column;
        gap: 5px;
    }
}


/* v11 — seed + save/resume */
.seed-config-box {
  margin: 0 0 18px; padding: 14px; border: 1px solid #173a63; border-radius: 10px; background: rgba(8,15,12,.72);
}
.seed-config-box label { display:block; font-weight:900; font-size:.78rem; letter-spacing:1px; color:#5aa7ff; margin-bottom:8px; }
.seed-config-box label span { color:#79aee8; font-weight:600; }
.seed-config-box input { width:100%; box-sizing:border-box; background:#05080d; color:#fff; border:1px solid #245a91; border-radius:8px; padding:11px 12px; font-family:Montserrat,sans-serif; }
.seed-help { color:#79aee8; font-size:.68rem; margin-top:7px; }
.seed-display { margin:8px 0 12px; text-align:center; color:#79aee8; font-size:.72rem; letter-spacing:.6px; overflow-wrap:anywhere; }
.seed-display strong { color:#5aa7ff; }
.seed-copy-btn { margin-left:7px; border:1px solid #245a91; background:transparent; color:#5aa7ff; border-radius:5px; padding:3px 7px; font-size:.62rem; font-weight:800; cursor:pointer; }
.card-seed { margin-top:0; margin-bottom:8px; }

/* v12 — Multiplayer anunciado no menu, ainda sem navegação */
.multiplayer-menu-btn {
  border-color: #2f6fd0 !important;
  color: #9cc8ff !important;
  cursor: default;
}
.multiplayer-menu-btn:hover {
  transform: none;
}
.multiplayer-status {
  margin-left: 6px;
  font-size: .72em;
  font-weight: 700;
  opacity: .78;
}

/* v13 — Multiplayer Local */
.multiplayer-menu-btn { cursor:pointer; }
.multiplayer-menu-btn:hover { transform: translateY(-2px); }
.multiplayer-online-disabled { opacity:.52; cursor:default; border-color:#405f86!important; color:#87a7c8!important; }
.multiplayer-online-disabled:hover { transform:none; }
.multiplayer-option-help { color:#79aee8; font-size:.7rem; margin:5px 4px 0; text-align:center; }
.mp-selected-trio { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:12px; }
.mp-selected-card { border:1px solid #245a91; background:#080d14; border-radius:8px; padding:9px; text-align:center; font-size:.72rem; }
.mp-selected-card strong { display:block; color:#fff; font-size:.86rem; margin-bottom:3px; }
.mp-selected-card button { margin-top:6px; background:transparent; border:0; color:#ff7d7d; cursor:pointer; font-size:.65rem; }
.mp-pass-icon { font-size:4rem; text-align:center; margin:8px 0 15px; }
.mp-versus { display:grid; grid-template-columns:1fr auto 1fr; gap:10px; align-items:center; margin:15px 0; padding:12px; border:1px solid #173a63; border-radius:10px; background:#080d14; }
.mp-versus > div:not(.mp-vs) { display:flex; flex-direction:column; gap:5px; font-size:.7rem; color:#79aee8; }
.mp-versus > div:last-child { text-align:right; }
.mp-versus span { color:#fff; line-height:1.3; }
.mp-vs { font-family:'Bebas Neue',sans-serif; font-size:2rem; color:#e53935; }
.mp-turn-box { margin-top:12px; padding:14px; border:1px solid #245a91; border-radius:10px; background:#080d14; }
.mp-turn-title { color:#5aa7ff; font-weight:900; text-align:center; margin-bottom:10px; }
.mp-choice-grid { display:flex; flex-direction:column; gap:7px; }
.mp-hidden-choice { text-align:center; color:#79aee8; font-size:.75rem; margin-bottom:10px; }
@media(max-width:520px){.mp-selected-trio{grid-template-columns:1fr}.mp-versus{grid-template-columns:1fr}.mp-vs{text-align:center}.mp-versus>div:last-child{text-align:left}}

/* v13.3 — submenu Multiplayer isolado e compacto */
.multiplayer-menu-clean {
    width: 100%;
    max-width: 460px;
    margin: 0 auto;
}
.multiplayer-title {
    font-size: 3.2rem !important;
    margin-bottom: 14px !important;
}
.multiplayer-mode-card {
    width: 100%;
    min-height: 86px;
    margin-top: 10px;
    padding: 16px 18px;
    align-items: center;
}
.multiplayer-mode-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    text-align: left;
}
.multiplayer-mode-copy strong {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.7rem;
    letter-spacing: 1px;
    line-height: 1;
}
.multiplayer-mode-copy small {
    font-family: 'Montserrat', sans-serif;
    font-size: .72rem;
    font-weight: 600;
    line-height: 1.25;
    opacity: .78;
}
.multiplayer-mode-icon {
    font-size: 1.45rem;
    margin-left: auto;
}
.multiplayer-back-btn {
    margin-top: 16px;
    border-color: #173a63 !important;
    color: #79aee8 !important;
    justify-content: center !important;
}
@media (max-width: 520px) {
    .multiplayer-title { font-size: 2.65rem !important; }
    .multiplayer-mode-card { min-height: 78px; padding: 14px 15px; }
    .multiplayer-mode-copy strong { font-size: 1.45rem; }
}

/* v13.6 — octógono também no draft Multiplayer */
.mp-selected-trio-hidden {
    display: none !important;
}
.mp-ring-wrapper {
    margin-top: 4px;
    margin-bottom: 2px;
}
.mp-ring-remove {
    z-index: 12;
}



/* v14.0 — Multiplayer Online: criação/entrada de sala + lobby Realtime */
.online-screen {
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    flex-direction: column;
    align-items: stretch;
}
.online-kicker {
    text-align: center;
    color: #79aee8;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: 2.5px;
    margin-bottom: 6px;
}
.online-panel, .online-room-card {
    background: rgba(7, 14, 24, .92);
    border: 1px solid #173a63;
    border-radius: 14px;
    padding: 18px;
    box-shadow: 0 14px 36px rgba(0,0,0,.28);
}
.online-label {
    display: block;
    color: #9fb5cc;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: 1.4px;
    margin: 4px 0 8px;
}
.online-input {
    width: 100%;
    box-sizing: border-box;
    background: #080d14;
    border: 1px solid #35516f;
    border-radius: 9px;
    color: #fff;
    padding: 14px 13px;
    font: 700 1rem 'Montserrat', sans-serif;
    outline: none;
    margin-bottom: 12px;
}
.online-input:focus { border-color: #5aa7ff; box-shadow: 0 0 0 2px rgba(90,167,255,.12); }
.online-code-input { text-transform: uppercase; letter-spacing: 5px; text-align: center; font-size: 1.15rem; }
.online-action { margin-top: 2px; justify-content: center; }
.online-divider {
    display: flex; align-items: center; gap: 12px; color: #52677d;
    font-size: .68rem; font-weight: 900; letter-spacing: 2px; margin: 19px 0 16px;
}
.online-divider::before,.online-divider::after { content:""; height:1px; background:#1b2b3d; flex:1; }
.online-message { min-height: 19px; margin-top: 10px; text-align: center; color: #ff7773; font-size: .76rem; font-weight: 700; }
.online-room-card { text-align: center; padding: 16px; }
.online-room-label { color:#9fb5cc; font-size:.68rem; font-weight:900; letter-spacing:2px; }
.online-room-code { font-family:'Bebas Neue',sans-serif; font-size:3rem; letter-spacing:7px; color:#fff; line-height:1; margin:8px 0; }
.online-copy-btn { border:0; background:transparent; color:#5aa7ff; font-weight:900; font-size:.7rem; letter-spacing:1px; cursor:pointer; }
.online-connection {
    display:flex; align-items:center; justify-content:center; gap:8px;
    color:#9fb5cc; font-size:.7rem; font-weight:900; letter-spacing:1.4px; margin:14px 0;
}
.online-dot { width:8px; height:8px; border-radius:50%; background:#e53935; box-shadow:0 0 12px rgba(229,57,53,.5); }
.online-connection.is-connected .online-dot { background:#5aa7ff; box-shadow:0 0 12px rgba(90,167,255,.55); }
.online-player-list { display:flex; flex-direction:column; gap:9px; margin:0 0 14px; }
.online-player {
    display:flex; align-items:center; justify-content:space-between; gap:12px;
    background:#080d14; border:1px solid #1e3147; border-radius:10px; padding:13px 14px;
}
.online-player.is-self { border-color:#5aa7ff; }
.online-player-main { min-width:0; }
.online-player-name { color:#fff; font-weight:900; font-size:.9rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.online-player-role { color:#607c9a; font-size:.66rem; font-weight:800; margin-top:3px; }
.online-player-status { font-size:.68rem; font-weight:900; color:#e53935; white-space:nowrap; }
.online-player-status.ready { color:#79aee8; }
.online-ready-btn { justify-content:center; }
.online-ready-btn.is-ready { background:#173a63; border-color:#5aa7ff; }
.online-lobby-message { min-height:38px; text-align:center; color:#9fb5cc; font-size:.78rem; font-weight:700; line-height:1.45; margin:12px 8px 2px; }
@media (max-width:520px) {
    .online-room-code { font-size:2.6rem; letter-spacing:5px; }
}


#multiplayer-online-screen .multiplayer-title {
    margin-top: 26px;
}
#multiplayer-online-lobby-screen .online-kicker {
    margin-top: 26px;
}


/* v14.0.2 — páginas limpas e isoladas do Multiplayer Online */
.online-page {
    min-height: 100%;
    padding-top: 18px;
    padding-bottom: 24px;
}
.online-page .multiplayer-title {
    margin: 0 0 24px;
}
#multiplayer-online-screen .online-panel {
    margin-top: 0;
}
#multiplayer-online-screen .multiplayer-back-btn,
#multiplayer-online-lobby-screen .multiplayer-back-btn {
    margin-top: 18px;
}
#multiplayer-online-lobby-screen .online-room-card {
    margin-top: 0;
}


/* v14.1 — montagem de trio online */
#multiplayer-online-draft-screen .multiplayer-title {
    margin-top: 16px;
    margin-bottom: 16px;
}
#multiplayer-online-draft-screen .ring-wrapper {
    margin-top: 18px;
    margin-bottom: 14px;
}
.online-own-team {
    background: rgba(7,14,24,.92);
    border: 1px solid #173a63;
    border-radius: 14px;
    padding: 15px;
    margin-bottom: 14px;
}
.online-own-team-label {
    color: #79aee8;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: 2px;
    margin-bottom: 9px;
}
.online-own-team-mc {
    display: grid;
    grid-template-columns: 42px 1fr auto;
    align-items: center;
    gap: 10px;
    padding: 10px 0;
    border-top: 1px solid #1a2b3d;
}
.online-own-team-mc:first-of-type { border-top: 0; }
.online-own-team-state {
    color: #79aee8;
    font-weight: 900;
    font-size: .72rem;
}
.online-own-team-name {
    color: #fff;
    font-weight: 900;
    min-width: 0;
}
.online-own-team-ovr {
    color: #fff;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.3rem;
}


/* v14.2 — Batalha Online 2P */
#multiplayer-online-battle-screen {
    max-width: 680px;
}
.online-battle-top {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: start;
    gap: 12px;
    margin-bottom: 14px;
}
.online-battle-player {
    min-width: 0;
}
.online-battle-player-right {
    text-align: right;
}
.online-battle-name {
    color: #79aee8;
    font-size: .74rem;
    font-weight: 900;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.online-battle-team {
    margin-top: 4px;
    color: #fff;
    font-size: .7rem;
    font-weight: 700;
    line-height: 1.35;
}
.online-battle-score {
    min-width: 92px;
    text-align: center;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 2.5rem;
    line-height: 1;
    color: #fff;
}
.online-battle-status {
    border: 1px solid #173a63;
    border-radius: 9px;
    padding: 10px 12px;
    color: #79aee8;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: 1.4px;
    text-align: center;
    margin-bottom: 12px;
}
.online-round-winner {
    color: #9fb5cc;
    font-size: .66rem;
    font-weight: 800;
    margin-top: 2px;
}
.online-x1-area {
    margin-top: 14px;
}
.online-x1-box {
    border: 1px solid #173a63;
    background: rgba(7,14,24,.92);
    border-radius: 14px;
    padding: 15px;
}
.online-x1-title {
    color: #fff;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.65rem;
    letter-spacing: .7px;
}
.online-x1-note {
    color: #7890aa;
    font-size: .7rem;
    font-weight: 700;
    margin: 3px 0 12px;
}
.online-x1-grid {
    display: grid;
    gap: 8px;
}
.online-x1-choice {
    margin: 0 !important;
    display: flex;
    justify-content: space-between;
}
.online-x1-ovr {
    color: #fff;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.2rem;
}
.online-x1-waiting {
    border: 1px solid #173a63;
    border-radius: 12px;
    padding: 18px;
    text-align: center;
    background: rgba(7,14,24,.92);
}
.online-x1-waiting strong {
    display: block;
    color: #79aee8;
    font-size: .82rem;
    letter-spacing: 1px;
}
.online-x1-waiting span {
    display: block;
    color: #9fb5cc;
    font-size: .72rem;
    margin-top: 5px;
}
.online-final-kicker {
    color: #79aee8;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: 2px;
    text-align: center;
}
.online-final-score {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 5.2rem;
    line-height: 1;
    text-align: center;
    color: #fff;
    margin: 8px 0 0;
}
.online-final-winner {
    color: #79aee8;
    text-align: center;
    font-size: .9rem;
    font-weight: 900;
    letter-spacing: 1px;
    margin-bottom: 18px;
}
.online-final-card {
    border: 1px solid #173a63;
    border-radius: 14px;
    background: rgba(7,14,24,.92);
    text-align: center;
    padding: 17px;
    margin-bottom: 14px;
}
.online-final-label {
    color: #7890aa;
    font-size: .67rem;
    font-weight: 900;
    letter-spacing: 1.5px;
}
.online-final-mvp {
    color: #fff;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 2rem;
    margin-top: 5px;
}
.online-final-mvp-note {
    color: #607c9a;
    font-size: .65rem;
    font-weight: 700;
}
@media (max-width:520px) {
    .online-battle-top {
        grid-template-columns: 1fr auto 1fr;
        gap: 7px;
    }
    .online-battle-score {
        min-width: 66px;
        font-size: 2rem;
    }
    .online-battle-team {
        font-size: .62rem;
    }
}


/* v14.3 — reconexão / retomada de sala */
.online-resume-card {
    width: 100%;
    box-sizing: border-box;
    margin-top: 12px;
    border: 1px solid #173a63;
    border-radius: 10px;
    background: #08111c;
    color: #fff;
    padding: 12px 14px;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    cursor: pointer;
    text-align: left;
}
.online-resume-card strong {
    display: block;
    color: #79aee8;
    font-size: .73rem;
    letter-spacing: 1px;
}
.online-resume-card small {
    display: block;
    color: #8ca4bd;
    font-size: .68rem;
    margin-top: 3px;
}

.online-size-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 6px}
.online-size-btn{border:1px solid #244a73;background:#07121e;color:#7f9bb8;border-radius:8px;padding:11px 8px;font-weight:800;letter-spacing:.7px}
.online-size-btn.active{border-color:#6db7ff;color:#fff;box-shadow:inset 0 0 0 1px #6db7ff}
.online-size-hint{text-align:center;color:#7894b0;font-size:.66rem;font-weight:700;letter-spacing:.5px;margin-bottom:12px}
.online-tournament-phase{text-align:center;color:#79aee8;font-weight:900;letter-spacing:2px;margin:4px 0 18px}
.online-bracket-card{width:100%;display:flex;flex-direction:column;gap:10px}
.online-bracket-match{border:1px solid #193a5d;background:#06111b;border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:5px}
.online-bracket-match span{color:#6f91b5;font-size:.65rem;font-weight:800;letter-spacing:1px}
.online-bracket-match strong{color:#fff;font-size:1rem}
.online-bracket-match small{color:#8aa2ba;font-weight:700}
.online-bracket-match.final{border-color:#a63842}

.multiplayer-4p-card{border-color:#a63842}
.multiplayer-4p-card:hover{border-color:#e45460}

/* v14.5 — pós-batalha online e card consolidado */
.online-history-match{margin-top:8px;text-align:center;color:#8ca6bf;font-weight:800;letter-spacing:.5px}
.online-history-score{text-align:center;font-family:'Bebas Neue',sans-serif;font-size:4rem;line-height:1;color:#fff;margin:14px 0 20px}
.online-history-rounds{width:100%;display:flex;flex-direction:column;gap:9px;margin-bottom:22px}
.online-history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #173a63;border-left-width:5px;border-radius:8px;background:#06110f}
.online-history-row.win{border-left-color:#58a7ff}.online-history-row.loss{border-left-color:#ef4545}
.online-history-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.online-history-row strong{font-size:.82rem;color:#e7eef6;line-height:1.25}
.online-history-beat{font-size:.62rem;color:#7291ad;font-weight:800}
.online-history-row-score{font-family:'Bebas Neue',sans-serif;font-size:1.7rem;color:#fff;white-space:nowrap}
.online-summary-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin:20px 0}
.online-summary-stat{border:1px solid #173a63;border-radius:10px;background:#06110f;padding:13px 8px;text-align:center;display:flex;flex-direction:column;gap:4px}
.online-summary-stat span{font-size:.67rem;color:#79aee8;font-weight:800;letter-spacing:.5px}
.online-summary-stat strong{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:#fff}
.online-summary-team{width:100%;margin:18px 0}
.online-summary-team-title,.online-summary-history-title{text-align:center;color:#79aee8;font-weight:900;letter-spacing:1.8px;margin-bottom:12px}
.online-summary-team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.online-summary-mc{border:1px solid #234865;border-radius:9px;background:#07120f;padding:10px 5px;text-align:center;display:flex;flex-direction:column;min-width:0}
.online-summary-mc span{font-family:'Bebas Neue',sans-serif;font-size:1.65rem;color:#58a7ff}
.online-summary-mc small{color:#8bb2d7;font-weight:800;font-size:.62rem}
.online-summary-mc strong{font-family:'Bebas Neue',sans-serif;color:#fff;font-size:1.15rem;overflow:hidden;text-overflow:ellipsis}
.online-summary-mc em{font-style:normal;color:#ef4545;font-size:.65rem;font-weight:800}
.online-summary-history{width:100%;margin:18px 0 22px}
.online-tournament-history-row{border:1px solid #173a63;border-radius:9px;background:#06110f;padding:12px;margin-bottom:8px;display:flex;flex-direction:column;gap:3px}
.online-tournament-history-row span{color:#ef4545;font-family:'Bebas Neue',sans-serif;font-size:1.2rem}
.online-tournament-history-row strong{color:#fff;font-size:.82rem}
.online-tournament-history-row small{color:#8ea8c0;font-size:.7rem}
#online-final-4p-actions,#online-final-2p-actions{width:100%}
#online-final-4p-actions>button,#online-final-2p-actions>button{width:100%;margin-top:10px}

.online-tournament-history-phase{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.online-tournament-rounds{display:flex;flex-direction:column;gap:7px}

/* v14.5.2 — espectador 4P */
.online-battle-status.spectator{letter-spacing:1px}
