/* Shared automatic light/dark theme for public pages and the admin dashboard. */
.vci-theme-toggle { align-items:center; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.32); border-radius:50%; color:inherit; cursor:pointer; display:inline-flex; font-size:.9rem; font-weight:800; height:34px; justify-content:center; min-height:34px; padding:0; transition:.2s ease; width:34px; }
.vci-theme-toggle:hover { background:rgba(255,255,255,.22); transform:translateY(-1px); }
.vci-theme-toggle__icon { font-size:1rem; line-height:1; }
.vci-theme-toggle__label { display:none; }
.vci-navbar .navbar-nav { margin-right:58px; }
.vci-navbar .vci-theme-toggle { margin:0 !important; position:absolute; right:18px; top:50%; transform:translateY(-50%); }
.vci-navbar .vci-theme-toggle:hover { transform:translateY(calc(-50% - 1px)); }
html[data-vci-theme="dark"] { color-scheme:dark; background:#101827; scrollbar-color:#3d597a #101827; }
html[data-vci-theme="dark"] body { background:#101827; color:#dbe7f5; }
html[data-vci-theme="dark"] .bg-white,html[data-vci-theme="dark"] .bg-light,html[data-vci-theme="dark"] .container-xxl:not(.vci-hero),html[data-vci-theme="dark"] .contact-part { background-color:#172235 !important; color:#dbe7f5; }
html[data-vci-theme="dark"] .text-dark,html[data-vci-theme="dark"] h1,html[data-vci-theme="dark"] h2,html[data-vci-theme="dark"] h3,html[data-vci-theme="dark"] h4,html[data-vci-theme="dark"] h5,html[data-vci-theme="dark"] h6 { color:#f4f8ff !important; }
html[data-vci-theme="dark"] p,html[data-vci-theme="dark"] label,html[data-vci-theme="dark"] .form-control,html[data-vci-theme="dark"] .form-select { color:#dbe7f5; }
html[data-vci-theme="dark"] .form-control,html[data-vci-theme="dark"] .form-select,html[data-vci-theme="dark"] textarea,html[data-vci-theme="dark"] input,html[data-vci-theme="dark"] select { background:#111c2d !important; border-color:#33465e !important; color:#edf5ff !important; }
html[data-vci-theme="dark"] .footer { background:#0b1320 !important; }
html[data-vci-theme="dark"] .content-wrapper { background:#111827 !important; color:#dbe7f5; }
html[data-vci-theme="dark"] .main-header { background:#162338 !important; border-color:#2b405b !important; }
html[data-vci-theme="dark"] .main-header .nav-link,html[data-vci-theme="dark"] .main-header span { color:#e8f1ff !important; }
html[data-vci-theme="dark"] .main-header .input-group { background:#162338 !important; }
html[data-vci-theme="dark"] .card,html[data-vci-theme="dark"] .card-header,html[data-vci-theme="dark"] .card-footer,html[data-vci-theme="dark"] .main-footer { background:#172235 !important; border-color:#30425b !important; color:#dbe7f5 !important; }
html[data-vci-theme="dark"] .table,html[data-vci-theme="dark"] .table td,html[data-vci-theme="dark"] .table th { color:#dbe7f5 !important; border-color:#30425b !important; }
html[data-vci-theme="dark"] .table tr:nth-child(even) { background:#1d2b40 !important; }
html[data-vci-theme="dark"] .text-muted { color:#aabbd0 !important; }
html[data-vci-theme="dark"] .vci-admin-footer { background:linear-gradient(135deg,#172235,#101827) !important; }
html[data-vci-theme="dark"] .vci-theme-toggle { background:#223450; border-color:#3c5577; color:#f4f8ff; }
html[data-vci-theme="light"] .main-header .vci-theme-toggle { background:#edf5ff; border-color:#c6d8ee; color:#123557; }

/* Modern admin data tables: shared by every dashboard list. */
.content-wrapper .card { border:1px solid #dce5f0; border-radius:14px; box-shadow:0 8px 24px rgba(15,36,64,.06); overflow:visible; }
.content-wrapper .card-header { align-items:center; background:linear-gradient(135deg,#fff,#f5f9ff); border-bottom:1px solid #e3ebf5; display:flex; min-height:62px; padding:1rem 1.25rem; }
.content-wrapper .card-header .card-title { color:#17395e; font-size:1.08rem; font-weight:700; }
.content-wrapper .card-body:has(.table) { padding:0; }
.content-wrapper .card-body:has(> .table),
.content-wrapper .card-body:has(> .dataTables_wrapper) { overflow-x:auto; -webkit-overflow-scrolling:touch; }
.content-wrapper .table { border-collapse:separate; border-spacing:0; font-size:.93rem; margin:0; }
.content-wrapper .table thead th { background:#eef5fc; border-color:#dce6f1; color:#25476c; font-size:.77rem; font-weight:800; letter-spacing:.035em; padding:.9rem .85rem; text-transform:uppercase; vertical-align:middle; white-space:nowrap; }
.content-wrapper .table tbody td { border-color:#e6edf5; padding:.85rem; vertical-align:middle; }
.content-wrapper .table.table-striped tbody tr:nth-of-type(odd),.content-wrapper .table tbody tr:nth-of-type(odd) { background:#fff; }
.content-wrapper .table.table-striped tbody tr:nth-of-type(even),.content-wrapper .table tbody tr:nth-of-type(even) { background:#f8fbfe; }
.content-wrapper .table-hover tbody tr:hover { background:#eef7ff !important; box-shadow:inset 3px 0 #1b8fff; }
.content-wrapper .table .btn { border-radius:7px; font-size:.81rem; font-weight:700; white-space:nowrap; }
.content-wrapper .vci-enquiry-running-table { table-layout:fixed; width:100%; }
.content-wrapper .vci-enquiry-running-table th,.content-wrapper .vci-enquiry-running-table td { overflow-wrap:anywhere; white-space:normal; }
.content-wrapper .vci-enquiry-running-table th:nth-child(1) { width:5%; }
.content-wrapper .vci-enquiry-running-table th:nth-child(2) { width:18%; }
.content-wrapper .vci-enquiry-running-table th:nth-child(3) { width:13%; }
.content-wrapper .vci-enquiry-running-table th:nth-child(4) { width:23%; }
.content-wrapper .vci-enquiry-running-table th:nth-child(5) { width:21%; }
.content-wrapper .vci-enquiry-running-table th:nth-child(6) { width:8%; }
.content-wrapper .vci-enquiry-running-table th:nth-child(7) { width:12%; }
.content-wrapper .vci-enquiry-running-table .text-muted { font-size:.78rem; line-height:1.35; margin-top:.25rem; }
.content-wrapper .vci-website-enquiries-table { table-layout:fixed; width:100%; }
.content-wrapper .vci-website-enquiries-table th,.content-wrapper .vci-website-enquiries-table td { overflow-wrap:anywhere; white-space:normal; }
.content-wrapper .vci-website-enquiries-table th:nth-child(1) { width:5%; }
.content-wrapper .vci-website-enquiries-table th:nth-child(2) { width:13%; }
.content-wrapper .vci-website-enquiries-table th:nth-child(3) { width:17%; }
.content-wrapper .vci-website-enquiries-table th:nth-child(4) { width:20%; }
.content-wrapper .vci-website-enquiries-table th:nth-child(5) { width:12%; }
.content-wrapper .vci-website-enquiries-table th:nth-child(6) { width:20%; }
.content-wrapper .vci-website-enquiries-table th:nth-child(7) { width:13%; }
.content-wrapper .vci-student-certificates th,.content-wrapper .vci-student-certificates td { white-space:normal; overflow-wrap:anywhere; }
.content-wrapper .vci-student-certificates th:nth-child(1) { width:5%; }
.content-wrapper .vci-student-certificates th:nth-child(2) { width:16%; }
.content-wrapper .vci-student-certificates th:nth-child(3) { width:20%; }
.content-wrapper .vci-student-certificates th:nth-child(4),.content-wrapper .vci-student-certificates th:nth-child(5) { width:13%; }
.content-wrapper .vci-student-certificates th:nth-child(6) { width:10%; }
.content-wrapper .vci-student-certificates th:nth-child(7) { width:23%; }
.content-wrapper .dataTables_wrapper { padding:1rem 1.25rem; }
.content-wrapper .dataTables_wrapper .table { margin-top:.7rem !important; }
html[data-vci-theme="dark"] .content-wrapper .card-header { background:linear-gradient(135deg,#1a2b43,#142237) !important; border-color:#30425b !important; }
html[data-vci-theme="dark"] .content-wrapper .card-header .card-title,html[data-vci-theme="dark"] .content-wrapper .table thead th { color:#e5f2ff !important; }
html[data-vci-theme="dark"] .content-wrapper .table thead th { background:#213854 !important; border-color:#304b6a !important; }
html[data-vci-theme="dark"] .content-wrapper .table.table-striped tbody tr:nth-of-type(odd),html[data-vci-theme="dark"] .content-wrapper .table tbody tr:nth-of-type(odd) { background:#172235 !important; }
html[data-vci-theme="dark"] .content-wrapper .table.table-striped tbody tr:nth-of-type(even),html[data-vci-theme="dark"] .content-wrapper .table tbody tr:nth-of-type(even) { background:#1b2a40 !important; }
html[data-vci-theme="dark"] .content-wrapper .table-hover tbody tr:hover { background:#243b58 !important; }
@media (max-width:575.98px) { .vci-navbar .navbar-nav { margin-right:0; } .vci-navbar .vci-theme-toggle { right:70px; } }

/* Student-owned profile editing. */
.vci-student-profile-photo { width:min(100%,290px); height:350px; object-fit:cover; object-position:center; border-radius:14px; box-shadow:0 10px 24px rgba(16,43,82,.16); }
.vci-education-editor td { min-width:140px; vertical-align:middle; }
.vci-education-editor .form-control { min-width:110px; }

.vci-student-footer { align-items:center; background:linear-gradient(135deg,#fff 0%,#f7fbff 100%); border-top:1px solid #e5eaf2; color:#718096; display:flex; font-size:.92rem; gap:12px; justify-content:space-between; padding:15px 22px; }
.vci-student-footer__copyright,.vci-student-footer__credit { align-items:center; display:flex; flex-wrap:wrap; gap:6px; }
.vci-student-footer__mark { color:#f59e0b; font-size:1.1rem; font-weight:800; }
.vci-student-footer__copyright a { color:#1478e8; font-weight:800; letter-spacing:.02em; }
.vci-student-footer__credit { color:#7b8794; }
.vci-student-footer__credit a { background:linear-gradient(135deg,#ff7a18,#6d28d9); border-radius:999px; box-shadow:0 4px 10px rgba(109,40,217,.2); color:#fff; font-weight:800; padding:4px 10px; text-decoration:none; transition:transform .2s ease,box-shadow .2s ease; }
.vci-student-footer__credit a:hover { box-shadow:0 6px 14px rgba(109,40,217,.28); color:#fff; transform:translateY(-1px); }
html[data-vci-theme="dark"] .vci-student-footer { background:linear-gradient(135deg,#172235,#101827); border-color:#30425b; color:#aabbd0; }
html[data-vci-theme="dark"] .vci-student-footer__copyright a { color:#5bb6ff; }
@media (max-width:575.98px) { .vci-student-footer { display:block; text-align:center; } .vci-student-footer__copyright { justify-content:center; } .vci-student-footer__credit { justify-content:center; margin-top:8px; } }
