body { font-size: .9rem; background: #f6f7fb; }
body.public { background: linear-gradient(135deg, #eef2ff 0%, #f6f7fb 60%); }
.sidebar { min-height: calc(100vh - 56px); }
@media (min-width: 992px) { .sidebar { position: sticky; top: 56px; height: calc(100vh - 56px); overflow-y: auto; } }
.sidebar .nav-link { color: #333; border-radius: 6px; margin: 1px 8px; }
.sidebar .nav-link.active, .sidebar .nav-link:hover { background: #e7efff; color: #0b5ed7; }
.card { border-radius: 10px; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.card.stat { border-left-width: 4px !important; }
.hover-lift:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,.1); transition: all .2s; }
.login-wrap { min-height: 70vh; display: flex; align-items: center; }
.login-card { max-width: 430px; width: 100%; border: 0; box-shadow: 0 10px 40px rgba(20,30,80,.15); }
.captcha { border-radius: 6px; border: 1px solid #ddd; cursor: pointer; }
.otp-input { letter-spacing: .5em; font-weight: 600; }
.wizard { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; padding: 0; }
.wizard li { flex: 1 1 140px; background: #e9ecef; border-radius: 6px; padding: 6px 10px; font-size: .85rem; }
.wizard li a { text-decoration: none; color: inherit; display: block; }
.wizard li.done { background: #d1e7dd; }
.wizard li.current { background: #0d6efd; color: #fff; font-weight: 600; }
.doc-slot { border: 1px dashed #bbb; border-radius: 8px; padding: 10px; background: #fff; }
.doc-slot.done { border-color: #198754; background: #f3fbf6; }
.doc-slot.error { border-color: #dc3545; background: #fdf3f4; }
.doc-thumb { width: 100%; height: 150px; object-fit: contain; background: #f1f3f5; border: 1px solid #dee2e6; border-radius: 6px; }
pre.legal { white-space: pre-wrap; font-family: inherit; font-size: .85rem; margin: 0; }
.legal-box { max-height: 320px; overflow-y: auto; background: #f8f9fa; border: 1px solid #dee2e6; border-radius: 6px; padding: 10px; }
.org-only, .foreign-only, .aadhaar-only { display: none; }
.show-org .org-only, .show-foreign .foreign-only, .show-aadhaar .aadhaar-only { display: block; }
