/* Louisiana QSO Party - Results Page CSS */

.leaderboard-table {
    tr {
        line-height:0.8em
    }
}

.results-type-selection {
    margin: 30px 0;
}

.results-type-selection h4 {
    color: #8B0000;
    font-size: 1.3rem;
    margin-bottom: 20px;
    text-align: center;
}

.option-card {
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 8px;
    padding: 25px;
    margin: 20px 0;
}

.option-card h5 {
    color: #8B0000;
    font-size: 1.2rem;
    margin-bottom: 10px;
}

.option-card p {
    color: #666;
    margin-bottom: 15px;
}

.option-divider {
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
    color: #8B0000;
    margin: 20px 0;
}

/* Certificate Styling */


.certificate-container {
    max-width: 800px;
    max-height: 990px;
    padding:75px;
    background-origin: border-box;
    background-clip:border-box;
    background-image: url('../images/border.jpg');
    background-size: 100% 100%;   /* stretches image to exactly fill the box */
    background-repeat: no-repeat;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}


.certificate {
    max-width: 650px;
    min-height:825px;;
    position: relative;
    padding: 10px 30px;
    display:flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

}

.certificate-header {
    text-align: center;
    margin-bottom: 20px;
    margin-top:40px;
}

.certificate-title {
    font-size: 2.5rem;
    color: #461D7C;
    font-weight: bold;
}

.certificate-org {
    font-size: 1.4rem;
    color: #000;
    margin-bottom: 10px;
    max-height:20px;
}

.certificate-subtitle {
    font-size: 1.2rem;
    color: #333;
    max-height:20px;
}

.certificate-body {
    margin-bottom: 30px
}

.certificate-callsign {
    font-size: 3.5rem;
    font-weight: bold;
    color: black;;
    text-align: center;
    max-height:75px;
}

.certificate-name {
    font-size: 1.7rem;
    color: black;
    text-align: center;
    max-height:60px;
    font-weight: bold;
    margin-bottom: 30p
}

.certificate-club {
    font-size: 1.5rem;
    color: black;
    text-align: center;
    max-height:40px;
}

.certificate-recognition {
    color:black;
    text-align: center;
    font-size: 1.1rem;
    margin: 20px 0;
}

.certificate-contest {
    text-align: center;
    font-size: 2rem;
    color: #0000CD;
    font-weight: bold;
    margin: 20px 0;
}

.certificate-score {
    text-align: center;
    font-size: 2rem;
}

.certificate-rankings {
    max-width:600px;;
    color:black;
}

ul.rankings-list {
    list-style-type: none; 
}

.rankings-item {
    font-size: 1.2rem;
    margin: 5px 0;
}

.certificate-footer-container {
    margin-top: auto;
}

.certificate-footer {
    min-width: 600px;
    display: flex;
    justify-content: space-between;
}

.certificate-signature {
    width: 300px;
    display: flex;
    font-size: 0.8rem;
    color: #999;
}

.certificate-logo {
    width: 300px;
    height: auto;
}

.signature {
    width: 200px;;
    height: auto;
}

.worked {
    margin-bottom: 20px;
    border-top: 2px solid black;
    display:flex;
    justify-content: flex-start;
    gap: 1rem;
}

/* Statistics Section */
.statistics-section {
    margin: 30px 0;
}

.section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    margin-top:20px;
}

/* Final Report */

.final-intro{
    margin: 0;
    white-space: pre-line;
}

.final-report-container {
    background: #fff;
    border-radius: 8px;
}

.final-report-container h2 {
    color: #8B0000;
    font-size: 2rem;
    margin: 30px 0 20px 0;
    border-bottom: 3px solid #8B0000;
    padding-bottom: 10px;
}

.final-report-container h3 {
    color: #8B0000;
    font-size: 1.5rem;
    margin: 20px 0 15px 0;
}

.final-report-container table {
    width: 100%;
    border-collapse: collapse;
    margin: 15px 0 30px 0;
}

.final-report-container table th,
.final-report-container table td {
    padding: 10px;
    text-align: left;
    border: 1px solid #ddd;
}

.final-report-container table th {
    background: #8B0000;
    color: #fff;
    font-weight: bold;
}

.final-report-container table tr:nth-child(even) {
    background: #f5f5f5;
}

/* Print Styles */
@media print {
    .container {
        box-shadow: none;
    }

    .banner, .separator, footer, .btn-print, .section-header button {
        display: none !important;
    }

    /* Print certificate only */
    body.print-certificate .statistics-section,
    body.print-certificate .final-report-section,
    body.print-certificate .lookup-section
    {
        display: none !important;
    }

    /* Print statistics only */
    body.print-statistics .certificate-section,
    body.print-statistics .final-report-section,
    body.print-statistics .lookup-section {
        display: none !important;
    }

    /* Print final report only */
    body.print-final-report .certificate-section,
    body.print-final-report .statistics-section,
    body.print-final-report .lookup-section {
        display: none !important;
    }

    .certificate {
        page-break-inside: avoid;
    }
}

@media (max-width: 768px) {
    .certificate {
        padding: 20px;
    }

    .certificate-callsign {
        font-size: 2.5rem;
    }

    .certificate-contest {
        font-size: 1.5rem;
    }

    .certificate-footer {
        flex-direction: column;
        gap: 20px;
    }
}
