/* fk-nav: navigasi & menu HP bersama untuk halaman tools (dari beranda). */
/* Palet: 5 warna solid design system Founderku + putih; abu-abu dari navy transparan */
:root{
  --navy:#1A1730; --navy-deep:#0E0C1A; --orange:#F2A93E; --coral:#E85F3D; --purple:#8A85B8;
  --bg:#FAF9FB; --panel:rgba(26,23,48,.035); --panel-2:rgba(26,23,48,.06); --card:#FFFFFF;
  --line:rgba(26,23,48,.08); --line-2:rgba(26,23,48,.14);
  --text:#1A1730; --soft:rgba(26,23,48,.68); --faint:rgba(26,23,48,.48);
  --btn:#1A1730; --btn-text:#FFFFFF; --glass:rgba(255,255,255,.66);
  --shadow:0 24px 50px -30px rgba(14,12,26,.35); --pill-text:#9A5F0C; --menu-bg:rgba(255,255,255,.97);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0E0C1A; --panel:rgba(255,255,255,.04); --panel-2:rgba(255,255,255,.07); --card:#1A1730;
    --line:rgba(255,255,255,.08); --line-2:rgba(255,255,255,.16);
    --text:#FFFFFF; --soft:rgba(255,255,255,.72); --faint:rgba(255,255,255,.5);
    --btn:#FFFFFF; --btn-text:#1A1730; --glass:rgba(26,23,48,.66);
    --shadow:0 24px 50px -30px rgba(0,0,0,.8); --pill-text:#F2A93E; --menu-bg:rgba(26,23,48,.97);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0E0C1A; --panel:rgba(255,255,255,.04); --panel-2:rgba(255,255,255,.07); --card:#1A1730;
  --line:rgba(255,255,255,.08); --line-2:rgba(255,255,255,.16);
  --text:#FFFFFF; --soft:rgba(255,255,255,.72); --faint:rgba(255,255,255,.5);
  --btn:#FFFFFF; --btn-text:#1A1730; --glass:rgba(26,23,48,.66);
  --shadow:0 24px 50px -30px rgba(0,0,0,.8); --pill-text:#F2A93E; --menu-bg:rgba(26,23,48,.97);
  color-scheme:dark;
}
[hidden]{display:none!important}
.o{color:var(--orange)}
.btn{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:12px 24px;font-size:15.5px;font-weight:500;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform .2s ease,background-color .2s,border-color .2s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-solid{background:var(--btn);color:var(--btn-text)}
.btn-line{border-color:var(--line-2);background:var(--card);color:var(--text)}
.btn-line:hover{border-color:var(--text)}
.btn-sm{padding:8px 16px;font-size:14.5px}
/* ---------- Navigasi ---------- */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;transition:background-color .3s,border-color .3s;border-bottom:1px solid transparent}
/* Blur ditaruh di lapisan terpisah (bukan di .nav) supaya menu dropdown di dalamnya tetap padat:
   efek blur yang bertumpuk tidak bisa dirender browser */
.nav::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:var(--glass);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);transition:opacity .3s}
.nav.scrolled::before{opacity:1}
.nav.scrolled{border-bottom-color:var(--line)}
.nav-in{max-width:1320px;margin:0 auto;display:flex;align-items:center;gap:28px;padding:16px clamp(16px,3vw,40px)}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:600;font-size:19px;letter-spacing:-.02em}
.logo img{width:32px;height:32px}
.menu{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.menu > li{position:relative}
.menu > li > a,.menu > li > button{display:flex;align-items:center;gap:4px;padding:8px 13px;border-radius:10px;font-size:15.5px;color:var(--soft);text-decoration:none;background:none;border:0;cursor:pointer}
.menu > li > button svg{width:12px;height:12px;transition:transform .25s}
.menu > li:hover > a,.menu > li:hover > button,.menu > li.open > button{color:var(--text);background:var(--panel)}
.menu > li.open > button svg{transform:rotate(180deg)}
.menu > li > a{white-space:nowrap}
.nb{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--orange);color:#1A1730;font-size:10.5px;font-weight:600;line-height:1.5;vertical-align:1px;letter-spacing:0}
.mega{position:absolute;top:calc(100% + 10px);left:-10px;min-width:540px;padding:10px;border-radius:20px;background:var(--menu-bg);border:1px solid var(--line);box-shadow:var(--shadow);
  -webkit-backdrop-filter:blur(28px) saturate(170%);backdrop-filter:blur(28px) saturate(170%);
  opacity:0;visibility:hidden;transform:translateY(-6px) scale(.98);transform-origin:top left;transition:opacity .2s,transform .25s cubic-bezier(.2,.9,.3,1.2),visibility .2s;display:grid;grid-template-columns:1fr 1fr;gap:4px}
.mega.one{min-width:300px;grid-template-columns:1fr}
.menu > li.open .mega{opacity:1;visibility:visible;transform:none}
.mega a{display:flex;gap:12px;align-items:flex-start;padding:10px;border-radius:14px;text-decoration:none}
.mega a:hover{background:var(--panel-2)}
.mega b{display:block;font-size:15px;font-weight:500}
.mega small{display:block;font-size:13px;color:var(--faint);line-height:1.45}
.mega .orb{width:30px;height:30px}
.mega .foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;margin-top:4px;border-top:1px solid var(--line);font-size:12.5px;color:var(--soft)}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:8px}
.icon-btn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);background:var(--card);color:var(--text);cursor:pointer;font-size:11.5px;font-weight:600}
.icon-btn svg{width:16px;height:16px}
.lang{position:relative}
.lang-menu{position:absolute;right:0;top:calc(100% + 8px);display:none;flex-direction:column;padding:6px;border-radius:14px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);min-width:84px}
.lang.open .lang-menu{display:flex}
.lang-menu button{border:0;background:none;color:var(--soft);font-size:13px;padding:8px 10px;border-radius:9px;text-align:left;cursor:pointer}
.lang-menu button:hover,.lang-menu button[aria-current="true"]{background:var(--panel-2);color:var(--text)}
.burger{display:none}
.nav-back{flex-shrink:0;width:40px;height:40px;margin-right:-14px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-2);background:var(--card);color:var(--text);text-decoration:none;transition:background .2s,transform .2s}
.nav-back:hover{background:var(--panel-2);transform:translateX(-2px)}
.nav-back svg{width:18px;height:18px}
.sheet-prefs{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 2px;border-bottom:1px solid var(--line);font-size:14px;color:var(--soft)}
.sheet-prefs div{display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--panel-2)}
.sheet-prefs button{border:0;background:none;color:var(--soft);font:inherit;font-size:13px;font-weight:600;min-width:40px;height:34px;border-radius:999px;cursor:pointer;display:grid;place-items:center}
.sheet-prefs button[aria-current="true"]{background:var(--card);color:var(--text);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.sheet-prefs button svg{width:16px;height:16px}
body:has(.sheet.show) .fkai-fab{display:none}

.tb{font-style:normal;font-size:10.5px;font-weight:500;padding:1px 7px;border-radius:999px;background:rgba(138,133,184,.2);color:#4F4A86;margin-left:6px;vertical-align:1px;white-space:nowrap}
.sheet a.all{font-weight:500;color:var(--text)}

/* ---------- Bola orb ---------- */
.orb{display:block;position:relative;border-radius:50%;overflow:hidden;isolation:isolate;flex-shrink:0;clip-path:circle(50%);-webkit-mask-image:-webkit-radial-gradient(white,black)}
.orb i{position:absolute;inset:-25%;border-radius:50%;filter:blur(12px)}
.orb.spin i{animation:swirl 14s linear infinite}
.orb::after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 32% 26%,rgba(255,255,255,.85),rgba(255,255,255,0) 34%),radial-gradient(circle at 70% 80%,rgba(14,12,26,.28),transparent 55%);z-index:1}
@keyframes swirl{to{transform:rotate(360deg)}}
.o-pajangin i{background:conic-gradient(from 20deg,#F2A93E,#E85F3D,#F7CD8A,#F2A93E,#E85F3D,#F2A93E)}
.o-notain i{background:conic-gradient(from 90deg,#8A85B8,#1A1730,#B9B5DA,#8A85B8,#E85F3D,#8A85B8)}
.o-pajakin i{background:conic-gradient(from 180deg,#E85F3D,#8A85B8,#F2A93E,#E85F3D,#8A85B8,#E85F3D)}
.o-kontrakin i{background:conic-gradient(from 0deg,#1A1730,#8A85B8,#F2A93E,#1A1730,#8A85B8,#1A1730)}
.o-jalanin i{background:conic-gradient(from 60deg,#F2A93E,#8A85B8,#FFFFFF,#F2A93E,#8A85B8,#F2A93E)}
.o-sehatin i{background:conic-gradient(from 140deg,#E85F3D,#FFFFFF,#F2A93E,#E85F3D,#8A85B8,#E85F3D)}
.o-brand i,.o-g0 i{background:conic-gradient(from 30deg,#8A85B8,#E85F3D,#F2A93E,#8A85B8,#E85F3D,#8A85B8)}
.o-web i,.o-g1 i{background:conic-gradient(from 110deg,#1A1730,#E85F3D,#8A85B8,#1A1730,#F2A93E,#1A1730)}
.o-mvp i,.o-g2 i{background:conic-gradient(from 200deg,#F2A93E,#1A1730,#E85F3D,#F2A93E,#8A85B8,#F2A93E)}
.o-talk i,.o-g3 i{background:conic-gradient(from 0deg,#FFFFFF,#8A85B8,#F2A93E,#FFFFFF,#E85F3D,#FFFFFF)}
.o-g4 i{background:conic-gradient(from 90deg,#E85F3D,#F2A93E,#FFFFFF,#E85F3D,#8A85B8,#E85F3D)}
.o-g5 i{background:conic-gradient(from 45deg,#8A85B8,#FFFFFF,#E85F3D,#8A85B8,#1A1730,#8A85B8)}

/* ---------- Menu HP ---------- */
.sheet{position:fixed;inset:0;z-index:70;background:var(--bg);color:var(--text);transform:translateY(-100%);visibility:hidden;transition:transform .5s cubic-bezier(.2,.9,.25,1),visibility .5s;padding:16px 20px calc(16px + env(safe-area-inset-bottom,0px));overflow:auto;display:flex;flex-direction:column}
.sheet.show{transform:none;visibility:visible}
.sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding-top:env(safe-area-inset-top,0px)}
.sheet details{border-bottom:1px solid var(--line)}
.sheet summary,.sheet nav > a{list-style:none;display:flex;justify-content:space-between;padding:16px 2px;font-size:20px;letter-spacing:-.02em;text-decoration:none;cursor:pointer}
.sheet summary::-webkit-details-marker{display:none}
.sheet nav > a{border-bottom:1px solid var(--line)}
.sheet details a{display:flex;align-items:center;gap:10px;padding:8px 2px;text-decoration:none;font-size:14px;color:var(--soft)}
.sheet details a .orb{width:22px;height:22px}
.sheet details > div{padding-bottom:12px}
.sheet .btns{margin-top:auto;display:grid;gap:8px;padding-top:20px}
.sheet .btns .btn{justify-content:center;padding:12px}

/* Dasar yang dikurung di dalam nav & menu HP saja */
.nav,.sheet{font-family:Poppins,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.6;color:var(--text);-webkit-font-smoothing:antialiased;text-align:left}
:where(.nav,.sheet),:where(.nav,.sheet) *{box-sizing:border-box}
:where(.nav,.sheet) a{color:inherit}
:where(.nav,.sheet) :where(p,ul){margin:0}
:where(.nav,.sheet) button{font-family:inherit}
:where(.nav,.sheet) img{max-width:100%}
.nav{background:var(--bg)}
@media (max-width:1200px){.menu{display:none}.burger{display:grid}.nav-right .hide-m{display:none}}
@media (max-width:600px){.nav-back{width:36px;height:36px;margin-right:-2px}.nav-right #lang,.nav-right #themeBtn{display:none}body .fkai-fab{width:50px;height:50px;padding:0;justify-content:center;border-radius:50%}body .fkai-fab span{display:none}.nav-in{gap:10px}.nav-right{gap:6px}.icon-btn{width:36px;height:36px}.logo{font-size:17px}.logo img{width:28px;height:28px}.btn{padding:11px 20px;font-size:15px}.btn-sm{padding:7px 14px;font-size:14px}}
@media print{.nav,.sheet{display:none!important}}

/* iPhone otomatis zoom kalau kolom isian di bawah 16px. Paksa 16px di layar sentuh supaya tidak zoom. */
@media (pointer:coarse){:is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea):not(.text-lg,.text-xl,.text-2xl,.text-3xl){font-size:16px!important}}
