:root{
  /* Buzz Lightyear-ish palette: white/gray base, lime green + purple accents */
  --bg1:#f6f7fb;
  --bg2:#eef2f6;
  --panel:rgba(255,255,255,.92);
  --text:#121526;
  --muted:#3f4a66;
  --border:rgba(27,31,42,.22);
  --accent:#6d28d9;   /* bold purple */
  --accent2:#a3ff12;  /* neon lime */
  --good:#18a34a;
  --warn:#b87912;
  --bad:#d12d4e;
  --shadow:0 14px 0 rgba(17,24,39,.14), 0 16px 28px rgba(17,24,39,.10);
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  min-height:100vh;
  background:
    radial-gradient(980px 560px at 12% 10%, rgba(163,255,18,.30), transparent 58%),
    radial-gradient(1060px 600px at 88% 8%, rgba(109,40,217,.26), transparent 60%),
    radial-gradient(900px 520px at 85% 85%, rgba(59,130,246,.14), transparent 64%),
    radial-gradient(900px 520px at 15% 85%, rgba(239,68,68,.12), transparent 64%),
    radial-gradient(1200px 700px at 50% 0%, rgba(255,255,255,.60), transparent 64%),
    linear-gradient(180deg, var(--bg1), var(--bg2));
  color:var(--text);
}
a{color:inherit}
.container{max-width:1100px;margin:0 auto;padding:18px;min-height:100vh;display:flex;flex-direction:column}
.topbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:14px}
.nav{display:flex;gap:10px;flex-wrap:wrap}
.nav a{
  padding:8px 10px;
  border:2px solid var(--border);
  border-radius:999px;
  text-decoration:none;
  background:rgba(255,255,255,.85);
  box-shadow:0 6px 0 rgba(17,24,39,.12);
}
.nav a.active{
  border-color:rgba(109,40,217,.55);
  background:linear-gradient(90deg, rgba(109,40,217,.26), rgba(163,255,18,.22));
}
.h1{font-size:18px;margin:0}
.grid{display:grid;grid-template-columns:1fr;gap:14px}
@media(min-width:900px){.grid.two{grid-template-columns:1.2fr .8fr}}
.card{
  border:2px solid var(--border);
  border-radius:18px;
  background:var(--panel);
  backdrop-filter:none;
  padding:14px;
  box-shadow:var(--shadow);
}
.card h2{font-size:14px;margin:0 0 10px 0;color:#171b2e}
.muted{color:var(--muted)}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.field{display:flex;flex-direction:column;gap:6px;min-width:160px;flex:1}
label{font-size:12px;color:var(--muted)}
input,select,textarea{
  width:100%;
  padding:10px;
  border-radius:12px;
  border:2px solid rgba(27,31,42,.18);
  background:rgba(255,255,255,.95);
  color:var(--text);
  outline:none;
  box-shadow:0 4px 0 rgba(17,24,39,.10);
}
input:focus,select:focus,textarea:focus{
  border-color:rgba(109,40,217,.70);
  box-shadow:0 0 0 4px rgba(109,40,217,.18), 0 4px 0 rgba(17,24,39,.10);
}
textarea{min-height:92px;resize:vertical}
button{
  padding:10px 12px;
  border-radius:12px;
  border:2px solid rgba(17,24,39,.18);
  background:linear-gradient(90deg, rgba(109,40,217,.30), rgba(163,255,18,.24));
  color:#0f1222;
  font-weight:650;
  cursor:pointer;
  box-shadow:0 8px 0 rgba(17,24,39,.16), 0 16px 26px rgba(109,40,217,.14);
}
button:hover{filter:saturate(155%) contrast(1.08)}

button:focus{
  outline:none;
  box-shadow:0 0 0 4px rgba(109,40,217,.18), 0 14px 26px rgba(109,40,217,.16);
}

button:active{transform:translateY(1px)}
.table{
  width:100%;
  border-collapse:collapse;
  table-layout:fixed;
}
.table th,.table td{
  padding:10px;
  border-bottom:1px solid var(--border);
  text-align:left;
  font-size:14px;
  vertical-align:top;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}
.table th{
  color:#20263a;
  overflow-wrap:normal;
  word-break:keep-all;
}

/* Kolom aksi: tetap ringkas */
.table th:last-child,
.table td:last-child{width:84px}

@media (max-width: 720px){
  .table th,.table td{padding:8px;font-size:13px}
  .table th:last-child,.table td:last-child{width:72px}
  .table button{padding:6px 8px;font-size:12px}
}

/* Aksi (button) di dalam tabel: tetap ringkas tapi terbaca */
.table button{
  padding:7px 10px;
  border-radius:10px;
  font-size:12px;
}
.badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 10px;
  border-radius:999px;
  border:2px solid rgba(17,24,39,.14);
  font-size:12px;
  color:var(--muted);
  background:rgba(255,255,255,.92);
  box-shadow:0 5px 0 rgba(17,24,39,.10);
}
.badge.good{color:var(--good);border-color:rgba(163,255,18,.40);background:rgba(163,255,18,.12)}
.badge.warn{color:var(--warn);border-color:rgba(184,121,18,.22);background:rgba(184,121,18,.06)}
.badge.bad{color:var(--bad);border-color:rgba(209,45,78,.22);background:rgba(209,45,78,.06)}
.progress{height:10px;border-radius:999px;background:rgba(27,31,42,.08);overflow:hidden}
.progress > div{height:10px;background:linear-gradient(90deg, rgba(109,40,217,.92), rgba(163,255,18,.82));width:0}
.small{font-size:12px}
.footer{margin-top:auto;padding-top:18px;color:var(--muted);font-size:12px}
.hr{height:1px;background:var(--border);margin:10px 0}
