/* admin.css — dashboard petugas (mobile-first, dibuka dari HP) */
body.admin{background:#EEF4F4}
.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:12px;
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));color:#fff;padding:12px 14px;
  box-shadow:var(--shadow)}
.menu-btn{background:rgba(255,255,255,.15);border:0;color:#fff;font-size:20px;width:44px;height:44px;
  border-radius:10px;cursor:pointer}
.tb-brand{font-weight:800;font-size:17px}
.tb-user{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:13px;text-align:right}
.tb-user small{display:block;opacity:.8;font-size:11px}
.tb-logout{color:#fff;background:rgba(255,255,255,.15);padding:8px 10px;border-radius:8px;
  text-decoration:none;min-height:40px;display:flex;align-items:center}
.sidenav{position:fixed;top:0;left:0;bottom:0;width:230px;background:#fff;z-index:70;
  transform:translateX(-105%);transition:transform .22s ease;padding:70px 12px 20px;box-shadow:var(--shadow-lg)}
.sidenav a{display:block;padding:14px;border-radius:10px;text-decoration:none;color:var(--ink);
  font-weight:600;margin-bottom:4px}
.sidenav a:hover{background:var(--teal-light)}
.nav-scrim{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:60;display:none}
body.nav-open .sidenav{transform:translateX(0)}
body.nav-open .nav-scrim{display:block}
.content{max-width:900px;margin:0 auto;padding:16px}

.page-title{font-size:20px;color:var(--teal-dark);margin:6px 0 14px}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.filters select,.filters input{padding:10px;border:1.5px solid var(--line);border-radius:10px;
  font-size:14px;font-family:var(--font);background:#fff;flex:1;min-width:120px}

.rlist{display:flex;flex-direction:column;gap:10px}
.rcard{background:#fff;border-radius:14px;box-shadow:var(--shadow);padding:14px;text-decoration:none;
  color:var(--ink);display:flex;gap:12px;align-items:flex-start;border-left:6px solid var(--line)}
.rcard:active{transform:scale(.995)}
.rcard.panic{border-left-color:var(--danger);background:linear-gradient(90deg,#FEF2F2,#fff)}
.rcard .rc-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#fff;
  font-size:22px;flex:none}
.rcard .rc-main{flex:1;min-width:0}
.rcard .rc-title{font-weight:700;font-size:15px;margin-bottom:2px}
.rcard .rc-meta{font-size:12px;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}
.pill{display:inline-block;padding:3px 9px;border-radius:999px;color:#fff;font-size:11px;font-weight:700}
.pill-panic{background:var(--danger);animation:pulse 2s infinite}

.table-wrap{overflow-x:auto}
.tbl{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}
.tbl th,.tbl td{padding:11px 12px;text-align:left;font-size:14px;border-bottom:1px solid var(--line)}
.tbl th{background:var(--teal-light);color:var(--teal-dark);font-size:12px;text-transform:uppercase;letter-spacing:.4px}

.detail-grid{display:grid;gap:14px}
.dcard{background:#fff;border-radius:14px;box-shadow:var(--shadow);padding:16px}
.dcard h3{margin:0 0 10px;font-size:15px;color:var(--teal-dark)}
.kv{display:flex;gap:8px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:14px}
.kv b{min-width:120px;color:var(--muted);font-weight:600}
.gallery{display:flex;gap:8px;flex-wrap:wrap}
.gallery a{width:100px;height:100px;border-radius:10px;overflow:hidden;border:1px solid var(--line)}
.gallery img,.gallery video{width:100%;height:100%;object-fit:cover}
#dmap{height:220px;border-radius:12px;border:1px solid var(--line)}

.status-steps{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.status-steps button{flex:1;min-width:120px;min-height:48px;border:2px solid var(--line);background:#fff;
  border-radius:12px;font-weight:700;font-size:14px;cursor:pointer;color:var(--ink)}
.status-steps button.active{color:#fff;border-color:transparent}

.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;
  background:radial-gradient(1000px 400px at 100% 0,rgba(76,175,125,.25),transparent),var(--teal)}
.login-card{background:#fff;border-radius:18px;box-shadow:var(--shadow-lg);padding:28px;max-width:400px;width:100%}
.login-card h1{color:var(--teal-dark);font-size:22px;margin:0 0 4px}
.login-card p{color:var(--muted);font-size:14px;margin:0 0 18px}

.section-card{background:#fff;border-radius:14px;box-shadow:var(--shadow);padding:16px;margin-bottom:16px}
.section-card h3{margin:0 0 12px;color:var(--teal-dark);font-size:16px}
.mini-form{display:grid;gap:8px;grid-template-columns:1fr 1fr;align-items:end}
.mini-form .full{grid-column:1/-1}
.btn-sm{min-height:40px;padding:8px 14px;font-size:14px;border-radius:10px;border:0;cursor:pointer;
  background:var(--teal);color:#fff;font-weight:700}
.btn-danger{background:var(--danger)}
.flash{padding:12px 14px;border-radius:10px;margin-bottom:14px;font-size:14px}
.flash.ok{background:#DCFCE7;color:#166534}.flash.err{background:#FEE2E2;color:#991B1B}
.push-banner{background:#FEF3C7;color:#92400E;padding:10px 12px;border-radius:10px;margin-bottom:14px;font-size:13px}
.push-banner .btn-sm{background:var(--teal-dark)}
@media(max-width:520px){ .mini-form{grid-template-columns:1fr} .kv b{min-width:96px} }
