
/* ==========================================
   PRO RACE TIMING - HISTORICAL RESULTS
   ========================================== */

/* Main results section */

.results-container {
    margin-top: 5px;
    margin-bottom: 30px;
}

/* ==========================================
   SEARCH
   ========================================== */

.results-search {
    max-width: 700px;
    margin: 12px auto 20px;
    padding: 15px;
    background: #c9d3ec;
    border: 1px solid #90a5d8;
    border-radius: 6px;
}

.results-search label {
    display: block;
    font-size: 17px;
    font-weight: bold;
    color: #2a4179;
    margin-bottom: 8px;
}

.results-search-row {
    display: flex;
    gap: 10px;
    align-items: center;
}

.results-search input {
    flex: 1;
    min-width: 0;
    padding: 10px;
    font-family: inherit;
    font-size: 16px;
    border: 1px solid #90a5d8;
    border-radius: 4px;
}

.results-search button {
    padding: 10px 18px;
    font-family: inherit;
    font-size: 15px;
    font-weight: bold;
    background: #2a4179;
    color: white;
    border: 0;
    border-radius: 4px;
    cursor: pointer;
}

.results-search button:hover,
.results-search button:focus {
    background: #5B6170;
}

.results-count {
    margin-top: 10px;
    font-size: 13px;
    color: #5B6170;
}

/* ==========================================
   RESULTS TABLE
   ========================================== */

.results-table-scroll {
    width: 100%;
    overflow-x: auto;
}

.results-table {
    width: 100%;
    border-collapse: collapse;
    background: white;
    font-family: Verdana, Arial, sans-serif;
    font-size: 15px;
}

.results-table th,
.results-table td 
{
    color: #183c90;
    padding: 10px 12px;
    border: 1px solid #f8f8f9;
}

.results-table thead th {
    background: #2a4179;
    color: white;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
}

/* Green-bar-style alternating rows */

.results-table tbody tr:nth-child(odd) {
    background: #c9d4ec;
}

.results-table tbody tr:nth-child(even) {
    background: #bbc8e7;
}

/* Column sizing and alignment */

.result-date {
    width: 1%;
    white-space: nowrap;
    text-align: center;
}

.result-name {
    width: auto;
    overflow-wrap: anywhere;
}

.result-updated {
    width: 1%;
    white-space: nowrap;
    text-align: center;
}

.result-size {
    width: 1%;
    white-space: nowrap;
    text-align: right;
}

.result-format {
    width: 1%;
    white-space: nowrap;
    text-align: center;
}

/* File hyperlinks */

.results-table a {
    color: #183c90;
    text-decoration: underline;
}

.results-table a:hover,
.results-table a:focus {
    color: #546089;
}

/* Messages */

.results-empty {
    padding: 20px;
    text-align: center;
    color: #546089;
    font-weight: bold;
}

.results-note {
    margin: 20px auto;
    text-align: center;
    color: #5b6170;
    font-size: 13px;
}




/* File information tooltip */

.file-info {
    display: inline-block;
    position: relative;
    margin-left: 1px;
}

.file-info-button 
{
    display: none;
    cursor: pointer;
    border: none;
    background: transparent;
    color: #2a4179;
    font-size: 18px;
    padding: 2px 5px;
}

.file-tooltip {
    display: none;
    position: absolute;
    z-index: 100;
    top: 100%;
    left: 0;
    width: max-content;
    max-width: min(280px, 85vw);
    padding: 12px;
    background: #ffffff;
    color: #26334e;
    border: 1px solid #546089;
    border-radius: 5px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.25);
    font-size: 13px;
    line-height: 1.6;
    white-space: normal;
}

/* Desktop mouse hover */
.file-info:hover .file-tooltip,
.file-info:focus-within .file-tooltip,
.file-info.is-open .file-tooltip {
    display: block;
}



/* ==========================================
   MOBILE
   ========================================== */

@media (max-width: 700px) 
{
    .file-info {
        display: inlineblock



        white-space: nowrap;
        position: ative;
 ;
    }
    
    .file-info-button {
        display: inlineblock;;
    }
    .results-search {
        padding: 10px;
        margin-bottom: 12px;
    }

    .results-search label {
        font-size: 15px;
    }

    .results-search button {
        padding: 10px 12px;
    }

    .results-table {
        font-size: 13px;
    }

    .results-table th,
    .results-table td {
        padding: 8px 6px;
    }

    .results-table thead th {
        font-size: 13px;
        text-align: center;
    }

    .result-name {
        min-width: 150px;
    }
}
