/* NEST Dev v3.5 — gaya fitur baru: Segera hadir & daftar tunggu, 2FA & akun staf, kesehatan situs, rekap fee,
   dokumentasi per jenis + pencarian langsung, Area Pelanggan (perapian). Memakai token warna tema (terang/gelap). */

/* Segera hadir & daftar tunggu */
.badge-soon{background:var(--brand-3-solid,#6d28d9);color:#fff}
.card-media .badge-soon{background:var(--brand-3-solid,#6d28d9);color:#fff}
.soon-price{color:var(--brand-3,#7c3aed);font-size:1.05rem}
.waitlist{border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:var(--surface-2);margin-top:12px}
.waitlist h3{display:flex;align-items:center;gap:8px;font-size:1rem;margin:0 0 10px}
.waitlist .field{margin-bottom:10px}
.waitlist .check{align-items:flex-start;font-weight:500;line-height:1.45}
.waitlist .check input{margin-top:3px;flex:none}
.wl-wa .check{margin-bottom:6px}
.seg-list{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.wl-prod{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;color:var(--ink)}
.wl-prod.active,.wl-prod:hover{border-color:var(--brand)}
.wl-prod.active{background:var(--brand-soft)}

/* 2FA & akun */
.tfa-code{font-size:1.25rem;letter-spacing:.25em;text-align:center;font-variant-numeric:tabular-nums}
.tfa-steps{padding-left:18px;margin:0 0 14px;line-height:1.6}
.tfa-qr{display:grid;place-items:center;padding:14px;background:#fff;border-radius:14px;border:1px solid var(--line);width:max-content;margin:0 auto 12px}
.tfa-qr canvas{width:220px;height:220px;image-rendering:pixelated}
.tfa-secret{text-align:center}
.tfa-secret code{font-size:1rem;letter-spacing:.08em;word-break:break-all}
.tfa-codes ul{list-style:none;padding:0;margin:0 0 12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.tfa-codes li code{display:block;text-align:center;padding:8px;border:1px dashed var(--line);border-radius:10px;font-size:1rem;letter-spacing:.06em}
@media print{.tfa-codes{border:0}.sidebar,.admin-top,.grid-2a,.toast{display:none!important}}
.acct-link{display:flex;align-items:center;gap:8px;padding:.5rem .75rem;border-radius:10px;color:var(--ink);font-weight:600;margin-bottom:6px}
.acct-link:hover,.acct-link.active{background:var(--surface-2)}

/* Staf & hak akses */
fieldset.perm-lock{border:0;padding:0;margin:0;min-width:0}
fieldset.perm-lock:disabled{opacity:.72}
fieldset.perm-lock+fieldset.perm-lock,.panel+fieldset.perm-lock,fieldset.perm-lock+.panel{margin-top:20px}
.perm-table td.num,.perm-table th.num{text-align:center;width:72px}
.perm-table input[type=checkbox]{width:18px;height:18px}
.staff-cards{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.staff-cards .panel+.panel{margin-top:0}
.staff-card{display:flex;flex-direction:column;gap:6px;color:var(--ink)}
.staff-card strong{font-size:1.5rem}
.staff-card .icon{color:var(--brand)}

/* Kesehatan situs */
.health-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.health-grid .panel+.panel{margin-top:0}
.health-card{border-left:4px solid var(--brand)}
.health-card.is-warn{border-left-color:var(--star)}
.health-card.is-fail{border-left-color:var(--danger)}
.health-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:6px}
.health-card p{margin:0 0 4px}

/* Rekap fee */
.recap-table th.num,.recap-table td.num{white-space:nowrap}
.recap-table td:first-child{min-width:200px}
.m-recap{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}

/* Dokumentasi per jenis + pencarian langsung */
.doc-wide{max-width:1180px}
.doc-kinds{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.doc-kinds a{display:inline-flex;gap:6px;align-items:center;padding:6px 12px;border-radius:99px;font-weight:700;font-size:.85rem}
.doc-kinds a span{opacity:.7;font-weight:600}
.doc-kind{display:inline-block;padding:.12em .55em;border-radius:99px;font-size:.72rem;font-weight:700;background:var(--surface-2);color:var(--muted)}
.doc-kind.k-fitur{background:var(--brand-soft);color:var(--brand)}
.doc-kind.k-mulai-cepat{background:var(--sky-soft);color:var(--brand-2)}
.doc-kind.k-masalah{background:var(--accent-soft);color:var(--accent)}
.doc-kind.k-istilah{background:color-mix(in srgb,var(--brand-3) 16%,transparent);color:var(--brand-3)}
.doc-kind-block{margin-top:10px}
.doc-kind-title{font-size:1.35rem;margin:26px 0 4px;padding-top:6px;border-top:1px solid var(--line)}
.doc-kind-block:first-of-type .doc-kind-title{border-top:0}
.doc-list-cards a{align-items:flex-start;align-content:flex-start;flex-wrap:wrap;row-gap:4px}
.doc-list-cards a>span:first-of-type{flex:1;min-width:0}
.doc-list-cards small.dl-sum{flex-basis:100%;order:3;padding-left:28px;font-weight:500;line-height:1.45;color:var(--muted)}
.doc-hit-h{color:var(--brand);font-weight:600}
.doc-hit mark,.doc-mark{background:color-mix(in srgb,var(--star) 30%,transparent);color:inherit;border-radius:3px;padding:0 1px}
.doc-mark-first{outline:2px solid var(--star);outline-offset:1px}
.doc-none{margin:0 0 4px}
.doc-hit:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.doc-badges{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px}
.doc-role{display:inline-block;padding:.12em .55em;border-radius:99px;font-size:.72rem;font-weight:600;border:1px solid var(--line);color:var(--muted)}
.doc-nav-kind{font-size:.8rem;font-weight:800;color:var(--ink);margin:16px 0 0}
.doc-search-mini{margin-bottom:12px;padding:4px 12px}
.doc-search-mini input{padding:.4em .2em;font-size:.9rem;min-width:0;flex:1}
.doc-mark-note{background:var(--surface-2);border-radius:10px;padding:8px 12px}
.doc-rule{scroll-margin-top:90px}
.doc-rule-id{text-decoration:none}
.doc-body h2,.doc-body h3{scroll-margin-top:90px}
.doc-toc{position:sticky;top:90px;font-size:.86rem;display:none}
.doc-toc-in{display:flex;flex-direction:column;gap:4px;border-left:2px solid var(--line);padding-left:12px}
.doc-toc-in strong{margin-bottom:4px}
.doc-toc a{color:var(--muted)}
.doc-toc a:hover{color:var(--brand)}
@media (min-width:1280px){
  .doc-layout.has-toc{grid-template-columns:250px minmax(0,980px) 220px;justify-content:space-between;max-width:none}
  .doc-toc{display:block}
}
@media (min-width:1600px){.doc-layout{gap:44px}}

/* Penjelasan fitur di halaman produk */
.fx-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.fx-card{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink)}
.fx-card:hover{border-color:var(--brand)}
.fx-card .small:last-child{color:var(--muted);line-height:1.5}

@media (max-width:640px){
  .perm-table td.num,.perm-table th.num{width:52px}
  .tfa-qr canvas{width:190px;height:190px}
}

/* perapian layar HP (sapu tampilan v3.5) */
.panel-head .seg{display:flex;flex-wrap:wrap;gap:6px}
.doc-body p,.doc-body li{overflow-wrap:break-word}
.doc-body td,.doc-body th{min-width:7.5em}
.doc-layout .doc-body{max-width:980px}
.doc-body table{display:block;max-width:100%;overflow-x:auto}
.doc-body pre{max-width:100%;overflow-x:auto}
@media (max-width:900px){.doc-layout,.doc-layout.has-toc{grid-template-columns:minmax(0,1fr)}.doc-search-mini input{width:100%}}
