:root{--bg:#f8fafc;--sf:#fff;--ink:#0f172a;--mut:#64748b;--bd:rgba(226,232,240,.9);--pri:#1e3a8a;--sec:#047857;--amb:#d97706;--mint:#10b981;--ice:#eff6ff;--mist:#ecfdf5;--wash:#fef3c7;--glass:rgba(255,255,255,.88);--onpri:#fff;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0b1220;--sf:#131c31;--ink:#e8eefc;--mut:#94a3b8;--bd:rgba(51,65,85,.8);--pri:#8fa8ff;--sec:#34d399;--ice:#1a2547;--mist:#0f2a24;--wash:#3a2a0c;--glass:rgba(19,28,49,.88);--onpri:#0b1220}}
:root[data-theme="dark"]{--bg:#0b1220;--sf:#131c31;--ink:#e8eefc;--mut:#94a3b8;--bd:rgba(51,65,85,.8);--pri:#8fa8ff;--sec:#34d399;--ice:#1a2547;--mist:#0f2a24;--wash:#3a2a0c;--glass:rgba(19,28,49,.88);--onpri:#0b1220}
*{box-sizing:border-box}html{scroll-padding-top:70px}[hidden]{display:none!important}
body{margin:0;font-family:'Plus Jakarta Sans',system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;font-size:14px}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--bg);z-index:60}
body::after{content:"";position:fixed;top:-15%;right:-10%;width:60vw;height:60vw;background:radial-gradient(circle,rgba(4,120,87,.10),transparent 65%);z-index:-1;pointer-events:none}
h1,h2,h3{margin:0;letter-spacing:-.02em;line-height:1.2}h1{font-size:30px;font-weight:800}h2{font-size:24px;font-weight:700}h3{font-size:16px;font-weight:700}
@media(min-width:768px){h1{font-size:44px}h2{font-size:30px}}
a{color:inherit}code{background:var(--ice);padding:1px 6px;border-radius:6px}
.wrap{max-width:1240px;margin:0 auto;padding:0 16px}@media(min-width:768px){.wrap{padding:0 32px}}
main{padding:24px 0 150px}section{margin-top:44px}section:first-child{margin-top:8px}
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--glass);backdrop-filter:blur(12px) saturate(160%);-webkit-backdrop-filter:blur(12px) saturate(160%);border-bottom:1px solid var(--bd)}
.bar{display:flex;align-items:center;gap:10px;height:56px}.sp{flex:1}
.logo{font-weight:800;font-size:18px;display:flex;gap:8px;align-items:center;text-decoration:none}
.logo i{font-style:normal;background:linear-gradient(135deg,#1e3a8a,#047857);color:#fff;width:32px;height:32px;border-radius:10px;display:grid;place-items:center}
nav.d{display:none;margin-left:auto;gap:4px}nav.d a{padding:8px 14px;border-radius:99px;text-decoration:none;font-weight:600;color:var(--mut)}nav.d a.on,nav.d a:hover{background:var(--ice);color:var(--pri)}
@media(min-width:900px){nav.d{display:flex}.dock{display:none!important}}
.ic{border:1px solid var(--bd);background:var(--sf);color:var(--ink);width:38px;height:38px;border-radius:99px;cursor:pointer;font-size:16px}
.btn{font:inherit;font-weight:700;border:0;border-radius:99px;padding:12px 22px;cursor:pointer;transition:transform .2s;background:var(--pri);color:var(--onpri);text-decoration:none;display:inline-block;text-align:center}
.btn:hover{transform:translateY(-1px)}.btn.sm{padding:8px 16px;font-size:13px}
.btn.amb{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 8px 20px -4px rgba(217,119,6,.35);animation:pulse 2.6s ease-in-out infinite}
.btn.gh{background:transparent;border:1.5px solid var(--sec);color:var(--sec)}
@keyframes pulse{50%{transform:scale(1.035)}}
:focus-visible{outline:3px solid rgba(30,58,138,.45);outline-offset:2px}
.card{background:var(--sf);border:1px solid var(--bd);border-radius:16px;padding:18px;box-shadow:0 2px 8px -2px rgba(15,23,42,.06)}.lv2{box-shadow:0 8px 24px -4px rgba(30,58,138,.12)}
.pill{display:inline-flex;gap:6px;border-radius:99px;padding:4px 12px;font-size:11px;font-weight:700;letter-spacing:.04em;background:#f1f5f9;color:#334155}.pill.eb{background:var(--wash);color:#b45309}.pill.ok{background:var(--mist);color:var(--sec)}
.live{width:8px;height:8px;border-radius:50%;background:var(--mint);position:relative;display:inline-block}.live::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--mint);animation:ping 1.6s infinite}@keyframes ping{to{transform:scale(3.2);opacity:0}}
.grid{display:grid;gap:16px;grid-template-columns:1fr}.g4{grid-template-columns:repeat(2,1fr)}@media(min-width:768px){.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.mut{color:var(--mut)}.small{font-size:12px}
.hero{display:grid;gap:28px;align-items:center}@media(min-width:900px){.hero{grid-template-columns:1.2fr 1fr}}
.demo{background:linear-gradient(160deg,#1e3a8a,#0f766e);color:#fff;border-radius:24px;padding:20px}.demo .raw{background:rgba(255,255,255,.14);border-radius:12px;padding:12px;margin-top:10px;min-height:64px;font-size:13px}
.demo .out{background:#fff;color:#0f172a;border-radius:12px;padding:14px;margin-top:12px;font-size:13px;animation:rise 6s infinite}@keyframes rise{0%,25%{opacity:0;transform:translateY(14px)}40%,90%{opacity:1;transform:none}100%{opacity:0}}
.cursor{display:inline-block;width:2px;height:1em;background:#fff;vertical-align:-2px;animation:bl 1s steps(2) infinite}@keyframes bl{50%{opacity:0}}
.price .big{font-size:36px;font-weight:800;letter-spacing:-.03em}.price ul{padding-left:18px;color:var(--mut)}.price.hot{border:2px solid var(--amb)}
.bar2{height:8px;background:#e2e8f0;border-radius:99px;overflow:hidden;margin:6px 0}.bar2>i{display:block;height:100%;background:linear-gradient(90deg,#10b981,#34d399);transition:width 1s}
table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:10px;border-bottom:1px solid var(--bd);text-align:left}.sc{overflow-x:auto}
input,textarea,select{font:inherit;width:100%;height:48px;border:1.5px solid #cbd5e1;border-radius:8px;padding:0 14px;background:var(--sf);color:var(--ink)}textarea{height:auto;min-height:110px;padding:12px;resize:vertical}
input:focus,textarea:focus,select:focus{border-color:var(--pri);box-shadow:0 0 0 3px rgba(30,58,138,.15);outline:0}label{font-weight:600;font-size:13px;display:block;margin:12px 0 6px}
.tabs{display:flex;gap:6px;margin:16px 0;flex-wrap:wrap}.tabs button{font:inherit;font-weight:600;border:1px solid var(--bd);background:var(--sf);color:var(--mut);padding:8px 16px;border-radius:99px;cursor:pointer}.tabs button.on{background:var(--pri);color:var(--onpri)}
.tile{display:block;text-decoration:none;transition:transform .2s,box-shadow .2s}.tile:hover{transform:translateY(-3px);box-shadow:0 8px 24px -4px rgba(30,58,138,.15)}.tile .em{font-size:28px}
.tile.locked{opacity:.75}.tile.locked::after{content:"🔒 Upgrade Premium untuk Membuka Tools Ini";display:block;font-size:11px;font-weight:700;color:var(--amb);margin-top:8px}
.post{display:flex;gap:12px}.vote{border:1px solid var(--bd);background:var(--sf);color:var(--ink);border-radius:12px;min-width:48px;height:58px;cursor:pointer;font:inherit;font-weight:700;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .2s}.vote.on{background:var(--mist);color:var(--sec);border-color:var(--sec);transform:scale(1.06)}
.col{background:var(--ice);border-radius:16px;padding:12px;min-height:80px}.col .card{margin-top:10px;padding:12px}
.prof{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.av{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#1e3a8a,#047857);color:#fff;font-size:30px;font-weight:800;display:grid;place-items:center}
.dock{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:55;background:var(--glass);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border:1px solid rgba(255,255,255,.6);border-radius:24px;box-shadow:0 12px 32px -6px rgba(15,23,42,.18);display:flex;padding:6px}
.dock a{flex:1;text-decoration:none;text-align:center;font-size:10px;font-weight:700;padding:6px 4px;border-radius:16px;color:var(--mut)}.dock a b{display:block;font-size:20px;font-weight:400}.dock a.on{background:var(--ice);color:var(--pri)}
.sticky{position:fixed;left:12px;right:12px;bottom:calc(86px + env(safe-area-inset-bottom,0px));z-index:54;display:flex;justify-content:center;pointer-events:none}.sticky .btn{pointer-events:auto}
@media(min-width:900px){.sticky{bottom:20px}main{padding-bottom:110px}}
.wa{position:fixed;right:14px;bottom:calc(150px + env(safe-area-inset-bottom,0px));z-index:53;width:52px;height:52px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-size:24px;text-decoration:none;box-shadow:0 8px 20px -4px rgba(37,211,102,.5)}@media(min-width:900px){.wa{bottom:80px}}
.modal{position:fixed;inset:0;z-index:100;background:rgba(15,23,42,.55);display:none;align-items:flex-end;justify-content:center}.modal.open{display:flex}
.sheet{background:var(--sf);width:100%;max-width:480px;border-radius:24px 24px 0 0;padding:22px;max-height:90vh;overflow:auto;animation:up .3s}@media(min-width:600px){.modal{align-items:center}.sheet{border-radius:24px}}@keyframes up{from{transform:translateY(40px);opacity:0}}
.toast{position:fixed;top:calc(68px + env(safe-area-inset-top,0px));left:50%;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 18px;border-radius:99px;font-weight:600;z-index:200;opacity:0;transition:.3s;pointer-events:none}.toast.show{opacity:1}
.off{display:none;background:#fef3c7;color:#92400e;text-align:center;padding:6px;font-weight:600;font-size:12px}.foot{padding-bottom:140px}
.view{animation:fade .35s}@keyframes fade{from{opacity:0;transform:translateY(8px)}}
.doc{background:#fff;color:#111;border:1px solid #cbd5e1;border-radius:8px;padding:20px;margin-top:14px;font-family:Georgia,serif;line-height:1.7}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media print{body *{visibility:hidden}.doc,.doc *{visibility:visible}.doc{position:absolute;inset:0;border:0}}
.pp{display:flex;gap:12px}.pav{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#1e3a8a,#047857);color:#fff;font-weight:800;display:grid;place-items:center;flex:none}
.like{border:1px solid var(--bd);background:var(--sf);color:var(--ink);border-radius:99px;padding:4px 12px;cursor:pointer;font:inherit;font-weight:600}.like.on{background:var(--mist);color:var(--sec);border-color:var(--sec)}
.ci{display:flex;gap:10px;align-items:center;padding:10px;border-radius:12px;cursor:pointer}.ci:hover{background:var(--ice)}
.msgs{height:340px;overflow:auto;display:flex;flex-direction:column;gap:6px;padding:6px}.b{max-width:80%;padding:8px 12px;border-radius:14px;background:var(--ice);word-break:break-word}.b.me{align-self:flex-end;background:var(--pri);color:var(--onpri)}.b small{display:block;opacity:.7;font-size:10px}
