.app-confirm{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:20px}
.app-confirm[hidden]{display:none}
.app-confirm__backdrop{position:absolute;inset:0;background:rgba(23,5,6,.52);backdrop-filter:blur(4px)}
.app-confirm__box{position:relative;width:min(420px,100%);padding:24px 24px 20px;border-radius:20px;background:var(--confirm-surface,#fffaf3);border:1px solid rgba(91,17,24,.1);box-shadow:0 24px 60px rgba(50,8,12,.28);animation:appConfirmIn .24s ease}
.app-confirm__icon{width:48px;height:48px;margin:0 auto 14px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(122,16,32,.12),rgba(91,17,24,.08));color:var(--confirm-brand,#5b1118)}
.app-confirm--danger .app-confirm__icon{background:linear-gradient(135deg,rgba(122,16,32,.16),rgba(215,38,61,.1));color:#7a1020}
.app-confirm__icon svg{width:24px;height:24px;display:block}
.app-confirm__title{margin:0 0 8px;font-family:var(--confirm-font,Inter,system-ui,sans-serif);font-size:20px;font-weight:700;line-height:1.3;text-align:center;color:var(--confirm-brand,#32080c)}
.app-confirm__message{margin:0;font-family:var(--confirm-font,Inter,system-ui,sans-serif);font-size:14px;line-height:1.55;text-align:center;color:rgba(36,24,22,.68)}
.app-confirm__actions{display:flex;gap:10px;margin-top:22px}
.app-confirm__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid transparent;font-family:var(--confirm-font,Inter,system-ui,sans-serif);font-size:14px;font-weight:700;cursor:pointer;transition:filter .2s ease,transform .2s ease,background .2s ease}
.app-confirm__btn:hover{filter:brightness(1.03)}
.app-confirm__btn:active{transform:translateY(1px)}
.app-confirm__btn--cancel{background:var(--confirm-surface-2,#f3efe8);color:var(--confirm-brand,#5b1118);border-color:rgba(91,17,24,.12)}
.app-confirm__btn--ok{background:linear-gradient(135deg,var(--confirm-brand-2,#5b1118),var(--confirm-brand,#32080c));color:#fffaf3}
.app-confirm--danger .app-confirm__btn--ok{background:linear-gradient(135deg,#9b1024,#7a1020)}
body.app-confirm-open{overflow:hidden}
@keyframes appConfirmIn{
  from{opacity:0;transform:translateY(10px) scale(.98)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
