/*
  [IBP:UI] Global Confirm Modal v1.0
  Source visual language: /provider/dashboard.asp Iteration 5O.
  Scope: shared confirmation / reassurance dialog across portal layouts.
  Reversible: remove this asset from shared layouts and restore page-local callers.
*/
.kc-confirm-overlay{
  position:fixed;
  inset:0;
  z-index:12050;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(0,0,0,.42);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity 220ms ease, visibility 220ms ease;
}
.kc-confirm-overlay.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.kc-confirm-box{
  width:min(90vw,420px);
  max-height:min(82vh,620px);
  overflow:auto;
  background:#fff;
  border-radius:20px;
  padding:22px;
  box-shadow:0 20px 60px rgba(0,0,0,.22);
  direction:rtl;
  text-align:right;
  transform:translateY(8px) scale(.985);
  transition:transform 220ms ease;
}
.kc-confirm-overlay.is-open .kc-confirm-box{
  transform:translateY(0) scale(1);
}
.kc-confirm-title{
  margin:0 0 10px;
  color:#111827;
  font-size:18px;
  font-weight:900;
  line-height:1.7;
}
.kc-confirm-text{
  margin:0;
  color:#555;
  font-size:14px;
  line-height:1.9;
  white-space:pre-line;
}
.kc-confirm-actions{
  display:flex;
  gap:10px;
  margin-top:18px;
}
.kc-confirm-actions button{
  flex:1;
  min-height:44px;
  border-radius:12px;
  cursor:pointer;
  font:inherit;
  font-weight:800;
  -webkit-tap-highlight-color:transparent;
  transition:transform 180ms ease, box-shadow 180ms ease, opacity 180ms ease, background 180ms ease;
}
.kc-confirm-actions button:active{
  transform:scale(.985);
}
.kc-confirm-actions button:disabled{
  cursor:default;
  opacity:.62;
}
.kc-confirm-ok{
  border:1px solid #117a37;
  background:#117a37;
  color:#fff;
}
.kc-confirm-ok:hover{
  box-shadow:0 7px 18px rgba(17,122,55,.18);
}
.kc-confirm-overlay[data-tone="danger"] .kc-confirm-ok{
  border-color:#b42318;
  background:#b42318;
}
.kc-confirm-overlay[data-tone="danger"] .kc-confirm-ok:hover{
  box-shadow:0 7px 18px rgba(180,35,24,.18);
}
.kc-confirm-cancel{
  border:1px solid rgba(30,60,90,.25);
  background:#fff;
  color:#344054;
}
.kc-confirm-cancel:hover{
  background:#f8fafc;
}
html.kc-confirm-scroll-lock,
body.kc-confirm-scroll-lock{
  overflow:hidden !important;
}
@media (max-width:520px){
  .kc-confirm-overlay{padding:14px;}
  .kc-confirm-box{width:min(94vw,420px);padding:19px;border-radius:18px;}
  .kc-confirm-actions{gap:8px;}
  .kc-confirm-actions button{min-height:46px;}
}
@media (prefers-reduced-motion:reduce){
  .kc-confirm-overlay,
  .kc-confirm-box,
  .kc-confirm-actions button{transition:none !important;}
}
