@charset "utf-8";
/* CSS Document */

/* Global Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Print Settings */
@page {
  margin: 0px;
  padding: 0px;
  size: auto;
}

@media print {
  .container_marksheet_template1 {
    width: 96.5% !important;
    height: 97.5% !important;
  }
  
  html, body {
    height: 100%;
  }
  
  .evaluation_table {
    min-width: 80% !important;
  }
  
  /* Hide form elements during printing */
  form, #error_div, #displayadd_homework_success {
    display: none;
  }
}

/* Body and HTML setup */
html, body {
  height: 100%;
  width: 100%;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

/* Marksheet Template Styling */
.container_marksheet_template1 {
  width: 97%;
  height: auto;
  border: 4px solid #4a90e2;
  border-radius: 12px;
  background: linear-gradient(135deg, #f0f8ff, #e0f7fa);
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  margin: 1% auto;
  padding: 20px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  position: relative;
}

.content_container_template1 {
  padding: 10px;
}

.header_template1 {
  font-size: 14pt;
  font-weight: 500;
  color: #444;
  margin-bottom: 5px;
}

.heading_template1 {
  font-size: 22pt;
  text-transform: uppercase;
  font-weight: bold;
  color: #0d47a1;
}

.heading_report_template1 {
  font-size: 28pt;
  font-weight: bold;
  font-family: 'Brush Script MT', cursive;
  color: #d32f2f;
  text-shadow: 1px 1px 1px #aaa;
}

.logo_div_img_template1 {
  display: inline-block;
  vertical-align: top;
}

.logo_div_img_template1 img {
  width: 80px;
  margin: 0px;
}

.header_info_container {
  display: inline-block;
  vertical-align: top;
  padding-left: 15px;
}

.student_info_template1 {
  width: 40%;
  display: inline-block;
  margin-top: 5px;
  background-color: #ffffffdd;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.student_info_table_template1 td {
  padding: 6px 8px;
  font-size: 12pt;
  color: #333;
}

.evaluation_table {
  border-collapse: collapse;
  width: 80%;
  margin-top: 10px;
  background-color: #ffffff;
  border: 2px solid #4a90e2;
  border-radius: 10px;
  overflow: hidden;
}

.evaluation_table th,
.evaluation_table td {
  padding: 10px;
  border: 1px solid #ddd;
  text-align: center;
}

.evaluation_table th {
  background-color: #1976d2;
  color: #fff;
  font-size: 12pt;
  text-transform: uppercase;
}

.evaluation_table td {
  font-size: 11pt;
  color: #444;
}

.evaluation_table tr:nth-child(even) {
  background-color: #f1f1f1;
}

.evaluation_table tr:hover {
  background-color: #e3f2fd;
}

/* Form Styling */
form {
  width: 80%;
  max-width: 800px;
  margin: 30px auto;
  padding: 20px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  background-color: #fff;
  clear: both;
  display: block;
  position: relative;
}

/* Table styling */
.table_container {
  width: 100%;
  margin-bottom: 20px;
  overflow-x: auto;
}

.table_padding {
  padding: 15px 0;
}

.table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1rem;
}

.table-striped tr:nth-child(even) {
  background-color: #f2f2f2;
}

.table th, .table td {
  padding: 12px 15px;
  border-bottom: 1px solid #ddd;
}

/* Utility Classes */
.fullstretch {
  width: 100%;
}

.alignleft {
  text-align: left;
}

.texttransformupper {
  text-transform: uppercase;
}

.margintop20 {
  margin-top: 20px;
}

.margintop50 {
  margin-top: 35px;
}

/* Input styling */
input[type="number"] {
  width: 100%;
  padding: 8px 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  box-sizing: border-box;
}

.code {
  font-family: monospace;
}

.form-control {
  display: block;
  width: 100%;
  padding: 8px 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  box-sizing: border-box;
  margin-top: 5px;
  margin-bottom: 10px;
}

label {
  font-weight: bold;
  margin-bottom: 5px;
  display: block;
}

/* Button styling */
#submit_marksheet {
  background-color: #4CAF50;
  color: white;
  padding: 10px 20px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 16px;
}

#submit_marksheet:hover {
  background-color: #45a049;
}

/* Message styling */
#error_div, #displayadd_homework_success {
  padding: 10px;
  margin-top: 15px;
  border-radius: 4px;
}

#error_div {
  background-color: #f8d7da;
  color: #721c24;
  border: 1px solid #f5c6cb;
}

#displayadd_homework_success {
  background-color: #d4edda;
  color: #155724;
  border: 1px solid #c3e6cb;
}

#error_message, #success_message {
  display: block;
  padding: 5px;
}

/* Wrapper to prevent overlapping */
.page_wrapper {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 100vh;
}