/*
 * PKKMB_PUBLIC_UX_V161
 * Safe public experience polish.
 * Presentation only — no business logic.
 */

:root{
  --pux-primary:#087c7d;
  --pux-primary-dark:#075f67;
  --pux-purple:#7a1685;
  --pux-text:#17313a;
  --pux-muted:#667085;
  --pux-line:#d7e2e6;
  --pux-bg:#f3f8f7;
  --pux-focus:rgba(8,124,125,.22);
}


/* =========================================================
   ACCESSIBILITY
   ========================================================= */

a,
button,
input,
select,
textarea{
  -webkit-tap-highlight-color:transparent;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:3px solid var(--pux-focus) !important;
  outline-offset:2px;
}

button,
a,
select,
input[type="checkbox"],
input[type="radio"]{
  touch-action:manipulation;
}


/* =========================================================
   FORM CONSISTENCY
   ========================================================= */

input,
select,
textarea,
button{
  font:inherit;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
select,
textarea{
  max-width:100%;
}

textarea{
  resize:vertical;
}

::placeholder{
  opacity:.72;
}


/* =========================================================
   MEDIA SAFETY
   ========================================================= */

img,
svg,
canvas,
video{
  max-width:100%;
}

img{
  height:auto;
}


/* =========================================================
   LINK / BUTTON MOTION
   ========================================================= */

a,
button{
  transition:
    transform .15s ease,
    box-shadow .15s ease,
    background-color .15s ease,
    border-color .15s ease,
    color .15s ease;
}

button:disabled{
  cursor:not-allowed;
  opacity:.65;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:640px){

  html{
    -webkit-text-size-adjust:100%;
  }

  body{
    overflow-x:hidden;
  }

  input,
  select,
  textarea{
    font-size:16px;
  }

  button,
  .btn{
    min-height:42px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media(prefers-reduced-motion:reduce){

  *,
  *::before,
  *::after{
    scroll-behavior:auto !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }

}


/* =========================================================
   PRINT SAFETY
   ========================================================= */

@media print{

  a,
  button{
    transition:none !important;
  }

}


/* PKKMB_PUBLIC_UX_V161_END */
