@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;700&display=swap');

@page {
    margin: 0.3cm;
    size: A4;
}

body {
    background-color: #ffffff;
    box-sizing: border-box;
    font-family: 'Roboto', sans-serif; 
}

.container_marksheet_template1 {
    width: 100%;
    height: auto;
    background: #fff;
    border: 2px solid #0b722d; 
    page-break-after: always;
}

.content_container_template1 {
    padding: 20px 2%;
}

/* --- Header Styles --- */
.header_template1 {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 10px;
    border-bottom: 2px solid #0b722d; 
    margin-bottom: 10px;
}

.logo_div_img_template1 img {
    width: 70px;
    height: auto;
    margin-right: 20px;
}

.header_institution {
    text-align: center;
}

.heading_template1 {
    font-size: 18pt;
    font-weight: 700;
    color: #0b722d; /* Updated main green */
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.heading_code_info_template1,
.heading_address_template1,
.contact_template1 {
    font-size: 9pt;
    font-weight: 600;
    color: #7f8c8d;
}

/* --- Report Title --- */
.header_info_container {
    text-align: center;
    margin-bottom: 30px;
}

.heading_report_template1 {
    font-size: 14pt;
    font-weight: 700;
    color: #0b722d; /* Updated main green */
    margin-bottom: 3px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.year_template1 {
    font-size: 10pt;
    font-weight: 600;
    color: #7f8c8d;
}

/* --- Student Info --- */
.student-info-container {
    width: 100%;
    margin-bottom: 10px;
}

.student_info_table_template1 {
    width: 100%;
    border-collapse: collapse;
    padding: 2px 5px;
}

.student_info_table_template1 td {
    padding: 2px 5px;
    font-size: 9pt;
    border-bottom: 1px dashed #ddd;
}

.student_info_table_template1 td.info-label {
    font-weight: 600;
    color: #0b722d; /* Updated main green */
    width: 25%; 
    text-align: left;
    padding-right: 5px;
}

.student_info_table_template1 td.info-colon {
    width: 1%;
    padding: 0;
    text-align: center;
}

.student_info_table_template1 td.info-value {
    width: 29%;
    padding-left: 5px;
}

/* --- Assessment Table --- */
.evaluation-container {
    width: 100%;
    margin-top: 10px;
    flex-grow: 1; /* Allows this section to fill remaining space */
}

.evaluation_table {
    width: 100%;
    border-collapse: collapse;
    background: #f8f9fa;
    font-size: 10pt;
}

.evaluation_table .report-title {
    background-color: #0b722d; /* Updated main green */
    color: white;
    font-size: 10pt;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    padding: 2px;
}

.evaluation_table thead tr th {
    background-color: #0b722d; /* Updated main green */
    color: white;
    padding: 5px;
    text-align: center;
    font-weight: 600;
    text-transform: uppercase;
}

.evaluation_table tbody tr th {
    padding: 5px;
    text-align: left;
    font-weight: 600;
}

.evaluation_table td {
    padding: 5px 5px;
    border: 1px solid #ddd;
    text-align: left;
    color: #333;
}

.subject-header {
    background-color: #0b722d !important; /* Updated main green */
    color: white !important;
    text-transform: uppercase;
    text-align: left !important;
    font-size: 10pt;
}

/* --- Remarks --- */
.remarks-container {
    width: 100%;
    margin-top: 10px;
}

.remarks-box {
    border: 1px solid #ddd;
    padding: 10px;
    min-height: 50px;
    font-size: 9pt;
    background: #f8f9fa;
}

/* --- Signatures --- */
.signature-container {
    display: flex;
    justify-content: space-around;
    margin-top: 50px;
}

.signature-box {
    text-align: center;
    width: 30%;
}

.signature-title {
    font-weight: 600;
    color: #0b722d; /* Updated main green */
    font-size: 10pt;
    margin-bottom: 5px;
}

.signature-line {
    border-top: 1px solid #0b722d; /* Updated main green */
    width: 100%;
    margin: 5px auto;
}

/* --- Footer --- */
.date-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-top: 20px;
}

.date_footer {
    font-size: 10pt;
    font-weight: 600;
    color: #0b722d; /* Updated main green */
}

.disclaimer {
    text-align: center;
    font-size: 9pt;
    color: #e74c3c;
    margin-top: 20px;
    font-style: italic;
}

.submit {
    text-align: center;
    margin-top: 20px;
}

#submit_marksheet {
    background-color: #0b722d; /* Updated main green */
    color: white;
    font-size: 10pt;
    font-weight: bold;
    text-transform: uppercase;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.3s ease;
}

#submit_marksheet:hover {
    background-color: #0a5d25; /* Slightly darker hover for #0b722d */
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}

#submit_marksheet:active {
    background-color: #084119; /* Even darker active state */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transform: translateY(1px);
}

/* --- Print Media Query --- */
@media print {
    /* Hide logo and school name only */
    .logo_div_img_template1,
    .heading_template1 {
        display: none !important;
    }

    /* Reset all colors and backgrounds for print */
    * {
        color: #000 !important;
        background: none !important;
        box-shadow: none !important;
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
    .header_template1{
        margin:0 !important;
        border-bottom:1px solid black;
    }
    .evaluation_table td{
        padding:0px;
    }

    body, html {
        background: #fff !important;
        font-family: sans-serif !important;
        font-size: 9.5pt !important; /* slightly smaller font */
        margin: 0.2cm !important; /* reduced margins */
    }

    /* Reduce padding/margin for containers */
    .container_marksheet_template1 {
        width:auto;
        border: 2px solid black;
        page-break-after: always;
        padding:5px 5px !important;
    }
    .header_info_container{
            margin-bottom: 0px;
    }
    .content_container_template1,
    .student-info-container {
        padding: 1px !important;
        margin: 0 !important;
        border: none !important;
        width: 100% !important;
    }
    .evaluation-container{
         padding: 1px !important;
        margin: 0 !important;
        border: none !important;
        width: auto;
    }
    .student_info_table_template1{
        border:1px solid black;
        margin-bottom: 2px !important;
    }
    /* --- Student Info Table: remove boxes --- */
    .student_info_table_template1 td,
    .student_info_table_template1 th {
        border: none !important; /* remove borders */
        padding: 2px !important;
    }

    /* Tables */
    table, th, td {
        border: 1px solid #000 !important;
        background: none !important;
        padding: 2px !important;
        font-size: 8.8pt !important; /* smaller text to save space */
    }

    /* Table headers and subject headers: lighten colors */
    .evaluation_table .report-title,
    .evaluation_table thead tr th,
    .subject-header,
    .signature-title,
    .date_footer {
        background: none !important;
        color: #555 !important; /* lighter black/gray instead of dark green/black */
        font-weight: 600 !important;
    }

    /* Remarks */
    .remarks-box {
        background: none !important;
        border: 1px solid #000 !important;
        color: #000 !important;
        font-size: 8.8pt !important;
        padding: 2px !important; /* smaller padding */
    }

    /* Signatures */
    .signature-box,
    .signature-line {
        border: none !important;
        color: #000 !important;
        font-size: 8.8pt !important;
    }

    /* Footer */
    .disclaimer {
        color: red !important;
        font-style: italic !important;
        font-size: 8pt !important;
        margin-top: 5px !important;
    }

    /* Remove buttons and interactive elements */
    #submit_marksheet,
    .submit {
        display: none !important;
    }

    /* Force content to fit one page */
    body {
        page-break-after: auto !important;
    }
}





