/* Minor tweaks for AbsensiWP full-page rendering */
body.absensiwp-absensi-full {
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  margin: 0;
}

html, body { height: 100%; }

/*
  Sidebar brand behavior (ABSENSIWP):
  - Expanded sidebar: show FULL logo (.navbar-brand-logo), hide ICON (.navbar-brand-mini)
  - Mini sidebar: show ICON (.navbar-brand-mini), hide FULL (.navbar-brand-logo)

  ABSENSIWP toggles sidebar mode on <html data-app-sidebar="mini"> (and mini-hover).
*/
body.absensiwp-absensi-full .app-navbar-brand .navbar-brand-mini {
  display: none;
}

html[data-app-sidebar="mini"] body.absensiwp-absensi-full .app-navbar-brand .navbar-brand-logo,
html[data-app-sidebar="mini-hover"] body.absensiwp-absensi-full .app-navbar-brand .navbar-brand-logo {
  display: none;
}

html[data-app-sidebar="mini"] body.absensiwp-absensi-full .app-navbar-brand .navbar-brand-mini,
html[data-app-sidebar="mini-hover"] body.absensiwp-absensi-full .app-navbar-brand .navbar-brand-mini {
  display: inline-flex;
  align-items: center;
}

html[data-app-sidebar="mini"] body.absensiwp-absensi-full .app-navbar-brand,
html[data-app-sidebar="mini-hover"] body.absensiwp-absensi-full .app-navbar-brand {
  justify-content: center;
  padding-left: 0;
  padding-right: 0;
}

/* Dashboard right column: keep cards stacked at top */
body.absensiwp-absensi-full .absensiwp-rightcol {
  display: flex;
  flex-direction: column;
  justify-content: flex-start !important;
  gap: 1rem;
}

body.absensiwp-absensi-full .absensiwp-rightcol > .card {
  margin-top: 0 !important;
}

/* Auth cover: use full background on the left frame */
body.absensiwp-absensi-full .auth-frame{
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  position: relative;
}
body.absensiwp-absensi-full .auth-frame::before{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.25);
  border-radius:inherit;
}
body.absensiwp-absensi-full .auth-frame .clearfix{
  position:relative;
  z-index:1;
}

/* Face ID modal */
.absensiwp-face-modal{
  position: fixed;
  inset: 0;
  background: rgba(12,16,24,.72);
  z-index: 99999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.absensiwp-face-modal.is-open{
  display: flex !important;
}
.absensiwp-face-modal__dialog{
  width: min(520px, 100%);
  border-radius: 16px;
  background: #0f172a;
  color: #fff;
  box-shadow: 0 16px 48px rgba(0,0,0,.35);
  padding: 16px;
}
.absensiwp-face-modal__body video{
  width: 100%;
  border-radius: 14px;
  background: #000;
  max-height: 70vh;
  object-fit: cover;
}


/* Face modal close button contrast fix (mobile/webview/theme overrides) */
.absensiwp-face-modal #absensiwp-face-cancel,
.absensiwp-face-modal .absensiwp-face-cancel-btn{
  color:#ffffff !important;
  border-color:rgba(255,255,255,.65) !important;
  background:transparent !important;
}
.absensiwp-face-modal #absensiwp-face-cancel:hover,
.absensiwp-face-modal #absensiwp-face-cancel:focus,
.absensiwp-face-modal .absensiwp-face-cancel-btn:hover,
.absensiwp-face-modal .absensiwp-face-cancel-btn:focus{
  color:#ffffff !important;
  border-color:#ffffff !important;
  background:rgba(255,255,255,.12) !important;
}
