/* ============================================================
   REPORT PAGE CSS — Print-ready report styles (Light)
   ============================================================ */

.rp-page {
  width: 794px;
  min-height: 1050px;
  background: #ffffff;
  color: #1a1a1a;
  font-family: 'Times New Roman', Times, serif;
  padding: 30px 36px;
  position: relative;
  box-shadow: 0 4px 24px rgba(0,0,0,0.12);
}

.rp-title {
  text-align: center;
  border-bottom: 3px solid #1a2a4a;
  padding-bottom: 10px;
  margin-bottom: 14px;
}
.rp-title h1 {
  font-family: 'Arial', sans-serif;
  font-size: 15px;
  font-weight: 800;
  color: #1a2a4a;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 4px;
}
.rp-title .rp-deco { color: #555; letter-spacing: 4px; font-size: 12px; }

.rp-info {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 10px;
  margin-bottom: 12px;
  font-size: 11px;
}
.rp-info-row { display: flex; align-items: baseline; gap: 4px; padding: 2px 0; }
.rp-info-label { font-weight: 700; white-space: nowrap; color: #222; font-family: Arial, sans-serif; }
.rp-info-value { border-bottom: 1px solid #aaa; flex: 1; padding: 0 4px; color: #333; }

.rp-period-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 2px solid #1a2a4a;
  border-radius: 3px;
  margin-bottom: 12px;
  overflow: hidden;
}
.rp-period-cell:first-child { border-right: 2px solid #1a2a4a; }
.rp-cell-header {
  background: #1a2a4a;
  color: #fff;
  font-family: Arial, sans-serif;
  font-size: 9.5px;
  font-weight: 700;
  text-align: center;
  padding: 4px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.rp-period-from-to { font-size: 11px; padding: 6px 10px; }
.rp-cycle-options {
  display: flex; gap: 16px; padding: 6px 10px;
  font-size: 11px; align-items: center;
}
.rp-cycle-check { display: flex; align-items: center; gap: 5px; }
.rp-checkbox {
  width: 13px; height: 13px;
  border: 1.5px solid #333;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 10px; font-weight: 800; color: #1a2a4a;
}

.rp-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 11px;
  margin-bottom: 12px;
}
.rp-table th, .rp-table td {
  border: 1.5px solid #1a2a4a;
  padding: 5px 8px;
  text-align: center;
  vertical-align: middle;
}
.rp-table thead th {
  background: #1a2a4a;
  color: #ffffff;
  font-family: Arial, sans-serif;
  font-weight: 700;
  font-size: 10px;
}
.rp-table tbody tr:nth-child(even) { background: #f0f4ff; }
.rp-table tbody td.sl { font-weight: 700; color: #333; width: 28px; }
.rp-table tbody td.days-p { color: #155724; font-weight: 700; }
.rp-table tbody td.days-a { color: #7b1414; font-weight: 700; }
.rp-table tfoot td {
  background: #e8edf8;
  font-weight: 800;
  font-size: 11px;
  border-top: 2px solid #1a2a4a;
}

.rp-cert {
  border: 2px solid #1a2a4a;
  border-radius: 3px;
  padding: 10px 14px;
  text-align: center;
  margin-bottom: 12px;
  background: #f8faff;
}
.rp-cert-title {
  font-family: Arial, sans-serif;
  font-weight: 800;
  font-size: 11px;
  color: #1a2a4a;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: 5px;
}
.rp-cert-text { font-size: 10px; color: #333; line-height: 1.6; }

.rp-sig-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 2px solid #1a2a4a;
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 12px;
}
.rp-sig-col:first-child { border-right: 2px solid #1a2a4a; }
.rp-sig-header {
  background: #1a2a4a;
  color: #fff;
  font-family: Arial, sans-serif;
  font-weight: 700;
  font-size: 9px;
  text-align: center;
  padding: 5px 4px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.rp-sig-body { padding: 8px 12px; }
.rp-sig-row { display: flex; align-items: baseline; gap: 4px; margin-bottom: 5px; font-size: 10px; }
.rp-sig-lbl { font-weight: 700; color: #333; white-space: nowrap; font-family: Arial, sans-serif; }
.rp-sig-val { border-bottom: 1px solid #999; flex: 1; padding: 0 3px; color: #222; min-width: 60px; }
.rp-sig-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 16px; }
.rp-sig-line { border-bottom: 1px solid #999; margin-top: 18px; margin-bottom: 3px; }
.rp-sig-line-lbl { font-size: 8.5px; text-align: center; color: #666; }

.rp-notes { font-size: 10px; color: #333; margin-top: 8px; }
.rp-notes strong { color: #1a2a4a; }
.rp-notes ul { margin: 3px 0 0 16px; }
.rp-notes li { margin-bottom: 2px; }
