@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}#root{max-width:100%;margin:0 auto;padding:0}:root{--bg-dark: #050511;--bg-gradient: radial-gradient(circle at 15% 50%, rgba(76, 29, 149, .15), transparent 25%), radial-gradient(circle at 85% 30%, rgba(6, 182, 212, .15), transparent 25%);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--glass-highlight: rgba(255, 255, 255, .12);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--backdrop-blur: 12px;--primary: #6366f1;--primary-glow: rgba(99, 102, 241, .4);--secondary: #06b6d4;--accent: #f472b6;--danger: #ef4444;--success: #10b981;--text-main: #f8fafc;--text-muted: #94a3b8;--radius-xl: 24px;--radius-lg: 16px;--radius-md: 12px}.login-container{position:fixed;top:0;left:0;width:100%;height:100vh;margin:0;padding:0;display:flex;flex-direction:column;background-color:var(--bg-dark);background-image:var(--bg-gradient);background-attachment:fixed;justify-content:center;align-items:center;text-align:center;padding:2rem;animation:fadeIn .8s cubic-bezier(.22,1,.36,1);color:var(--text-main);font-family:Outfit,Inter,sans-serif;overflow-y:auto}.login-card{background:var(--glass-bg);backdrop-filter:blur(var(--backdrop-blur));-webkit-backdrop-filter:blur(var(--backdrop-blur));border:1px solid var(--glass-border);padding:2.5rem;border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);width:100%;max-width:420px;text-align:center;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:1.5rem}.login-app-title{font-size:3rem;font-weight:800;margin:0;background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em;text-shadow:0 10px 30px rgba(0,0,0,.5);margin-bottom:1.5rem}.login-tabs{display:flex;gap:.5rem;width:100%}.login-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.75rem .5rem;background:#ffffff08;border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:all .3s ease;font-family:inherit;font-size:.85rem;font-weight:500;position:relative;overflow:hidden}.login-tab:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) scaleX(0);width:60%;height:3px;background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:3px 3px 0 0;transition:transform .3s ease}.login-tab:hover{background:#ffffff0f;color:var(--text-main);border-color:#ffffff26}.login-tab.active{background:#6366f11a;color:var(--text-main);border-color:#6366f14d;font-weight:600}.login-tab.active:after{transform:translate(-50%) scaleX(1)}.login-tab-icon{font-size:1.3rem;line-height:1}.login-tab-label{font-size:.8rem;letter-spacing:.03em}.login-tab-content{animation:tabFadeIn .35s ease;display:flex;flex-direction:column;gap:1rem;align-items:center}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.google-btn-wrapper{width:100%;display:flex;justify-content:center;padding:.5rem 0;min-height:44px}.google-btn-placeholder{color:var(--text-muted);font-size:.85rem;padding:.75rem}.login-fallback-toggle{background:none;border:none;color:var(--text-muted);font-size:.8rem;cursor:pointer;padding:.5rem;transition:color .2s ease;font-family:inherit;text-decoration:underline;text-underline-offset:3px}.login-fallback-toggle:hover{color:var(--secondary)}.login-divider{display:flex;align-items:center;width:100%;gap:1rem;margin:.25rem 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--glass-border)}.login-divider span{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.login-form{display:flex;flex-direction:column;gap:1.25rem;width:100%}.login-input-group{display:flex;flex-direction:column;gap:.5rem;text-align:left}.login-label{font-size:.8rem;font-weight:500;color:var(--text-muted);margin-left:.25rem;text-transform:uppercase;letter-spacing:.05em}.login-input{width:100%;padding:.9rem 1.1rem;background:#0003;border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-main);font-size:.95rem;transition:all .3s ease;box-sizing:border-box;font-family:inherit}.login-input:focus{outline:none;border-color:var(--primary);background:#0006;box-shadow:0 0 0 3px var(--primary-glow)}.login-input::placeholder{color:var(--text-muted)}.login-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.25rem;cursor:pointer}.login-select option{background-color:#0f172a;color:var(--text-main)}.login-helper-text{font-size:.75rem;color:var(--secondary);margin-top:.25rem;margin-left:.25rem;opacity:.8}.login-btn{width:100%;padding:.9rem;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 10px 20px -5px var(--primary-glow);margin-top:.5rem;text-transform:uppercase;letter-spacing:.05em}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 15px 30px -5px #6366f180;filter:brightness(1.1)}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.error-message{color:var(--danger);margin:0;font-size:.85rem;background:#ef44441a;padding:.75rem;border-radius:var(--radius-md);border:1px solid rgba(239,68,68,.2);text-align:center}@media(max-width:768px){.login-container{position:relative;height:auto;min-height:100vh;padding:3rem 1rem 2rem;overflow-y:auto}.login-card{padding:2rem 1.25rem;width:100%;max-width:100%}.login-app-title{font-size:2.25rem;margin-bottom:1rem}.login-tab-icon{font-size:1.1rem}.login-tab-label{font-size:.7rem}}:root{--bg-dark: #050511;--bg-gradient: radial-gradient(circle at 15% 50%, rgba(76, 29, 149, .15), transparent 25%), radial-gradient(circle at 85% 30%, rgba(6, 182, 212, .15), transparent 25%);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--glass-highlight: rgba(255, 255, 255, .12);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--backdrop-blur: 12px;--primary: #6366f1;--primary-glow: rgba(99, 102, 241, .4);--secondary: #06b6d4;--accent: #f472b6;--danger: #ef4444;--success: #10b981;--text-main: #f8fafc;--text-muted: #94a3b8;--radius-xl: 24px;--radius-lg: 16px;--radius-md: 12px;--spacing-md: 20px;--spacing-lg: 30px}body{margin:0;background-color:var(--bg-dark);background-image:var(--bg-gradient);background-attachment:fixed;color:var(--text-main);font-family:Outfit,Inter,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh}.page-container{max-width:1200px;margin:40px auto;padding:40px;animation:fadeIn .6s cubic-bezier(.22,1,.36,1)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.page-title{font-size:2.5rem;font-weight:700;margin-bottom:40px;text-align:center;background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.03em;text-shadow:0 2px 10px rgba(255,255,255,.1)}.dashboard-cards{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;margin-top:20px}.card{background:var(--glass-bg);backdrop-filter:blur(var(--backdrop-blur));-webkit-backdrop-filter:blur(var(--backdrop-blur));border:1px solid var(--glass-border);padding:40px;border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);text-align:center;width:320px;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--primary),var(--secondary));opacity:0;transition:opacity .3s}.card:hover{transform:translateY(-10px) scale(1.02);border-color:var(--glass-highlight);box-shadow:0 20px 40px #0006}.card:hover:before{opacity:1}.card h3{font-size:1.8rem;color:var(--text-main);margin-bottom:15px;font-weight:600}.card p{color:var(--text-muted);font-size:1rem;line-height:1.5}.list-view{animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.controls{display:flex;justify-content:space-between;gap:20px;margin-bottom:30px;background:var(--glass-bg);padding:20px;border-radius:var(--radius-lg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--backdrop-blur));backdrop-filter:blur(var(--backdrop-blur))}.search-input{flex:1;max-width:400px;background:#0003;border:1px solid var(--glass-border);padding:12px 20px;border-radius:var(--radius-md);color:var(--text-main);font-size:1rem;transition:all .3s}.search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);background:#0006}.rows-select{background:#0003;border:1px solid var(--glass-border);padding:12px 20px;border-radius:var(--radius-md);color:var(--text-main);cursor:pointer;outline:none}.rows-select option{background:var(--bg-dark);color:var(--text-main)}.student-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--backdrop-blur));backdrop-filter:blur(var(--backdrop-blur));border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.student-table thead{background:#ffffff0d}.student-table th{padding:20px;font-size:.9rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--glass-border)}.student-table td{padding:20px;text-align:center;color:var(--text-main);border-bottom:1px solid var(--glass-border);font-size:1rem;vertical-align:middle}.student-table tr:last-child td{border-bottom:none}.student-table tr{transition:background .2s}.student-table tr:hover{background:#ffffff0d}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-md);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid transparent;outline:none;letter-spacing:.02em}.btn:active{transform:translateY(1px)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;box-shadow:0 4px 12px #6366f14d;border:none}.btn-primary:hover{box-shadow:0 6px 16px #6366f166;transform:translateY(-1px);filter:brightness(1.1)}.btn-outline{background:transparent;border:1px solid var(--glass-border);color:var(--text-muted)}.btn-outline:hover{background:var(--glass-bg);color:var(--text-main);border-color:var(--text-muted)}.btn-danger{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.2)}.btn-danger:hover{background:var(--danger);color:#fff;box-shadow:0 4px 12px #ef44444d;border-color:transparent}.pagination{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:30px}.pagination button{padding:10px 20px;background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-main);border-radius:var(--radius-md);cursor:pointer;transition:all .3s}.pagination button:hover:not(:disabled){background:var(--primary);border-color:var(--primary);box-shadow:0 0 15px var(--primary-glow)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:#000000bf;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:grid;place-items:center;z-index:9999;animation:fadeIn .4s cubic-bezier(.16,1,.3,1);padding:20px}.modal-content{background:#0a0a19f2;border:1px solid rgba(255,255,255,.1);padding:40px;border-radius:24px;width:100%;max-width:480px;box-shadow:0 25px 50px -12px #0009;animation:scaleUp .4s cubic-bezier(.16,1,.3,1);position:relative;display:flex;flex-direction:column}@keyframes scaleUp{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.1)}.modal-header h3{font-size:1.75rem;color:#fff;margin:0;font-weight:700;letter-spacing:-.02em}.close-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#94a3b8;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:1.25rem}.close-btn:hover{background:#ef444433;color:#ef4444;border-color:#ef44444d}.modal-form{display:flex;flex-direction:column;gap:24px}.modal-form input,.modal-form select{width:100%;box-sizing:border-box;padding:16px 20px;background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:14px;color:#fff;font-size:1rem;font-family:inherit;transition:all .2s}.modal-form input:focus,.modal-form select:focus{outline:none;border-color:var(--primary);background:#0009;box-shadow:0 0 0 4px #6366f126}.modal-form input::placeholder{color:#64748b}.modal-form .full{margin-top:8px}.modal-form button{width:100%;padding:16px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border:none;border-radius:14px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 10px 20px -5px #6366f166;letter-spacing:.02em}.modal-form button:hover{transform:translateY(-2px);box-shadow:0 15px 30px -5px #6366f180;filter:brightness(1.1)}.modal-form button:active{transform:translateY(0)}@media(max-width:768px){.page-container{padding:20px}.controls{flex-direction:column}.search-input{max-width:100%}.student-table{display:block;overflow-x:auto;white-space:nowrap}}.profile-section{position:relative;cursor:pointer;display:flex;align-items:center;gap:10px}.profile-icon{width:40px;height:40px;background:#ffffff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.profile-section:hover .profile-icon{background:#fff3;transform:scale(1.05)}.profile-dropdown{position:absolute;top:50px;right:0;background:#10121bf2;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:15px;width:200px;box-shadow:0 10px 30px #00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;display:flex;flex-direction:column;gap:10px;animation:fadeIn .2s ease}.profile-info{border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:10px;margin-bottom:5px}.guard-container{position:relative;min-height:100vh;width:100%;margin:0;padding:4rem 0;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);z-index:1000}.guard-card{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.guard-title{font-size:4rem;margin-bottom:3rem;text-align:center;color:#fff;text-shadow:0 4px 20px rgba(255,255,255,.2);font-weight:700}.guard-form{width:90%;max-width:800px;display:flex;flex-direction:column;gap:2rem;padding:3rem;background:#ffffff0d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:30px;box-shadow:0 25px 50px -12px #00000080;max-width:500px}.guard-form-title{text-align:center;font-size:2.5rem;margin-bottom:2rem;color:#e2e8f0;font-weight:600}.guard-input{width:100%;padding:1rem;font-size:1.1rem;border-radius:16px;background:#0006;border:1px solid rgba(255,255,255,.1);color:#fff;outline:none;transition:all .3s ease;cursor:pointer}select.guard-input{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1rem center;background-size:1em;padding-right:2.5rem}.guard-input option{background:#1e293b;color:#fff}.guard-submit-btn{width:100%;margin-top:1.5rem;padding:1rem;font-size:1.2rem;border-radius:16px;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;border:none;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 10px 20px -5px #6366f166}.guard-submit-btn:hover{transform:translateY(-2px);box-shadow:0 15px 30px -5px #6366f180;filter:brightness(1.1)}.guard-dashboard-container{width:95%;max-width:1400px;min-height:80vh;height:auto;display:flex;gap:2rem;padding:2rem;align-items:stretch}.guard-summary-card{flex:1;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.guard-controls-section{flex:2;display:flex;flex-direction:column;gap:2rem}.manual-override-card{background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;border:1px solid rgba(255,255,255,.1);padding:1.5rem}.manual-override-card h3,.live-feed-card h3{margin-top:0;color:#cbd5e1;font-size:1.5rem;margin-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.5rem}.manual-input-group{display:flex;gap:1rem;align-items:center}.manual-input{flex:1;padding:1rem;font-size:1.2rem;border-radius:12px;background:#0000004d;border:1px solid rgba(255,255,255,.1);color:#fff}.manual-actions{display:flex;gap:1rem}.manual-btn{padding:1rem 2rem;font-size:1rem;border-radius:12px;border:none;font-weight:600;cursor:pointer;transition:all .2s}.manual-btn.entry{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.manual-btn.entry:hover{background:#22c55e66}.manual-btn.exit{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.3)}.manual-btn.exit:hover{background:#ef444466}.live-feed-card{flex:1;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;border:1px solid rgba(255,255,255,.1);padding:1.5rem;display:flex;flex-direction:column;overflow:hidden}.feed-list{flex:1;overflow-y:auto}.feed-table{width:100%;border-collapse:collapse;color:#e2e8f0}.feed-table th{text-align:left;padding:.75rem;color:#94a3b8;font-size:.9rem;border-bottom:1px solid rgba(255,255,255,.1)}.feed-table td{padding:.75rem;border-bottom:1px solid rgba(255,255,255,.05)}.status-badge{padding:.25rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600}.status-badge.entry{background:#22c55e33;color:#4ade80}.status-badge.exit{background:#ef444433;color:#f87171}@media(max-width:1024px){.guard-dashboard-container{flex-direction:column;height:auto}.guard-summary-card,.guard-controls-section{flex:none;width:100%}}.guard-summary{text-align:center;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:6rem;border-radius:40px;border:1px solid rgba(255,255,255,.1);min-width:600px;max-width:900px;width:90%;display:flex;flex-direction:column;align-items:center}.guard-success-title{color:#22c55e;margin-bottom:3rem;font-size:3.5rem;font-weight:700}.guard-info{margin-bottom:4rem;text-align:center;font-size:2rem;color:#f1f5f9}.guard-logout-btn{margin-top:12px;width:100%;padding:10px;background:#334155;color:#f87171;border:1px solid transparent;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s;text-align:center}.guard-logout-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}.guard-top-logout-btn{position:absolute;top:2rem;right:2rem;padding:1rem 2rem;background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.2);border-radius:12px;font-size:1.2rem;font-weight:600;cursor:pointer;transition:all .3s;z-index:1001}.guard-top-logout-btn:hover{background:#ef4444;color:#fff;transform:translateY(-2px);box-shadow:0 5px 15px #ef44444d}.guard-action-btn{width:100%;max-width:400px;padding:1.5rem;font-size:1.5rem;border-radius:16px;background:#6366f126;color:#818cf8;border:1px solid rgba(99,102,241,.2);cursor:pointer;transition:all .3s;font-weight:600;margin-top:2rem}.guard-action-btn:hover{background:#6366f1;color:#fff;transform:translateY(-2px);box-shadow:0 5px 15px #6366f14d}.guard-details{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:3rem;align-items:center}.guard-profile-section{position:fixed;top:20px;right:20px;display:flex;justify-content:center;align-items:center;cursor:pointer;padding:0;width:55px;height:55px;background:#ffffff1a;border-radius:50%;border:1px solid rgba(255,255,255,.2);transition:all .3s ease;z-index:2000}.guard-profile-section:hover{background:#fff3;transform:translateY(-2px)}.profile-icon{width:35px;height:35px;background:#6366f1;border-radius:50%;display:flex;justify-content:center;align-items:center;color:#fff;font-weight:700;font-size:1rem;flex-shrink:0;border:none}.guard-profile-section:hover .profile-icon{background:#6366f1;transform:none}.guard-profile-dropdown{position:absolute;top:calc(100% + 15px);right:0;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:15px;width:250px;box-shadow:0 10px 40px -5px #00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2001;display:flex;flex-direction:column;gap:4px;animation:fadeIn .2s ease}.profile-info{border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:10px;margin-bottom:0;display:flex;flex-direction:column;gap:2px}.profile-name{font-weight:600;color:#fff;margin:0;font-size:1rem}.profile-role{font-size:.85rem;color:#a0a0a0;margin:5px 0 0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.guard-dashboard-container{flex-direction:column;height:auto;padding:1rem}.guard-summary-card,.guard-controls-section{flex:none;width:100%}.guard-form{padding:2rem;width:95%}.guard-title{font-size:2.5rem}}@media(min-width:1025px)and (max-width:1366px){.guard-dashboard-container{padding:1rem}.guard-summary-card{padding:1.5rem}.guard-success-title{font-size:2.5rem}.guard-info{font-size:1.5rem}.status-badge{font-size:.7rem;padding:.2rem .6rem}}@media(max-width:768px){.guard-container{height:auto;min-height:100vh;align-items:flex-start;padding-top:4rem;overflow-y:auto}.guard-dashboard-container{padding:1rem;gap:1.5rem}.manual-input-group{flex-direction:column}.manual-actions{width:100%}.manual-btn{flex:1}.feed-list{max-height:300px}.guard-profile-section{top:1rem;right:1rem}.guard-top-logout-btn{top:1rem;right:1rem;padding:.5rem 1rem;font-size:1rem}.guard-details{text-align:center}}.landing-container{margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative}.landing-content{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);backdrop-filter:blur(var(--backdrop-blur));-webkit-backdrop-filter:blur(var(--backdrop-blur));padding:4rem 6rem;border-radius:var(--radius-xl);text-align:center;z-index:10;animation:fadeInUp .8s ease-out;max-width:600px;width:100%}.brand-title{font-size:5rem;font-weight:800;margin:0;background:linear-gradient(135deg,var(--text-main) 0%,var(--primary) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-2px;line-height:1.1;margin-bottom:.5rem}.college-name{font-size:2rem;color:var(--text-muted);font-weight:500;margin:0;letter-spacing:4px;text-transform:uppercase}.landing-description{color:var(--text-muted);font-size:1.25rem;margin:2rem 0 3rem;font-weight:300}.login-btn-large{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);color:#fff;border:none;padding:1rem 3rem;font-size:1.25rem;font-weight:600;border-radius:var(--radius-lg);cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px var(--primary-glow);width:100%;max-width:300px}.login-btn-large:hover{transform:translateY(-2px);box-shadow:0 8px 25px var(--primary-glow);filter:brightness(1.1)}.login-btn-large:active{transform:translateY(0)}.background-shapes{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.shape{position:absolute;border-radius:50%;filter:blur(80px);opacity:.4}.shape-1{background:var(--primary);width:500px;height:500px;top:-100px;left:-100px;animation:float 10s infinite ease-in-out}.shape-2{background:var(--secondary);width:400px;height:400px;bottom:-50px;right:-50px;animation:float 12s infinite ease-in-out reverse}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%{transform:translate(0)}50%{transform:translate(30px,50px)}to{transform:translate(0)}}@media(max-width:768px){.landing-content{padding:3rem 2rem;margin:1rem;width:auto;max-width:100%}.brand-title{font-size:3rem}.college-name{font-size:1.2rem}}.student-container{position:relative;min-height:100vh;width:100%;margin:0;padding:2rem 0;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);z-index:1000}.student-profile-section{position:fixed;top:20px;right:20px;display:flex;justify-content:center;align-items:center;cursor:pointer;padding:0;width:55px;height:55px;background:#ffffff1a;border-radius:50%;border:1px solid rgba(255,255,255,.2);transition:all .3s ease;z-index:2000}.student-profile-section:hover{background:#fff3;transform:translateY(-2px)}.student-profile-dropdown{position:absolute;top:calc(100% + 15px);right:0;background:#1e293b;padding:15px;border-radius:16px;box-shadow:0 10px 40px -5px #00000080;width:250px;min-width:unset;z-index:2001;border:1px solid rgba(255,255,255,.1);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.student-profile-item{padding:10px 0;color:#cbd5e1;font-size:.9rem;border-bottom:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:4px}.student-profile-item:last-child{border-bottom:none}.student-profile-name{color:#fff;font-weight:700;font-size:1.1rem}.student-profile-detail{font-size:.85rem;color:#94a3b8}.student-logout-btn{margin-top:12px;width:100%;padding:10px;background:#334155;color:#f87171;border:1px solid transparent;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s;text-align:center}.student-logout-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}.profile-icon{width:35px;height:35px;background:#6366f1;border-radius:50%;display:flex;justify-content:center;align-items:center;color:#fff;font-weight:700;font-size:1rem;flex-shrink:0}.profile-text{display:none}.student-card{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding-top:60px}.student-title{font-size:3.5rem;margin-bottom:3rem;text-align:center;color:#fff;text-shadow:0 4px 20px rgba(255,255,255,.2);font-weight:700}.student-content-wrapper{width:90%;max-width:1000px;display:flex;flex-direction:column;gap:3rem;align-items:center}.action-cards-container{display:flex;gap:2rem;width:100%;justify-content:center;flex-wrap:wrap}.action-card{flex:1;min-width:320px;max-width:450px;height:auto;min-height:350px;aspect-ratio:1 / .8;background:#ffffff0d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;gap:1.5rem;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.action-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#ffffff1a,#fff0);opacity:0;transition:opacity .3s ease}.action-card:hover{transform:translateY(-10px);border-color:#ffffff4d;box-shadow:0 20px 40px -10px #00000080}.action-card:hover:before{opacity:1}.card-icon{font-size:5rem;margin:0 0 1rem;line-height:1;display:block}.card-title{font-size:2rem;font-weight:700;color:#fff;margin:0;line-height:1.2}.card-desc{font-size:1rem;color:#94a3b8;text-align:center}.scanner-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172ae6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:9999;animation:fadeIn .3s ease}.scanner-modal{background:linear-gradient(135deg,#1e293b,#0f172a);padding:2rem;border-radius:24px;width:90%;max-width:450px;display:flex;flex-direction:column;align-items:center;gap:1.5rem;box-shadow:0 25px 50px -12px #00000080;border:1px solid rgba(255,255,255,.1);position:relative}.scanner-title{color:#fff;font-size:1.5rem;font-weight:600;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3)}#reader{width:100%;border-radius:16px;overflow:hidden;border:2px solid rgba(255,255,255,.1);background:#000}.close-scanner-btn{padding:.8rem 2rem;background:#ef4444;color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s;width:100%;box-shadow:0 4px 6px -1px #ef44444d}.close-scanner-btn:hover{background:#dc2626;transform:translateY(-2px)}.result-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172af2;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .3s ease}.result-content{background:linear-gradient(135deg,#1e293b,#0f172a);padding:3rem 2rem;border-radius:30px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.5rem;max-width:400px;width:90%;box-shadow:0 25px 50px -12px #00000080;border:1px solid rgba(255,255,255,.1);transform:scale(.9);animation:popIn .4s cubic-bezier(.175,.885,.32,1.275) forwards}.result-content.success{border:2px solid #22c55e;box-shadow:0 0 30px #22c55e33}.result-content.error{border:2px solid #ef4444;box-shadow:0 0 30px #ef444433}.result-icon{font-size:6rem;margin-bottom:.5rem}.result-title{font-size:2.2rem;font-weight:800;color:#fff;margin:0}.result-message{font-size:1.1rem;color:#cbd5e1;margin:0}.result-timestamp{font-size:.9rem;color:#94a3b8;background:#0000004d;padding:.3rem .8rem;border-radius:8px}.result-btn{margin-top:1.5rem;padding:1rem 3rem;background:#fff;color:#0f172a;border:none;border-radius:16px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s;width:100%}.result-btn:hover{transform:translateY(-3px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.activity-table{width:100%;border-collapse:collapse;color:#fff}.activity-table th,.activity-table td{padding:1rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.activity-table th{font-weight:600;color:#94a3b8;text-transform:uppercase;font-size:.85rem}.status-badge{padding:.4rem .8rem;border-radius:50px;font-size:.85rem;font-weight:600;text-transform:uppercase}.status-badge.entry{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.status-badge.exit{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.3)}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.spinner{width:50px;height:50px;border:5px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.student-container{flex-direction:column;height:auto;min-height:100vh;overflow-y:auto;padding:80px 1rem 2rem;justify-content:flex-start}.student-profile-section{position:absolute;top:20px;right:20px;width:55px;height:55px;padding:0;justify-content:center;background:#ffffff1a}.profile-text{display:none}.student-card{padding-top:0;height:auto;justify-content:flex-start}.student-title{font-size:2.5rem;margin-bottom:2rem;line-height:1.2}.action-cards-container{flex-direction:column;width:100%;gap:1.5rem;padding-bottom:2rem}.action-card{width:100%;max-width:100%;min-width:unset;height:280px}.card-title{font-size:1.8rem}.scanner-modal{width:95%;padding:1.5rem}.card-icon{font-size:2rem}}@media(min-width:769px)and (max-width:1024px){.action-card{min-width:45%;height:350px}.student-title,.card-icon{font-size:3rem}}@media(min-width:1025px)and (max-width:1440px){.action-card{height:420px;max-width:380px}.card-icon{font-size:4rem}.student-title{font-size:2.8rem;margin-bottom:2rem}}
