/* PERWIRA KMS v34 first-access onboarding tour */
.kms-tour-open { overflow: hidden !important; }
.kms-tour-overlay {
  position: fixed;
  inset: 0;
  z-index: 99990;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  pointer-events: auto;
}
.kms-tour-shade {
  position: fixed;
  z-index: 99990;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  pointer-events: none;
}
.kms-tour-focus {
  position: fixed;
  z-index: 99991;
  border: 3px solid #4fbaea;
  border-radius: 16px;
  background: transparent !important;
  box-shadow:
    0 0 0 5px rgba(79,186,234,.18),
    0 10px 24px rgba(9,20,49,.16);
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  pointer-events: none;
  transition: top .18s ease, left .18s ease, width .18s ease, height .18s ease;
}
.kms-tour-card {
  position: fixed;
  z-index: 99992;
  width: min(390px, calc(100vw - 32px));
  max-height: min(520px, calc(100vh - 32px));
  overflow: auto;
  border: 1px solid rgba(79,186,234,.45);
  border-radius: 22px;
  background: #fff;
  color: #15213a;
  box-shadow: 0 24px 70px rgba(9,20,49,.34);
  padding: 20px;
}
.kms-tour-kicker {
  margin: 0 0 6px;
  color: #4fbaea;
  font-size: .75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .11em;
}
.kms-tour-title { margin: 0; color: #284382; font-size: 1.35rem; line-height: 1.25; }
.kms-tour-text { margin: 10px 0 0; color: #53627f; line-height: 1.55; }
.kms-tour-progress { margin: 14px 0 0; color: #6a7894; font-size: .82rem; font-weight: 700; }
.kms-tour-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 18px; }
.kms-tour-btn {
  border: 1px solid #d8e2f1;
  border-radius: 999px;
  background: #fff;
  color: #284382;
  padding: 9px 15px;
  font: inherit;
  font-weight: 850;
  cursor: pointer;
}
.kms-tour-btn:hover, .kms-tour-btn:focus-visible { border-color: #4fbaea; outline: 3px solid rgba(79,186,234,.2); outline-offset: 2px; }
.kms-tour-btn.primary { border-color: transparent; background: linear-gradient(135deg,#3159a1,#4fbaea); color: #fff; }
.kms-tour-btn.skip { margin-right: auto; color: #66738d; }
.kms-tour-btn[disabled] { opacity: .45; cursor: default; }
.kms-tour-card[data-placement="center"] { top: 50% !important; left: 50% !important; transform: translate(-50%,-50%); }
[data-theme="dark"] .kms-tour-card,
.admin-body[data-theme="dark"] .kms-tour-card,
.pernama-admin-page[data-theme="dark"] .kms-tour-card,
.personnel-page[data-theme="dark"] .kms-tour-card {
  background: #121c33;
  color: #edf5ff;
  border-color: rgba(79,186,234,.35);
}
[data-theme="dark"] .kms-tour-title,
.admin-body[data-theme="dark"] .kms-tour-title,
.pernama-admin-page[data-theme="dark"] .kms-tour-title,
.personnel-page[data-theme="dark"] .kms-tour-title { color: #d9ecff; }
[data-theme="dark"] .kms-tour-text,
[data-theme="dark"] .kms-tour-progress,
.admin-body[data-theme="dark"] .kms-tour-text,
.admin-body[data-theme="dark"] .kms-tour-progress { color: #b7c4d9; }
[data-theme="dark"] .kms-tour-btn,
.admin-body[data-theme="dark"] .kms-tour-btn { background: #17233e; color: #e8f4ff; border-color: #334566; }
@media (max-width: 640px) {
  .kms-tour-card { width: calc(100vw - 24px) !important; max-height: min(46vh, 420px); padding: 16px; border-radius: 18px; }
  .kms-tour-focus { border-radius: 12px; }
  .kms-tour-actions { gap: 6px; }
  .kms-tour-btn { padding: 8px 12px; }
}
