/*
  PUSA Design System V37
  Fokus: spatial system 4/8px, type scale, form states, heuristic UX helpers.
  Token utama: default spacing 8px, small spacing 4px.
*/
:root{
  --pusa-space-0:0;
  --pusa-space-1:4px;
  --pusa-space-2:8px;
  --pusa-space-3:12px;
  --pusa-space-4:16px;
  --pusa-space-5:20px;
  --pusa-space-6:24px;
  --pusa-space-7:28px;
  --pusa-space-8:32px;
  --pusa-space-10:40px;
  --pusa-space-12:48px;
  --pusa-radius-sm:8px;
  --pusa-radius-md:16px;
  --pusa-radius-lg:24px;
  --pusa-radius-xl:32px;
  --pusa-font-display:32px;
  --pusa-font-heading:24px;
  --pusa-font-subheading:20px;
  --pusa-font-body:16px;
  --pusa-font-caption:12px;
  --pusa-line-body:24px;
  --pusa-line-heading:40px;
  --pusa-line-tight:1.25;
  --pusa-line-normal:1.5;
  --pusa-color-bg:#f2faf6;
  --pusa-color-surface:#ffffff;
  --pusa-color-surface-soft:#f7fcf9;
  --pusa-color-ink:#063b2a;
  --pusa-color-muted:#64786f;
  --pusa-color-line:#dbece2;
  --pusa-color-primary:#0b6b49;
  --pusa-color-primary-2:#22c55e;
  --pusa-color-focus:#16a34a;
  --pusa-color-danger:#dc2626;
  --pusa-color-danger-bg:#fff1f2;
  --pusa-color-warning:#b45309;
  --pusa-color-warning-bg:#fffbeb;
  --pusa-color-success:#047857;
  --pusa-color-success-bg:#ecfdf5;
  --pusa-shadow-card:0 16px 40px rgba(6,59,42,.08);
  --pusa-shadow-focus:0 0 0 4px rgba(34,197,94,.16);
  --pusa-safe-bottom:calc(80px + env(safe-area-inset-bottom));
}

html{font-size:16px;line-height:var(--pusa-line-normal);}
body{font-size:var(--pusa-font-body);line-height:var(--pusa-line-body);text-rendering:optimizeLegibility;}
body,button,input,select,textarea{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}

:where(h1,.pusa-display){font-size:var(--pusa-font-display)!important;line-height:var(--pusa-line-heading)!important;letter-spacing:-.055em;}
:where(h2,.pusa-heading){font-size:var(--pusa-font-heading)!important;line-height:30px!important;letter-spacing:-.04em;}
:where(h3,.pusa-subheading){font-size:var(--pusa-font-subheading)!important;line-height:26px!important;letter-spacing:-.03em;}
:where(p,li,.pusa-body){font-size:var(--pusa-font-body);line-height:var(--pusa-line-body);}
:where(small,.pusa-caption,.chip,.gd-chip,.mt-chip,.pg-chip){font-size:var(--pusa-font-caption)!important;line-height:16px!important;}

:where(.app-scroll,.gd-scroll,.mt-scroll,.pg-scroll,.root-scroll){padding:var(--pusa-space-4) var(--pusa-space-4) var(--pusa-safe-bottom)!important;}
:where(.app-topbar,.gd-header,.mt-header,.pg-header){padding:var(--pusa-space-3) var(--pusa-space-4)!important;}
:where(.card,.gd-card,.mt-card,.pg-card,.page-hero,.gd-hero,.mt-hero,.pg-hero,.launcher-hero-v33){border-radius:var(--pusa-radius-lg)!important;padding:var(--pusa-space-4)!important;margin-bottom:var(--pusa-space-4)!important;box-shadow:var(--pusa-shadow-card)!important;}
:where(.section-head,.gd-head,.mt-section-head,.pg-head){gap:var(--pusa-space-2)!important;margin-bottom:var(--pusa-space-3)!important;}
:where(.grid-two,.gd-grid-2,.mt-grid-2,.pg-grid-2){gap:var(--pusa-space-3)!important;}
:where(.grid-three,.gd-grid-3,.mt-grid-3,.pg-grid-3){gap:var(--pusa-space-3)!important;}
:where(.form-grid,.gd-form,.mt-form,.pg-form,.pg-form-v33){gap:var(--pusa-space-3)!important;}
:where(.launcher-app-grid-v33){gap:var(--pusa-space-4)!important;}
:where(.launcher-app-icon-v33){min-height:144px!important;border-radius:var(--pusa-radius-xl)!important;padding:var(--pusa-space-4)!important;gap:var(--pusa-space-3)!important;}
:where(.launcher-icon-v33){width:72px!important;height:72px!important;border-radius:24px!important;}

:where(.field,.gd-field,.mt-field,.pg-field){position:relative;display:grid!important;gap:var(--pusa-space-1)!important;margin:0!important;}
:where(.field,.gd-field,.mt-field,.pg-field)>:where(label,span:first-child){font-size:var(--pusa-font-caption)!important;line-height:16px!important;font-weight:900!important;color:var(--pusa-color-ink)!important;letter-spacing:.02em!important;text-transform:none!important;}
:where(.field,.gd-field,.mt-field,.pg-field) :where(input:not([type="checkbox"]):not([type="radio"]):not(.pin-source),select,textarea){width:100%!important;min-height:48px!important;border-radius:var(--pusa-radius-md)!important;border:1px solid var(--pusa-color-line)!important;background:var(--pusa-color-surface)!important;color:var(--pusa-color-ink)!important;padding:12px 14px!important;font-size:var(--pusa-font-body)!important;line-height:var(--pusa-line-body)!important;font-weight:750!important;outline:0!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease!important;}
:where(.field,.gd-field,.mt-field,.pg-field) :where(textarea){min-height:96px!important;resize:vertical!important;}
:where(.field,.gd-field,.mt-field,.pg-field) :where(input:not([type="checkbox"]):not([type="radio"]):not(.pin-source),select,textarea)::placeholder{color:#98a8a0!important;font-weight:650!important;}
:where(.field,.gd-field,.mt-field,.pg-field).is-focus :where(input:not([type="checkbox"]):not([type="radio"]):not(.pin-source),select,textarea),
:where(.field,.gd-field,.mt-field,.pg-field):focus-within :where(input:not([type="checkbox"]):not([type="radio"]):not(.pin-source),select,textarea){border-color:var(--pusa-color-focus)!important;box-shadow:var(--pusa-shadow-focus)!important;background:#fbfffd!important;}
:where(.field,.gd-field,.mt-field,.pg-field).is-filled :where(input:not([type="checkbox"]):not([type="radio"]):not(.pin-source),select,textarea){border-color:#a8dac0!important;background:#fbfffd!important;}
:where(.field,.gd-field,.mt-field,.pg-field).is-error :where(input:not([type="checkbox"]):not([type="radio"]):not(.pin-source),select,textarea),
:where(.field,.gd-field,.mt-field,.pg-field) :where(input,select,textarea)[aria-invalid="true"]{border-color:var(--pusa-color-danger)!important;box-shadow:0 0 0 4px rgba(220,38,38,.12)!important;background:var(--pusa-color-danger-bg)!important;}
:where(.field,.gd-field,.mt-field,.pg-field).is-error > :where(label,span:first-child){color:var(--pusa-color-danger)!important;}
.pusa-field-help,.pusa-field-error{display:block;margin-top:var(--pusa-space-1);font-size:var(--pusa-font-caption);line-height:16px;font-weight:750;}
.pusa-field-help{color:var(--pusa-color-muted);}
.pusa-field-error{color:var(--pusa-color-danger);}
:where(.field,.gd-field,.mt-field,.pg-field):not(.is-error) .pusa-field-error{display:none;}

:where(button,.gd-primary,.mt-primary,.pg-primary,.mini-button,.gd-mini,.mt-mini-btn,.pg-mini,.launcher-analysis-pill-v33){min-height:40px;border-radius:var(--pusa-radius-md)!important;font-size:var(--pusa-font-caption)!important;line-height:16px!important;font-weight:950!important;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease!important;}
:where(button,.gd-primary,.mt-primary,.pg-primary,.mini-button,.gd-mini,.mt-mini-btn,.pg-mini):active{transform:scale(.985);}
:where(button,.gd-primary,.mt-primary,.pg-primary,.mini-button,.gd-mini,.mt-mini-btn,.pg-mini):focus-visible{outline:0;box-shadow:var(--pusa-shadow-focus)!important;}

.pin-box-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:var(--pusa-space-2)!important;margin-top:var(--pusa-space-2)!important;}
.pin-box-grid input,.pin-box{height:52px!important;border-radius:16px!important;border:1px solid var(--pusa-color-line)!important;background:#fff!important;text-align:center!important;font-size:24px!important;line-height:30px!important;font-weight:1000!important;color:var(--pusa-color-ink)!important;box-shadow:0 8px 18px rgba(6,59,42,.055)!important;}
.pin-box-grid input:focus,.pin-box:focus{border-color:var(--pusa-color-focus)!important;box-shadow:var(--pusa-shadow-focus)!important;outline:0!important;}

.pusa-system-status{position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:var(--pusa-space-2);margin:0 0 var(--pusa-space-3);padding:var(--pusa-space-2) var(--pusa-space-3);border:1px solid rgba(178,212,195,.8);border-radius:999px;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);box-shadow:0 10px 24px rgba(6,59,42,.07);color:var(--pusa-color-ink);}
.pusa-system-status strong{font-size:var(--pusa-font-caption);line-height:16px;font-weight:1000;white-space:nowrap;}
.pusa-system-status span{font-size:var(--pusa-font-caption);line-height:16px;color:var(--pusa-color-muted);font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pusa-system-status [data-pusa-undo]{border:0;background:var(--pusa-color-success-bg);color:var(--pusa-color-success);height:32px;min-height:32px;padding:0 var(--pusa-space-3);border-radius:999px;display:none;}
.pusa-system-status.has-undo [data-pusa-undo]{display:inline-flex;align-items:center;justify-content:center;}
.pusa-toast-stack{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:9999;width:min(448px,calc(100vw - 32px));display:grid;gap:var(--pusa-space-2);pointer-events:none;}
.pusa-toast{pointer-events:auto;border:1px solid rgba(178,212,195,.82);border-radius:20px;background:rgba(255,255,255,.96);box-shadow:0 18px 44px rgba(6,59,42,.18);padding:var(--pusa-space-3);display:grid;gap:var(--pusa-space-1);animation:pusaToastIn .2s ease both;}
.pusa-toast strong{font-size:14px;line-height:20px;color:var(--pusa-color-ink);font-weight:1000;}
.pusa-toast span{font-size:var(--pusa-font-caption);line-height:16px;color:var(--pusa-color-muted);font-weight:750;}
.pusa-toast.is-error{border-color:#fecdd3;background:#fff7f8;}
.pusa-toast.is-success{border-color:#bbf7d0;background:#f0fdf4;}
@keyframes pusaToastIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

.pusa-help-button{position:fixed;right:calc(16px + env(safe-area-inset-right));bottom:calc(92px + env(safe-area-inset-bottom));z-index:9998;width:48px;height:48px;border-radius:18px;border:1px solid rgba(178,212,195,.82);background:linear-gradient(145deg,#063b2a,#0b6b49);color:#fff;display:grid;place-items:center;font-weight:1000;font-size:20px;box-shadow:0 18px 36px rgba(6,59,42,.22);}
.pusa-help-panel{position:fixed;inset:auto 50% calc(16px + env(safe-area-inset-bottom)) auto;transform:translateX(50%) translateY(16px);z-index:9999;width:min(448px,calc(100vw - 32px));max-height:min(78dvh,680px);overflow:auto;border:1px solid rgba(178,212,195,.82);border-radius:28px;background:#fff;box-shadow:0 28px 70px rgba(6,59,42,.26);padding:var(--pusa-space-4);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;}
.pusa-help-panel.is-open{opacity:1;pointer-events:auto;transform:translateX(50%) translateY(0);}
.pusa-help-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--pusa-space-3);margin-bottom:var(--pusa-space-3);}
.pusa-help-panel h2{margin:0!important;color:var(--pusa-color-ink)!important;}
.pusa-help-panel p{margin:4px 0 0;color:var(--pusa-color-muted);font-size:14px;line-height:20px;font-weight:750;}
.pusa-help-panel button{border:0;background:#f2faf6;color:var(--pusa-color-ink);width:40px;height:40px;min-height:40px;padding:0;}
.pusa-faq-list{display:grid;gap:var(--pusa-space-2);}
.pusa-faq-list details{border:1px solid var(--pusa-color-line);border-radius:18px;background:#fbfffd;padding:var(--pusa-space-3);}
.pusa-faq-list summary{cursor:pointer;font-size:14px;line-height:20px;font-weight:1000;color:var(--pusa-color-ink);}
.pusa-faq-list details p{font-size:13px;line-height:20px;margin:var(--pusa-space-2) 0 0;}

.pusa-minimal-note{border:1px solid var(--pusa-color-line);background:#fbfffd;border-radius:18px;padding:var(--pusa-space-3);font-size:13px;line-height:20px;color:var(--pusa-color-muted);font-weight:750;}

@media(max-width:430px){
  :root{--pusa-font-display:32px;--pusa-font-heading:24px;--pusa-font-subheading:20px;--pusa-font-body:16px;}
  :where(.grid-two,.gd-grid-2,.mt-grid-2,.pg-grid-2,.grid-three,.gd-grid-3,.mt-grid-3,.pg-grid-3){grid-template-columns:1fr!important;}
  :where(.launcher-app-grid-v33){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:var(--pusa-space-3)!important;}
  :where(.launcher-app-icon-v33){min-height:132px!important;border-radius:24px!important;}
  :where(.launcher-icon-v33){width:64px!important;height:64px!important;}
  .pusa-system-status{border-radius:18px;align-items:flex-start;}
  .pusa-system-status span{white-space:normal;}
}
:where(.field,.gd-field,.mt-field,.pg-field).is-error .pin-box-grid input,
:where(.field,.gd-field,.mt-field,.pg-field).is-error .pin-box{border-color:var(--pusa-color-danger)!important;box-shadow:0 0 0 4px rgba(220,38,38,.12)!important;background:var(--pusa-color-danger-bg)!important;}


/*
  PUSA Design System V36
  Fokus: mobile anatomy repair, clean login, locked header/footer, non-intrusive system feedback,
  back navigation on non-dashboard pages, and accordion information pattern.
*/
:root{
  --pusa-header-h:64px;
  --pusa-footer-h:76px;
  --pusa-shell-max:480px;
  --pusa-safe-top:env(safe-area-inset-top);
}
html,body{margin:0!important;min-height:100dvh!important;background:var(--pusa-color-bg)!important;overflow-x:hidden!important;}
body{padding:0!important;}
*{box-sizing:border-box;}

/* V36: status system is not allowed to live above the header. Use toast only. */
.pusa-system-status{display:none!important;}

/* App shell: mobile-first, no artificial gap above header/footer. */
:where(.app-frame,.root-frame,.gd-shell,.mt-shell,.pg-shell,.vd-shell,.ik-app){
  width:100%!important;
  max-width:var(--pusa-shell-max)!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  background:linear-gradient(180deg,#f8fffb 0%,#f2faf6 100%)!important;
  position:relative!important;
  overflow-x:hidden!important;
  box-shadow:0 0 0 1px rgba(6,59,42,.05),0 18px 50px rgba(6,59,42,.08)!important;
}
:where(.gd-content,.mt-content,.pg-content,.vd-content,.app-scroll,.root-scroll){
  padding-left:var(--pusa-space-4)!important;
  padding-right:var(--pusa-space-4)!important;
}
:where(.gd-content,.mt-content,.pg-content){
  padding-top:var(--pusa-space-4)!important;
  padding-bottom:calc(var(--pusa-footer-h) + env(safe-area-inset-bottom) + var(--pusa-space-4))!important;
}
:where(.app-scroll,.root-scroll){padding-top:0!important;padding-bottom:var(--pusa-space-6)!important;}

/* Locked header: sticky, proportional, safe-area aware, no white gap. */
:where(.app-topbar,.gd-header,.mt-header,.pg-header,.vd-header){
  position:sticky!important;
  top:0!important;
  z-index:80!important;
  margin:0!important;
  min-height:var(--pusa-header-h)!important;
  padding:calc(10px + env(safe-area-inset-top)) var(--pusa-space-4) 10px!important;
  border-radius:0 0 24px 24px!important;
  border:0!important;
  border-bottom:1px solid rgba(178,212,195,.72)!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--pusa-color-ink)!important;
  box-shadow:0 10px 28px rgba(6,59,42,.10)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
:where(.gd-header-row,.mt-header-row,.pg-row,.topbar-row){
  width:100%!important;
  max-width:none!important;
  min-height:44px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:var(--pusa-space-2)!important;
}
:where(.gd-brand,.mt-brand,.pg-brand,.brand,.vd-brand){min-width:0!important;gap:var(--pusa-space-2)!important;}
:where(.gd-brand strong,.mt-brand strong,.pg-brand strong,.brand-title h1,.vd-brand strong){
  color:var(--pusa-color-ink)!important;
  font-size:16px!important;
  line-height:20px!important;
  letter-spacing:-.03em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:190px!important;
}
:where(.gd-brand small,.mt-brand small,.pg-brand small,.brand-title p,.vd-brand small){
  color:var(--pusa-color-muted)!important;
  font-size:10px!important;
  line-height:14px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
:where(.gd-brand-mark,.mt-brand-mark,.pg-mark,.brand-mark,.vd-mark){
  width:40px!important;height:40px!important;min-width:40px!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,var(--pusa-color-primary),#16a34a)!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(6,59,42,.18)!important;
}
:where(.gd-top-actions,.mt-top-actions,.pg-icons,.top-actions,.vd-top-actions){display:flex!important;align-items:center!important;gap:var(--pusa-space-2)!important;}
:where(.gd-icon-button,.mt-icon-button,.pg-icon,.vd-icon,.pusa-back-button-v36){
  width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;
  border-radius:16px!important;
  border:1px solid rgba(178,212,195,.86)!important;
  background:#fff!important;
  color:var(--pusa-color-primary)!important;
  display:inline-grid!important;
  place-items:center!important;
  box-shadow:0 8px 18px rgba(6,59,42,.075)!important;
  text-decoration:none!important;
  padding:0!important;
}
:where(.gd-icon-button svg,.mt-icon-button svg,.pg-icon svg,.vd-icon svg,.pusa-back-button-v36 svg){
  width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:2.3!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
.pusa-back-button-v36{order:-1!important;}
.pusa-back-button-v36 + :where(.gd-brand,.mt-brand,.pg-brand,.vd-brand){margin-left:0!important;}

/* Locked footer/bottom nav. No floating gap. */
:where(.gd-bottom-nav,.mt-bottom-nav,.pg-bottom-nav){
  position:fixed!important;
  left:50%!important;
  bottom:0!important;
  transform:translateX(-50%)!important;
  width:min(100%,var(--pusa-shell-max))!important;
  z-index:79!important;
  margin:0!important;
  border-radius:24px 24px 0 0!important;
  border:1px solid rgba(178,212,195,.78)!important;
  border-bottom:0!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 -10px 28px rgba(6,59,42,.12)!important;
  padding:8px 8px calc(8px + env(safe-area-inset-bottom))!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
:where(.gd-bottom-nav a,.mt-bottom-nav a,.pg-bottom-nav a){min-height:54px!important;height:54px!important;border-radius:18px!important;}

/* Login anatomy V36: one clean mobile app card. */
:where(.gd-login-shell,.mt-login-shell,.pg-login-shell-v33){
  width:100%!important;
  max-width:var(--pusa-shell-max)!important;
  min-height:100dvh!important;
  margin:0 auto!important;
  padding:calc(16px + env(safe-area-inset-top)) var(--pusa-space-4) calc(16px + env(safe-area-inset-bottom))!important;
  display:grid!important;
  place-items:center!important;
  background:radial-gradient(circle at 30% 0%,rgba(34,197,94,.26),transparent 36%),linear-gradient(160deg,#052e20 0%,#063b2a 42%,#0b6b49 100%)!important;
  overflow:hidden!important;
}
:where(.gd-login-card,.mt-login-card,.pg-login-card-v33){
  width:100%!important;
  max-width:448px!important;
  margin:0!important;
  border-radius:32px!important;
  padding:var(--pusa-space-6)!important;
  border:1px solid rgba(255,255,255,.58)!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 28px 70px rgba(0,0,0,.26)!important;
  color:var(--pusa-color-ink)!important;
  display:grid!important;
  gap:var(--pusa-space-3)!important;
  position:relative!important;
}
:where(.gd-back,.mt-back,.pg-back-v33){
  position:static!important;
  width:max-content!important;
  min-height:36px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:var(--pusa-space-2)!important;
  padding:0 var(--pusa-space-3)!important;
  border-radius:999px!important;
  background:#f2faf6!important;
  border:1px solid var(--pusa-color-line)!important;
  color:var(--pusa-color-primary)!important;
  text-decoration:none!important;
  font-size:12px!important;
  line-height:16px!important;
  font-weight:1000!important;
}
:where(.gd-mark,.mt-mark,.pg-login-card-v33 .pg-mark){
  width:72px!important;height:72px!important;border-radius:26px!important;
  display:grid!important;place-items:center!important;
  margin:0 auto var(--pusa-space-1)!important;
  background:linear-gradient(145deg,var(--pusa-color-primary),#16a34a)!important;
  color:#fff!important;
  box-shadow:0 18px 38px rgba(6,59,42,.24)!important;
  font-size:18px!important;font-weight:1000!important;
}
:where(.gd-eyebrow,.mt-eyebrow,.pg-eyebrow-v33){
  margin:0!important;text-align:center!important;color:var(--pusa-color-primary)!important;
  font-size:12px!important;line-height:16px!important;font-weight:1000!important;letter-spacing:.08em!important;text-transform:uppercase!important;
}
:where(.gd-login-card h1,.mt-login-card h1,.pg-login-card-v33 h1){
  margin:0!important;text-align:center!important;color:var(--pusa-color-ink)!important;
  font-size:32px!important;line-height:40px!important;letter-spacing:-.06em!important;font-weight:1000!important;
}
:where(.gd-copy,.mt-copy,.pg-copy-v33){
  margin:0 auto var(--pusa-space-2)!important;text-align:center!important;max-width:320px!important;
  color:var(--pusa-color-muted)!important;font-size:14px!important;line-height:20px!important;font-weight:750!important;
}
:where(.gd-login-card form,.mt-login-card form,.pg-login-card-v33 form){
  display:grid!important;gap:var(--pusa-space-3)!important;margin-top:var(--pusa-space-2)!important;
}
:where(.gd-login-card .gd-primary,.mt-login-card .mt-primary,.pg-login-card-v33 .pg-primary){
  width:100%!important;min-height:48px!important;border-radius:18px!important;
  background:linear-gradient(145deg,var(--pusa-color-primary),#16a34a)!important;color:#fff!important;border:0!important;
  box-shadow:0 16px 30px rgba(6,59,42,.18)!important;
  font-size:14px!important;line-height:20px!important;
}
:where(.gd-error,.mt-error,.pg-pill.danger){
  border:1px solid #fecdd3!important;background:#fff1f2!important;color:#b91c1c!important;
  border-radius:16px!important;padding:10px 12px!important;font-size:12px!important;line-height:16px!important;font-weight:900!important;
}

/* Accordion information pattern. */
.pusa-accordion-v36{border:1px solid var(--pusa-color-line)!important;background:#fff!important;border-radius:20px!important;box-shadow:0 10px 24px rgba(6,59,42,.06)!important;margin-bottom:var(--pusa-space-4)!important;overflow:hidden!important;}
.pusa-accordion-v36 summary{list-style:none!important;cursor:pointer!important;padding:var(--pusa-space-3) var(--pusa-space-4)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:var(--pusa-space-3)!important;color:var(--pusa-color-ink)!important;font-weight:1000!important;font-size:14px!important;line-height:20px!important;}
.pusa-accordion-v36 summary::-webkit-details-marker{display:none!important;}
.pusa-accordion-v36 summary:after{content:'+';width:28px;height:28px;border-radius:12px;background:#f2faf6;color:var(--pusa-color-primary);display:grid;place-items:center;font-size:18px;line-height:1;font-weight:1000;flex:0 0 auto;}
.pusa-accordion-v36[open] summary:after{content:'−';}
.pusa-accordion-v36 .pusa-accordion-body{padding:0 var(--pusa-space-4) var(--pusa-space-4)!important;color:var(--pusa-color-muted)!important;font-size:14px!important;line-height:20px!important;font-weight:750!important;}
.pusa-accordion-v36 .pusa-accordion-body p{margin:0!important;font-size:14px!important;line-height:20px!important;color:var(--pusa-color-muted)!important;}
:where(.gd-hero,.mt-hero,.pg-hero,.vd-hero).pusa-hero-accordion-source{display:none!important;}

/* Compact informational blocks converted visually to accordions when not converted by JS. */
:where(.gd-hint,.mt-hint,.pg-hint){border-radius:16px!important;padding:var(--pusa-space-3)!important;line-height:20px!important;}

/* Dashboard is allowed to keep stronger hero feel; other pages are compact. */
body:not([data-gudang-page="dashboard"]):not([data-mitra-page="dashboard"]):not([data-pg-page="dashboard"]) :where(.gd-hero,.mt-hero,.pg-hero,.vd-hero){
  border-radius:22px!important;
  padding:var(--pusa-space-4)!important;
  margin-bottom:var(--pusa-space-3)!important;
}

@media(max-width:390px){
  :where(.gd-login-card,.mt-login-card,.pg-login-card-v33){padding:var(--pusa-space-5)!important;border-radius:28px!important;}
  .pin-box-grid{gap:6px!important;}
  .pin-box-grid input,.pin-box{height:48px!important;border-radius:14px!important;font-size:21px!important;}
  :where(.gd-brand strong,.mt-brand strong,.pg-brand strong,.brand-title h1,.vd-brand strong){max-width:150px!important;}
}


/* =========================================================
   PUSA UI V37 — App Install Scope + Compact Action Menu + Color Tokens + Glassmorphism
   Fokus: tombol Install hanya di index.php, Action Menu ringkas, sistem warna default/secondary/important,
   dan tema glassmorphism yang tetap readable untuk mobile app.
   ========================================================= */
:root{
  --pusa-v37-default:#0b6b49;
  --pusa-v37-default-soft:rgba(11,107,73,.10);
  --pusa-v37-secondary:#2563eb;
  --pusa-v37-secondary-soft:rgba(37,99,235,.10);
  --pusa-v37-important:#dc2626;
  --pusa-v37-important-soft:rgba(220,38,38,.11);
  --pusa-v37-amber:#d97706;
  --pusa-v37-amber-soft:rgba(217,119,6,.12);
  --pusa-glass-bg:rgba(255,255,255,.68);
  --pusa-glass-bg-strong:rgba(255,255,255,.82);
  --pusa-glass-line:rgba(255,255,255,.56);
  --pusa-glass-line-green:rgba(178,212,195,.62);
  --pusa-glass-shadow:0 18px 46px rgba(6,59,42,.12);
  --pusa-glass-shadow-soft:0 10px 28px rgba(6,59,42,.08);
}

html{background:#eefaf3!important;}
body{
  background:
    radial-gradient(circle at 12% -8%,rgba(34,197,94,.22),transparent 32%),
    radial-gradient(circle at 92% 8%,rgba(37,99,235,.14),transparent 28%),
    linear-gradient(180deg,#eefaf3 0%,#f8fffb 54%,#edf7f2 100%)!important;
}
:where(.app-frame,.root-frame,.gd-shell,.mt-shell,.pg-shell,.vd-shell,.ik-app){
  background:
    radial-gradient(circle at 18% 0%,rgba(34,197,94,.16),transparent 32%),
    radial-gradient(circle at 92% 2%,rgba(37,99,235,.09),transparent 30%),
    linear-gradient(180deg,rgba(248,255,251,.92),rgba(241,250,245,.92))!important;
}

/* Glass surfaces: card tetap jelas, tidak terlalu transparan agar readable. */
:where(.card,.gd-card,.mt-card,.pg-card,.vd-card,.gd-kpi,.mt-kpi,.pg-kpi-card,.vd-kpi,.gd-activity,.mt-activity,.pg-item,.vd-claim,.gd-detail-card,.mt-detail-card,.pg-modal-card,.mt-modal-card,.gd-modal-card,.vd-modal-card,.launcher-hero-v33,.launcher-app-icon-v33,.warehouse-action-card,.warehouse-kpi-card,.pusa-accordion-v36){
  background:var(--pusa-glass-bg-strong)!important;
  border:1px solid var(--pusa-glass-line-green)!important;
  box-shadow:var(--pusa-glass-shadow-soft)!important;
  backdrop-filter:blur(18px) saturate(1.1)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.1)!important;
}
:where(.gd-card.soft,.mt-card.soft,.pg-card.soft,.vd-card.soft){
  background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(246,255,249,.66))!important;
}
:where(.app-topbar,.gd-header,.mt-header,.pg-header,.vd-header,.gd-bottom-nav,.mt-bottom-nav,.pg-bottom-nav,.bottom-nav){
  background:rgba(255,255,255,.74)!important;
  border-color:rgba(178,212,195,.66)!important;
  backdrop-filter:blur(24px) saturate(1.18)!important;
  -webkit-backdrop-filter:blur(24px) saturate(1.18)!important;
}
:where(.gd-hero,.mt-hero,.pg-hero,.vd-hero){
  background:linear-gradient(135deg,rgba(6,59,42,.92),rgba(15,111,56,.82))!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 20px 48px rgba(6,59,42,.20)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

/* Install hanya untuk launcher. Halaman selain index tetap hidden walau ada markup lama. */
body:not([data-page="launcher"]) :where([data-install],.pusa-install-float,.install-button,.vd-install){
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body[data-page="launcher"] .install-button,
body[data-page="launcher"] .pusa-install-float{
  display:inline-flex!important;
  visibility:visible!important;
}

/* Action Menu V37: compact app-icon grid, bukan kartu besar. */
:where(.gd-action-card,.mt-action-card,.pg-action-card){
  padding:12px!important;
  border-radius:24px!important;
}
:where(.gd-action-card,.mt-action-card,.pg-card.soft):has(:where(.gd-action-grid,.mt-action-grid,.pg-actions)) :where(.gd-section-head,.mt-section-head,.pg-head){
  margin-bottom:10px!important;
}
:where(.gd-action-grid,.mt-action-grid,.pg-actions,.gd-all-menu-grid,.mt-all-menu-grid){
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action){
  min-height:74px!important;
  padding:8px 6px!important;
  border-radius:18px!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  justify-items:center!important;
  align-content:center!important;
  gap:6px!important;
  text-align:center!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(178,212,195,.66)!important;
  box-shadow:0 8px 20px rgba(6,59,42,.07)!important;
  color:var(--pusa-v37-default)!important;
  text-decoration:none!important;
  overflow:hidden!important;
  backdrop-filter:blur(18px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.08)!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action):active{transform:scale(.985)!important;}
:where(.gd-action-link,.mt-action-link,.pg-action) > i{
  width:32px!important;
  height:32px!important;
  border-radius:13px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  flex:0 0 auto!important;
  background:var(--pusa-v37-default-soft)!important;
  color:var(--pusa-v37-default)!important;
  border:1px solid rgba(11,107,73,.16)!important;
  box-shadow:none!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action) > i svg{
  width:17px!important;
  height:17px!important;
  stroke-width:2.2!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action) > div{
  min-width:0!important;
  width:100%!important;
  display:block!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action) strong{
  display:block!important;
  max-width:100%!important;
  color:inherit!important;
  font-size:10.5px!important;
  line-height:13px!important;
  font-weight:1000!important;
  letter-spacing:-.015em!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action) small{
  display:none!important;
}

/* Sistem warna: default, secondary, important. Warna penting hanya dipakai item risk/action destructive/urgent. */
:where(.gd-action-link,.mt-action-link,.pg-action).tone-default,
:where(.gd-action-link,.mt-action-link,.pg-action):not(.tone-secondary):not(.tone-important){
  color:var(--pusa-v37-default)!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-default > i,
:where(.gd-action-link,.mt-action-link,.pg-action):not(.tone-secondary):not(.tone-important) > i{
  background:var(--pusa-v37-default-soft)!important;
  color:var(--pusa-v37-default)!important;
  border-color:rgba(11,107,73,.18)!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-secondary{
  color:var(--pusa-v37-secondary)!important;
  border-color:rgba(37,99,235,.20)!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-secondary > i{
  background:var(--pusa-v37-secondary-soft)!important;
  color:var(--pusa-v37-secondary)!important;
  border-color:rgba(37,99,235,.18)!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-important{
  color:var(--pusa-v37-important)!important;
  border-color:rgba(220,38,38,.22)!important;
  background:rgba(255,247,247,.78)!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-important > i{
  background:var(--pusa-v37-important-soft)!important;
  color:var(--pusa-v37-important)!important;
  border-color:rgba(220,38,38,.20)!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-important strong{color:var(--pusa-v37-important)!important;}

/* Buttons and chips with readable multi-tone system. */
:where(.gd-mini-btn,.mt-mini-btn,.pg-mini,.vd-mini,.chip,.gd-chip,.mt-chip,.pg-chip){
  background:rgba(255,255,255,.66)!important;
  border:1px solid rgba(178,212,195,.68)!important;
  color:var(--pusa-v37-default)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
:where(.gd-primary,.mt-primary,.pg-primary,.vd-primary,.install-button){
  background:linear-gradient(135deg,var(--pusa-v37-default),#16a34a)!important;
  color:#fff!important;
}
:where(.pg-danger,.gd-danger,.mt-danger,.vd-action.danger,.pg-reset-action){
  color:var(--pusa-v37-important)!important;
}

/* Launcher juga diberi glass effect dan warna lebih hidup. */
body[data-page="launcher"] .launcher-app-grid-v33{
  gap:12px!important;
}
body[data-page="launcher"] .launcher-app-icon-v33{
  background:rgba(255,255,255,.68)!important;
  border:1px solid rgba(255,255,255,.58)!important;
  box-shadow:0 16px 36px rgba(6,59,42,.11)!important;
  backdrop-filter:blur(20px) saturate(1.12)!important;
  -webkit-backdrop-filter:blur(20px) saturate(1.12)!important;
}
body[data-page="launcher"] .launcher-app-icon-v33:nth-child(2n) .launcher-icon-v33{background:rgba(37,99,235,.10)!important;color:var(--pusa-v37-secondary)!important;border-color:rgba(37,99,235,.18)!important;}
body[data-page="launcher"] .launcher-app-icon-v33:nth-child(2n+1) .launcher-icon-v33{background:rgba(11,107,73,.10)!important;color:var(--pusa-v37-default)!important;border-color:rgba(11,107,73,.18)!important;}
body[data-page="launcher"] .launcher-analysis-pill-v33{background:rgba(37,99,235,.10)!important;color:var(--pusa-v37-secondary)!important;border:1px solid rgba(37,99,235,.16)!important;}

/* Modal all-menu mengikuti compact grid. */
:where(.gd-all-menu-grid .gd-action-link,.mt-all-menu-grid .mt-action-link){
  min-height:76px!important;
}

@media(max-width:430px){
  :where(.gd-action-grid,.mt-action-grid,.pg-actions,.gd-all-menu-grid,.mt-all-menu-grid){grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;}
  :where(.gd-action-link,.mt-action-link,.pg-action){min-height:70px!important;border-radius:17px!important;padding:7px 5px!important;}
  :where(.gd-action-link,.mt-action-link,.pg-action)>i{width:30px!important;height:30px!important;border-radius:12px!important;}
  :where(.gd-action-link,.mt-action-link,.pg-action)>i svg{width:16px!important;height:16px!important;}
  :where(.gd-action-link,.mt-action-link,.pg-action) strong{font-size:10px!important;line-height:12px!important;}
}
@media(max-width:360px){
  :where(.gd-action-grid,.mt-action-grid,.pg-actions,.gd-all-menu-grid,.mt-all-menu-grid){grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media (prefers-reduced-transparency: reduce){
  :where(.card,.gd-card,.mt-card,.pg-card,.vd-card,.app-topbar,.gd-header,.mt-header,.pg-header,.vd-header,.gd-bottom-nav,.mt-bottom-nav,.pg-bottom-nav,.bottom-nav,.gd-action-link,.mt-action-link,.pg-action){
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    background:#fff!important;
  }
}

/* =========================================================
   PUSA UI V38 — Green Identity Restoration + Contrast Fix
   Catatan: V37 glassmorphism terlalu memutihkan surface. V38 mengembalikan hijau sebagai identitas utama,
   menjaga glass effect hanya sebagai layer, dan memastikan teks selalu kontras.
   ========================================================= */
:root{
  --pusa-green-950:#021a11;
  --pusa-green-900:#043622;
  --pusa-green-850:#06442b;
  --pusa-green-800:#075133;
  --pusa-green-700:#0d6b45;
  --pusa-green-600:#12925f;
  --pusa-green-mint:#b9f5d4;
  --pusa-surface-green:#f2faf6;
  --pusa-surface-card:#ffffff;
  --pusa-ink-strong:#0b2118;
  --pusa-ink-soft:#526b60;
  --pusa-line-green:#d9eadf;
  --pusa-glass-green:rgba(6,68,43,.82);
  --pusa-glass-green-strong:rgba(3,54,34,.94);
  --pusa-glass-card:rgba(255,255,255,.90);
  --pusa-glass-card-soft:rgba(248,255,251,.86);
  --pusa-glass-light-line:rgba(178,212,195,.72);
  --pusa-color-bg:var(--pusa-surface-green);
  --pusa-color-surface:var(--pusa-surface-card);
  --pusa-color-surface-soft:#f7fcf9;
  --pusa-color-ink:var(--pusa-ink-strong);
  --pusa-color-muted:var(--pusa-ink-soft);
  --pusa-color-line:var(--pusa-line-green);
  --pusa-color-primary:var(--pusa-green-800);
  --pusa-v37-default:var(--pusa-green-800);
}

html,body{background:var(--pusa-surface-green)!important;color:var(--pusa-ink-strong)!important;}
body{
  background:
    radial-gradient(circle at 12% -6%,rgba(34,197,94,.18),transparent 30%),
    linear-gradient(180deg,var(--pusa-green-950) 0%,#073a29 142px,var(--pusa-surface-green) 430px)!important;
}
:where(.app-frame,.root-frame,.gd-shell,.mt-shell,.pg-shell,.vd-shell,.ik-app){
  background:linear-gradient(180deg,#f7fffb 0%,var(--pusa-surface-green) 100%)!important;
  color:var(--pusa-ink-strong)!important;
}

/* Header wajib kembali hijau. Glassmorphism dipakai sebagai blur lapisan hijau, bukan putih. */
:where(.app-topbar,.gd-header,.mt-header,.pg-header,.vd-header){
  background:linear-gradient(150deg,var(--pusa-green-950),var(--pusa-green-850) 55%,var(--pusa-green-700))!important;
  color:#ffffff!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 18px 46px rgba(3,33,22,.22)!important;
  backdrop-filter:blur(18px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.08)!important;
}
:where(.gd-brand strong,.mt-brand strong,.pg-brand strong,.brand-title h1,.vd-brand strong){color:#ffffff!important;}
:where(.gd-brand small,.mt-brand small,.pg-brand small,.brand-title p,.vd-brand small){color:rgba(255,255,255,.76)!important;}
:where(.gd-brand-mark,.mt-brand-mark,.pg-mark,.brand-mark,.vd-mark){
  background:rgba(255,255,255,.14)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  color:#ffffff!important;
  box-shadow:0 10px 22px rgba(0,0,0,.16)!important;
}
:where(.gd-icon-button,.mt-icon-button,.pg-icon,.vd-icon,.pusa-back-button-v36,.icon-button){
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#ffffff!important;
  box-shadow:none!important;
}
:where(.gd-icon-button:hover,.mt-icon-button:hover,.pg-icon:hover,.vd-icon:hover,.pusa-back-button-v36:hover,.icon-button:hover){
  background:rgba(255,255,255,.20)!important;
}

/* Hero tetap hijau gelap dan teks wajib putih. */
:where(.gd-hero,.mt-hero,.pg-hero,.vd-hero,.page-hero){
  background:linear-gradient(135deg,var(--pusa-green-950),var(--pusa-green-800))!important;
  color:#ffffff!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 20px 48px rgba(6,59,42,.20)!important;
}
:where(.gd-hero,.mt-hero,.pg-hero,.vd-hero,.page-hero) :where(h1,h2,h3,strong){color:#ffffff!important;}
:where(.gd-hero,.mt-hero,.pg-hero,.vd-hero,.page-hero) :where(p,small,span){color:rgba(255,255,255,.76)!important;}
:where(.gd-hero,.mt-hero,.pg-hero,.vd-hero,.page-hero) :where(.eyebrow,.gd-eyebrow,.mt-eyebrow,.pg-eyebrow){color:var(--pusa-green-mint)!important;}

/* Card, table, accordion, modal: boleh glass, tetapi surface tetap cukup putih dan teks gelap. */
:where(.card,.gd-card,.mt-card,.pg-card,.vd-card,.gd-kpi,.mt-kpi,.pg-kpi-card,.vd-kpi,.gd-activity,.mt-activity,.pg-item,.vd-claim,.gd-detail-card,.mt-detail-card,.pg-modal-card,.mt-modal-card,.gd-modal-card,.vd-modal-card,.launcher-hero-v33,.launcher-app-icon-v33,.warehouse-action-card,.warehouse-kpi-card,.pusa-accordion-v36,.pg-detail-section,.pg-order-card,.pg-media-grid a,.pg-info-grid>div,.pg-note-box,.pg-wa-preview,.gd-item-row,.mt-item-row){
  background:var(--pusa-glass-card)!important;
  border-color:var(--pusa-glass-light-line)!important;
  color:var(--pusa-ink-strong)!important;
  box-shadow:0 10px 28px rgba(6,59,42,.08)!important;
}
:where(.gd-card.soft,.mt-card.soft,.pg-card.soft,.vd-card.soft,.gd-item-row,.mt-item-row){
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(243,255,248,.88))!important;
}
:where(.card,.gd-card,.mt-card,.pg-card,.vd-card,.gd-kpi,.mt-kpi,.pg-kpi-card,.vd-kpi,.pg-detail-section,.pg-info-grid>div,.pg-note-box,.pg-wa-preview,.pusa-accordion-v36) :where(h1,h2,h3,h4,strong,label,span:first-child){
  color:var(--pusa-ink-strong)!important;
}
:where(.card,.gd-card,.mt-card,.pg-card,.vd-card,.gd-kpi,.mt-kpi,.pg-kpi-card,.vd-kpi,.pg-detail-section,.pg-info-grid>div,.pg-note-box,.pg-wa-preview,.pusa-accordion-v36) :where(p,small,span,li){
  color:var(--pusa-ink-soft)!important;
}

/* KPI utama dan status penting yang memang gelap tetap putih. */
:where(.gd-kpi.main,.mt-kpi.main,.pg-kpi-card.main,.vd-kpi.main,.pg-detail-hero,.gd-detail-hero,.mt-detail-hero){
  background:linear-gradient(135deg,var(--pusa-green-950),var(--pusa-green-700))!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.14)!important;
}
:where(.gd-kpi.main,.mt-kpi.main,.pg-kpi-card.main,.vd-kpi.main,.pg-detail-hero,.gd-detail-hero,.mt-detail-hero) :where(h1,h2,h3,h4,strong,span,p,small){
  color:#ffffff!important;
}
:where(.gd-kpi.main,.mt-kpi.main,.pg-kpi-card.main,.vd-kpi.main,.pg-detail-hero,.gd-detail-hero,.mt-detail-hero) small,
:where(.gd-kpi.main,.mt-kpi.main,.pg-kpi-card.main,.vd-kpi.main,.pg-detail-hero,.gd-detail-hero,.mt-detail-hero) p{color:rgba(255,255,255,.76)!important;}

/* Action menu compact tetap ada, tetapi icon default kembali hijau jelas. */
:where(.gd-action-link,.mt-action-link,.pg-action){
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(178,212,195,.82)!important;
  color:var(--pusa-green-800)!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action) strong{color:inherit!important;}
:where(.gd-action-link,.mt-action-link,.pg-action)>i{
  background:linear-gradient(145deg,var(--pusa-green-900),var(--pusa-green-700))!important;
  color:#ffffff!important;
  border-color:rgba(6,59,42,.12)!important;
}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-secondary{color:var(--pusa-v37-secondary)!important;border-color:rgba(37,99,235,.22)!important;}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-secondary>i{background:rgba(37,99,235,.10)!important;color:var(--pusa-v37-secondary)!important;border-color:rgba(37,99,235,.20)!important;}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-important{color:var(--pusa-v37-important)!important;border-color:rgba(220,38,38,.24)!important;background:rgba(255,247,247,.94)!important;}
:where(.gd-action-link,.mt-action-link,.pg-action).tone-important>i{background:rgba(220,38,38,.12)!important;color:var(--pusa-v37-important)!important;border-color:rgba(220,38,38,.22)!important;}

/* Bottom nav boleh light, tapi aktif harus hijau tegas. */
:where(.gd-bottom-nav,.mt-bottom-nav,.pg-bottom-nav,.bottom-nav){
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(178,212,195,.82)!important;
  color:var(--pusa-ink-soft)!important;
}
:where(.gd-bottom-nav a,.mt-bottom-nav a,.pg-bottom-nav a,.bottom-nav a){color:var(--pusa-ink-soft)!important;}
:where(.gd-bottom-nav a.active,.mt-bottom-nav a.active,.pg-bottom-nav a.active,.bottom-nav a.active,.gd-bottom-nav a[aria-current="page"],.mt-bottom-nav a[aria-current="page"],.pg-bottom-nav a[aria-current="page"],.bottom-nav a[aria-current="page"]){
  background:linear-gradient(145deg,var(--pusa-green-900),var(--pusa-green-700))!important;
  color:#ffffff!important;
}
:where(.gd-bottom-nav a.active span,.mt-bottom-nav a.active span,.pg-bottom-nav a.active span,.bottom-nav a.active span){color:#ffffff!important;}

/* Form input: surface putih dan teks hitam-hijau supaya tidak hilang. */
:where(.field,.gd-field,.mt-field,.pg-field) :where(input:not([type="checkbox"]):not([type="radio"]):not(.pin-source),select,textarea),
:where(input:not([type="checkbox"]):not([type="radio"]):not(.pin-source),select,textarea){
  background:#ffffff!important;
  color:var(--pusa-ink-strong)!important;
  border-color:var(--pusa-line-green)!important;
}
:where(input,select,textarea)::placeholder{color:#8aa096!important;}
:where(.field,.gd-field,.mt-field,.pg-field)>:where(label,span:first-child){color:var(--pusa-ink-strong)!important;}

/* Tombol primer/secondary/important: kontras eksplisit. */
:where(.gd-primary,.mt-primary,.pg-primary,.vd-primary,.install-button,.primary-button){
  background:linear-gradient(135deg,var(--pusa-green-900),var(--pusa-green-700))!important;
  color:#ffffff!important;
  border:0!important;
}
:where(.gd-primary,.mt-primary,.pg-primary,.vd-primary,.install-button,.primary-button) :where(span,strong,small){color:#ffffff!important;}
:where(.gd-mini-btn,.mt-mini-btn,.pg-mini,.vd-mini,.secondary-button,.gd-ghost,.mt-ghost,.pg-ghost){
  background:#eafff2!important;
  color:var(--pusa-green-800)!important;
  border:1px solid rgba(13,107,69,.18)!important;
}
:where(.gd-danger,.mt-danger,.pg-danger,.vd-danger,.pg-reset-action){
  background:#fff1f2!important;
  color:#b91c1c!important;
  border:1px solid #fecdd3!important;
}

/* Login tetap rapi dengan kartu putih, tetapi background hijau. */
:where(.gd-login-shell,.mt-login-shell,.pg-login-shell-v33){
  background:radial-gradient(circle at 30% 0%,rgba(185,245,212,.24),transparent 38%),linear-gradient(160deg,var(--pusa-green-950),var(--pusa-green-800))!important;
}
:where(.gd-login-card,.mt-login-card,.pg-login-card-v33){background:rgba(255,255,255,.96)!important;color:var(--pusa-ink-strong)!important;}
:where(.gd-login-card,.mt-login-card,.pg-login-card-v33) :where(h1,h2,h3,strong,label){color:var(--pusa-ink-strong)!important;}
:where(.gd-login-card,.mt-login-card,.pg-login-card-v33) :where(p,small,span){color:var(--pusa-ink-soft)!important;}
:where(.gd-login-card .gd-mark,.mt-login-card .mt-mark,.pg-login-card-v33 .pg-mark){background:linear-gradient(145deg,var(--pusa-green-900),var(--pusa-green-700))!important;color:#fff!important;}

/* Launcher: tetap modern, tetapi icon utama hijau dan teks jelas. */
body[data-page="launcher"] :where(.launcher-app-icon-v33){background:rgba(255,255,255,.88)!important;color:var(--pusa-ink-strong)!important;}
body[data-page="launcher"] :where(.launcher-app-icon-v33 strong,.launcher-app-icon-v33 h3){color:var(--pusa-ink-strong)!important;}
body[data-page="launcher"] :where(.launcher-app-icon-v33 small,.launcher-app-icon-v33 p){color:var(--pusa-ink-soft)!important;}
body[data-page="launcher"] .launcher-app-icon-v33:nth-child(2n+1) .launcher-icon-v33,
body[data-page="launcher"] .launcher-app-icon-v33:nth-child(2n) .launcher-icon-v33{
  background:linear-gradient(145deg,var(--pusa-green-900),var(--pusa-green-700))!important;
  color:#ffffff!important;
  border-color:rgba(6,59,42,.12)!important;
}
body[data-page="launcher"] .launcher-analysis-pill-v33{background:#e8f2ff!important;color:var(--pusa-v37-secondary)!important;border-color:rgba(37,99,235,.18)!important;}

/* Safety net: elemen dengan style putih dari CSS lama tidak boleh hilang di atas surface putih. */
:where(.card,.gd-card,.mt-card,.pg-card,.vd-card,.gd-content,.mt-content,.pg-content,.app-scroll,.root-scroll) :where(.white-text,.text-white,[style*="color:white"],[style*="color: white"]){
  color:var(--pusa-ink-strong)!important;
}
:where(.gd-header,.mt-header,.pg-header,.vd-header,.app-topbar,.gd-hero,.mt-hero,.pg-hero,.vd-hero,.page-hero) :where(.white-text,.text-white,[style*="color:white"],[style*="color: white"]){
  color:#ffffff!important;
}

@media (prefers-reduced-transparency: reduce){
  :where(.app-topbar,.gd-header,.mt-header,.pg-header,.vd-header){background:linear-gradient(150deg,var(--pusa-green-950),var(--pusa-green-800))!important;color:#fff!important;}
  :where(.card,.gd-card,.mt-card,.pg-card,.vd-card,.gd-action-link,.mt-action-link,.pg-action){background:#ffffff!important;}
}
