/* ============================================================
   CTS Portal — Candidate Portal Stylesheet
   ============================================================ */

/* ── Base ──────────────────────────────────────────────────── */
body { background: #f0f4ff; font-family: 'Segoe UI', sans-serif; }

/* ── Hero / Page Header ─────────────────────────────────────── */
.hero { background: linear-gradient(135deg,#1a237e,#283593,#3949ab); color:#fff; padding:50px 0 40px; }
.page-header { background: linear-gradient(135deg,#1a237e,#3949ab); color:#fff; padding:30px 0; }
.page-header a.back-link { color:rgba(255,255,255,.75); text-decoration:none; font-size:.85rem; }
.page-header a.back-link:hover { color:#fff; }
.nav-pill { background:rgba(255,255,255,.15); border-radius:30px; padding:6px 18px; color:#fff; text-decoration:none; font-size:.9rem; transition:.2s; }
.nav-pill:hover { background:rgba(255,255,255,.25); color:#fff; }

/* ── Post Cards (index) ─────────────────────────────────────── */
.post-card { border:none; border-radius:14px; box-shadow:0 3px 15px rgba(0,0,0,.08); cursor:pointer; transition:.2s; height:100%; }
.post-card:hover { transform:translateY(-4px); box-shadow:0 8px 25px rgba(57,73,171,.2); }
.fee-badge { background:linear-gradient(135deg,#e8f5e9,#c8e6c9); color:#1b5e20; border-radius:30px; padding:4px 14px; font-weight:700; font-size:.9rem; display:inline-block; }

/* ── Challan Search Box (index) ─────────────────────────────── */
.challan-check-box { background:#fff; border-radius:14px; padding:24px; box-shadow:0 3px 15px rgba(0,0,0,.08); }

/* ── Registration Form ──────────────────────────────────────── */
.form-card { border:none; border-radius:16px; box-shadow:0 4px 20px rgba(0,0,0,.08); }
.section-header { background:linear-gradient(135deg,#e8eaf6,#c5cae9); color:#1a237e; padding:10px 16px; border-radius:8px; font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:1.5px; margin:20px 0 12px; }
.required-star { color:#e53935; }
.submit-btn { background:linear-gradient(135deg,#1a237e,#3949ab); border:none; padding:14px 40px; font-size:1.05rem; border-radius:10px; }
.submit-btn:hover { opacity:.9; }

/* ── Challan View ───────────────────────────────────────────── */
.challan-card { border:none; border-radius:16px; box-shadow:0 4px 20px rgba(0,0,0,.08); }
.challan-box { border:3px dashed #3949ab; border-radius:16px; padding:24px; background:#f8f9ff; }

/* ── Status Badges (candidate-facing) ──────────────────────── */
.status-badge { font-size:1rem; padding:8px 24px; border-radius:30px; font-weight:700; display:inline-block; }
.status-paid     { background:#e8f5e9; color:#1b5e20; border:2px solid #a5d6a7; }
.status-unpaid   { background:#fff8e1; color:#f57f17; border:2px solid #ffe082; }
.status-rejected { background:#ffebee; color:#c62828; border:2px solid #ef9a9a; }

/* ── Detail View (challan, application) ─────────────────────── */
.detail-row { padding:10px 0; border-bottom:1px solid #f0f0f0; }
.detail-label { color:#9e9e9e; font-size:.75rem; font-weight:700; text-transform:uppercase; letter-spacing:.5px; }
.section-head { background:#e8eaf6; color:#1a237e; padding:8px 14px; border-radius:6px; font-size:.75rem; font-weight:800; text-transform:uppercase; letter-spacing:1px; margin:16px 0 8px; }

/* ── CNIC Results List ──────────────────────────────────────── */
.result-card { border:none; border-radius:12px; box-shadow:0 2px 10px rgba(0,0,0,.07); margin-bottom:12px; }

/* ── Footer ─────────────────────────────────────────────────── */
.site-footer { text-align:center; padding:16px; color:#9e9e9e; font-size:.82rem; border-top:1px solid #e0e0e0; margin-top:40px; }

/* ── Print Styles ───────────────────────────────────────────── */
@media print {
  .no-print { display:none !important; }
  body { background:#fff; }
  .page-header { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .challan-box { border:2px solid #3949ab !important; }
}

/* ── Responsive ─────────────────────────────────────────────── */
@media (max-width: 768px) {
  .hero { padding:30px 0 24px; }
  .challan-box { padding:14px; }
}
