:root {
  --primary: #3157f6;
  --secondary: #6a35ff;
  --dark: #111827;
  --muted: #6b7280;
  --soft: #f4f7ff;
}
body { font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--dark); background: #fff; }
.glass-nav { background: rgba(255,255,255,.86); backdrop-filter: blur(16px); box-shadow: 0 10px 30px rgba(17,24,39,.06); }
.navbar { padding-top: 14px; padding-bottom: 14px; }
.brand-mark { display:inline-flex; width:34px; height:34px; align-items:center; justify-content:center; border-radius:12px; background:linear-gradient(135deg,var(--primary),var(--secondary)); color:#fff; margin-right:8px; }
.hero-section { min-height: 92vh; display:flex; align-items:center; padding:120px 0 70px; background: radial-gradient(circle at top left, #e6ecff 0, transparent 34%), linear-gradient(135deg, #ffffff 0%, #f8faff 100%); overflow:hidden; }
.hero-card { border:0; border-radius:28px; box-shadow:0 30px 70px rgba(49,87,246,.14); animation: floatCard 6s ease-in-out infinite; }
@keyframes floatCard { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
.badge-soft { background:#eaf0ff; color:#3157f6; border-radius:999px; padding:8px 14px; font-weight:600; }
.gradient-text { background:linear-gradient(135deg,var(--primary),var(--secondary)); -webkit-background-clip:text; color:transparent; }
.btn-primary { background:linear-gradient(135deg,var(--primary),var(--secondary)); border:0; box-shadow:0 12px 25px rgba(49,87,246,.25); }
.btn-primary:hover { transform: translateY(-1px); box-shadow:0 16px 30px rgba(49,87,246,.32); }
.section-pad { padding:90px 0; }
.feature-card, .form-shell, .admin-card { border:0; border-radius:24px; box-shadow:0 18px 45px rgba(17,24,39,.08); transition:.25s ease; }
.feature-card:hover { transform:translateY(-6px); }
.icon-pill { width:52px; height:52px; display:flex; align-items:center; justify-content:center; border-radius:18px; background:var(--soft); color:var(--primary); font-size:22px; }
.form-control, .form-select { border-radius:14px; padding:12px 14px; border:1px solid #dbe3f0; }
.form-control:focus, .form-select:focus { border-color:#6a85ff; box-shadow:0 0 0 .2rem rgba(49,87,246,.12); }
.suggestion-box { position:absolute; z-index:1000; width:100%; background:white; border:1px solid #e5e7eb; border-radius:16px; box-shadow:0 15px 35px rgba(17,24,39,.12); overflow:hidden; display:none; }
.suggestion-item { padding:12px 16px; cursor:pointer; }
.suggestion-item:hover { background:#f4f7ff; }
.status-chip { display:inline-flex; align-items:center; border-radius:999px; padding:7px 14px; font-weight:700; }
.status-Processing { background:#fff7ed; color:#c2410c; }
.status-Accepted { background:#ecfdf5; color:#047857; }
.status-Rejected { background:#fef2f2; color:#b91c1c; }
.status-Halt { background:#f3f4f6; color:#374151; }
.footer-section { background:#0f172a; color:#e5e7eb; }
.footer-section .small { color:#cbd5e1; }
.footer-link { display:block; color:#cbd5e1; text-decoration:none; margin-bottom:6px; }
.footer-link:hover { color:#fff; }
.reveal { opacity:0; transform:translateY(24px); transition:.7s ease; }
.reveal.active { opacity:1; transform:translateY(0); }
.admin-layout { background:#f6f8fc; min-height:100vh; }
.sidebar { background:#111827; color:white; min-height:100vh; }
.sidebar a { color:#d1d5db; text-decoration:none; display:block; padding:12px 14px; border-radius:12px; }
.sidebar a:hover, .sidebar a.active { background:rgba(255,255,255,.1); color:#fff; }
.table thead th { font-size:13px; color:#6b7280; text-transform:uppercase; letter-spacing:.03em; }
@media (max-width: 991px) { .hero-section { min-height:auto; padding-top:105px; } .sidebar { min-height:auto; } }
