/* =========================================================
   v4.65 — VIP Signal: ringkasan sederhana untuk orang awam
   (includes/vip-ringkas-awam.php). Semua kelas berawalan .vr-
   ========================================================= */
.vr{--vr-navy:#0a1f3d;--vr-biru:#1f7cff;--vr-profit:#12a36b;--vr-loss:#e2554b;--vr-garis:#e1e9f4;--vr-redup:#5f7189;
  display:grid;gap:18px;margin:0 0 44px}
.vr .is-profit{color:var(--vr-profit)}
.vr .is-loss{color:var(--vr-loss)}

/* 1. hero */
.vr-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;
  padding:clamp(22px,3.4vw,38px);border-radius:24px;color:#fff;
  background:radial-gradient(520px 260px at 92% 0%,rgba(92,200,255,.28),transparent 70%),
             radial-gradient(420px 300px at 0% 100%,rgba(31,124,255,.30),transparent 70%),
             linear-gradient(135deg,#0a1f3d 0%,#0f2f5e 55%,#123f7a 100%);
  box-shadow:0 30px 60px -36px rgba(10,31,61,.75)}
.vr-hero::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;
  background-image:linear-gradient(rgba(124,196,255,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(124,196,255,.10) 1px,transparent 1px);
  background-size:44px 44px;mask-image:linear-gradient(90deg,transparent 30%,#000 100%)}
.vr-hero>*{position:relative;z-index:1}
.vr-label{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;padding:6px 12px;border-radius:99px;
  background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#cfe3ff}
.vr-titik{width:8px;height:8px;border-radius:50%;background:#3ddc97;box-shadow:0 0 0 4px rgba(61,220,151,.18)}
.vr-judul{margin:0 0 10px;color:#fff;font-size:clamp(1.7rem,3.6vw,2.6rem);line-height:1.12;letter-spacing:-.02em}
.vr-sorot{background:linear-gradient(100deg,#7cc4ff,#5ce0b0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.vr-sub{margin:0 0 20px;max-width:58ch;color:#b9cbe4;font-size:1.02rem;line-height:1.6}
.vr-sub b{color:#fff}
.vr-angka{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:560px}
.vr-angka li{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}
.vr-angka span{display:block;font-size:.78rem;color:#a9bddb;margin-bottom:4px}
.vr-angka b{font-size:1.6rem;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.vr-hero .vr-angka .is-profit b{color:#5ce0b0}
.vr-hero .vr-angka .is-loss b{color:#ff9a90}
.vr-periode{display:flex;flex-wrap:wrap;gap:8px}
.vr-pil{font-size:.82rem;color:#c8d8ee;padding:6px 12px;border-radius:99px;background:rgba(3,9,20,.28);border:1px solid rgba(255,255,255,.10)}
.vr-pil b{color:#fff;margin-right:4px}

.vr-donut{--p:0;width:clamp(150px,18vw,200px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;
  background:conic-gradient(#3ddc97 calc(var(--p)*1%),#ff8a80 0);
  box-shadow:0 0 0 10px rgba(255,255,255,.05),0 20px 50px -20px rgba(61,220,151,.45);
  animation:vr-putar 1.1s cubic-bezier(.2,.65,.25,1) both}
.vr-donut-isi{width:74%;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;
  background:linear-gradient(160deg,#0d2852,#0a1f3d)}
.vr-donut-isi b{font-size:clamp(1.8rem,3.4vw,2.4rem);line-height:1;color:#fff}
.vr-donut-isi span{font-size:.78rem;color:#a9bddb;margin-top:4px}
@keyframes vr-putar{from{transform:rotate(-90deg) scale(.85);opacity:0}to{transform:none;opacity:1}}

/* kartu */
.vr-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px}
.vr-kartu{background:#fff;border:1px solid var(--vr-garis);border-radius:20px;padding:clamp(18px,2.4vw,24px);
  box-shadow:0 18px 40px -34px rgba(10,31,61,.45);min-width:0}
.vr-kartu-kepala{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.vr-kartu h3{margin:0 0 4px;font-size:1.12rem;color:var(--vr-navy)}
.vr-kecil{margin:0;font-size:.85rem;color:var(--vr-redup);line-height:1.5}
.vr-chip{display:inline-flex;padding:4px;border-radius:12px;background:#f1f6fd;border:1px solid var(--vr-garis)}
.vr-chip button{border:0;background:transparent;padding:7px 13px;border-radius:9px;font:inherit;font-weight:700;font-size:.85rem;color:var(--vr-redup);cursor:pointer;min-height:36px}
.vr-chip button[aria-pressed="true"]{background:#fff;color:var(--vr-navy);box-shadow:0 4px 12px -6px rgba(10,31,61,.35)}
.vr-chip button:focus-visible{outline:2px solid var(--vr-biru);outline-offset:2px}

.vr-sim-hasil{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.vr-sim-hasil strong{display:block;font-size:clamp(1.6rem,3vw,2.1rem);line-height:1.1;font-variant-numeric:tabular-nums}
.vr-badge{font-size:.85rem;font-weight:700;padding:6px 12px;border-radius:99px;background:#e9f8f1}
.vr-badge.is-loss{background:#fdeeed}
.vr-grafik{display:block;width:100%;height:170px;overflow:visible}
.vr-garis{fill:none;stroke:var(--vr-biru);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.vr-nol{stroke:#c9d6e8;stroke-dasharray:4 5;stroke-width:1}
.vr-grafik-ket{display:flex;justify-content:space-between;font-size:.76rem;color:#8a9ab0;margin:6px 0 12px}
.vr-poin{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.vr-poin li{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:#33465f;line-height:1.5;padding:10px 12px;border-radius:12px;background:#f6f9fd}
.vr-poin i{font-style:normal}
.vr-catatan{margin:12px 0 0;font-size:.78rem;color:#8a9ab0;line-height:1.55}

.vr-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.vr-list li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;border:1px solid var(--vr-garis);background:#fbfdff}
.vr-ikon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-weight:800;font-size:.95rem;background:#e9f8f1;color:var(--vr-profit)}
.vr-list li.is-loss .vr-ikon{background:#fdeeed;color:var(--vr-loss)}
.vr-list li.is-netral .vr-ikon{background:#eef2f8;color:var(--vr-redup)}
.vr-list-teks b{display:flex;align-items:center;gap:6px;color:var(--vr-navy);font-size:.95rem}
.vr-list-teks small{display:block;color:var(--vr-redup);font-size:.8rem;margin-top:2px}
.vr-list li{color:inherit}
.vr-list li.is-profit .vr-list-nilai{color:var(--vr-profit)}
.vr-list li.is-loss .vr-list-nilai{color:var(--vr-loss)}
.vr-list-nilai{font-weight:800;font-variant-numeric:tabular-nums;font-size:.98rem}
.vr-arah{font-style:normal;font-size:.68rem;font-weight:800;letter-spacing:.04em;padding:2px 7px;border-radius:6px;text-transform:uppercase}
.vr-buy{background:#e6f1ff;color:#155fd6}
.vr-sell{background:#fff1e8;color:#c2551b}

.vr-baca{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vr-baca>div{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:#f3f8ff;border:1px solid #dce9fb}
.vr-baca i{font-style:normal;font-size:1.25rem;line-height:1.3}
.vr-baca p{margin:0;font-size:.9rem;color:#33465f;line-height:1.55}
.vr-baca b{color:var(--vr-navy)}

.vr-ajak{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 20px;border-radius:18px;
  background:linear-gradient(100deg,#eaf3ff,#f4fbff);border:1px solid #d3e5fb}
.vr-ajak p{margin:0;color:#24405f;max-width:62ch}

/* laporan lengkap (dilipat) */
.vr-lengkap{margin:8px 0 40px;border:1px solid var(--vr-garis,#e1e9f4);border-radius:20px;background:#fff;overflow:hidden}
.vr-lengkap>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px 22px}
.vr-lengkap>summary::-webkit-details-marker{display:none}
.vr-lengkap>summary:hover{background:#f7faff}
.vr-lengkap>summary:focus-visible{outline:2px solid #1f7cff;outline-offset:-2px}
.vr-lengkap-ikon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eaf3ff;font-size:1.2rem}
.vr-lengkap summary b{display:block;color:#0a1f3d;font-size:1.05rem}
.vr-lengkap summary small{display:block;color:#5f7189;font-size:.85rem;margin-top:2px;line-height:1.5}
.vr-lengkap-panah{width:12px;height:12px;border-right:2.5px solid #5f7189;border-bottom:2.5px solid #5f7189;transform:rotate(45deg);transition:transform .2s ease;margin-right:6px}
.vr-lengkap[open] .vr-lengkap-panah{transform:rotate(225deg)}
.vr-lengkap-isi{padding:6px clamp(14px,2vw,22px) 22px;border-top:1px solid #edf2f9}

@media (max-width:980px){
  .vr-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .vr-hero{grid-template-columns:minmax(0,1fr)}
  .vr-donut{order:-1;justify-self:start;width:132px}
  .vr-baca{grid-template-columns:minmax(0,1fr)}
  .vr-angka b{font-size:1.35rem}
}
@media (max-width:420px){
  .vr-angka{gap:6px}
  .vr-angka li{padding:10px}
  .vr-angka span{font-size:.72rem}
  .vr-kartu-kepala .vr-chip{width:100%;justify-content:space-between}
  .vr-chip button{flex:1}
}
@media (prefers-reduced-motion:reduce){.vr-donut{animation:none}}
/* Di dalam Client Area kolom isi lebih sempit — kartu ditumpuk */
@media (max-width:1480px){.kl-app .vr-grid{grid-template-columns:minmax(0,1fr)}}

/* v4.65.3 — kalkulator modal */
.vr-kalk{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;padding:14px;margin:0 0 16px;border-radius:16px;background:#f3f8ff;border:1px solid #dce9fb}
.vr-kalk>label>span:first-child,.vr-kalk-risk>span{display:block;font-size:.8rem;font-weight:700;color:#33465f;margin-bottom:6px}
.vr-kalk-input{display:flex;align-items:stretch;border:1.5px solid #c9dbf3;border-radius:12px;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.vr-kalk-input:focus-within{border-color:#1f7cff;box-shadow:0 0 0 4px rgba(31,124,255,.14)}
.vr-kalk-input select{border:0;border-right:1px solid #e1e9f4;background:#f6f9fd;font:inherit;font-weight:800;color:#0a1f3d;padding:0 10px;min-height:46px;cursor:pointer;width:auto;min-width:0}
.vr-kalk-input input{border:0;outline:0;font:inherit;font-size:1.15rem;font-weight:800;color:#0a1f3d;padding:0 14px;min-height:46px;width:100%;min-width:0;font-variant-numeric:tabular-nums;background:transparent}
.vr-list-nilai{display:flex;flex-direction:column;align-items:flex-end;text-align:right}
.vr-list-nilai b{font-weight:800}
.vr-list-nilai small{font-size:.76rem;font-weight:700;opacity:.8;margin-top:2px;white-space:nowrap}
@media (max-width:560px){
  .vr-kalk{grid-template-columns:minmax(0,1fr)}
  .vr-kalk-risk .vr-chip{display:flex;width:100%}
  .vr-kalk-risk .vr-chip button{flex:1}
}
.vr-grafik[hidden]{display:none!important}
.vr-kalk-input select{-webkit-appearance:none;appearance:none;min-width:58px;padding:0 26px 0 14px;
  background:#f6f9fd url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%235f7189' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 10px center}
.vr-kalk-input select{flex:0 0 auto;width:78px;min-width:78px;font-size:1rem}

/* v4.67 — status signal berjalan untuk orang awam */
.vip-st{border-radius:12px;padding:10px 12px;margin:2px 0 12px;border:1px solid transparent}
.vip-st-judul{margin:0;font-weight:800;font-size:.92rem;line-height:1.35}
.vip-st-teks{margin:3px 0 0;font-size:.8rem;line-height:1.5;color:#33465f}
.vip-st-hijau{background:#e9f8f1;border-color:#bfe8d3}.vip-st-hijau .vip-st-judul{color:#0d7a4f}
.vip-st-kuning{background:#fff6e5;border-color:#f6dca6}.vip-st-kuning .vip-st-judul{color:#93560a}
.vip-st-merah{background:#fdeeed;border-color:#f6c9c5}.vip-st-merah .vip-st-judul{color:#b5352c}
.vip-st-biru{background:#eaf3ff;border-color:#c9defb}.vip-st-biru .vip-st-judul{color:#155fd6}
.vip-st-abu{background:#f3f6fa;border-color:#e1e9f4}.vip-st-abu .vip-st-judul{color:#33465f}
.vip-st-pil{display:inline-block;margin:6px 0 10px;font-size:.78rem;font-weight:800;padding:5px 10px;border-radius:99px;border:1px solid transparent}

.vip-jalur{padding:6px 14px 30px;margin:0 0 6px}
.vip-jalur-rel{position:relative;height:8px;border-radius:99px;background:#e6f4ec}
.vip-jalur-sl{position:absolute;left:0;top:0;bottom:0;border-radius:99px 0 0 99px;background:#f8d7d4}
.vip-jalur-isi{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,#3ddc97,#12a36b);border-radius:0 99px 99px 0}
.vip-jalur-titik{position:absolute;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#fff;border:2px solid #9fb0c5}
.vip-jalur-titik.is-kena{border-color:#12a36b;background:#12a36b}
.vip-jalur-titik.is-sl{border-color:#e2554b}
.vip-jalur-titik.is-entry{border-color:#0a1f3d}
.vip-jalur-titik i{position:absolute;top:14px;left:50%;transform:translateX(-50%);font-style:normal;font-size:.62rem;font-weight:800;color:#5f7189;white-space:nowrap}
.vip-jalur-titik.is-kena i{color:#0d7a4f}
.vip-jalur-titik.is-sl i{color:#b5352c}
.vip-jalur-harga{position:absolute;top:-24px;width:0;height:0}
.vip-jalur-harga b{position:absolute;left:0;transform:translateX(-50%);font-size:.62rem;font-weight:800;color:#fff;background:#0a1f3d;padding:2px 6px;border-radius:6px;white-space:nowrap}
.vip-jalur-harga::after{content:"";position:absolute;left:-1px;top:17px;width:2px;height:15px;background:#0a1f3d}
.vip-jalur{padding-top:26px}
.vip-jalur-ket{margin:0 0 12px;font-size:.8rem;color:#33465f;line-height:1.5}
.vip-jalur-ket span{color:#8a9ab0;font-size:.74rem}
ul.vip-catatan{list-style:none;margin:10px 0;padding:10px 12px;display:grid;gap:4px;font-size:.8rem;line-height:1.5}
ul.vip-catatan li{position:relative;padding-left:12px}
ul.vip-catatan li::before{content:"";position:absolute;left:0;top:.6em;width:5px;height:5px;border-radius:50%;background:#9fb0c5}
.vip-kunci .vip-st-pil{position:relative;z-index:3}
