:root{--bg:#0e1512;--card:#16201b;--line:#26352d;--fg:#e8efe9;--mut:#93a699;--ac:#d4a937;--ac2:#2f9e6b;--bad:#d9534f;--r:14px}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--ac)}
.wrap{max-width:1000px;margin:0 auto;padding:18px 16px}
.narrow{max-width:420px}
h1,h2,h3{margin:.2em 0 .5em;line-height:1.2}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;margin:0 0 16px}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.row>*{flex:1 1 180px;min-width:0}
label{display:block;font-size:13px;color:var(--mut);margin:0 0 4px}
input,select,textarea{width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:#0e1512;color:var(--fg);font:inherit}
input:focus,select:focus,textarea:focus{outline:2px solid var(--ac);border-color:var(--ac)}
input[type=checkbox]{width:auto}
.btn{display:inline-block;padding:11px 18px;border-radius:999px;border:0;background:var(--ac);color:#1b1503;font-weight:700;cursor:pointer;text-decoration:none;font-size:14px}
.btn.alt{background:transparent;border:1.5px solid var(--line);color:var(--fg)}
.btn.bad{background:var(--bad);color:#fff}
.btn.sm{padding:7px 12px;font-size:13px}
.btn.wa{background:#25d366;color:#052e16}
.flash{padding:12px 16px;text-align:center;font-weight:600}
.flash.ok{background:#1f5b3f}.flash.err{background:#7a2b29}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
.tabs a{padding:8px 14px;border-radius:999px;border:1px solid var(--line);color:var(--fg);text-decoration:none;font-size:14px}
.tabs a.on{background:var(--ac);color:#1b1503;border-color:var(--ac);font-weight:700}
.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th,.tbl td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tblbox{overflow-x:auto}
.mut{color:var(--mut)}.small{font-size:13px}
.pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700;background:#26352d}
.pill.ok{background:#1f5b3f}.pill.bad{background:#7a2b29}.pill.warn{background:#6b5a14}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:0 0 16px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px}
.stat b{display:block;font-size:26px;color:var(--ac)}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px}
form.inline{display:inline}
/* halaman publik */
.pub .hero{text-align:center;padding:28px 0 8px}
.pub .hero h1{font-size:clamp(24px,6vw,36px)}
.vid{margin:0 0 18px}
.frame{position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;background:#000;border:1px solid var(--line)}
.frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vid .vt{font-weight:700;margin:10px 0 2px}
.vid .vb{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.brosur img{width:100%;border-radius:var(--r);border:1px solid var(--line);display:block}
.fab{position:sticky;bottom:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(transparent,var(--bg) 40%);text-align:center}
.fab .btn{width:100%;max-width:480px;padding:15px;font-size:16px}
.foot{text-align:center;color:var(--mut);font-size:12px;padding:18px 0 90px}
