/* FULL SCREEN "TV MODE" OVERRIDE 
   Uses fixed positioning to cover the whole WP Theme
*/
.marathon-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #000000;
    z-index: 99999; /* Sits on top of everything */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    overflow: hidden; /* No scrollbars */
}

/* Title Styling - Scaled with Viewport Height */
.mr-title {
    color: #fff;
    font-family: 'Arial Black', sans-serif;
    font-size: 5vh; /* Responsive font size */
    margin: 0 0 2vh 0;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-shadow: 0 0 10px rgba(178, 0, 0, 0.8);
    line-height: 1;
}

/* Outer Red Border Box */
.marathon-outer-border {
    border: 4px solid #B20000;
    padding: 2vh;
    background: #000;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: 0 0 30px rgba(178, 0, 0, 0.4);
}

/* WHEEL CONTAINER - THE "SMALL" ADJUSTED SIZE
    Using vmin ensures it fits the TV screen perfectly without scrolling.
    70vmin = 70% of the screen height.
*/
.marathon-wheel-container {
    position: relative;
    width: 65vmin;  
    height: 65vmin;
    margin-bottom: 3vh;
}

/* The Canvas - Fills container but keeps high resolution */
#marathon-wheel {
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

/* Pointer - Scaled Relative to Wheel */
.marathon-pointer {
    position: absolute;
    top: -2vmin; 
    left: 50%;
    transform: translateX(-50%);
    width: 0; 
    height: 0; 
    border-left: 3vmin solid transparent;
    border-right: 3vmin solid transparent;
    border-top: 5vmin solid #ffffff;
    z-index: 10;
    filter: drop-shadow(0 4px 4px rgba(0,0,0,0.5));
}

/* Spin Button - Large for TV Visibility */
.marathon-spin-btn {
    background: linear-gradient(to bottom, #d60000 0%, #8b0000 100%);
    color: #fff;
    border: 3px solid #FFD700;
    padding: 1.5vh 4vw;
    font-size: 4vh;
    font-weight: 900;
    border-radius: 60px;
    cursor: pointer;
    text-transform: uppercase;
    box-shadow: 0 5px 15px rgba(0,0,0,0.5);
    transition: transform 0.2s;
}

.marathon-spin-btn:active {
    transform: scale(0.95);
}

/* --- SweetAlert Custom Popup (TV Sized) --- */
.marathon-swal-popup {
    background: #000 !important;
    border: 3px solid #B20000 !important;
    border-radius: 20px !important;
    padding: 50px !important;
    width: 60vw !important; /* Wide popup */
}

.marathon-swal-title {
    color: #ffffff !important;
    font-family: 'Arial Black', sans-serif !important;
    font-size: 5vh !important;
}

.marathon-swal-content {
    color: #FFD700 !important;
    font-family: 'Arial Black', sans-serif !important;
    font-size: 4vh !important;
    margin-top: 20px !important;
    line-height: 1.4 !important;
}

.marathon-swal-confirm {
    background-color: #f2f2f2 !important;
    color: #000 !important;
    font-weight: 900 !important;
    padding: 15px 50px !important;
    font-size: 3vh !important;
    text-transform: uppercase !important;
    box-shadow: 0 0 15px rgba(255,255,255,0.3) !important;
}