:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.login-bg{min-height:100vh;min-width:100vw;background:linear-gradient(#0006,#0006),url(/banner_ukm.png) center/cover no-repeat;display:flex;align-items:center;justify-content:center}.login-password-wrapper{position:relative}.login-row{display:flex;align-items:center;margin-bottom:22px;font-size:14px;gap:8px}.login-remember{margin-right:auto;-webkit-user-select:none;user-select:none;margin-left:4px;color:#222}.login-link{color:#2563eb;text-decoration:none;font-size:14px;margin-left:8px}.login-error{color:red;margin-bottom:14px;font-size:14px}html,body{height:100%;min-height:100vh;background:#f7f8fa;margin:0;padding:0;box-sizing:border-box}#root{min-height:100vh;height:100%;background:#f7f8fa}.admin-dashboard-layout{display:flex;min-height:100vh;width:100vw;background:#f5f6fa}.admin-dashboard-sidebar{width:260px;background:#fff;border-top-left-radius:16px;border-bottom-left-radius:16px;box-shadow:2px 0 16px #0000000f;padding:32px 24px;display:flex;flex-direction:column;gap:40px}.sidebar-section{font-weight:700;color:#000;margin-bottom:8px}.admin-dashboard-main{flex:1;padding:32px 40px;display:flex;flex-direction:column}.admin-dashboard-pagination{margin-top:24px;text-align:right}.admin-dashboard-main{padding:16px 20px}.admin-dashboard-sidebar{width:220px;padding:24px 16px}} @media (max-width: 600px){.admin-dashboard-layout{flex-direction:column}.admin-dashboard-sidebar{width:100%;flex-direction:row;align-items:center;justify-content:space-between;padding:12px 8px;border-radius:0 0 16px 16px;box-shadow:0 2px 8px #0000000f;gap:0}.sidebar-logo{font-size:1.3rem;margin-bottom:0}.sidebar-nav{flex-direction:row;gap:10px}.sidebar-section,.sidebar-link{font-size:.95rem;padding:0 4px}.admin-dashboard-main{padding:8px 2vw}.admin-dashboard-header{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:12px}.admin-dashboard-title{font-size:1.1rem;margin-bottom:2px}.admin-dashboard-desc{font-size:.95rem;margin-bottom:8px}.admin-dashboard-list{gap:8px;margin-top:12px}.admin-dashboard-row{flex-direction:column;align-items:flex-start;gap:8px;padding:10px 8px}.admin-dashboard-avatar{width:36px;height:36px;font-size:18px;margin-bottom:4px}.admin-dashboard-name{font-size:1rem}.admin-dashboard-email{font-size:.95rem}.admin-dashboard-role,.admin-dashboard-roleid,.admin-dashboard-created{min-width:unset;font-size:.95rem}.admin-dashboard-detail-btn{width:100%;margin:4px 0 0;font-size:.95rem}.admin-dashboard-pagination{margin-top:12px;text-align:center;width:100%;overflow-x:visible}.ant-pagination{font-size:.95rem;flex-wrap:wrap;justify-content:center;width:100%}.ant-pagination-item,.ant-pagination-prev,.ant-pagination-next{min-width:28px;height:28px;line-height:28px;font-size:.95rem;margin:0 2px;padding:0 4px}.ant-pagination-item-active{background:#4b3b78!important;color:#fff!important;border-radius:6px;border:none}.ant-pagination-prev,.ant-pagination-next{font-weight:600}}.staff-dashboard-container{min-height:100vh;min-width:100vw;display:flex;flex-direction:column;align-items:center;justify-content:center;background:url(/banner_ukm.png) center/cover no-repeat}.staff-dashboard-button{border-radius:32px;font-weight:600;font-size:22px;padding:16px 48px;box-shadow:0 4px 24px #2979ff1a;background:linear-gradient(90deg,#2979ff,#00c6ff);border:none}.edit-user-container{max-width:700px;margin:0 auto;padding:24px}.edit-user-header{background:#f7f8fa;border-radius:12px;padding:24px;display:flex;align-items:center;gap:24px;margin-bottom:24px}.edit-user-avatar{width:64px;height:64px;border-radius:50%;background:#222;color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700}.edit-user-info{flex:1}.edit-user-name{font-weight:600;font-size:20px;color:#000}.edit-user-email{color:#888}.edit-user-tag{font-weight:600;border-radius:16px;font-size:16px}.edit-user-roleid{font-weight:600;font-size:16px}.edit-user-form-section{background:#f5f6fa;border-radius:12px;padding:24px;margin-bottom:24px}.edit-user-form-title{font-weight:600;font-size:18px;margin-bottom:16px}.edit-user-save-btn{float:right;border-radius:8px;font-weight:600;min-width:120px}.login-bg{min-height:100vh;min-width:100vw;background:linear-gradient(#0006,#0006),url(/banner_ukm.png) center/cover no-repeat;display:flex;align-items:center;justify-content:center}.login-card{background:#fff;border-radius:16px;box-shadow:0 4px 24px #0000002e;padding:48px 36px 36px;min-width:380px;max-width:90vw;display:flex;flex-direction:column;align-items:stretch}.login-title{font-weight:700;margin-bottom:28px;text-align:left;font-size:2rem;color:#222}.login-label{font-weight:500;margin-bottom:6px;font-size:15px;text-align:left;display:block;color:#333}.login-input{margin-bottom:22px;width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:16px;background:#e9e9e9;color:#222}.login-password-wrapper{position:relative;margin-bottom:22px}.login-password-wrapper .login-input{margin-bottom:0}.login-show-password{position:absolute;right:14px;top:50%;transform:translateY(-50%);cursor:pointer;color:#888;font-size:20px}.login-btn{width:100%;padding:14px 0;background:#2563eb;color:#fff;border:none;border-radius:6px;font-weight:600;font-size:16px;margin-top:10px;cursor:pointer;transition:background .2s}.login-btn:hover{background:#1d4ed8}.create-account-link{color:#2563eb;text-decoration:none;font-weight:600;font-size:16px;transition:color .2s}.create-account-link:hover{color:#1d4ed8;text-decoration:underline}@media (max-width: 500px){.login-card{min-width:90vw;padding:24px 8px}}:root{--input-height: 48px;--input-padding-vertical: 0;--input-padding-horizontal: 16px;--border-radius: 8px;--border-color: #d9d9d9;--bg-color: #f5f5f5;--focus-color: #40a9ff;--focus-shadow: rgba(24, 144, 255, .2)}.login-input,select.login-input{width:100%;height:var(--input-height);padding:var(--input-padding-vertical) var(--input-padding-horizontal);font-size:16px;color:#333;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--border-radius);box-sizing:border-box;transition:border-color .2s,box-shadow .2s;outline:none;margin-bottom:22px}.login-input:focus,select.login-input:focus{border-color:var(--focus-color);box-shadow:0 0 0 2px var(--focus-shadow)}.disabled{background-color:#f5f5f5!important;color:#666!important;cursor:not-allowed!important}.phone-input-wrapper{display:flex;align-items:stretch;width:100%;margin-bottom:22px;box-sizing:border-box}.phone-prefix{flex:none;display:flex;align-items:center;justify-content:center;height:var(--input-height);padding:var(--input-padding-vertical) 12px;background-color:var(--bg-color);border:1px solid var(--border-color);border-right:none;border-radius:var(--border-radius) 0 0 var(--border-radius);font-size:16px;color:#595959;pointer-events:none;box-sizing:border-box}.phone-input{flex:1;height:var(--input-height);padding:var(--input-padding-vertical) var(--input-padding-horizontal);font-size:16px;color:#333;background-color:var(--bg-color);border:1px solid var(--border-color);border-left:none;border-radius:0 var(--border-radius) var(--border-radius) 0;box-sizing:border-box;transition:border-color .2s,box-shadow .2s;outline:none}.phone-input-wrapper:focus-within .phone-prefix,.phone-input-wrapper:focus-within .phone-input{border-color:var(--focus-color);box-shadow:0 0 0 2px var(--focus-shadow)}.admin-dashboard-layout{display:flex;min-height:100vh;background:#f5f6fa}.admin-dashboard-sidebar{width:280px;background:#fff;padding:24px;display:flex;flex-direction:column;border-top-left-radius:16px;border-bottom-left-radius:16px;box-shadow:2px 0 16px #0000000f}.sidebar-logo{margin-bottom:48px;font-size:24px;font-weight:700;line-height:1.2}.logo-mat{color:#ff4d4d}.logo-wisma{color:#bdbdbd}.sidebar-section{color:#000;margin-bottom:12px;font-size:16px;font-weight:600}.sidebar-nav{display:flex;flex-direction:column;gap:8px}.sidebar-link{color:#000;font-weight:500;cursor:pointer;padding-left:8px;transition:color .2s ease}.admin-dashboard-sidebar .ant-btn-link{color:#000!important;font-weight:500;transition:color .2s ease}.admin-dashboard-sidebar .ant-btn-link:hover{color:#2979ff!important}.admin-dashboard-main{flex:1;padding:32px 40px;display:flex;flex-direction:column;background:#f5f6fa}.admin-dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.admin-dashboard-title{font-size:24px;font-weight:600;margin-bottom:8px;color:#000}.admin-dashboard-desc{color:#666;margin-bottom:24px}.admin-dashboard-container{width:100%;max-width:flex;margin:0;background:#fff;border-radius:16px;padding:24px;box-sizing:border-box;box-shadow:0 4px 24px #00000014}.admin-dashboard-actions{display:flex;align-items:center}.admin-dashboard-list{flex:1;display:flex;flex-direction:column;gap:16px;overflow-y:auto;width:100%;margin-top:24px}.admin-dashboard-row{display:flex;align-items:center;background:#f7f8fa;border-radius:12px;padding:16px 24px;gap:24px;width:100%;box-shadow:0 2px 8px #00000008}.admin-dashboard-avatar{width:48px;height:48px;background:#222;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;font-weight:700}.admin-dashboard-info{flex:1}.admin-dashboard-name{font-weight:600;font-size:16px;color:#000}.admin-dashboard-email{color:#000;font-size:14px}.admin-dashboard-role{min-width:80px;color:#000}.admin-dashboard-roleid{min-width:100px;font-weight:600;color:#000}.admin-dashboard-created{min-width:120px;color:#000}.admin-dashboard-detail-btn{color:#fff;background:#bdbdbd;border:none;border-radius:8px;font-weight:600;margin-left:12px}@media (max-width: 1200px){.admin-dashboard-main{padding:16px 20px}.admin-dashboard-sidebar{width:220px;padding:24px 16px}}.search-input{width:300px;border-radius:4px;border:1px solid #d9d9d9;padding:8px 12px}.filter-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #d9d9d9;border-radius:4px;cursor:pointer}.user-details-modal{padding:12px 0}.detail-item{display:flex;margin-bottom:16px;align-items:center}.detail-item label{width:100px;color:#666;font-weight:500}.detail-item span{flex:1;color:#000;font-weight:600}.ant-modal-content{border-radius:16px;padding:24px}.ant-modal-header{margin-bottom:24px}.ant-modal-title{font-weight:600;font-size:20px}.ant-modal-footer{margin-top:24px;padding-top:24px;border-top:1px solid #f0f0f0}.incident-list-layout{display:flex;min-height:100vh;width:100vw;background:#f5f6fa}.incident-list-sidebar{width:260px;background:#fff;border-top-left-radius:16px;border-bottom-left-radius:16px;box-shadow:2px 0 16px #0000000f;padding:32px 24px;display:flex;flex-direction:column;gap:40px}.sidebar-logo{font-size:2.2rem;font-weight:900;letter-spacing:1px;line-height:1.1}.logo-sela{color:#23d6f5}.logo-mat{color:#ff4d4f}.logo-wisma{color:#bdbdbd;font-size:1.1rem;letter-spacing:2px}.sidebar-nav{display:flex;flex-direction:column;gap:18px}.sidebar-section{font-weight:700;color:#222;margin-bottom:8px}.sidebar-link{color:#888;font-weight:500;cursor:pointer;padding-left:8px}.sidebar-link:hover{color:#2979ff}.incident-list-main{flex:1;padding:32px 40px;display:flex;flex-direction:column}.incident-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.header-actions{display:flex;align-items:center;gap:18px}.header-bell{font-size:1.6rem;color:#888;cursor:pointer}.header-user{background:#222;color:#fff;border-radius:12px;padding:8px 18px;display:flex;align-items:center;gap:8px;font-weight:600}.incident-list-container{width:100%;margin:0;background:#fff;border-radius:16px;padding:24px;min-height:600px;box-shadow:0 4px 24px #00000014}.incident-list-title{font-size:24px;font-weight:600;margin-bottom:8px}.incident-list-desc{color:#666;margin-bottom:24px}.incident-list-location-btn{color:#fff;background:#23d6f5;border:none;border-radius:8px;font-weight:600}.incident-list-evidence-btn{color:#fff;background:#2979ff;border:none;border-radius:8px;font-weight:600}.incident-list-detail-btn{color:#fff;background:#bdbdbd;border:none;border-radius:8px;font-weight:600}.incident-list-pagination{margin-top:24px;text-align:right}.incident-list-table{background:transparent;border-radius:12px;overflow:hidden}.incident-list-report-id{font-weight:600}@media (max-width: 1200px){.incident-list-main{padding:24px}}@media (max-width: 992px){.incident-list-layout{flex-direction:column}.incident-list-sidebar{width:100%;height:auto;border-radius:0;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 24px;gap:20px}.sidebar-nav{flex-direction:row}.sidebar-logo{font-size:1.8rem}}@media (max-width: 768px){.incident-list-header{flex-direction:column;align-items:flex-start;gap:16px}.incident-list-main,.incident-list-container{padding:16px}.ant-row{flex-direction:column}.ant-col{width:100%!important;max-width:100%!important}}@media (max-width: 576px){.incident-list-sidebar{flex-direction:column;align-items:flex-start}.header-actions{flex-wrap:wrap;gap:12px}}.ant-table-wrapper{overflow-x:auto}.live-status-row{display:flex;justify-content:space-between;align-items:center;max-width:500px;width:100%;padding:8px 0;white-space:nowrap}.live-status-row>span,.live-status-row>div{flex-shrink:1;min-width:0}.custom-live-patrol-status{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:24px;margin-bottom:24px;max-width:520px;width:100%;box-sizing:border-box}.custom-live-patrol-status h2{margin:0 0 16px;font-size:1.3rem;font-weight:700;color:#222}.custom-live-patrol-list{display:flex;flex-direction:column;gap:12px}.custom-live-patrol-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f0f0f0;flex-wrap:nowrap;gap:8px}.custom-live-patrol-row:last-child{border-bottom:none}.custom-patrol-id{font-weight:600;color:#333;max-width:60vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.custom-status{padding:4px 16px;border-radius:16px;font-weight:700;font-size:1rem;letter-spacing:1px;margin-left:8px;margin-top:6px;margin-bottom:6px;flex-shrink:0}.custom-status.online{background:#e6ffed;color:#389e0d;border:1px solid #b7eb8f}.custom-status.offline{background:#f5f5f5;color:#888;border:1px solid #d9d9d9}@media (max-width: 700px){.custom-live-patrol-status{padding:12px;max-width:100%}.custom-live-patrol-status h2{font-size:1.1rem}.custom-live-patrol-row{flex-direction:row;align-items:center;gap:4px}.custom-status{font-size:.95rem;margin-left:0}.custom-patrol-id{max-width:60vw;font-size:.97rem;word-break:break-all}}@media (max-width: 480px){.custom-live-patrol-status{padding:8px;border-radius:8px}.custom-live-patrol-status h2{font-size:1rem}.custom-status{font-size:.9rem;padding:3px 10px}.custom-patrol-id{font-size:.93rem}}.incident-list-main,.incident-list-container{max-width:100vw;overflow-x:hidden}.custom-category-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000a;margin-bottom:24px;overflow:hidden}.custom-category-table th,.custom-category-table td{padding:12px 18px;text-align:left}.custom-category-table th{background:#f5f7fa;color:#222;font-size:1.08rem;font-weight:700;border-bottom:2px solid #eaeaea}.custom-category-table tr:not(:last-child) td{border-bottom:1px solid #f0f0f0}.category-name{font-weight:600;color:#2a2a2a}.category-count{color:#444;font-size:1.08rem}.category-percent{color:#007b83;font-weight:600}@media (max-width: 700px){.custom-category-table th,.custom-category-table td{padding:8px 6px;font-size:.97rem}}.forgot-password-bg{min-height:100vh;min-width:100vw;background:linear-gradient(#0006,#0006),url(/banner_ukm.png) center/cover no-repeat;display:flex;align-items:center;justify-content:center}.forgot-password-card{background:#fff;border-radius:16px;box-shadow:0 4px 24px #0000002e;padding:48px 36px 36px;min-width:380px;max-width:90vw;display:flex;flex-direction:column;align-items:stretch}.forgot-password-title{font-weight:700;margin-bottom:28px;text-align:left;font-size:2rem;color:#222}.forgot-password-label{font-weight:500;margin-bottom:6px;font-size:15px;text-align:left;display:block;color:#333}.forgot-password-input{margin-bottom:22px;width:100%;padding:12px 0;border:1px solid #d1d5db;border-radius:6px;font-size:16px;background:#e9e9e9;color:#222}.forgot-password-btn{width:100%;padding:14px 0;background:#2563eb;color:#fff;border:none;border-radius:6px;font-weight:600;font-size:16px;margin-top:10px;cursor:pointer;transition:background .2s}.forgot-password-btn:hover{background:#1d4ed8}.forgot-password-message{padding:10px;margin-bottom:20px;border-radius:4px;text-align:center}.forgot-password-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.forgot-password-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.back-to-login-link{color:#2563eb;text-decoration:none;font-weight:600;font-size:16px;transition:color .2s}.back-to-login-link:hover{color:#1d4ed8;text-decoration:underline}@media (max-width: 500px){.forgot-password-card{min-width:90vw;padding:24px 8px}}.incident-detail-container{background:#fff;border-radius:16px;padding:32px;display:flex;gap:32px;box-shadow:0 4px 24px #00000014}.incident-detail-main{flex:2;color:#222}.incident-detail-header-row{display:flex;gap:16px;margin-bottom:24px}.incident-detail-header-row input{font-weight:600;width:120px;border:none;background:#dbdbdb;border-radius:8px;padding:8px;color:#222}.incident-detail-field{margin-bottom:12px}.incident-detail-field label{display:block;font-weight:500;margin-bottom:4px}.incident-detail-field input,.incident-detail-field textarea{width:100%;border:none;background:#dbdbdb;border-radius:8px;padding:8px;font-weight:600;color:#444}.incident-detail-field textarea{min-height:60px;color:#444}.incident-detail-actions{display:flex;gap:16px;align-items:center;margin-top:24px}.incident-detail-map{flex:1;background:#d4d4d4;border-radius:12px;padding:16px}.incident-detail-map-title{font-weight:600;margin-bottom:8px;color:#444}.incident-detail-map img{width:100%;border-radius:8px;color:#444}.back-button{margin:24px 32px 0;font-weight:500}.officer-info-row{display:flex;gap:32px;align-items:center;margin-bottom:24px;background:#f5f6fa;border-radius:32px;padding:16px 32px;font-size:18px;font-weight:600}.officer-patrol-id{color:#2979ff;font-weight:700;font-size:20px;text-decoration:underline;cursor:pointer}.officer-name,.officer-phone,.officer-email{color:#bdbdbd;font-weight:600}.officer-schedule-grid{display:flex;flex-wrap:wrap;gap:24px}.schedule-sections-container{width:100%}.schedule-section-header{font-size:22px;font-weight:600;color:#333;margin-top:24px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #e8e8e8}.officer-schedule-card{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:20px 24px;width:320px;margin-bottom:16px;display:flex;flex-direction:column;justify-content:space-between}.officer-schedule-card.done-card{background-color:#f6f6f6;opacity:.7}.officer-schedule-card.done-card .location-name{color:#888}.officer-schedule-card.past-due-card{background-color:#fff2f0;border:1px solid #ffccc7}.officer-schedule-card.past-due-card .location-name{color:#cf1322}.schedule-card-title{display:flex;align-items:center;gap:8px;margin-bottom:12px}.schedule-card-datetime{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.schedule-card-id{font-family:monospace;font-size:11px;color:#888;font-weight:500;margin-bottom:4px}.schedule-card-date{background:#fff;color:#222;padding:2px 8px;border-radius:8px;font-size:14px;font-weight:600;box-shadow:0 1px 4px #0000000a}.schedule-card-time{background:#fff;color:#222;padding:2px 8px;border-radius:8px;font-size:16px;font-weight:700;box-shadow:0 1px 4px #0000000a}.schedule-card-location{display:flex;align-items:center;gap:6px;margin-bottom:6px}.location-name{font-weight:500;font-size:15px;color:#222}.location-address{font-size:12px;color:#555}.schedule-card-actions{display:flex;gap:12px;margin-top:16px;justify-content:flex-end}.schedule-card-actions .ant-btn-primary{background:#2979ff;border:none;font-weight:600}.schedule-card-actions .ant-btn-danger,.schedule-card-actions .ant-btn-dangerous{background-color:#ff4d4f!important;border:none;font-weight:600;color:#fff}.officer-patrol-id-display{color:#333;font-size:1.2rem;font-weight:600;margin:1rem 0;padding:0 2rem}.back-button{background:#fff;color:#222;border:1px solid #eee;border-radius:8px;padding:8px 32px;font-weight:500;font-size:18px;cursor:pointer;box-shadow:0 1px 4px #0000000a;margin:32px 0 16px;display:inline-block}.incident-list-header .back-button{margin-top:18px;margin-bottom:0}.back-button:active,.back-button:focus{outline:none;border-color:#2979ff}.header-actions .back-button{background:#fff;color:#222;border:1px solid #eee;border-radius:8px;padding:8px 32px;font-weight:500;font-size:18px;cursor:pointer;box-shadow:0 1px 4px #0000000a;margin:0 16px 0 0;display:inline-block}.header-actions .back-button:active,.header-actions .back-button:focus{outline:none;border-color:#2979ff}.schedule-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.schedule-status-tag{font-weight:700}.incident-list-title{color:#222!important;font-weight:700}.patrol-route-detail-form{display:flex;gap:32px;margin-top:32px;align-items:flex-start}.patrol-route-detail-left{display:flex;flex-direction:column;gap:24px}.patrol-route-detail-maps{display:flex;flex-direction:column;gap:32px}.patrol-route-detail-right{display:flex;flex-direction:column;align-items:center;gap:16px}.map-block{display:flex;flex-direction:column;gap:8px}.map-block .search-box{position:static;margin-bottom:8px;width:100%;max-width:400px;padding:6px 12px;font-size:14px;color:#000;border:1px solid #ccc;border-radius:8px;background:#fff;box-shadow:0 2px 6px #00000026;z-index:1}.map-block .search-box::placeholder{color:#000;opacity:1}.patrol-route-map,.patrol-route-map iframe{width:400px;height:200px;border-radius:12px;object-fit:cover}.map-block .gm-style-iw{z-index:0!important}.center-spinner{margin:100px auto;display:block}.save-button{background:#6fef8c;color:#222;font-weight:600;width:120px}.tooltip-container{position:relative;display:inline-block;margin-left:8px}.info-icon{font-style:normal;font-weight:700;border:1px solid #1890ff;color:#1890ff;border-radius:50%;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.tooltip-text{visibility:hidden;width:220px;background-color:#000000bf;color:#fff;text-align:center;padding:6px;border-radius:4px;position:absolute;top:125%;bottom:auto;left:50%;transform:translate(-50%);opacity:0;transition:opacity .2s;pointer-events:none;z-index:10}.tooltip-text:after{content:"";position:absolute;bottom:100%;top:auto;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:transparent transparent rgba(0,0,0,.75) transparent}.tooltip-container:hover .tooltip-text,.tooltip-container:focus-within .tooltip-text{visibility:visible;opacity:1}
