:root{--g:#087f46;--g2:#10a765;--dark:#075c34;--light:#f2f8f5;--text:#17372a;--muted:#64756d;--border:#d9e7df}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f4f9f6;color:var(--text)}
.container{max-width:1120px;margin:auto;padding-left:20px;padding-right:20px}
.topbar{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.nav{height:70px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:var(--g);font-weight:800}.brand img{width:48px;height:48px;object-fit:contain}.navlink{color:var(--g);font-weight:700;text-decoration:none}.adminname{margin-right:15px;color:var(--muted)}
.hero{background:linear-gradient(135deg,var(--dark),var(--g2));color:#fff;padding:60px 0 80px}.hero-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:40px;align-items:center}.eyebrow{font-weight:800;letter-spacing:.5px}.hero h1{font-size:46px;line-height:1.1;margin:12px 0 18px}.hero p{font-size:18px;line-height:1.7;max-width:700px}.hero-logo{width:190px;height:190px;background:#fff;border-radius:50%;object-fit:contain;padding:10px;margin:auto}
.main{margin-top:-35px;padding-bottom:45px}.card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:28px;margin-bottom:22px;box-shadow:0 8px 25px rgba(20,70,45,.07)}h2{margin:0 0 20px;color:var(--dark)}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.steps div{background:var(--light);border-radius:12px;padding:17px;text-align:center}.steps b{display:flex;width:34px;height:34px;background:var(--g);color:#fff;border-radius:50%;align-items:center;justify-content:center;margin:0 auto 8px}.steps span{font-weight:700;font-size:14px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-weight:700;margin-bottom:7px}label span{color:#c00}input,select,textarea{width:100%;border:1px solid #cbdad2;border-radius:10px;padding:13px;font-size:15px;background:#fff}textarea{min-height:140px;resize:vertical}.full{grid-column:1/-1}.check{display:flex;gap:8px;align-items:center;color:var(--muted);margin:14px 0}.check input{width:auto}button,.btnsmall{border:0;background:var(--g);color:#fff;border-radius:9px;padding:12px 18px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block}.statusform,.filter{display:flex;gap:10px}.statusform input,.filter input{flex:1}.statusform button,.filter button{width:auto}.alert{padding:14px;border-radius:10px;margin-bottom:18px}.success{background:#eaf8ef;border:1px solid #9bd5ae;color:#1b633b}.danger{background:#fff0f0;border:1px solid #e5aaaa;color:#9c2020}
.statusbox,.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}.statusbox>div,.stats>div{background:var(--light);border-radius:12px;padding:16px}.statusbox small,.detailgrid small,.uraian small{display:block;color:var(--muted);margin-bottom:5px}.statusbox strong{display:block}.badge{display:inline-block;padding:6px 10px;border-radius:20px;background:#fff0c7;color:#805c00;font-weight:800;font-size:12px}
.timeline .tl{border-left:3px solid var(--g);padding:0 0 18px 16px;margin:0 0 5px}.tl small{display:block;color:var(--muted);margin:5px 0}.tl p{margin:6px 0;line-height:1.5}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}th{background:var(--light)}.btnsmall{padding:8px 11px;font-size:13px}.stats{grid-template-columns:repeat(5,1fr);margin:0 0 22px}.stats b{display:block;font-size:25px;color:var(--g)}.stats span{color:var(--muted);font-size:13px}.detailgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.detailgrid>div{background:var(--light);padding:14px;border-radius:10px}.uraian{background:#fafdfb;border:1px solid var(--border);padding:15px;border-radius:10px;margin-bottom:20px}.filter{margin-bottom:18px}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:var(--light)}.login-card{width:min(420px,100%);background:#fff;padding:32px;border-radius:18px;box-shadow:0 10px 30px #0001}.login-card img{width:100px;height:100px;object-fit:contain;display:block;margin:0 auto 15px}.login-card h2{text-align:center}.login-card label{margin-top:14px}.login-card button{width:100%;margin-top:18px}.login-card p{text-align:center}.login-card a{color:var(--g);text-decoration:none}
footer{text-align:center;padding:28px;color:var(--muted);font-size:13px}
@media(max-width:800px){.hero-grid,.grid{grid-template-columns:1fr}.hero-logo{width:130px;height:130px}.hero h1{font-size:34px}.steps{grid-template-columns:1fr 1fr}.statusbox,.stats,.detailgrid{grid-template-columns:1fr 1fr}.statusform,.filter{flex-wrap:wrap}.statusform button,.filter button{width:100%}}
@media(max-width:500px){.steps,.statusbox,.stats,.detailgrid{grid-template-columns:1fr}.nav{height:auto;padding-top:10px;padding-bottom:10px}.brand span{font-size:14px}.adminname{display:none}}
