.telusur-pemantik[data-v-9f916b31]{z-index:30;color:#fff;min-height:46px;font:inherit;cursor:pointer;background:#1c3553;border:0;border-radius:999px;align-items:center;gap:9px;padding:0 18px;font-size:13.5px;font-weight:650;transition:background .2s,transform .2s cubic-bezier(.2,.8,.2,1);display:inline-flex;position:fixed;bottom:76px;right:24px;box-shadow:0 14px 30px -14px #0c1c33cc}.telusur-pemantik svg[data-v-9f916b31]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.telusur-pemantik[data-v-9f916b31]:hover{background:#235aa6;transform:translateY(-2px)}.telusur-pemantik[data-v-9f916b31]:focus-visible{outline-offset:3px;outline:3px solid #98bdef}.telusur-panel[data-v-9f916b31]{z-index:30;background:#fff;border:1px solid #d5e0ec;border-radius:16px;flex-direction:column;width:min(420px,100vw - 32px);max-height:min(620px,100vh - 140px);animation:.32s cubic-bezier(.16,1,.3,1) telusur-masuk-9f916b31;display:flex;position:fixed;bottom:76px;right:24px;overflow:hidden;box-shadow:0 26px 60px -28px #0c1c33}@keyframes telusur-masuk-9f916b31{0%{opacity:0;transform:translateY(16px)scale(.97)}}.telusur-kepala[data-v-9f916b31]{color:#fff;background:linear-gradient(120deg,#172e49,#244564);border-bottom:1px solid #e8eef6;align-items:center;gap:8px;padding:13px 14px;display:flex}.telusur-kepala strong[data-v-9f916b31]{flex:1;min-width:0;font-size:14px}.telusur-ikon[data-v-9f916b31]{color:#fff;cursor:pointer;background:#ffffff1c;border:0;border-radius:8px;flex:0 0 30px;place-items:center;width:30px;height:30px;padding:0;transition:background .16s;display:grid}.telusur-ikon svg[data-v-9f916b31]{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.telusur-ikon[data-v-9f916b31]:hover{background:#fff3}.telusur-isi[data-v-9f916b31]{background:#f7fafd;flex:1;padding:14px;overflow-y:auto}.telusur-maksud[data-v-9f916b31]{color:#55708d;margin:0;font-size:12.5px;line-height:1.6}.gelembung-tanya[data-v-9f916b31]{color:#fff;overflow-wrap:anywhere;background:#235aa6;border-radius:14px 14px 4px;max-width:82%;margin:0 0 10px auto;padding:8px 13px;font-size:13px;line-height:1.5}.gelembung-jawab[data-v-9f916b31]{margin-bottom:14px}.jawab-ringkas[data-v-9f916b31]{color:#35506e;margin:0 0 8px;font-size:12.5px;line-height:1.55}.jawab-surat[data-v-9f916b31]{background:#fff;border:1px solid #e3e9f0;border-radius:12px;margin-bottom:8px;padding:11px 12px}.jawab-surat header[data-v-9f916b31]{flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:6px;display:flex}.jawab-agenda[data-v-9f916b31]{color:#244e80;background:#eaf1fb;border-radius:7px;padding:2px 8px;font-size:11.5px;font-weight:700}.jawab-nomor[data-v-9f916b31]{color:#55708d;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11.5px;overflow:hidden}.jawab-status[data-v-9f916b31]{border-radius:999px;margin-left:auto;padding:2px 9px;font-size:10.5px;font-weight:700}.jawab-status.status-jalan[data-v-9f916b31]{color:#8a6620;background:#fdf3e0}.jawab-status.status-selesai[data-v-9f916b31]{color:#1c6b44;background:#e4f6ec}.jawab-rute[data-v-9f916b31]{color:#6b7f94;overflow-wrap:anywhere;margin:0 0 8px;font-size:11.5px;line-height:1.5}.jawab-dispo[data-v-9f916b31]{border-top:1px dashed #e8eef6;padding-top:8px}.dispo-arahan[data-v-9f916b31]{color:#35506e;margin:0 0 5px;font-size:12px;font-weight:600;line-height:1.45}.jawab-dispo ul[data-v-9f916b31]{gap:4px;margin:0;padding:0;list-style:none;display:grid}.jawab-dispo li[data-v-9f916b31]{flex-wrap:wrap;align-items:baseline;gap:7px;font-size:12px;display:flex}.jawab-dispo li strong[data-v-9f916b31]{color:#1f3448}.pl-jalan[data-v-9f916b31]{color:#8a6620}.pl-selesai[data-v-9f916b31]{color:#1c6b44}.jawab-belum[data-v-9f916b31]{color:#8a6620;margin:0;font-size:12px}.telusur-menunggu[data-v-9f916b31]{gap:4px;margin:0;padding:4px 2px;display:flex}.telusur-menunggu i[data-v-9f916b31]{background:#9db4cb;border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite telusur-denyut-9f916b31}.telusur-menunggu i[data-v-9f916b31]:nth-child(2){animation-delay:.14s}.telusur-menunggu i[data-v-9f916b31]:nth-child(3){animation-delay:.28s}@keyframes telusur-denyut-9f916b31{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.telusur-kirim[data-v-9f916b31]{background:#fff;border-top:1px solid #e8eef6;gap:8px;padding:11px 12px;display:flex}.telusur-kirim input[data-v-9f916b31]{min-width:0;min-height:40px;font:inherit;background:#fff;border:1px solid #c6d1df;border-radius:10px;flex:1;padding:8px 12px;font-size:13px}.telusur-kirim input[data-v-9f916b31]:focus{border-color:#3f7cc0;outline:none;box-shadow:0 0 0 3px #98bdef4d}.telusur-kirim .btn[data-v-9f916b31]{border-radius:10px;flex:0 0 40px;place-items:center;width:40px;min-height:40px;padding:0;display:grid}.telusur-kirim .btn svg[data-v-9f916b31]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.telusur-panel[data-v-9f916b31] :is(input,button):focus-visible{outline-offset:1px;outline:3px solid #98bdef}@media (width<=560px){.telusur-pemantik[data-v-9f916b31],.telusur-panel[data-v-9f916b31]{bottom:68px;right:12px}.telusur-panel[data-v-9f916b31]{width:calc(100vw - 24px)}}@media (prefers-reduced-motion:reduce){.telusur-pemantik[data-v-9f916b31],.telusur-panel[data-v-9f916b31],.telusur-ikon[data-v-9f916b31],.telusur-menunggu i[data-v-9f916b31]{transition:none!important;animation:none!important}.telusur-pemantik[data-v-9f916b31]:hover{transform:none}}.modal,.dashboard-stage{position:relative}.mechanical-eyelids{border-radius:inherit;pointer-events:none;z-index:20;--blink-light-x:58%;contain:paint;position:absolute;inset:0;overflow:hidden}.mechanical-eyelids[hidden]{display:none}.mechanical-eyelids-page{z-index:45;border-radius:0;position:fixed;inset:auto}.mechanical-lid{background:radial-gradient(ellipse at var(--blink-light-x) 100%, #35536d 0, transparent 65%), linear-gradient(150deg, #1c354e, #112840);will-change:transform;width:104%;height:calc(50% + 1px);position:absolute;left:-2%}.mechanical-lid-upper{top:0;box-shadow:0 6px 20px #10233930}.mechanical-lid-lower{background:radial-gradient(ellipse at var(--blink-light-x) 0, #35536d 0, transparent 65%), linear-gradient(30deg, #142b42, #223e57);bottom:0;box-shadow:0 -6px 20px #10233930}.mechanical-lid:after{content:"";background:linear-gradient(90deg,#0000,#a3bed280 25%,#ebd5a2c0 50%,#a3bed280 75%,#0000);height:1px;position:absolute;bottom:0;left:8%;right:8%}.mechanical-lid-lower:after{top:0;bottom:auto}.mechanical-eyelids-popup .mechanical-lid{background:radial-gradient(ellipse at var(--blink-light-x) 50%, #e5edf3, #f4f7fa 70%)}.mechanical-eyelids-popup .mechanical-lid:after{background:linear-gradient(90deg,#0000,#7c9bae90,#bda16d90,#0000)}.mechanical-depth{z-index:5;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(ellipse at var(--depth-x,50%) var(--depth-y,30%), #7ba9cd0c, transparent 60%);transition:opacity .24s;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 1px #ffffff80}@media (prefers-reduced-motion:reduce){.mechanical-eyelids,.mechanical-depth{display:none}}@media print{.mechanical-eyelids,.mechanical-depth{display:none}}:root{--ink:#1f2937;--ink-soft:#4b5563;--muted:#6b7280;--line:#e2e5ea;--bg:#f4f6f8;--panel:#fff;--brand:#1e5aa8;--brand-dark:#17457f;--danger:#b42318;--ok:#1a7f52;--warn:#9a6700}*{box-sizing:border-box}body{color:var(--ink);background:var(--bg);margin:0;font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px}a{color:var(--brand);text-decoration:none}.app-shell{min-height:100vh;display:flex}.sidebar{overscroll-behavior:contain;z-index:30;color:#cbd5e1;background:#12294a;flex-direction:column;flex:0 0 250px;width:250px;height:100dvh;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid #ffffff1f;align-items:center;gap:11px;padding:16px 18px 15px;display:flex}.brand-logo{border-radius:8px;flex:none;width:34px;height:34px;display:block}.brand-teks{min-width:0}.brand-teks strong{color:#fff;letter-spacing:.1em;font-size:19px;font-weight:700;line-height:1.1;display:block}.brand-teks span{color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:10px;display:block;overflow:hidden}.nav-group{padding:12px 0}.nav-group-title{text-transform:uppercase;letter-spacing:.07em;color:#7c8ca5;padding:8px 18px 6px;font-size:11px}.nav-link{color:#cbd5e1;border-left:3px solid #0000;padding:9px 18px;display:block}.nav-link:hover{color:#fff;background:#ffffff0f}.nav-link.nav-active{color:#fff;background:#ffffff1a;border-left-color:#4d8fdb}.main-area{flex-direction:column;flex:1;min-width:0;margin-left:250px;display:flex}.topbar{z-index:41;background:0 0;border:0;justify-content:flex-end;align-items:center;gap:12px;height:70px;padding:0 24px;display:flex;position:fixed;top:0;left:250px;right:0}.topbar-dengan-judul{background:var(--panel);border-bottom:1px solid var(--line)}.topbar-judul{min-width:0;margin:0 auto 0 0;font-size:20px;line-height:1.3}@media (width<=860px){.topbar-dengan-judul{flex-wrap:wrap;position:sticky;top:0}.topbar-judul{flex:180px}}.topbar .user-name{font-weight:600}.topbar .user-role{color:var(--muted);font-size:12px}.page{flex:1;padding:88px 24px 76px}.app-footer{z-index:3;text-align:center;color:var(--muted);background:var(--panel);border-top:1px solid var(--line);padding:14px 24px;font-size:12px;line-height:1.5;position:fixed;bottom:0;left:250px;right:0}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.page .page-head{z-index:40;background:var(--panel);border-bottom:1px solid var(--line);align-items:center;min-height:70px;margin:0;padding:12px 340px 12px 24px;position:fixed;top:0;left:250px;right:0}.page-head h1{margin:0;font-size:20px}.aksi-halaman{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:14px;display:flex}.page-head p{color:var(--muted);margin:0}.card{background:var(--panel);border:1px solid var(--line);border-radius:6px;margin-bottom:18px;padding:16px}.card h2{margin:0 0 12px;font-size:15px}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-bottom:18px;display:grid}.stat-card{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:6px;padding:14px 16px}.stat-card.klik{cursor:pointer}.stat-card.klik:hover{border-color:var(--brand)}.stat-value{font-size:26px;font-weight:700;line-height:1.1}.stat-label{color:var(--muted);margin-top:4px;font-size:12px}.stat-card.aksen-kuning{border-left-color:#c79100}.stat-card.aksen-hijau{border-left-color:var(--ok)}.stat-card.aksen-merah{border-left-color:var(--danger)}.stat-card.aksen-abu{border-left-color:#94a3b8}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:13px}.table th,.table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:9px 10px}.table th{white-space:nowrap;color:var(--ink-soft);background:#f0f3f6;font-weight:600}.table tbody tr:hover{background:#f8fafc}.table .angka{text-align:right}.table-kosong{text-align:center;color:var(--muted);padding:26px}.badge{white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-abu{color:#475569;background:#eceff3}.badge-biru{color:#1e5aa8;background:#e3edfa}.badge-kuning{color:var(--warn);background:#fdf3d8}.badge-ungu{color:#6941c6;background:#efe6fb}.badge-hijau{color:var(--ok);background:#e3f3ea}.form-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.field{flex-direction:column;gap:5px;display:flex}.field.lebar{grid-column:1/-1}.field label{font-size:13px;font-weight:600}.field .bantuan{color:var(--muted);font-size:12px}.wajib{color:var(--danger)}input[type=text],input[type=date],input[type=number],input[type=email],input[type=password],input[type=search],select,textarea{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #c9d0d9;border-radius:4px;padding:8px 10px}input:focus,select:focus,textarea:focus{border-color:var(--brand);outline:2px solid #b9d2f2}textarea{resize:vertical;min-height:78px}.btn{color:var(--ink);cursor:pointer;font:inherit;background:#fff;border:1px solid #c9d0d9;border-radius:4px;padding:8px 14px;font-weight:600;display:inline-block}.btn:hover{background:#f3f5f8}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-dark)}.btn-danger{color:var(--danger);background:#fff;border-color:#e3b5b0}.btn-kecil{padding:4px 9px;font-size:12px;font-weight:500}.btn-baris{flex-wrap:wrap;gap:6px;display:inline-flex}.aksi-baris{flex-wrap:wrap;gap:8px;display:flex}.alert{border-radius:4px;margin-bottom:14px;padding:10px 12px}.alert-error{color:var(--danger);background:#fdecea;border:1px solid #f3c7c2}.alert-ok{color:var(--ok);background:#e7f5ee;border:1px solid #b9e0cb}.alert-info{color:var(--brand-dark);background:#eef4fb;border:1px solid #c8dcf3}.filters{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:10px;display:grid}.muted{color:var(--muted)}.kecil{font-size:12px}.pagination{justify-content:flex-end;align-items:center;gap:8px;margin-top:12px;display:flex}.chart-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;display:grid}.chart-box{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:14px}.chart-box h3{color:var(--ink-soft);margin:0 0 10px;font-size:13px}.chart-holder{height:260px}.deskripsi{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.deskripsi .item .k{color:var(--muted);font-size:12px}.deskripsi .item .v{word-break:break-word;margin-top:2px;font-weight:600}.modal-backdrop{z-index:50;background:#0f172a73;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:#fff;border-radius:6px;width:100%;max-width:720px;padding:20px}.modal h2{margin:0 0 14px;font-size:16px}.modal-aksi{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.login-page{background:#12294a;justify-content:center;align-items:center;min-height:100vh;padding:40px 6vw 84px;display:flex;position:relative}.login-visual{background:#12294a url(/login-bg.jpg) 50%/cover no-repeat;position:absolute;inset:0}.login-visual:after{content:"";background:linear-gradient(90deg,#12294a1a 0%,#12294a80 50%,#12294a1a 100%);position:absolute;inset:0}.login-panel{z-index:1;background:#fff;border-radius:14px;flex-direction:column;gap:24px;width:100%;max-width:396px;padding:38px 36px 30px;display:flex;position:relative;box-shadow:0 24px 64px #08142861}.login-box{width:100%;max-width:none}.login-box .field{margin-bottom:16px}.login-box .btn{width:100%;padding:11px 14px}.login-page .app-footer{z-index:1;color:#fff;text-shadow:0 1px 3px #0814288c;background:0 0;border-top:0;max-width:none;padding:0 24px;font-weight:700;position:absolute;bottom:22px;left:0;right:0}@media (width<=900px){.login-page{padding:28px 20px 76px}.login-visual:after{background:#12294a80}.login-panel{padding:30px 24px 24px}}.btn,.nav-link,.stat-card.klik{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}.modal-backdrop,.alert{animation:.16s ease-out overlay-in}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.btn,.nav-link,.stat-card.klik{transition:none}.modal-backdrop,.modal,.alert{animation:none}}@media (width<=860px){.app-shell{flex-direction:column}.sidebar{flex:none;width:100%;height:auto;position:static;inset:auto;overflow-y:visible}.main-area{margin-left:0}.app-footer{left:0}.topbar{background:var(--panel);border-bottom:1px solid var(--line);height:auto;padding:12px 24px;position:static;left:auto}.page{padding-top:22px}.page .page-head{min-height:0;margin:0 -24px 18px;padding-right:24px;position:sticky;top:0;left:auto;right:auto}}.aksi-ikon{flex-wrap:nowrap}.btn-ikon{justify-content:center;align-items:center;width:32px;height:32px;padding:6px;display:inline-flex}.btn-ikon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.btn-ikon:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media print{.page .page-head{position:static}}.login-loading{z-index:60;background:#eaecfa;position:fixed;inset:0}.loader{text-align:center;text-transform:uppercase;width:250px;height:50px;color:var(--brand);letter-spacing:.2em;font-family:helvetica,arial,sans-serif;font-weight:900;line-height:50px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loader:before,.loader:after{content:"";background:var(--brand);width:15px;height:15px;animation:.7s ease-in-out infinite alternate load;display:block;position:absolute}.loader:before{top:0}.loader:after{bottom:0}@keyframes load{0%{width:15px;height:30px;left:0}50%{width:40px;height:8px}to{width:15px;height:30px;left:235px}}@media (prefers-reduced-motion:reduce){.loader:before,.loader:after{animation:none}}.topbar-akun{text-align:right;min-width:0;max-width:260px;line-height:1.3}.topbar .user-name,.topbar .user-role{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.topbar-pemisah{background:var(--line);flex:none;width:1px;height:26px}.btn-keluar{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:7px;transition:background-color .15s,color .15s;display:inline-flex}.btn-keluar svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.btn-keluar:hover{color:var(--danger);background:#fdecea}.btn-keluar:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.input-ikon{align-items:center;display:flex;position:relative}.input-ikon svg{fill:none;width:17px;height:17px;stroke:var(--muted);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;position:absolute;left:10px}.input-ikon input{padding-left:34px}.input-ikon:focus-within svg{stroke:var(--brand)}.login-brand{text-align:center;flex-direction:column;align-items:center;margin-bottom:24px;display:flex}.login-brand .brand-logo{border-radius:14px;width:62px;height:62px;margin-bottom:12px}.login-brand h1{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;border-top:2px solid #f2b233;margin:0;padding-top:11px;font-size:11px;font-weight:600}@media (width<=860px){.topbar.topbar-dengan-judul{position:sticky;top:0}}
