body{font-family:Arial,sans-serif;overflow:auto}.login-container{align-items:center;background:linear-gradient(to bottom right,#bcd8ff,#7faef5);box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:24px 16px;position:relative}.login-container.loading .login-content,.login-container.loading .rings{filter:blur(6px);transform:scale(.995)}.login-container.loading .login-content{pointer-events:none;-webkit-user-select:none;user-select:none}.rings{inset:0;position:absolute}.main-logo{height:clamp(80px,12vw,120px);margin-bottom:10px;object-fit:contain;width:clamp(80px,12vw,120px)}.ring{border:1px solid #ffffff26;border-radius:50%;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.login-content{align-items:center;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 48px);max-width:92vw;position:relative;width:480px;z-index:2}.login-card{text-align:center;width:100%}.heading{color:#163a72;font-size:clamp(32px,5vw,52px);font-weight:700;margin-top:8px}.heading span{color:#1e56d8}.subtitle{color:#4f5f77;font-size:clamp(18px,3vw,28px);margin-bottom:18px}.input-box{background:#ffffffbf;border:none;border-radius:18px;box-shadow:0 6px 15px #00000026;box-sizing:border-box;font-size:clamp(16px,2vw,20px);height:clamp(48px,6.5vh,65px);margin-bottom:14px;outline:none;padding:0 25px;width:100%}.login-mode{display:flex;gap:12px;margin-bottom:14px}.mode-btn{align-items:center;background:#ffffff8c;border:1px solid #fff9;border-radius:14px;box-shadow:0 6px 14px #0000001f;color:#27406d;cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:10px;height:clamp(40px,5.5vh,50px);justify-content:center}.mode-btn.active{background:#fff;border-color:#1e56d8;color:#1e56d8}.input-group{position:relative}.input-group .input-box{padding-left:60px}.input-icon{color:#4f5f77;left:20px;position:absolute;top:50%;transform:translateY(-50%)}.password-box{position:relative}.password-box .input-box{padding-left:60px}.password-box .input-icon.lock{left:20px}.eye-btn{background:#0000;border:none;color:#666;cursor:pointer;position:absolute;right:20px;top:50%;transform:translateY(-50%)}.forgot-text{color:#163a72;font-weight:500;margin-bottom:16px;text-align:right}.login-btn{background:linear-gradient(90deg,#2979ff,#1257d8);border:none;border-radius:18px;box-shadow:0 10px 25px #0003;color:#fff;cursor:pointer;font-size:clamp(18px,2.6vw,24px);font-weight:700;height:clamp(48px,6.5vh,65px);width:100%}.message{color:#163a72;font-size:18px;margin-top:20px}.powered-by{align-items:center;color:#1e3f75;display:flex;flex-direction:column;font-size:clamp(16px,2.2vw,22px);font-weight:700;gap:4px;margin-top:2px}.powered-by span{line-height:1.1;margin:0}.powered-by img{height:clamp(120px,22vw,220px);margin-top:-25%;width:clamp(150px,26vw,270px)}.language-dropdown{position:fixed;right:24px;top:20px;z-index:1000}.language-dropdown select{background:#fff;border:1px solid #d1d5db;border-radius:10px;box-shadow:0 4px 10px #00000014;cursor:pointer;font-size:14px;font-weight:600;outline:none;padding:8px 14px}.language-dropdown select:focus{border-color:#2563eb}@media (max-height:850px){.heading{font-size:38px}.subtitle{font-size:20px;margin-bottom:18px}.input-box{font-size:17px;height:52px}.login-btn{font-size:18px;height:52px}.powered-by img{height:170px;width:210px}}@media (max-height:760px){.login-content{gap:10px}.heading{font-size:34px}.subtitle{font-size:18px;margin-bottom:12px}.input-box,.login-btn{height:48px}.powered-by img{height:140px;width:180px}}.sidebar{background:linear-gradient(180deg,#ffffff0f,#fff0 86px),repeating-linear-gradient(0deg,#ffffff08,#ffffff08 1px,#fff0 0,#fff0 6px),linear-gradient(180deg,#233f87,#1b3577 48%,#18316f);color:#fff;display:flex;flex:0 0 260px;flex-direction:column;height:100vh;justify-content:flex-start;left:0;position:fixed;top:0;width:260px;z-index:100}.logo{border-bottom:1px solid #adcaff47;color:#eef5ff;font-family:Avenir Next,Segoe UI,Trebuchet MS,Gill Sans,Century Gothic,sans-serif;font-size:30px;font-weight:800;letter-spacing:.2px;line-height:1.05;margin:0;padding:22px 24px 18px;text-shadow:0 10px 20px #0d1d4959}.logo-accent{background:linear-gradient(180deg,#cba8ff,#a889ef);-webkit-background-clip:text;background-clip:text;color:#0000}.logo.logo-brand{font-weight:800;letter-spacing:.2px}.logo.logo-brand .logo-accent{background:linear-gradient(180deg,#d1b2ff,#aa8df2);-webkit-background-clip:text;background-clip:text;color:#0000}.logo.logo-corporate{color:#f1f6ff;font-weight:700;letter-spacing:.15px}.logo.logo-corporate .logo-accent{background:none;-webkit-background-clip:initial;background-clip:initial;color:#f1f6ff}.sidebar ul{border-bottom:1px solid #adcaff33;margin:12px 0 0;padding:0 0 10px}.sidebar li,.sidebar ul{list-style:none}.nav-item{align-items:center;border-bottom:1px solid #0a153133;border-top:1px solid hsla(0,0%,100%,.035);box-sizing:border-box;color:#eef6fff0;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:13px;padding:12px 24px;text-decoration:none;transition:background .18s ease,box-shadow .18s ease;width:100%}.nav-item svg{stroke-width:2.2;height:17px;opacity:.95;width:17px}.nav-item:hover{background:#6a9aff29}.nav-item.active{background:linear-gradient(180deg,#628bf970,#4974e46b);border-left:6px solid #84aaff;box-shadow:inset 0 1px 0 #dde9ff38,inset 0 -1px 0 #13307057;color:#fff;padding-left:18px}.logout{align-items:center;background:linear-gradient(180deg,#ba4a7f,#983564);border:1px solid #ffffff2e;border-radius:999px;box-shadow:0 10px 20px #1a163d47;color:#f7fbff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:10px;margin:auto 18px 18px;padding:9px 14px 9px 10px;text-align:left;width:fit-content}.logout svg{stroke-width:2.2;background:radial-gradient(circle at 30% 30%,#fff 0,#dbe7ff 100%);border-radius:50%;box-shadow:inset 0 0 0 1px #7b2f571f;color:#7b2f57;height:17px;padding:3px;width:17px}.logout:hover{filter:brightness(1.06)}.logout-modal{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#24384f52;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.logout-box{background:linear-gradient(180deg,#d8edf4,#b7dce8);border:1px solid #ffffff8c;border-radius:18px;box-shadow:0 24px 54px #0f172a3d;padding:26px;text-align:center;width:320px}.logout-box h3{color:#1d4670;font-size:24px;letter-spacing:.2px;margin:0 0 10px}.logout-box p{color:#2e597f;font-size:15px;font-weight:600;line-height:1.5;margin:0}.logout-actions{display:flex;gap:12px;justify-content:center;margin-top:16px}.logout-actions button{border:none;border-radius:10px;cursor:pointer;font-weight:700;min-width:100px;padding:10px 18px;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.logout-actions button:hover{transform:translateY(-1px)}.logout-actions button:first-child{background:linear-gradient(135deg,#2f6fda,#4f9bf5);box-shadow:0 10px 20px #2f6fda3d;color:#fff}.logout-actions button:last-child{background:#ffffffd9;border:1px solid #4068932e;box-shadow:0 8px 18px #28476c1a;color:#28476c}.header{background:#f6f7fb;border-bottom:1px solid #e6e9f0;box-sizing:border-box;height:var(--app-header-height);justify-content:space-between;left:var(--app-sidebar-width);padding:0 18px;position:fixed;right:0;top:0;width:auto;z-index:1500}.header,.header-left{align-items:center;display:flex}.header-left{color:#2f3a4f;gap:14px}.header-left h2{color:#2f3a4f;font-size:14px;font-weight:600;margin:0}.header-title{color:#2f3a4f;font-size:18px;font-weight:700;margin:0}.header-right{align-items:center;display:flex;gap:20px}.header-notification-wrap,.header-right{position:relative}.header-bell-button{align-items:center;background:#0000;border:none;border-radius:50%;color:#2f3a4f;cursor:pointer;display:flex;height:34px;justify-content:center;position:relative;width:34px}.header-bell-button:hover{background:#2d4b6b14}.header-notification-badge{align-items:center;background:#e74c3c;border-radius:999px;color:#fff;display:flex;font-size:10px;font-weight:700;height:18px;justify-content:center;min-width:18px;padding:0 4px;position:absolute;right:-4px;top:-4px}.header-notification-panel{background:#fff;border:1px solid #dbe5f0;border-radius:14px;box-shadow:0 20px 40px #0f172a29;max-height:360px;overflow:auto;position:absolute;right:0;top:42px;width:320px;z-index:30}.header-notification-header{align-items:center;background:#f8fbff;border-bottom:1px solid #edf0f5;color:#24384f;display:flex;justify-content:space-between;padding:12px 14px}.header-notification-actions{align-items:center;display:flex;gap:8px}.header-notification-clear{background:#e8f0fb;border:none;border-radius:8px;color:#285b96;cursor:pointer;font-size:11px;font-weight:700;padding:6px 10px}.header-notification-panel-close{align-items:center;background:#24384f14;border:none;border-radius:999px;color:#4b5f77;cursor:pointer;display:inline-flex;height:20px;justify-content:center;padding:0;width:20px}.header-notification-panel-close:hover{background:#24384f29}.header-notification-list{display:grid}.header-notification-item{grid-gap:4px;border-bottom:1px solid #edf0f5;display:grid;gap:4px;padding:12px 14px;position:relative}.header-notification-close{align-items:center;background:#24384f14;border:none;border-radius:999px;color:#4b5f77;cursor:pointer;display:inline-flex;height:18px;justify-content:center;padding:0;position:absolute;right:8px;top:8px;width:18px}.header-notification-close:hover{background:#e74c3c1f;color:#c0392b}.header-notification-item strong{color:#24384f;font-size:13px}.header-notification-item span{color:#4b5f77;font-size:12px}.header-notification-item small{color:#7b8798;font-size:10px}.header-notification-item.unread{background:#f4f9ff}.header-notification-empty{color:#5a677a;font-size:12px;padding:18px 14px}.profile-badge{align-items:center;background:#2d4b6b;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:700;height:32px;justify-content:center;overflow:hidden;padding:0;width:32px}.profile-badge:disabled{cursor:default;opacity:.85}.profile-badge img{height:100%;object-fit:cover;width:100%}.admin-button{align-items:center;background:#4c79d8;border:none;border-radius:10px;box-shadow:0 6px 12px #4c79d84d;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:10px 16px}.dashboard-layout{display:flex;height:100vh;overflow:hidden;width:100%}.main-content{background:#98cddd;flex:1 1;height:100vh;margin-left:260px;min-width:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;width:calc(100% - 260px)}.content-wrap{grid-gap:6px;display:grid;gap:6px;grid-template-rows:auto minmax(0,1fr) minmax(0,.68fr);height:calc(100vh - 72px);min-height:calc(100vh - 72px);overflow:hidden;padding:8px}.stat-cards{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card{align-items:center;border-radius:10px;box-shadow:0 8px 18px #0000001f;color:#fff;display:flex;gap:10px;min-height:84px;padding:12px 14px}.stat-card p{font-size:13px;font-weight:600;letter-spacing:.1px;margin:0}.stat-card h3{font-size:21px;margin:4px 0 0}.stat-icon{align-items:center;background:#ffffff2e;border-radius:10px;display:flex;flex-shrink:0;height:46px;justify-content:center;width:46px}.blue{background:linear-gradient(135deg,#2f6fda,#4f9bf5)}.green{background:linear-gradient(135deg,#2f9c70,#45c193)}.orange{background:linear-gradient(135deg,#f07b2d,#ff9b50)}.purple{background:linear-gradient(135deg,#6d4bd8,#8f6bf0)}.grid-two{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));min-height:0}.panel{background:#fff;border-radius:10px;box-shadow:0 10px 20px #10182814;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.live-tracking-panel{cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.live-tracking-panel:hover{box-shadow:0 14px 28px #1018281f;transform:translateY(-2px)}.panel-header{background:#fafbff;border-bottom:1px solid #e5e7ef;color:#2f3a4f;font-size:12px;font-weight:700;padding:7px 10px}.patrol-table td,.patrol-table th{border-bottom:1px solid #edf0f5;color:#2f3a4f;font-size:10px;overflow:hidden;padding:5px 8px;text-align:left;text-overflow:ellipsis;vertical-align:middle}.patrol-table th{color:#5a677a}.status{border-radius:999px;color:#fff;display:inline-block;font-size:11px;font-weight:700;padding:5px 10px}.status.completed{background:#30a46c}.status.progress{background:#f39c12}.map-card{display:flex;flex:1 1;flex-direction:column;min-height:0}.map{background-color:#e9edf4;background-image:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 width=%27400%27 height=%27240%27 viewBox=%270 0 400 240%27><rect width=%27400%27 height=%27240%27 fill=%27%23eef2f7%27/><g stroke=%27%23d6dde8%27 stroke-width=%272%27><path d=%27M10 30 H390%27/><path d=%27M0 80 H400%27/><path d=%27M20 140 H380%27/><path d=%27M10 200 H390%27/><path d=%27M60 0 V240%27/><path d=%27M150 0 V240%27/><path d=%27M250 0 V240%27/><path d=%27M330 0 V240%27/></g><g stroke=%27%23cbd5e1%27 stroke-width=%273%27><path d=%27M0 120 L400 40%27/><path d=%27M0 200 L400 110%27/></g></svg>");background-size:cover;flex:1 1;min-height:84px;overflow:hidden;position:relative}.dashboard-map-frame{border:0;display:block;height:100%;width:100%}.dashboard-map-overlay{inset:0;pointer-events:none;position:absolute}.map-pin{align-items:center;background:#fff;border-radius:50%;box-shadow:0 10px 18px #0003;color:#e74c3c;display:flex;height:32px;justify-content:center;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:32px}.live-guard-pin{background:linear-gradient(135deg,#2f6fda,#4f9bf5);box-shadow:0 10px 18px #2f6fda47;color:#fff;cursor:pointer;height:28px;pointer-events:auto;width:28px}.dashboard-live-guard-popup{grid-gap:4px;background:#fffffff2;border-radius:12px;box-shadow:0 16px 28px #0f172a2e;color:#24384f;display:grid;gap:4px;max-width:200px;min-width:160px;padding:8px 10px;pointer-events:auto;position:absolute;right:10px;top:10px;z-index:3}.dashboard-live-guard-popup strong{font-size:13px}.dashboard-live-guard-popup span{color:#42546a;font-size:11px}.dashboard-live-guard-popup small{color:#6b7280;font-size:10px}.dashboard-live-guard-close{background:#eef3fb;border:none;border-radius:50%;color:#42546a;cursor:pointer;height:22px;position:absolute;right:6px;top:6px;width:22px}.map-footer{border-top:1px solid #edf0f5;color:#4c5567;font-size:11px;padding:6px 8px}.live-map-footer{grid-gap:6px;display:grid;gap:6px;overflow:hidden;padding:8px 10px}.live-map-empty{color:#6b7280;font-size:12px;font-weight:600}.live-guard-list{grid-gap:6px;display:grid;gap:6px;min-height:0}.live-guard-list-header{border-top:1px solid #dbe5f0;color:#000;font-weight:800;letter-spacing:.03em}.live-guard-list-header,.live-guard-row{display:flex;font-size:11px;gap:10px;justify-content:space-between;padding-top:6px}.live-guard-row{border-top:1px solid #edf0f5;color:#42546a}.live-guard-row strong{color:#24384f}.live-guard-row span{color:#52657d;text-align:right}.map-footer span{color:#c0c6d4;margin:0 8px}.attendance-list{flex:1 1;padding:0 10px 6px}.attendance-row{border-bottom:1px solid #edf0f5;color:#4c5567;display:flex;font-size:11px;font-weight:600;justify-content:space-between;padding:6px 0}.attendance-row:last-child{border-bottom:none}.incident-list{display:flex;flex:1 1;flex-direction:column;gap:5px;overflow:hidden;padding:6px 8px 8px}.incident-item{background:#fff;border:1px solid #edf0f5;border-radius:10px;color:#2f3a4f;gap:7px;padding:6px}.incident-icon,.incident-item{align-items:center;display:flex}.incident-icon{background:#fce8e6;border-radius:50%;color:#e74c3c;flex-shrink:0;height:22px;justify-content:center;width:22px}.incident-info{display:flex;flex-direction:column;font-size:11px;gap:2px}.incident-info span{color:#6b7280}.incident-time{color:#6b7280;font-size:10px;margin-left:auto;white-space:nowrap}@media (max-width:1100px){.content-wrap,.dashboard-layout,.main-content{height:auto;overflow:visible}.stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-two{grid-template-columns:1fr}}@media (max-width:700px){.content-wrap{padding:12px}.stat-cards{grid-template-columns:1fr}}.guards-page{grid-gap:18px;display:grid;gap:18px;padding:14px}.guards-header{align-items:center;display:flex;justify-content:space-between}.guards-header h2{color:#2f3a4f;margin:0}.guards-table-card{background:#edefff6b;border:1px solid #c2c7f3b8;border-radius:16px;box-shadow:0 18px 35px #5c62a81f;margin-top:18px;overflow-x:auto;overflow-y:hidden}.guards-table-header{background:#ced2f861;border-bottom:1px solid #c5cbf58c;padding:12px 18px}.guards-table-header h3{color:#42507b;font-size:18px;margin:0}.guards-table-message{color:#50607f;font-weight:600;padding:18px;text-align:center}.guards-table-message.error{color:#b42318}.guards-table-message.success{color:#1f7a38}.guards-table{border-collapse:collapse;width:100%}.guards-table td,.guards-table th{border-bottom:1px solid #c5cbf58c;color:#2c385d;font-size:13px;padding:12px 14px;text-align:left;vertical-align:middle}.guards-table th{background:#ced2f838;color:#42507b;font-weight:700}.guards-table tbody tr:nth-child(2n){background:#ffffff38}.guards-table tbody tr:hover{background:#ffffff52}.guards-employee-cell{align-items:center;display:flex;gap:12px;min-width:220px}.guards-avatar{align-items:center;background:linear-gradient(180deg,#314b72,#20324d);border:3px solid #ffffffe6;border-radius:50%;box-shadow:0 10px 18px #434f7e2e;color:#fff;display:flex;flex-shrink:0;font-weight:700;height:40px;justify-content:center;width:40px}.guards-employee-meta{grid-gap:3px;display:grid;gap:3px}.guards-name-link{background:#0000;border:none;color:#2458ad;cursor:pointer;font-size:16px;font-weight:600;padding:0;text-align:left}.guards-name-link:hover{text-decoration:underline}.guards-employee-meta small{color:#6d7897;font-size:12px}.guards-empty{color:#6b7280;padding:20px 12px;text-align:center}.guards-pagination{background:#0000;display:flex;gap:8px;justify-content:center;padding:0 0 10px}.guards-pagination button{background:#f0f2ff99;border:1px solid #bcc2eeb8;border-radius:10px;color:#435173;cursor:pointer;height:34px;min-width:34px}.guards-pagination button.active{background:#ffffffb8;border-color:#bcc2eeb8;color:#2c385d;font-weight:700}.guards-pagination button:disabled{cursor:not-allowed;opacity:.5}.action-buttons{align-items:center;display:flex;flex-wrap:nowrap;gap:8px;white-space:nowrap}.action-btn{border-radius:14px;font-size:11px;justify-content:center;padding:6px 8px;white-space:nowrap}.action-btn:disabled{cursor:not-allowed;opacity:.6}.action-btn.view{background:#e8f0ff;color:#1f5fbf}.action-btn.edit{background:#fff3d6;color:#b26a00}.action-btn.delete{background:#ffe3e3;color:#b42318}.action-btn.delete.hard{background:#ffd0d0;color:#8f1111}.primary-btn{background:#3e7bbb;border:none;border-radius:10px;box-shadow:0 6px 12px #3e7bbb40;color:#fff}.primary-btn,.secondary-btn{cursor:pointer;font-weight:600;padding:10px 18px}.secondary-btn{background:#eef2f7;border:1px solid #d9dee8;border-radius:10px;color:#2f3a4f}.modal-overlay{align-items:center;background:#222e4159;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:50}.modal-card{background:radial-gradient(circle at top right,#ffffff52,#0000 26%),linear-gradient(180deg,#98cdddfa,#8fc5d6f5);border:1px solid #74a7b799;border-radius:16px;box-shadow:0 20px 40px #10182833;width:min(860px,96vw)}.modal-header{align-items:center;background:#ffffff1f;border-bottom:1px solid #6c9aaa57;border-top-left-radius:16px;border-top-right-radius:16px;display:flex;justify-content:space-between;padding:18px 22px}.modal-header h3{color:#17354f;margin:0}.icon-btn{background:#ffffff94;border:none;border-radius:50%;color:#24405d;display:flex;height:32px;width:32px}.modal-body{grid-gap:22px;display:grid;gap:22px;grid-template-columns:180px 1fr;padding:22px}.profile-column{align-items:center;display:flex;flex-direction:column;gap:14px}.profile-preview{align-items:center;background:linear-gradient(180deg,#ffffffe0,#dbecf5d6);border:6px solid #ffffffc2;border-radius:50%;box-shadow:0 10px 20px #1018281f;color:#46637d;display:flex;height:140px;justify-content:center;width:140px}.upload-btn{background:#ffffffc2;border:1px solid #76a0b075;border-radius:10px;color:#27445f;cursor:pointer;font-size:14px;font-weight:600;padding:8px 14px}.upload-btn input{display:none}.form-grid{grid-gap:14px 18px;display:grid;gap:14px 18px;grid-template-columns:repeat(2,minmax(0,1fr))}.guard-info-view{grid-gap:14px;display:grid;gap:14px}.guard-info-tabs-card{border-bottom:1px solid #89aec057;padding:0 0 14px}.guard-info-shell{grid-gap:14px;background:#ffffff5c;border:1px solid #89aec061;border-radius:16px;box-shadow:inset 0 1px 0 #ffffff47;display:grid;gap:14px;padding:16px}.guard-info-tabs{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.guard-info-tabs button{background:#ffffff80;border:none;border-radius:10px;color:#28455f;cursor:pointer;font-size:12px;font-weight:700;min-height:36px}.guard-info-tabs button.active{background:linear-gradient(180deg,#316ecb,#2458ad);box-shadow:0 10px 18px #3560a72e;color:#fff}.guard-info-tabs button:first-child.active{background:linear-gradient(180deg,#2d8f73,#23715b)}.guard-info-tabs button:nth-child(2).active{background:linear-gradient(180deg,#d88a2d,#b96c13)}.guard-info-tabs button:nth-child(3).active{background:linear-gradient(180deg,#8c5fd3,#6d42b3)}.guard-info-tabs button:nth-child(4).active{background:linear-gradient(180deg,#2f6fda,#2458ad)}.guard-info-panel{background:#ffffff6b;border:1px solid #83abbd61;border-radius:14px;min-height:280px;padding:16px}.guard-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.guard-info-item{grid-gap:4px;background:#ffffff94;border-radius:12px;display:grid;gap:4px;padding:12px}.guard-info-grid.patrolling .guard-info-item{background:linear-gradient(180deg,#e7f7eff5,#dbefe3eb)}.guard-info-grid.shifts .guard-info-item{background:linear-gradient(180deg,#fff5e7f5,#f8ecd7eb)}.guard-info-grid.live-location .guard-info-item{background:linear-gradient(180deg,#eaf6fff5,#dcecf8eb)}.guard-info-item.full{grid-column:1/-1}.guard-info-item strong{color:#25415b;font-size:12px}.guard-info-item span{color:#1c3348;font-size:13px}.guard-info-stack{grid-gap:10px;display:grid;gap:10px}.guard-info-record{grid-gap:4px;background:#ffffff94;border-radius:12px;display:grid;gap:4px;padding:12px}.guard-info-stack.attendance .guard-info-record{background:linear-gradient(180deg,#f6effff5,#e9e2f9eb)}.guard-info-stack.shifts .guard-info-record{background:linear-gradient(180deg,#fff5e7f5,#f8ecd7eb)}.guard-info-record strong{color:#2458ad;font-size:13px}.guard-info-empty,.guard-info-record span{color:#36546f;font-size:13px}.guard-info-empty{align-items:center;display:flex;font-weight:600;justify-content:center;min-height:220px;text-align:center}.field{display:flex;flex-direction:column;gap:6px}.field label{color:#24405d;font-size:13px;font-weight:600}.field input,.field select{background:#ffffffd1;border:1px solid #76a0b075;border-radius:10px;color:#1f3047;height:40px;outline:none;padding:0 12px}.field:nth-child(4n+1) input,.field:nth-child(4n+1) select{background:linear-gradient(180deg,#eaf6fff5,#dcecf8e6)}.field:nth-child(4n+2) input,.field:nth-child(4n+2) select{background:linear-gradient(180deg,#ebf8eff5,#ddefe3e6)}.field:nth-child(4n+3) input,.field:nth-child(4n+3) select{background:linear-gradient(180deg,#fff5e7f5,#f8ecd7e6)}.field:nth-child(4n+4) input,.field:nth-child(4n+4) select{background:linear-gradient(180deg,#f6effff5,#e9e2f9e6)}.field input:focus,.field select:focus{border-color:#316ecbb3;box-shadow:0 0 0 3px #316ecb1f}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 22px 22px}.submit-message{color:#1f3b55;font-weight:600;padding:0 22px 18px}.guard-action-modal{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#24384f52;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:2600}.guard-action-box{background:linear-gradient(180deg,#d8edf4,#b7dce8);border:1px solid #ffffff8c;border-radius:18px;box-shadow:0 24px 54px #0f172a3d;padding:26px;text-align:center;width:min(92vw,360px)}.guard-action-box h3{color:#1d4670;font-size:24px;font-weight:700;letter-spacing:.2px;margin:0 0 10px}.guard-action-box p{color:#2e597f;font-size:15px;font-weight:600;line-height:1.5;margin:0}.guard-action-buttons{display:flex;gap:12px;justify-content:center;margin-top:16px}.guard-action-buttons button{border:none;border-radius:10px;cursor:pointer;font-weight:700;min-width:100px;padding:10px 18px;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.guard-action-buttons button:first-child{background:linear-gradient(135deg,#2f6fda,#4f9bf5);box-shadow:0 10px 20px #2f6fda3d;color:#fff}.guard-action-buttons button:last-child{background:#ffffffd9;border:1px solid #4068932e;box-shadow:0 8px 18px #28476c1a;color:#28476c}.guard-action-buttons button:hover{transform:translateY(-1px)}@media (max-width:800px){.form-grid,.guard-info-grid,.guard-info-tabs,.modal-body{grid-template-columns:1fr}}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{left:0;position:absolute;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.leaflet-tile::selection{background:#0000}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{height:1600px;-webkit-transform-origin:0 0;width:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-height:none!important;max-width:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-height:none!important;max-width:none!important;padding:0;width:auto}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;height:0;width:0;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{height:1px;width:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{pointer-events:visiblePainted;pointer-events:auto;position:relative;z-index:800}.leaflet-bottom,.leaflet-top{pointer-events:none;position:absolute;z-index:1000}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{clear:both;float:left}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;color:#000;display:block;height:26px;line-height:26px;text-align:center;text-decoration:none;width:26px}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.leaflet-bar a.leaflet-disabled{background-color:#f4f4f4;color:#bbb;cursor:default}.leaflet-touch .leaflet-bar a{height:30px;line-height:30px;width:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);height:36px;width:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{height:44px;width:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{background:#fff;color:#333;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{overflow-x:hidden;overflow-y:scroll;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;line-height:1.4;padding:0 5px}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;height:.6669em;vertical-align:initial!important;width:1em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{background:#fffc;border:2px solid #777;border-top:none;box-sizing:border-box;line-height:1.1;padding:2px 5px 1px;text-shadow:1px 1px #fff;white-space:nowrap}.leaflet-control-scale-line:not(:first-child){border-bottom:none;border-top:2px solid #777;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{margin-bottom:20px;position:absolute;text-align:center}.leaflet-popup-content-wrapper{border-radius:12px;padding:1px;text-align:left}.leaflet-popup-content{font-size:13px;font-size:1.08333em;line-height:1.3;margin:13px 24px 13px 20px;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{height:20px;left:50%;margin-left:-20px;margin-top:-1px;overflow:hidden;pointer-events:none;position:absolute;width:40px}.leaflet-popup-tip{height:17px;margin:-10px auto 0;padding:1px;pointer-events:auto;transform:rotate(45deg);width:17px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;box-shadow:0 3px 14px #0006;color:#333}.leaflet-container a.leaflet-popup-close-button{background:#0000;border:none;color:#757575;font:16px/24px Tahoma,Verdana,sans-serif;height:24px;position:absolute;right:0;text-align:center;text-decoration:none;top:0;width:24px}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678);margin:0 auto;width:24px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{background-color:#fff;border:1px solid #fff;border-radius:3px;box-shadow:0 1px 3px #0006;color:#222;padding:6px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;white-space:nowrap}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{background:#0000;border:6px solid #0000;content:"";pointer-events:none;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{border-top-color:#fff;bottom:0;margin-bottom:-12px}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-left:-6px;margin-top:-12px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;left:0;margin-left:-12px}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.layout{display:flex}.content,.layout{background:#98cddd;min-height:100vh}.content{box-sizing:border-box;flex:1 1;margin-left:260px;overflow-y:auto;padding:0;width:calc(100% - 260px)}.page-body{padding:20px}.topbar{justify-content:space-between}.filters,.topbar{display:flex;margin-bottom:20px}.filters{align-items:center;gap:10px}.filter-input{background:#fff;border:1px solid #d9dee8;border-radius:8px;height:40px;padding:0 12px}.filter-btn{background:#4c8fe2}.export-btn,.filter-btn{border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 18px}.export-btn{background:#48b12a;margin-left:auto}.search-row{margin-bottom:18px}.search-box{max-width:520px;position:relative;width:100%}.search-input{background:#fff;border:1px solid #d9dee8;border-radius:8px;box-sizing:border-box;height:40px;padding:0 38px 0 12px;width:100%}.search-icon{color:#6b7280;font-size:16px;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.cards{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}.card{align-items:flex-start;border:none;border-radius:10px;box-shadow:0 10px 20px #00000026;color:#fff;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-weight:700;gap:6px;justify-content:center;min-height:64px;padding:18px;text-align:left;transition:transform .16s ease,filter .16s ease}.card:hover{filter:brightness(1.04);transform:translateY(-1px)}.card-label{font-size:15px;line-height:1.2;white-space:nowrap}.card-value{font-size:22px;line-height:1}.blue{background:linear-gradient(180deg,#1e63f1,#174cc2)}.red{background:#ff3b30}.yellow{background:linear-gradient(180deg,#f2b13f,#d18a10)}.orange{background:linear-gradient(180deg,#f5802a,#cf5811)}.slate{background:linear-gradient(180deg,#4a5f82,#30435f)}.table-header{align-items:center;background:#fff;border:1px solid #eee;border-bottom:none;border-radius:10px 10px 0 0;display:flex;justify-content:space-between;padding:12px 16px}.table-header h3{color:#2f3a4f;font-size:18px;margin:0}.latest-select{align-items:center;color:#4b5871;display:flex;font-weight:600;gap:10px}.latest-select select{background:#fff;border:1px solid #d9dee8;border-radius:6px;font-size:12px;height:30px;padding:0 8px}.patrol-table{background:#fff;border:1px solid #eee;border-collapse:collapse;border-top:none;table-layout:fixed;width:100%}.patrol-table td,.patrol-table th{border-bottom:1px solid #eee;font-size:13px;padding:10px 12px}.patrol-table th{color:#4b5871;font-size:13px;font-weight:700;letter-spacing:.1px;text-align:left}.patrol-table td{color:#22364d;font-weight:600;word-break:break-word}.patrol-table button{background:#4c8fe2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:700;padding:5px 10px}.pagination{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.pagination button{background:#fff;border:1px solid #d9dee8;border-radius:6px;cursor:pointer;height:34px;min-width:34px}.pagination button.active{background:#4c8fe2;border-color:#4c8fe2;color:#fff}.patrol-modal{align-items:center;background:#09101873;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:3000}.patrol-modal-card{background:#f7f9ff;border:1px solid #e6e9f0;border-radius:16px;box-shadow:0 20px 40px #10182833;overflow:hidden;width:min(720px,96vw)}.patrol-modal-header{align-items:center;background:#fff;border-bottom:1px solid #e9edf4;display:flex;justify-content:space-between;padding:14px 18px}.patrol-modal-header h3{color:#2f3a4f;margin:0}.patrol-map{background-color:#e9edf4;background-image:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 width=%27720%27 height=%27220%27 viewBox=%270 0 720 220%27><rect width=%27720%27 height=%27220%27 fill=%27%23eef2f7%27/><g stroke=%27%23d6dde8%27 stroke-width=%272%27><path d=%27M10 30 H710%27/><path d=%27M0 80 H720%27/><path d=%27M20 140 H700%27/><path d=%27M10 200 H710%27/><path d=%27M80 0 V220%27/><path d=%27M220 0 V220%27/><path d=%27M360 0 V220%27/><path d=%27M520 0 V220%27/></g><g stroke=%27%23cbd5e1%27 stroke-width=%273%27><path d=%27M0 120 L720 40%27/><path d=%27M0 200 L720 110%27/></g></svg>");background-size:cover;height:220px;position:relative}.patrol-map-pin{background:#2563eb;border-radius:50%;box-shadow:0 0 0 6px #2563eb33;height:18px;left:330px;position:absolute;top:90px;width:18px}.patrol-info{padding:16px 18px 8px}.patrol-title{color:#1f2937;font-size:18px;font-weight:700}.patrol-subtitle{color:#6b7280;font-size:14px;margin-top:4px}.patrol-route{color:#2f3a4f;font-size:14px;margin-top:8px}.patrol-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 18px 18px}.patrol-stats div{background:#fff;border:1px solid #e6e9f0;border-radius:10px;color:#2f3a4f;display:flex;flex-direction:column;font-weight:600;gap:6px;padding:10px 12px}.patrol-stats span{color:#6b7280;font-size:12px;font-weight:600}.trip-modal-overlay{align-items:flex-start;background:#00000059;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:96px 24px 24px;position:fixed;z-index:2000}.trip-modal-card{background:#dff4ff;border-radius:22px;box-shadow:0 14px 35px #0000002e;display:flex;flex-direction:column;max-height:calc(100vh - 120px);overflow:hidden;width:min(920px,92vw)}.trip-header{align-items:center;background:#b9e6ff;display:flex;gap:12px;padding:18px 22px}.trip-header h3{color:#003566;font-size:18px;margin:0}.close-btn{background:none;border:none;color:#003566;cursor:pointer}.trip-map{background:#eef5fb;height:340px;overflow:hidden;position:relative}.trip-leaflet-map{height:100%;width:100%;z-index:1}.trip-map .leaflet-container{background:#eef5fb;height:100%;width:100%}.trip-map .leaflet-tooltip{border:none;border-radius:10px;box-shadow:0 10px 24px #0035662e;color:#003566;font-weight:700}.trip-details{overflow-y:auto;padding:22px}.trip-name-row{align-items:start;display:flex;gap:16px;justify-content:space-between}.trip-name-row h4{color:#003566;margin:0}.trip-name-row p{color:#4d6a7f;margin:4px 0}.trip-name-row span{color:#4d6a7f;font-size:13px}.trip-image-viewer{display:flex;flex-shrink:0;width:auto}.trip-image-trigger{align-items:center;background:#38bdf8;border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;height:42px;justify-content:center;padding:0;transition:transform .2s ease,box-shadow .2s ease;width:42px}.trip-image-trigger:hover{box-shadow:0 12px 24px #38bdf859;transform:translateY(-1px)}.trip-image-frame{background:#ffffffa6;border-radius:16px;box-shadow:0 10px 24px #0035661f;height:100%;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;width:100%}.trip-image-open-button{background:#0000;border:none;cursor:zoom-in;height:100%;padding:0;width:100%}.trip-image-preview{background:linear-gradient(135deg,#eff7ff,#dbeafe);display:block;height:100%;object-fit:contain;width:100%}.trip-image-preview-clickable{transition:transform .2s ease}.trip-image-open-button:hover .trip-image-preview-clickable{transform:scale(1.02)}.trip-image-empty{box-sizing:border-box;color:#33556f;font-weight:600;height:100%;padding:16px;text-align:center;width:100%}.trip-image-empty,.trip-image-modal-overlay{align-items:center;display:flex;justify-content:center}.trip-image-modal-overlay{background:#0000008c;inset:0;padding:24px;position:fixed;z-index:2200}.trip-image-modal-card{background:#dff4ff;border-radius:22px;box-shadow:0 18px 40px #0003;max-height:min(84vh,680px);overflow:hidden;width:min(760px,90vw)}.trip-image-modal-header{align-items:center;background:#b9e6ff;display:flex;gap:12px;justify-content:space-between;padding:18px 22px}.trip-image-modal-header h3{color:#003566;font-size:18px;margin:0}.trip-image-modal-body{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;padding:16px 18px}.trip-image-nav{align-items:center;background:#0ea5e9;border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;height:42px;justify-content:center;transition:transform .2s ease,box-shadow .2s ease;width:42px}.trip-image-nav:hover:not(:disabled){box-shadow:0 12px 24px #0ea5e947;transform:translateY(-1px)}.trip-image-modal-frame{align-items:center;background:linear-gradient(135deg,#fffffff5,#e2f4ffe0);border-radius:18px;box-shadow:0 10px 24px #0035661f;display:flex;justify-content:center;max-height:420px;min-height:300px;overflow:hidden;width:100%}.trip-image-count{color:#33556f;font-size:13px;font-weight:700}.trip-image-modal-footer{display:flex;flex-wrap:wrap;gap:10px 16px;justify-content:center;padding:0 16px 14px}.trip-image-meta{color:#33556f;font-size:13px;font-weight:600}.trip-image-empty-state,.trip-image-loading-state{align-items:center;background:#ffffffd1;border-radius:18px;color:#003566;display:flex;flex-direction:column;font-weight:600;gap:14px;justify-content:center;max-height:420px;min-height:250px;padding:24px;text-align:center}.trip-image-progress-circle{box-shadow:0 14px 28px #0ea5e92e;height:92px;padding:7px;transition:background .18s ease;width:92px}.trip-image-progress-circle,.trip-image-progress-circle-inner{align-items:center;border-radius:50%;display:flex;justify-content:center}.trip-image-progress-circle-inner{background:#fff;color:#003566;height:100%;width:100%}.trip-image-progress-circle-inner strong{font-size:18px;line-height:1}.trip-image-zoom-overlay{align-items:center;background:#000000b8;display:flex;inset:0;justify-content:center;padding:28px;position:fixed;z-index:2300}.trip-image-zoom-card{background:#ebf8fffa;border-radius:24px;box-shadow:0 24px 60px #00000047;max-height:90vh;padding:18px;position:relative;width:min(980px,94vw)}.trip-image-zoom-card .close-btn{position:absolute;right:14px;top:14px;z-index:1}.trip-image-zoom-preview{background:linear-gradient(135deg,#eff7ff,#dbeafe);border-radius:18px;display:block;max-height:calc(90vh - 36px);object-fit:contain;width:100%}.trip-image-nav:disabled{cursor:not-allowed;opacity:.45}.route-section{display:flex;gap:14px;margin-top:22px}.route-marker{align-items:center;display:flex;flex-direction:column}.circle{border-radius:50%;height:10px;width:10px}.start{background:#00b4d8}.end{background:#ff6b6b}.line{background:#90caf9;height:48px;margin:4px 0;width:2px}.route-addresses{flex:1 1}.address{color:#003566;font-size:15px}.second{margin-top:30px}.trip-stats-box{background:#fff;border-radius:14px;margin-top:24px;padding:18px}.trip-stats-box h4{color:#003566;margin-bottom:14px}.stat-row{display:flex;justify-content:space-between;margin-bottom:12px}.stat-row span{color:#4d6a7f}.stat-row strong{color:#003566}@media (max-width:768px){.trip-modal-card{max-height:92vh;width:100%}.trip-map{height:260px}.trip-details{padding:18px}.trip-name-row{flex-direction:column}.trip-image-viewer{width:auto}.trip-image-modal-frame{max-height:300px;min-height:220px}.trip-image-modal-body{grid-template-columns:1fr}.trip-image-zoom-card{padding:14px}}.elt-layout{background:#98cddd;display:flex;min-height:100vh}.elt-main{background:radial-gradient(circle at top right,#ffffff4d,#0000 30%),linear-gradient(180deg,#98cddd,#8fc5d6);flex:1 1;margin-left:260px;min-height:100vh;min-width:0;overflow-y:auto}.elt-body{grid-gap:0;display:grid;gap:0;grid-template-rows:1fr;min-height:calc(100vh - 72px);padding:10px}.elt-bottom-grid,.elt-map-panel,.elt-stats-strip,.elt-toolbar{width:100%}.elt-toolbar{background:#ffffffb8;border:1px solid #a2b5d347;border-radius:12px;box-shadow:0 12px 24px #5d708e1f;display:none;justify-content:space-between;padding:8px 10px}.elt-filter,.elt-toolbar{align-items:center;gap:10px}.elt-filter{color:#384861;display:flex;font-size:13px}.elt-action-row .action,.elt-export-btn,.elt-guard-item,.elt-issue-action,.elt-locate-btn,.elt-map-controls button,.elt-select-btn{border:none;cursor:pointer}.elt-select-btn{background:linear-gradient(180deg,#fff,#f0f3f9);border:1px solid #cfd7e6;border-radius:10px;box-shadow:inset 0 1px 0 #ffffffd9;color:#334155;justify-content:space-between;min-width:180px;padding:0 12px 0 14px}.elt-export-btn,.elt-select-btn{align-items:center;display:inline-flex;height:34px}.elt-export-btn{background:linear-gradient(180deg,#3ba88d,#2e8c77);border-radius:10px;box-shadow:0 10px 18px #2e8c7747;color:#fff;gap:8px;padding:0 14px}.elt-map-panel{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr;height:100%;min-height:0}.elt-guard-list,.elt-issue-card,.elt-map-stage,.elt-stats-strip,.elt-timeline-card{background:#ffffffbd;border:1px solid #b3c2dd4d;box-shadow:0 12px 30px #5f759524}.elt-guard-list{border-radius:14px;display:none;overflow:hidden}.elt-card-header{align-items:center;background:linear-gradient(180deg,#ffffffe0,#f0f4fab3);border-bottom:1px solid #c2cee280;display:flex;justify-content:space-between;padding:10px 12px}.elt-card-header h3{color:#26354b;font-size:18px;margin:0}.elt-guard-items{display:flex;flex-direction:column;gap:6px;padding:8px}.elt-guard-list-message{background:#f0f5fce6;border-radius:10px;color:#4d607c;font-size:12px;font-weight:600;padding:10px 8px}.elt-guard-list-message.error{background:#fcefeef2;color:#b3413b}.elt-guard-item{background:linear-gradient(180deg,#ffffffeb,#f2f6fbe6);border:1px solid #c8d3e5a6;border-radius:12px;display:flex;gap:8px;padding:8px;text-align:left;width:100%}.elt-guard-item.selected{box-shadow:0 10px 24px #3d68aa2e}.elt-avatar,.elt-photo-avatar{align-items:center;background:linear-gradient(180deg,#314b72,#20324d);color:#fff;display:flex;font-weight:700;justify-content:center}.elt-avatar{border:3px solid #fff;border-radius:50%;box-shadow:0 6px 14px #2f3f5829;flex-shrink:0;height:40px;width:40px}.elt-guard-meta{flex:1 1;min-width:0}.elt-guard-name-row{align-items:center;color:#1f2e43;display:flex;flex-wrap:wrap;gap:6px}.elt-guard-name-row strong{font-size:14px}.elt-guard-name-row span{color:#5b6d86;font-size:11px}.elt-guard-zone{color:#50627d;font-size:11px;margin-top:2px}.tone-online{color:#40a56a}.tone-idle{color:#d89a2a}.tone-offline{color:#dc5a51}.elt-status-pill{align-items:center;border-radius:999px;color:#fff;display:inline-flex;font-size:10px;font-weight:700;height:22px;justify-content:center;letter-spacing:.01em;margin-top:6px;max-width:124px;width:100%}.elt-status-pill.online{background:linear-gradient(180deg,#44af75,#2f9760)}.elt-status-pill.idle{background:linear-gradient(180deg,#f5ba4a,#ef9e2d)}.elt-status-pill.offline{background:linear-gradient(180deg,#ef6257,#d84438)}.elt-map-stage{background:#eef5fb;border:1px solid #b3c2dd4d;border-radius:16px;box-shadow:0 12px 30px #5f759524;height:100%;min-height:0;overflow:hidden;position:relative;width:100%}.elt-leaflet-map{height:100%;min-height:620px;width:100%;z-index:1}.elt-map-stage .leaflet-container{background:#eef5fb;font-family:inherit}.elt-map-stage .leaflet-control-zoom{border:none;box-shadow:0 10px 24px #2f3f582e;margin-left:10px;margin-top:68px}.elt-map-stage .leaflet-control-zoom a{color:#32465f}.elt-map-stage .leaflet-bottom.leaflet-right{display:none}.elt-geofence-card{background:#fffffff5;border:1px solid #b3c2dd66;border-radius:12px;box-shadow:0 12px 30px #5f75952e;left:12px;padding:14px;pointer-events:auto;position:absolute;top:12px;width:320px;z-index:5}.elt-geofence-header{align-items:center;color:#1f2e43;display:flex;gap:8px;margin-bottom:10px}.elt-geofence-header strong{font-size:14px;font-weight:700}.elt-geofence-card p{color:#5b6d86;font-size:11px;line-height:1.5;margin:0 0 10px}.elt-geofence-form{grid-gap:8px;display:grid;gap:8px;margin-bottom:10px}.elt-geofence-form input{background:#f8fbff;border:1px solid #cfd7e6;border-radius:8px;color:#334155;font-size:11px;height:32px;outline:none;padding:0 10px}.elt-geofence-form button{background:linear-gradient(180deg,#316ecb,#2458ad);border:none;border-radius:8px;box-shadow:0 10px 18px #3560a72e;color:#fff;cursor:pointer;font-size:11px;font-weight:700;height:32px;padding:0 12px}.elt-geofence-form button:disabled{cursor:not-allowed;opacity:.6}.elt-employee-card{background:radial-gradient(circle at top right,#ffffff52,#0000 26%),linear-gradient(180deg,#98cdddfa,#8fc5d6f5);border:1px solid #74a7b785;border-radius:12px;box-shadow:0 16px 34px #344d652e;inset-inline-end:20px!important;inset-inline-start:auto!important;left:auto!important;padding:16px;pointer-events:auto;position:absolute;right:20px!important;top:20px!important;transform:none!important;width:min(420px,calc(100vw - 40px));z-index:5}.elt-employee-summary{grid-gap:14px;display:grid;gap:14px}.elt-employee-card-header{align-items:center;border-bottom:1px solid #6c9aaa57;display:flex;justify-content:space-between;margin-bottom:14px;padding-bottom:10px}.elt-employee-card-header strong{color:#17354f;font-size:15px;font-weight:700}.elt-employee-card-close{align-items:center;background:#ffffff94;border:none;border-radius:50%;color:#24405d;cursor:pointer;display:flex;height:28px;justify-content:center;pointer-events:auto;width:28px}.elt-employee-info,.elt-employee-summary-details{grid-gap:10px;display:grid;gap:10px}.elt-employee-summary-details{background:#ffffff6b;border:1px solid #83abbd61;border-radius:12px;padding:12px}.elt-employee-tabs{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.elt-employee-tabs button{background:#ffffff7a;border:none;border-radius:10px;color:#294861;cursor:pointer;font-size:11px;font-weight:700;min-height:34px;padding:0 10px}.elt-employee-tabs button.active{background:linear-gradient(180deg,#316ecb,#2458ad);box-shadow:0 10px 18px #3560a72e;color:#fff}.elt-employee-tab-panel{grid-gap:10px;background:#ffffff6b;border:1px solid #83abbd61;border-radius:12px;display:grid;gap:10px;padding:12px}.elt-employee-tab-panel.patrolling{background:linear-gradient(180deg,#e5f6eceb,#d6efe0e6)}.elt-employee-tab-panel.shifts{background:linear-gradient(180deg,#fff4e4f0,#f9e8d0eb)}.elt-employee-tab-panel.attendance{background:linear-gradient(180deg,#f0ecfff0,#e6e0f9eb)}.elt-employee-tab-panel.liveLocation{background:linear-gradient(180deg,#e5f1fff0,#d6e8f8eb)}.elt-employee-info-row{align-items:flex-start;display:flex;gap:8px}.elt-employee-info-row strong{color:#24405d;font-size:11px;font-weight:700;min-width:84px}.elt-employee-info-row span{color:#1a334a;font-size:12px;font-weight:500}.elt-employee-shift-list{grid-gap:10px;display:grid;gap:10px}.elt-employee-shift-card{grid-gap:4px;background:#ffffff94;border:1px solid #bf8c4a47;border-radius:12px;display:grid;gap:4px;padding:12px}.elt-employee-shift-card strong{color:#6d4513;font-size:13px}.elt-employee-shift-card span{color:#1a334a;font-size:12px;font-weight:500}.elt-employee-avatar-lg{border:3px solid #ffffffd1;border-radius:50%;box-shadow:0 6px 14px #2f3f5829;font-size:24px;height:60px;width:60px}.elt-employee-avatar-lg,.elt-employee-avatar-xl{align-items:center;background:linear-gradient(180deg,#314b72,#20324d);color:#fff;display:flex;font-weight:700;justify-content:center}.elt-employee-avatar-xl{border:4px solid #ffffffd1;border-radius:24px;box-shadow:0 8px 18px #2f3f5833;font-size:30px;height:88px;overflow:hidden;width:88px}.elt-view-details-btn{border:none;border-radius:11px;box-shadow:0 12px 24px #3560a738;font-size:13px;height:38px;margin-top:14px;width:100%}.elt-open-geofence-btn,.elt-view-details-btn{background:linear-gradient(180deg,#316ecb,#2458ad);color:#fff;cursor:pointer;font-weight:700}.elt-open-geofence-btn{align-items:center;border:none;border-radius:10px;box-shadow:0 12px 24px #3560a73d;display:inline-flex;font-size:12px;gap:8px;height:36px;left:8px;padding:0 14px;pointer-events:auto;position:absolute;top:8px;z-index:3}.elt-open-geofence-btn:disabled{cursor:not-allowed;opacity:.72}.elt-modal-backdrop{background:#121d2c75;display:grid;inset:0;padding:20px;place-items:center;position:fixed;z-index:40}.elt-modal-card{background:radial-gradient(circle at top right,#ffffff57,#0000 26%),linear-gradient(180deg,#98cdddfa,#8fc5d6f5);border:1px solid #74a7b79e;border-radius:18px;box-shadow:0 24px 60px #1b2b4147;left:auto;margin:0;padding:16px 18px;position:relative;top:auto;transform:translateX(60px)}.elt-modal-header{align-items:flex-start;border-bottom:1px solid #6c9aaa61;display:flex;gap:12px;justify-content:space-between;padding-bottom:12px}.elt-modal-header strong{color:#17354f;display:block;font-size:18px}.elt-modal-header p{color:#34546c;font-size:13px;margin:6px 0 0}.elt-modal-close{background:#ffffff94;border:none;border-radius:50%;color:#24405d;cursor:pointer;height:32px;width:32px}.elt-geofence-modal-card{width:min(760px,calc(100vw - 48px))}.elt-modal-form{grid-gap:12px;display:grid;gap:12px;margin-top:14px}.elt-guard-detail-modal{max-height:82vh;width:min(720px,calc(100vw - 48px))}.elt-guard-detail-top{align-items:center;border-bottom:none;display:flex;gap:16px;margin-bottom:0;margin-top:0;padding:0}.elt-guard-detail-identity{grid-gap:6px;display:grid;gap:6px}.elt-guard-photo-card{margin-bottom:14px;margin-top:16px}.elt-guard-detail-shell,.elt-guard-photo-card{background:#ffffff6b;border:1px solid #83abbd61;border-radius:18px;box-shadow:inset 0 1px 0 #ffffff47;padding:16px}.elt-detail-toggle-card{border-bottom:1px solid #83abbd52;margin-bottom:14px;margin-top:0;padding:0 0 14px}.elt-guard-detail-identity strong{color:#17354f;font-size:20px}.elt-guard-detail-identity span{color:#36526b;font-size:13px;font-weight:600}.elt-detail-toggle-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.elt-detail-toggle-row button{background:#ffffff9e;border:none;border-radius:12px;color:#284760;cursor:pointer;font-size:12px;font-weight:700;min-height:40px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.elt-detail-toggle-row button:hover{transform:translateY(-1px)}.elt-detail-toggle-row button.active{box-shadow:0 12px 24px #30496b29;color:#fff}.elt-detail-toggle-row button:first-child.active{background:linear-gradient(180deg,#3ca86c,#2f8d59)}.elt-detail-toggle-row button:nth-child(2).active{background:linear-gradient(180deg,#f0a44a,#db8430)}.elt-detail-toggle-row button:nth-child(3).active{background:linear-gradient(180deg,#8a67d8,#6f4ec4)}.elt-detail-toggle-row button:nth-child(4).active{background:linear-gradient(180deg,#316ecb,#2458ad)}.elt-modal-form label{grid-gap:6px;display:grid;gap:6px}.elt-modal-form span{color:#42556f;font-size:13px;font-weight:700}.elt-modal-form input{background:#ffffffd1;border:1px solid #6895a573;border-radius:8px;color:#334155;font-size:12px;height:34px;outline:none;padding:0 12px}.elt-modal-form input:focus{border-color:#316ecbb3;box-shadow:0 0 0 3px #316ecb1f}.elt-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.elt-modal-primary,.elt-modal-secondary{border:none;border-radius:9px;cursor:pointer;font-size:12px;font-weight:700;height:36px;padding:0 16px}.elt-modal-primary{background:linear-gradient(180deg,#316ecb,#2458ad);color:#fff}.elt-modal-primary:disabled{cursor:not-allowed;opacity:.7}.elt-modal-secondary{background:#ffffffb8;color:#294861}.elt-geofence-message{color:#285f99;font-size:11px;font-weight:600;margin-top:8px}.elt-geofence-message.modal{font-size:12px;margin-top:8px}.elt-leaflet-div-icon{background:#0000;border:none}.elt-leaflet-pin{align-items:flex-start;display:flex;height:54px;justify-content:center;position:relative;transition:transform .2s ease,opacity .2s ease;width:42px}.elt-leaflet-pin.inactive{opacity:.84}.elt-leaflet-pin.active{transform:scale(1.08)}.elt-leaflet-pin-head{align-items:center;border:2px solid #fffffff5;border-radius:50%;box-shadow:0 14px 26px #1f2e4338;color:#fff;display:flex;font-size:14px;font-weight:800;height:36px;justify-content:center;overflow:hidden;width:36px}.elt-leaflet-pin-tip{border-radius:4px;bottom:6px;box-shadow:0 10px 18px #1f2e4329;height:16px;left:50%;position:absolute;transform:translateX(-50%) rotate(45deg);width:16px}.elt-leaflet-pin.inside .elt-leaflet-pin-head,.elt-leaflet-pin.inside .elt-leaflet-pin-tip{background:linear-gradient(180deg,#4ab06f,#2d9456)}.elt-leaflet-pin.outside .elt-leaflet-pin-head,.elt-leaflet-pin.outside .elt-leaflet-pin-tip{background:linear-gradient(180deg,#f06058,#d63d34)}.elt-leaflet-pin.active .elt-leaflet-pin-head{box-shadow:0 0 0 6px #316ecb29,0 16px 30px #1f2e4342}.elt-leaflet-avatar-image{height:100%;object-fit:cover;width:100%}.elt-leaflet-avatar-text{line-height:1}.elt-leaflet-vertex{background:linear-gradient(180deg,#ffc54d,#f0a52f);border:2px solid #fff4d7;border-radius:50%;box-shadow:0 8px 16px #2b384f2e;height:14px;width:14px}.elt-guard-tooltip .leaflet-tooltip{background:#203149f0;border:none;border-radius:10px;box-shadow:0 12px 24px #19243638;color:#fff;font-size:12px;font-weight:700;padding:7px 10px}.elt-guard-tooltip .leaflet-tooltip-top:before{border-top-color:#203149f0}.elt-guard-tooltip-content{grid-gap:3px;display:grid;gap:3px}.elt-guard-tooltip-content strong{font-size:12px;font-weight:700}.elt-guard-tooltip-content span{color:#ffffffd1;font-size:10px}.elt-map-place-panel{grid-gap:10px;background:#fffffff0;border-radius:14px;bottom:14px;box-shadow:0 16px 28px #0f172a24;display:grid;gap:10px;left:14px;max-width:360px;padding:12px 14px;pointer-events:auto;position:absolute;z-index:3}.elt-map-place-header{grid-gap:4px;display:grid;gap:4px}.elt-map-place-header strong{color:#23344d;font-size:13px}.elt-map-place-header span{color:#4f647e;font-size:12px;line-height:1.45}.elt-map-place-list{display:flex;flex-wrap:wrap;gap:8px}.elt-map-place-chip{background:#eef4fb;border-radius:999px;color:#31506d;font-size:11px;font-weight:700;padding:6px 10px}.elt-map-place-empty{color:#6a7b92;font-size:11px;font-weight:600}.elt-update-pill{align-items:center;background:#ffffffe6;border-radius:8px;color:#506077;display:inline-flex;font-size:10px;gap:6px;padding:5px 8px;pointer-events:auto;position:absolute;right:8px;top:8px;z-index:3}.elt-update-pill strong{color:#db5a52}.elt-update-dot{background:#61c17b;border-radius:3px;height:8px;width:8px}.elt-ws-pill{align-items:center;background:#ffffffeb;border-radius:10px;box-shadow:0 10px 24px #2f3f5824;color:#37506e;display:inline-flex;font-size:11px;font-weight:700;gap:6px;padding:5px 9px;pointer-events:none;position:absolute;right:96px;top:40px;z-index:3}.elt-ws-dot{background:#9ca9bb;border-radius:999px;height:8px;width:8px}.elt-ws-pill.connected .elt-ws-dot{background:#38b56f;box-shadow:0 0 0 4px #38b56f24}.elt-ws-pill.connecting .elt-ws-dot{background:#e1a237;box-shadow:0 0 0 4px #e1a23724}.elt-ws-pill.disconnected .elt-ws-dot,.elt-ws-pill.error .elt-ws-dot{background:#d95a5a;box-shadow:0 0 0 4px #d95a5a24}.elt-refresh-btn{align-items:center;background:#ffffffeb;border:none;border-radius:10px;box-shadow:0 10px 24px #2f3f5824;color:#31506d;cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;gap:6px;height:30px;padding:0 12px;position:absolute;right:8px;top:40px;z-index:3}.elt-refresh-btn:hover{background:#fff}.elt-refresh-btn.loading svg{animation:elt-refresh-spin 1s linear infinite}.elt-refresh-btn:disabled{cursor:wait;opacity:.85}.elt-refresh-status{background:#fffffff0;border-radius:10px;box-shadow:0 10px 24px #2f3f5824;color:#37506e;font-size:11px;font-weight:700;line-height:1.4;max-width:280px;padding:8px 10px;pointer-events:auto;position:absolute;right:8px;top:78px;z-index:3}.elt-refresh-status.loading{color:#a56a17}.elt-refresh-status.success{color:#1f7a44}.elt-refresh-status.warning{color:#9a6c16}.elt-refresh-status.error{color:#b44343}.elt-map-type-toggle{background:#ffffffeb;border-radius:12px;box-shadow:0 10px 24px #2f3f5824;display:inline-flex;gap:6px;padding:4px;pointer-events:auto;position:absolute;right:8px;top:126px;z-index:3}.elt-map-type-toggle button{background:#0000;border:none;border-radius:9px;color:#42556f;cursor:pointer;font-size:12px;font-weight:700;height:30px;padding:0 12px}.elt-map-type-toggle button.active{background:linear-gradient(180deg,#316ecb,#2458ad);box-shadow:0 8px 18px #3560a733;color:#fff}.elt-legend{grid-gap:4px;background:#ffffffe6;border-radius:10px;bottom:8px;color:#405067;display:grid;font-size:10px;gap:4px;padding:8px 10px;pointer-events:auto;position:absolute;right:8px;z-index:3}.elt-legend div{align-items:center;display:flex;gap:6px}.legend{border-radius:50%;height:8px;width:8px}.legend.online{background:#48ae69}.legend.idle{background:#f0ad3c}.legend.offline{background:#ef6458}.legend.pending{background:#f8ce6a;border-radius:4px}.elt-stats-strip{align-items:center;border-radius:10px;display:none;gap:4px;grid-template-columns:repeat(6,minmax(0,1fr));padding:6px 8px}.elt-stats-strip div{align-items:center;color:#334155;display:flex;font-size:10px;font-weight:700;gap:4px;padding:0 4px}.elt-stats-strip div+div{border-left:1px solid #c1cbdbb3}.elt-stats-strip .track-ok{color:#2f8c58}.elt-bottom-grid{display:none;gap:8px;grid-template-columns:minmax(0,1fr) 210px;min-height:0}.elt-issue-card,.elt-timeline-card{border-radius:12px;padding:8px}.elt-checkpoint-lines{grid-gap:4px;display:grid;gap:4px;padding:0 2px 2px}.elt-checkpoint-line{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.elt-checkpoint-inline{align-items:center;display:flex;gap:6px}.elt-checkpoint-name,.elt-checkpoint-time{align-items:center;color:#2d3a50;display:flex;gap:6px}.elt-checkpoint-name strong{font-size:11px}.elt-checkpoint-time{color:#44556e;font-size:10px}.elt-checkpoint-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.elt-checkpoint-dot.done{background:#49ac6f}.elt-checkpoint-dot.pending{background:#f1b53c}.elt-checkpoint-icon{align-items:center;border-radius:50%;color:#fff;display:inline-flex;height:12px;justify-content:center;width:12px}.elt-checkpoint-icon.green{background:#43ab69}.elt-checkpoint-icon.yellow{background:#f2b33a}.elt-track-badge{align-items:center;background:linear-gradient(180deg,#5aa7ff,#337fda);border-radius:999px;color:#fff;display:inline-flex;font-size:9px;font-weight:700;height:16px;padding:0 7px}.elt-photo-row{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:6px}.elt-photo-card{background:#eef4fb;border-radius:10px;box-shadow:inset 0 0 0 1px #c7d4e7bf;overflow:hidden}.elt-photo-scene{background:linear-gradient(180deg,#b5d0e647,#cfdeed2e),linear-gradient(140deg,#dce8f2,#f3f7fb 55%,#d7e1eb);height:42px;position:relative}.elt-photo-scene:after,.elt-photo-scene:before{background:#6c8db138;border-radius:8px;content:"";position:absolute}.elt-photo-scene:before{bottom:5px;height:16px;left:8px;width:26px}.elt-photo-scene:after{bottom:5px;height:22px;left:38px;width:34px}.elt-photo-avatar{border:2px solid #fffffff2;border-radius:50%;bottom:5px;box-shadow:0 10px 20px #2c3b5433;height:22px;position:absolute;right:5px;width:22px}.elt-photo-time{background:#243045e0;color:#fff;font-size:9px;font-weight:700;padding:3px 5px}.elt-action-row{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:6px}.elt-action-row .action{align-items:center;border-radius:8px;box-shadow:0 10px 18px #54678529;color:#fff;display:inline-flex;font-size:10px;font-weight:700;gap:6px;height:28px;justify-content:center;padding:0 6px;white-space:nowrap}.elt-action-row .danger{background:linear-gradient(180deg,#ef5c4c,#d5372b)}.elt-action-row .primary{background:linear-gradient(180deg,#5aa7ff,#337fda)}.elt-issue-card{background:linear-gradient(180deg,#fff8eceb,#faefd9e0);border:1px solid #e1c48e8c;display:flex;flex-direction:column;justify-content:space-between;min-height:100%}.elt-issue-header{align-items:flex-start;color:#7a5a27;display:flex;gap:8px}.elt-issue-header strong{color:#5f4a24;display:block;font-size:12px}.elt-issue-header p,.elt-issue-header span{color:#5c4e3e;font-size:10px;margin:4px 0 0}.elt-issue-actions{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr;margin-top:auto}.elt-issue-action{align-items:center;background:linear-gradient(180deg,#fff,#eef3fb);border:1px solid #ced5e4d9;border-radius:8px;color:#334155;display:inline-flex;font-size:10px;font-weight:700;gap:6px;height:28px;justify-content:center;white-space:nowrap}.elt-issue-action.warning{color:#9f6b0f}.elt-live-photo{border-radius:50%;height:100%;object-fit:cover;width:100%}.elt-geofence-point-row{grid-gap:10px;align-items:end;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px}.elt-geofence-point-row label{margin:0}.elt-geofence-point-row .elt-point-remove{margin-bottom:1px}.elt-geofence-shortcuts{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.elt-point-shortcut{align-items:center;background:linear-gradient(180deg,#ffffffdb,#ecf5fac7);border:none;border-radius:10px;box-shadow:inset 0 0 0 1px #94b6c6b3;color:#35506f;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;height:38px;justify-content:center;padding:0 12px}.elt-point-shortcut:disabled{cursor:not-allowed;opacity:.7}.elt-geofence-shortcuts .elt-point-shortcut:first-child{background:linear-gradient(180deg,#e5f5fff5,#cbe8faeb);color:#1f5784}.elt-geofence-shortcuts .elt-point-shortcut:nth-child(2){background:linear-gradient(180deg,#e9f7eff5,#d0ecdceb);color:#24644c}.elt-point-add,.elt-point-remove{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-weight:700;justify-content:center}.elt-point-add{background:linear-gradient(180deg,#ffffffd1,#e5eff7d6);color:#2f506a;gap:8px;height:36px;padding:0 12px}.elt-point-remove{background:#fff1f1;color:#d43e35;height:36px;width:36px}.elt-battery-alert{background:#fff5f5;border-radius:10px;color:#dc2626;font-weight:600;margin-top:10px;padding:8px 12px}.elt-modal-card{max-height:78vh;overflow-y:auto;padding:14px 18px;width:min(760px,calc(100vw - 48px))}.elt-geofence-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.elt-geofence-point-card{background:#ffffffb8;border:1px solid #8bafc270;border-radius:10px;box-shadow:0 10px 18px #47607b14;padding:8px}.elt-geofence-point-card:nth-child(4n+1){background:linear-gradient(180deg,#e7f5ffe6,#d9ebf7e0)}.elt-geofence-point-card:nth-child(4n+2){background:linear-gradient(180deg,#eaf8efeb,#dbefe2e6)}.elt-geofence-point-card:nth-child(4n+3){background:linear-gradient(180deg,#fff5e6eb,#f8ead3e6)}.elt-geofence-point-card:nth-child(4n+4){background:linear-gradient(180deg,#f7edffeb,#e8dff8e6)}.elt-geofence-point-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.elt-geofence-point-row input{font-size:13px;height:32px}.elt-point-remove{border-radius:8px;height:30px;width:30px}@media (max-width:1200px){.elt-body,.elt-layout,.elt-main{height:auto;overflow:visible}.elt-bottom-grid,.elt-map-panel{grid-template-columns:1fr}.elt-guard-list{order:2}.elt-leaflet-map,.elt-map-stage{min-height:420px}.elt-stats-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.elt-stats-strip div:nth-child(4){border-left:none}}@media (max-width:900px){.elt-main{margin-left:0}.elt-toolbar{align-items:stretch;flex-direction:column}.elt-export-btn,.elt-select-btn{width:100%}.elt-action-row,.elt-issue-actions,.elt-photo-row,.elt-stats-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.elt-ws-pill{right:8px;top:76px}.elt-refresh-status{right:8px;top:114px}.elt-map-type-toggle{top:162px}}@media (max-width:640px){.elt-body{height:auto;padding:14px}.elt-leaflet-map,.elt-map-stage{min-height:400px}.elt-photo-row,.elt-stats-strip{grid-template-columns:1fr}.elt-stats-strip div+div{border-left:none;border-top:1px solid #c1cbdbb3;padding-top:10px}.elt-action-row,.elt-issue-actions{grid-template-columns:1fr}.elt-ws-pill{font-size:10px;right:8px;top:112px}.elt-refresh-status{font-size:10px;max-width:calc(100% - 16px);right:8px;top:148px}.elt-map-type-toggle{top:204px}.elt-modal-card{padding:16px;transform:translateX(24px)}.elt-detail-toggle-row{grid-template-columns:repeat(2,minmax(0,1fr))}.elt-geofence-shortcuts{grid-template-columns:1fr}}@keyframes elt-refresh-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:520px){.elt-geofence-point-row{grid-template-columns:1fr}}.attendance-layout{background:#98cddd;display:flex;min-height:100vh}.attendance-main{background:radial-gradient(circle at top right,#ffffff4d,#0000 28%),linear-gradient(180deg,#98cddd,#8fc5d6);flex:1 1;margin-left:260px;min-height:100vh;min-width:0;overflow-y:auto}.attendance-body{min-height:calc(100vh - 72px);padding:10px 12px 12px}.attendance-panel{grid-gap:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:radial-gradient(circle at 15% 15%,#ffffff73,#0000 20%),radial-gradient(circle at 85% 22%,#ffffff47,#0000 20%),linear-gradient(180deg,#f2f1ffbf,#cfd4f8b8);border:1px solid #b5baebb3;border-radius:18px;box-shadow:0 18px 35px #5c62a829;display:grid;gap:10px;grid-template-rows:auto auto auto auto minmax(0,1fr);height:100%;overflow:hidden;padding:14px}.attendance-panel-header{align-items:center;display:flex;gap:14px;justify-content:space-between}.attendance-panel-header h2{color:#24345c;font-size:22px;font-weight:700;margin:0}.attendance-export-btn{align-items:center;background:linear-gradient(180deg,#3c9db2,#29798d);border:none;border-radius:10px;box-shadow:0 10px 18px #29798d47;color:#fff;cursor:pointer;display:inline-flex;gap:8px;height:38px;padding:0 16px}.attendance-summary-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.attendance-summary-card{align-items:flex-start;border-radius:14px;box-shadow:inset 0 0 0 1px #ffffff59;display:flex;gap:12px;min-height:84px;padding:12px 14px}.attendance-summary-card.marked{background:linear-gradient(180deg,#e7f4f2e6,#d9e8f3bf)}.attendance-summary-card.pending{background:linear-gradient(180deg,#ffefe6eb,#f5e3dccc)}.attendance-summary-card.missed{background:linear-gradient(180deg,#fce4edeb,#f0d8ebcc)}.attendance-summary-icon{align-items:center;border-radius:50%;box-shadow:0 10px 20px #5b64a42e;color:#fff;display:flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.attendance-summary-icon.marked{background:linear-gradient(180deg,#47b5a7,#2f8f86)}.attendance-summary-icon.pending{background:linear-gradient(180deg,#f0b34c,#e38d24)}.attendance-summary-icon.missed{background:linear-gradient(180deg,#d96b88,#c44467)}.attendance-summary-value{color:#44506f;font-size:30px;font-weight:700;line-height:1}.attendance-summary-title{color:#43506e;font-size:16px;line-height:1.25;margin-top:6px}.attendance-tabs{background:#e2e4fcb3;border-radius:18px;box-shadow:inset 0 0 0 1px #c6cbf2b3;display:inline-flex;padding:4px;width:fit-content}.attendance-tabs button{background:#0000;border:none;border-radius:14px;color:#26355c;cursor:pointer;font-size:14px;height:32px;min-width:120px}.attendance-tabs button.active{background:linear-gradient(180deg,#5884f6,#3f68da);box-shadow:0 10px 18px #466eda38;color:#fff}.attendance-status-row{display:flex;flex-wrap:wrap;gap:10px}.attendance-badge,.attendance-chip{align-items:center;border-radius:14px;display:inline-flex;font-weight:600;gap:8px}.attendance-chip{font-size:14px;padding:7px 13px}.attendance-badge.marked,.attendance-chip.marked{background:#9adac573;color:#1f7b71}.attendance-badge.pending,.attendance-chip.pending{background:#f5ce9380;color:#c97510}.attendance-badge.missed,.attendance-chip.missed{background:#efb0c473;color:#b63e67}.attendance-table-card{background:#edefff6b;border:1px solid #c2c7f3b8;border-radius:16px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;overflow:hidden}.attendance-row,.attendance-table-header{align-items:center;display:grid;grid-template-columns:1.35fr .85fr 1fr .65fr}.attendance-table-header{background:#ced2f861;color:#42507b;font-size:15px;font-weight:600;padding:12px 18px}.attendance-table-body{min-height:0;overflow:hidden}.attendance-row{border-top:1px solid #c5cbf58c;color:#2c385d;cursor:pointer;font-size:14px;padding:7px 18px}.attendance-row>div+div{border-left:1px solid #c5cbf58c;padding-left:18px}.attendance-employee-cell{align-items:center;display:flex;gap:14px}.attendance-employee-meta{grid-gap:3px;display:grid;gap:3px}.attendance-avatar{align-items:center;background:linear-gradient(180deg,#314b72,#20324d);border:3px solid #ffffffe6;border-radius:50%;box-shadow:0 10px 18px #434f7e2e;color:#fff;display:flex;font-weight:700;height:40px;justify-content:center;width:40px}.attendance-employee-meta span{font-size:17px}.attendance-employee-meta small,.attendance-subtext{color:#6d7897;font-size:12px}.attendance-badge{font-size:13px;padding:6px 12px;width:fit-content}.attendance-table-message{color:#50607f;font-size:14px;padding:18px;text-align:center}.attendance-table-message.error{color:#b63e67}.attendance-footer{color:#586589;font-size:13px;padding:10px 10px 12px;text-align:center}.attendance-pagination{align-items:center;background:#f0f2ff99;border:1px solid #bcc2eeb8;border-radius:10px;display:inline-flex;margin-top:8px;overflow:hidden}.attendance-pagination button{background:#0000;border:none;color:#435173;cursor:pointer;font-size:13px;height:30px;min-width:44px;padding:0 12px}.attendance-pagination button+button{border-left:1px solid #bcc2eeb8}.attendance-pagination .active{background:#ffffffb8}.attendance-detail-overlay{align-items:center;background:#1922366b;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1200}.attendance-detail-modal{background:linear-gradient(180deg,#fafbfff7,#ebeffff2);border:1px solid #bdc5f1e6;border-radius:18px;box-shadow:0 24px 50px #1f29483d;display:grid;grid-template-rows:auto auto minmax(0,1fr);max-height:85vh;overflow:hidden;width:min(720px,100%)}.attendance-detail-header{align-items:flex-start;border-bottom:1px solid #c5cbf5b3;display:flex;gap:16px;justify-content:space-between;padding:20px 22px 14px}.attendance-detail-header h3{color:#24345c;font-size:24px;margin:0}.attendance-detail-header p{color:#60708f;font-size:14px;margin:6px 0 0}.attendance-detail-close{background:linear-gradient(180deg,#445d96,#314775);border:none;border-radius:10px;color:#fff;cursor:pointer;height:38px;padding:0 14px}.attendance-detail-summary{display:flex;flex-wrap:wrap;gap:10px;padding:14px 22px}.attendance-detail-chip{align-items:center;border-radius:999px;display:inline-flex;font-size:14px;font-weight:600;padding:8px 14px}.attendance-detail-chip.marked{background:#9adac573;color:#1f7b71}.attendance-detail-chip.pending{background:#f5ce9380;color:#c97510}.attendance-detail-chip.missed{background:#efb0c473;color:#b63e67}.attendance-detail-body{min-height:0;overflow-y:auto;padding:0 22px 22px}.attendance-detail-list{grid-gap:12px;display:grid;gap:12px}.attendance-detail-item{grid-gap:6px;background:#ffffffb3;border:1px solid #c5cbf5b3;border-radius:14px;color:#31415f;display:grid;gap:6px;padding:14px 16px}@media (max-width:1200px){.attendance-body,.attendance-layout,.attendance-main,.attendance-panel{height:auto;overflow:visible}.attendance-row,.attendance-summary-grid,.attendance-table-header{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-row,.attendance-table-header{gap:12px}.attendance-row>div+div,.attendance-table-header>div+div{border-left:none;padding-left:0}}@media (max-width:900px){.attendance-main{margin-left:0}.attendance-panel-header{align-items:stretch;flex-direction:column}.attendance-summary-grid{grid-template-columns:1fr}.attendance-tabs{display:grid;grid-template-columns:repeat(4,1fr);width:100%}.attendance-tabs button{min-width:0}}@media (max-width:640px){.attendance-body{height:auto;padding:14px}.attendance-row,.attendance-table-header{grid-template-columns:1fr}.attendance-employee-meta span{font-size:18px}}.violation-layout{background:#98cddd;display:flex;min-height:100vh}.violation-main{background:radial-gradient(circle at top right,#ffffff4d,#0000 28%),linear-gradient(180deg,#98cddd,#8fc5d6);flex:1 1;height:100vh;margin-left:260px;min-width:0;overflow-y:auto}.violation-body{min-height:calc(100vh - 72px);padding:10px 12px 12px}.violation-panel{grid-gap:10px;background:radial-gradient(circle at 15% 15%,#ffffff6b,#0000 20%),radial-gradient(circle at 85% 22%,#ffffff42,#0000 20%),linear-gradient(180deg,#f2f1ffc7,#cfd4f8b8);border:1px solid #b5baebb3;border-radius:18px;box-shadow:0 18px 35px #5c62a829;display:grid;gap:10px;grid-template-rows:auto auto minmax(0,1fr) auto;height:100%;overflow:hidden;padding:12px}.violation-filter-row,.violation-top-row{align-items:center;display:flex;gap:10px}.violation-top-row{justify-content:space-between}.violation-tabs{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.violation-actions button,.violation-export-btn,.violation-filter-chip,.violation-icon-btn,.violation-pagination button,.violation-tabs button{border:none;cursor:pointer}.violation-tabs button{align-items:center;background:#0000;border-radius:12px;color:#39436d;display:inline-flex;font-size:15px;gap:8px;height:38px;padding:0 14px}.violation-tabs .active{background:linear-gradient(180deg,#5d83f5,#4569dc);box-shadow:0 10px 18px #4569dc38;color:#fff}.violation-tabs .critical{color:#d63f55}.violation-tabs .warning{color:#dd8b29}.violation-tabs .info{color:#4970dd}.violation-export-btn{align-items:center;background:linear-gradient(180deg,#3c9db2,#29798d);border-radius:10px;box-shadow:0 10px 18px #29798d47;color:#fff;display:inline-flex;gap:8px;height:38px;padding:0 16px}.violation-filter-row{flex-wrap:wrap}.violation-filter-chip{align-items:center;background:#eaebff9e;border-radius:12px;box-shadow:inset 0 0 0 1px #c7cbf3bf;color:#4a567f;display:inline-flex;font-size:14px;gap:8px;height:34px;padding:0 14px}.violation-filter-chip.active-status{background:#cbe2dbe0;color:#4f6862}.violation-icon-btn{align-items:center;background:#eaebff9e;border-radius:10px;box-shadow:inset 0 0 0 1px #c7cbf3bf;color:#66739a;display:inline-flex;height:34px;justify-content:center;width:34px}.violation-list{grid-gap:8px;display:grid;gap:8px;min-height:0;overflow:hidden}.violation-card{grid-gap:12px;align-items:center;background:#f1f2ff75;border:1px solid #c2c7f3b8;border-radius:14px;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) 250px;padding:8px 12px}.violation-left{align-items:center;display:flex;gap:12px;min-width:0}.violation-avatar{align-items:center;background:linear-gradient(180deg,#314b72,#20324d);border:3px solid #ffffffe6;border-radius:50%;box-shadow:0 10px 18px #434f7e2e;color:#fff;display:flex;flex-shrink:0;font-weight:700;height:48px;justify-content:center;overflow:hidden;width:48px}.violation-avatar img{border-radius:50%;height:100%;object-fit:cover;width:100%}.violation-empty{color:#4e5a7c;font-weight:600;padding:18px}.violation-filter-chip select{appearance:none;background:#0000;border:none;color:inherit;font-size:inherit}.violation-copy strong{color:#24345c;font-size:17px}.violation-copy h3{color:#c43d4e;font-size:16px;font-weight:700;margin:2px 0 4px}.violation-copy p,.violation-copy span{color:#4e5a7c;font-size:13px;margin:0}.violation-copy span{display:inline-block;margin-top:4px}.violation-right{align-items:flex-end;display:flex;flex-direction:column;gap:10px}.violation-status{align-items:center;border-radius:999px;display:inline-flex;font-size:14px;font-weight:700;height:32px;justify-content:center;min-width:100px;padding:0 14px}.violation-status.pending{background:#f7c4a6b8;color:#b2612b}.violation-status.viewed{background:#cabff5c7;color:#5a5290}.violation-actions{display:flex;gap:0}.resolve-btn,.view-btn{background:#eaebff99;border:1px solid #c5caf3d1;color:#465fa4;font-size:13px;height:32px;padding:0 14px}.view-btn{border-radius:999px 0 0 999px}.resolve-btn{background:#f0d5e48c;border-left:none;border-radius:0 999px 999px 0;color:#c14c64}.violation-footer{align-items:center;color:#586589;display:flex;font-size:14px;justify-content:space-between;padding:0 4px}.violation-pagination{align-items:center;background:#f0f2ff99;border:1px solid #bcc2eeb8;border-radius:10px;display:inline-flex;overflow:hidden}.violation-pagination button{background:#0000;color:#435173;font-size:13px;height:30px;min-width:42px;padding:0 12px}.violation-pagination button+button{border-left:1px solid #bcc2eeb8}.violation-pagination .active{background:#ffffffb8}@media (max-width:1200px){.violation-body,.violation-layout,.violation-main,.violation-panel{height:auto;overflow:visible}.violation-card{grid-template-columns:1fr}.violation-right{align-items:flex-start}}@media (max-width:900px){.violation-main{margin-left:0}.violation-filter-row,.violation-footer,.violation-top-row{align-items:stretch;flex-direction:column}}@media (max-width:640px){.violation-body{height:auto;padding:14px}.violation-actions{flex-direction:column;gap:8px;width:100%}.resolve-btn,.view-btn{border-left:1px solid #c5caf3d1;border-radius:999px}}.reports-layout{display:flex}.reports-layout,.reports-main{background:#98cddd;min-height:100vh}.reports-main{flex:1 1;margin-left:260px;min-width:0}.reports-body{padding:12px 14px 18px}.reports-panel{background:radial-gradient(circle at 85% 20%,#fff9,#0000 35%),linear-gradient(180deg,#c6e6fce6,#b0dbf8e6);border:1px solid #9cc5e5b3;border-radius:18px;box-shadow:0 18px 35px #224e782e;padding:16px}.reports-heading{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.reports-heading h2{color:#1f2f45;font-size:22px;font-weight:700;margin:0}.reports-heading p{color:#3f5776;font-size:14px;margin:0}.reports-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.reports-card{background:#fff;border:1px solid #e3edf7;border-radius:12px;box-shadow:0 10px 20px #142c4614;display:flex;flex-direction:column;gap:12px;min-height:150px;padding:14px 16px}.reports-card-top{align-items:center;display:flex;gap:10px}.reports-info{align-items:center;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.reports-info.purple{background:linear-gradient(180deg,#6e5dd9,#4f3db6)}.reports-info.red{background:linear-gradient(180deg,#e05659,#c53c3f)}.reports-info.green{background:linear-gradient(180deg,#24a160,#16804a)}.reports-info.blue{background:linear-gradient(180deg,#4d6fe3,#3454c6)}.reports-info.teal{background:linear-gradient(180deg,#18a1a7,#0f7f84)}.reports-info.orange{background:linear-gradient(180deg,#ef8c34,#d96a0c)}.reports-card h3{color:#1e2a3f;font-size:16px;font-weight:700;margin:0}.reports-desc{color:#566a86;font-size:13px;line-height:1.4;margin:0}.reports-card-footer{align-items:center;display:flex;gap:12px;justify-content:flex-end;margin-top:auto}.reports-badge{align-items:center;border-radius:10px;color:#fff;display:inline-flex;height:34px;justify-content:center;width:34px}.reports-btn{border:none;border-radius:8px;box-shadow:0 8px 16px #1c34562e;color:#fff;cursor:pointer;font-size:13px;font-weight:600;height:32px;padding:0 14px}.reports-badge.purple,.reports-btn.purple{background:linear-gradient(180deg,#6e5dd9,#4f3db6)}.reports-badge.red,.reports-btn.red{background:linear-gradient(180deg,#e05659,#c53c3f)}.reports-badge.green,.reports-btn.green{background:linear-gradient(180deg,#24a160,#16804a)}.reports-badge.blue,.reports-btn.blue{background:linear-gradient(180deg,#4d6fe3,#3454c6)}.reports-badge.teal,.reports-btn.teal{background:linear-gradient(180deg,#18a1a7,#0f7f84)}.reports-badge.orange,.reports-btn.orange{background:linear-gradient(180deg,#ef8c34,#d96a0c)}.reports-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0715286b;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2100}.reports-modal-card{background:linear-gradient(180deg,#fff,#eef6ff);border:1px solid #a8c2e0e6;border-radius:18px;box-shadow:0 24px 55px #122a483d;padding:22px;width:min(100%,520px)}.reports-modal-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.reports-modal-header h3{color:#1e2a3f;font-size:20px;margin:0 0 6px}.reports-modal-header p{color:#5c6f89;font-size:13px;line-height:1.5;margin:0}.reports-modal-close{background:#eaf1fb;border:none;border-radius:10px;color:#314763;cursor:pointer;font-size:18px;height:34px;width:34px}.reports-modal-form{grid-gap:14px;display:grid;gap:14px}.reports-field{grid-gap:8px;display:grid;gap:8px}.reports-combination-preview span,.reports-field span{color:#334863;font-size:13px;font-weight:600}.reports-field select{background:#fff;border:1px solid #c8d9eb;border-radius:10px;color:#213146;font-size:14px;height:42px;outline:none;padding:0 12px;width:100%}.reports-combination-preview{grid-gap:6px;background:linear-gradient(180deg,#eff6ff,#e2eefc);border:1px solid #c8d9ef;border-radius:14px;display:grid;gap:6px;padding:14px 16px}.reports-combination-preview strong{color:#163a72;font-size:16px}.reports-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.reports-modal-btn{border:none;border-radius:10px;cursor:pointer;font-size:13px;font-weight:700;height:38px;min-width:118px}.reports-modal-btn.secondary{background:#e8eef6;color:#334863}.reports-modal-btn.primary{background:linear-gradient(180deg,#ef8c34,#d96a0c);color:#fff}@media (max-width:1000px){.reports-grid{grid-template-columns:1fr}}@media (max-width:900px){.reports-main{margin-left:0}.reports-heading{align-items:flex-start;flex-direction:column}}@media (max-width:600px){.reports-body{padding:12px}.reports-modal-card{padding:18px}.reports-modal-actions,.reports-modal-header{flex-direction:column}.reports-modal-actions{align-items:stretch}.reports-modal-btn{width:100%}}.schedule-layout{display:flex}.schedule-layout,.schedule-main{background:#98cddd;min-height:100vh}.schedule-main{flex:1 1;margin-left:260px;min-width:0}.schedule-body{padding:12px 14px 18px}.schedule-panel{background:#edefff6b;border:1px solid #c2c7f3b8;border-radius:18px;box-shadow:0 18px 35px #5c62a81f;padding:16px}.schedule-top{align-items:center;display:flex;gap:16px;justify-content:space-between}.schedule-top h2{color:#1f2f45;font-size:22px;font-weight:700;margin:0}.schedule-top p{color:#5b6f8d;font-size:13px;margin:4px 0 0}.schedule-actions,.schedule-tabs{display:flex;flex-wrap:wrap;gap:10px}.schedule-tabs{margin-top:12px}.schedule-tab{background:#f7f9ff;border:1px solid #c3d2f0;border-radius:12px;color:#1f2f45;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px}.schedule-tab.active{background:#2f6bff;border-color:#2f6bff;box-shadow:0 10px 18px #2f6bff47;color:#fff}.schedule-btn{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;height:34px;padding:0 14px}.schedule-btn.add{background:linear-gradient(180deg,#2f6bff,#244fce);box-shadow:0 8px 16px #2856be47}.schedule-btn.export{background:#0b1e3d;box-shadow:0 8px 16px #09122733}.schedule-filters{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.schedule-chip{align-items:center;background:#ffffff6b;border:1px solid #c2c7f3b8;border-radius:10px;color:#2c385d;cursor:pointer;display:inline-flex;font-size:13px;gap:6px;padding:6px 10px}.schedule-date-input{background:#fff9;border:1px solid #c2c7f3b8;border-radius:8px;font-size:12px;padding:6px 8px;width:135px}.schedule-chip.active{background:#ced2f861;border-color:#c2c7f3e6;color:#42507b}.schedule-icons{display:flex;gap:8px;margin-left:auto}.icon-btn{align-items:center;background:#ffffff6b;border-radius:6px;color:#2c385d;cursor:pointer;display:inline-flex;height:30px;justify-content:center;width:30px}.icon-btn,.schedule-table{border:1px solid #c2c7f3b8}.schedule-table{border-radius:14px;margin-top:14px;overflow:hidden}.schedule-header{background:#ced2f861;color:#42507b;display:grid;font-size:13px;font-weight:600;grid-template-columns:1.4fr 1fr 1fr .8fr;padding:10px 14px}.schedule-list{background:#edefff38;display:flex;flex-direction:column;gap:10px;padding:12px}.schedule-row{grid-gap:12px;align-items:center;background:#ffffff38;border:1px solid #c5cbf58c;border-radius:12px;display:grid;gap:12px;grid-template-columns:1.4fr 1fr 1fr .8fr;padding:12px 14px}.schedule-shift strong{color:#1f2f45;display:block;font-size:15px;margin-bottom:4px}.schedule-time{color:#5d6c86;display:flex;flex-direction:column;font-size:12px;line-height:1.2;margin-top:4px}.schedule-days{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.day-badge{align-items:center;background:#ced2f861;border-radius:50%;color:#42507b;display:inline-flex;font-size:11px;font-weight:600;height:22px;justify-content:center;letter-spacing:.3px;line-height:22px;text-align:center;width:28px}.schedule-timing span{color:#2e3f5c;display:block;font-size:13px}.schedule-text{color:#6a7c97;font-size:12px;letter-spacing:.4px;margin-top:6px;word-spacing:8px}.schedule-guard{display:flex;flex-direction:column;gap:10px}.schedule-avatar{align-items:center;background:linear-gradient(180deg,#243b6a,#1a2b4a);border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:34px;justify-content:center;width:34px}.guard-name{color:#1f2f45;font-size:13px;font-weight:600}.guard-id{color:#687b97;font-size:12px}.guard-row{align-items:center;display:flex;gap:10px}.schedule-row-actions{display:flex;flex-direction:column;gap:10px}.action-btn{align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:6px 10px}.action-btn.edit{background:#2f6bff}.action-btn.delete{background:#faf9f9}.action-row{display:flex;gap:8px}.addshift-modal{align-items:center;background:#0c122073;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:2000}.addshift-modal--full{align-items:stretch;height:calc(100% - 72px);justify-content:stretch;left:260px;padding:0;top:72px;width:calc(100% - 260px)}.addshift-modal--full .addshift-card{border-radius:0;box-shadow:none;height:100%;overflow:auto;width:100%}.addshift-card{background:#eef4ff;border:1px solid #aac3ebe6;border-radius:18px;box-shadow:0 22px 44px #121a2c38;box-sizing:border-box;display:flex;flex-direction:column;gap:14px;padding:20px;width:min(96vw,760px)}.addshift-card--wide{box-sizing:border-box;width:min(94vw,560px)}.guard-detail-card{width:min(92vw,460px)}.guard-detail-block{color:#1f2f45;display:flex;flex-direction:column;font-size:13px;gap:2px}.guard-detail-text{color:#4c5c78}.guard-detail-loading{color:#5b6f8d;font-size:13px}.addshift-header{align-items:center;display:flex;justify-content:space-between}.addshift-header h3{color:#1f2f45;font-size:17px;margin:0}.addshift-close{align-items:center;background:#e6eeff;border:none;border-radius:9px;color:#2b3f5c;cursor:pointer;display:inline-flex;height:28px;justify-content:center;width:28px}.addshift-group label{color:#5b6f8d;display:block;font-size:12px;margin-bottom:6px}.addshift-select{align-items:center;background:#fff;border:1px solid #d7e0f2;border-radius:8px;color:#1f2f45;display:flex;font-size:13px;justify-content:space-between;padding:8px 10px}.addshift-days{display:flex;flex-wrap:wrap;gap:6px}.day-pill{align-items:center;background:#f7f9ff;border:1px solid #d7e0f2;border-radius:6px;color:#6b7a92;cursor:pointer;display:inline-flex;font-size:11px;height:22px;justify-content:center;width:26px}.day-pill.active{background:#2f6bff;border-color:#2f6bff;color:#fff}.addshift-date-range,.addshift-time{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.addshift-date-range{align-items:start;box-sizing:border-box;width:100%}.addshift-date-field{display:flex;flex-direction:column;gap:4px;min-width:0}.addshift-sub-label{color:#6a7c97;font-size:11px;line-height:1;margin:0}.form-hint{color:#6a7c97;display:inline-block;font-size:11px;margin-top:6px}.addshift-guards{display:flex;flex-direction:column;gap:8px}.guard-chip{align-items:center;background:#fff;border:1px solid #d7e0f2;border-radius:8px;color:#1f2f45;cursor:pointer;display:flex;font-size:12px;gap:8px;padding:6px 10px}.guard-chip.active{background:#eaf1ff;border-color:#2f6bff}.chip-avatar{align-items:center;background:#1f2f45;border-radius:50%;color:#fff;display:inline-flex;font-size:10px;font-weight:700;height:20px;justify-content:center;width:20px}.addshift-input{background:#fff;border:1px solid #c3d2f0;border-radius:10px;box-sizing:border-box;font-size:13px;padding:10px 12px;width:100%}.addshift-input.with-icon{align-items:center;color:#5b6f8d;display:flex;justify-content:space-between;padding:8px 10px 8px 12px}.dropdown-toggle{align-items:center;background:#0000;border:none;color:#5b6f8d;cursor:pointer;display:inline-flex;justify-content:center;padding:2px}.addshift-input-field{background:#0000;border:none;color:#1f2f45;font-size:13px;outline:none;width:100%}.addshift-input-field::placeholder{color:#6a7c97}.addshift-toggle{display:inline-flex;gap:10px}.toggle-btn{background:#f7f9ff;border:1px solid #c3d2f0;border-radius:10px;color:#1f2f45;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px}.toggle-btn.active{background:#2f6bff;border-color:#2f6bff;color:#fff}.addshift-guard-search{position:relative}.guard-search-results{background:#fff;border:1px solid #d7e0f2;border-radius:10px;display:flex;flex-direction:column;gap:6px;margin-top:8px;max-height:180px;overflow-y:auto;padding:6px}.guard-result{align-items:center;background:#f7f9ff;border:none;border-radius:8px;color:#1f2f45;cursor:pointer;display:flex;font-size:12px;gap:8px;padding:6px 8px;text-align:left}.guard-result:hover{background:#eaf1ff}.guard-result.empty{background:#0000;color:#6a7c97;cursor:default}.shift-select-grid{display:flex;flex-direction:column;gap:12px;margin-top:10px}.shift-group-title{color:#5b6f8d;font-size:12px;font-weight:600;margin-bottom:6px}.shift-chip-row{display:flex;flex-wrap:wrap;gap:8px}.shift-chip{background:#f7f9ff;border:1px solid #c3d2f0;border-radius:10px;color:#1f2f45;cursor:pointer;display:flex;flex-direction:column;font-size:12px;gap:4px;min-width:120px;padding:8px 10px;text-align:left}.shift-chip small{color:#6a7c97;font-size:11px}.shift-chip.active{background:#eaf1ff;border-color:#2f6bff;color:#1f2f45}.selected-guards{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.selected-guards--scroll{background:#fff;border:1px solid #d7e0f2;border-radius:10px;height:52px;min-height:44px;overflow-y:auto;padding:8px 10px 8px 8px}.selected-chip{align-items:center;background:#eaf1ff;border:1px solid #c3d2f0;border-radius:12px;color:#1f2f45;display:inline-flex;font-size:9.5px;gap:3px;justify-content:space-between;max-width:200px;min-width:120px;overflow:hidden;padding:4px 8px}.selected-chip span:not(.chip-avatar){flex:1 1 auto;min-width:0;overflow:hidden;padding-right:2px;text-overflow:ellipsis;white-space:nowrap}.chip-remove{align-items:center;background:#1f2f45;border:none;border-radius:50%;color:#fff;cursor:pointer;display:inline-flex;flex:0 0 auto;height:16px;justify-content:center;width:16px}.addshift-actions{display:flex;justify-content:flex-end}.addshift-actions--spread{align-items:center;gap:10px;justify-content:space-between}.manage-results{background:#f7faff;border:1px solid #d7e0f2;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:8px}.manage-filter-row{grid-gap:10px;align-items:end;display:grid;gap:10px;grid-template-columns:1.1fr .8fr .9fr auto}.manage-filter-field label{color:#5b6f8d;display:block;font-size:12px;margin-bottom:6px}.manage-filter-action{align-items:end;display:flex}.submit-btn.filter{border-radius:12px;box-shadow:none;font-size:12px;padding:8px 16px}.manage-results-header{color:#3a4b66;font-weight:600;padding:4px 6px}.manage-results-header,.manage-row{grid-gap:8px;display:grid;font-size:12px;gap:8px;grid-template-columns:1.2fr 1fr 1fr .8fr}.manage-row{background:#fff;border:1px solid #d7e0f2;border-radius:10px;color:#1f2f45;cursor:pointer;padding:8px 10px;text-align:left}.manage-row:hover{background:#eaf1ff}.manage-pagination{align-items:center;color:#3a4b66;display:flex;font-size:12px;justify-content:space-between;margin-top:8px}.submit-btn{background:linear-gradient(180deg,#2f6bff,#1f52d6);border:none;border-radius:18px;box-shadow:0 10px 18px #2f6bff47;color:#fff;cursor:pointer;font-size:13px;padding:8px 18px}.submit-btn.delete{background:#1f2f45;box-shadow:none}.submit-btn.cancel{background:#e6eeff;box-shadow:none;color:#1f2f45}.progress-card small{color:#5b6f8d;font-size:12px}@media (max-width:1100px){.schedule-header,.schedule-row{grid-template-columns:1.2fr 1fr 1fr}.schedule-header span:last-child,.schedule-row-actions{grid-column:span 3}}@media (max-width:900px){.schedule-main{margin-left:0}.schedule-top{align-items:flex-start;flex-direction:column}}@media (max-width:640px){.schedule-header,.schedule-row{grid-template-columns:1fr}.schedule-list{padding:10px}}.settings-layout{display:flex}.settings-layout,.settings-main{background:#98cddd;min-height:100vh}.settings-main{flex:1 1;margin-left:260px;min-width:0}.settings-body{display:flex;justify-content:center;padding:32px 18px 40px}.settings-card{background:#fff;border:1px solid #d6e0f4e6;border-radius:16px;box-shadow:0 18px 32px #233a601f;padding:22px 24px;width:min(100%,980px)}.settings-topbar{align-items:center;background:#f1f5f7;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;margin:-22px -24px 16px;padding:10px 16px}.settings-topbar h2{color:#1f2f45;font-size:20px;margin:0 18% 0 0}.settings-back,.settings-bell{align-items:center;background:#f5f8ff;border:1px solid #e3ebfb;border-radius:8px;color:#2b3f5c;cursor:pointer;display:inline-flex;height:30px;justify-content:center;margin-right:10%;width:30px}.profile-hero{grid-gap:18px;align-items:center;display:grid;gap:18px;grid-template-columns:100px 1fr;margin-bottom:18px}.profile-avatar{align-items:center;background:linear-gradient(180deg,#cfdcff,#b8c9f2);border:2px solid #d4e2ff;border-radius:50%;color:#1f2f45;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:100px;justify-content:center;overflow:hidden;padding:0;width:100px}.profile-avatar:disabled{cursor:default;opacity:.8}.profile-avatar img{height:100%;object-fit:cover;width:100%}.profile-info h3{color:#1f2f45;font-size:20px;margin:0}.profile-info p{color:#5e718c;font-size:14px;margin:4px 0 8px}.profile-edit{align-items:center;background:#2f6bff;border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;gap:6px;justify-content:center;padding:6px 14px;text-decoration:none}.profile-photo-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.profile-delete{background:#fff;border:1px solid #f2d7d7;border-radius:10px;color:#c81e1e;cursor:pointer;font-size:12px;padding:6px 12px}.profile-delete:disabled,.profile-edit[disabled]{cursor:not-allowed;opacity:.6}.photo-modal{align-items:center;background:#0c122073;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:2400}.photo-modal-card{background:#fff;border-radius:16px;box-shadow:0 20px 40px #121a2c38;display:flex;flex-direction:column;gap:12px;padding:16px;width:min(92vw,520px)}.photo-modal-header{align-items:center;display:flex;justify-content:space-between}.photo-modal-header h3{color:#1f2f45;font-size:16px;margin:0}.photo-close{background:#eef2ff;border:none;border-radius:8px;color:#2b3f5c;cursor:pointer;font-size:18px;height:28px;line-height:1;width:28px}.photo-preview{background:#f6f8ff;border-radius:12px;max-height:60vh;object-fit:contain;width:100%}.photo-empty{color:#6a7c97;font-size:13px;padding:16px 0;text-align:center}.photo-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.cropper-wrap{background:#f6f8ff;border-radius:12px;height:280px;overflow:hidden;position:relative;width:100%}.cropper-controls{align-items:center;display:flex;gap:12px}.cropper-controls input[type=range]{flex:1 1}.cropper-label{color:#5b6f8d;font-size:12px}.profile-fields{grid-gap:14px 20px;display:grid;gap:14px 20px;grid-template-columns:repeat(2,minmax(0,1fr))}.profile-field{grid-gap:12px;align-items:flex-start;display:grid;gap:12px;grid-template-columns:30px 1fr}.field-icon{align-items:center;background:#f1f5ff;border:1px solid #e3ebfb;border-radius:8px;color:#2b3f5c;display:inline-flex;height:30px;justify-content:center;width:30px}.profile-field label{color:#6d7f99;display:block;font-size:13px;margin-bottom:4px}.profile-field p{color:#1f2f45;font-size:15px;margin:0}.language-row{display:flex;flex-direction:column;gap:4px;margin-top:0;padding-top:0}.language-shortcut-hint{color:#6d7f99;font-size:12px}.language-select{align-items:center;color:#1f2f45;cursor:pointer;display:inline-flex;font-size:13px;gap:10px;justify-content:space-between;max-width:230px;padding:8px 12px;width:100%}.language-menu,.language-select{background:#fff;border:1px solid #d7e0f2;border-radius:8px}.language-menu{box-shadow:0 10px 18px #1e2d461a;margin-top:6px;overflow:hidden;width:160px}.language-menu button{background:#0000;border:none;color:#1f2f45;cursor:pointer;font-size:13px;padding:8px 10px;text-align:left;width:100%}.language-menu button:hover{background:#f2f6ff}.settings-logout{background:#d81e18;border:1px solid #f2d7d7;border-radius:12px;color:#fff;cursor:pointer;font-weight:600;margin-top:16px;max-width:320px;padding:12px 14px;width:100%}@media (max-width:720px){.profile-fields{grid-template-columns:1fr}.language-row{grid-column:auto}}.settings-modal{align-items:center;background:#0c122066;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:2200}.settings-modal-card{background:#fff;border-radius:14px;box-shadow:0 20px 40px #121a2c38;padding:18px;text-align:center;width:320px}.settings-modal-card h3{color:#1f2f45;font-size:16px;margin:0 0 6px}.settings-modal-card p{color:#5b6f8d;font-size:13px;margin:0}.settings-modal-actions{display:flex;gap:10px;justify-content:center;margin-top:14px}.modal-btn{border:none;border-radius:10px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px}.modal-btn.cancel{background:#f1f5ff;color:#1f2f45}.modal-btn.confirm{background:#2f6bff;color:#fff}.progress-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a142859;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.progress-card{align-items:center;background:#ffffffeb;border-radius:18px;box-shadow:0 18px 50px #00000040;color:#163a72;display:flex;flex-direction:column;font-weight:600;gap:10px;min-width:240px;padding:28px 34px}.progress-card span{color:#1e56d8;font-size:20px;font-weight:700}.spinner{animation:spin .9s linear infinite;border:5px solid #1e56d833;border-radius:50%;border-top-color:#1e56d8;height:56px;width:56px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:900px){.settings-main{margin-left:0}}@media (max-width:600px){.settings-card{max-width:100%}}:root{--app-sidebar-width:260px;--app-header-height:72px}html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;min-height:100%;scrollbar-gutter:stable}body,body.page-transition-active{overflow:hidden}#root,.page-transition-shell{height:100%;min-height:100vh}.page-transition-shell{position:relative}.page-transition-content{height:100%;min-height:100vh;transition:filter .24s ease,opacity .24s ease,transform .24s ease}.attendance-layout,.dashboard-layout,.elt-layout,.layout,.reports-layout,.schedule-layout,.settings-layout,.violation-layout{height:100vh;min-height:100vh;overflow:hidden}.attendance-main,.content,.elt-main,.main-content,.reports-main,.schedule-main,.settings-main,.violation-main{box-sizing:border-box;height:100vh;min-width:0;overflow-x:hidden;overflow-y:auto;padding-top:72px;padding-top:var(--app-header-height);scrollbar-gutter:stable}.page-transition-shell.is-transitioning .page-transition-content{filter:blur(6px);opacity:.82;transform:scale(.995)}.page-transition-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a142859;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.page-transition-card{align-items:center;background:#ffffffeb;border-radius:18px;box-shadow:0 18px 50px #00000040;color:#163a72;display:flex;flex-direction:column;font-weight:600;gap:10px;min-width:240px;padding:28px 34px}.page-transition-card p{margin:0}.page-transition-card span{color:#1e56d8;font-size:20px;font-weight:700}.page-transition-spinner{animation:page-transition-spin .9s linear infinite;border:5px solid #1e56d833;border-radius:50%;border-top-color:#1e56d8;height:56px;width:56px}@keyframes page-transition-spin{to{transform:rotate(1turn)}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*,:after,:before{box-sizing:border-box}canvas,iframe,img,svg,video{max-width:100%}@media (max-width:1200px){:root{--app-sidebar-width:220px}.sidebar{flex:0 0 220px;width:220px}.attendance-main,.content,.elt-main,.main-content,.reports-main,.schedule-main,.settings-main,.violation-main{margin-left:220px!important;width:calc(100% - 220px)!important}}@media (max-width:992px){:root{--app-sidebar-width:82px}.sidebar{flex:0 0 82px;height:100vh;left:0;overflow-y:auto;position:fixed;top:0;width:82px;z-index:120}.sidebar .logo{font-size:0;min-height:54px;padding:12px 10px}.sidebar .logo:after{color:#eef5ff;content:"GT";display:block;font-size:20px;font-weight:800;text-align:center}.sidebar .logo-accent{display:none}.sidebar ul{display:block}.sidebar .nav-item{font-size:0;gap:0;justify-content:center;padding:12px 0}.sidebar .nav-item svg{height:20px;width:20px}.sidebar .nav-item.active{border-left-width:4px;padding-left:0}.sidebar .logout{border-radius:14px;font-size:0;gap:0;height:48px;justify-content:center;margin:auto auto 14px;padding:0;width:48px}.sidebar .logout svg{margin:0}.attendance-main,.content,.elt-main,.main-content,.reports-main,.schedule-main,.settings-main,.violation-main{height:auto!important;margin-left:82px!important;min-height:calc(100vh - 84px);width:calc(100% - 82px)!important}.attendance-body,.content-wrap,.elt-body,.page-body,.reports-body,.schedule-body,.settings-body,.violation-body{padding:10px!important}.header{flex-wrap:wrap;gap:10px;padding:10px 12px!important}.header-title{order:3;width:100%}.guards-table,.patrol-table{display:block;overflow-x:auto;white-space:nowrap;width:100%}.attendance-table-body,.schedule-table,.violation-table-body{overflow-x:auto}.addshift-card,.elt-modal-card,.logout-box,.modal-card,.reports-panel,.settings-card,.trip-image-modal-card,.trip-modal-card{max-height:90vh;overflow-y:auto;width:min(94vw,900px)!important}}@media (max-width:640px){:root{--app-sidebar-width:70px}.sidebar{flex-basis:70px;width:70px}.sidebar .logo:after{font-size:18px}.sidebar .nav-item svg{height:18px;width:18px}.sidebar .logout{height:42px;width:42px}.attendance-main,.content,.elt-main,.main-content,.reports-main,.schedule-main,.settings-main,.violation-main{margin-left:70px!important;width:calc(100% - 70px)!important}.dashboard-grid,.reports-grid,.schedule-table-header,.schedule-table-row,.stat-cards,.summary-grid{grid-template-columns:1fr!important}.addshift-modal,.elt-modal-backdrop,.logout-modal,.modal-overlay,.settings-modal,.trip-image-modal-overlay,.trip-modal-overlay{padding:10px!important}.elt-modal-card,.modal-card,.photo-modal-card,.trip-image-modal-card,.trip-modal-card{border-radius:14px!important}}
/*# sourceMappingURL=main.2661534d.css.map*/