.kcrp-modal[hidden]{display:none!important}
.kcrp-modal{position:fixed;inset:0;z-index:99970;display:grid;place-items:center;padding:24px;isolation:isolate}
.kcrp-backdrop{position:absolute;inset:0;border:0;background:rgba(6,18,14,.76);backdrop-filter:blur(7px);cursor:pointer}
.kcrp-card{position:relative;z-index:1;width:min(86vw,760px);max-height:86dvh;padding:9px;overflow:visible;border:1px solid rgba(255,255,255,.45);border-radius:22px;background:#fff;box-shadow:0 28px 90px rgba(0,0,0,.38)}
.kcrp-card:before{content:"";position:absolute;left:24px;right:76px;top:0;height:4px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,#2ead34 0 68%,#f47a20 68% 100%)}
.kcrp-card img{display:block;width:100%;height:auto;max-height:calc(86dvh - 18px);object-fit:contain;border-radius:14px;background:#fff}
.kcrp-close{position:absolute;right:15px;top:15px;z-index:2;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.58);border-radius:50%;background:#102019;box-shadow:0 8px 22px rgba(0,0,0,.22);cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.kcrp-close:hover{transform:translateY(-1px);background:#2eaa35}
.kcrp-close:focus{outline:none}
.kcrp-close:focus-visible{outline:3px solid rgba(142,222,130,.8);outline-offset:3px;box-shadow:0 8px 22px rgba(0,0,0,.22)}
.kcrp-close span{position:absolute;left:11px;top:20px;width:20px;height:2px;border-radius:99px;background:#fff}
.kcrp-close span:first-child{transform:rotate(45deg)}
.kcrp-close span:last-child{transform:rotate(-45deg)}
body.kcrp-open{overflow:hidden}
@media(max-width:640px){
  .kcrp-modal{align-items:center;padding:12px}
  .kcrp-card{width:min(100%,520px);max-height:calc(100dvh - 24px);padding:6px;border-radius:18px;overflow:auto;overscroll-behavior:contain}
  .kcrp-card:before{left:18px;right:68px;height:3px}
  .kcrp-card img{width:100%;max-width:none;max-height:none;border-radius:12px}
  .kcrp-close{position:sticky;float:right;right:8px;top:8px;width:38px;height:38px;margin:2px 2px -40px 0}
  .kcrp-close span{left:9px;top:18px;width:18px}
}
