@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Poppins:wght@400;600;700&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap";.login-page{font-family:Poppins,sans-serif;margin:0;padding:0;display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#f5f5f5}.login-container{background-color:#fff;padding:40px;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:400px;box-sizing:border-box}.login-container h2{margin:0 0 20px;font-weight:600;color:#333;text-align:center;font-size:24px}.login-container input{width:100%;padding:12px;margin-bottom:16px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;outline:none;color:#333}.login-container input:focus{border-color:#004080}.login-container button{width:100%;background-color:#004080;color:#fff;padding:12px;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s}.login-container button:hover:not(:disabled){background-color:#036}.login-container button:disabled{opacity:.6;cursor:not-allowed}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24;padding:10px;border-radius:4px;margin-bottom:16px;text-align:center;font-size:14px}@media (max-width: 480px){.login-container{padding:30px 20px;margin:20px}.login-container h2{font-size:20px}}.table-container{padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.table-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.search-container{width:100%;padding:15px 20px;background-color:#f8f9fa;border-radius:6px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px}.search-input{width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:6px;font-size:14px;outline:none;transition:border-color .3s,box-shadow .3s}.search-input:focus{border-color:#004080;box-shadow:0 0 0 3px #0040801a}.search-info{text-align:right;font-size:13px;color:#666;margin-top:10px}.column-selector{position:relative}.column-toggle-btn{background-color:#004080;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s}.column-toggle-btn:hover{background-color:#036}.column-menu{position:absolute;top:100%;left:0;background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:250px;max-height:400px;overflow-y:auto;margin-top:5px}.column-menu-header{display:flex;justify-content:space-between;padding:10px;border-bottom:1px solid #eee;background-color:#f5f5f5}.column-menu-header button{background-color:#004080;color:#fff;border:none;padding:4px 8px;border-radius:3px;cursor:pointer;font-size:12px}.column-menu-header button:hover{background-color:#036}.column-item{display:flex;align-items:center;padding:8px 12px;cursor:pointer;transition:background-color .2s}.column-item:hover{background-color:#f5f5f5}.column-item input[type=checkbox]{margin-right:10px;cursor:pointer}.column-item span{font-size:13px;color:#333}.export-buttons{display:flex;gap:8px}.export-btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s;color:#fff}.export-btn.excel{background-color:#217346}.export-btn.excel:hover{background-color:#1e6b41}.export-btn.csv{background-color:#006400}.export-btn.csv:hover{background-color:#050}.export-btn.pdf{background-color:#dc2626}.export-btn.pdf:hover{background-color:#b91c1c}.table-wrapper{overflow-x:auto;border:1px solid #ddd;border-radius:4px}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table thead{background-color:#004080;position:sticky;top:0;z-index:10}.data-table th{color:#fff;padding:12px 8px;text-align:left;font-weight:600;white-space:nowrap;border-bottom:2px solid #003366}.data-table tbody tr{border-bottom:1px solid #eee;transition:background-color .2s}.data-table tbody tr:hover{background-color:#f8f9fa}.data-table td{padding:10px 8px;border-bottom:1px solid #eee;color:#333}.data-table td img{width:50px;height:50px;object-fit:cover;border-radius:4px;border:1px solid #ddd}.data-table td a{color:#004080;text-decoration:none;font-weight:500}.data-table td a:hover{text-decoration:underline}.table-info{margin-top:15px;padding:10px;background-color:#f8f9fa;border-radius:4px;font-size:14px;color:#666;text-align:center}.loading,.no-data{text-align:center;padding:60px 20px;font-size:18px;color:#666}.loading:before{content:"";display:inline-block;width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #004080;border-radius:50%;animation:spin 1s linear infinite;margin-right:15px;vertical-align:middle}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.table-actions{flex-direction:column;align-items:stretch}.column-selector,.column-toggle-btn{width:100%}.export-buttons{width:100%;justify-content:center}.export-btn{flex:1;padding:10px;font-size:12px}.data-table{font-size:11px}.data-table th,.data-table td{padding:8px 4px}}.summary-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px;margin-bottom:20px}.summary-title{color:#333;font-size:20px;font-weight:700;margin:0 0 20px;text-align:center}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:20px}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;border-radius:8px;text-align:center;box-shadow:0 4px 15px #667eea4d;transition:transform .3s,box-shadow .3s}.stat-card:hover{transform:translateY(-5px);box-shadow:0 6px 20px #667eea66}.stat-card.total{background:linear-gradient(135deg,#004080,#06c);box-shadow:0 4px 15px #0040804d}.stat-card.total:hover{box-shadow:0 6px 20px #00408066}.stat-label{font-size:14px;font-weight:500;opacity:.9;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:36px;font-weight:700;line-height:1}.summary-table-wrapper{overflow-x:auto;border:1px solid #ddd;border-radius:6px}.summary-table{width:100%;border-collapse:collapse;font-size:14px}.summary-table thead{background-color:#004080}.summary-table th{color:#fff;padding:12px 16px;text-align:left;font-weight:600;text-transform:uppercase;font-size:13px;letter-spacing:.5px}.summary-table tbody tr{border-bottom:1px solid #eee;transition:background-color .2s}.summary-table tbody tr:hover{background-color:#f8f9fa}.summary-table tbody tr:last-child{border-bottom:none}.summary-table td{padding:12px 16px;color:#333}.summary-table td:first-child{font-weight:600;color:#004080}.summary-table td:nth-child(2){text-align:center;font-weight:600}.summary-table td:nth-child(3){text-align:right;font-family:Courier New,monospace;font-weight:600}@media (max-width: 768px){.summary-container{padding:15px}.summary-title{font-size:18px}.summary-stats{grid-template-columns:1fr}.stat-value{font-size:32px}.summary-table{font-size:12px}.summary-table th,.summary-table td{padding:10px 12px}}@media (max-width: 480px){.summary-container{padding:12px}.summary-title{font-size:16px}.stat-value{font-size:28px}.summary-table{font-size:11px}.summary-table th,.summary-table td{padding:8px 10px}}.dashboard{min-height:100vh;background-color:#f2f2f2;font-family:DM Sans,Roboto,Arial,sans-serif}.dashboard-header{background-color:#004080;color:#fff;padding:20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000001a}.header-content{display:flex;align-items:center;gap:20px}.school-logo{width:80px;height:auto;border-radius:8px;background-color:#ffffff1a;padding:5px}.header-text h1{margin:0;font-size:2em;font-weight:700}.header-text p{margin:5px 0;font-size:14px;opacity:.9}.session-info{font-size:12px;font-weight:500;opacity:.8}.logout-btn{background-color:#940000;color:#fff;border:none;padding:10px 24px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s;box-shadow:0 2px 8px #0003}.logout-btn:hover{background-color:#780000;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.dashboard-main{padding:20px;max-width:1400px;margin:0 auto}.controls{display:flex;align-items:center;gap:15px;margin-bottom:20px;flex-wrap:wrap;padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.controls label{font-weight:600;color:#333;font-size:16px}.controls select{padding:10px 16px;border:1px solid #ddd;border-radius:6px;font-size:16px;background-color:#fff;cursor:pointer;transition:border-color .3s,box-shadow .3s;min-width:150px}.controls select:focus{outline:none;border-color:#004080;box-shadow:0 0 0 3px #0040801a}.show-data-btn{background-color:#004080;color:#fff;border:none;padding:10px 24px;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s;box-shadow:0 2px 8px #00408033}.show-data-btn:hover:not(:disabled){background-color:#036;transform:translateY(-2px);box-shadow:0 4px 12px #0040804d}.show-data-btn:disabled{opacity:.6;cursor:not-allowed}.section-title{color:#333;margin-bottom:20px;font-size:24px;font-weight:700}.status-filters{display:flex;flex-wrap:wrap;gap:15px;align-items:center;padding:15px 20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px}.filter-label{font-weight:600;color:#333;font-size:16px;margin-right:10px}.status-checkbox{display:flex;align-items:center;gap:6px;cursor:pointer;padding:8px 12px;background-color:#f8f9fa;border-radius:6px;transition:all .3s;border:2px solid transparent}.status-checkbox:hover{background-color:#e9ecef;transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.status-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#004080}.status-checkbox span{font-size:14px;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.5px}.status-checkbox input[type=checkbox]:checked+span{color:#004080}.status-checkbox input[type=checkbox]:checked{accent-color:#004080}@media (max-width: 768px){.dashboard-header{flex-direction:column;text-align:center;gap:15px}.header-content{flex-direction:column;text-align:center}.header-text h1{font-size:1.5em}.logout-btn{width:100%;max-width:200px}.dashboard-main{padding:15px}.controls{flex-direction:column;align-items:stretch}.controls label{text-align:center}.controls select,.show-data-btn{width:100%}.status-filters{flex-direction:column;align-items:flex-start}.filter-label{margin-bottom:10px;margin-right:0}.status-checkbox{width:100%}.section-title{font-size:20px;text-align:center}}@media (max-width: 480px){.school-logo{width:60px}.header-text h1{font-size:1.2em}.header-text p{font-size:12px}.controls{padding:15px}.controls label,.controls select,.show-data-btn{font-size:14px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Poppins,DM Sans,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}
