@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.loader{--w:6ch;animation:gothru-loader 2s linear infinite;color:#0000;display:inline-block;font-family:Courier New,monospace;font-size:30px;font-weight:700;letter-spacing:var(--w);line-height:1.4em;overflow:hidden;text-shadow:calc(var(--w)*0) 0 currentColor,calc(var(--w)*-1) 0 currentColor,calc(var(--w)*-2) 0 currentColor,calc(var(--w)*-3) 0 currentColor,calc(var(--w)*-4) 0 currentColor,calc(var(--w)*-5) 0 currentColor;white-space:nowrap;width:var(--w)}.loader:before{content:"GoThru"}.loader--inline{font-size:18px}@keyframes gothru-loader{16.67%{text-shadow:calc(var(--w)*0) -10px currentColor,calc(var(--w)*-1) 0 currentColor,calc(var(--w)*-2) 0 currentColor,calc(var(--w)*-3) 0 currentColor,calc(var(--w)*-4) 0 currentColor,calc(var(--w)*-5) 0 currentColor}33.33%{text-shadow:calc(var(--w)*0) 0 currentColor,calc(var(--w)*-1) -10px currentColor,calc(var(--w)*-2) 0 currentColor,calc(var(--w)*-3) 0 currentColor,calc(var(--w)*-4) 0 currentColor,calc(var(--w)*-5) 0 currentColor}50%{text-shadow:calc(var(--w)*0) 0 currentColor,calc(var(--w)*-1) 0 currentColor,calc(var(--w)*-2) -10px currentColor,calc(var(--w)*-3) 0 currentColor,calc(var(--w)*-4) 0 currentColor,calc(var(--w)*-5) 0 currentColor}66.67%{text-shadow:calc(var(--w)*0) 0 currentColor,calc(var(--w)*-1) 0 currentColor,calc(var(--w)*-2) 0 currentColor,calc(var(--w)*-3) -10px currentColor,calc(var(--w)*-4) 0 currentColor,calc(var(--w)*-5) 0 currentColor}83.33%{text-shadow:calc(var(--w)*0) 0 currentColor,calc(var(--w)*-1) 0 currentColor,calc(var(--w)*-2) 0 currentColor,calc(var(--w)*-3) 0 currentColor,calc(var(--w)*-4) -10px currentColor,calc(var(--w)*-5) 0 currentColor}to{text-shadow:calc(var(--w)*0) 0 currentColor,calc(var(--w)*-1) 0 currentColor,calc(var(--w)*-2) 0 currentColor,calc(var(--w)*-3) 0 currentColor,calc(var(--w)*-4) 0 currentColor,calc(var(--w)*-5) -10px currentColor}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--student-bg:#d9dbff;--student-header:#8f92e8;--student-card:#b06ad8;--student-card-dark:#8f45c3;--text:#141414;--white:#fff}.student-shell{background:#d9dbff;background:var(--student-bg);min-height:100vh}.student-header{align-items:center;background:#8f92e8;background:var(--student-header);display:flex;height:78px;justify-content:space-between;padding:12px 16px}.student-back{background:#ffffff59;border:none;border-radius:10px;color:#000;font-weight:600;padding:8px 12px}.brand{color:#8b00d6;font-weight:800;line-height:1}.sub{color:#1c1c1c;font-size:12px;opacity:.85}.student-main{display:flex;flex-direction:column;gap:18px;padding:22px 18px}.student-primary-btn{background:#b06ad8;background:var(--student-card);border:2px solid #00000026;border-radius:16px;box-shadow:0 8px 18px #0000002e;color:#fff;color:var(--white);font-size:26px;font-weight:700;padding:42px 16px;width:100%}.student-primary-btn:disabled{opacity:.7}.student-title{color:#141414;color:var(--text);font-size:34px;margin:0;text-align:center}.student-form{gap:14px;padding:0 6px}.student-form,.student-label{display:flex;flex-direction:column}.student-label{color:#000;font-weight:600;gap:8px}.student-input{border:1.5px solid #00000059;border-radius:12px;font-size:16px;padding:12px 14px}.student-apply-btn{background:#b100ff;border:none;border-radius:10px;color:#fff;color:var(--white);font-weight:800;letter-spacing:.5px;margin-top:12px;padding:12px 14px}.student-qr-section{display:flex;flex-direction:column;gap:14px}.student-qr-card{background:#ffffff8c;border:1px solid #0000001f;border-radius:16px;padding:16px;text-align:center}.student-qr-top{font-weight:800;margin-bottom:10px}.student-qr{max-width:100%;width:240px}.student-timer{font-weight:700;margin-top:10px}.student-dismiss-btn{background:#fff;border:none;border-radius:999px;box-shadow:0 3px 6px #00000040;color:#333;cursor:pointer;font-weight:600;margin-top:16px;padding:8px 18px;transition:transform .1s ease,box-shadow .1s ease,filter .1s ease}.student-dismiss-btn:hover{box-shadow:0 4px 10px #0000004d;filter:brightness(.98)}.student-dismiss-btn:active{box-shadow:0 2px 4px #00000038;transform:translateY(1px)}.student-expired{color:#b00020;font-weight:800;padding:22px 10px}.student-error{color:#b00020;font-weight:700}.student-hint{color:#222;font-size:14px;opacity:.9}.student-confirm-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.student-confirm-modal{background:#fff;border-radius:16px;box-shadow:0 10px 40px #00000040;max-width:320px;padding:24px;text-align:center;width:100%}.student-confirm-title{color:#1a1a1a;font-size:18px;font-weight:700;margin:0 0 12px}.student-confirm-text{color:#555;font-size:14px;line-height:1.5;margin:0 0 20px}.student-confirm-actions{display:flex;gap:12px}.student-confirm-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 16px;transition:all .2s ease}.student-confirm-btn.no{background:#f0f0f0;color:#333}.student-confirm-btn.no:hover{background:#e0e0e0}.student-confirm-btn.yes{background:#e74c3c;color:#fff}.student-confirm-btn.yes:hover{background:#c0392b}.student-history{margin-top:2rem;width:100%}.student-history-title{font-size:1rem;font-weight:600;margin-bottom:.75rem}.student-history-table-wrapper{background:#fffc;border:1px solid #cbd5f5;border-radius:10px;max-height:260px;overflow-y:auto;padding:4px}.student-history-table{border-collapse:collapse;font-size:.85rem;width:100%}.student-history-table td,.student-history-table th{border-bottom:1px solid #d1d5db;padding:.35rem .5rem}.student-history-table th{font-weight:600;text-align:left}.student-history-place,.student-history-purpose{color:#111827;font-weight:600}.student-history-table thead tr{background:#fffffff2}.student-history-table tbody tr:nth-child(odd){background:#ffffffd9}.student-history-table tbody tr:nth-child(2n){background:#f9fafbe6}.student-history-table tbody tr:last-child td{border-bottom:none}.student-history-out{color:#2563eb;font-weight:600}.student-history-in{color:#b91c1c;font-weight:600}.student-history-main{line-height:1.1}.student-history-sub{font-size:.75rem;line-height:1.1}.guard-layout{overflow-y:auto}.guard-header{background:linear-gradient(90deg,#7a78d4,#393868d9);color:#fff;height:64px}.guard-header-brand{flex-direction:column;line-height:1.1}.guard-header-passly{color:#9904b6;font-size:18px;font-weight:800}.guard-header-by{font-size:12px}.guard-header-avatar{background:#00000026;border:2px solid #ffffffd9;border-radius:50%;height:32px;width:32px}.guard-sidebar{align-items:center;background:linear-gradient(180deg,#9593e3,#52517d);gap:20px;padding-top:20px;width:80px}.guard-sidebar-logo{align-items:center;background:#000;border-radius:12px;color:#fff;display:flex;font-weight:800;height:40px;justify-content:center;margin-bottom:10px;width:40px}.guard-nav-item{background:#0000;border:none;justify-content:center;padding:0}.guard-nav-item.active .guard-nav-icon{box-shadow:0 0 0 2px #ffffffd9}.guard-nav-icon{align-items:center;background:#000;border-radius:10px;display:flex;height:48px;justify-content:center;width:48px}.guard-nav-label{color:#fff;font-size:11px}.guard-main{align-items:flex-start;background:#d7d6f9;display:flex;justify-content:center;overflow:visible}.guard-scan-page{gap:16px;height:100%;justify-content:center;width:100%}.guard-scan-button{background:#9904b6;border-radius:16px;box-shadow:0 8px 16px #0003;font-size:26px;font-weight:800;letter-spacing:2px;min-height:100px;min-width:220px;padding:24px 48px}.guard-scan-button:active{transform:translateY(1px)}.guard-error-banner{color:#b91c1c;font-weight:700}.guard-placeholder-page{font-size:18px;font-weight:600}.guard-logs-page{height:100%;padding:16px 24px;width:100%}.guard-logs-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.guard-logs-title{font-weight:800;letter-spacing:1px}.guard-logs-date input{border:1px solid #0000004d;border-radius:6px;outline:none;padding:4px 8px}.guard-logs-search input{border:1px solid #0000004d;border-radius:999px;outline:none;padding:6px 12px;width:160px}.guard-logs-table-wrapper{background:#0000;border-radius:0}.guard-logs-table-scroll{max-height:65vh}.guard-logs-table{font-size:12px}.guard-logs-table thead{background:#e3b7ec}.guard-logs-table td,.guard-logs-table th{border:1px solid #0003;padding:6px 8px;text-align:left}.guard-logs-table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1}.guard-logs-time-in-done{background:#6fdd6f;font-weight:700}.guard-btn{background:#4a63ff;border:none;border-radius:10px;color:#fff;font-weight:800;padding:10px 12px}.guard-btn.ghost{background:#ffffff1f}.guard-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1.1fr .9fr;padding:14px}.guard-card{background:#101a33;border:1px solid #ffffff14;border-radius:14px;overflow:hidden}.guard-card h3{border-bottom:1px solid #ffffff14;font-size:14px;letter-spacing:.3px;margin:0}.guard-card h3,.guard-card-body{padding:12px 14px}.guard-table{border-collapse:collapse;font-size:13px;width:100%}.guard-table td,.guard-table th{border-bottom:1px solid #ffffff12;padding:10px 8px;vertical-align:top}.guard-pill{background:#ffffff1f;border-radius:999px;display:inline-block;font-size:12px;padding:4px 8px}.guard-scanner-overlay{background:#000000a6;padding:18px}.guard-scanner-modal{background:#101a33;border:1px solid #ffffff1f;border-radius:14px;width:min(720px,100%)}.guard-scanner-header{border-bottom:1px solid #ffffff14;padding:12px 14px}.guard-scanner-title{font-weight:900}.guard-video{height:380px}.guard-error{color:#ffb3b3;font-weight:700;padding:10px 14px}.guard-scanner-hint{opacity:.9;padding:10px 14px 14px}.guard-approval{grid-gap:14px;align-items:start;display:grid;gap:14px;grid-template-columns:140px 1fr}.guard-photo{background:#0003;border:1px solid #ffffff24;border-radius:14px;height:140px;object-fit:cover;width:140px}.guard-approval h2{margin:0 0 6px}.guard-muted{opacity:.85}.guard-approve-row{display:flex;gap:10px;margin-top:12px}.guard-btn.danger{background:#ff3b6b}.guard-approval-overlay{background:#000000a6;padding:18px;z-index:30}.guard-approval-card{background:#0f172a;border:1px solid #ffffff1f;border-radius:16px;box-shadow:0 30px 80px #0006;overflow:hidden;width:min(920px,100%)}.guard-approval-header{border-bottom:1px solid #ffffff14;font-weight:800;padding:16px 18px}.guard-approval-body{grid-gap:22px;gap:22px;grid-template-columns:260px 1fr;padding:20px 22px 24px}.guard-approval-photo-col{align-items:center;display:flex;justify-content:center}.guard-photo-xl{background:#ffffff14;border:1px solid #ffffff24;border-radius:16px;height:220px;object-fit:cover;width:220px}.guard-approval-info{display:flex;flex-direction:column;gap:14px}.guard-approval-name{font-size:28px;font-weight:900}.guard-approval-roll{font-size:14px;opacity:.85}.guard-approval-fields{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.guard-approval-fields label{display:block;font-size:12px;letter-spacing:.3px;margin-bottom:4px;opacity:.8}.guard-approval-value{background:#ffffff0f;border:1px solid #ffffff14;border-radius:10px;min-height:46px;padding:12px}@media (max-width:800px){.guard-approval-body{grid-template-columns:1fr;text-align:center}.guard-approval-actions{justify-content:center}.guard-photo-xl{height:180px;width:180px}}@media (max-width:980px){.guard-grid{grid-template-columns:1fr}}.guard-manual-page{grid-column-gap:120px;align-items:flex-start;column-gap:120px;display:grid;grid-template-columns:minmax(0,1fr) 420px;min-height:100vh;padding:40px 56px 40px 40px;width:100%}.guard-manual-left{align-items:flex-start;align-self:flex-start;display:flex;flex-direction:column;gap:14px;max-width:520px;width:100%}@media (max-height:750px),(max-width:1024px){.guard-manual-page{grid-template-columns:1fr;padding:24px 16px 32px;row-gap:32px}.guard-manual-left{align-items:center;margin:0 auto 20px;text-align:center}.guard-manual-card{margin:0 auto}}.guard-manual-title{font-size:16px;font-weight:800;letter-spacing:1px;margin-bottom:16px}.guard-manual-search-wrap{margin-bottom:12px;width:100%}.guard-manual-search-input{background:#fffffff2;border:1px solid #00000040;border-radius:999px;box-shadow:0 4px 10px #0000002e;font-size:13px;outline:none;padding:10px 22px;text-align:center;width:100%}.guard-manual-search-icon{background:#d8ecff;border-radius:50%;box-shadow:0 4px 10px #0000002e;height:32px;position:relative;width:32px}.guard-manual-search-icon:before{border:2px solid #7878a0f2;border-radius:50%;content:"";inset:7px;position:absolute}.guard-manual-search-icon:after{background:#7878a0f2;border-radius:999px;bottom:6px;content:"";height:2px;position:absolute;right:4px;transform:rotate(40deg);width:10px}.guard-manual-card{align-self:flex-start;background:radial-gradient(circle at 0 0,#fff3,#0000 55%),linear-gradient(135deg,#e3b7ec,#d29ae4);border:1px solid #0006;border-radius:14px;box-shadow:0 4px 0 #0006,0 12px 18px #00000040;display:flex;flex-direction:column;gap:14px;height:auto;margin-top:0;max-height:none;max-width:420px;overflow:visible;padding:28px 26px 32px;position:relative;width:100%}.guard-manual-avatar{display:flex;justify-content:center;margin-bottom:12px;margin-top:4px}@media (max-height:750px),(max-width:1024px){.guard-manual-avatar-img{height:110px;width:110px}.guard-manual-row{margin-bottom:6px}.guard-manual-input{height:36px}.guard-manual-submit{margin-top:14px;padding:8px 26px}}.guard-manual-form-avatar-img{background:#dededc;border:3px solid #fffffff2;border-radius:50%;box-shadow:0 4px 10px #00000040;height:150px;object-fit:cover;width:150px}.guard-manual-suggestion-avatar-img{border-radius:50%;flex-shrink:0;height:36px;object-fit:cover;width:36px}.guard-manual-row{display:flex;gap:20px;margin-bottom:10px;width:100%}.guard-manual-row.single{flex-direction:column}.guard-manual-field{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:0}.guard-manual-label{font-size:12px;font-weight:600;margin-bottom:4px}.guard-manual-input{background:#e6e9f7;border:1px solid #00000059;border-radius:999px;box-shadow:0 2px 0 #00000038;font-size:12px;height:42px;padding:0 16px;width:100%}.guard-manual-input:read-only{color:#333}.guard-manual-error{color:#b00020}.guard-manual-error,.guard-manual-message{font-size:11px;margin-top:4px;text-align:center}.guard-manual-message{color:#065f46}.guard-manual-submit{align-self:center;background:#bd00e2;border:none;border-radius:999px;box-shadow:0 8px 16px #0000004d;color:#fff;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.5px;margin-top:6px;padding:6px 26px}.guard-manual-submit:hover:not(:disabled){background:#a000d2}.guard-manual-submit:disabled{cursor:default;opacity:.75}.guard-manual-suggestions{background:#fffffff2;border-radius:18px;box-shadow:0 8px 18px #00000040;margin-top:8px;overflow:hidden;width:min(420px,90vw)}.guard-manual-suggestion{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;gap:8px;padding:10px 14px;width:100%}.guard-manual-suggestion:hover{background:#f5f6ff}.guard-manual-suggestion+.guard-manual-suggestion{border-top:1px solid #00000014}.guard-manual-suggestion-avatar{background:#e3b7ec;border-radius:50%;height:32px;width:32px}.guard-manual-suggestion-name{font-size:13px;font-weight:700}.guard-manual-suggestion-roll{font-size:11px;opacity:.8}.guard-manual-modal-backdrop{align-items:center;background:#00000040;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.guard-manual-modal{background:#fff;border-radius:18px;box-shadow:0 10px 24px #0000004d;max-width:320px;min-width:260px;padding:24px 32px 20px;text-align:center}.guard-manual-modal-icon{align-items:center;background:#d1fae5;border-radius:50%;color:#059669;display:flex;font-size:32px;font-weight:700;height:56px;justify-content:center;margin:0 auto 12px;width:56px}.guard-manual-modal-icon svg{height:28px;width:28px}.guard-manual-modal-title{font-size:16px;font-weight:700;margin-bottom:16px}.guard-manual-modal-button{background:#bd00e2;border:none;border-radius:999px;box-shadow:0 6px 14px #00000040;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 26px}.guard-manual-modal-button:hover{background:#a000d2}.id-card{background:linear-gradient(145deg,#f9f7f1,#f5f0e6 50%,#efe8da);border:1px solid #0000001a;border-radius:12px;box-shadow:0 4px 20px #00000026,0 8px 40px #0000001a,inset 0 1px 0 #fffc;font-family:Segoe UI,Roboto,Arial,sans-serif;margin:0 auto;max-width:800px;overflow:hidden;width:100%}.id-card-header{align-items:flex-start;background:linear-gradient(180deg,#fcfbf8,#f5f0e6);border-bottom:1px solid #00000014;display:flex;gap:20px;padding:20px 24px 16px}.id-card-logo-section{align-items:center;display:flex;flex-direction:column;flex-shrink:0}.id-card-logo{height:80px;object-fit:contain;width:80px}.id-card-logo-text{color:#1a5c2e;font-size:11px;font-weight:700;letter-spacing:.3px;line-height:1.2;margin-top:4px;max-width:80px;text-align:center}.id-card-college-info{flex:1 1;text-align:center}.id-card-college-name-en{color:#0d4f8b;font-size:18px;font-weight:800;letter-spacing:.5px;line-height:1.3;margin-bottom:4px}.id-card-college-subtitle{color:#333;font-size:11px;font-style:italic;margin-bottom:6px}.id-card-college-name-hi{color:#b8860b;font-size:16px;font-weight:700;line-height:1.3}.id-card-college-subtitle-hi{color:#666;font-size:10px;margin-bottom:6px}.id-card-address{color:#555;font-size:10px;line-height:1.3}.id-card-tricolor{display:flex;height:8px}.id-card-title{background:linear-gradient(90deg,#0000,#c41e3a0d,#0000);color:#c41e3a;font-size:18px;font-weight:800;letter-spacing:2px;padding:14px 0;text-align:center;text-transform:uppercase}.id-card-body{grid-gap:30px;display:grid;gap:30px;grid-template-columns:180px 1fr;padding:24px 30px}.id-card-photo-section{align-items:flex-start;display:flex;justify-content:center}.id-card-photo-frame{background:#f0f0f0;border:3px solid #0d4f8b;box-shadow:0 4px 12px #0003;height:200px;overflow:hidden;width:160px}.id-card-photo{height:100%;object-fit:cover;width:100%}.id-card-photo-placeholder{align-items:center;background:#e0e0e0;color:#888;display:flex;font-size:48px;height:100%;justify-content:center;width:100%}.id-card-details{display:flex;flex-direction:column;gap:12px;padding-top:8px}.id-card-row{align-items:baseline;display:grid;font-size:16px;grid-template-columns:120px 15px 1fr}.id-card-colon,.id-card-label{color:#333;font-weight:600}.id-card-value{color:#000;font-weight:700;word-break:break-word}.id-card-footer{background:linear-gradient(180deg,#f0ebe0,#e8e0d0);border-top:1px solid #00000014;padding:12px 24px}.id-card-footer-text{color:#666;font-size:9px;font-style:italic;text-align:center}.sp-profile-stack{align-items:center;display:flex;flex-direction:column;max-width:800px;width:100%}.sp-edit-btn{align-items:center;background:#f7882f;background:var(--sd-apricot,#f7882f);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;margin-top:18px;min-height:44px;padding:0 22px;transition:background .2s}.sp-edit-btn:hover:not(:disabled){background:#e57a25}.sp-edit-btn:disabled{background:#c7ccd1;cursor:not-allowed}.sp-edit-note{color:#6c757d;color:var(--sd-muted,#6c757d);font-size:12px;line-height:1.5;margin:10px 0 0;max-width:480px;text-align:center}.sp-edit-success{background:#16a34a26;border:1px solid #16a34a66;border-radius:8px;color:#14532d;font-size:13px;font-weight:600;margin-top:16px;padding:10px 16px}.sp-edit-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.sp-edit-label{color:#6b7a8f;color:var(--sd-blueberry,#6b7a8f);font-size:13px;font-weight:700}.sp-edit-input{background:#fff;border:1px solid #d5d9de;border-radius:8px;color:#1a1a2e;color:var(--sd-dark,#1a1a2e);font-size:14px;height:44px;outline:none;padding:0 12px;width:100%}.sp-edit-input:focus{border-color:#f7882f;border-color:var(--sd-apricot,#f7882f)}.sp-edit-input:disabled{background:#f1f3f5;cursor:not-allowed}.sp-edit-select{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='%236C757D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:16px 16px;cursor:pointer;padding-right:34px}.sp-edit-select:disabled{cursor:not-allowed}.sp-edit-readonly{background:#f8f9fa;background:var(--sd-light-bg,#f8f9fa);border-radius:8px;display:flex;flex-direction:column;gap:6px;margin-bottom:14px;padding:12px}.sp-edit-readonly-row{color:#6c757d;color:var(--sd-muted,#6c757d);display:flex;font-size:13px;gap:12px;justify-content:space-between}.sp-edit-readonly-row strong{color:#1a1a2e;color:var(--sd-dark,#1a1a2e);word-break:break-word}.sp-edit-error{background:#dc26261a;border-left:3px solid #dc2626;border-radius:8px;color:#991b1b;font-size:13px;line-height:1.4;margin-top:12px;padding:10px 12px}.sp-edit-actions{display:flex;gap:10px;margin-top:18px}.sp-edit-cancel,.sp-edit-save{border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;height:44px;transition:background .2s}.sp-edit-cancel{background:#fff;border:1px solid #d5d9de;color:#6c757d;color:var(--sd-muted,#6c757d)}.sp-edit-cancel:hover:not(:disabled){background:#f1f3f5}.sp-edit-save{background:#f7882f;background:var(--sd-apricot,#f7882f);border:none;color:#fff}.sp-edit-save:hover:not(:disabled){background:#e57a25}.sp-edit-cancel:disabled,.sp-edit-save:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.id-card{border-radius:8px;max-width:100%}.id-card-header{align-items:center;flex-direction:column;padding:12px}.id-card-logo-section{align-items:center;flex-direction:row;gap:8px}.id-card-logo{height:40px;width:40px}.id-card-logo-text{font-size:9px;max-width:none}.id-card-college-name-en{font-size:11px}.id-card-college-name-hi{font-size:10px}.id-card-body{gap:14px;grid-template-columns:1fr;padding:14px}.id-card-photo-section{justify-content:center}.id-card-photo-frame{height:144px;width:120px}.id-card-details{gap:8px}.id-card-row{font-size:12px;grid-template-columns:90px 12px 1fr}.id-card-title{font-size:12px;padding:10px 0}}@media (min-width:481px) and (max-width:768px){.id-card{max-width:480px}.id-card-body{grid-template-columns:100px 1fr}}:root{--gothru-blueberry:#6b7a8f;--gothru-blueberry-dark:#4a5568;--gothru-blueberry-light:#7d8ba0;--gothru-apricot:#f7882f;--gothru-citrus:#f7c331;--gothru-apple-core:#dcc7aa;--gothru-apple-core-light:#e8d8c4;--gothru-font:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--gothru-card-radius:32px;--gothru-input-radius:14px;--gothru-btn-radius:999px;--gothru-card-shadow:0 25px 50px -12px #00000040;--gothru-input-shadow:inset 0 2px 4px #0000000f;--gothru-btn-shadow:0 4px 14px #f7882f66;--gothru-btn-hover-shadow:0 8px 25px #f7882f80}.gothru-auth-page{background:#fff;flex-direction:column;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--gothru-font);justify-content:flex-start;min-height:100vh;min-height:100dvh;overflow-x:hidden;overflow-y:auto;padding:0}.gothru-auth-page,.gothru-institution-banner{align-items:center;box-sizing:border-box;display:flex;position:relative}.gothru-institution-banner{background:#6b7a8f;flex-shrink:0;justify-content:center;padding:12px 16px;width:100%;z-index:1}.gothru-institution-banner img{height:auto;max-height:60px;max-width:100%;object-fit:contain}@media (min-width:769px){.gothru-institution-banner{padding:16px 24px}.gothru-institution-banner img{max-height:70px}}.gothru-feature-section{align-items:stretch;background:#f7c331;border:2px solid #f7882f;border-radius:24px;box-shadow:0 8px 32px #0000001f,0 4px 16px #f7c33133;box-sizing:border-box;display:flex;flex-direction:row;flex-shrink:0;gap:8px;height:200px;margin-bottom:12px;margin-top:16px;max-width:380px;padding:12px 16px 10px;width:100%}.gothru-animation-area{align-items:center;background-color:initial;border-radius:12px;flex:0 0 42%;min-height:150px;overflow:visible;padding:0;width:42%}.gothru-animation-area,.gothru-headline-area{box-sizing:border-box;display:flex;justify-content:center}.gothru-headline-area{align-items:flex-start;flex:1 1 58%;flex-direction:column;padding:0 4px 0 0;width:58%}.poppins-semibold{font-family:Poppins,sans-serif;font-weight:600}.poppins-medium{font-family:Poppins,sans-serif;font-weight:500}.gothru-headline-dynamic,.gothru-headline-line{color:#fff;font-family:Poppins,sans-serif;font-size:24px;font-weight:600;line-height:1.1;margin:0;text-align:left}.gothru-headline-dynamic{min-height:28px}.gothru-headline-tagline{color:#5a3d00;font-family:Poppins,sans-serif;font-size:18px;font-weight:500;line-height:1.2;margin:6px 0 0;text-align:left}.gothru-version-footer{color:#fff;font-family:Poppins,sans-serif;font-size:12px;font-weight:400;margin-top:auto;opacity:.8;padding:16px 20px;text-align:center;width:100%}.gothru-support-line{font-size:12px;margin-top:4px}.gothru-launch-date{margin-bottom:8px}.gothru-launch-date,.gothru-managed-section{color:#444;font-size:14px;font-weight:700;letter-spacing:.4px;text-align:center}.gothru-managed-section{box-sizing:border-box;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--gothru-font);margin:14px auto 8px;max-width:92vw;padding:0 20px;width:520px}.gothru-auth-content{align-items:flex-start;box-sizing:border-box;display:flex;flex:1 1;justify-content:center;padding:32px 20px 24px;position:relative;width:100%;z-index:1}@media (max-width:768px){.gothru-auth-content{align-items:flex-start;padding:24px 16px}}.gothru-auth-card{background:linear-gradient(180deg,#000 0 0,#6b7a8f 40%,#7d8ba0);background:linear-gradient(180deg,#000 0 0,var(--gothru-blueberry) 40%,var(--gothru-blueberry-light) 100%);border-radius:24px;box-shadow:0 12px 40px #0003,0 6px 20px #6b7a8f26;max-width:380px;overflow:hidden;padding:32px 32px 40px;position:relative;width:100%;z-index:1}.gothru-auth-card:before{background:linear-gradient(135deg,#f7882f59,#f7c33140 50%,#0000) border-box;border:60px solid #0000;border-radius:50%;bottom:-80px;filter:blur(8px);height:300px;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;right:-100px;width:300px}.gothru-auth-card:after,.gothru-auth-card:before{content:"";pointer-events:none;position:absolute;z-index:0}.gothru-auth-card:after{background:linear-gradient(225deg,#f7c33126,#f7882f1a 50%,#0000);border-radius:50%;filter:blur(20px);height:250px;left:-80px;top:-60px;width:250px}.gothru-brand{margin-bottom:36px;position:relative;text-align:center;z-index:1}.gothru-brand-name{color:#fff;display:block;font-size:28px;font-weight:700;letter-spacing:-.5px}.gothru-brand-tagline{color:#ffffffe6;display:block;font-size:11px;font-weight:500;letter-spacing:.5px;margin-top:4px}.gothru-form-title{color:#fff;font-size:22px;font-weight:600;margin:0 0 28px;position:relative;text-align:left;z-index:1}.gothru-form{display:flex;flex-direction:column;gap:18px;position:relative;z-index:1}.gothru-form-subtitle{color:#ffffffd9;font-size:13px;line-height:1.5;margin:-16px 0 8px;position:relative;z-index:1}.gothru-otp-container{display:flex;gap:8px;justify-content:space-between}.gothru-otp-box{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#dcc7aa66;border:1px solid #f7c33133;border-radius:12px;box-shadow:inset 0 2px 4px #0000000f;box-shadow:var(--gothru-input-shadow);color:#1a202c;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--gothru-font);font-size:20px;font-weight:600;height:52px;outline:none;text-align:center;transition:all .2s ease;width:44px}.gothru-otp-box:focus{border-color:#f7c331;border-color:var(--gothru-citrus);box-shadow:inset 0 2px 4px #0000000f,0 0 0 3px #f7c33126;box-shadow:var(--gothru-input-shadow),0 0 0 3px #f7c33126}.gothru-otp-box::placeholder{color:#4a556866}.gothru-input-group{display:flex;flex-direction:column;gap:6px}.gothru-label{color:#fff;font-size:11px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.gothru-input-wrapper{align-items:center;display:flex;position:relative}.gothru-input,.gothru-select{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#fffc;border:1px solid #f7c33133;border-radius:14px;border-radius:var(--gothru-input-radius);box-shadow:inset 0 2px 4px #0000000f;box-shadow:var(--gothru-input-shadow);box-sizing:border-box;color:#1a202c;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--gothru-font);font-size:14px;font-weight:500;height:48px;outline:none;padding:0 16px;transition:all .2s ease;width:100%}.gothru-input::placeholder{color:#4a5568b3;opacity:1}.gothru-input:focus,.gothru-select:focus{border-color:#f7c331;border-color:var(--gothru-citrus);box-shadow:inset 0 2px 4px #0000000f,0 0 0 3px #f7c33126;box-shadow:var(--gothru-input-shadow),0 0 0 3px #f7c33126}.gothru-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7A8F' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}.gothru-input-password{padding-right:48px}.gothru-password-toggle{align-items:center;background:#0000;border:none;color:#6b7a8f80;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;padding:0;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:color .15s ease;width:32px}.gothru-password-toggle:hover{color:#4a5568;color:var(--gothru-blueberry-dark)}.gothru-password-toggle:focus{outline:none}.gothru-input-icon{align-items:center;color:#6b7a8f59;display:flex;font-size:14px;justify-content:center;pointer-events:none;position:absolute;right:14px;top:50%;transform:translateY(-50%)}.gothru-input-icon svg{height:16px;width:16px}.gothru-btn{background:linear-gradient(90deg,#f7882f,#f7c331);background:linear-gradient(90deg,var(--gothru-apricot) 0,var(--gothru-citrus) 100%);border:none;border-radius:999px;border-radius:var(--gothru-btn-radius);box-shadow:0 4px 14px #f7882f66;box-shadow:var(--gothru-btn-shadow);color:#fff;cursor:pointer;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--gothru-font);font-size:15px;font-weight:600;height:52px;margin-top:10px;overflow:hidden;position:relative;transition:all .2s ease;width:100%}.gothru-btn:before{background:linear-gradient(90deg,#ffffff1a,#0000);content:"";inset:0;opacity:0;position:absolute;transition:opacity .2s ease}.gothru-btn:hover:not(:disabled){box-shadow:0 8px 25px #f7882f80;box-shadow:var(--gothru-btn-hover-shadow);transform:translateY(-2px)}.gothru-btn:hover:not(:disabled):before{opacity:1}.gothru-btn:active:not(:disabled){box-shadow:0 4px 14px #f7882f66;box-shadow:var(--gothru-btn-shadow);transform:translateY(0)}.gothru-btn:disabled{cursor:not-allowed;opacity:.6}.gothru-btn:focus-visible{outline:2px solid #f7c331;outline:2px solid var(--gothru-citrus);outline-offset:2px}.gothru-link-row{display:flex;justify-content:center;margin-top:8px}.gothru-link{color:#dcc7aa;color:var(--gothru-apple-core);cursor:pointer;font-size:13px;font-weight:400;text-decoration:none;transition:color .15s ease}.gothru-link:hover{color:#f7882f;color:var(--gothru-apricot)}.gothru-link-accent{color:#f7c331;color:var(--gothru-citrus);font-weight:600}.gothru-link-accent:hover{color:#f7882f;color:var(--gothru-apricot)}.gothru-forgot-link{color:#fff;font-size:12px;margin-bottom:6px;margin-top:-8px;text-align:right}.gothru-forgot-link:hover{color:#dcc7aa;color:var(--gothru-apple-core)}.gothru-footer{color:#ffffffe6;font-size:13px;margin-top:20px;text-align:center}.gothru-footer-link{color:#f7c331;color:var(--gothru-citrus);cursor:pointer;font-weight:600;transition:color .15s ease}.gothru-footer-link:hover{color:#f7882f;color:var(--gothru-apricot)}.gothru-image-preview{display:flex;justify-content:center;margin-top:8px}.gothru-image-preview img{border:2px solid #f7c331;border:2px solid var(--gothru-citrus);border-radius:50%;box-shadow:0 4px 12px #00000026;height:56px;object-fit:cover;width:56px}.gothru-input[type=file]{align-items:center;background:#6b7a8f;background:var(--gothru-blueberry);display:flex;font-size:12px;height:auto;min-height:44px;padding:0}.gothru-input[type=file]::-webkit-file-upload-button{background:linear-gradient(90deg,#f7882f,#f7c331);background:linear-gradient(90deg,var(--gothru-apricot),var(--gothru-citrus));border:none;border-radius:14px 0 0 14px;border-radius:var(--gothru-input-radius) 0 0 var(--gothru-input-radius);color:#fff;cursor:pointer;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--gothru-font);font-size:11px;font-weight:600;height:100%;margin:0 12px 0 0;padding:12px 18px;-webkit-transition:filter .15s ease;transition:filter .15s ease}.gothru-input[type=file]::file-selector-button{background:linear-gradient(90deg,#f7882f,#f7c331);background:linear-gradient(90deg,var(--gothru-apricot),var(--gothru-citrus));border:none;border-radius:14px 0 0 14px;border-radius:var(--gothru-input-radius) 0 0 var(--gothru-input-radius);color:#fff;cursor:pointer;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--gothru-font);font-size:11px;font-weight:600;height:100%;margin:0 12px 0 0;padding:12px 18px;transition:filter .15s ease}.gothru-input[type=file]::-webkit-file-upload-button:hover{filter:brightness(1.05)}.gothru-input[type=file]::file-selector-button:hover{filter:brightness(1.05)}.gothru-auth-card--signup{max-width:400px;padding:40px 28px 36px}.gothru-auth-card--signup .gothru-form{gap:14px}.gothru-auth-card--signup .gothru-input,.gothru-auth-card--signup .gothru-select{font-size:13px;height:44px}@media (max-width:380px){.gothru-auth-card{border-radius:24px;padding:36px 24px 32px}.gothru-brand-name{font-size:24px}.gothru-form-title{font-size:20px}.gothru-input,.gothru-select{font-size:13px;height:44px}.gothru-btn{font-size:14px;height:48px}}@media (min-width:768px){.gothru-auth-card{padding:56px 40px 48px}.gothru-brand-name{font-size:32px}.gothru-form-title{font-size:24px}.gothru-input,.gothru-select{font-size:15px;height:52px}.gothru-btn{font-size:16px;height:56px}.gothru-auth-card--signup{max-width:440px}}@media (min-width:1024px){.gothru-auth-card{max-width:420px}.gothru-auth-card--signup{max-width:480px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.gothru-input:focus-visible,.gothru-link:focus-visible,.gothru-select:focus-visible{outline:2px solid #f7c331;outline:2px solid var(--gothru-citrus);outline-offset:2px}.crop-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.crop-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:24px;width:100%}.crop-modal-title{color:#1a1a2e;font-size:1.3rem;font-weight:700;margin:0 0 4px;text-align:center}.crop-modal-subtitle{color:#666;font-size:.9rem;margin:0 0 20px;text-align:center}.crop-container{background:#f0f0f0;border-radius:12px;height:280px;overflow:hidden;position:relative;width:100%}.crop-zoom-control{align-items:center;display:flex;gap:12px;margin:20px 0;padding:0 8px}.crop-zoom-label{color:#666;font-size:.85rem;font-weight:500;min-width:45px}.crop-zoom-slider{-webkit-appearance:none;appearance:none;background:#e0e0e0;border-radius:3px;flex:1 1;height:6px;outline:none}.crop-zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,#6c5ce7,#4a69bd);border-radius:50%;box-shadow:0 2px 8px #6c5ce766;cursor:pointer;height:20px;-webkit-transition:transform .2s ease;transition:transform .2s ease;width:20px}.crop-zoom-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.crop-zoom-slider::-moz-range-thumb{background:linear-gradient(135deg,#6c5ce7,#4a69bd);border:none;border-radius:50%;box-shadow:0 2px 8px #6c5ce766;cursor:pointer;height:20px;width:20px}.crop-modal-actions{display:flex;gap:12px;margin-top:8px}.crop-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:600;padding:12px 20px;transition:all .2s ease}.crop-btn-cancel{background:#f0f0f0;color:#666}.crop-btn-cancel:hover{background:#e0e0e0}.crop-btn-confirm{background:linear-gradient(135deg,#6c5ce7,#4a69bd);color:#fff}.crop-btn-confirm:hover{box-shadow:0 4px 12px #6c5ce766;transform:translateY(-1px)}@media (max-width:450px){.crop-modal{padding:20px 16px}.crop-container{height:240px}.crop-modal-title{font-size:1.1rem}}.gothru-camera-section{width:100%}.gothru-camera-btn{align-items:center;background:linear-gradient(135deg,#f7882f,#f7c331);background:linear-gradient(135deg,var(--gothru-apricot),var(--gothru-citrus));border:none;border-radius:14px;border-radius:var(--gothru-input-radius);color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:16px 24px;transition:all .3s ease;width:100%}.gothru-camera-btn:hover{box-shadow:0 8px 25px #f7882f80;box-shadow:var(--gothru-btn-hover-shadow);transform:translateY(-2px)}.gothru-photo-captured{align-items:center;display:flex;flex-direction:column;gap:12px}.gothru-captured-image{border:4px solid #f7882f;border:4px solid var(--gothru-apricot);border-radius:50%;box-shadow:0 4px 12px #00000026;height:120px;object-fit:cover;width:120px}.gothru-retake-btn{background:#f0f0f0;border:none;border-radius:8px;color:#666;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.gothru-retake-btn:hover{background:#e0e0e0}.camera-modal{max-width:400px}.camera-container{background:#000;border-radius:12px;height:300px;margin-bottom:16px;overflow:hidden;position:relative;width:100%}.camera-video{height:100%;object-fit:cover;transform:scaleX(-1);width:100%}.camera-overlay{align-items:center;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;top:0}.camera-frame{border:3px dashed #fff9;border-radius:50%;height:200px;width:200px}.camera-error{align-items:center;color:#fff;display:flex;flex-direction:column;height:100%;justify-content:center;padding:20px;text-align:center}.camera-error p{font-size:.95rem;margin-bottom:16px}.camera-capture-btn{background:linear-gradient(135deg,#e74c3c,#c0392b)!important}.camera-capture-btn:hover{box-shadow:0 4px 12px #e74c3c66!important}.camera-capture-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:450px){.camera-container{height:250px}.camera-frame{height:160px;width:160px}}.signup-confirm-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.signup-confirm-modal{animation:slideUp .3s ease;background:#fff;border-radius:24px;box-shadow:0 25px 60px #0000004d;max-height:90vh;max-width:520px;overflow-y:auto;padding:32px;width:100%}.signup-confirm-icon{font-size:48px;margin-bottom:16px;text-align:center}.signup-confirm-title{color:#1a1a2e;font-size:24px;font-weight:700;margin:0 0 20px;text-align:center}.signup-confirm-content{margin-bottom:24px}.signup-confirm-warning{color:#4a5568;font-size:15px;line-height:1.5;margin-bottom:20px;text-align:center}.signup-confirm-list{display:flex;flex-direction:column;gap:14px;list-style:none;margin:0;padding:0}.signup-confirm-list li{align-items:flex-start;background:linear-gradient(135deg,#fff8f0,#fff5eb);border:1px solid #fed7aa;border-left:4px solid #f7882f;border-radius:12px;color:#4a5568;display:flex;font-size:14px;gap:12px;line-height:1.5;padding:14px 16px}.confirm-bullet{flex-shrink:0;font-size:18px}.signup-confirm-list li strong{color:#c2410c;font-weight:600}.signup-confirm-photo-preview{align-items:center;display:flex;flex-direction:column;gap:10px;margin-top:20px}.photo-preview-label{color:#6b7a8f;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.photo-preview-img{border:4px solid #f7882f;border-radius:50%;box-shadow:0 4px 16px #f7882f4d;height:100px;object-fit:cover;width:100px}.signup-confirm-actions{display:flex;gap:12px;margin-top:8px}.signup-confirm-btn{border:none;border-radius:12px;cursor:pointer;flex:1 1;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--gothru-font);font-size:15px;font-weight:600;padding:14px 20px;transition:all .2s ease}.signup-confirm-btn.edit-btn{background:#f3f4f6;color:#4a5568}.signup-confirm-btn.edit-btn:hover{background:#e5e7eb;transform:translateY(-2px)}.signup-confirm-btn.submit-btn{background:linear-gradient(135deg,#f7882f,#e07422);box-shadow:0 4px 14px #f7882f66;color:#fff}.signup-confirm-btn.submit-btn:hover{background:linear-gradient(135deg,#e07422,#c96418);box-shadow:0 6px 20px #f7882f80;transform:translateY(-2px)}@media (max-width:500px){.signup-confirm-modal{border-radius:20px;padding:24px 20px}.signup-confirm-title{font-size:20px}.signup-confirm-list li{font-size:13px;padding:12px 14px}.signup-confirm-actions{flex-direction:column}.signup-confirm-btn{padding:16px}.signup-confirm-btn.edit-btn{order:2}.signup-confirm-btn.submit-btn{order:1}}:root{--sd-blueberry:#6b7a8f;--sd-apricot:#f7882f;--sd-citrus:#f7c331;--sd-apple-core:#dcc7aa;--sd-white:#fff;--sd-dark:#1a1a2e;--sd-muted:#6c757d;--sd-light-bg:#f8f9fa}.sd-shell{background:#f8f9fa;background:var(--sd-light-bg);display:flex;flex-direction:column;min-height:100vh}.sd-header{align-items:center;background:#6b7a8f;background:var(--sd-blueberry);display:flex;height:56px;justify-content:space-between;padding:0 16px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.sd-header-brand{display:flex;flex-direction:column;line-height:1.1}.sd-logo{color:#fff;color:var(--sd-white);font-size:20px;font-weight:800;letter-spacing:.5px}.sd-logo-sub{color:#ffffffb3;font-size:10px}.sd-header-actions{align-items:center;display:flex;gap:12px}.sp-back-btn{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;border:1px solid #fff3;border-radius:25px;box-shadow:0 2px 8px #0000001a;color:#fff;color:var(--sd-white);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 18px;transition:all .3s ease}.sp-back-btn:hover{background:#ffffff38;border-color:#ffffff59;box-shadow:0 4px 12px #00000026;transform:translateX(-3px)}.sp-back-btn:active{transform:translateX(-1px)}.sp-back-btn svg{flex-shrink:0;height:16px;transition:transform .3s ease;width:16px}.sp-back-btn:hover svg{transform:translateX(-2px)}.sd-profile-btn{align-items:center;background:#dcc7aa;background:var(--sd-apple-core);border:2px solid #ffffff4d;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;overflow:hidden;width:36px}.sd-profile-img{height:100%;object-fit:cover;width:100%}.sd-profile-initials{color:#1a1a2e;color:var(--sd-dark);font-size:14px;font-weight:700}.sd-logout-btn{align-items:center;background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.sd-logout-btn:hover{background:#ef444433;border-color:#ef444466}.sd-logout-btn svg{color:#fff;color:var(--sd-white);height:18px;width:18px}.sd-logout-btn:hover svg{color:#fca5a5}.sd-logout-modal{max-width:320px;text-align:center}.sd-logout-icon{font-size:48px;margin-bottom:12px}.sd-logout-text{color:#6c757d;color:var(--sd-muted);font-size:14px;margin-bottom:24px}.sd-logout-actions{display:flex;gap:12px;justify-content:center}.sd-logout-cancel-btn{background:#fff;background:var(--sd-white);border:1px solid #6b7a8f;border:1px solid var(--sd-blueberry);border-radius:8px;color:#6b7a8f;color:var(--sd-blueberry);cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.sd-logout-cancel-btn:hover{background:#f8f9fa;background:var(--sd-light-bg)}.sd-logout-confirm-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:8px;color:#fff;color:var(--sd-white);cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.sd-logout-confirm-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px)}.sd-main{display:flex;flex:1 1;flex-direction:column;gap:16px;margin:0 auto;max-width:1200px;padding:16px;width:100%}.sd-ban-banner{align-items:flex-start;animation:pulse-ban 2s ease-in-out infinite;background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #f87171;border-radius:12px;display:flex;gap:14px;margin-bottom:16px;padding:16px 20px}@keyframes pulse-ban{0%,to{box-shadow:0 0 0 0 #f8717166}50%{box-shadow:0 0 0 8px #f8717100}}.sd-ban-icon{flex-shrink:0;font-size:28px}.sd-ban-content{display:flex;flex-direction:column;gap:4px}.sd-ban-title{color:#dc2626;font-size:16px;font-weight:700}.sd-ban-message{color:#b91c1c;font-size:13px;font-weight:500;line-height:1.4}.sd-action-btn.disabled-banned{background:#f3f4f6!important;color:#9ca3af!important;cursor:not-allowed!important;opacity:.7}.sd-action-btn.disabled-banned:hover{box-shadow:none!important;transform:none!important}.sd-action-btn.disabled-maintenance{background:#f3f4f6!important;color:#9ca3af!important;cursor:not-allowed!important;opacity:.7}.sd-action-btn.disabled-maintenance:hover{box-shadow:none!important;transform:none!important}.sd-maintenance-note{background:#f7c3311f;border-left:3px solid #f7c331;border-left:3px solid var(--sd-citrus);border-radius:6px;color:#1a1a2e;color:var(--sd-dark);font-size:12px;line-height:1.4;margin-top:10px;padding:10px 12px}.sd-stats-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.sd-stat-card{background:#fff;background:var(--sd-white);border:1px solid #dcc7aa;border:1px solid var(--sd-apple-core);border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:12px}.sd-stat-label{color:#6c757d;color:var(--sd-muted);font-size:10px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.sd-stat-value{font-size:18px;font-weight:700}.sd-stat-value,.sd-stat-value-sm{color:#1a1a2e;color:var(--sd-dark)}.sd-stat-value-sm{font-size:13px;font-weight:600}.sd-stat-badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:700;padding:4px 8px;width:-webkit-fit-content;width:fit-content}.sd-stat-badge.inside{background:#27ae6026;color:#27ae60}.sd-stat-badge.outside{background:#f7882f26;color:#f7882f;color:var(--sd-apricot)}.sd-greeting{display:flex;flex-direction:column;gap:8px;padding:16px 0}.sd-greeting-text h1{color:#1a1a2e;color:var(--sd-dark);font-size:22px;font-weight:700;margin:0 0 4px}.sd-datetime{color:#6c757d;color:var(--sd-muted);font-size:13px;margin:0}.sd-status-pill{align-items:center;border-radius:20px;display:flex;font-size:12px;font-weight:600;gap:6px;padding:6px 12px;width:-webkit-fit-content;width:fit-content}.sd-status-pill.inside{background:#27ae601f;color:#27ae60}.sd-status-pill.outside{background:#f7882f1f;color:#f7882f;color:var(--sd-apricot)}.sd-status-dot{animation:pulse 2s infinite;background:currentColor;border-radius:50%;height:8px;width:8px}.sd-actions-section{display:flex;flex-direction:column;gap:10px}.sd-section-label{color:#6b7a8f;color:var(--sd-blueberry);font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.sd-actions-row{display:flex;flex-direction:column;gap:10px}.sd-action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:10px;height:52px;justify-content:center;transition:all .2s ease}.sd-action-btn.primary{background:#f7882f;background:var(--sd-apricot);color:#fff;color:var(--sd-white)}.sd-action-btn.primary.primary-entry{background:#22c55e}.sd-action-btn.primary.primary-entry:hover{background:#16a34a;box-shadow:0 4px 12px #22c55e4d}.sd-action-btn.primary.primary-exit{background:#f7882f;background:var(--sd-apricot)}.sd-action-btn.primary.primary-exit:hover{background:#e57a25;box-shadow:0 4px 12px #f7882f4d}.sd-action-btn.primary:disabled{background:#ccc;cursor:not-allowed}.sd-action-btn.secondary{background:#0000;border:2px solid #f7882f;border:2px solid var(--sd-apricot);color:#f7882f;color:var(--sd-apricot)}.sd-action-btn.secondary:hover{background:#f7882f14}.sd-btn-icon{font-size:16px}.sd-hint{background:#f7c33126;border-left:3px solid #f7c331;border-left:3px solid var(--sd-citrus);border-radius:4px;color:#1a1a2e;color:var(--sd-dark);font-size:13px;padding:12px}.sd-hint.sd-hint-with-action{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.sd-hint-btn{background:#f7882f;background:var(--sd-apricot);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.sd-hint-btn:hover{background:#e57a25;box-shadow:0 4px 12px #f7882f4d}.sd-error{background:#dc35451a;border-left:3px solid #dc3545;border-radius:4px;color:#dc3545;font-size:13px;padding:12px}.sd-activity-section{display:flex;flex:1 1;flex-direction:column;gap:10px;min-height:0}.sd-activity-header{align-items:center;display:flex;justify-content:space-between}.sd-view-all{color:#f7882f;color:var(--sd-apricot);cursor:pointer;font-size:12px;font-weight:600}.sd-activity-table-container{-webkit-overflow-scrolling:touch;background:#dcc7aa;background:var(--sd-apple-core);border-radius:10px;flex:1 1;max-height:300px;overflow:hidden;overflow-x:auto;overflow-y:auto}.sd-empty-state{color:#6c757d;color:var(--sd-muted);font-size:14px;padding:40px;text-align:center}.sd-activity-table{border-collapse:collapse;font-size:12px;min-width:580px;width:100%}.sd-activity-table thead{background:#6b7a8f;background:var(--sd-blueberry);color:#fff;color:var(--sd-white);position:-webkit-sticky;position:sticky;top:0}.sd-activity-table th{font-size:10px;font-weight:600;letter-spacing:.3px;padding:10px 8px;text-align:left;text-transform:uppercase}.sd-activity-table tbody tr{background:#fff;background:var(--sd-white);border-bottom:1px solid #0000000f}.sd-activity-table tbody tr:nth-child(2n){background:#fdfbf7}.sd-activity-table td{padding:10px 8px;vertical-align:middle}.sd-td-purpose{color:#1a1a2e;color:var(--sd-dark);font-weight:600;max-width:100px}.sd-td-location,.sd-td-purpose{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-td-location{color:#6c757d;color:var(--sd-muted);max-width:80px}.sd-td-time{color:#1a1a2e;color:var(--sd-dark)}.sd-td-date,.sd-td-time{font-family:Courier New,monospace;font-size:11px;white-space:nowrap}.sd-td-date{color:#6c757d;color:var(--sd-muted)}.sd-gp-badge{border-radius:3px;display:inline-block;font-size:9px;font-weight:700;margin-left:4px;padding:2px 5px}.sd-gp-badge.local{background:#f7c331;background:var(--sd-citrus);color:#1a1a2e;color:var(--sd-dark)}.sd-gp-badge.os{background:#f7882f;background:var(--sd-apricot);color:#fff;color:var(--sd-white)}.sd-status-badge{border-radius:4px;font-size:10px;font-weight:600;padding:3px 8px;white-space:nowrap}.sd-status-badge.completed{background:#27ae6026;color:#27ae60}.sd-status-badge.in-progress{background:#f7c33133;color:#b8860b}.sd-status-badge.pending{background:#6c757d26;color:#6c757d;color:var(--sd-muted)}.sd-status-badge.rejected{background:#e74c3c26;color:#e74c3c}.sd-footer{color:#6c757d;color:var(--sd-muted);font-size:11px;margin-top:auto;padding:16px;text-align:center}.sd-footer-query{margin-top:4px}@media (min-width:768px){.sd-main{gap:20px;padding:24px 40px}.sd-stats-row{gap:16px;grid-template-columns:repeat(4,1fr)}.sd-stat-card{padding:16px}.sd-stat-value{font-size:24px}.sd-greeting{align-items:center;flex-direction:row;justify-content:space-between;padding:20px 0}.sd-greeting-text h1{font-size:28px}.sd-actions-row{flex-direction:row}.sd-action-btn{flex:1 1;height:48px}.sd-activity-table-container{max-height:400px}.sd-activity-table{font-size:13px}.sd-activity-table td,.sd-activity-table th{padding:12px 16px}.sd-td-location,.sd-td-purpose{max-width:none}}@media (min-width:1024px){.sd-main{padding:32px 80px}.sd-greeting-text h1{font-size:32px}.sd-activity-table-container{max-height:500px}}.sd-help-btn{align-items:center;background:#6b7a8f;background:var(--sd-blueberry);border-radius:50%;color:#fff;color:var(--sd-white);cursor:pointer;display:inline-flex;font-size:10px;font-weight:700;height:16px;justify-content:center;margin-left:6px;transition:background .2s;vertical-align:middle;width:16px}.sd-help-btn:hover{background:#f7882f;background:var(--sd-apricot)}.sd-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.sd-popup-overlay{z-index:12000}.sd-modal{background:#fff;background:var(--sd-white);border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;padding:24px;position:relative;width:100%}.sd-modal-close{align-items:center;background:#f8f9fa;background:var(--sd-light-bg);border:none;border-radius:50%;color:#6c757d;color:var(--sd-muted);cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;position:absolute;right:12px;top:12px;width:28px}.sd-modal-close:hover{background:#e0e0e0}.sd-modal-title{color:#1a1a2e;color:var(--sd-dark);font-size:18px;font-weight:700;margin:0 0 16px}.sd-modal-content{display:flex;flex-direction:column;gap:16px}.sd-modal-section{background:#f8f9fa;background:var(--sd-light-bg);border-radius:8px;padding:12px}.sd-modal-label{color:#6b7a8f;color:var(--sd-blueberry);font-size:13px;font-weight:700;margin-bottom:6px}.sd-modal-section p{font-size:13px;margin:0}.sd-modal-note,.sd-modal-section p{color:#1a1a2e;color:var(--sd-dark);line-height:1.5}.sd-modal-note{background:#f7c33126;border-left:3px solid #f7c331;border-left:3px solid var(--sd-citrus);border-radius:4px;font-size:12px;padding:12px}.sd-modal-btn{background:#f7882f;background:var(--sd-apricot);border:none;border-radius:8px;color:#fff;color:var(--sd-white);cursor:pointer;font-size:14px;font-weight:600;height:44px;margin-top:16px;transition:background .2s;width:100%}.sd-modal-btn:hover{background:#e57a25}.sa-back-btn{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;border:1px solid #fff3;border-radius:25px;box-shadow:0 2px 8px #0000001a;color:#fff;color:var(--sd-white);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 18px;transition:all .3s ease}.sa-back-btn:hover{background:#ffffff38;border-color:#ffffff59;box-shadow:0 4px 12px #00000026;transform:translateX(-3px)}.sa-back-btn:active{transform:translateX(-1px)}.sa-back-btn svg{height:16px;transition:transform .3s ease;width:16px}.sa-back-btn:hover svg{transform:translateX(-2px)}.sa-main{align-items:center;padding-top:32px}.sa-launch-date{color:#444;font-size:14px;letter-spacing:.4px;margin-bottom:8px}.sa-launch-date,.sa-title{font-weight:700;text-align:center}.sa-title{color:#1a1a2e;color:var(--sd-dark);font-size:24px;margin:0 0 24px}.sa-form{gap:20px;max-width:400px;width:100%}.sa-field,.sa-form{display:flex;flex-direction:column}.sa-field{gap:8px}.sa-label{color:#6b7a8f;color:var(--sd-blueberry);font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.sa-input{background:#fff;background:var(--sd-white);border:2px solid #dcc7aa;border:2px solid var(--sd-apple-core);border-radius:10px;color:#1a1a2e;color:var(--sd-dark);font-size:15px;padding:14px 16px;transition:border-color .2s}.sa-input:focus{border-color:#f7882f;border-color:var(--sd-apricot);outline:none}.sa-input::placeholder{color:#aaa}.sa-info{color:#6c757d;color:var(--sd-muted);font-size:14px;margin:0;text-align:center}.sa-submit-btn{align-items:center;background:#f7882f;background:var(--sd-apricot);border:none;border-radius:12px;color:#fff;color:var(--sd-white);cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;margin-top:8px;padding:16px;transition:all .2s ease}.sa-submit-btn:hover{background:#e57a25;box-shadow:0 4px 16px #f7882f59;transform:translateY(-1px)}.sa-submit-btn:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.sa-error{background:#dc35451a;border-left:3px solid #dc3545;border-radius:6px;color:#dc3545;font-size:13px;padding:12px}.sa-qr-section{display:flex;justify-content:center;padding:0 16px;width:100%}.sa-qr-card{border-radius:20px;box-shadow:0 8px 32px #00000014;max-width:320px;padding:24px}.sa-qr-instruction{color:#6b7a8f;color:var(--sd-blueberry);font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-transform:uppercase}.sa-qr-image{aspect-ratio:1;border:3px solid #dcc7aa;border:3px solid var(--sd-apple-core);border-radius:12px;display:block;height:auto;margin:0 auto;max-width:220px;width:100%}.sa-timer{color:#6c757d;color:var(--sd-muted);font-size:14px;margin-top:16px}.sa-timer-value{color:#f7882f;color:var(--sd-apricot);font-family:Courier New,monospace;font-size:18px;font-weight:700}.sa-expired{color:#dc3545;font-size:16px;font-weight:700;padding:24px}.sa-rejection-screen{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:50vh;padding:40px 20px;text-align:center}.sa-rejection-icon{animation:shake .5s ease-in-out;font-size:64px;margin-bottom:20px}@keyframes shake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-10px)}40%,80%{transform:translateX(10px)}}.sa-rejection-title{color:#e74c3c;font-size:28px;font-weight:700;margin-bottom:12px}.sa-rejection-message{color:var(--sd-text);font-size:16px;margin-bottom:8px}.sa-rejection-gatepass{background:#6b7a8f1a;border-radius:6px;color:#6b7a8f;color:var(--sd-blueberry);font-size:14px;font-weight:600;margin-bottom:8px;padding:6px 12px}.sa-rejection-redirect{color:#6c757d;color:var(--sd-muted);font-size:14px;margin-bottom:24px}.sa-dismiss-btn{background:#f7882f;background:var(--sd-apricot);border:none;border-radius:10px;color:#fff;color:var(--sd-white);cursor:pointer;font-size:14px;font-weight:600;margin-top:20px;padding:14px 28px;transition:all .2s}.sa-dismiss-btn:hover{background:#e57a25;box-shadow:0 4px 12px #f7882f4d}.sa-approval-screen{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:50vh;padding:40px 20px;text-align:center}.sa-approval-icon{animation:pulse-success .6s ease-in-out;font-size:64px;margin-bottom:20px}@keyframes pulse-success{0%{opacity:.5;transform:scale(.8)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.sa-approval-title{color:#27ae60;font-size:28px;font-weight:700;margin-bottom:12px}.sa-approval-message{color:var(--sd-text);font-size:16px;margin-bottom:8px}.sa-approval-gatepass{background:#27ae601a;border-radius:6px;color:#6b7a8f;color:var(--sd-blueberry);font-size:14px;font-weight:600;margin-bottom:8px;padding:6px 12px}.sa-approval-redirect{color:#6c757d;color:var(--sd-muted);font-size:14px;margin-bottom:24px}.sa-confirm-actions{display:flex;gap:12px;margin-top:20px}.sa-confirm-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px 16px;transition:all .2s ease}.sa-confirm-btn.no{background:#f8f9fa;background:var(--sd-light-bg);border:1px solid #dcc7aa;border:1px solid var(--sd-apple-core);color:#1a1a2e;color:var(--sd-dark)}.sa-confirm-btn.no:hover{background:#e8e8e8}.sa-confirm-btn.yes{background:#dc3545;color:#fff;color:var(--sd-white)}.sa-confirm-btn.yes:hover{background:#c0392b}.sd-fullscreen-modal{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.sd-fullscreen-inner{background:#fff;background:var(--sd-white);border-radius:16px;box-shadow:0 16px 48px #00000040;display:flex;flex-direction:column;max-height:85vh;max-width:600px;overflow:hidden;width:100%}.sd-fullscreen-header{align-items:center;background:#6b7a8f;background:var(--sd-blueberry);display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.sd-fullscreen-title{color:#fff;color:var(--sd-white);font-size:18px;font-weight:700;margin:0}.sd-fullscreen-close{align-items:center;background:#ffffff26;border:none;border-radius:50%;color:#fff;color:var(--sd-white);cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;transition:background .2s;width:32px}.sd-fullscreen-close:hover{background:#ffffff40}.sd-fullscreen-content{background:#dcc7aa;background:var(--sd-apple-core);flex:1 1;overflow-x:hidden;overflow-y:auto}.sd-fullscreen-table{font-size:11px;table-layout:fixed;width:100%}.sd-fullscreen-table td,.sd-fullscreen-table th{padding:8px 6px;word-break:break-word}.sd-fullscreen-table .sd-td-location,.sd-fullscreen-table .sd-td-purpose{max-width:none;white-space:normal}.sd-fullscreen-table .sd-td-time{font-size:9px;white-space:nowrap}.gm-main{align-items:center;padding-top:32px}.gm-title{color:#1a1a2e;color:var(--sd-dark);font-size:24px;font-weight:700;margin:0 0 8px;text-align:center}.gm-subtitle{color:#6c757d;color:var(--sd-muted);font-size:14px;margin:0 0 24px;text-align:center}.gm-options{flex-direction:column;max-width:400px;width:100%}.gm-card,.gm-options{display:flex;gap:16px}.gm-card{align-items:center;background:#fff;background:var(--sd-white);border:2px solid #dcc7aa;border:2px solid var(--sd-apple-core);border-radius:14px;cursor:pointer;padding:20px;transition:all .2s ease}.gm-card:hover{border-color:#f7882f;border-color:var(--sd-apricot);box-shadow:0 4px 16px #f7882f26;transform:translateY(-2px)}.gm-card-icon{flex-shrink:0;font-size:32px}.gm-card-content{flex:1 1}.gm-card-title{color:#1a1a2e;color:var(--sd-dark);font-size:16px;font-weight:700;margin:0 0 4px}.gm-card-desc{color:#6c757d;color:var(--sd-muted);font-size:12px;line-height:1.4;margin:0}.gm-card-arrow{color:#f7882f;color:var(--sd-apricot);flex-shrink:0;font-size:20px;font-weight:700}.gm-note{background:#f7c3311f;border-left:3px solid #f7c331;border-left:3px solid var(--sd-citrus);border-radius:6px;color:#1a1a2e;color:var(--sd-dark);font-size:12px;margin-top:24px;max-width:400px;padding:12px 16px;width:100%}.lg-main{align-items:center;padding-bottom:24px;padding-top:24px}.lg-title{color:#1a1a2e;color:var(--sd-dark);font-size:24px;font-weight:700;margin:0 0 4px;text-align:center}.lg-subtitle{color:#6c757d;color:var(--sd-muted);font-size:13px;margin:0 0 20px;text-align:center}.lg-form{display:flex;flex-direction:column;gap:16px;max-width:450px;width:100%}.lg-section{background:#fff;background:var(--sd-white);border:1px solid #dcc7aa;border:1px solid var(--sd-apple-core);border-radius:12px;padding:16px}.lg-section-label{color:#6b7a8f;color:var(--sd-blueberry);font-size:10px;font-weight:700;letter-spacing:.8px;margin-bottom:12px;text-transform:uppercase}.lg-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.lg-info-item{display:flex;flex-direction:column;gap:2px}.lg-info-item.full{grid-column:1/-1}.lg-info-label{color:#6c757d;color:var(--sd-muted);font-size:10px;text-transform:uppercase}.lg-info-value{color:#1a1a2e;color:var(--sd-dark);font-size:14px;font-weight:600}.lg-field{margin-bottom:12px}.lg-field:last-child{margin-bottom:0}.lg-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:12px}.lg-row .lg-field,.lg-row:last-child{margin-bottom:0}.lg-label{color:#6b7a8f;color:var(--sd-blueberry);display:block;font-size:11px;font-weight:600;letter-spacing:.3px;margin-bottom:6px;text-transform:uppercase}.lg-input{background:#fff;background:var(--sd-white);border:2px solid #dcc7aa;border:2px solid var(--sd-apple-core);border-radius:8px;box-sizing:border-box;color:#1a1a2e;color:var(--sd-dark);font-size:14px;padding:12px 14px;transition:border-color .2s;width:100%}.lg-input:focus{border-color:#f7882f;border-color:var(--sd-apricot);outline:none}.lg-input::placeholder{color:#aaa}.lg-cpi-note{color:#6c757d;color:var(--sd-muted);font-size:12px;line-height:1.4;margin:6px 0 0}.lg-file-note{color:#6b7a8f;color:var(--sd-blueberry);font-size:12px;margin-top:8px;word-break:break-all}.lg-consent{align-items:flex-start;color:#6c757d;color:var(--sd-muted);cursor:pointer;display:flex;font-size:12px;gap:10px;line-height:1.4}.lg-consent input[type=checkbox]{flex-shrink:0;height:16px;margin-top:2px;width:16px}.lg-submit-btn{align-items:center;background:#f7882f;background:var(--sd-apricot);border:none;border-radius:12px;color:#fff;color:var(--sd-white);cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;padding:16px;transition:all .2s ease;width:100%}.lg-submit-btn:hover{background:#e57a25;box-shadow:0 4px 16px #f7882f59}.lg-submit-btn:disabled{background:#ccc;cursor:not-allowed}.os-radio-group{display:flex;gap:24px;margin-top:8px}.os-radio-option{align-items:center;color:#1a1a2e;color:var(--sd-dark);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px}.os-radio-option input[type=radio]{accent-color:#f7882f;accent-color:var(--sd-apricot);height:18px;width:18px}.tg-main{align-items:center;padding-top:24px}.tg-title{color:#1a1a2e;color:var(--sd-dark);font-size:24px;font-weight:700;margin:0 0 20px;text-align:center}.tg-tabs{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:20px;width:100%}.tg-tab{background:#fff;background:var(--sd-white);border:2px solid #dcc7aa;border:2px solid var(--sd-apple-core);border-radius:20px;color:#6c757d;color:var(--sd-muted);cursor:pointer;flex:1 1 140px;font-size:14px;font-weight:600;max-width:180px;padding:10px 24px;text-align:center;transition:all .2s}.tg-tab.active{background:#f7882f;background:var(--sd-apricot);border-color:#f7882f;border-color:var(--sd-apricot);color:#fff;color:var(--sd-white)}@media (max-width:480px){.tg-tabs{gap:8px}.tg-tab{border-radius:16px;font-size:12px;max-width:160px;padding:8px 12px}.tg-tab .tg-icon{height:14px;margin-right:4px;width:14px}}.tg-icon{flex-shrink:0;height:18px;margin-right:6px;vertical-align:middle;width:18px}.tg-tab .tg-icon{height:16px;margin-right:5px;width:16px}.tg-details-title .tg-icon{height:22px;margin-right:8px;width:22px}.tg-details-section h3 .tg-icon{vertical-align:-2px}.tg-action-btn .tg-icon,.tg-details-section h3 .tg-icon{height:16px;margin-right:6px;width:16px}.tg-view-details-btn .tg-icon{height:15px;margin-right:5px;vertical-align:-2px;width:15px}.tg-exit-wait-notice .tg-icon{height:20px;width:20px}.tg-expired-badge .tg-icon{height:14px;margin-right:4px;vertical-align:-2px;width:14px}.tg-empty,.tg-loading{color:#6c757d;color:var(--sd-muted);font-size:14px;text-align:center}.tg-error{color:#dc3545;font-weight:600;text-align:center}.tg-qr-card{background:#fff;background:var(--sd-white);border:2px solid #dcc7aa;border:2px solid var(--sd-apple-core);border-radius:16px;margin-bottom:20px;max-width:320px;padding:20px;text-align:center;width:100%}.tg-qr-header{color:#6b7a8f;color:var(--sd-blueberry);font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.tg-qr-img{border-radius:8px;max-width:200px;width:100%}.tg-qr-timer{color:#6c757d;color:var(--sd-muted);font-size:14px;margin-top:12px}.tg-qr-timer span{color:#f7882f;color:var(--sd-apricot);font-size:18px;font-weight:700}.tg-qr-dismiss{background:#f7882f;background:var(--sd-apricot);border:none;border-radius:10px;color:#fff;color:var(--sd-white);cursor:pointer;font-weight:600;margin-top:16px;padding:10px 20px}.tg-list{display:flex;flex-direction:column;gap:16px;max-width:450px;width:100%}.tg-card{background:#fff;background:var(--sd-white);border:2px solid #dcc7aa;border:2px solid var(--sd-apple-core);border-radius:14px;padding:16px}.tg-card.approved{background:#16a34a14;border-color:#16a34a4d}.tg-card.denied{background:#dc354514;border-color:#dc35454d}.tg-card.pending{background:#f7c33114;border-color:#f7c3314d}.tg-card.expired,.tg-card.withdrawn{background:#64748b14;border-color:#64748b4d}.tg-card.overdue{background:#ea580c14;border-color:#ea580c66}.tg-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.tg-card-id{color:#1a1a2e;color:var(--sd-dark);font-size:16px;font-weight:700}.tg-card-place{color:#6c757d;color:var(--sd-muted);font-size:12px}.tg-status-badge{border-radius:999px;font-size:10px;font-weight:700;padding:4px 10px;text-transform:uppercase}.tg-status-badge.approved{background:#16a34a;color:#fff}.tg-status-badge.denied{background:#dc3545;color:#fff}.tg-status-badge.pending{background:#f59e0b;color:#fff}.tg-card-dates{color:#1a1a2e;color:var(--sd-dark);font-size:12px;line-height:1.6;margin-bottom:12px}.tg-action-btn{border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:700;padding:12px;transition:all .2s;width:100%}.tg-action-btn.exit{background:#f7882f;background:var(--sd-apricot);color:#fff;color:var(--sd-white)}.tg-action-btn.entry{background:#16a34a;color:#fff;color:var(--sd-white)}.tg-action-btn.withdraw{background:#dc3545;color:#fff;color:var(--sd-white)}.tg-action-btn:disabled{cursor:not-allowed;opacity:.6}.tg-exit-wait-notice{align-items:center;background:linear-gradient(135deg,#ffc10726,#ff980026);border:1px solid #ffc1074d;border-radius:10px;color:#856404;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:4px;padding:14px 16px;text-align:center;width:100%}.tg-wait-icon{font-size:18px}.tg-exit-wait-notice b{color:#e65100}.tg-wait-subtext{color:#a67c00;font-size:11px;font-weight:500}.tg-utilized{align-items:center;background:#6c757d;background:var(--sd-muted);border-radius:10px;color:#fff;color:var(--sd-white);display:flex;font-size:14px;font-weight:700;gap:6px;justify-content:center;padding:12px;text-align:center;width:100%}.tg-utilized-icon{height:18px;width:18px}.tg-expired-badge{background:#dc354526;border-radius:10px;color:#dc3545;font-size:14px;font-weight:700;padding:12px;text-align:center;width:100%}.tg-overdue-badge,.tg-withdrawn-badge{align-items:center;border-radius:10px;display:flex;font-size:13px;font-weight:600;gap:6px;justify-content:center;padding:12px;width:100%}.tg-withdrawn-badge{background:#64748b24;color:#475569}.tg-overdue-badge{background:#fb923c2e;color:#9a3412}.tg-overdue-badge .tg-icon,.tg-withdrawn-badge .tg-icon{height:16px;width:16px}.tg-os-badge{background:#6b7a8f26;border-radius:6px;color:#6b7a8f;color:var(--sd-blueberry);display:inline-block;font-size:11px;font-weight:700;margin-bottom:8px;padding:4px 10px}.tg-os-reason{color:#1a1a2e;color:var(--sd-dark);font-size:16px;font-weight:700;margin-bottom:12px}.tg-progress{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px;padding:0 10px;position:relative}.tg-progress-line{background:#e0e0e0;height:3px;left:30px;position:absolute;right:30px;top:14px}.tg-progress-step{align-items:center;display:flex;flex:1 1;flex-direction:column;z-index:1}.tg-progress-node{align-items:center;background:#e0e0e0;border:3px solid #fff;border:3px solid var(--sd-white);border-radius:50%;box-shadow:0 2px 4px #0000001a;color:#999;display:flex;font-size:12px;font-weight:700;height:28px;justify-content:center;width:28px}.tg-progress-node svg{height:14px;width:14px}.tg-progress-node.completed{background:#16a34a;color:#fff}.tg-progress-node.rejected{background:#dc3545;color:#fff}.tg-progress-node.not-applicable{background:#f59e0b;color:#fff}.tg-progress-node.current{background:#f7882f;background:var(--sd-apricot);color:#fff}.tg-progress-status{color:#999;font-size:9px;font-style:italic;font-weight:600;margin-bottom:4px;text-align:center}.tg-progress-status.current{color:#f7882f;color:var(--sd-apricot)}.tg-progress-status.rejected{color:#dc3545}.tg-progress-label{color:#999;font-size:9px;font-weight:600;margin-top:6px;text-align:center}.tg-progress-label.completed,.tg-progress-label.current{color:#1a1a2e;color:var(--sd-dark)}.tg-progress-label.not-applicable{color:#f59e0b}.sd-popup-card{background:#fff;background:var(--sd-white);border-radius:16px;box-shadow:0 16px 48px #0003;max-width:320px;padding:32px 24px;text-align:center;width:100%}.sd-popup-icon{align-items:center;background:#16a34a;border-radius:50%;color:#fff;display:flex;font-size:28px;height:56px;justify-content:center;margin:0 auto 16px;width:56px}.sd-popup-icon svg{height:28px;width:28px}.sd-popup-icon.success{background:#16a34a}.sd-popup-icon.error{background:#dc3545}.sd-popup-message{color:#1a1a2e;color:var(--sd-dark);font-size:15px;font-weight:600;line-height:1.5;margin:0 0 20px}.sd-popup-btn{background:#f7882f;background:var(--sd-apricot);border:none;border-radius:10px;color:#fff;color:var(--sd-white);cursor:pointer;font-size:15px;font-weight:700;padding:14px;transition:background .2s;width:100%}.sd-popup-btn:hover{background:#e57a25}.sa-qr-container{align-items:center;display:flex;flex-direction:column;margin-bottom:24px;max-width:360px;width:100%}.sa-qr-title{color:#1a1a2e;color:var(--sd-dark);font-size:20px;font-weight:700;margin-bottom:16px;text-align:center}.sa-qr-card{background:#fff;background:var(--sd-white);border:2px solid #dcc7aa;border:2px solid var(--sd-apple-core);border-radius:16px;padding:20px;text-align:center;width:100%}.sa-qr-label{color:#6c757d;color:var(--sd-muted);font-size:11px;font-weight:700;letter-spacing:1px;margin-bottom:12px;text-transform:uppercase}.sa-qr-img{border-radius:8px;margin-bottom:12px;max-width:200px;width:100%}.sa-qr-gp-no{color:#6b7a8f;color:var(--sd-blueberry);font-size:15px;font-weight:700;margin-bottom:6px}.sa-qr-timer{color:#6c757d;color:var(--sd-muted);font-size:13px}.sa-qr-time{color:#f7882f;color:var(--sd-apricot);font-size:16px;font-weight:700}.sa-cancel-btn{background:#f7882f;background:var(--sd-apricot);border:none;border-radius:12px;color:#fff;color:var(--sd-white);cursor:pointer;font-size:14px;font-weight:700;margin-top:16px;padding:12px 28px;transition:all .2s}.sa-cancel-btn:hover{background:#e57a25;box-shadow:0 4px 16px #f7882f59}.sa-confirm-modal{background:#fff;background:var(--sd-white);border-radius:16px;max-width:340px;padding:28px 24px;text-align:center;width:100%}.sa-confirm-title{color:#1a1a2e;color:var(--sd-dark);font-size:20px;font-weight:700;margin-bottom:12px}.sa-confirm-text{color:#6c757d;color:var(--sd-muted);font-size:14px;line-height:1.5;margin:0 0 24px}.sa-confirm-btns{display:flex;gap:12px}.sa-confirm-no,.sa-confirm-yes{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:14px}.sa-confirm-yes{background:#dc3545;color:#fff}.sa-confirm-no{background:#dcc7aa;background:var(--sd-apple-core);color:#1a1a2e;color:var(--sd-dark)}@media (min-width:768px){.sa-qr-container{max-width:320px}.sa-qr-img{max-width:180px}.sa-qr-card{padding:18px}}@media (min-width:1200px){.sa-qr-container{max-width:300px}.sa-qr-img{max-width:160px}}.tg-view-details-btn{background:#6b7a8f14;border:2px dashed #6b7a8f;border:2px dashed var(--sd-blueberry);border-radius:10px;color:#6b7a8f;color:var(--sd-blueberry);cursor:pointer;font-size:13px;font-weight:600;margin-top:10px;padding:10px 16px;transition:all .2s ease;width:100%}.tg-view-details-btn:hover{background:#6b7a8f26;border-style:solid}.tg-details-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.tg-details-popup{animation:popup-slide-in .25s ease-out;background:#fff;background:var(--sd-white);border-radius:16px;box-shadow:0 20px 50px #0000004d;max-height:85vh;max-width:480px;position:relative;width:100%}@keyframes popup-slide-in{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.tg-details-close{align-items:center;background:#dc3545;border:none;border-radius:50%;box-shadow:0 2px 8px #dc354566;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:36px;justify-content:center;position:absolute;right:12px;top:12px;transition:all .2s ease;width:36px;z-index:10}.tg-details-close:hover{background:#c82333;transform:scale(1.1)}.tg-details-scroll{max-height:85vh;overflow-y:auto;padding:24px;scrollbar-color:#6b7a8f #0000;scrollbar-color:var(--sd-blueberry) #0000;scrollbar-width:thin}.tg-details-scroll::-webkit-scrollbar{width:6px}.tg-details-scroll::-webkit-scrollbar-track{background:#0000}.tg-details-scroll::-webkit-scrollbar-thumb{background:#6b7a8f;background:var(--sd-blueberry);border-radius:3px}.tg-details-title{color:#1a1a2e;color:var(--sd-dark);font-size:20px;font-weight:700;margin:0 0 16px;padding-right:40px}.tg-details-badge-row{align-items:center;display:flex;gap:12px;margin-bottom:20px}.tg-details-gpno{background:linear-gradient(135deg,#6b7a8f,#4a5568);background:linear-gradient(135deg,var(--sd-blueberry),#4a5568);border-radius:20px;color:#fff;font-size:13px;font-weight:700;padding:6px 12px}.tg-details-status{border-radius:20px;font-size:12px;font-weight:700;padding:5px 12px;text-transform:uppercase}.tg-details-status.approved{background:#28a74526;color:#28a745}.tg-details-status.pending{background:#ff980026;color:#ff9800}.tg-details-status.denied,.tg-details-status.rejected{background:#dc354526;color:#dc3545}.tg-details-status.expired,.tg-details-status.withdrawn{background:#64748b26;color:#475569}.tg-details-status.overdue{background:#ea580c26;color:#c2410c}.tg-details-section{background:#dcc7aa;background:var(--sd-apple-core);border-radius:12px;margin-bottom:16px;padding:16px}.tg-details-section h3{color:#1a1a2e;color:var(--sd-dark);font-size:14px;font-weight:700;margin:0 0 12px}.tg-details-section.rejection{background:#dc35451a;border:1px solid #dc35454d}.tg-details-section.rejection h3{color:#dc3545}.tg-details-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.tg-details-item{display:flex;flex-direction:column;gap:4px}.tg-details-item.full-width{grid-column:span 2}.tg-details-label{color:#6c757d;color:var(--sd-muted);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.tg-details-value{color:#1a1a2e;color:var(--sd-dark);font-size:14px;font-weight:600;word-break:break-word}.tg-details-value.highlight{color:#6b7a8f;color:var(--sd-blueberry)}.tg-details-rejection-box{word-wrap:break-word;background:#dc35451a;border-radius:8px;color:#dc3545;font-size:14px;font-weight:500;line-height:1.5;max-width:100%;overflow-wrap:break-word;padding:12px;white-space:pre-wrap;word-break:break-word}@media (max-width:500px){.tg-details-overlay{padding:10px}.tg-details-popup{max-height:90vh}.tg-details-scroll{max-height:90vh;padding:20px}.tg-details-grid{grid-template-columns:1fr}.tg-details-item.full-width{grid-column:span 1}}.sd-icon{flex-shrink:0;height:18px;vertical-align:middle;width:18px}.sd-stat-badge .sd-icon{height:16px;margin-right:4px;vertical-align:-2px;width:16px}.sd-logout-icon-svg{stroke:#f7882f;stroke:var(--sd-apricot);height:48px;width:48px}.gm-icon{flex-shrink:0;height:32px;width:32px}.gm-icon-sm{flex-shrink:0;height:20px;vertical-align:middle;width:20px}.gm-card-icon .gm-icon{stroke:#f7882f;stroke:var(--sd-apricot)}.gm-card-arrow .gm-icon-sm{stroke:#6c757d;stroke:var(--sd-muted)}.sa-back-btn .gm-icon-sm{margin-right:4px}.sp-icon{stroke:#6c757d;stroke:var(--sd-muted)}.id-card-photo-placeholder .sp-icon,.sp-icon{height:40px;width:40px}.sa-icon{height:18px;margin-right:6px;width:18px}.sa-icon,.sa-icon-sm{flex-shrink:0;vertical-align:middle}.sa-icon-sm{height:16px;margin-right:4px;width:16px}.sa-icon-lg{height:64px;width:64px}:root{--guard-primary:#f29f67;--guard-dark:#1e1e2c;--guard-blue:#3b8ff3;--guard-teal:#34b1aa;--guard-golden:#e0b50f;--guard-bg:#f8f9fa;--guard-surface:#fff;--guard-surface-hover:#f5f5f5;--guard-border:#e8e8e8;--guard-text-primary:#1e1e2c;--guard-text-secondary:#6c757d;--guard-text-muted:#9ca3af;--guard-success:#34b1aa;--guard-danger:#ef4444;--guard-warning:#e0b50f;--guard-header-height:60px;--guard-sidebar-width:220px}body{background:var(--guard-bg)}.guard-layout{background:#f8f9fa;background:var(--guard-bg);display:flex;flex-direction:column;min-height:100vh}.guard-header{align-items:center;background:#fff;background:var(--guard-surface);border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--guard-border);box-shadow:0 1px 3px #0000000d;display:flex;height:60px;height:var(--guard-header-height);justify-content:space-between;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.guard-header-brand{align-items:center;display:flex;gap:12px}.guard-header-logo-wrap{display:flex;flex-direction:column}.guard-header-logo{color:#f29f67;color:var(--guard-primary);font-size:20px;font-weight:800;letter-spacing:-.5px}.guard-header-subtitle{color:#9ca3af;color:var(--guard-text-muted);font-size:11px;font-weight:500}.guard-header-right{align-items:center;display:flex;gap:16px}.guard-header-role{background:linear-gradient(135deg,#f29f67,#e08a4a);background:linear-gradient(135deg,var(--guard-primary),#e08a4a);border-radius:20px;color:#fff;font-size:12px;font-weight:600;padding:6px 14px}.guard-logout-btn{background:#0000;border:1px solid #e8e8e8;border:1px solid var(--guard-border);border-radius:8px;color:#6c757d;color:var(--guard-text-secondary);cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.guard-logout-btn:hover{background:#f5f5f5;background:var(--guard-surface-hover);border-color:#9ca3af;border-color:var(--guard-text-muted)}.guard-body{display:flex;flex:1 1;overflow:hidden}.guard-sidebar{background:#fff;background:var(--guard-surface);border-right:1px solid #e8e8e8;border-right:1px solid var(--guard-border);min-width:220px;min-width:var(--guard-sidebar-width);padding:24px 16px;width:220px;width:var(--guard-sidebar-width)}.guard-sidebar,.guard-sidebar-nav{display:flex;flex-direction:column}.guard-sidebar-nav{gap:8px}.guard-nav-item{align-items:center;background:#fff;background:var(--guard-surface);border:1px solid #e8e8e8;border:1px solid var(--guard-border);border-radius:12px;color:#1e1e2c;color:var(--guard-text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:14px;padding:14px 18px;position:relative;text-align:left;transition:all .25s ease;width:100%}.guard-nav-item:hover{background:#f29f671a;border-color:#f29f67;border-color:var(--guard-primary)}.guard-nav-item:hover,.guard-nav-item:hover .guard-nav-icon-svg{color:#f29f67;color:var(--guard-primary)}.guard-nav-item.active{background:linear-gradient(135deg,#f29f67,#e08a4a);background:linear-gradient(135deg,var(--guard-primary),#e08a4a);border-color:#0000;box-shadow:0 6px 16px #f29f6759;color:#fff}.guard-nav-item.active .guard-nav-icon-svg{color:#fff}.guard-nav-icon-svg{color:#6c757d;color:var(--guard-text-secondary);flex-shrink:0;height:22px;transition:color .25s ease;width:22px}.guard-nav-label{color:inherit;font-weight:600;letter-spacing:-.2px}.guard-main{background:#f8f9fa;background:var(--guard-bg);flex:1 1;overflow-y:auto}.guard-scan-page{align-items:center;display:flex;flex-direction:column;justify-content:flex-start;min-height:100%;padding:24px}.guard-scan-content{display:flex;flex-direction:column;gap:24px;max-width:800px;width:100%}.guard-stats-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.guard-stat-card{align-items:center;background:#fff;background:var(--guard-surface);border:1px solid #e8e8e8;border:1px solid var(--guard-border);border-radius:16px;display:flex;gap:20px;padding:24px;transition:all .2s ease}.guard-stat-card:hover{box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}.guard-stat-icon{align-items:center;border-radius:14px;display:flex;height:56px;justify-content:center;width:56px}.guard-stat-icon svg{height:28px;width:28px}.guard-stat-card.inside .guard-stat-icon{background:#34b1aa1f;color:#34b1aa;color:var(--guard-teal)}.guard-stat-card.outside .guard-stat-icon{background:#f29f671f;color:#f29f67;color:var(--guard-primary)}.guard-stat-info{display:flex;flex-direction:column}.guard-stat-value{color:#1e1e2c;color:var(--guard-text-primary);font-size:32px;font-weight:800;line-height:1}.guard-stat-label{color:#9ca3af;color:var(--guard-text-muted);font-size:13px;font-weight:500;margin-top:4px}.guard-error-banner{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:12px;color:#ef4444;color:var(--guard-danger);display:flex;font-size:14px;font-weight:600;gap:12px;padding:14px 18px;width:100%}.guard-error-banner svg{flex-shrink:0;height:20px;width:20px}.guard-error-banner button{background:#0000;border:none;color:#ef4444;color:var(--guard-danger);cursor:pointer;font-size:20px;margin-left:auto;padding:0 4px}.guard-scan-card{align-items:center;background:#fff;background:var(--guard-surface);border:1px solid #e8e8e8;border:1px solid var(--guard-border);border-radius:20px;box-shadow:0 4px 24px #0000000f;display:flex;flex-direction:column;padding:48px 32px;text-align:center}.guard-scan-icon{align-items:center;background:linear-gradient(135deg,#f29f67,#e08a4a);background:linear-gradient(135deg,var(--guard-primary),#e08a4a);border-radius:20px;display:flex;height:80px;justify-content:center;margin-bottom:24px;width:80px}.guard-scan-icon svg{color:#fff;height:40px;width:40px}.guard-scan-title{color:#1e1e2c;color:var(--guard-text-primary);font-size:24px;font-weight:700;margin-bottom:8px}.guard-scan-subtitle{color:#9ca3af;color:var(--guard-text-muted);font-size:15px;margin-bottom:32px}.guard-scan-button{align-items:center;background:linear-gradient(135deg,#f29f67,#e08a4a);background:linear-gradient(135deg,var(--guard-primary),#e08a4a);border:none;border-radius:14px;box-shadow:0 8px 24px #f29f6759;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;gap:12px;padding:18px 48px;transition:all .3s ease}.guard-scan-button:hover{box-shadow:0 12px 32px #f29f6773;transform:translateY(-2px)}.guard-scan-button:active{transform:translateY(0)}.guard-scan-button svg{height:24px;width:24px}.guard-logs-page{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;padding:4px 8px 0}.guard-logs-header{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:8px}.guard-logs-title{color:#1e1e2c;color:var(--guard-text-primary);font-size:20px;font-weight:700}.guard-logs-filters{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px}.guard-filter-group{display:flex;flex-direction:column;gap:6px;min-width:0}.guard-filter-group label{color:#9ca3af;color:var(--guard-text-muted);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.guard-date-input,.guard-search-input{background:#fff;background:var(--guard-surface);border:1px solid #e8e8e8;border:1px solid var(--guard-border);border-radius:8px;color:#1e1e2c;color:var(--guard-text-primary);font-size:14px;outline:none;padding:10px 14px;transition:border-color .2s ease}.guard-date-input:focus,.guard-search-input:focus{border-color:#f29f67;border-color:var(--guard-primary)}.guard-search-input{width:200px}.guard-approval-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1e1e2c99;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.guard-approval-modal{background:#fff;background:var(--guard-surface);border-radius:20px;box-shadow:0 24px 64px #0003;max-width:700px;overflow:hidden;width:100%}.guard-approval-header{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--guard-border);display:flex;justify-content:space-between;padding:20px 24px}.guard-approval-header h3{color:#1e1e2c;color:var(--guard-text-primary);font-size:18px;font-weight:700}.guard-direction-badge{border:none;border-radius:20px;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.5px;padding:6px 16px;text-transform:uppercase;transition:all .2s ease}.guard-direction-badge:hover{box-shadow:0 4px 12px #00000026;transform:scale(1.05)}.guard-direction-badge:active{transform:scale(.98)}.guard-direction-badge.exit{background:#f29f6726;color:#f29f67;color:var(--guard-primary)}.guard-direction-badge.exit:hover{background:#f29f6740}.guard-direction-badge.entry{background:#34b1aa26;color:#34b1aa;color:var(--guard-teal)}.guard-direction-badge.entry:hover{background:#34b1aa40}.guard-approval-body{grid-gap:24px;display:grid;gap:24px;grid-template-columns:180px 1fr;padding:24px}.guard-approval-photo-section{align-items:flex-start;display:flex;justify-content:center}.guard-approval-photo{background:#f5f5f5;background:var(--guard-surface-hover);border:3px solid #e8e8e8;border:3px solid var(--guard-border);border-radius:16px;height:160px;object-fit:cover;width:160px}.guard-approval-details{display:flex;flex-direction:column;gap:16px}.guard-student-name{color:#1e1e2c;color:var(--guard-text-primary);font-size:26px;font-weight:800;line-height:1.2}.guard-student-roll{color:#9ca3af;color:var(--guard-text-muted);font-size:14px;font-weight:500}.guard-gatepass-badge{align-items:center;background:linear-gradient(135deg,#34b1aa,#28a097);background:linear-gradient(135deg,var(--guard-teal),#28a097);border-radius:12px;box-shadow:0 4px 12px #34b1aa4d;color:#fff;display:inline-flex;font-size:15px;font-weight:700;gap:10px;padding:10px 18px;width:-webkit-fit-content;width:fit-content}.guard-gatepass-badge svg{height:18px;width:18px}.guard-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.guard-info-item{display:flex;flex-direction:column;gap:6px}.guard-info-item.full-width{grid-column:1/-1}.guard-info-item label{color:#9ca3af;color:var(--guard-text-muted);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.guard-info-value{background:#f5f5f5;background:var(--guard-surface-hover);border:1px solid #e8e8e8;border:1px solid var(--guard-border);border-radius:10px;color:#1e1e2c;color:var(--guard-text-primary);font-size:14px;font-weight:500;min-height:44px;padding:12px 14px}.guard-info-value.highlight{background:#e0b50f1a;border-color:#e0b50f4d;color:#b8930d;font-weight:600}.guard-scheduled-times{background:#f5f5f5;background:var(--guard-surface-hover);border:1px solid #e8e8e8;border:1px solid var(--guard-border);border-radius:10px;display:flex;font-size:14px;gap:24px;padding:12px 14px}.guard-scheduled-times span{color:#6c757d;color:var(--guard-text-secondary)}.guard-scheduled-times strong{color:#1e1e2c;color:var(--guard-text-primary)}.guard-approval-actions{display:flex;gap:12px;margin-top:8px}.guard-action-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:700;gap:10px;justify-content:center;padding:14px 24px;transition:all .2s ease}.guard-action-btn svg{height:20px;width:20px}.guard-action-btn.reject{background:#ef44441a;border:1px solid #ef444433;color:#ef4444;color:var(--guard-danger)}.guard-action-btn.reject:hover{background:#ef4444;background:var(--guard-danger);color:#fff}.guard-action-btn.approve{background:linear-gradient(135deg,#34b1aa,#28a097);background:linear-gradient(135deg,var(--guard-teal),#28a097);box-shadow:0 4px 12px #34b1aa4d;color:#fff}.guard-action-btn.approve:hover{box-shadow:0 6px 20px #34b1aa73;transform:translateY(-1px)}.guard-action-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.guard-scanner-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1e1e2ccc;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.guard-scanner-modal{background:#fff;background:var(--guard-surface);border-radius:20px;box-shadow:0 24px 64px #0000004d;max-width:600px;overflow:hidden;width:100%}.guard-scanner-header{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--guard-border);display:flex;justify-content:space-between;padding:16px 20px}.guard-scanner-title{color:#1e1e2c;color:var(--guard-text-primary);font-size:16px;font-weight:700}.guard-scanner-close{background:#0000;border:none;color:#9ca3af;color:var(--guard-text-muted);cursor:pointer;font-size:24px;padding:4px}.guard-scanner-close-btn{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:50%;color:#ef4444;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.guard-scanner-close-btn:hover{background:#ef4444;color:#fff}.guard-scanner-close-btn svg{height:18px;width:18px}.guard-video{background:#000;height:400px;width:100%}.guard-scanner-hint{color:#9ca3af;color:var(--guard-text-muted);font-size:14px;padding:16px 20px;text-align:center}.guard-logs-table-wrapper{background:#fff;background:var(--guard-surface);border:1px solid #e8e8e8;border:1px solid var(--guard-border);border-radius:12px;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.guard-logs-table-scroll{flex:1 1;overflow-x:hidden;overflow-y:auto}.guard-logs-table{border-collapse:collapse;font-size:11px;table-layout:fixed;width:100%}.guard-logs-table col.col-sr{width:38px}.guard-logs-table col.col-name{width:13%}.guard-logs-table col.col-roll{width:8%}.guard-logs-table col.col-room{width:5%}.guard-logs-table col.col-contact{width:9%}.guard-logs-table col.col-place{width:9.5%}.guard-logs-table col.col-purpose{width:8.5%}.guard-logs-table col.col-edate,.guard-logs-table col.col-gp,.guard-logs-table col.col-ndate,.guard-logs-table col.col-tin,.guard-logs-table col.col-tout{width:7.5%}.guard-logs-table thead{background:#f5f5f5;background:var(--guard-surface-hover);position:-webkit-sticky;position:sticky;top:0;z-index:1}.guard-logs-table th{color:#9ca3af;color:var(--guard-text-muted);font-size:10px;font-weight:600;letter-spacing:.3px;padding:10px 6px;text-align:left;text-transform:uppercase}.guard-logs-table td,.guard-logs-table th{border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--guard-border);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guard-logs-table td{color:#1e1e2c;color:var(--guard-text-primary);padding:8px 6px}.guard-logs-table tbody tr:hover{background:#f5f5f5;background:var(--guard-surface-hover)}.guard-logs-time-in-done{background:#34b1aa26;border-radius:4px;color:#34b1aa;color:var(--guard-teal);font-weight:600;padding:4px 8px}@media (max-width:900px){.guard-approval-body{grid-template-columns:1fr;text-align:center}.guard-approval-photo-section{justify-content:center}.guard-approval-details{align-items:center}.guard-info-grid{grid-template-columns:1fr}}@media (max-width:768px){.guard-sidebar{display:none}.guard-header{padding:0 16px}.guard-header-role{display:none}.guard-stats-row{grid-template-columns:1fr}.guard-logs-header{align-items:stretch;flex-direction:column;gap:12px}.guard-logs-filters{flex-direction:row;gap:12px;justify-content:space-between;width:100%}.guard-filter-group{flex:1 1;min-width:0}.guard-date-input,.guard-search-input{width:100%}.guard-body{flex-direction:column;padding-bottom:70px}}.guard-mobile-nav{display:none}@media (max-width:768px){.guard-mobile-nav{align-items:center;background:#fff;background:var(--guard-surface);border-top:1px solid #e8e8e8;border-top:1px solid var(--guard-border);bottom:0;box-shadow:0 -4px 20px #00000014;display:flex;height:70px;justify-content:space-around;left:0;padding:0 8px;position:fixed;right:0;z-index:100}.guard-mobile-nav-item{align-items:center;background:#0000;border:none;border-radius:12px;color:#9ca3af;color:var(--guard-text-muted);cursor:pointer;display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:4px;justify-content:center;min-width:70px;padding:8px 16px;transition:all .2s ease}.guard-mobile-nav-item svg{height:22px;width:22px}.guard-mobile-nav-item.active,.guard-mobile-nav-item:hover{color:#f29f67;color:var(--guard-primary)}.guard-mobile-nav-item.active{background:#f29f671f}.guard-mobile-nav-item.active svg{stroke-width:2.5}}.guard-verifying-modal{align-items:center;background:#fff;background:var(--guard-surface);border-radius:20px;box-shadow:0 24px 64px #0000004d;display:flex;flex-direction:column;gap:20px;padding:48px 64px}.guard-verifying-spinner{animation:guard-spin .8s linear infinite;border:4px solid #e8e8e8;border-top-color:#f29f67;border:4px solid var(--guard-border);border-radius:50%;border-top-color:var(--guard-primary);height:48px;width:48px}@keyframes guard-spin{to{transform:rotate(1turn)}}.guard-verifying-text{color:#1e1e2c;color:var(--guard-text-primary);font-size:18px;font-weight:600}.id-popup-overlay{align-items:center;animation:idPopupFadeIn .2s ease-out;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes idPopupFadeIn{0%{opacity:0}to{opacity:1}}.id-popup-container{animation:idPopupSlideIn .25s ease-out;max-width:500px;position:relative;width:95%}@keyframes idPopupSlideIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.id-popup-close{align-items:center;background:#dc3545;border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px #dc354566;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:-12px;top:-12px;transition:all .2s ease;width:36px;z-index:10001}.id-popup-close:hover{background:#c82333;transform:scale(1.1)}.id-popup-close svg{color:#fff;height:18px;width:18px}.id-popup-card{background:#fff;border:1px solid #e0e0e0;border-radius:16px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.id-popup-header{align-items:center;background:linear-gradient(135deg,#fff,#f8f9fa);border-bottom:1px solid #eee;display:flex;gap:12px;padding:12px 16px}.id-popup-logo-section{align-items:center;display:flex;flex-direction:column;min-width:60px}.id-popup-logo{height:50px;object-fit:contain;width:50px}.id-popup-logo-text{color:#1a73e8;font-size:7px;font-weight:700;margin-top:2px;white-space:nowrap}.id-popup-college-info{flex:1 1;text-align:center}.id-popup-college-name-en{color:#1a237e;font-size:11px;font-weight:700;line-height:1.3}.id-popup-college-subtitle{color:#666;font-size:7px;margin-top:1px}.id-popup-college-name-hi{color:#1a237e;font-size:10px;font-weight:600;margin-top:3px}.id-popup-college-subtitle-hi{color:#666;font-size:7px}.id-popup-address{color:#888;font-size:6px;line-height:1.2;margin-top:3px}.id-popup-tricolor{display:flex;height:6px}.tricolor-saffron{background:#f93;flex:1 1}.tricolor-white{background:#fff;border-bottom:1px solid #e0e0e0;border-top:1px solid #e0e0e0;flex:1 1}.tricolor-green{background:#138808;flex:1 1}.id-popup-title{background:linear-gradient(135deg,#f0f4ff,#e8ecff);border-bottom:1px solid #e0e0e0;color:#1a237e;font-size:14px;font-weight:700;letter-spacing:.5px;padding:8px 16px;text-align:center}.id-popup-body{background:linear-gradient(180deg,#fff,#fafbff);display:flex;gap:20px;padding:16px 20px 20px}.id-popup-photo-section{flex-shrink:0}.id-popup-photo-frame{align-items:center;background:#f5f5f5;border:3px solid #1a237e;border-radius:8px;box-shadow:0 4px 12px #1a237e26;display:flex;height:120px;justify-content:center;overflow:hidden;width:100px}.id-popup-photo{height:100%;object-fit:cover;width:100%}.id-popup-photo-placeholder{align-items:center;background:#e8ecff;display:flex;height:100%;justify-content:center;width:100%}.id-popup-photo-placeholder svg{color:#9ca3af;height:36px;width:36px}.id-popup-details{display:flex;flex:1 1;flex-direction:column;gap:6px}.id-popup-row{align-items:start;display:grid;font-size:12px;grid-template-columns:100px 12px 1fr;line-height:1.4}.id-popup-colon,.id-popup-label{color:#333;font-weight:600}.id-popup-colon{text-align:center}.id-popup-value{color:#555;word-break:break-word}.profile-pic-hover{border:2px solid #0000;border-radius:50%;transition:all .2s ease}.profile-pic-hover:hover{border-color:#1a73e8;box-shadow:0 4px 12px #1a73e84d}@media (max-width:480px){.id-popup-container{max-width:none;width:92%}.id-popup-body{align-items:center;flex-direction:column;gap:16px}.id-popup-photo-frame{height:108px;width:90px}.id-popup-row{font-size:11px;grid-template-columns:85px 10px 1fr}.id-popup-details{width:100%}.id-popup-header{gap:8px;padding:10px 12px}.id-popup-logo{height:40px;width:40px}.id-popup-college-name-en{font-size:9px}.id-popup-close{height:32px;right:-10px;top:-10px;width:32px}.id-popup-close svg{height:16px;width:16px}}*{box-sizing:border-box;margin:0;padding:0}body.admin-page-active,html.admin-page-active{height:100%;overflow:hidden}:root{--color-primary:#f29f67;--color-dark:#1e1e2c;--color-blue:#3b8ff3;--color-teal:#34b1aa;--color-golden:#e0b50f;--color-sky:#0ea5e9;--color-bg:#f8f9fa;--color-bg-light:#fff;--color-surface:#fff;--color-surface-hover:#f5f5f5;--color-border:#e8e8e8;--color-border-light:#f0f0f0;--text-primary:#1e1e2c;--text-secondary:#6c757d;--text-muted:#9ca3af;--text-light:#fff;--status-entry:#34b1aa;--status-exit:#f29f67;--status-success:#34b1aa;--status-warning:#e0b50f;--status-danger:#ef4444;--header-height:60px;--sidebar-width:240px;--sidebar-collapsed:72px}.donut-chart-container{background:#0000;padding:0}.donut-chart-container,.donut-chart-wrap{align-items:center;display:flex;justify-content:center}.donut-chart-wrap{flex-wrap:wrap;gap:32px;width:100%}.donut-legend{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;min-width:210px;padding:0}.donut-legend-item{align-items:center;display:flex;font-family:Inter,sans-serif;gap:10px}.donut-legend-swatch{border-radius:3px;flex-shrink:0;height:12px;width:12px}.donut-legend-label{color:#6c757d;color:var(--text-secondary);flex:1 1;font-size:12px;font-weight:600;letter-spacing:.4px;white-space:nowrap}.donut-legend-value{font-feature-settings:"tnum";font-size:16px;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.3px}.donut-chart-svg{display:block;height:auto;max-width:100%}.donut-chart-segment{transition:opacity .2s ease}.donut-chart-center-value{fill:#1e1e2c;fill:var(--text-primary);font-family:Inter,sans-serif;font-size:32px;font-weight:800;letter-spacing:-1px}.donut-chart-center-label{fill:#6c757d;fill:var(--text-secondary);font-family:Inter,sans-serif;font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-layout,body{background:#f8f9fa;background:var(--color-bg)}.admin-layout{color:#1e1e2c;color:var(--text-primary);display:flex;flex-direction:column;font-family:Inter,sans-serif;height:100vh;max-height:100vh;overflow:hidden}.admin-header{align-items:center;background:#fff;background:var(--color-bg-light);border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;height:60px;height:var(--header-height);justify-content:space-between;min-height:60px;min-height:var(--header-height);padding:0 24px;z-index:100}.admin-header-brand{align-items:center;display:flex;gap:8px}.admin-header-logo{color:#1e1e2c;color:var(--text-primary);font-size:18px;font-weight:700;letter-spacing:-.3px}.admin-header-subtitle{color:#9ca3af;color:var(--text-muted);font-size:11px;font-weight:500}.admin-hamburger{background:none;border:none;color:#1e1e2c;color:var(--text-primary);cursor:pointer;display:none;font-size:24px;padding:4px 8px}.admin-header-logo-wrap{display:flex;flex-direction:column;line-height:1.2}.admin-header-role{background:#f29f671a;border-radius:6px;color:#f29f67;color:var(--color-primary);font-size:13px;font-weight:600;padding:6px 12px}.admin-sidebar-overlay{background:#00000080;top:60px;top:var(--header-height);z-index:99}.admin-header-right{align-items:center;display:flex;gap:16px}.admin-logout-btn{background:#0000;border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:6px;color:#6c757d;color:var(--text-secondary);cursor:pointer;font-family:Inter,sans-serif;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease}.admin-logout-btn:hover{border-color:#f29f67;border-color:var(--color-primary);color:#fff;color:var(--text-light)}.admin-avatar,.admin-logout-btn:hover{background:#f29f67;background:var(--color-primary)}.admin-avatar{align-items:center;border:2px solid #fff;border:2px solid var(--color-bg-light);border-radius:50%;box-shadow:0 2px 8px #f29f674d;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.admin-avatar:hover{transform:scale(1.05)}.admin-avatar-icon{color:#fff;color:var(--text-light);font-size:14px}.admin-body{display:flex;flex:1 1;height:calc(100vh - 60px);height:calc(100vh - var(--header-height));max-height:calc(100vh - 60px);max-height:calc(100vh - var(--header-height));overflow:hidden}.admin-sidebar{background:#fff;background:var(--color-bg-light);border-right:1px solid #e8e8e8;border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;min-width:220px;overflow-x:hidden;overflow-y:auto;padding:0;width:220px}.admin-sidebar-brand{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);display:flex;gap:12px;padding:20px}.admin-sidebar-brand-icon{color:#6c757d;color:var(--text-secondary);font-size:20px}.admin-sidebar-brand-text{color:#1e1e2c;color:var(--text-primary);font-size:16px;font-weight:700}.admin-sidebar-nav{display:flex;flex:1 1;flex-direction:column;padding:12px 0}.admin-nav-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#6c757d;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;gap:12px;height:auto;margin:2px 12px;padding:12px 16px;text-align:left;transition:all .2s ease;width:calc(100% - 24px)}.admin-nav-item:hover{background:#f5f5f5;background:var(--color-surface-hover);color:#1e1e2c;color:var(--text-primary)}.admin-nav-item.active{background:#f29f6726;color:#f29f67;color:var(--color-primary)}.admin-nav-icon{font-size:16px;text-align:center;width:20px}.admin-nav-icon-svg{flex-shrink:0;height:20px;width:20px}.admin-nav-label{display:block;flex:1 1;font-size:13px;font-weight:500;white-space:nowrap}.admin-nav-badge{align-items:center;background:#dc3545;border-radius:10px;color:#fff;display:flex;font-size:11px;font-weight:700;height:20px;justify-content:center;margin-left:auto;min-width:20px;padding:0 6px}.admin-nav-badge.pulse{animation:badgePulse 2s ease-in-out infinite}@keyframes badgePulse{0%,to{box-shadow:0 0 0 0 #dc354580;transform:scale(1)}50%{box-shadow:0 0 0 6px #dc354500;transform:scale(1.1)}}.admin-nav-section-title{color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.5px;padding:12px 16px 6px;text-transform:uppercase}.admin-menu-toggle{align-items:center;background:#0000;border:none;border-radius:8px;cursor:pointer;display:none;flex-direction:column;gap:5px;height:40px;justify-content:center;padding:8px;transition:background .2s ease;width:40px}.admin-menu-toggle:hover{background:#f5f5f5;background:var(--color-surface-hover)}.hamburger-line{background:#1e1e2c;background:var(--text-primary);border-radius:2px;height:2px;transition:all .3s ease;width:22px}.admin-sidebar-overlay{background:#1e1e2c80;bottom:0;display:block;left:0;position:fixed;right:0;top:0;z-index:200}.admin-sidebar-toggle-btn,.donut-mobile-wrapper{display:none}.admin-main{background:#f8f9fa;background:var(--color-bg);display:flex;flex:1 1;flex-direction:column;min-height:0;min-width:0;overflow:hidden;padding:8px 16px}.admin-page-title{display:none}.admin-support-footer{background:#f29f6714;border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:10px;color:#6c757d;color:var(--text-secondary);flex-shrink:0;font-size:11px;margin-top:4px;padding:4px 14px;text-align:center}.admin-dashboard-layout{flex:1 1;gap:24px;overflow:hidden}.admin-dashboard-layout,.admin-dashboard-layout>.desktop-only{display:flex;min-height:0}.admin-dashboard-content{display:flex;flex:1 1;flex-direction:column;gap:14px;min-width:0;overflow-x:hidden;overflow-y:auto;padding-right:4px}.admin-college-banner{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;flex-shrink:0;overflow:hidden;padding:14px 28px;position:relative;text-align:center}.admin-college-banner:before{background:#f29f67;background:var(--color-primary);border-radius:12px 12px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.admin-college-name{color:#1e1e2c;color:var(--text-primary);font-size:16px;font-weight:700;letter-spacing:-.2px;margin-bottom:4px}.admin-college-subtitle{color:#6c757d;color:var(--text-secondary);font-size:11px;margin-bottom:8px}.admin-college-name-hi{color:#f29f67;color:var(--color-primary);font-size:14px;font-weight:600;margin-bottom:2px}.admin-college-subtitle-hi{color:#9ca3af;color:var(--text-muted);font-size:10px}.admin-total-students{background:#1e1e2c;background:var(--color-dark);border-radius:12px;flex-shrink:0;overflow:hidden;padding:28px 24px;position:relative;text-align:center}.admin-total-students:before{background:linear-gradient(90deg,#f29f67,#e0b50f);background:linear-gradient(90deg,var(--color-primary) 0,var(--color-golden) 100%);content:"";height:4px;left:0;position:absolute;right:0;top:0}.admin-total-label{color:#fff9;font-size:12px;font-weight:500;letter-spacing:1.5px;margin-bottom:8px;text-transform:uppercase}.admin-total-value{font-feature-settings:"tnum";color:#f29f67;color:var(--color-primary);font-size:56px;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-2px;line-height:1}.admin-stats-grid{grid-gap:16px;display:grid;flex-shrink:0;gap:16px;grid-template-columns:repeat(4,1fr)}.admin-dashboard-main{align-items:stretch;display:flex;flex:0 0 auto;gap:20px;min-height:0;overflow:visible}.admin-donut-container{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;display:flex;flex:1 1;justify-content:center;min-height:300px;padding:16px}.admin-metrics-panel{align-self:stretch;gap:10px;justify-content:flex-start;width:280px}.admin-metric-card,.admin-metrics-panel{display:flex;flex-direction:column;flex-shrink:0}.admin-metric-card{align-items:flex-start;background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:10px;box-shadow:0 2px 6px #00000008;justify-content:center;padding:10px 14px;transition:all .2s ease}.admin-metric-card:hover{box-shadow:0 4px 12px #0000000f}.admin-metric-card.clickable{cursor:pointer}.admin-metric-card.clickable:hover{transform:translateX(4px)}.admin-metric-title{color:#6c757d;color:var(--text-secondary);font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.admin-metric-value{font-feature-settings:"tnum";font-size:24px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.5px;line-height:1.1}.admin-stat-card{align-items:flex-start;background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;cursor:default;display:flex;flex-direction:column;overflow:hidden;padding:20px;position:relative;transition:all .25s ease}.admin-stat-card:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.admin-stat-value{font-feature-settings:"tnum";font-size:32px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-1px;line-height:1;margin-bottom:6px}.admin-stat-label{color:#6c757d;color:var(--text-secondary);font-size:12px;font-weight:500;letter-spacing:.3px}.admin-stat-card.green{border-left:4px solid #34b1aa;border-left:4px solid var(--status-success)}.admin-stat-card.green .admin-stat-value{color:#34b1aa;color:var(--status-success)}.admin-stat-card.red{border-left:4px solid #ef4444;border-left:4px solid var(--status-danger)}.admin-stat-card.red .admin-stat-value{color:#ef4444;color:var(--status-danger)}.admin-stat-card.orange{border-left:4px solid #f29f67;border-left:4px solid var(--color-primary)}.admin-stat-card.orange .admin-stat-value{color:#f29f67;color:var(--color-primary)}.admin-stat-card.purple{border-left:4px solid #3b8ff3;border-left:4px solid var(--color-blue)}.admin-stat-card.purple .admin-stat-value{color:#3b8ff3;color:var(--color-blue)}.admin-stat-card.clickable{cursor:pointer}.admin-placeholder{font-size:16px;font-weight:500}.admin-loading,.admin-placeholder{align-items:center;color:#6c757d;color:var(--text-secondary);display:flex;flex:1 1;justify-content:center}.admin-loading{font-size:14px;gap:12px}.admin-loading:before{animation:spin .8s linear infinite;border:2px solid #e8e8e8;border-top-color:#f29f67;border:2px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);content:"";height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.live-logs-panel{border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 2px 8px #0000000a;flex-direction:column;height:100%;max-height:100%;min-height:0;min-width:260px;overflow:hidden;width:260px}.live-logs-header,.live-logs-panel{background:#fff;background:var(--color-surface);display:flex;flex-shrink:0}.live-logs-header{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);justify-content:space-between;padding:16px 20px}.live-logs-title{color:#1e1e2c;color:var(--text-primary);font-size:14px;font-weight:700;letter-spacing:.5px}.live-logs-indicator{align-items:center;display:flex;gap:0}.live-logs-dot{animation:pulse 2s ease-in-out infinite;background:#34b1aa;background:var(--status-success);border-radius:50%;box-shadow:0 0 8px #34b1aa80;height:10px;width:10px}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.live-logs-container{background:#f8f9fa;background:var(--color-bg);flex:1 1;min-height:0;overflow-y:auto;padding:0}.live-logs-container::-webkit-scrollbar{width:4px}.live-logs-container::-webkit-scrollbar-track{background:#0000}.live-logs-container::-webkit-scrollbar-thumb{background:#e8e8e8;background:var(--color-border);border-radius:2px}.live-log-item{grid-gap:0;background:#fff;background:var(--color-surface);border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--color-border-light);display:grid;gap:0;grid-template-columns:55px 16px 1fr;min-height:68px;padding:0;position:relative}.live-log-item:last-child{border-bottom:none}.live-log-item:last-child .live-log-timeline:after{display:none}.live-log-time{font-feature-settings:"tnum";align-self:start;color:#9ca3af;color:var(--text-muted);font-size:11px;font-variant-numeric:tabular-nums;font-weight:500;padding:16px 8px 16px 12px;text-align:right;white-space:nowrap}.live-log-timeline{display:flex;justify-content:center;padding-top:18px;position:relative}.live-log-timeline:after{background:#e8e8e8;background:var(--color-border);bottom:-44px;content:"";left:50%;position:absolute;top:28px;transform:translateX(-50%);width:2px}.live-log-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px;z-index:1}.live-log-dot.entry{background:#34b1aa;background:var(--status-entry);box-shadow:0 0 6px #34b1aa66}.live-log-dot.exit{background:#f29f67;background:var(--status-exit);box-shadow:0 0 6px #f29f6766}.live-log-content{padding:12px 16px 12px 8px;position:relative}.live-log-action{border-radius:4px;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;padding:4px 12px}.live-log-action.entry{background:#34b1aa;background:var(--status-entry);color:#fff;color:var(--text-light)}.live-log-action.exit{background:#f29f67;background:var(--status-exit);color:#fff;color:var(--text-light)}.live-log-student{align-items:center;display:flex;flex-direction:row;gap:10px}.live-log-avatar{background:#f8f9fa;background:var(--color-bg);border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;height:32px;object-fit:cover;width:32px}.live-log-info{align-items:flex-start;display:flex;flex-direction:column;gap:2px}.live-log-name{color:#1e1e2c;color:var(--text-primary);font-size:12px;font-weight:600;line-height:1.2}.live-log-roll{color:#9ca3af;color:var(--text-muted);font-size:10px;font-weight:500}.live-logs-empty,.live-logs-error{align-items:center;background:#fff;background:var(--color-surface);color:#6c757d;color:var(--text-secondary);display:flex;font-size:13px;height:120px;justify-content:center}.live-logs-error{color:#ef4444;color:var(--status-danger)}.admin-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1e1e2c80;bottom:0;display:flex;justify-content:center;left:0;padding:24px;position:fixed;right:0;top:0;z-index:1000}.admin-modal{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:16px;box-shadow:0 24px 48px #00000026;display:flex;flex-direction:column;max-height:80vh;max-width:900px;overflow:hidden;width:100%}.admin-modal-header{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}.admin-modal-title{color:#1e1e2c;color:var(--text-primary);font-size:18px;font-weight:700}.admin-modal-close{align-items:center;background:#0000;border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;color:#6c757d;color:var(--text-secondary);cursor:pointer;display:flex;font-size:20px;height:36px;justify-content:center;transition:all .2s ease;width:36px}.admin-modal-close:hover{background:#ef4444;background:var(--status-danger);border-color:#ef4444;border-color:var(--status-danger);color:#fff;color:var(--text-light)}.admin-modal-body{flex:1 1;overflow-y:auto;padding:0}.admin-modal-empty,.admin-modal-loading{align-items:center;color:#6c757d;color:var(--text-secondary);display:flex;font-size:14px;height:150px;justify-content:center}.admin-student-table{border-collapse:collapse;font-size:13px;width:100%}.admin-student-table td,.admin-student-table th{border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--color-border-light);padding:14px 20px;text-align:left}.admin-student-table th{background:#f8f9fa;background:var(--color-bg);color:#6c757d;color:var(--text-secondary);font-size:11px;font-weight:600;letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0}.admin-student-table td{color:#1e1e2c;color:var(--text-primary)}.admin-student-table tbody tr:hover{background:#f5f5f5;background:var(--color-surface-hover)}.admin-detailed-logs-page{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.admin-detailed-logs-header{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px 12px 0 0;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.admin-detailed-logs-title{color:#1e1e2c;color:var(--text-primary);font-size:16px;font-weight:700}.admin-detailed-logs-count{background:#f29f67;background:var(--color-primary);border-radius:20px;color:#fff;color:var(--text-light);font-size:12px;font-weight:600;padding:4px 12px}.admin-detailed-logs-table-container{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:0 0 12px 12px;border-top:none;flex:1 1;overflow-y:auto}.admin-detailed-logs-table-container::-webkit-scrollbar{width:6px}.admin-detailed-logs-table-container::-webkit-scrollbar-track{background:#0000}.admin-detailed-logs-table-container::-webkit-scrollbar-thumb{background:#e8e8e8;background:var(--color-border);border-radius:3px}.admin-detailed-logs-table{border-collapse:collapse;font-size:13px;width:100%}.admin-detailed-logs-table td,.admin-detailed-logs-table th{border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--color-border-light);padding:14px 16px;text-align:left}.admin-detailed-logs-table th{background:#f8f9fa;background:var(--color-bg);color:#6c757d;color:var(--text-secondary);font-size:11px;font-weight:600;letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:10}.admin-detailed-logs-table td{color:#1e1e2c;color:var(--text-primary)}.admin-detailed-logs-table tbody tr:hover{background:#f5f5f5;background:var(--color-surface-hover)}.admin-detailed-logs-table .time-cell{font-feature-settings:"tnum";color:#9ca3af;color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.activity-badge{border-radius:4px;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.5px;padding:4px 10px}.activity-badge.entry{background:#34b1aa;background:var(--status-entry);color:#fff;color:var(--text-light)}.activity-badge.exit{background:#f29f67;background:var(--status-exit);color:#fff;color:var(--text-light)}.type-badge{border-radius:4px;display:inline-block;font-family:Inter,monospace;font-size:10px;font-weight:600;letter-spacing:.3px;padding:4px 8px}.type-badge.normal{background:#f8f9fa;background:var(--color-bg);color:#6c757d;color:var(--text-secondary)}.type-badge.local{background:#f29f671f;color:#f29f67;color:var(--color-primary)}.type-badge.outstation{background:#3b8ff31f;color:#3b8ff3;color:var(--color-blue)}.type-badge.sem-break{background:#e0b50f24;color:#e0b50f;color:var(--color-golden)}.type-badge.bangalore{background:#0ea5e91f;color:#0ea5e9;color:var(--color-sky)}.log-table-identity{align-items:center;display:flex;gap:10px}.log-table-avatar{background:#f8f9fa;background:var(--color-bg);border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;height:32px;object-fit:cover;width:32px}.log-card-identity{align-items:flex-start;display:flex;flex-direction:row;gap:12px}.log-card-avatar{background:#f8f9fa;background:var(--color-bg);border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;height:40px;object-fit:cover;width:40px}.log-card-identity-info{align-items:flex-start;display:flex;flex-direction:column;gap:2px}.live-log-student.clickable,.log-card-identity.clickable,.log-table-identity.clickable{border-radius:8px;cursor:pointer;margin:-4px -8px;padding:4px 8px;transition:all .2s ease}.live-log-student.clickable:hover,.log-card-identity.clickable:hover,.log-table-identity.clickable:hover{background:#f5f5f5;background:var(--color-surface-hover);transform:translateX(2px)}.type-badge.clickable{cursor:pointer;transition:all .2s ease}.type-badge.clickable:hover{box-shadow:0 2px 8px #00000026;transform:scale(1.05)}.type-badge.local.clickable:hover{background:#f29f6740}.type-badge.outstation.clickable:hover{background:#3b8ff340}.type-badge.sem-break.clickable:hover{background:#e0b50f40}.type-badge.bangalore.clickable:hover{background:#0ea5e938}.gatepass-modal{max-width:900px}.desktop-only{display:table}.mobile-only{display:none}@media (max-width:1200px){.admin-main{padding:20px}.admin-dashboard-layout{gap:20px}.live-logs-panel{min-width:300px;width:300px}.admin-total-value{font-size:48px}.admin-stat-value{font-size:28px}.admin-stats-grid{gap:12px}}@media (max-width:1024px){.admin-sidebar{min-width:200px;width:200px}.admin-dashboard-layout{flex-direction:column}.live-logs-panel{max-height:280px;min-width:100%;order:1;width:100%}.admin-dashboard-content{order:0;overflow:visible}.admin-dashboard-main{align-items:stretch;flex-direction:row;flex-wrap:nowrap;gap:16px;min-height:auto;overflow:visible}.admin-donut-container{flex:1 1;max-height:none;min-height:320px;overflow:visible;padding:16px}.admin-metrics-panel{flex-shrink:0;gap:0;min-width:200px;width:240px}.admin-metric-card{padding:10px 12px}.admin-metric-title{font-size:10px}.admin-metric-value{font-size:22px}.admin-total-value{font-size:44px}.admin-stat-value{font-size:26px}}@media (min-width:769px) and (max-width:1024px){.mobile-only{display:block!important}.desktop-only{display:none!important}.admin-main{overflow-x:hidden;overflow-y:auto}.admin-dashboard-layout{flex-direction:column;gap:16px;overflow:visible}.admin-dashboard-content{flex-shrink:0;min-height:auto;overflow:visible}.admin-dashboard-main{flex-direction:column;gap:12px;overflow:visible}.admin-dashboard-main,.admin-donut-container{align-items:center;display:flex;height:auto;min-height:auto}.admin-donut-container{justify-content:center;max-height:none;padding:12px;width:100%}.donut-mobile-wrapper{align-items:center;display:flex!important;flex-direction:row;gap:20px;justify-content:center;padding:8px;width:100%}.donut-mobile-chart{flex-shrink:0}.donut-mobile-chart svg{height:140px!important;width:140px!important}.donut-mobile-legend{grid-gap:4px 8px;display:grid;gap:4px 8px;grid-template-columns:1fr 1fr;max-width:180px;width:auto}.donut-mobile-legend-item{padding:3px 5px}.donut-mobile-legend-label{font-size:7px}.donut-mobile-legend-value{font-size:11px}.donut-mobile-metrics{display:none}.donut-mobile-metric-card{padding:6px 10px}.donut-mobile-metric-title{font-size:8px}.donut-mobile-metric-value{font-size:18px}.live-logs-panel{flex-shrink:0;max-height:350px!important;min-height:280px!important;min-width:100%!important;width:100%!important}.admin-college-banner{padding:12px 16px}.admin-college-name{font-size:13px}.admin-college-subtitle{font-size:9px}.admin-college-name-hi{font-size:11px}.admin-college-subtitle-hi{font-size:8px}.admin-sidebar-overlay{background:#1e1e2c80;bottom:0;cursor:pointer;display:block;left:0;position:fixed;right:0;top:60px;top:var(--header-height);z-index:199}}@media (min-width:769px) and (max-width:1024px) and (orientation:portrait){.donut-mobile-chart svg{height:130px!important;width:130px!important}.donut-mobile-wrapper{align-items:center;flex-direction:column!important;gap:12px}.donut-mobile-legend{max-width:260px;width:100%}.mobile-live-activity-container{display:block!important;max-height:400px;min-height:300px}}@media (min-width:769px) and (max-width:1024px) and (orientation:landscape){.admin-dashboard-layout{align-items:stretch;flex-direction:row!important;gap:16px}.admin-dashboard-content{flex:1 1;min-width:0;overflow:hidden}.donut-mobile-wrapper{align-items:flex-start;flex-direction:row!important;flex-wrap:nowrap;gap:16px;justify-content:flex-start;overflow-x:auto;padding:8px;width:100%}.donut-mobile-chart{flex-shrink:0}.donut-mobile-chart svg{height:150px!important;width:150px!important}.donut-mobile-legend{display:flex;flex-direction:column;flex-shrink:0;gap:4px;max-width:140px;min-width:120px;width:auto}.donut-mobile-legend-item{padding:4px 6px}.donut-mobile-legend-label{font-size:8px}.donut-mobile-legend-value{font-size:12px}.donut-mobile-metrics{display:flex!important;flex-direction:column;flex-shrink:0;gap:4px;margin-top:0;max-width:180px;min-width:150px;width:auto}.donut-mobile-metric-card{padding:6px 10px}.donut-mobile-metric-title{font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut-mobile-metric-value{font-size:16px}.live-logs-panel{flex-shrink:0;max-height:none!important;max-width:280px!important;min-height:0!important;min-width:220px!important;width:240px!important}.admin-donut-container{overflow:visible;padding:10px}}@media (max-width:768px){:root{--header-height:56px}.admin-header{padding:0 16px}.admin-menu-toggle{display:none}.admin-sidebar-toggle-btn{align-items:center;background:#f29f671f;border:none;border-radius:8px;cursor:pointer;display:flex;gap:8px;justify-content:center;margin:8px 6px 4px;padding:10px 8px;transition:all .2s ease;width:calc(100% - 12px)}.admin-sidebar-toggle-btn:hover{background:#f29f6733}.sidebar-toggle-icon{font-size:16px}.sidebar-toggle-icon,.sidebar-toggle-label{color:#f29f67;color:var(--color-primary);font-weight:600}.sidebar-toggle-label{display:none;font-size:12px}.admin-sidebar.open .sidebar-toggle-label{display:block}.admin-sidebar.open .admin-sidebar-toggle-btn{justify-content:flex-start;margin:8px 12px 4px;width:calc(100% - 24px)}.live-logs-panel{display:none!important}.donut-mobile-wrapper{align-items:center;display:flex;flex-direction:column;gap:16px;padding:8px 0}.donut-mobile-chart{align-items:center;display:flex;justify-content:center}.donut-mobile-legend{grid-gap:8px 12px;display:grid;gap:8px 12px;grid-template-columns:1fr 1fr;max-width:280px;width:100%}.donut-mobile-legend-item{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #f0f0f0;border:1px solid var(--color-border-light);border-radius:6px;cursor:pointer;display:flex;gap:6px;padding:6px 8px;transition:all .2s ease}.donut-mobile-legend-item:hover{background:#f29f671a;border-color:#f29f67;border-color:var(--color-primary);transform:scale(1.02)}.donut-mobile-legend-item:active{transform:scale(.98)}.donut-mobile-legend-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.donut-mobile-legend-label{color:#6c757d;color:var(--text-secondary);flex:1 1;font-size:9px;font-weight:500;line-height:1.2}.donut-mobile-legend-value{flex-shrink:0;font-size:14px;font-weight:700}.donut-mobile-metrics{display:none!important}.mobile-live-activity-container{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;flex:1 1;max-height:280px;min-height:0;overflow:hidden}.mobile-live-activity-container .live-logs-panel{border:none;border-radius:0;display:flex!important;height:100%;max-height:280px;width:100%}.mobile-live-activity-container .live-logs-container{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto}.mobile-live-activity-container .live-logs-header{padding:12px 16px}.mobile-live-activity-container .live-logs-title{font-size:13px}.mobile-live-activity-container .live-log-item{min-height:56px}.mobile-live-activity-container .live-log-time{font-size:10px;padding:12px 6px 12px 10px}.mobile-live-activity-container .live-log-content{padding:10px 12px 10px 6px}.mobile-live-activity-container .live-log-name{font-size:11px}.mobile-live-activity-container .live-log-roll{font-size:9px}.mobile-live-activity-container .live-log-action{font-size:9px;padding:3px 10px}.admin-sidebar{flex-shrink:0;max-width:60px;min-width:60px;position:relative;width:60px;z-index:50}.admin-sidebar .admin-sidebar-brand{justify-content:center;padding:12px 8px}.admin-sidebar .admin-nav-label,.admin-sidebar .admin-nav-section-title,.admin-sidebar .admin-sidebar-brand-text{display:none}.admin-sidebar .admin-nav-item{justify-content:center;margin:2px 6px;padding:14px 10px;width:calc(100% - 12px)}.admin-sidebar .admin-nav-icon{margin:0}.admin-sidebar .admin-sidebar-brand-icon{border-radius:4px;cursor:pointer;font-size:18px;padding:4px;transition:background .2s ease}.admin-sidebar .admin-sidebar-brand-icon:hover{background:#f5f5f5;background:var(--color-surface-hover)}.admin-sidebar-overlay{background:#1e1e2c80;cursor:pointer;display:block;right:0;z-index:199}.admin-sidebar-overlay,.admin-sidebar.open{bottom:0;left:0;position:fixed;top:60px;top:var(--header-height)}.admin-sidebar.open{animation:slideIn .25s ease-out;box-shadow:4px 0 24px #00000026;max-width:240px;min-width:240px;width:240px;z-index:250}@keyframes slideIn{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.admin-sidebar.open~.admin-main:before{background:#1e1e2c80;bottom:0;content:"";left:0;position:fixed;right:0;top:60px;top:var(--header-height);z-index:200}.admin-sidebar.open .admin-sidebar-brand{justify-content:flex-start;padding:20px}.admin-sidebar.open .admin-nav-label,.admin-sidebar.open .admin-nav-section-title,.admin-sidebar.open .admin-sidebar-brand-text{display:block}.admin-sidebar.open .admin-nav-item{justify-content:flex-start;margin:2px 12px;padding:12px 16px;width:calc(100% - 24px)}.admin-main{overflow-x:hidden;overflow-y:auto;padding:12px}.admin-college-banner{display:block;margin-bottom:8px;padding:12px 16px;text-align:center}.admin-college-banner .admin-college-name{font-size:12px;line-height:1.3;margin-bottom:2px}.admin-college-banner .admin-college-subtitle{font-size:9px;margin-bottom:4px}.admin-college-banner .admin-college-name-hi{font-size:10px;margin-bottom:0}.admin-college-banner .admin-college-subtitle-hi{display:none}.admin-dashboard-content,.admin-dashboard-layout{flex-direction:column;gap:12px}.admin-dashboard-content{display:flex}.admin-dashboard-main{align-items:stretch;flex-direction:column;gap:12px}.admin-donut-container{align-items:center;display:flex;flex-shrink:0;height:auto;justify-content:center;min-height:auto;padding:16px;width:100%}.donut-chart-container{padding:0}.donut-chart-svg{height:180px;max-height:180px;max-width:180px;width:180px}.donut-chart-center-value{font-size:22px!important}.donut-chart-center-label{font-size:7px!important}.admin-metrics-panel{grid-gap:8px;display:grid;flex-shrink:0;gap:8px;grid-template-columns:repeat(2,1fr);width:100%}.admin-metrics-panel>.admin-metric-card:first-child{grid-column:1/-1}.admin-metric-card{padding:10px 12px}.admin-metric-card.clickable:hover{transform:none}.admin-metric-title{font-size:9px;letter-spacing:.2px;margin-bottom:4px}.admin-metric-value{font-size:20px}.desktop-only{display:none!important}.mobile-only{display:block!important}}@media (max-width:375px){.admin-main{padding:8px}.admin-college-banner{padding:10px 12px}.admin-college-banner .admin-college-name{font-size:11px}.admin-college-banner .admin-college-subtitle{font-size:8px}.admin-college-banner .admin-college-name-hi{font-size:9px}.admin-dashboard-layout,.admin-dashboard-main{gap:8px}.admin-donut-container{padding:12px}.donut-chart-svg{height:150px;max-height:150px;max-width:150px;width:150px}.donut-chart-center-value{font-size:18px!important}.donut-chart-center-label{font-size:6px!important}.admin-metrics-panel{gap:6px}.admin-metric-card{padding:8px 10px}.admin-metric-title{font-size:8px}.admin-metric-value{font-size:18px}}@media (max-width:768px){.admin-logs-cards{display:flex;flex-direction:column;gap:12px;padding:12px}.log-card{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;overflow:hidden;position:relative}.log-card.entry{border-left:4px solid #34b1aa;border-left:4px solid var(--status-entry)}.log-card.exit{border-left:4px solid #f29f67;border-left:4px solid var(--status-exit)}.log-card-activity{border-radius:0 0 8px 0;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.5px;padding:6px 14px}.log-card-activity.entry{background:#34b1aa;background:var(--status-entry);color:#fff;color:var(--text-light)}.log-card-activity.exit{background:#f29f67;background:var(--status-exit);color:#fff;color:var(--text-light)}.log-card-content{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr;padding:14px}.log-card-identity{display:flex;flex-direction:column;gap:4px}.log-card-name{color:#1e1e2c;color:var(--text-primary);font-size:14px;font-weight:600}.log-card-roll{color:#f29f67;color:var(--color-primary);font-size:12px;font-weight:500}.log-card-identity .type-badge{margin-top:4px;width:-webkit-fit-content;width:fit-content}.log-card-contact{color:#9ca3af;color:var(--text-muted);font-size:12px;margin-top:4px}.log-card-middle{background:#f8f9fa;background:var(--color-bg);border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:10px}.log-card-place-label{color:#9ca3af;color:var(--text-muted);font-size:9px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.log-card-place{color:#1e1e2c;color:var(--text-primary);font-size:13px;font-weight:600;text-transform:capitalize}.log-card-time{color:#9ca3af;color:var(--text-muted);font-size:11px;margin-top:auto}.log-card-purpose{background:#f29f6714;border:1px solid #f29f6726;border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:10px}.log-card-purpose-label{color:#f29f67;color:var(--color-primary);font-size:9px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.log-card-purpose-text{color:#1e1e2c;color:var(--text-primary);font-size:12px;line-height:1.4}}@media (max-width:480px){.admin-total-value{font-size:36px}.admin-stat-value{font-size:22px}.log-card-content{gap:10px;grid-template-columns:1fr}.log-card-identity{grid-gap:4px 10px;display:grid;gap:4px 10px;grid-template-columns:1fr auto;grid-template-rows:auto auto}.log-card-name{grid-column:1;grid-row:1}.log-card-roll{grid-column:1;grid-row:2}.log-card-identity .type-badge{align-self:center;grid-column:2;grid-row:1/3;margin-top:0}.log-card-contact{grid-column:1/3;margin-top:2px}}.admin-search-page{align-items:center;display:flex;flex-direction:column;gap:24px;padding:40px 24px;position:relative}.admin-search-section{max-width:600px;position:relative;width:100%}.admin-search-title{color:#1e1e2c;color:var(--text-primary);font-size:20px;font-weight:600;margin-bottom:16px;text-align:center}.admin-recent-searches{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 2px 8px #0000000f;max-width:600px;overflow:hidden;width:100%}.recent-searches-header{background:#f8f9fa;background:var(--color-bg);border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);color:#6c757d;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.recent-searches-list{display:flex;flex-direction:column}.recent-search-item{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);cursor:pointer;display:flex;gap:12px;justify-content:flex-start;padding:14px 16px;transition:background .15s}.recent-search-item:last-child{border-bottom:none}.recent-search-item:hover{background:#4da89714}.recent-search-item .suggestion-name{flex:1 1}.admin-search-box{display:flex;gap:8px}.admin-search-input{background:#fff;background:var(--color-surface);border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:10px;color:#1e1e2c;color:var(--text-primary);flex:1 1;font-size:15px;padding:12px 16px;transition:border-color .2s}.admin-search-input:focus{border-color:var(--accent-primary);outline:none}.admin-search-btn{align-items:center;background:#f8f9fa;border:1px solid #dfe1e5;border-radius:8px;color:#3c4043;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;height:48px;justify-content:center;min-width:100px;padding:0 20px;transition:all .2s ease}.admin-search-btn:hover{background:#f1f3f4;border-color:#dadce0;box-shadow:0 1px 3px #3c404326}.admin-search-btn:focus{border-color:#4285f4;box-shadow:0 0 0 3px #4285f426;outline:none}.admin-search-btn:active{background:#e8eaed;box-shadow:none}.admin-suggestions-dropdown{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:10px;box-shadow:0 8px 24px #0000001f;left:0;margin-top:4px;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.admin-suggestions-backdrop{bottom:0;left:0;position:fixed;right:0;top:0;z-index:50}.admin-suggestion-item{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);cursor:pointer;display:flex;gap:12px;justify-content:flex-start;padding:12px 16px;transition:background .15s}.admin-suggestion-item:last-child{border-bottom:none}.admin-suggestion-item:hover{background:#4da89714}.suggestion-avatar{border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;height:36px;object-fit:cover;width:36px}.suggestion-name{color:#1e1e2c;color:var(--text-primary);flex:1 1;font-size:14px;font-weight:600}.suggestion-roll{color:var(--accent-primary);font-size:13px;font-weight:500}.suggestions-header{background:#f8f9fa;background:var(--color-bg);color:#6c757d;color:var(--text-secondary);font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 16px 6px;text-transform:uppercase}.admin-suggestion-loading{color:#6c757d;color:var(--text-secondary);font-size:13px;padding:16px;text-align:center}.student-detail-overlay{background:#0009}.admin-student-detail-modal{background:#fff;background:var(--color-surface);border-radius:16px;box-shadow:0 16px 48px #0003;max-height:90vh;max-width:1100px;overflow-y:auto;padding:24px;position:relative;width:95%}.student-detail-close{align-items:center;background:#e74c3c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:36px;justify-content:center;line-height:1;position:absolute;right:12px;top:12px;transition:background .2s,transform .2s;width:36px;z-index:10}.student-detail-close:hover{background:#c0392b;transform:scale(1.1)}.student-detail-content{align-items:flex-start;display:flex;gap:24px}.admin-id-card{flex:0 0 550px;max-width:550px;min-width:500px}.student-logs-section{flex:1 1;min-width:0}.student-logs-header{align-items:center;border-bottom:2px solid #e8e8e8;border-bottom:2px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.student-logs-title{border-bottom:none;color:#1e1e2c;color:var(--text-primary);font-size:16px;font-weight:600;margin:0;padding-bottom:0}.student-logs-filter{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:6px;color:#1e1e2c;color:var(--text-primary);cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:border-color .2s}.student-logs-filter:focus,.student-logs-filter:hover{border-color:var(--accent-primary)}.student-logs-filter:focus{outline:none}.student-logs-container{display:flex;flex-direction:column;gap:10px;max-height:400px;overflow-y:auto;padding-right:4px}.student-log-card{background:#f8f9fa;background:var(--color-bg);border-left:4px solid;border-radius:10px;display:flex;gap:12px;padding:12px}.student-log-card.exit{background:#e67e220d;border-left-color:#e67e22}.student-log-card.entry{background:#27ae600d;border-left-color:#27ae60}.log-direction-badge{border-radius:4px;flex-shrink:0;font-size:10px;font-weight:700;height:-webkit-fit-content;height:fit-content;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.log-direction-badge.exit{background:#e67e22;color:#fff}.log-direction-badge.entry{background:#27ae60;color:#fff}.log-card-details{display:flex;flex:1 1;flex-direction:column;gap:8px}.log-detail-block{align-items:center;display:flex;flex-wrap:wrap;gap:8px 16px}.log-type-badge{background:#4da89726;border-radius:4px;color:var(--accent-primary);font-size:10px;font-weight:600;padding:2px 8px}.log-time{color:#6c757d;color:var(--text-secondary);font-size:11px}.log-info{display:flex;flex-direction:column;gap:2px}.log-label{color:#6c757d;color:var(--text-secondary);font-size:9px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.log-value{color:#1e1e2c;color:var(--text-primary);font-size:13px;font-weight:500}@media (max-width:768px){.admin-student-detail-modal{border-radius:0;bottom:0;left:0;max-height:100%;max-width:100%;overflow-y:auto;padding:56px 16px 16px;position:fixed;right:0;top:0;width:100%}.student-detail-close{right:10px;top:10px}.student-detail-content{flex-direction:column;gap:20px}.admin-id-card{flex:none;max-width:100%;min-width:0;min-width:auto;width:100%}.student-logs-section{width:100%}.student-logs-container{max-height:300px}}.os-content-area{flex:1 1;min-height:0;overflow-y:auto;padding:12px 16px}.os-content-area.os-content-fill{display:flex;flex-direction:column;overflow:hidden}.os-section{margin:0 auto;max-width:1200px}.os-section-title{color:#1e1e2c;color:var(--text-primary);font-size:20px;font-weight:700;margin-bottom:20px}.os-empty,.os-loading{color:#9ca3af;color:var(--text-muted);font-size:15px;padding:40px;text-align:center}.os-error{color:#ef4444;color:var(--status-danger);font-weight:600;padding:20px;text-align:center}.os-cards-grid{display:flex;flex-direction:column;gap:16px}.os-request-card{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;display:flex;flex-wrap:wrap;gap:16px;padding:20px}@media (max-width:480px){.os-request-card{align-items:flex-start;flex-direction:column;gap:12px}.os-card-avatar{height:50px;width:50px}.os-view-btn{text-align:center;width:100%}}.os-request-card:hover{border-color:#f29f67;border-color:var(--color-primary);box-shadow:0 4px 20px #00000014}.os-card-avatar{align-items:center;background:linear-gradient(135deg,#f29f67,#34b1aa);background:linear-gradient(135deg,var(--color-primary),var(--color-teal));border-radius:50%;display:flex;flex-shrink:0;height:60px;justify-content:center;overflow:hidden;width:60px}.os-card-avatar img{height:100%;object-fit:cover;width:100%}.os-card-avatar span{font-size:24px}.os-card-info{flex:1 1}.os-card-name{color:#1e1e2c;color:var(--text-primary);font-size:16px;font-weight:700;margin-bottom:6px}.os-card-details{color:#6c757d;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:13px;gap:12px;margin-bottom:4px}.os-card-branch{color:#9ca3af;color:var(--text-muted);font-size:12px}.os-card-applied{font-size:11px;font-weight:500;margin-top:4px}.os-card-applied,.os-view-btn{color:#f29f67;color:var(--color-primary)}.os-view-btn{background:#0000;border:1px solid #f29f67;border:1px solid var(--color-primary);border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.os-view-btn:hover{background:#f29f67;background:var(--color-primary);color:#fff;color:var(--text-light)}.os-details-view{margin:0 auto;max-width:900px}.os-back-btn{background:none;border:none;color:#f29f67;color:var(--color-primary);cursor:pointer;font-size:14px;font-weight:600;margin-bottom:16px;padding:0}.os-back-btn:hover{text-decoration:underline}.os-student-info-header{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);display:flex;gap:16px;margin-bottom:24px;padding-bottom:20px}.os-student-avatar-large{align-items:center;background:linear-gradient(135deg,#f29f67,var(--color-secondary));background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:50%;box-shadow:0 4px 12px #00000026;display:flex;flex-shrink:0;height:80px;justify-content:center;overflow:hidden;width:80px}.os-student-avatar-large img{height:100%;object-fit:cover;width:100%}.os-student-avatar-large .os-avatar-placeholder{color:#fff;font-size:32px;font-weight:700}.os-student-header-info{display:flex;flex-direction:column;gap:4px}.os-student-name-large{color:#1e1e2c;color:var(--text-primary);font-size:22px;font-weight:700;margin:0}.os-student-roll-large{color:#9ca3af;color:var(--text-muted);font-size:14px;font-weight:600;letter-spacing:.5px}.os-details-card{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;margin-bottom:24px;padding:24px}.os-details-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:16px}.os-detail-full,.os-detail-item{display:flex;flex-direction:column;gap:4px}.os-detail-full{grid-column:span 3}.os-detail-label{color:#9ca3af;color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.os-detail-value{word-wrap:break-word;color:#1e1e2c;color:var(--text-primary);font-size:14px;font-weight:500;max-width:100%;overflow-wrap:break-word;white-space:pre-wrap}.os-approval-timeline{background:linear-gradient(135deg,#f29f671a,#34b1aa1a);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:10px;margin-top:20px;padding:16px}.os-approval-timeline h4{color:#1e1e2c;color:var(--text-primary);font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.os-timeline-item{align-items:center;background:#fff;background:var(--color-surface);border-left:3px solid #e8e8e8;border-left:3px solid var(--color-border);border-radius:6px;display:flex;justify-content:space-between;margin-bottom:8px;padding:8px 12px}.os-timeline-item:last-child{margin-bottom:0}.os-timeline-item.approved{border-left-color:#34b1aa;border-left-color:var(--status-success)}.os-timeline-label{color:#1e1e2c;color:var(--text-primary);font-size:13px;font-weight:600}.os-timeline-value{color:#6c757d;color:var(--text-secondary);font-size:12px;font-weight:500}.os-classes-section{background:#f29f671a;border-radius:8px;margin-top:20px;padding:16px}.os-classes-section h4{color:#f29f67;color:var(--color-primary);font-size:13px;font-weight:700;margin-bottom:12px}.os-classes-row{align-items:center;display:flex;flex-wrap:wrap;gap:20px}.os-classes-row label{align-items:center;color:#6c757d;color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;gap:6px}.os-days-input{border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:6px;font-size:13px;padding:8px 12px;width:80px}.os-phd-leave-section{background:#3b8ff31a;border:1px solid #3b8ff333}.os-phd-leave-section h4{color:#3b8ff3;color:var(--color-blue)}.os-phd-leave-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.os-phd-leave-item{display:flex;flex-direction:column;gap:6px}.os-phd-leave-item label{color:#6c757d;color:var(--text-secondary);font-size:12px;font-weight:600}.os-phd-leave-input{border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:6px;font-size:13px;padding:10px 12px;transition:border-color .2s ease}.os-phd-leave-input:focus{border-color:#3b8ff3;border-color:var(--color-blue);box-shadow:0 0 0 3px #3b8ff31a;outline:none}@media (max-width:600px){.os-phd-leave-grid{grid-template-columns:1fr}}.os-phd-leave-display{background:#3b8ff314;border:1px solid #3b8ff333;border-radius:8px;margin-top:20px;padding:16px}.os-phd-leave-display h4{color:#3b8ff3;color:var(--color-blue);font-size:13px;font-weight:700;margin-bottom:12px}.os-phd-leave-display-grid{display:flex;flex-wrap:wrap;gap:16px}.os-phd-leave-display-item{display:flex;flex-direction:column;gap:4px;min-width:120px}.os-phd-leave-display-label{color:#9ca3af;color:var(--text-muted);font-size:11px;font-weight:600;text-transform:uppercase}.os-phd-leave-display-value{color:#3b8ff3;color:var(--color-blue);font-size:14px;font-weight:600}.os-dugc-note-section{background:#34b1aa1a;border:1px solid #34b1aa33}.os-dugc-note-section h4{color:#34b1aa;color:var(--color-teal)}.os-dugc-note-info{color:#6c757d;color:var(--text-secondary);font-size:12px;margin-bottom:12px}.os-dugc-note-input{border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;font-family:inherit;font-size:13px;padding:12px;resize:vertical;width:100%}.os-dugc-note-input:focus{border-color:#34b1aa;border-color:var(--color-teal);box-shadow:0 0 0 3px #34b1aa1a;outline:none}.os-dugc-note-display{background:#34b1aa14;border:1px solid #34b1aa33;border-radius:8px;margin-top:20px;padding:16px}.os-dugc-note-display h4{color:#34b1aa;color:var(--color-teal);font-size:13px;font-weight:700;margin-bottom:8px}.os-dugc-note-display p{color:#1e1e2c;color:var(--text-primary);font-size:14px;line-height:1.5;white-space:pre-wrap}.os-action-btns{display:flex;gap:16px;margin-top:24px}.os-approve-btn,.os-reject-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:14px;transition:all .2s ease}.os-reject-btn{background:#ef4444;background:var(--status-danger)}.os-approve-btn,.os-reject-btn{color:#fff;color:var(--text-light)}.os-approve-btn{background:#34b1aa;background:var(--status-success)}.os-reject-btn:hover{background:#dc2626}.os-approve-btn:hover{background:#059669}.os-approve-btn:disabled,.os-reject-btn:disabled{cursor:not-allowed;opacity:.6}.os-history-title{color:#1e1e2c;color:var(--text-primary);font-size:16px;font-weight:700;margin-bottom:12px}.os-history-list{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:10px;max-height:300px;overflow-y:auto;padding:12px}.os-history-item{background:#f8f9fa;background:var(--color-bg);border-radius:8px;margin-bottom:8px;padding:12px}.os-history-item.approved{background:#34b1aa1a;border-left:3px solid #34b1aa;border-left:3px solid var(--status-success)}.os-history-item.rejected{background:#ef44441a;border-left:3px solid #ef4444;border-left:3px solid var(--status-danger)}.os-history-item.pending{background:#e0b50f1a;border-left:3px solid #e0b50f;border-left:3px solid var(--status-warning)}.os-history-item.expired,.os-history-item.withdrawn{background:#64748b1a;border-left:3px solid #64748b}.os-history-item.overdue{background:#ea580c1a;border-left:3px solid #c2410c}.os-history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.os-history-reason{color:#1e1e2c;color:var(--text-primary);font-size:13px;font-weight:600}.os-status-badge{border-radius:4px;font-size:10px;font-weight:700;padding:4px 10px;text-transform:uppercase}.os-status-badge.approved{background:#34b1aa33;color:#34b1aa;color:var(--status-success)}.os-status-badge.rejected{background:#ef444433;color:#ef4444;color:var(--status-danger)}.os-status-badge.pending{background:#e0b50f33;color:#e0b50f;color:var(--status-warning)}.os-status-badge.expired,.os-status-badge.withdrawn{background:#64748b2e;color:#475569}.os-status-badge.overdue{background:#ea580c2e;color:#c2410c}.os-history-dates{color:#9ca3af;color:var(--text-muted);font-size:12px}.os-history-gatepass-tag{background:linear-gradient(135deg,#1e1e2c,#2d2d42);background:linear-gradient(135deg,var(--color-dark) 0,#2d2d42 100%);border:1px solid #ffffff1a;border-radius:20px;color:#fff;cursor:pointer;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;margin-right:10px;padding:4px 10px;transition:all .2s ease}.os-history-gatepass-tag:hover{background:linear-gradient(135deg,#f29f67,#e08a4f);background:linear-gradient(135deg,var(--color-primary) 0,#e08a4f 100%);box-shadow:0 2px 8px #1e1e2c66;transform:scale(1.05)}.os-history-gatepass-tag:active{transform:scale(.98)}.os-history-popup{animation:popupSlideIn .25s ease;background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:16px;box-shadow:0 24px 48px #00000040;max-height:85vh;max-width:480px;overflow:hidden;padding:0;position:relative;width:90%}@keyframes popupSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.os-history-popup-header{align-items:center;background:linear-gradient(135deg,#1e1e2c,#2d2d42);background:linear-gradient(135deg,var(--color-dark) 0,#2d2d42 100%);border-bottom:none;display:flex;gap:12px;justify-content:space-between;padding:20px 24px}.os-history-popup-tag{background:#f29f67;background:var(--color-primary);border-radius:25px;color:#fff;font-size:15px;font-weight:700;letter-spacing:.5px;padding:8px 18px}.os-history-popup-header .os-status-badge{background:#ffffff26;border:1px solid #fff3;color:#fff}.os-history-popup-header .os-status-badge.approved{background:#34b1aa;background:var(--status-success);border-color:#34b1aa;border-color:var(--status-success)}.os-history-popup-header .os-status-badge.rejected{background:#ef4444;background:var(--status-danger);border-color:#ef4444;border-color:var(--status-danger)}.os-history-popup-header .os-status-badge.pending{background:#e0b50f;background:var(--status-warning);border-color:#e0b50f;border-color:var(--status-warning);color:#1e1e2c;color:var(--color-dark)}.os-history-popup-header .os-status-badge.expired,.os-history-popup-header .os-status-badge.withdrawn{background:#64748b;border-color:#64748b}.os-history-popup-header .os-status-badge.overdue{background:#c2410c;border-color:#c2410c}.os-history-popup-body{display:flex;flex-direction:column;gap:0;max-height:60vh;overflow-y:auto;padding:20px 24px}.os-history-popup-row{background:#0000;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);border-radius:0;display:flex;flex-direction:column;gap:4px;padding:14px 0}.os-history-popup-row:last-child{border-bottom:none}.os-history-popup-row label{color:#9ca3af;color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase}.os-history-popup-row span{color:#1e1e2c;color:var(--text-primary);font-size:15px;font-weight:500}.os-history-popup .confirm-modal-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .2s ease;width:32px;z-index:10}.os-history-popup .confirm-modal-close:hover{background:#ffffff59;transform:rotate(90deg)}.os-history-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.os-search-form{display:flex;gap:8px}.os-search-input{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;font-size:13px;padding:10px 16px;width:250px}.os-search-input:focus{border-color:#f29f67;border-color:var(--color-primary);outline:none}.os-search-btn{background:#f29f67;background:var(--color-primary);border:none;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 16px}.os-history-table{display:flex;flex-direction:column;gap:8px}.os-history-row{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:10px;display:flex;gap:16px;justify-content:space-between;padding:16px}.os-history-row.approved{border-left:4px solid #34b1aa;border-left:4px solid var(--status-success)}.os-history-row.rejected{border-left:4px solid #ef4444;border-left:4px solid var(--status-danger)}.os-history-student{flex:1 1}.os-history-name{color:#1e1e2c;color:var(--text-primary);font-size:14px;font-weight:700}.os-history-meta{color:#9ca3af;color:var(--text-muted);font-size:12px}.os-history-leave{color:#6c757d;color:var(--text-secondary);display:flex;flex:1 1;flex-direction:column;font-size:13px;gap:2px}.os-history-reason-text{color:#9ca3af;color:var(--text-muted);font-size:12px}.os-student-history-section{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;margin-top:24px;padding:20px}.local-history-table{margin-top:16px}.local-history-header{background:#f5f5f5;background:var(--color-surface-hover);border-radius:8px;color:#9ca3af;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.local-history-header,.local-history-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:100px 90px 1fr 100px 100px 140px 140px}.local-history-row{align-items:center;background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;color:#1e1e2c;color:var(--text-primary);font-size:13px;margin-top:8px;padding:14px 16px}.local-history-row.approved{border-left:4px solid #34b1aa;border-left:4px solid var(--status-success)}.local-history-row.denied{border-left:4px solid #ef4444;border-left:4px solid var(--status-danger)}.local-history-gpno{color:#f29f67;color:var(--color-primary);font-weight:600}.local-history-status{border-radius:4px;font-size:12px;font-weight:600;padding:4px 8px;text-align:center}.local-history-status.approved{background:#34d39926;color:#34b1aa;color:var(--status-success)}.local-history-status.denied{background:#ef444426;color:#ef4444;color:var(--status-danger)}.local-history-place{color:#6c757d;color:var(--text-secondary);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.local-history-time{color:#9ca3af;color:var(--text-muted);font-size:12px;white-space:nowrap}@media (max-width:768px){.os-cards-grid{grid-template-columns:1fr}.os-details-grid{grid-template-columns:1fr 1fr}.os-detail-full{grid-column:span 2}.os-history-row{align-items:flex-start;flex-direction:column}.os-search-input{width:180px}.local-history-header{display:none}.local-history-row{gap:8px;grid-template-columns:1fr 1fr}.local-history-row span:nth-child(n+4){font-size:11px}.local-history-row span:before{color:#9ca3af;color:var(--text-muted);display:block;font-size:10px;font-weight:600;margin-bottom:2px;text-transform:uppercase}.local-history-gpno:before{content:"GP No."}.local-history-status:before{content:"Status"}.local-history-place:before{content:"Place"}.local-history-time:first-of-type:before{content:"Req. Out"}.local-history-time:nth-of-type(2):before{content:"Req. In"}.local-history-time:nth-of-type(3):before{content:"Actual Out"}.local-history-time:nth-of-type(4):before{content:"Actual In"}.admin-hamburger{display:none}.admin-sidebar{min-width:60px;width:60px}.admin-sidebar .admin-nav-label,.admin-sidebar .admin-nav-section-title,.admin-sidebar .admin-sidebar-brand{display:none}.admin-sidebar .admin-nav-item{justify-content:center;padding:14px 10px}.admin-sidebar .admin-nav-icon{margin:0}.admin-header-role{font-size:11px;padding:4px 8px}}@media (max-width:1024px){.admin-hamburger{display:none}.admin-sidebar{min-width:60px;width:60px}.admin-sidebar .admin-nav-label,.admin-sidebar .admin-nav-section-title,.admin-sidebar .admin-sidebar-brand{display:none}.admin-sidebar .admin-nav-item{justify-content:center;padding:14px 10px}.admin-sidebar .admin-nav-icon{margin:0}}.confirm-modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal{animation:slideUp .3s ease;background:#fff;background:var(--color-surface);border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:420px;position:relative;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.confirm-modal-close{align-items:center;background:#f8f9fa;background:var(--color-bg);border:none;border-radius:50%;color:#6c757d;color:var(--text-secondary);cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;position:absolute;right:12px;top:12px;transition:all .2s ease;width:32px}.confirm-modal-close:hover{background:#ef4444;background:var(--status-danger);color:#fff}.confirm-modal-header{border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);border-left:4px solid #f29f67;border-left:4px solid var(--color-primary);padding:20px 24px}.confirm-modal-header h3{color:#1e1e2c;color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.confirm-modal-body{padding:24px}.confirm-modal-question{color:#1e1e2c;color:var(--text-primary);font-size:15px;line-height:1.5;margin-bottom:20px}.confirm-modal-details{background:#f8f9fa;background:var(--color-bg);border-radius:8px;padding:16px}.confirm-modal-detail-row{align-items:flex-start;border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--color-border-light);display:flex;justify-content:space-between;padding:8px 0}.confirm-modal-detail-row:last-child{border-bottom:none}.confirm-modal-label{color:#6c757d;color:var(--text-secondary);flex-shrink:0;font-size:13px;font-weight:500}.confirm-modal-value{color:#1e1e2c;color:var(--text-primary);font-size:13px;font-weight:600;margin-left:12px;text-align:right;word-break:break-word}.confirm-modal-actions{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px 24px}.confirm-modal-cancel{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;color:#6c757d;color:var(--text-secondary);cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.confirm-modal-cancel:hover:not(:disabled){background:#f8f9fa;background:var(--color-bg);border-color:#6c757d;border-color:var(--text-secondary)}.confirm-modal-confirm{background:#f29f67;background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.confirm-modal-confirm:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.confirm-modal-cancel:disabled,.confirm-modal-confirm:disabled{cursor:not-allowed;opacity:.6}.gatepasses-page{box-sizing:border-box;display:flex;flex-direction:column;gap:16px;height:100%;overflow-y:auto;padding:16px 20px}.gp-search-bar{align-items:center;display:flex;flex-shrink:0;gap:10px}.gp-select{cursor:pointer}.gp-input,.gp-select{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;color:#1e1e2c;color:var(--text-primary);font-size:14px;padding:10px 14px}.gp-input{flex:1 1;max-width:200px}.gp-search-btn{background:#f29f67;background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:opacity .2s}.gp-search-btn:hover{opacity:.9}.gp-search-btn:disabled{cursor:not-allowed;opacity:.6}.gp-error{color:#e74c3c;flex-shrink:0;font-size:13px}.gp-result{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.gp-result-header{align-items:center;background:linear-gradient(135deg,#f29f67,#e88a4d);background:linear-gradient(135deg,var(--color-primary) 0,#e88a4d 100%);display:flex;flex-shrink:0;gap:12px;padding:12px 16px}.gp-type-badge{background:#fff3;border-radius:4px;font-size:11px;letter-spacing:.5px;padding:4px 10px}.gp-number,.gp-type-badge{color:#fff;font-weight:700}.gp-number{flex:1 1;font-size:16px}.gp-status{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px;text-transform:capitalize}.gp-status.Approved,.gp-status.approved{background:#27ae60e6;color:#fff}.gp-status.Pending,.gp-status.pending{background:#f1c40fe6;color:#333}.gp-status.denied,.gp-status.rejected{background:#e74c3ce6;color:#fff}.gp-content{display:grid;flex:1 1;grid-template-columns:280px 1fr;min-height:0;overflow:auto}.gp-student{align-items:center;background:#f8f9fa;background:var(--color-bg);border-right:1px solid #e8e8e8;border-right:1px solid var(--color-border);display:flex;flex-direction:column;gap:12px;padding:16px}.gp-photo{border:2px solid #f29f67;border:2px solid var(--color-primary);border-radius:10px;height:80px;object-fit:cover;width:80px}.gp-student-info{text-align:center;width:100%}.gp-student-info h4{color:#1e1e2c;color:var(--text-primary);font-size:16px;font-weight:700;margin:0 0 4px}.gp-roll{color:#f29f67;color:var(--color-primary);display:block;font-size:13px;font-weight:600;margin-bottom:12px}.gp-mini-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;text-align:left}.gp-mini-grid>div{display:flex;flex-direction:column;gap:2px}.gp-mini-grid label{color:#6c757d;color:var(--text-secondary);font-size:10px;font-weight:600;text-transform:uppercase}.gp-mini-grid span{color:#1e1e2c;color:var(--text-primary);font-size:12px;word-break:break-word}.gp-details{display:flex;flex-direction:column;gap:16px;overflow:auto;padding:16px}.gp-info-row{display:flex;flex-wrap:wrap;gap:16px}.gp-info-row>div{display:flex;flex-direction:column;gap:2px;min-width:100px}.gp-info-row label{color:#6c757d;color:var(--text-secondary);font-size:10px;font-weight:600;text-transform:uppercase}.gp-info-row span{color:#1e1e2c;color:var(--text-primary);font-size:13px}.gp-util-badge{border-radius:8px;display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;text-transform:capitalize}.gp-util-badge.completed{background:#27ae6026;color:#27ae60}.gp-util-badge.in_use,.gp-util-badge.pending{background:#f1c40f26;color:#f39c12}.gp-util-badge.unused{background:#9b9b9b26;color:#666}.gp-timeline{grid-gap:10px;background:#f8f9fa;background:var(--color-bg);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);padding:12px}.gp-time-item{background:#fff;background:var(--color-surface);border-left:3px solid #f29f67;border-left:3px solid var(--color-primary);border-radius:6px;display:flex;flex-direction:column;gap:2px;padding:8px}.gp-time-label{color:#6c757d;color:var(--text-secondary);font-size:9px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.gp-time-value{color:#1e1e2c;color:var(--text-primary);font-size:11px;font-weight:500}@media (max-width:800px){.gp-content{grid-template-columns:1fr}.gp-student{border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);border-right:none;flex-direction:row;padding:12px}.gp-photo{height:60px;width:60px}.gp-student-info{text-align:left}.gp-timeline{grid-template-columns:repeat(2,1fr)}}@media (max-width:500px){.gp-search-bar{flex-wrap:wrap}.gp-input{max-width:none}.gp-timeline{grid-template-columns:1fr}}.os-student-profile-section{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;display:flex;gap:20px;margin-bottom:20px;padding:20px}.os-student-photo-large{border:3px solid #f29f67;border:3px solid var(--color-primary);border-radius:50%;box-shadow:0 4px 12px #0000001a;flex-shrink:0;height:100px;overflow:hidden;width:100px}.os-student-photo-large img{height:100%;object-fit:cover;width:100%}.os-student-photo-placeholder{align-items:center;background:linear-gradient(135deg,#f29f67,#4a69bd);background:linear-gradient(135deg,var(--color-primary),#4a69bd);color:#fff;display:flex;font-size:42px;font-weight:600;height:100%;justify-content:center;width:100%}.os-student-basic-info{flex:1 1}.os-student-basic-info h3{color:var(--color-text-primary);font-size:1.4rem;margin:0 0 6px}.os-student-basic-info p{color:var(--color-text-secondary);font-size:.95rem;margin:0 0 4px}.os-view-doc-btn{background:#f29f67;background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s ease}.os-view-doc-btn:hover{background:#4a69bd;transform:translateY(-1px)}.doc-popup-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.doc-popup-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:90vw;overflow:hidden;position:relative}.doc-popup-close{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;position:absolute;right:10px;top:10px;transition:background .2s ease;width:36px;z-index:10001}.doc-popup-close:hover{background:#000c}.local-doc-popup-close{background:#dc3545f2}.local-doc-popup-close:hover{background:#c82333}.doc-popup-iframe{border:none;height:85vh;width:80vw}.doc-popup-image{display:block;max-height:85vh;max-width:85vw;object-fit:contain}.os-previous-leaves-input{border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;font-size:.95rem;min-height:80px;padding:12px;resize:none;transition:border-color .2s ease;width:100%}.os-previous-leaves-input:focus{border-color:#f29f67;border-color:var(--color-primary);box-shadow:0 0 0 3px #6c5ce71a;outline:none}.os-previous-leaves-input::placeholder{color:#b0b0b0;font-style:italic;opacity:.7}.os-previous-leaves-display{word-wrap:break-word;background:#fff3cd;border:1px solid #ffc107;border-radius:8px;margin-top:16px;overflow-wrap:break-word;padding:16px!important;white-space:pre-wrap}.os-previous-leaves-display .os-detail-label{color:#856404;font-weight:600}.os-previous-leaves-display .os-detail-value{word-wrap:break-word;color:#664d03;max-width:100%;overflow-wrap:break-word;white-space:pre-wrap}.rejection-reason-input{border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;padding:12px}.rejection-reason-input,.rejection-reason-input textarea{font-family:inherit;font-size:.95rem;min-height:100px;resize:none;width:100%}.rejection-reason-input textarea{border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:6px;box-sizing:border-box;padding:10px}.rejection-reason-input:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a;outline:none}.os-request-card-photo{border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;height:48px;overflow:hidden;width:48px}.os-request-card-photo img{height:100%;object-fit:cover;width:100%}.os-request-card-photo-placeholder{align-items:center;background:linear-gradient(135deg,#f29f67,#4a69bd);background:linear-gradient(135deg,var(--color-primary),#4a69bd);color:#fff;display:flex;font-size:18px;font-weight:600;height:100%;justify-content:center;width:100%}.gatepass-rejection-reason{word-wrap:break-word;background:#f8d7da;border:1px solid #f5c2c7;border-radius:8px;margin-top:16px;overflow-wrap:break-word;padding:16px;white-space:pre-wrap}.gatepass-rejection-reason .rejection-label{color:#842029;font-weight:600;margin-bottom:6px}.gatepass-rejection-reason .rejection-text{word-wrap:break-word;color:#58151c;max-width:100%;overflow-wrap:break-word;white-space:pre-wrap}.os-photo-placeholder{align-items:center;background:linear-gradient(135deg,#f29f67,#4a69bd);background:linear-gradient(135deg,var(--color-primary),#4a69bd);color:#fff;display:flex;font-size:42px;height:100%;justify-content:center;width:100%}.os-student-name{color:var(--color-text-primary);font-size:1.4rem;font-weight:700;margin:0 0 6px}.os-student-roll{color:var(--color-text-secondary);font-size:1rem;font-weight:500;margin:0 0 4px}.os-student-branch{color:var(--color-text-secondary);font-size:.95rem;margin:0}@media (max-width:600px){.os-student-profile-section{flex-direction:column;text-align:center}.os-student-photo-large{height:80px;width:80px}.os-student-basic-info h3{font-size:1.2rem}.doc-popup-iframe{height:80vh;width:95vw}.doc-popup-image{max-width:95vw}}.os-history-avatar{background:linear-gradient(135deg,#f29f67,#4a69bd);background:linear-gradient(135deg,var(--color-primary),#4a69bd);border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;height:40px;overflow:hidden;width:40px}.os-history-avatar img{height:100%;object-fit:cover;width:100%}.os-history-avatar-placeholder{align-items:center;color:#fff;display:flex;font-size:16px;font-weight:600;height:100%;justify-content:center;width:100%}.os-history-row-enhanced{align-items:center;background:#fff;background:var(--color-surface);border-left:4px solid #e8e8e8;border-left:4px solid var(--color-border);border-radius:10px;display:flex;gap:14px;margin-bottom:10px;padding:14px 16px;transition:all .2s ease}.os-history-row-enhanced.approved{border-left-color:#34b1aa;border-left-color:var(--status-success)}.os-history-row-enhanced.denied,.os-history-row-enhanced.rejected{border-left-color:#ef4444;border-left-color:var(--status-danger)}.os-history-row-enhanced.pending{border-left-color:#e0b50f;border-left-color:var(--status-warning)}.os-history-row-enhanced.expired,.os-history-row-enhanced.withdrawn{border-left-color:#64748b}.os-history-row-enhanced.overdue{border-left-color:#c2410c}.os-history-row-clickable{cursor:pointer}.os-history-row-clickable:hover{background:#f8f9fa;box-shadow:0 2px 8px #00000014;transform:translateX(4px)}.os-history-student-enhanced{align-items:center;display:flex;flex:1 1;gap:12px;min-width:0}.os-history-student-info{flex:1 1;min-width:0}.os-history-gp-number{background:linear-gradient(135deg,#f29f67,#4a69bd);background:linear-gradient(135deg,var(--color-primary),#4a69bd);color:#fff;font-size:12px;font-weight:700;letter-spacing:.3px}.os-history-gp-number,.os-history-gp-pending{border-radius:6px;padding:4px 10px;white-space:nowrap}.os-history-gp-pending{background:#e9ecef;color:#6c757d;font-size:11px;font-style:italic;font-weight:500}.os-history-leave-enhanced{display:flex;flex:1.2 1;flex-direction:column;gap:4px;min-width:0}.gatepass-popup-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.gatepass-popup-content{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:95%}.gatepass-popup-header{align-items:center;background:linear-gradient(135deg,#f29f67,#4a69bd);background:linear-gradient(135deg,var(--color-primary),#4a69bd);border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:20px 24px}.gatepass-popup-header h3{color:#fff;font-size:1.2rem;font-weight:600;margin:0}.gatepass-popup-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;transition:background .2s ease;width:32px}.gatepass-popup-close:hover{background:#ffffff4d}.gatepass-popup-body{padding:24px}.gatepass-popup-student{align-items:center;background:#f8f9fa;border-radius:12px;display:flex;gap:16px;margin-bottom:20px;padding:16px}.gatepass-popup-avatar{border:3px solid #f29f67;border:3px solid var(--color-primary);border-radius:50%;box-shadow:0 4px 12px #0000001a;flex-shrink:0;height:72px;overflow:hidden;width:72px}.gatepass-popup-avatar img{height:100%;object-fit:cover;width:100%}.gatepass-popup-avatar-placeholder{align-items:center;background:linear-gradient(135deg,#f29f67,#4a69bd);background:linear-gradient(135deg,var(--color-primary),#4a69bd);color:#fff;display:flex;font-size:28px;height:100%;justify-content:center;width:100%}.gatepass-popup-student-info h4{color:#1e1e2c;color:var(--text-primary);font-size:1.2rem;margin:0 0 4px}.gatepass-popup-student-info p{color:#6c757d;color:var(--text-secondary);font-size:.9rem;margin:0}.gatepass-popup-badges{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.gatepass-popup-type-badge{border-radius:8px;font-size:12px;font-weight:700;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.gatepass-popup-type-badge.local{background:#e3f2fd;color:#1976d2}.gatepass-popup-type-badge.outstation{background:#f3e5f5;color:#7b1fa2}.gatepass-popup-number-badge{background:linear-gradient(135deg,#f29f67,#4a69bd);background:linear-gradient(135deg,var(--color-primary),#4a69bd);border-radius:8px;color:#fff;font-size:13px;font-weight:700;padding:6px 14px}.gatepass-popup-status-badge{border-radius:8px;font-size:12px;font-weight:600;padding:6px 14px;text-transform:capitalize}.gatepass-popup-status-badge.approved{background:#27ae6026;color:#27ae60}.gatepass-popup-status-badge.pending{background:#f1c40f26;color:#f39c12}.gatepass-popup-status-badge.denied,.gatepass-popup-status-badge.rejected{background:#e74c3c26;color:#e74c3c}.gatepass-popup-status-badge.expired,.gatepass-popup-status-badge.withdrawn{background:#64748b26;color:#475569}.gatepass-popup-status-badge.overdue{background:#ea580c26;color:#c2410c}.gatepass-popup-details{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.gatepass-popup-detail-item{display:flex;flex-direction:column;gap:4px}.gatepass-popup-detail-item.full-width{grid-column:1/-1}.gatepass-popup-detail-label{color:#6c757d;color:var(--text-secondary);font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.gatepass-popup-detail-value{color:#1e1e2c;color:var(--text-primary);font-size:14px;font-weight:500}.gatepass-popup-utilization{background:#f8f9fa;border-radius:10px;margin-bottom:20px;padding:16px}.gatepass-popup-utilization h5{color:#6c757d;color:var(--text-secondary);font-size:13px;font-weight:600;margin:0 0 12px;text-transform:uppercase}.gatepass-popup-util-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.gatepass-popup-util-item{background:#fff;border-left:3px solid #f29f67;border-left:3px solid var(--color-primary);border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:12px}.gatepass-popup-util-item.exit{border-left-color:#e74c3c}.gatepass-popup-util-item.entry{border-left-color:#27ae60}.gatepass-popup-util-label{color:#6c757d;color:var(--text-secondary);font-size:10px;font-weight:700;text-transform:uppercase}.gatepass-popup-util-value{color:#1e1e2c;color:var(--text-primary);font-size:13px;font-weight:600}.gatepass-popup-util-value.not-done{color:#999;font-style:italic;font-weight:400}.gatepass-popup-timeline{border-top:1px solid #e8e8e8;border-top:1px solid var(--color-border);padding-top:16px}.gatepass-popup-timeline h5{color:#6c757d;color:var(--text-secondary);font-size:13px;font-weight:600;margin:0 0 12px;text-transform:uppercase}.gatepass-popup-timeline-list{display:flex;flex-direction:column;gap:8px}.gatepass-popup-timeline-item{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;font-size:13px;justify-content:space-between;padding:10px 12px}.gatepass-popup-timeline-item.approved{background:#27ae6014;border-left:3px solid #27ae60}.gatepass-popup-timeline-stage{color:#1e1e2c;color:var(--text-primary);font-weight:500}.gatepass-popup-timeline-time{color:#6c757d;color:var(--text-secondary);font-size:12px}.gatepass-popup-stage-notes{margin-top:16px}.gatepass-popup-stage-notes h5{color:#6c757d;color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:.3px;margin:0 0 10px;text-transform:uppercase}.gatepass-popup-stage-notes-list{display:flex;flex-direction:column;gap:8px}.gatepass-popup-stage-note-item{background:#f8f9fa;border-left:3px solid #cbd5e1;border-radius:6px;padding:10px 12px}.gatepass-popup-stage-note-item.approved{background:#27ae600f;border-left-color:#27ae60}.gatepass-popup-stage-note-item.rejected{background:#e74c3c0f;border-left-color:#e74c3c}.gatepass-popup-stage-note-item.pending{background:#f1c40f0f;border-left-color:#f1c40f}.gatepass-popup-stage-note-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:4px}.gatepass-popup-stage-note-label{color:#1e1e2c;color:var(--text-primary);font-size:13px;font-weight:600}.gatepass-popup-stage-note-status{background:#e2e8f0;border-radius:10px;color:#64748b;font-size:11px;font-weight:600;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.gatepass-popup-stage-note-status.approved{background:#27ae6026;color:#166534}.gatepass-popup-stage-note-status.rejected{background:#e74c3c26;color:#991b1b}.gatepass-popup-stage-note-status.pending{background:#f1c40f2e;color:#854d0e}.gatepass-popup-stage-note-time{color:#6c757d;color:var(--text-secondary);font-size:11px;margin-left:auto}.gatepass-popup-stage-note-body{display:flex;font-size:12px;gap:6px;line-height:1.4}.gatepass-popup-stage-note-key{color:#6c757d;color:var(--text-secondary);flex-shrink:0;font-weight:600}.gatepass-popup-stage-note-value{color:#1e1e2c;color:var(--text-primary);word-break:break-word}.gatepass-popup-stage-note-value.empty{color:#6c757d;color:var(--text-secondary);font-style:italic}@media (max-width:600px){.os-history-row-enhanced{flex-wrap:wrap;gap:10px}.os-history-student-enhanced{width:100%}.os-history-gp-number,.os-history-gp-pending{order:2}.gatepass-popup-details,.gatepass-popup-util-grid{grid-template-columns:1fr}.gatepass-popup-student{flex-direction:column;text-align:center}}.os-email-student-section{align-items:center;background:linear-gradient(135deg,#ebf8ff,#e6fffa);border:1px solid #bee3f8;border-radius:12px;display:flex;flex-direction:column;gap:12px;margin-bottom:16px;margin-top:24px;padding:20px}.os-email-student-label{color:#2b6cb0;font-size:14px;font-weight:500;margin:0;text-align:center}.os-email-student-btn{align-items:center;background:linear-gradient(135deg,#3182ce,#2c5282);border:none;border-radius:8px;box-shadow:0 2px 8px #3182ce4d;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.os-email-student-btn:hover{background:linear-gradient(135deg,#2c5282,#1a365d);box-shadow:0 4px 12px #3182ce66;transform:translateY(-1px)}.os-email-student-btn svg{height:18px;width:18px}.email-modal{max-width:450px}.os-email-modal-info{color:#4a5568;font-size:14px;line-height:1.6;margin-bottom:20px;text-align:center}.os-email-modal-info strong{color:#1a365d}.os-email-form{background:#f7fafc;border-radius:8px;padding:20px}.os-email-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.os-email-form-row label{display:flex;flex-direction:column;gap:6px}.os-email-form-row label span{color:#4a5568;font-size:13px;font-weight:500}.os-email-form-row input[type=date],.os-email-form-row input[type=time]{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.os-email-form-row input[type=date]:focus,.os-email-form-row input[type=time]:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce26;outline:none}.os-email-send-btn{background:linear-gradient(135deg,#3182ce,#2c5282)!important}.os-email-send-btn:hover:not(:disabled){background:linear-gradient(135deg,#2c5282,#1a365d)!important}.os-email-send-btn:disabled{cursor:not-allowed;opacity:.6}.os-edit-btn-container{border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;margin-top:16px;padding-top:16px}.os-edit-btn{align-items:center;background:linear-gradient(135deg,#38a169,#276749);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:center;padding:10px 18px;transition:all .25s ease}.os-edit-btn:hover{background:linear-gradient(135deg,#276749,#1e4e3a);box-shadow:0 4px 12px #38a1694d;transform:translateY(-1px)}.os-edit-btn svg{flex-shrink:0}.edit-gatepass-modal{max-width:480px}.os-edit-modal-info{background:#f0fff4;border-left:4px solid #38a169;border-radius:8px;color:#4a5568;font-size:14px;line-height:1.6;margin-bottom:20px;padding:12px}.os-edit-form{display:flex;flex-direction:column;gap:16px}.os-edit-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.os-edit-form-row label{display:flex;flex-direction:column;gap:6px}.os-edit-form-row label span{color:#4a5568;font-size:13px;font-weight:600}.os-edit-form-row input[type=date],.os-edit-form-row input[type=number],.os-edit-form-row input[type=time]{border:1.5px solid #e2e8f0;border-radius:8px;color:#2d3748;font-size:14px;padding:10px 12px;transition:all .2s ease}.os-edit-form-row input[type=date]:focus,.os-edit-form-row input[type=number]:focus,.os-edit-form-row input[type=time]:focus{border-color:#38a169;box-shadow:0 0 0 3px #38a16926;outline:none}.os-edit-save-btn{background:linear-gradient(135deg,#38a169,#276749)!important}.os-edit-save-btn:hover:not(:disabled){background:linear-gradient(135deg,#276749,#1e4e3a)!important}.os-edit-save-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.os-edit-form-row{grid-template-columns:1fr}.os-edit-btn{width:100%}.os-edit-btn-container{justify-content:stretch}.os-email-form-row{grid-template-columns:1fr}.os-email-student-section{padding:16px}}.profile-pic-hover{cursor:pointer;position:relative;transition:all .25s ease}.profile-pic-hover:after{border:2px solid #0000;border-radius:inherit;content:"";inset:-3px;pointer-events:none;position:absolute;transition:all .25s ease}.profile-pic-hover:hover{transform:scale(1.05)}.profile-pic-hover:hover:after{border-color:#3b8ff3;box-shadow:0 4px 15px #3b8ff359}.gatepass-popup-avatar.profile-pic-hover,.gatepass-popup-avatar.profile-pic-hover:after,.os-card-avatar.profile-pic-hover,.os-card-avatar.profile-pic-hover:after,.os-history-avatar.profile-pic-hover,.os-history-avatar.profile-pic-hover:after,.os-student-avatar-large.profile-pic-hover,.os-student-avatar-large.profile-pic-hover:after{border-radius:50%}.os-student-photo-large.profile-pic-hover,.os-student-photo-large.profile-pic-hover:after{border-radius:12px}.ban-student-page{display:flex;flex-direction:column;gap:24px;margin:0 auto;max-height:calc(100vh - 120px);max-width:1200px;overflow-y:auto;padding:20px 20px 40px}.ban-warning-banner{align-items:center;background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:1px solid #ffb74d;border-radius:12px;color:#e65100;display:flex;font-size:14px;font-weight:500;gap:12px;padding:16px 20px}.ban-warning-icon{font-size:24px}.ban-search-section{background:#fff;background:var(--color-surface);border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:24px}.ban-section-title{align-items:center;color:#1e1e2c;color:var(--text-primary);display:flex;font-size:18px;font-weight:600;gap:8px;margin-bottom:16px}.banned-count{background:#f8f9fa;background:var(--color-bg);border-radius:12px;color:#6c757d;color:var(--text-secondary);font-size:14px;font-weight:500;padding:4px 10px}.ban-search-box{display:flex;gap:12px;max-width:600px}.ban-search-input{border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:12px;flex:1 1;font-size:15px;font-weight:500;letter-spacing:.5px;outline:none;padding:14px 18px;text-transform:uppercase;transition:all .2s}.ban-search-input:focus{border-color:#3b8ff3;border-color:var(--color-blue);box-shadow:0 0 0 4px #3b8ff31a}.ban-search-input::placeholder{color:#9ca3af;color:var(--text-muted);letter-spacing:normal;text-transform:none}.ban-search-btn{background:#3b8ff3;background:var(--color-blue);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 28px;transition:all .2s;white-space:nowrap}.ban-search-btn:hover:not(:disabled){background:#2a7ee0;box-shadow:0 4px 12px #3b8ff359}.ban-search-btn:disabled{cursor:not-allowed;opacity:.6}.ban-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;font-weight:500;margin-top:12px;padding:12px 16px}.ban-student-card{background:#fff;background:var(--color-surface);border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:24px;transition:all .3s}.ban-student-card.is-banned{background:linear-gradient(180deg,#fef2f2,#fff);border-color:#ef4444}.ban-card-header{align-items:center;border-bottom:1px solid #e8e8e8;border-bottom:1px solid var(--color-border);display:flex;gap:20px;margin-bottom:20px;padding-bottom:20px}.ban-student-photo{border:3px solid #e8e8e8;border:3px solid var(--color-border);border-radius:50%;height:80px;object-fit:cover;width:80px}.ban-student-card.is-banned .ban-student-photo{border-color:#ef4444;filter:grayscale(30%)}.ban-student-basic{display:flex;flex-direction:column;gap:4px}.ban-student-name{color:#1e1e2c;color:var(--text-primary);font-size:20px;font-weight:700}.ban-student-roll{color:#3b8ff3;color:var(--color-blue);font-size:16px;font-weight:600}.ban-status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:13px;font-weight:700;gap:6px;margin-top:8px;padding:6px 14px;width:-webkit-fit-content;width:fit-content}.ban-status-badge.active{background:#dcfce7;color:#16a34a}.ban-status-badge.banned{animation:pulse-danger 2s ease-in-out infinite;background:#fee2e2;color:#dc2626}@keyframes pulse-danger{0%,to{box-shadow:0 0 0 0 #dc26264d}50%{box-shadow:0 0 0 8px #dc262600}}.ban-card-details{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.ban-detail-row{display:flex;flex-direction:column;gap:4px}.ban-detail-row label{color:#9ca3af;color:var(--text-muted);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.ban-detail-row span{color:#1e1e2c;color:var(--text-primary);font-size:14px;font-weight:500}.presence-badge{border-radius:6px;display:inline-block;font-size:13px;font-weight:600;padding:4px 12px;width:-webkit-fit-content;width:fit-content}.presence-badge.inside{background:#dcfce7;color:#16a34a}.presence-badge.outside{background:#fef3c7;color:#d97706}.ban-info-section{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin-top:20px;padding:16px}.ban-info-header{color:#dc2626;font-size:14px;font-weight:700;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.ban-reason-text{color:#b91c1c!important;font-style:italic}.ban-action-section{border-top:1px solid #e8e8e8;border-top:1px solid var(--color-border);margin-top:24px;padding-top:24px}.ban-action-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-size:15px;font-weight:700;gap:8px;padding:14px 32px;transition:all .2s}.ban-action-btn.ban-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.ban-action-btn.ban-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 16px #dc262666;transform:translateY(-2px)}.ban-action-btn.unban-btn{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.ban-action-btn.unban-btn:hover{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 4px 16px #22c55e66;transform:translateY(-2px)}.ban-confirm-section{animation:slideDown .3s ease;background:#f8f9fa;background:var(--color-bg);border-radius:12px;padding:20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.ban-reason-label{color:#1e1e2c;color:var(--text-primary);display:block;font-size:14px;font-weight:600;margin-bottom:10px}.ban-reason-input{border:2px solid #e8e8e8;border:2px solid var(--color-border);border-radius:10px;font-family:inherit;font-size:14px;outline:none;padding:14px 16px;resize:vertical;transition:all .2s;width:100%}.ban-reason-input:focus{border-color:#ef4444;box-shadow:0 0 0 4px #ef44441a}.unban-confirm-text{color:#1e1e2c;color:var(--text-primary);font-size:15px;line-height:1.6;margin-bottom:16px}.ban-confirm-buttons{display:flex;gap:12px;margin-top:16px}.ban-confirm-btn{border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.ban-confirm-btn.confirm{background:#ef4444;color:#fff}.ban-confirm-btn.confirm:hover:not(:disabled){background:#dc2626}.ban-confirm-btn.confirm.unban{background:#22c55e}.ban-confirm-btn.confirm.unban:hover:not(:disabled){background:#16a34a}.ban-confirm-btn.cancel{background:#e8e8e8;background:var(--color-border);color:#6c757d;color:var(--text-secondary)}.ban-confirm-btn.cancel:hover:not(:disabled){background:#d1d5db}.ban-confirm-btn:disabled{cursor:not-allowed;opacity:.6}.banned-list-section{background:#fff;background:var(--color-surface);border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:24px}.banned-list-empty,.banned-list-loading{color:#9ca3af;color:var(--text-muted);font-size:15px;padding:40px;text-align:center}.banned-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto;padding-right:8px}.banned-list::-webkit-scrollbar{width:6px}.banned-list::-webkit-scrollbar-track{background:#fef2f2;border-radius:3px}.banned-list::-webkit-scrollbar-thumb{background:#fca5a5;border-radius:3px}.banned-list::-webkit-scrollbar-thumb:hover{background:#f87171}.banned-list-item{align-items:center;background:linear-gradient(135deg,#fef2f2,#fff5f5);border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:12px;cursor:pointer;display:flex;flex-shrink:0;gap:16px;padding:16px 20px;transition:all .2s}.banned-list-item:hover{background:#fee2e2;border-color:#fca5a5;transform:translateX(4px)}.banned-item-photo{border:2px solid #fca5a5;border-radius:50%;filter:grayscale(30%);height:48px;object-fit:cover;width:48px}.banned-item-info{display:flex;flex-direction:column;gap:2px;min-width:150px}.banned-item-name{color:#1e1e2c;color:var(--text-primary);font-size:15px;font-weight:600}.banned-item-roll{color:#3b8ff3;color:var(--color-blue);font-size:13px;font-weight:500}.banned-item-reason{color:#b91c1c;flex:1 1;font-size:13px;font-style:italic;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.banned-item-date{color:#9ca3af;color:var(--text-muted);font-size:12px;white-space:nowrap}@media (max-width:768px){.ban-student-page{gap:16px;padding:16px}.ban-warning-banner{gap:8px;text-align:center}.ban-card-header,.ban-search-box,.ban-warning-banner{flex-direction:column}.ban-card-header{text-align:center}.ban-student-basic{align-items:center}.ban-card-details{grid-template-columns:1fr 1fr}.ban-confirm-buttons{flex-direction:column}.banned-list-item{flex-wrap:wrap}.banned-item-reason{margin-top:8px;max-width:none;order:4;width:100%}.banned-item-date{margin-left:auto}}.edit-profile-modal{max-width:480px;width:95%}.edit-profile-subtitle{color:#6c757d;color:var(--text-secondary);font-size:14px;line-height:1.5;margin-bottom:20px}.edit-profile-error{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#b91c1c;font-size:13px;margin-bottom:16px;padding:10px 14px}.edit-profile-section{margin-bottom:24px}.edit-profile-section:last-child{margin-bottom:0}.edit-profile-section-title{border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--color-border-light);color:#1e1e2c;color:var(--text-primary);font-size:14px;font-weight:600;margin-bottom:12px;padding-bottom:8px}.edit-profile-field{margin-bottom:14px}.edit-profile-field:last-child{margin-bottom:0}.edit-profile-label{color:#6c757d;color:var(--text-secondary);display:block;font-size:13px;font-weight:500;margin-bottom:6px}.edit-profile-input{background:#f8f9fa;background:var(--color-bg);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;color:#1e1e2c;color:var(--text-primary);font-size:14px;padding:10px 14px;transition:border-color .2s,box-shadow .2s;width:100%}.edit-profile-input:focus{border-color:#34b1aa;border-color:var(--color-teal);box-shadow:0 0 0 3px #34b1aa26;outline:none}.edit-profile-input::placeholder{color:#9ca3af;color:var(--text-muted)}.edit-profile-password-wrapper{align-items:center;display:flex;position:relative}.edit-profile-password-wrapper .edit-profile-input{padding-right:44px}.edit-profile-toggle-password{background:none;border:none;cursor:pointer;font-size:16px;opacity:.6;padding:4px;position:absolute;right:10px;transition:opacity .2s}.edit-profile-toggle-password:hover{opacity:1}.admin-edit-profile-btn{align-items:center;background:#0000;border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:6px;color:#6c757d;color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;gap:6px;padding:6px 12px;transition:all .2s}.admin-edit-profile-btn:hover{background:#f8f9fa;background:var(--color-bg);border-color:#34b1aa;border-color:var(--color-teal);color:#34b1aa;color:var(--color-teal)}.admin-edit-profile-btn svg{height:14px;width:14px}.admin-hostel-filter-row{align-items:center;display:flex;flex-shrink:0;gap:10px;justify-content:flex-end;margin:0 0 4px}.admin-hostel-filter-row label{color:#6c757d;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.admin-hostel-filter-row select{background:#fff;border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;color:#1e1e2c;color:var(--text-primary);font-size:14px;min-width:220px;padding:9px 12px}.admin-hostel-filter-row select:disabled{background:#f5f7fa;color:#6c757d;color:var(--text-secondary)}@media (max-width:768px){.edit-profile-modal{margin:16px;max-width:100%}.admin-edit-profile-btn span{display:none}.admin-edit-profile-btn{padding:6px 8px}.admin-hostel-filter-row{flex-wrap:wrap;justify-content:flex-start;margin-top:2px}.admin-hostel-filter-row select{min-width:190px;width:100%}}.admin-edit-student-page{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;gap:16px;min-height:0;overflow-x:hidden;overflow-y:auto;padding-bottom:20px;padding-right:4px;position:relative}.admin-edit-form{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;display:flex;flex-direction:column;gap:16px;margin-bottom:8px;padding:18px 18px 28px}.admin-edit-form-header{align-items:center;border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--color-border-light);display:flex;gap:16px;padding-bottom:14px}.admin-edit-photo-wrap{align-items:center;display:flex;flex-direction:column;gap:8px}.admin-edit-photo{border:3px solid #fff;border-radius:50%;box-shadow:0 2px 12px #0000001f;height:96px;object-fit:cover;width:96px}.admin-edit-photo-btn{background:#0000;border:none;color:#3b8ff3;color:var(--color-blue);cursor:pointer;font-size:12px;font-weight:600}.admin-edit-photo-btn input{display:none}.admin-edit-student-headline h4{color:#1e1e2c;color:var(--text-primary);font-size:18px;margin-bottom:4px}.admin-edit-student-headline p{color:#6c757d;color:var(--text-secondary);font-size:13px}.admin-edit-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-edit-grid label{display:flex;flex-direction:column;gap:6px}.admin-edit-grid label span{color:#6c757d;color:var(--text-secondary);font-size:12px;font-weight:600}.admin-edit-grid input,.admin-edit-grid select{background:#fff;background:var(--color-bg-light);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:8px;color:#1e1e2c;color:var(--text-primary);font-size:14px;padding:10px 12px;width:100%}.admin-edit-grid input:focus,.admin-edit-grid select:focus{border-color:#3b8ff3;border-color:var(--color-blue);box-shadow:0 0 0 3px #3b8ff31f;outline:none}.admin-edit-status{border-radius:8px;font-size:13px;font-weight:500;padding:10px 12px}.admin-edit-status.success{background:#10b9811f;border:1px solid #10b98140;color:#047857}.admin-edit-status.error{background:#ef44441f;border:1px solid #ef444440;color:#b91c1c}.admin-edit-actions{background:#fff;background:var(--color-surface);border-top:1px solid #f0f0f0;border-top:1px solid var(--color-border-light);display:flex;gap:10px;justify-content:flex-end;padding-top:10px;position:static;z-index:2}.admin-edit-cancel,.admin-edit-save{border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;padding:10px 14px}.admin-edit-cancel{background:#eef2f7;color:#374151}.admin-edit-save{background:#3b8ff3;background:var(--color-blue);color:#fff}.admin-edit-cancel:disabled,.admin-edit-save:disabled{cursor:not-allowed;opacity:.65}.admin-camera-modal{background:#fff;background:var(--color-surface);border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;box-shadow:0 20px 50px #0003;overflow:hidden;width:min(92vw,680px)}.admin-camera-body{display:flex;flex-direction:column;gap:14px;padding:16px}.admin-camera-video{background:#111827;border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:10px;max-height:56vh;object-fit:cover;width:100%}.admin-camera-actions{display:flex;gap:10px;justify-content:center}@media (max-width:900px){.admin-edit-grid{grid-template-columns:1fr}.admin-edit-form-header{align-items:flex-start;flex-direction:column}}@media (max-width:1200px){.admin-main{-webkit-overflow-scrolling:touch;overflow-x:hidden!important;overflow-y:auto!important;padding-bottom:calc(24px + env(safe-area-inset-bottom))}.admin-edit-student-page{min-height:auto;overflow:visible;padding-bottom:calc(20px + env(safe-area-inset-bottom))}.admin-edit-grid{grid-template-columns:1fr}.admin-edit-form{padding:14px 14px calc(94px + env(safe-area-inset-bottom))}.admin-edit-actions{border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;bottom:calc(8px + env(safe-area-inset-bottom));box-shadow:0 10px 24px #00000024;justify-content:stretch;left:calc(10px + env(safe-area-inset-left));padding:10px;position:fixed;right:calc(10px + env(safe-area-inset-right));z-index:1200}.admin-edit-cancel,.admin-edit-save{flex:1 1}}@media (min-width:1201px) and (max-width:1400px){.admin-edit-form{padding-bottom:calc(94px + env(safe-area-inset-bottom))}.admin-edit-actions{border:1px solid #e8e8e8;border:1px solid var(--color-border);border-radius:12px;bottom:calc(10px + env(safe-area-inset-bottom));box-shadow:0 10px 24px #00000024;left:calc(14px + env(safe-area-inset-left));padding:10px;position:fixed;right:calc(14px + env(safe-area-inset-right));z-index:1200}}
/*# sourceMappingURL=main.aa0e9a79.css.map*/