* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
align-items: center;
justify-content: center;
}

:root {
--college-blue: #0a2f6c;
--college-gold: #d4af37;
}

/* Simple Preloader - No overkill */
#preloader {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: #ffffff;
display: flex;
justify-content: center;
align-items: center;
z-index: 99999;
}

.preloader-spinner {
width: 48px;
height: 48px;
border: 4px solid #e9ecef;
border-top: 4px solid var(--college-gold);
border-right: 4px solid var(--college-blue);
border-radius: 50%;
animation: spin 0.6s linear infinite;
}

@keyframes spin {
to { transform: rotate(360deg); }
}

/* Card */
.portal-card {
border: none;
border-radius: 32px;
background: rgba(255, 255, 255, 0.98);
box-shadow: 0 25px 45px -12px rgba(0, 0, 0, 0.25);
overflow: hidden;
}

.college-header {
background: linear-gradient(105deg, var(--college-blue) 0%, #0f3d7a 100%);
padding: 1.6rem 1.2rem;
text-align: center;
border-bottom: 3px solid var(--college-gold);
}

.college-header i {
font-size: 2.8rem;
color: var(--college-gold);
}

.college-header h2 {
font-weight: 700;
font-size: 1.65rem;
margin-top: 0.5rem;
color: white;
}

.college-header p {
color: rgba(255,255,240,0.85);
font-size: 0.85rem;
margin: 0;
}

/* Toggle Buttons */
.toggle-buttons {
display: flex;
gap: 12px;
background: #f8fafd;
padding: 0.5rem 1rem;
border-radius: 60px;
margin-bottom: 1.8rem;
border: 1px solid #e2e8f0;
}

.toggle-btn {
flex: 1;
border: none;
background: transparent;
padding: 10px 0;
font-weight: 600;
border-radius: 50px;
transition: all 0.2s ease;
color: #2c3e66;
}

.toggle-btn i {
margin-right: 8px;
}

.toggle-btn.active {
background: var(--college-blue);
color: white;
}

.toggle-btn:not(.active):hover {
background: #e9edf2;
color: var(--college-blue);
}

/* Forms */
.form-container {
transition: all 0.25s ease-in-out;
}

.input-group-custom {
margin-bottom: 1.2rem;
}
/* Academic records result list */
.result-list {
padding: 10px 0;
}

.result-row {
border-bottom: 1px solid #e9edf2;
padding: 14px 0;
text-align: center;
}

.result-row:last-child {
border-bottom: none;
}

.result-btn {
display: inline-block;
font-weight: 600;
text-transform: uppercase;
font-size: 0.85rem;
padding: 10px 24px;
width: 70%;
}

.form-control, .form-select {
border-radius: 14px;
padding: 12px 16px;
border: 1.5px solid #e2edf2;
background: #ffffff;
font-weight: 500;
}

.form-control:focus, .form-select:focus {
border-color: var(--college-gold);
box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.2);
outline: none;
}

.btn-submit {
background: var(--college-blue);
border: none;
padding: 12px;
font-weight: 700;
border-radius: 40px;
width: 100%;
color: white;
transition: all 0.2s;
}

.btn-submit:disabled {
background: #9aaebf;
cursor: not-allowed;
}

.btn-submit:not(:disabled):hover {
background: #041e3f;
transform: scale(0.98);
}

.forgot-link, .switch-link {
text-decoration: none;
font-size: 0.85rem;
font-weight: 500;
}

.switch-link {
color: var(--college-blue);
font-weight: 600;
}

.switch-link:hover {
color: var(--college-gold);
text-decoration: underline;
}

.divider {
display: flex;
align-items: center;
text-align: center;
color: #7c8b9f;
font-size: 0.75rem;
margin: 1rem 0;
}

.divider::before,
.divider::after {
content: '';
flex: 1;
border-bottom: 1px solid #e0e7ef;
}

.divider::before {
margin-right: 0.8rem;
}
.divider::after {
margin-left: 0.8rem;
}

/* Captcha */
.captcha-container {
background: #f8f9fa;
border: 2px solid #e2edf2;
border-radius: 14px;
padding: 12px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
margin-bottom: 12px;
}

.captcha-code {
font-family: 'Courier New', monospace;
font-size: 28px;
font-weight: bold;
letter-spacing: 4px;
background: white;
padding: 8px 16px;
border-radius: 10px;
border: 1px solid #dee2e6;
color: var(--college-blue);
text-decoration: line-through;
user-select: none;
flex: 1;
text-align: center;
}

.refresh-captcha {
background: var(--college-blue);
color: white;
border: none;
border-radius: 10px;
padding: 8px 16px;
cursor: pointer;
transition: all 0.2s;
}

.refresh-captcha:hover {
background: var(--college-gold);
transform: rotate(15deg);
}

.error-message {
font-size: 0.75rem;
color: #dc3545;
margin-top: 0.25rem;
margin-left: 0.5rem;
}

.college-footer {
background: #f8fafc;
border-top: 1px solid #e9edf2;
font-size: 0.7rem;
color: #3a546d;
padding: 0.9rem 1rem;
text-align: center;
}

/* Toast */
.toast-container {
position: fixed;
top: 20px;
right: 20px;
z-index: 1050;
}

@media (max-width: 576px) {
.portal-card {
margin: 0;
border-radius: 28px;
}
.college-header h2 {
font-size: 1.35rem;
}
.captcha-code {
font-size: 20px;
letter-spacing: 2px;
}
.toast-container {
top: 10px;
right: 10px;
left: 10px;
}
.toast {
width: auto;
max-width: none;
}
}

.form-label {
font-weight: 600;
margin-bottom: 0.5rem;
}

/* Focus visible for accessibility */
.form-control:focus-visible, .form-select:focus-visible, .btn-submit:focus-visible {
outline: 3px solid var(--college-gold);
outline-offset: 2px;
}
.position-relative {
position: relative;
}

.space{
  padding: 5px;
}
.header {
background: beige;
padding: 15px 20px;
display: flex;
justify-content: space-between;
align-items: center;
}

.header h2 {
margin: 0;
font-size: 20px;
}

.logout-btn {
background: #ef4444;
border: none;
color: white;
padding: 8px 14px;
cursor: pointer;
border-radius: 4px;
}

.logout-btn:hover {
background: #dc2626;
}

.info {
color: #555;
font-weight: bold;
}
        .modern-card {
            background: rgba(255, 255, 255, 0.75);
            backdrop-filter: blur(12px);
            border-radius: 28px;
            border: 1px solid rgba(255, 255, 255, 0.4);
            box-shadow: 0 20px 35px -12px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.02);
            transition: all 0.35s cubic-bezier(0.2, 0, 0, 1);
            overflow: hidden;
            position: relative;
        }
        .modern-card::after {
            content: '';
            position: absolute;
            inset: 0;
            background: radial-gradient(circle at 100% 0%, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0) 80%);
            opacity: 0;
            transition: opacity 0.4s ease;
            pointer-events: none;
        }
        .modern-card:hover {
            transform: translateY(-6px);
            box-shadow: 0 28px 40px -16px rgba(0, 0, 0, 0.15);
            border-color: rgba(255, 255, 255, 0.6);
        }
        .modern-card:hover::after {
            opacity: 1;
        }
        .card-content {
            padding: 1.8rem 1.5rem;
            text-align: center;
        }
        .card-icon {
            font-size: 2.8rem;
            margin-bottom: 1rem;
            display: inline-block;
            background: linear-gradient(135deg, #3b82f6, #9333ea);
            background-clip: text;
            -webkit-background-clip: text;
            color: transparent;
        }
        .card-label {
            font-size: 0.85rem;
            text-transform: uppercase;
            letter-spacing: 1px;
            font-weight: 600;
            color: #6c6f78;
            margin-bottom: 0.5rem;
        }
        .card-detail {
            font-size: 0.8rem;
            color: #5b6e8c;
            font-weight: 500;
            border-top: 1px solid rgba(0, 0, 0, 0.05);
            padding-top: 0.75rem;
            margin-top: 0.5rem;
        }
        /* Subtle background tints (optional) */
        .card-1 { background: rgba(254, 249, 232, 0.75); }
        .card-2 { background: rgba(235, 245, 235, 0.75); }
        .card-3 { background: rgba(230, 240, 250, 0.75); }
        .card-4 { background: rgba(240, 234, 248, 0.75); }
        @media (max-width: 768px) {
            .card-content { padding: 1.4rem 1rem; }
        }
.nodecoration{padding: 0px;border: none;background: none;text-decoration: none;}
.nodisplay{display: none;}
.newsboxmain{
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 9990; 
}
.loaderown {
  border: 16px solid #f3f3f3;
  border-radius: 50%;
  border-top: 16px solid blue;
  border-right: 16px solid green;
  border-bottom: 16px solid red;
  border-left: 16px solid pink;
  width: 80px;
  height: 80px;
  margin: 0 auto;
  -webkit-animation: spinnew 2s linear infinite;
  animation: spinnew 2s linear infinite;
}

@-webkit-keyframes spinnew {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spinnew {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}