:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;color:#212529;background-color:#f8f9fa}*{box-sizing:border-box}body{margin:0;padding:0;min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}p{margin:0}button,input,select,textarea{font-family:inherit}.container{max-width:1280px;margin:0 auto;padding:0 1rem}@media(min-width:768px){.container{padding:0 2rem}}@media(max-width:768px){.container{padding:0 .75rem}}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.header{background-color:#8b0000;color:#fff;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.header-left{display:flex;align-items:center;gap:1rem}.logo-container{display:flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .2s ease}.logo-container:hover{transform:scale(1.05)}.college-logo{width:70px;height:70px;object-fit:contain;border-radius:10px;background-color:#fff;padding:5px}.college-info h1{margin:0;font-size:1.5rem;font-weight:700}.college-info p{margin:0;font-size:.9rem;opacity:.9}.exam-badge{background-color:#fff3;padding:.5rem 1rem;border-radius:20px;font-weight:700;font-size:.9rem}.nav-links{margin-left:1rem}.nav-link{color:#fff;text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:4px;transition:background-color .15s ease-in-out}.nav-link:hover{background-color:#ffffff1a}@media(max-width:768px){.header{flex-direction:column;gap:1rem;text-align:center}.header-left{flex-direction:column;gap:.5rem}.college-info h1{font-size:1.2rem}}.footer{background-color:#f8f9fa;padding:1rem 2rem;text-align:center;border-top:1px solid #e9ecef;margin-top:2rem}.footer p{margin:.5rem 0;color:#6c757d;font-size:.9rem}.contact-numbers{margin-top:.5rem}.contact-numbers a{color:#495057;text-decoration:none;font-weight:500;margin:0 .25rem;transition:color .2s ease}.contact-numbers a:hover{color:#8b0000;text-decoration:underline}.card{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem;overflow:hidden}.card-header{background-color:#f8f9fa;padding:1rem;border-bottom:1px solid #e9ecef;display:flex;align-items:center;gap:.5rem}.card-icon{font-size:1.2rem}.card-header h3{margin:0;color:#495057;font-size:1.1rem}.card-body{padding:1.5rem}.form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:500;color:#495057}.required{color:#dc3545}.form-field input,.form-field select,.form-field textarea{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:0;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.form-field input.error,.form-field select.error,.form-field textarea.error{border-color:#dc3545}.error-message{color:#dc3545;font-size:.875rem;margin-top:.25rem;display:block}.btn{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .15s ease-in-out,transform .1s ease-in-out;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#8b0000;color:#fff}.btn-primary:hover:not(:disabled){background-color:#a00000}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#5a6268}.btn-full{width:100%}.registration-page{min-height:100vh;background-color:#f8f9fa}.registration-form{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 12px #0000001f;margin:2rem auto;max-width:none;width:100%}.registration-form h2{color:#8b0000;text-align:center;margin-bottom:.5rem}.registration-form>p{text-align:center;color:#6c757d;margin-bottom:2rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid-full{grid-column:1 / -1}.photo-upload{display:flex;gap:2rem;align-items:flex-start}.upload-area{flex:1;border:2px dashed #ced4da;border-radius:8px;padding:2rem;text-align:center;cursor:pointer;transition:border-color .15s ease-in-out}.upload-area:hover{border-color:#8b0000}.upload-label{cursor:pointer;display:block}.upload-icon{font-size:3rem;margin-bottom:1rem}.upload-text{font-size:1.2rem;color:#6c757d}.photo-preview{flex:1}.photo-preview img{max-width:150px;max-height:200px;border-radius:4px;box-shadow:0 2px 4px #0000001a}.upload-info ul{list-style:none;padding:0;margin:0}.upload-info li{color:#6c757d;font-size:.9rem;margin-bottom:.5rem}@media(max-width:1024px){.container{padding:1.25rem}.registration-form{padding:1.5rem;max-width:none}}@media(max-width:768px){.container{padding:1rem}.registration-form{padding:1rem;margin:1rem;border-radius:6px}.form-grid{grid-template-columns:1fr}.photo-upload{flex-direction:column}.upload-area{padding:1rem}}.hall-ticket-page{min-height:100vh;background-color:#f8f9fa}.loading,.error{text-align:center;padding:2rem}.success-message{background-color:#d4edda;color:#155724;padding:1rem;border-radius:8px;margin-bottom:2rem;text-align:center}.success-message h2{margin:0 0 .5rem}.hall-ticket-preview{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;border:2px solid #8B0000}.hall-ticket-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;border-bottom:2px solid #8B0000;padding-bottom:1rem}.college-info h3{margin:0;color:#8b0000;font-size:1.2rem}.college-info p{margin:.5rem 0 0;color:#6c757d}.hall-ticket-number{font-size:1.1rem;color:#8b0000}.hall-ticket-content{display:flex;gap:2rem;margin-bottom:2rem}.photo-section{flex-shrink:0}.student-photo{width:120px;height:150px;object-fit:cover;border:2px solid #ddd;border-radius:4px}.details-section h4{margin:0 0 1rem;color:#8b0000}.details-table{width:100%;border-collapse:collapse}.details-table td{padding:.5rem 0;border-bottom:1px solid #eee}.details-table td:first-child{font-weight:700;width:40%;color:#495057}.exam-details,.instructions{margin-bottom:2rem}.exam-details h4,.instructions h4{margin:0 0 1rem;color:#8b0000}.exam-details p{margin:.5rem 0}.instructions ul{margin:0;padding-left:1.5rem}.instructions li{margin-bottom:.5rem}.action-buttons{display:flex;gap:1rem;justify-content:center}@media(max-width:768px){.container,.hall-ticket-preview{padding:1rem}.hall-ticket-header{flex-direction:column;gap:1rem}.hall-ticket-content{flex-direction:column;align-items:center}.action-buttons{flex-direction:column}.action-buttons button{width:100%}}@media print{.hall-ticket-page{background-color:#fff}.success-message,.action-buttons{display:none}.hall-ticket-preview{box-shadow:none;border:1px solid #000}}.success-container{display:flex;justify-content:center;padding:40px 0}.success-card{background:#fff;border-radius:12px;padding:28px;width:560px;box-shadow:0 8px 30px #20212414;text-align:center}.success-icon{width:64px;height:64px;background:#2ecc71;color:#fff;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:28px;margin:-48px auto 8px}.success-card h1{margin:8px 0 4px;font-size:20px}.muted{color:#666;margin-bottom:16px}.application-number{background:#f5f7fb;padding:14px;border-radius:8px;margin:16px 0}.application-number .label{font-size:12px;color:#8b95a8}.application-number .number{font-size:20px;margin-top:8px;font-weight:700}.actions{display:flex;gap:12px;justify-content:center;margin:18px 0}.btn{padding:10px 16px;border-radius:8px;cursor:pointer;border:0;font-weight:600}.btn-primary{background:#2fa84f;color:#fff}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.btn-outline{background:transparent;border:2px solid #d6dbe6;color:#333}.top-blue{background:linear-gradient(180deg,#e8f1ff,#dfeefe);color:#0b57d0;border:2px solid #bcd7ff;padding:8px 14px;border-radius:10px;font-weight:700}.yellow-cta{background:linear-gradient(180deg,#fff0b8,#ffe28a);color:#5a3f00;font-weight:800;padding:12px 14px;border-radius:8px;margin:12px 0;box-shadow:inset 0 -4px #00000008}.notice{background:#fff6e0;border-left:4px solid #ffcc33;padding:12px;border-radius:6px;text-align:left;margin:12px 0}.important{font-weight:700;margin-bottom:6px}.exam-notice{background:#fff0f0;border:1px solid #f3c6c6;padding:12px;border-radius:6px;margin-top:12px;text-align:left}.re-download-page{min-height:100vh;background-color:#f8f9fa}.container{margin:0 auto;padding:2rem 0}.description{text-align:center;color:#6c757d;margin-bottom:2rem}.general-error{background-color:#f8d7da;color:#721c24;padding:1rem;border-radius:4px;margin-bottom:1rem;text-align:center}@media(max-width:768px){.container{padding:1rem 0}}.admin-page{min-height:100vh;display:flex;flex-direction:column}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a}.admin-info h2{color:#2c3e50;margin:0}.admin-info p{color:#666;margin:.25rem 0 0;font-size:.9rem}.admin-actions{display:flex;gap:1rem;align-items:center}.export-btn{background:#27ae60;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:500;transition:background-color .2s}.export-btn:hover{background:#219a52}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 10px #0000001a;border:1px solid #e1e8ed}.stat-card h3{margin:0 0 1rem;color:#2c3e50;font-size:1rem;font-weight:600}.stat-number{font-size:2rem;font-weight:700;color:#3498db}.stat-item{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.9rem}.filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.filters select{padding:.5rem;border:1px solid #ddd;border-radius:6px;background:#fff;min-width:150px}.registrations-table{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #0000001a;margin-bottom:1.5rem}.registrations-table table{width:100%;border-collapse:collapse}.registrations-table th,.registrations-table td{padding:1rem;text-align:left;border-bottom:1px solid #e1e8ed}.registrations-table th{background:#f8f9fa;font-weight:600;color:#2c3e50}.registrations-table tr:hover{background:#f8f9fa}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem}.pagination button{padding:.5rem 1rem;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s}.pagination button:hover:not(:disabled){background:#3498db;color:#fff;border-color:#3498db}.pagination button:disabled{opacity:.5;cursor:not-allowed}.loading{text-align:center;padding:2rem;color:#666}.admin-login-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.login-container{display:flex;justify-content:center;align-items:center;flex:1;padding:2rem}.login-container .card{width:100%;max-width:400px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;border:1px solid #e9ecef;padding:2rem}.login-description{text-align:center;color:#6c757d;margin-bottom:2rem;font-size:.95rem}.general-error{background:#fee;color:#c33;padding:.75rem;border-radius:6px;margin-bottom:1rem;text-align:center;border:1px solid #fcc}.form-field{margin-bottom:1.5rem}.form-field input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;transition:border-color .2s}.form-field input:focus{outline:none;border-color:#495057;box-shadow:0 0 0 2px #49505740}.btn{width:100%;padding:.75rem;background:#495057;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn:hover:not(:disabled){background:#343a40}.btn:disabled{background:#6c757d;cursor:not-allowed}#root{max-width:1280px;margin:0 auto;padding:0}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
