body {
    background:#fff;
    color:#fff;
    font-family: 'Lexend';
  }

/* =============================
   PSIA V2 - Premium Design System
   ============================= */

:root {
    color-scheme: dark;

    /* Palette globale */
    --psia-primary-900: #0b1020;
    --psia-primary-800: #101a33;
    --psia-primary-700: #162447;
    --psia-primary-600: #1d397c;
    --psia-primary-500: #2a54c2;
    --psia-secondary-500: #24c8d6;
    --psia-accent-500: #7f8bff;
    --psia-success-500: #22c55e;
    --psia-warning-500: #f59e0b;
    --psia-danger-500: #ef4444;

    --psia-neutral-0: #ffffff;
    --psia-neutral-50: #f8fafc;
    --psia-neutral-100: #e2e8f0;
    --psia-neutral-200: #cbd5e1;
    --psia-neutral-400: #94a3b8;
    --psia-neutral-500: #64748b;
    --psia-neutral-700: #334155;
    --psia-neutral-800: #1e293b;
    --psia-neutral-900: #0f172a;

    /* Surfaces */
    --psia-bg: radial-gradient(1200px 800px at 5% -20%, #22366f66, transparent 55%),
        radial-gradient(800px 500px at 100% 0%, #20c7d433, transparent 50%),
        #060b16;
    --psia-surface-1: #0b1529;
    --psia-surface-2: #101b33;
    --psia-surface-3: #152242;
    --psia-border: #24355a;
    --psia-border-soft: #1b2947;
    --psia-text-primary: #e6edf8;
    --psia-text-secondary: #9caac4;
    --psia-text-muted: #71809a;

    /* Typo */
    --psia-font-sans: 'Lexend', 'Inter', 'Segoe UI', Roboto, Arial, sans-serif;
    --psia-text-xs: 0.75rem;
    --psia-text-sm: 0.875rem;
    --psia-text-md: 1rem;
    --psia-text-lg: 1.125rem;
    --psia-text-xl: 1.375rem;
    --psia-text-2xl: 1.75rem;
    --psia-text-3xl: clamp(1.95rem, 3vw, 2.5rem);

    /* Spacing */
    --psia-space-1: 0.25rem;
    --psia-space-2: 0.5rem;
    --psia-space-3: 0.75rem;
    --psia-space-4: 1rem;
    --psia-space-5: 1.25rem;
    --psia-space-6: 1.5rem;
    --psia-space-8: 2rem;
    --psia-space-10: 2.5rem;

    /* Radius + ombre */
    --psia-radius-sm: 8px;
    --psia-radius-md: 12px;
    --psia-radius-lg: 16px;
    --psia-radius-xl: 20px;
    --psia-shadow-soft: 0 10px 30px rgba(5, 10, 20, 0.35);
    --psia-shadow-focus: 0 0 0 3px rgba(127, 139, 255, 0.3);

    /* Motion */
    --psia-ease: cubic-bezier(0.2, 0.8, 0.2, 1);
    --psia-fast: 140ms;
    --psia-base: 220ms;
}

html,
body {
    background: var(--psia-bg) !important;
    color: var(--psia-text-primary) !important;
    font-family: var(--psia-font-sans) !important;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--psia-text-primary) !important;
    letter-spacing: 0.01em;
}

h1 {
    font-size: var(--psia-text-3xl) !important;
    line-height: 1.12;
    margin: var(--psia-space-6) 0 !important;
}

h2 {
    font-size: var(--psia-text-2xl) !important;
    margin: var(--psia-space-5) 0 !important;
}

h3 {
    font-size: var(--psia-text-xl) !important;
}

p {
    color: var(--psia-text-secondary);
    text-align: initial;
}

/* Surfaces premium */
.main-container,
.card,
.card2,
.match-card,
.filter-section,
.pagination-section {
    background: linear-gradient(160deg, #0f1a31 0%, #0b1529 70%) !important;
    border: 1px solid var(--psia-border) !important;
    border-radius: var(--psia-radius-lg) !important;
    box-shadow: var(--psia-shadow-soft);
}

.navbar-fixed-top,
.navbar,
.wid-bg {
    background: linear-gradient(120deg, #132957 0%, #182f63 45%, #10254f 100%) !important;
    border-bottom: 1px solid #294173;
}

/* Boutons premium */
.btn,
.btn-psia {
    border-radius: 12px !important;
    font-weight: 600 !important;
    transition: transform var(--psia-fast) var(--psia-ease),
        box-shadow var(--psia-base) var(--psia-ease),
        background-color var(--psia-base) var(--psia-ease),
        border-color var(--psia-base) var(--psia-ease),
        opacity var(--psia-fast) var(--psia-ease);
}

.btn:hover,
.btn-psia:hover {
    transform: translateY(-1px);
}

.btn:focus-visible,
.btn-psia:focus-visible {
    box-shadow: var(--psia-shadow-focus) !important;
}

.btn-primary,
.btn-psia-primary {
    background: linear-gradient(135deg, #355fce 0%, #2a54c2 100%) !important;
    border-color: #406adb !important;
    color: #ecf2ff !important;
}

.btn-primary:hover,
.btn-psia-primary:hover {
    background: linear-gradient(135deg, #436fdf 0%, #355fce 100%) !important;
}

.btn-secondary,
.btn-psia-secondary {
    background: linear-gradient(135deg, #1faeb9 0%, #24c8d6 100%) !important;
    border-color: #32d6e3 !important;
    color: #032228 !important;
}

.btn-outline-light,
.btn-psia-ghost {
    background: #111c34 !important;
    border: 1px solid #2d436f !important;
    color: var(--psia-text-primary) !important;
}

.btn-outline-light:hover,
.btn-psia-ghost:hover {
    background: #1b2a4b !important;
    border-color: #44649f !important;
    color: #ffffff !important;
}

.btn-danger,
.btn-psia-danger {
    background: linear-gradient(135deg, #d73030 0%, #ef4444 100%) !important;
    border-color: #f56565 !important;
    color: #fff !important;
}

.btn[disabled],
.btn:disabled,
.btn-psia[disabled] {
    opacity: 0.52 !important;
    cursor: not-allowed !important;
    transform: none !important;
}

.btn.is-loading {
    position: relative;
    color: transparent !important;
    pointer-events: none;
}

.btn.is-loading::after {
    content: "";
    width: 16px;
    height: 16px;
    border-radius: 999px;
    border: 2px solid #d0dbff;
    border-top-color: transparent;
    animation: psia-spin 0.7s linear infinite;
    position: absolute;
    inset: 0;
    margin: auto;
}

/* Etats matchs */
.psia-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    padding: 0.28rem 0.7rem;
    font-size: var(--psia-text-xs);
    font-weight: 700;
    letter-spacing: 0.02em;
    border: 1px solid transparent;
}

.psia-status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
}

.psia-status-live {
    color: #f97316;
    background: rgba(249, 115, 22, 0.16);
    border-color: rgba(249, 115, 22, 0.38);
}

.btn-psia-live-status {
    color: #f97316 !important;
    background: rgba(249, 115, 22, 0.16) !important;
    border: 1px solid rgba(249, 115, 22, 0.38) !important;
}

.btn-psia-live-status:hover {
    color: #fb8f47 !important;
    background: rgba(249, 115, 22, 0.24) !important;
    border-color: rgba(249, 115, 22, 0.5) !important;
}

.psia-status-upcoming {
    color: #7f8bff;
    background: rgba(127, 139, 255, 0.14);
    border-color: rgba(127, 139, 255, 0.35);
}

.psia-status-finished {
    color: #38bdf8;
    background: rgba(56, 189, 248, 0.14);
    border-color: rgba(56, 189, 248, 0.35);
}

.psia-status-pending {
    color: #fbbf24;
    background: rgba(251, 191, 36, 0.16);
    border-color: rgba(251, 191, 36, 0.35);
}

.psia-status-danger {
    color: #f87171;
    background: rgba(248, 113, 113, 0.15);
    border-color: rgba(248, 113, 113, 0.38);
}

/* Variante badge basee sur les anciennes couleurs du point d'etat */
.psia-status.psia-status-dot-green {
    background: #22c55e;
    border-color: #22c55e;
    color: #05220f;
}

.psia-status.psia-status-dot-yellow {
    background: #facc15;
    border-color: #facc15;
    color: #2f2300;
}

.psia-status.psia-status-dot-orange {
    background: #f97316;
    border-color: #f97316;
    color: #2d1300;
}

.psia-status.psia-status-dot-red-blink {
    background: #ef4444;
    border-color: #ef4444;
    color: #fff;
    animation: psia-blink-red 1s ease-in-out infinite;
}

.psia-status.psia-status-dot-blue {
    background: #3b82f6;
    border-color: #3b82f6;
    color: #031833;
}

/* Tables/listes premium */
.table,
.finalTable {
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(255, 255, 255, 0.03);
    --bs-table-hover-bg: rgba(127, 139, 255, 0.09);
    border-color: var(--psia-border) !important;
}

.table thead th {
    background: #152847 !important;
    color: #dbe7ff !important;
    border-bottom: 1px solid #2d4677 !important;
    font-size: var(--psia-text-sm);
}

.table td,
.table th,
tbody td {
    color: var(--psia-text-primary) !important;
    border-color: var(--psia-border-soft) !important;
}

/* Modal system */
.modal {
    backdrop-filter: blur(3px);
    background: rgba(5, 12, 22, 0.6) !important;
}

.modal-content {
    background: linear-gradient(160deg, #101b33 0%, #0c172c 100%) !important;
    border: 1px solid var(--psia-border) !important;
    border-radius: var(--psia-radius-lg) !important;
    color: var(--psia-text-primary) !important;
}

.close,
.close-modal {
    color: #d2dcf3 !important;
    transition: transform var(--psia-fast) var(--psia-ease), color var(--psia-fast) var(--psia-ease);
}

.close:hover,
.close-modal:hover {
    color: #ffffff !important;
    transform: scale(1.08);
}

/* Skeletons */
.psia-skeleton {
    border-radius: 12px;
    background: linear-gradient(100deg, #16233f 18%, #22345a 30%, #16233f 42%);
    background-size: 220% 100%;
    animation: psia-shimmer 1.3s linear infinite;
}

.psia-skeleton-card {
    padding: 1rem;
    border: 1px solid var(--psia-border);
    background: #101b33;
    border-radius: 14px;
}

.psia-skeleton-line {
    height: 12px;
    margin-bottom: 10px;
}

.psia-skeleton-line.lg { height: 18px; width: 65%; }
.psia-skeleton-line.md { width: 85%; }
.psia-skeleton-line.sm { width: 40%; }

/* Navigation mobile */
.psia-mobile-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1100;
    display: none;
    align-items: center;
    justify-content: space-around;
    gap: 0.4rem;
    padding: 0.65rem 0.75rem;
    border-top: 1px solid #2d426f;
    background: linear-gradient(180deg, #0e1a33 0%, #101c37 100%);
    box-shadow: 0 -8px 30px rgba(0, 0, 0, 0.3);
}

.psia-mobile-nav a {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    color: #9cb0d5 !important;
    font-size: 0.72rem;
    text-decoration: none;
}

.psia-mobile-nav a.active,
.psia-mobile-nav a:hover {
    color: #ffffff !important;
}

/* Animations subtiles bonus */
.psia-refresh-flash {
    animation: psia-refresh 820ms var(--psia-ease);
}

.psia-state-change {
    animation: psia-pop 260ms var(--psia-ease);
}

.psia-probability-up {
    animation: psia-prob-up 540ms var(--psia-ease);
}

.psia-probability-down {
    animation: psia-prob-down 540ms var(--psia-ease);
}

@keyframes psia-shimmer {
    0% { background-position: 100% 50%; }
    100% { background-position: -100% 50%; }
}

@keyframes psia-spin {
    to { transform: rotate(360deg); }
}

@keyframes psia-refresh {
    0% { box-shadow: 0 0 0 0 rgba(36, 200, 214, 0.45); }
    100% { box-shadow: 0 0 0 18px rgba(36, 200, 214, 0); }
}

@keyframes psia-pop {
    0% { transform: scale(0.98); }
    100% { transform: scale(1); }
}

@keyframes psia-prob-up {
    0% { color: #22c55e; text-shadow: 0 0 0 rgba(34, 197, 94, 0); }
    60% { text-shadow: 0 0 14px rgba(34, 197, 94, 0.6); }
    100% { color: inherit; text-shadow: 0 0 0 rgba(34, 197, 94, 0); }
}

@keyframes psia-prob-down {
    0% { color: #ef4444; text-shadow: 0 0 0 rgba(239, 68, 68, 0); }
    60% { text-shadow: 0 0 14px rgba(239, 68, 68, 0.5); }
    100% { color: inherit; text-shadow: 0 0 0 rgba(239, 68, 68, 0); }
}

@media (max-width: 768px) {
    body {
        padding-bottom: 68px;
    }

    .psia-mobile-nav {
        display: flex;
    }

    .container-fluid.pt-3 {
        padding-top: 72px !important;
    }

    .match-card,
    .main-container,
    .filter-section {
        padding: 1rem !important;
    }

    .table {
        font-size: 0.84rem;
    }
}
  
h1{
    display: block;
    color: #111;
    font-size: 30px !important;
    margin: 50px 0 !important;
    font-family: 'Lexend' !important;
    font-weight: 700 !important;

}
h2{
    font-size: 25px !important;
    margin: 30px 0 !important;
    font-family: 'Lexend' !important;
}

p{
    text-align: center;
    font-family: 'Lexend' !important;
}
h6{
    font-family: 'Lexend' !important;
    color: #272727;
    font-size: 0.85rem !important;
}

img.imgRightPosition {
    float: right;
    width: 450px;
    margin: 30px 0px 30px 30px;
}
img.imgRightPosition3 {
    float: right;
    width: 439px;
    margin: 30px 0px 30px 30px;
}
img.imgRightPosition2{
    width: 450px;
}
div#navbarSupportedContent > div > p {
    margin-bottom: 0;
    color: #fff;
    font-size: 20px;
}
.img
{
    max-width: 100%;
    height: auto;
}

.nav-link{
    font-size:1.4em;
}

.navbar-brand
{
    margin-right: 3rem !important;
}
a, footer p, .vs-cell{
    color: #ffffff !important;
}
td{
    align-items: center !important;
}
h3{
    color: #243C87 !important;
    font-weight: 600 !important;
    padding: 15px; 
    /* background-color: #061844 !important; */

}

/*psia*/
.card {
    border: 1px solid #2c2525;
    padding: 15px; 
    /* margin-bottom: 20px;  */
    /* background-color:#0f2b6c !important */
    background-color:#061844 !important;

}
.card:hover {
    /* background: linear-gradient(80.92deg,#23739b -7.62%,#08131a 105.55%); */
    box-shadow: 0 6px 12px rgba(0,0,0,.25);
    border-color: var(--match-two);

    background-color: #061844 !important;
    color: #fff;
}
.img{
    width: 20px;
    height: auto;
}

.card-body {
    padding: 0 !important;
}
p, th{
    color:#fff;
    text-align: center !important;
}
td,.sorting_1,.odd{
    background-color: #061844 !important;
    color: #fff;
}
tr{
    background-color: #202850;
}
.dataTables_length{
    padding-left: 2em;
}
.md-cell{
    width: 20%;
}
.sm-cell{
    width: 5.5%;
}
.nowrap{
    white-space: nowrap;
}
.text-initial{
    color: #061844 !important;
}

/*-----------Progress bar-------------------*/
#scrollProgressBar {
    width: 100%;
    height: 20px;
    border-radius: 10px!important;
    background-color: #ddd; 
}

#scrollProgressBar::-webkit-progress-bar {
    background-color: #ddd; /* Couleur de fond de la barre de progression pour les navigateurs WebKit */
    border-radius: 10px!important;
}

#scrollProgressBar::-webkit-progress-value {
    background-color: #4caf50; /* Couleur de remplissage de la barre de progression pour les navigateurs WebKit */
    border-radius: 10px;
}

#percentageLabel {
    text-align: center;
    margin-top: 10px;
    font-size: 16px;
    color: #333; /* Couleur du texte du pourcentage */
}
/*-----------Progress bar-------------------*/


/*-----------Login-------------------*/
#loginBtn:hover{
    background-color: #15803d!important;
    color:#fff!important;
}
.card-login {
    background-image: radial-gradient(circle, #061844, #0c2051, #12285f, #18306d, #1d397c);
    color: #ffffff;
}
.form-login-control{
    border: none;
    border-bottom: 1px solid #ccc;
    padding-left: 0;
    padding-right: 0;
    border-radius: 0;
    background: none;
}


.form-outline {
    border-color: #061844; /* Couleur de la bordure des champs de formulaire */
}

.form-outline:focus-within {
    border-color: #061844; /* Couleur de la bordure lorsqu'un champ de formulaire est sélectionné */
}

.btn-outline-light {
    color: #ffffff; /* Couleur du texte du bouton */
    background-color: #061844; /* Couleur de fond du bouton */
    border-color: #061844; /* Couleur de la bordure du bouton */
}

.btn-outline-light:hover {
    color: #061844; /* Couleur du texte lorsqu'on survole le bouton */
    background-color: #ffffff; /* Couleur de fond lorsqu'on survole le bouton */
    border-color: #ffffff; /* Couleur de la bordure lorsqu'on survole le bouton */
}
#containerPassword{
    position: relative;
}
.iconEye {
    position: absolute;
    background-image: url(../images/eye.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 28px;
    height: 28px;
    top: 42px;
    background-color: transparent;
    right: 0px;
    margin-right: 8px;
    border: none;
}
.iconEye-slash {
    position: absolute;
    background-image: url(../images/crossed-eye.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 28px;
    height: 28px;
    top: 42px;
    background-color: transparent;
    right: 0px;
    margin-right: 8px;
    border: none;
}
.positioprofile{
    position: fixed;
    right: 12px;
}

/*-----------Login-------------------*/

/*-----------Register-------------------*/
.iconEyeRegister {
    position: absolute;
    background-image: url(../images/eye.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 28px;
    height: 28px;
    top: 250px;
    background-color: transparent;
    right: 15px;
    margin-right: 8px;
    border: none;
}
.iconEyeRegister-slash {
    position: absolute;
    background-image: url(../images/crossed-eye.png);
    background-size: cover;
    background-repeat: no-repeat;
    width: 28px;
    height: 28px;
    top: 250px;
    background-color: transparent;
    right: 15px;
    margin-right: 8px;
    border: none;
}
/*-----------Register-------------------*/

/*-----------Loader-------------------*/
.loader {
    border: 8px solid #f3f3f3;
    border-top: 8px solid #838383;
    border-radius: 50%;
    width:30px;
    height: 30px;
    animation: spin 2s linear infinite;
    display: block;
}

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

/*-----------Loader-------------------*/



.valid {
    border: 2px solid green!important;
    background-color: #eaffea!important; /* Couleur de fond pour l'e-mail valide */
}

.invalid {
    border: 2px solid red!important;
    background-color: #ffecec!important; /* Couleur de fond pour l'e-mail non valide */
}
.error-toast {
    background: rgba(255, 0, 0, 0.432)!important; 
    font-size: 16px!important;
}
.success-toast {
    background: rgba(72, 255, 0, 0.459)!important; 
    font-size: 16px!important;
}
#deconnectIcon{
    background-image: url('../images/utilisateurIcone.png');
    background-repeat: no-repeat;
    background-size: contain;
}
#navMenu{
    font-size: 16px!important;
    margin-top: 10%;
    background-color: #f3f3f3;
    color: #000000!important;
}
#btnCheckProfile{
    padding-left: 20px;
    padding-right: 20px;
}
.dateContainerAccordionTitle{
    display: flex;
    justify-content: space-between;
    padding-left: 30px;
}
.btnPrimaryCollapse{
    background-color: #243C87 !important;
    width: 32px;
    height: 32px;
    padding: 0!important;
    border: none !important;
}
.imgRealProfil{
    width: 150px;
    align-self: end;
    height: 150px;
    border-radius: 100px;
    background-color: #243C87;
}

.finalTable{
    font-size: 16px;
}
.badgeDateMatchNumber{
    margin-left: 5px;
    font-size: 20px!important;
}



@media (min-width: 480px) and (max-width: 1000px) {
    img.imgRightPosition2 {
        max-width: 380px;
        margin: 30px 0px 30px 10px;
    }
    .nav2{
        padding-top: 20px;
    }
    .wid-bg{
        /* width: 894px !important; */
        width: 100% !important;
    }


}

@media (min-width: 480px) and (max-width: 767px) {
    img.imgRightPosition2 ,
    img.imgRightPosition{
        float: right;
        max-width: 450px;
        margin: 30px 0px 30px 10px;
    }
    img.imgCenterPositionAPE {
        display: block;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }
    .paddingtop {
        padding-top: 0 !important;
    }
    .nav2{
        padding-top: 20px;
    }
    .wid-bg{
        /* width: 575px !important; */
        width: 767px !important;

    }

}
@media (min-width: 320px) and (max-width: 480px) {
    img.imgRightPosition2,
    img.imgRightPosition {
        float: right;
        width: 100%;
        margin: 30px 0px 30px 0px;
    }
    .paddingtop {
        padding-top: 0 !important;
    }
    img.imgCenterPositionAPE {
        display: block;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }
    .nav2{
        padding-top: 20px;
    }
    .wid-bg{
        width: 894px !important;
        /* width: 738px !important; */
    }
}
@media (max-width: 320px) {
    img.imgRightPosition,
    img.imgRightPosition2 {
        float: right;
        width: 100%;
        margin: 30px 0px 30px 0px;
    }
    
    .img3{
        width: 100px;
        height: 25px;
    }
    .paddingtop {
        padding-top: 0 !important;
    }
    .wid-bg{
        width: 894px !important;
        /* width: 738px !important; */

    }


}
img.imgCenterPositionAPE {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    
}
.fs{
    font-size: 2.5em;
}
.bg{
    background: #940b39;
}
.fs2{
    font-size: 15px;
    font-weight: bold;
}
.border_faq,
.border_faq2,
.border_faq3{
    font-size: 20px;
   color: #333b46;
   font-weight: 500;
 }
.border_faq:after {
     content: '';
     display: block;
     position: relative;
     width: 4%;
     border: 2px solid #111;
     margin-top: 25px; 
}

 .border_faq2:after {
     content: '';
     display: block;
     position: relative;
     width: 8%;
     border: 2px solid #111;
     margin-top: 25px; 
}
.border_faq3:after {
    content: '';
    display: block;
    position: relative;
    width: 12%;
    border: 2px solid #111;
    margin-top: 25px; 
}
.border_h1{
    font-size: 20px;
   color: #f1b41f;
   font-weight: 500;
 }
 .border_h1:after {
     content: '';
     display: block;
     position: relative;
     width: 4%;
     border: 2px solid #f1b41f;
     margin-top: 25px; }
.border_lg{
    border-top: 1px solid #111;
}
.bg_color{
    background-color:#690b4b !important;
}
.fs_color{
    color:#fff !important;
}
strong{
    color: #111;
}
.text-end{
    text-align: right!important;
}
.fs-5,
.color_s{
    color: #f1b41f !important;
}
.p1{
    font-weight: bold;
}
.img_plus{
    width: 20px;
    height: 20px;
}
/* Styling for the navbar */
.navbar-custom {
    background-color: black;
}
.paddingtop{
    padding-top: 8em;
}

/* Styling for the mobile button */
.navbar-toggler-icon {
    background-color: white;
}
.cl{
    color: #50DB97!important;
}

.bc{
    background-color: #f4f6fb;
}
.card2 {
    border: 1px solid #2c2525;
    padding: 15px;
    /* margin-bottom: 20px; */
    background-color: #061844 !important;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0,0,0,.125);
    border-radius: 0.25rem;
}

.modal {
    display: none; 
    position: fixed; 
    z-index: 1; 
    left: 0;
    top: 0;
    width: 100%; 
    height: 100%; 
    overflow: auto; 
    background-color: rgb(0,0,0); 
    background-color: rgba(0,0,0,0.4); 
}

.modal-content {
    background-color:#a3a3a3 !important;
    /* background-color: #fefefe; */
    margin: 15% auto; 
    padding: 20px;
    border: 1px solid #888;
    /* width: 80%;  */
    width: 900px !important;
}

.close {
    /* color: #aaa; */
    color: #111 !important;
    float: right !important;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}


.terminal {
    color: green;
    background-color: black;
    font-family: 'Courier New', Courier, monospace;
    white-space: pre;
    overflow: hidden;
    height: 300px;
    margin-top: 20px;
    overflow-y: auto; /* Ajout de cette ligne pour activer la barre de défilement vertical */
}
.terminal2 {
    color: red;
    background-color: black;
    font-family: 'Courier New', Courier, monospace;
    white-space: pre;
    overflow: hidden;
    height: 300px;
    margin-top: 20px;
    overflow-y: auto; /* Ajout de cette ligne pour activer la barre de défilement vertical */
}


tbody td {
    border-top: 1px solid #261212 !important;
}
.table-bordered td, .table-bordered th {
    border: 1px solid #061729;
}
.table-bordered td, .table-bordered th {
    border: 1px solid #0c253e !important;
}
.p-vs{
    background-color: #a79a36;
    border-radius: 1em;
}
.imglogo{
    width: 31px;
    border-radius: 15px;
    background-color: #fff;
}
span{
    color: #061844 !important;
}
.scoresp{
    font-size: 25px;
    color: #fff !important;
}


hr {
    margin-top: 1rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 11px solid #fff !important;
}
tr{
    background-color: #202850;
}
.nav-a{
    font-size: 18px !important;
}
.border1{
    border: 1px solid #000000!important;
}
.imgprofile{
    border-radius: 55px;
}
.paris_live{
    color:red;
}
.paris_live_dispo{
    color: #cbdaff !important;
}
.versionJarviscolor{
    color:#fff !important;
}

.psia-settings-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #3a548d;
    border-radius: 999px;
    background: #10203f;
    color: #e6edf8;
    width: 34px;
    height: 34px;
    padding: 0;
    font-size: 14px;
    line-height: 1;
}

.psia-settings-trigger:hover {
    background: #17305f;
    color: #ffffff;
}

.psia-trigger-badge {
    color: #7fe7ff !important;
    font-weight: 700;
    font-size: 12px;
}

#psiaTriggerBadge {
    display: none !important;
}

.psia-trigger-input {
    max-width: 160px;
}

/* Accueil - scroll horizontal premium pour tableaux */
.psia-table-scroll {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    border: 1px solid var(--psia-border);
    border-radius: 12px;
    background: linear-gradient(180deg, #101c36 0%, #0d1830 100%);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
}

.psia-table-scroll .finalTable,
.psia-table-scroll .table {
    min-width: 980px;
    margin-bottom: 0;
}

.psia-table-scroll::-webkit-scrollbar {
    height: 10px;
}

.psia-table-scroll::-webkit-scrollbar-track {
    background: #0a1327;
    border-radius: 999px;
}

.psia-table-scroll::-webkit-scrollbar-thumb {
    background: linear-gradient(90deg, #2a54c2 0%, #24c8d6 100%);
    border-radius: 999px;
}

/* Temps reel - photos + score alignes */
.psia-live-headline {
    align-items: center;
}

.imgRealProfil--sm {
    width: 92px;
    height: 92px;
    object-fit: cover;
    border-radius: 50%;
}

.psia-live-score-card {
    min-width: 120px;
}

.psia-live-main-card {
    margin-top: 14px;
    border: 1px solid var(--psia-border);
    border-radius: 14px;
    background: linear-gradient(180deg, #071a2a 0%, #051624 100%);
    padding: 16px;
}

.psia-live-top-row {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 12px;
    align-items: center;
    margin-bottom: 14px;
}

.psia-live-top-player {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.psia-live-top-player--right {
    justify-content: flex-end;
}

.psia-live-top-side {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

.psia-live-top-side--right {
    align-items: flex-end;
}

.psia-live-top-name {
    color: var(--psia-text-primary);
    font-weight: 700;
    font-size: 1.08rem;
}

.psia-live-side-data {
    border: 1px solid #173a57;
    border-radius: 12px;
    background: #071a2a;
    padding: 12px;
    min-width: min(360px, 100%);
}

.psia-live-side-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 8px;
}

.psia-live-chip {
    border: 1px solid #214564;
    border-radius: 8px;
    background: #0a1f32;
    color: #c8d8e8;
    font-size: 0.78rem;
    padding: 4px 8px;
}

.psia-live-chip strong {
    color: #e8f1fa !important;
}

.psia-live-chip.psia-set-win {
    border-color: rgba(34, 197, 94, 0.5);
    background: rgba(34, 197, 94, 0.16);
}

.psia-live-chip.psia-set-win strong {
    color: #22c55e !important;
}

.psia-live-chip.psia-set-loss {
    border-color: rgba(239, 68, 68, 0.5);
    background: rgba(239, 68, 68, 0.16);
}

.psia-live-chip.psia-set-loss strong {
    color: #ef4444 !important;
}

.psia-live-chip.psia-set-neutral {
    border-color: rgba(148, 163, 184, 0.45);
    background: rgba(148, 163, 184, 0.14);
}

.psia-live-side-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(110px, 1fr));
    gap: 8px;
    margin-bottom: 8px;
}

.psia-live-metric {
    border: 1px solid #1a3a57;
    border-radius: 10px;
    background: #0b2032;
    padding: 7px 8px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 6px;
}

.psia-live-metric span {
    color: #9db4c9 !important;
    font-size: 0.72rem;
}

.psia-live-metric strong {
    color: #e6edf8 !important;
    font-size: 0.82rem;
    text-align: right;
}

.psia-live-delta {
    min-width: 56px;
    text-align: right;
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

.psia-live-delta.up {
    color: #22c55e;
}

.psia-live-delta.down {
    color: #ef4444;
}

.psia-live-prob-block {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.psia-live-prob-head {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.psia-live-prob-head > span:first-child {
    color: #9db4c9 !important;
    font-size: 0.72rem;
}

.psia-home-filters {
    background: #101b33;
    border: 1px solid var(--psia-border);
    border-radius: 12px;
    padding: 10px;
    margin: 10px 0 16px;
}

.psia-date-switcher {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid #2e436e;
    border-radius: 999px;
    padding: 3px 8px;
    background: #010a0f;
    min-height: 34px;
    width: fit-content;
    max-width: 100%;
}

.psia-date-label {
    color: #e6edf8 !important;
    font-weight: 700;
    font-size: 0.88rem;
    letter-spacing: 0.02em;
}

.psia-icon-btn {
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #dce8ff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.psia-icon-btn:hover:not(:disabled) {
    background: rgba(255, 255, 255, 0.06);
    color: #fff;
}

.psia-icon-btn:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.psia-date-icon {
    color: #9db4c9;
    font-size: 0.9rem;
    line-height: 1;
    display: inline-flex;
    align-items: center;
}

.psia-sort-arrows {
    display: inline-flex;
    gap: 8px;
}

.psia-sort-btn {
    width: 34px;
    height: 30px;
    border-radius: 5px;
    border: 1px solid #314b7e;
    background: #111c34;
    color: #dce8ff;
}

.psia-sort-btn:hover {
    background: #1a3263;
    border-color: #44649f;
}

.psia-sort-btn.is-active {
    border-color: #2ac8d6;
    background: linear-gradient(135deg, #1faeb9 0%, #24c8d6 100%);
    color: #05212a;
}

.psia-mobile-tournament-btn {
    display: none!important;
    border: 1px solid #355188;
    border-radius: 8px;
    background: #111f3d;
    color: #dce8ff !important;
    font-weight: 700;
    font-size: 0.78rem;
    min-height: 28px;
    padding: 0 9px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    white-space: nowrap;
}

.psia-mobile-tournament-btn:hover {
    background: #1b2f59;
    color: #fff !important;
}

.psia-live-filter-badge {
    min-height: 36px;
    border: 1px solid #3f4f74;
    border-radius: 999px;
    background: #101b33;
    color: #dbe8ff !important;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0 12px;
    white-space: nowrap;
}

.psia-live-filter-badge:hover {
    border-color: #f97316;
    color: #fff !important;
    background: rgba(249, 115, 22, 0.14);
}

.psia-live-filter-badge.is-active {
    border-color: #f97316;
    background: linear-gradient(135deg, #ea580c 0%, #f97316 100%);
    color: #ffffff !important;
}

.psia-main-shell {
    padding-right: 96px;
}

.psia-app-rail {
    position: fixed;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1050;
    width: 62px;
    border: 1px solid #2a3f6a;
    border-radius: 18px;
    background: linear-gradient(180deg, #0f1a33 0%, #101c37 100%);
    padding: 12px 8px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.psia-rail-item {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #c5d2ee !important;
    text-decoration: none;
    border: 1px solid transparent;
    background: #111f3d;
}

.psia-rail-item:hover {
    color: #ffffff !important;
    border-color: #395a93;
    background: #1b2f59;
}

.psia-rail-item.is-active {
    color: #0d2d1a !important;
    border-color: #36cf74;
    background: linear-gradient(135deg, #54f186 0%, #2fd06a 100%);
}

.psia-dashboard-top {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: center;
    flex-wrap: wrap;
    background: linear-gradient(145deg, #111f3c 0%, #0d1831 100%);
    border: 1px solid #243a63;
    border-radius: 16px;
    padding: 16px;
}

.psia-dashboard-breadcrumb {
    color: var(--psia-text-muted);
    font-size: 0.8rem;
}

.psia-dashboard-title h1 {
    margin: 0 !important;
    font-size: clamp(1.4rem, 2.4vw, 2rem) !important;
}

.psia-dashboard-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.psia-pill-btn {
    border-radius: 999px !important;
    padding: 8px 14px !important;
    font-size: 0.85rem !important;
}

.psia-quick-actions {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px;
}

.psia-quick-action {
    border: 1px solid #2c436f;
    border-radius: 14px;
    background: linear-gradient(145deg, #101d38 0%, #0c162b 100%);
    color: var(--psia-text-primary);
    padding: 12px 14px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    text-align: left;
}

.psia-quick-action i {
    width: 30px;
    height: 30px;
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #17305d;
    color: #7fe7ff;
}

.psia-quick-action:hover {
    border-color: #3d619e;
    background: linear-gradient(145deg, #14264b 0%, #0e1c37 100%);
}

.psia-home-layout {
    align-items: flex-start;
    padding-left: 330px;
}

body.psia-tournament-menu-hidden .psia-home-layout {
    padding-left: 0;
}

.psia-sidebar-card-fixed {
    position: fixed;
    top: 75px;
    left: 16px;
    width: min(300px, calc(100vw - 24px));
    z-index: 1040;
    transition: transform 220ms var(--psia-ease), opacity 220ms var(--psia-ease);
}

body.psia-tournament-menu-hidden .psia-sidebar-card-fixed {
    transform: translateX(calc(-100% - 22px));
    opacity: 0;
    pointer-events: none;
}

.psia-tournament-open-pin {
    position: fixed;
    top: 150px;
    left: 12px;
    width: 34px;
    height: 42px;
    border: 1px solid #355188;
    border-radius: 10px;
    background: #111f3d;
    color: #dce8ff;
    align-items: center;
    justify-content: center;
    z-index: 1045;
    opacity: 0;
    pointer-events: none;
    transform: translateX(-12px);
    transition: transform 180ms var(--psia-ease), opacity 180ms var(--psia-ease), background-color 180ms var(--psia-ease);
}

.psia-tournament-open-pin:hover {
    background: #1b2f59;
    color: #fff;
}

body.psia-tournament-menu-hidden .psia-tournament-open-pin {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
}

.psia-sidebar-card {
    background: #101b33;
    border: 1px solid var(--psia-border);
    border-radius: 12px;
    padding: 10px;
}

.psia-tournament-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: calc(100vh - 180px);
    overflow-y: auto;
    padding-right: 4px;
}

.psia-tournament-item {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    border: 1px solid #2d436f;
    background: #111c34;
    color: var(--psia-text-primary);
    border-radius: 10px;
    padding: 7px 8px;
    text-align: left;
    font-size: 0.8rem;
    font-weight: 600;
}

.psia-tournament-item:hover {
    background: #1b2a4b;
    border-color: #44649f;
}

.psia-tournament-item.is-selected {
    border-color: #2ac8d6;
    background: linear-gradient(135deg, #1faeb9 0%, #24c8d6 100%);
    color: #ffffff !important;
}

.psia-tournament-item.is-selected span,
.psia-tournament-item.is-selected .fallback-flag,
.psia-tournament-item.is-selected .psia-tournament-count {
    color: #ffffff !important;
}

.psia-tournament-item .flag {
    width: 20px;
    height: 14px;
    object-fit: cover;
    border-radius: 2px;
    border: 1px solid rgba(255, 255, 255, 0.25);
}

.psia-tournament-item .fallback-flag {
    width: 20px;
    text-align: center;
}

.psia-tournament-count {
    margin-left: auto;
    min-width: 24px;
    height: 24px;
    padding: 0 7px;
    border-radius: 999px;
    border: 1px solid #3d5d98;
    background: #16294f;
    color: #dce8ff;
    font-size: 0.75rem;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.psia-tournament-title {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #e7edf2 !important;
}

.psia-tournament-title-flag {
    width: 22px;
    height: 16px;
    object-fit: cover;
    border-radius: 2px;
    border: 1px solid rgba(255, 255, 255, 0.25);
}

.psia-tournament-title-count {
    min-width: 26px;
    height: 24px;
    padding: 0 7px;
    border-radius: 999px;
    border: 1px solid #3d5d98;
    background: #16294f;
    color: #e7edf2;
    font-size: 0.75rem;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.psia-match-cards {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.psia-match-card {
    border: 1px solid #223a67;
    border-radius: 12px;
    background: linear-gradient(140deg, #0f1b34 0%, #0c172d 100%);
    padding: 12px;
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: center;
}

.psia-match-card-left {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    flex: 1;
}

.psia-match-card-meta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    min-width: 70px;
}

.psia-match-time {
    color: #e6edf8;
    font-size: 1.15rem;
    line-height: 1;
}

.psia-match-card-body {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.psia-match-arena {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.psia-player-side {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    min-width: 0;
    flex: 1;
}

.psia-player-side--right {
    align-items: flex-end;
    text-align: right;
}

.psia-player-main {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.psia-player-avatar {
    width: 31px;
    height: 31px;
    border-radius: 50%;
    border: 1px solid #2e4e75;
    background: radial-gradient(circle at 30% 30%, #16355a 0%, #0d223a 100%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}

.psia-player-avatar-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    background: transparent;
}

.psia-player-avatar-icon {
    display: none!important;
    color: #8eaccd;
    font-size: 0.82rem;
}

.psia-player-avatar.is-fallback .psia-player-avatar-img {
    display: none;
}

.psia-player-avatar.is-fallback .psia-player-avatar-icon {
    display: inline-block!important;
}

.psia-player-main--right {
    justify-content: flex-end;
}

.psia-player-odd-chip {
    border: 1px solid #334f80;
    border-radius: 8px;
    background: #121f3d;
    color: #dbe7ff;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1;
    padding: 4px 6px;
    white-space: nowrap;
}

.psia-player-prob {
    width: min(220px, 100%);
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.psia-player-prob--right {
    align-items: flex-end;
}

.psia-player-prob-text {
    color: #cfe0ff;
    font-size: 0.86rem;
    font-weight: 700;
    line-height: 1;
}

.psia-player-prob-text.psia-prob-outcome-win {
    color: #22c55e;
}

.psia-player-prob-text.psia-prob-outcome-loss {
    color: #ef4444;
}

.psia-player-prob-text.psia-prob-outcome-neutral {
    color: #94a3b8;
}

.psia-player-prob-track {
    width: 100%;
    height: 5px;
    border-radius: 999px;
    background: #1e2f53;
    overflow: hidden;
}

.psia-player-prob-bar {
    display: block;
    height: 100%;
    border-radius: 999px;
}

.psia-player-prob-bar.psia-prob-outcome-win {
    background: linear-gradient(90deg, #16a34a 0%, #22c55e 100%);
}

.psia-player-prob-bar.psia-prob-outcome-loss {
    background: linear-gradient(90deg, #dc2626 0%, #ef4444 100%);
}

.psia-player-prob-bar.psia-prob-outcome-neutral {
    background: linear-gradient(90deg, #64748b 0%, #94a3b8 100%);
}

.psia-vs-pill {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #2f4778;
    background: radial-gradient(circle at 30% 30%, #1a2f58 0%, #0f1b34 100%);
    color: #95abd4;
    font-size: 0.74rem;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.psia-match-probs-values {
    display: flex;
    justify-content: space-between;
    font-weight: 700;
    color: #cfe0ff;
    font-size: 0.9rem;
    margin-bottom: 4px;
}

.psia-match-probs-bars {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.psia-prob-bar {
    display: block;
    height: 5px;
    border-radius: 999px;
}


.psia-match-card-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
}

.psia-odds-wrap {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.psia-odds-chip {
    border: 1px solid #334f80;
    border-radius: 8px;
    background: #121f3d;
    color: #dbe7ff;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 4px 6px;
}

.psia-match-action-btn {
    min-width: 130px;
}

.psia-brand-logo {
    display: inline-flex;
    align-items: baseline;
    gap: 1px;
    margin-right: 0 !important;
}

.psia-brand-letter {
    font-size: 2rem;
    font-weight: 900;
    line-height: 1;
    color: #15803d!important;
    text-shadow: 0 0 12px rgba(56, 241, 127, 0.28)!important;
    /*color: #24c8d6!important;
    text-shadow: 0 0 12px rgba(36, 200, 214, 0.28)!important;*/
}

.psia-brand-rest {
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: #ecf2ff;
}

.psia-nav-avatar {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    object-fit: cover;
    border: 1px solid #3a548d;
}

.psia-user-trigger-icon {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    border: 1px solid #3a548d;
    background: #10203f;
    color: #e6edf8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.psia-navbar-username {
    color: #e6edf8 !important;
    font-size: 0.9rem;
    font-weight: 600;
    max-width: 180px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.psia-tag-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    min-height: 30px;
    align-items: center;
}

.psia-filter-tag {
    border: 1px solid #355188;
    background: #122244;
    color: #dce8ff;
    border-radius: 999px;
    padding: 6px 12px;
    font-size: 0.83rem;
    font-weight: 600;
    transition: all 0.18s ease;
}

.psia-filter-tag:hover {
    border-color: #4d72bc;
    background: #1a3263;
    color: #ffffff;
}

.psia-filter-tag.is-selected {
    border-color: #2ac8d6;
    background: linear-gradient(135deg, #1faeb9 0%, #24c8d6 100%);
    color: #041d24;
}

.psia-filter-dropdown-btn {
    justify-content: space-between;
}

.psia-filter-dropdown-menu {
    max-height: 260px;
    overflow-y: auto;
    background: #0f1d3b;
    border: 1px solid #355188;
}

.psia-filter-dropdown-menu .dropdown-item {
    color: #dce8ff;
    font-size: 0.9rem;
}

.psia-filter-dropdown-menu .dropdown-item:hover {
    background: #1a3263;
    color: #ffffff;
}

.psia-filter-dropdown-menu .dropdown-item.active {
    background: #183869;
    color: #7fe7ff;
    font-weight: 700;
}

.psia-match-dot {
    display: inline-block;
    width: 11px;
    height: 11px;
    border-radius: 50%;
}

.psia-dot-green { background: #22c55e; }
.psia-dot-yellow { background: #facc15; }
.psia-dot-orange { background: #f97316; }
.psia-dot-blue { background: #3b82f6; }
.psia-dot-red-blink {
    background: #ef4444;
    animation: psia-blink-red 1s ease-in-out infinite;
}

.psia-player-link {
    color: inherit !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.psia-winner {
    color: #22c55e !important;
    font-weight: 700;
}

.psia-loser {
    color: #f59e0b !important;
    font-weight: 700;
}

.psia-final-score {
    color: #e2e8f0 !important;
    font-weight: 700;
}

@keyframes psia-blink-red {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}




/* =============================
   PSIA V2 - Mobile-first fixes
   ============================= */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

img,
video,
canvas,
svg {
    max-width: 100%;
    height: auto;
}

.wid-bg {
    width: 100% !important;
    max-width: 100% !important;
}

.container,
.container-fluid {
    max-width: 100%;
}

.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.table-responsive > .table,
.table-responsive > table {
    min-width: 640px;
}

.modal-content {
    width: min(95vw, 900px) !important;
    margin: 8vh auto !important;
    max-height: 84vh;
    overflow: auto;
}

.positioprofile {
    right: 12px !important;
    max-width: min(92vw, 320px);
    z-index: 1200;
}

input,
select,
textarea {
    width: 100%;
    max-width: 100%;
}

@media (max-width: 1000px) {
    .wid-bg {
        width: 100% !important;
    }
}

@media (max-width: 1140px) {
    .psia-home-layout {
        padding-left: 240px;
    }

    .psia-sidebar-card-fixed {
        width: 248px;
    }

    .psia-tournament-table-shell.p-3 {
        padding: 12px 0 !important;
    }

    .psia-tournament-item {
        font-size: 0.74rem;
        padding: 6px 7px;
    }

    .psia-match-card {
        padding: 10px;
        gap: 10px;
    }

    .psia-match-time {
        font-size: 1rem;
    }

    .psia-status {
        font-size: 0.68rem;
        padding: 0.22rem 0.56rem;
    }

    .psia-vs-pill {
        width: 30px;
        height: 30px;
        font-size: 0.68rem;
    }

    .psia-player-link {
        font-size: 0.88rem;
    }

    .psia-player-odd-chip {
        font-size: 0.64rem;
        padding: 3px 5px;
    }

    .psia-player-prob-text {
        font-size: 0.78rem;
    }

    .psia-match-action-btn {
        min-width: 112px;
        font-size: 0.82rem;
    }
}

@media (max-width: 960px) {
    .psia-home-layout {
        position: relative;
        padding-left: 0;
    }

    .psia-sidebar-card-fixed {
        position: absolute;
        top: 0;
        left: 0;
        width: min(300px, calc(100vw - 24px));
        z-index: 1080;
        box-shadow: 0 14px 40px rgba(0, 0, 0, 0.45);
    }

    .psia-mobile-tournament-btn {
        display: inline-flex!important;
    }

    body:not(.psia-tournament-menu-hidden) .psia-mobile-tournament-btn {
        display: none!important;
    }

    .psia-tournament-open-pin {
        display: none !important;
    }
}

@media (max-width: 768px) {
    .psia-app-rail {
        display: none !important;
    }

    .col-3,
    .col-4,
    .col-5,
    .col-6,
    .col-7,
    .col-8,
    .col-9 {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }

    .psia-live-headline > .col-4 {
        width: 33.3333%;
        max-width: 33.3333%;
        flex: 0 0 33.3333%;
    }

    .navbar-fixed-top {
        width: 100% !important;
    }

    .container-fluid.pt-3[style*="padding-top"] {
        padding-top: 0!important;
    }

    .row {
        margin-left: 0;
        margin-right: 0;
    }

    .modal-content {
        width: 95vw !important;
        margin: 6vh auto !important;
        padding: 16px !important;
    }

    .positioprofile {
        position: fixed !important;
        right: 8px !important;
        top: 64px;
    }

    .terminal,
    .terminal2 {
        height: 220px;
        font-size: 0.82rem;
    }

    .psia-table-scroll .finalTable,
    .psia-table-scroll .table {
        min-width: 860px;
    }

    .imgRealProfil--sm {
        width: 64px;
        height: 64px;
    }

    .psia-live-score-card {
        min-width: 90px;
    }

    .psia-live-main-card {
        padding: 12px;
    }

    .psia-live-top-row {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .psia-live-top-player--right,
    .psia-live-top-player {
        justify-content: center;
    }

    .psia-live-top-side--right {
        align-items: flex-start;
    }

    .psia-live-side-data {
        min-width: 100%;
    }

    .psia-live-side-metrics {
        grid-template-columns: 1fr;
    }

    .scoresp {
        font-size: 18px;
    }

    .psia-tag-wrap {
        gap: 6px;
    }

    .psia-main-shell {
        padding-right: 0;
    }

    .psia-tournament-list {
        max-height: min(60vh, 320px);
    }

    .psia-dashboard-top {
        padding: 12px;
    }

    .psia-dashboard-actions {
        width: 100%;
    }

    .psia-dashboard-actions .psia-pill-btn {
        width: 100%;
    }

    .psia-match-card {
        flex-direction: column;
        align-items: stretch;
    }

    .psia-match-card-right {
        align-items: stretch;
    }

    .psia-odds-wrap {
        justify-content: flex-start;
    }

    .psia-player-side,
    .psia-player-side--right {
        justify-content: flex-start;
        align-items: flex-start;
        text-align: left;
    }

    .psia-player-main--right {
        justify-content: flex-start;
    }

    .psia-player-main {
        flex-wrap: wrap;
    }

    .psia-player-prob,
    .psia-player-prob--right {
        align-items: flex-start;
        width: 100%;
    }
}

@media (max-width: 600px) {

    .psia-match-arena {
        flex-direction: column;
        align-items: normal;
    }
    
    .psia-match-arena .psia-vs-pill{
        align-self: center;
    }

    .col-12{
        padding: 0 !important;
    }
    .main-container.p-4{
        padding-left: 5px!important;
        padding-right: 5px!important;
    }
}

/* =============================
   PSIA V2 - Contrast hardening
   ============================= */

/* Neutralize legacy global text colors that caused low contrast */
span {
    color: inherit !important;
}

strong {
    color: var(--psia-text-primary) !important;
}

h6 {
    color: var(--psia-text-secondary) !important;
}

.text-initial {
    color: var(--psia-text-primary) !important;
}

#percentageLabel {
    color: var(--psia-text-primary) !important;
}

.close {
    color: var(--psia-text-primary) !important;
}

.close:hover,
.close:focus {
    color: #ffffff !important;
}

/* Keep action link readable in profile dropdown */
#navMenu {
    background-color: #16223f !important;
    color: var(--psia-text-primary) !important;
    border: 1px solid #2f4574;
}

/* Shared history cards styling (match_history + player_match_history) */
.match-card {
    background: linear-gradient(160deg, #0f1b34 0%, #0d1830 100%) !important;
    border: 1px solid var(--psia-border) !important;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 16px;
}

.match-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.match-info {
    flex: 1;
    min-width: 260px;
}

.match-players {
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--psia-text-primary) !important;
    margin-bottom: 8px;
}

.match-meta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    color: var(--psia-text-secondary) !important;
    font-size: 0.95rem;
}

.match-meta i {
    color: #6ea0ff;
}

.match-details {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #2a3f68;
}

.detail-item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--psia-text-primary) !important;
}

.detail-item strong {
    min-width: 92px;
}

.sets-display {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.set-badge {
    background: #162647;
    color: #d8e5ff;
    border: 1px solid #314b79;
    border-radius: 8px;
    padding: 4px 10px;
    font-size: 0.87rem;
}

.set-badge-label {
    color: inherit;
}

.set-badge-score {
    font-weight: 700;
}

/* =============================
   PSIA V2 - Flashscore-like skin
   (surface only: actions/probas unchanged)
   ============================= */
body.psia-theme-dark {
    --psia-bg: #010a0f;
    --psia-border: #12324b;
    --psia-border-soft: #0f2a40;
    --psia-surface-1: #051626;
    --psia-surface-2: #081c2c;
    --psia-surface-3: #0b2438;
    --psia-text-primary: #e4eff8;
    --psia-text-secondary: #97adbf;
    --psia-text-muted: #6e879b;
}

body.psia-theme-dark .navbar-fixed-top,
body.psia-theme-dark .navbar,
body.psia-theme-dark .wid-bg {
    background: linear-gradient(180deg, #082237 0%, #041726 100%) !important;
}

body.psia-theme-dark .container.wid-bg {
    background: linear-gradient(180deg, #010a0f 0%, #010a0f 100%) !important;
}

body.psia-theme-dark .psia-dashboard-top,
body.psia-theme-dark .psia-home-filters,
body.psia-theme-dark .psia-sidebar-card,
body.psia-theme-dark .psia-match-card,
body.psia-theme-dark .psia-date-switcher {
    background: linear-gradient(180deg, #071a2a 0%, #051624 100%) !important;
    border-color: #12324b !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.24);
}

body.psia-theme-dark .psia-date-switcher {
    background: #010a0f !important;
}

body.psia-theme-dark .psia-quick-action,
body.psia-theme-dark .psia-app-rail,
body.psia-theme-dark .psia-rail-item,
body.psia-theme-dark .psia-tournament-open-pin {
    background: linear-gradient(180deg, #081b2b 0%, #051624 100%) !important;
    border-color: #12324b !important;
}

body.psia-theme-dark .psia-rail-item:hover,
body.psia-theme-dark .psia-quick-action:hover,
body.psia-theme-dark .psia-tournament-item:hover,
body.psia-theme-dark .psia-tournament-open-pin:hover {
    background: #0c2438 !important;
    border-color: #1b4667 !important;
}

body.psia-theme-dark .psia-tournament-item {
    background: #071a2a;
    border-color: #173a57;
}

body.psia-theme-dark .psia-tournament-item.is-selected {
    border-color: #2ac8d6;
}

body.psia-theme-dark .psia-odds-chip,
body.psia-theme-dark .psia-player-odd-chip {
    background: #0a1f32;
    border-color: #214564;
}

body.psia-theme-dark .psia-vs-pill {
    border-color: #1f4564;
    background: radial-gradient(circle at 30% 30%, #12314b 0%, #081a2a 100%);
    color: #87a7c2;
}

html.psia-theme-dark,
body.psia-theme-dark {
    background: #010a0f !important;
}

/* =============================
   PSIA V2 - Theme switcher
   ============================= */
.psia-theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #3a548d;
    border-radius: 999px;
    background: #10203f;
    color: #e6edf8;
    width: 34px;
    height: 34px;
    padding: 0;
    font-size: 14px;
    line-height: 1;
}

.psia-theme-toggle:hover {
    background: #17305f;
    color: #ffffff;
}

.psia-theme-toggle i {
    font-size: 0.9rem;
}

.psia-nav-right {
    gap: 8px;
}

.psia-theme-toggle-inline {
    margin-left: 10px;
}

.psia-theme-toggle-floating {
    position: fixed;
    right: 14px;
    bottom: 84px;
    z-index: 1201;
}

/* =============================
   PSIA V2 - Light theme
   ============================= */
body.psia-theme-light {
    --psia-bg: radial-gradient(1200px 800px at 5% -20%, #d8e6ff88, transparent 55%),
        radial-gradient(900px 560px at 100% 0%, #d6f6ff88, transparent 50%),
        #f3f7ff;
    --psia-border: #d2ddef;
    --psia-border-soft: #e0e8f5;
    --psia-surface-1: #ffffff;
    --psia-surface-2: #f7faff;
    --psia-surface-3: #edf3fd;
    --psia-text-primary: #1a2f53;
    --psia-text-secondary: #4c6387;
    --psia-text-muted: #6f85a8;
}

html.psia-theme-light,
body.psia-theme-light {
    background: radial-gradient(1200px 800px at 5% -20%, #d8e6ff88, transparent 55%),
        radial-gradient(900px 560px at 100% 0%, #d6f6ff88, transparent 50%),
        #f3f7ff !important;
}

body.psia-theme-light .main-container,
body.psia-theme-light .card,
body.psia-theme-light .card2,
body.psia-theme-light .match-card,
body.psia-theme-light .filter-section,
body.psia-theme-light .pagination-section,
body.psia-theme-light .psia-home-filters,
body.psia-theme-light .psia-dashboard-top,
body.psia-theme-light .psia-sidebar-card,
body.psia-theme-light .psia-match-card,
body.psia-theme-light .psia-date-switcher,
body.psia-theme-light .psia-live-main-card {
    background: linear-gradient(180deg, #ffffff 0%, #f5f9ff 100%) !important;
    border-color: #d2ddef !important;
    box-shadow: 0 8px 24px rgba(32, 60, 110, 0.1) !important;
}

body.psia-theme-light .navbar-fixed-top,
body.psia-theme-light .navbar,
body.psia-theme-light .wid-bg,
body.psia-theme-light .psia-mobile-nav {
    background: linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%) !important;
    border-color: #d2ddef !important;
}

body.psia-theme-light .psia-app-rail,
body.psia-theme-light .psia-quick-action,
body.psia-theme-light .psia-rail-item,
body.psia-theme-light .psia-tournament-open-pin {
    background: linear-gradient(180deg, #ffffff 0%, #edf4ff 100%) !important;
    border-color: #cdd8eb !important;
}

body.psia-theme-light .psia-rail-item,
body.psia-theme-light .psia-mobile-nav a,
body.psia-theme-light .psia-date-icon,
body.psia-theme-light .psia-quick-action i {
    color: #365787 !important;
}

body.psia-theme-light .psia-rail-item.is-active {
    border-color: #15803d !important;
    background: #15803d !important;
    color: #e7f0ff !important;
}

body.psia-theme-light .psia-rail-item:hover,
body.psia-theme-light .psia-quick-action:hover,
body.psia-theme-light .psia-tournament-item:hover,
body.psia-theme-light .psia-tournament-open-pin:hover {
    background: #e7f0ff !important;
    border-color: #adc2e6 !important;
}

body.psia-theme-light .psia-tournament-item,
body.psia-theme-light .psia-odds-chip,
body.psia-theme-light .psia-player-odd-chip,
body.psia-theme-light .psia-sort-btn,
body.psia-theme-light .psia-filter-tag,
body.psia-theme-light .psia-live-filter-badge {
    background: #f8fbff !important;
    border-color: #b8cceb !important;
    color: #274470 !important;
}

body.psia-theme-light .psia-live-filter-badge:hover {
    border-color: #f97316 !important;
    color: #f97316 !important;
}

body.psia-theme-light .psia-live-filter-badge.is-active {
    border-color: #f97316 !important;
    background: linear-gradient(135deg, #ea580c 0%, #f97316 100%) !important;
    color: #ffffff !important;
}

body.psia-theme-light .psia-tournament-item.is-selected {
    border-color: #38f17f !important;
    background: #f8fbff !important;
    color: #274470 !important;
}

body.psia-theme-light .psia-tournament-item.is-selected span,
body.psia-theme-light .psia-tournament-item.is-selected .fallback-flag,
body.psia-theme-light .psia-tournament-item.is-selected .psia-tournament-count {
    color: #274470 !important;
}

body.psia-theme-light .psia-tournament-count,
body.psia-theme-light .psia-tournament-title-count {
    background: #f2f7ff !important;
    border-color: #b8cceb !important;
    color: #274470 !important;
}

body.psia-theme-light .psia-date-switcher,
body.psia-theme-light .psia-date-switcher * {
    color: #365787 !important;
}

body.psia-theme-light .set-badge {
    background: #365787 !important;
    border-color: #365787 !important;
}

body.psia-theme-light .set-badge-label {
    color: #ffffff !important;
}

body.psia-theme-light .set-badge-score {
    color: #000000 !important;
    background: #f2f7ff;
    border-radius: 6px;
    padding: 1px 6px;
}

body.psia-theme-light .psia-winner {
    color: #15803d !important;
    font-weight: 700;
}

body.psia-theme-light .psia-loser {
    color: #c2410c !important;
    font-weight: 700;
}

body.psia-theme-light .psia-winner .psia-player-link {
    color: #15803d !important;
}

body.psia-theme-light .psia-loser .psia-player-link {
    color: #c2410c !important;
}

body.psia-theme-light .psia-final-score {
    color: #1f365e !important;
    font-weight: 700;
}

body.psia-theme-light .psia-vs-pill,
body.psia-theme-light .psia-player-avatar {
    border-color: #bbd0ec !important;
    background: radial-gradient(circle at 30% 30%, #eaf3ff 0%, #dce9fb 100%) !important;
    color: #355680 !important;
}

body.psia-theme-light .psia-live-side-data {
    border-color: #c8d8ee !important;
    background: #f8fbff !important;
}

body.psia-theme-light .psia-live-chip {
    border-color: #bfd1ea !important;
    background: #edf4ff !important;
    color: #294872 !important;
}

body.psia-theme-light .psia-live-chip strong {
    color: #17345f !important;
}

body.psia-theme-light .psia-live-chip.psia-set-win {
    border-color: #7fd6a7 !important;
    background: #e8f9f0 !important;
}

body.psia-theme-light .psia-live-chip.psia-set-win strong {
    color: #15803d !important;
}

body.psia-theme-light .psia-live-chip.psia-set-loss {
    border-color: #f0a5a5 !important;
    background: #fff0f0 !important;
}

body.psia-theme-light .psia-live-chip.psia-set-loss strong {
    color: #b91c1c !important;
}

body.psia-theme-light .psia-live-chip.psia-set-neutral {
    border-color: #cfd8e6 !important;
    background: #f3f6fb !important;
}

body.psia-theme-light .psia-live-chip.psia-set-neutral strong {
    color: #4b5d79 !important;
}

body.psia-theme-light .psia-live-metric {
    border-color: #c2d4ed !important;
    background: #eef5ff !important;
}

body.psia-theme-light .psia-live-metric span {
    color: #4a678f !important;
}

body.psia-theme-light .psia-live-metric strong {
    color: #1c3a67 !important;
}

body.psia-theme-light .psia-player-prob-track {
    background: #d8e5f7 !important;
}

body.psia-theme-light .psia-match-probs-values {
    color: #2a476f !important;
}

body.psia-theme-light .scoresp {
    color: #1f3a64 !important;
}

body.psia-theme-light .table thead th {
    background: #e8f0fd !important;
    color: #1e355d !important;
    border-bottom-color: #c8d7ee !important;
}

body.psia-theme-light .table td,
body.psia-theme-light .table th,
body.psia-theme-light tbody td,
body.psia-theme-light td,
body.psia-theme-light th,
body.psia-theme-light .md-cell,
body.psia-theme-light .sm-cell,
body.psia-theme-light .align-middle {
    color: #1f365e !important;
    background-color: transparent !important;
    border-color: #dae3f2 !important;
}

body.psia-theme-light tr {
    background-color: #f9fcff !important;
}

body.psia-theme-light .btn-psia-ghost,
body.psia-theme-light .btn-outline-light {
    background: #f2f7ff !important;
    border: 1px solid #b8cceb !important;
    color: #234273 !important;
}

body.psia-theme-light .btn-psia-ghost:hover,
body.psia-theme-light .btn-outline-light:hover {
    background: #e5efff !important;
    border-color: #99b7e2 !important;
    color: #16345f !important;
}

body.psia-theme-light .btn-success {
    background: linear-gradient(135deg, #17a34a 0%, #22c55e 100%) !important;
    border-color: #2dbf61 !important;
    color: #ffffff !important;
}

body.psia-theme-light .btn-secondary {
    background: linear-gradient(135deg, #ecf2fb 0%, #dce8fa 100%) !important;
    border-color: #b8cceb !important;
    color: #234273 !important;
}

body.psia-theme-light .modal {
    background: rgba(23, 43, 79, 0.2) !important;
}

body.psia-theme-light .modal-content {
    background: linear-gradient(180deg, #ffffff 0%, #f7faff 100%) !important;
    color: #1f365e !important;
    border-color: #d4deed !important;
}

body.psia-theme-light .card-login {
    background-image: linear-gradient(180deg, #ffffff 0%, #eef4ff 100%) !important;
    color: #1f365e !important;
    border: 1px solid #d4deed;
}

body.psia-theme-light .text-white,
body.psia-theme-light .text-white-50,
body.psia-theme-light p,
body.psia-theme-light h1,
body.psia-theme-light h2,
body.psia-theme-light h3,
body.psia-theme-light h4,
body.psia-theme-light h5,
body.psia-theme-light h6,
body.psia-theme-light label,
body.psia-theme-light .versionJarviscolor,
body.psia-theme-light .psia-brand-rest,
body.psia-theme-light .psia-navbar-username {
    color: #1f365e !important;
}

body.psia-theme-light a,
body.psia-theme-light footer p,
body.psia-theme-light .vs-cell {
    color: #234273 !important;
}

body.psia-theme-light .psia-theme-toggle,
body.psia-theme-light .psia-settings-trigger {
    background: #ffffff;
    border-color: #bfd0e9;
    color: #1f365e;
}

body.psia-theme-light .psia-nav-avatar {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    border: 1px solid #bfd0e9;
    background: #ffffff;
}

body.psia-theme-light .psia-user-trigger-icon {
    border-color: #bfd0e9;
    background: #ffffff;
    color: #1f365e;
}

/* Ensure Bootstrap modals stay above app overlays */
.modal-backdrop.show {
    z-index: 2000 !important;
}

.modal.show {
    z-index: 2010 !important;
}

/* Extract matches - light theme pagination readability */
body.psia-theme-light .dataTables_wrapper .dataTables_paginate .paginate_button,
body.psia-theme-light .dataTables_wrapper .dataTables_paginate .paginate_button *,
body.psia-theme-light .dataTables_wrapper .dataTables_info {
    color: #000000 !important;
}

body.psia-theme-light .psia-theme-toggle:hover,
body.psia-theme-light .psia-settings-trigger:hover {
    background: #e9f1ff;
    color: #17345f;
}

body.psia-theme-light .psia-skeleton {
    background: linear-gradient(100deg, #dfeaf9 18%, #f4f8ff 30%, #dfeaf9 42%);
    background-size: 220% 100%;
}

body.psia-theme-light .psia-skeleton-card {
    background: linear-gradient(180deg, #ffffff 0%, #f6faff 100%);
    border: 1px solid #d2ddef;
}

body.psia-theme-light #loadingSpinner .spinner-grow,
body.psia-theme-light .loading-spinner .spinner-grow,
body.psia-theme-light .loading-spinner .spinner-border {
    color: #2a54c2 !important;
}

body.psia-theme-light .loading-spinner,
body.psia-theme-light .no-matches,
body.psia-theme-light .pagination-section {
    color: #2a446f !important;
}
