/* *****************************************************************************************
 *                                                                                           *
 *   COPYRIGHT & WARNING NOTICE                                                              *
 *                                                                                           *
 *   This file and its contents are the intellectual property of Elton Zulu.                *
 *   All rights reserved. This code is protected and monitored.                             *
 *                                                                                           *
 *   Owner / Contact: Engr. Elton Zulu                                                       *
 *       WhatsApp: +260950401406                                                             *
 *       Email   : zuluelton@gmail.com                                                       *
 *       Location: Lusaka, Zambia                                                            *
 *                                                                                           *
 *   WARNING: Do NOT modify, copy, redistribute, or tamper with this code without           *
 *   explicit authorization.                                                                *
 *                                                                                           *
 *   Unauthorized use, changes, or distribution may result in malfunction and/or            *
 *   legal consequences.                                                                    *
 *                                                                                           *
 *   (C) Elton Zulu 2026. All rights reserved.                                              *
 *                                                                                           *
 ***************************************************************************************** */
        
        @font-face {
            font-family: 'World Athletics';
            src: url('../Font/WorldAthletics.ttf') format('truetype');
        }

        @font-face {
            font-family: 'World Athletics Headline';
            src: url('../Font/WorldAthleticsHeadline.ttf') format('truetype');
        }

        :root{
            --primary:#F99E1F;
            --primary-dark:#d88200;
            --secondary:#101820;
            --accent:#1a73e8;
            --bg:#eef2f7;
            --card:#ffffff;
            --text:#111827;
            --muted:#6b7280;
            --border:#e5e7eb;
            --success:#16a34a;
            --danger:#dc2626;
            --shadow:0 10px 30px rgba(0,0,0,.08);
        }

        *{
            margin:0;
            padding:0;
            box-sizing:border-box;
        }

        body{
            font-family:'World Athletics';
            background-image:
                linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.55)),
                url("../Images/WebImg/BackGround.jpg");
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
            background-attachment: fixed;
            color:var(--text);
            min-height:100vh;
            padding:30px;
            line-height:1.5;
            user-select: none;
        }

        /* LANGUAGE SWITCHER */
        #languageSwitcher{
            position:fixed;
            top:15px;
            right:25px;
            z-index:9999;
        }

        #languageBtn{
            background:#F99E1F;
            color:#000;
            border:none;
            padding:12px 18px;
            border-radius:10px;
            font-family:"World Athletics Headline";
            font-size:14px;
            cursor:pointer;
            transition:0.3s;
            display:flex;
            align-items:center;
            gap:8px;
        }

        #languageBtn::before{
            content:"";
            width:18px;
            height:18px;
            display:inline-block;
            background-image:url("../Images/WebImg/Lang_Black.png");
            background-size:contain;
            background-repeat:no-repeat;
            background-position:center;
        }

        #languageBtn:hover::before{
            background-image:url("../Images/WebImg/Lang_White.png");
        }

        #languageBtn:hover{
            background:#000;
            color:#fff;
        }

        #languageMenu{
            display:none;
            margin-top:8px;
            background:#EDEDED;
            border-radius:10px;
            overflow:hidden;
            min-width:90px;
            box-shadow:0 10px 25px rgba(0,0,0,0.25);
        }

        #languageMenu a{
            display:block;
            padding:12px 15px;
            color:#000;
            text-decoration:none;
            transition:0.3s;
            font-size:14px;
        }

        #languageMenu a:hover{
            background:#00a9ac;
            color:#fff;
        }

        /* GOOGLE TRANSLATE HIDE */
        .goog-te-banner-frame.skiptranslate{ display:none !important; }
        body{ top:0 !important; }
        .goog-te-gadget{ font-size:0 !important; }
        .goog-logo-link{ display:none !important; }
        .goog-te-gadget span{ display:none !important; }
        #google_translate_element{ display:none !important; }
        .goog-te-balloon-frame{ display:none !important; }
        .goog-text-highlight{ background:none !important; box-shadow:none !important; }
        body > .skiptranslate{ display:none !important; }

        .results-container{
            width:100%;
            max-width:1300px;
            margin:auto;
        }

        .meet-header{
            position:relative;
            overflow:hidden;
            background:
                linear-gradient(
                    135deg,
                    #101820 0%,
                    #182738 45%,
                    #1f3248 100%
                );
            border-radius:24px;
            padding:35px;
            margin-bottom:35px;
            display:flex;
            justify-content:space-between;
            align-items:center;
            gap:20px;
            box-shadow:0 20px 40px rgba(0,0,0,.18);
            border:1px solid rgba(255,255,255,.08);
            opacity: 0 !important;
            visibility: hidden !important;

        }


/* Show header immediately when data starts loading */
.meet-header.loaded {
    opacity: 1 !important;
    visibility: visible !important;
    transition: all 0.01s ease-in;
}

        .meet-header::before{
            content:"";
            position:absolute;
            width:400px;
            height:400px;
            background:rgba(249,158,31,.15);
            border-radius:50%;
            top:-180px;
            right:-100px;
            filter:blur(20px);
        }

        .meet-left{
            position:relative;
            z-index:2;
        }

        .meet-left h1{
            font-family:'World Athletics Headline';
            font-size:2.7rem;
            letter-spacing:.5px;
            margin-bottom:10px;
            color:white;
        }

        .meet-left p{
            font-family:'World Athletics Headline';
            color:rgba(255,255,255,.85);
            font-size:20px;
            margin:4px 0;
        }

        .meet-left strong{
            color:#fff;
            font-family:'World Athletics Headline';
        }

        .meet-left em{
            font-style:normal;
            color:#ffd089;
            font-weight: 700;
        }

        .meet-right{
            position:relative;
            z-index:2;
                }

        .header-controls{
            display:flex;
            gap:14px;
            flex-wrap:wrap;
            
        }

/* SINGLE CLEAN DROPDOWN WITH ARROW - FIXED WITH PNG */
.header-controls select {
    font-family:'World Athletics Headline';
    appearance: none !important; /* hides default arrow */
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    
    position: relative !important;
    padding: 14px 45px 14px 18px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    min-width: 190px !important;
    
    font-family: 'World Athletics', sans-serif !important; /* custom font */
    font-weight: 600 !important;
    color: #fff !important;
    cursor: pointer !important;
    transition: all .25s ease !important;

    /* Background: semi-transparent + custom arrow PNG */
    background-color: rgba(255,255,255,.12) !important;
   background-image: url("../Images/WebImg/DropDown.png") !important;  /* <- PNG path */
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 20px !important;
}

/* Hover state */
.header-controls select:hover {
    font-family:'World Athletics Headline';
    background-color: rgba(255,255,255,.18) !important;
    background-image: url("../Images/WebImg/DropDown.png") !important;  /* use hover PNG if you have one */
    border-color: rgba(255,255,255,.25) !important;
}

/* Focus state */
.header-controls select:focus {
    font-family:'World Athletics Headline';
    background-color: rgba(255,255,255,.20) !important;
    background-image: url("../Images/WebImg/DropDown.png") !important; /* keep arrow consistent */
    box-shadow: 0 0 0 3px rgba(249,158,31,.2) !important;
    border-color: #F99E1F !important;
    color: #fff !important; /* font color when active */
}

.header-controls select option {
    color: #000 !important; /* ensures option text is always black */
    font-family: 'World Athletics', sans-serif !important;
}

        .daytable{
            width:100%;
            border-collapse:collapse;
            background:var(--card);
            margin-bottom:30px;
            overflow:hidden;
            border-radius:0px 0px 6px 6px;
            box-shadow:var(--shadow);
            animation:fadeUp .4s ease;
            min-width:700px;
        }

        .daytable thead th{
            background:linear-gradient(135deg, var(--primary), #ffbe45);
            color:#111;
            padding:12px 12px;
            text-transform:uppercase;
            font-size:16px;
            font-weight:800;
            letter-spacing:.7px;
            border-bottom:1px solid rgba(0,0,0,.06);
        }


        
        .event-title{
            font-family:'World Athletics Headline';
            background:linear-gradient(135deg,#00a9ac 0%,#0081a3 50%,#006b92 100%)!important;
            color:var(--card) !important;
            text-align:left !important;
            font-size:18px !important;
            font-weight:800 !important;
            padding:14px 14px !important;
            border-bottom:2px solid #dbeafe;
        }

        .heat-info{
            background:#fff8e7 !important;
            color:#9a6700 !important;
            font-weight:700 !important;
            text-align:left !important;
            padding:14px 20px !important;
            font-size:16px !important;
            border-top:1px solid #fde68a;
            border-bottom:1px solid #fde68a;
        }

        .daytable tbody td{
            padding:8px 12px;
            border-bottom:1px solid var(--border);
            transition:.2s ease;
            text-align:center;
            vertical-align:middle;
        }

        .daytable tbody tr:hover{
            background:#f8fafc;
            transform:scale(1.002);
        }

        .position{
            font-weight:800;
            font-size:15px;
            width:70px;
        }

        .bib{
            font-size:16px;
        }

        .name{
            text-align:left !important;
            font-size:15px;
            color:#000;
            max-width:220px;
        }

        .country{
            padding: 0;
        }

        .country-wrap{
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
        }

        .flag-icon{
            width: 32px;
            height: 24px;
            border-radius: 1px;
            display: block;
        }

        .country-code{
            font-size: 14px;
            line-height: 1;
        }

        .result{
            font-size:15px;
        }

        .wind-status {
            font-size: 16px;
        }

        .wind-status:not(.status) {
            color: #059669 !important;
        }

        .status{
            font-size:15px !important;
            font-weight:800 !important;
            padding:6px 10px !important;
            border-radius:999px;
            display:inline-block;
        }

          .status.nm{
            color:#475569 !important;
            background:#e2e8f0;
        }

        .daytable.hide{
            display:none !important;
        }

        @keyframes fadeUp{
            from{
                opacity:0;
                transform:translateY(20px);
            }
            to{
                opacity:1;
                transform:translateY(0);
            }
        }

        .page-loader {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 99999;
            background: transparent;
            pointer-events: none;
        }

        .loader-content {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 20px;
            padding: 30px;
        }

        .loader-spinner {
            width: 70px;
            height: 70px;
            border: 4px solid rgba(249, 158, 31, 0.2);
            border-top: 5px solid #F99E1F;
            border-radius: 50%;
            animation: spin 1s cubic-bezier(0.5, 0, 0.5, 1) infinite;
            box-shadow: 
                0 0 20px rgba(249, 158, 31, 0.4),
                inset 0 0 20px rgba(255, 255, 255, 0.1);
        }

        .loader-text {
            font-family: 'World Athletics Headline';
            font-size: 24px;
            font-weight: 800;
            color: white;
            letter-spacing: 2px;
            text-shadow: 
                0 0 10px rgba(249, 158, 31, 0.8),
                0 2px 10px rgba(0,0,0,0.5);
            animation: textPulse 2s ease-in-out infinite;
        }

        @keyframes spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        @keyframes textPulse {
            0%, 100% { 
                transform: scale(1);
                filter: drop-shadow(0 0 10px rgba(249, 158, 31, 0.6));
            }
            50% { 
                transform: scale(1.05);
                filter: drop-shadow(0 0 20px rgba(249, 158, 31, 1));
            }
        }

        /* FADE OUT */
        .page-loader.fade-out {
            opacity: 0;
            transition: opacity 0.6s ease-out;
            pointer-events: none;
        }

       #footer {
    position: relative;
    bottom: 0;
    left: 0;
    width: 85%;
    padding: 14px 14px;
    border-top: 1px solid #ccc;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    margin:auto ;
    border-radius: 0px 0px 6px 6px;
    
    /* HIDE & POSITION BELOW DURING LOADING */
    opacity: 0;
    transform: translateY(100px);
    transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
   
}

#footer a { text-decoration: none;
            color: var(--secondary);
            
    }

#footer.loaded {
    opacity: 1;
    transform: translateY(0); /* SLIDES UP */
}

.footer-content {
    text-decoration: none;
    text-align: center;
    font-size: 14px;
    color: #000;
    line-height: 1;
}

.footer-content span {
    display: block;
}

        .version {
            margin-top: 4px;
        }

.loader-subtext {
    font-size: 14px;
    color: #fff;
    margin-top: 5px; /* adds a little space below the first line */
}

.meet-logo{
    width:140px;
    height:auto;
    margin-bottom:15px;
    display:block;
}



 @media (max-width:768px){
            .meet-logo{
        width:100px;
        margin-bottom:10px;
    }



            body{
                padding:10px;
            }

            .meet-header{
                font-family:'World Athletics Headline';
                flex-direction:column;
                align-items:flex-start;
                padding:20px;
                border-radius:18px;
            }

            .meet-left h1{
                font-family:'World Athletics Headline';
                font-size:1.5rem;
                line-height:1.2;
            }

            .meet-left p{
                font-family:'World Athletics Headline';
                font-size:14px;
            }

            .header-controls{
                width:100%;
                flex-direction:column;
            }

            .header-controls select{
                width:100%;
                min-width:unset;
                padding:12px;
                font-size:14px;
            }

            .daytable{
                width:100%;
                min-width:100%;
                overflow:hidden;
                border-radius:2px 2px 6px 6px;
            }

            .daytable thead th,
            .daytable tbody td{
                padding:8px 4px;
                font-size:12px;
            }

            .event-title{
                font-family:'World Athletics Headline';
                font-size:14px !important;
                padding:14px !important;
                line-height:1.3;
            }

            .heat-info{
                font-size:12px !important;
                padding:10px !important;
            }


/* FORCE TABLE TO USE FULL WIDTH */
.daytable thead,
.daytable tbody,
.daytable tr{
    width:100%;
}

.daytable thead th,
.daytable tbody td{
    padding:6px 3px;
    font-size:11px;
    word-break:break-word;
    overflow-wrap:break-word;
}
.name{  width:auto;
                min-width:110px;}
/* NORMAL EVENT TABLE WIDTHS */
.daytable:not(.relay-table) th:nth-child(1),
.daytable:not(.relay-table) td:nth-child(1){
    width:90%;
}

.daytable:not(.relay-table) th:nth-child(3),
.daytable:not(.relay-table) td:nth-child(3){
    width:18%;
}

.daytable:not(.relay-table) th:nth-child(4),
.daytable:not(.relay-table) td:nth-child(4){
    width:18%;
}

.daytable:not(.relay-table) th:nth-child(5),
.daytable:not(.relay-table) td:nth-child(5){
    width:15%;
}

.daytable:not(.relay-table) th:nth-child(6),
.daytable:not(.relay-table) td:nth-child(6){
    width:19%;
}

/* RELAY TABLE WIDTHS */
.relay-table th:nth-child(1),
.relay-table td:nth-child(1){
    width:13%;
}

.relay-table th:nth-child(2),
.relay-table td:nth-child(2){
    width:10%;
}

.relay-table th:nth-child(3),
.relay-table td:nth-child(3){
    width:25%;
}

.relay-table th:nth-child(4),
.relay-table td:nth-child(4){
    width:18%;
}

.relay-table th:nth-child(5),
.relay-table td:nth-child(5){
    width:25%;
}

.name{
    font-size:12px;
    line-height:1.2;
    white-space:normal;
}

.relay-athletes{
    font-size:10px;
    line-height:1.15;
}

.flag-icon{
    width:20px;
    height:14px;
}

.country-code{
    font-size:10px;
}

.daytable .bib{
    display:none;
}}
