.bptl-confirm-root{position:fixed;top:0;left:0;width:100%;height:100%;z-index:7001;pointer-events:none;}

.bptl-confirm-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:7000;pointer-events:auto;}

.bptl-confirm{background:var(--bptl-bg-card);border-radius:var(--bptl-radius);box-shadow:var(--bptl-shadow-modal);padding:36px 40px;width:90%;max-width:460px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;font-family:system-ui,-apple-system,sans-serif;color:var(--bptl-text-primary);animation:bptlConfirmIn .18s ease-out;}

.bptl-confirm__icon{font-size:32px;margin-bottom:6px;}

.bptl-confirm--success .bptl-confirm__icon{color:var(--bptl-color-success);}
.bptl-confirm--danger .bptl-confirm__icon{color:var(--bptl-color-danger);}
.bptl-confirm--warning .bptl-confirm__icon{color:var(--bptl-color-warning);}
.bptl-confirm--info .bptl-confirm__icon{color:var(--bptl-color-info);}

.bptl-confirm__content{display:flex;flex-direction:column;gap:6px;}

.bptl-confirm__title{font-size:22px;font-weight:600;color:var(--bptl-text-primary);}

.bptl-confirm__text{font-size:16px;color:var(--bptl-text-secondary);}

.bptl-confirm__footer{display:flex;gap:14px;margin-top:18px;}

.bptl-confirm__cancel{background:var(--bptl-color-neutral-bg);border:none;border-radius:var(--bptl-radius);padding:10px 20px;font-size:14px;color:var(--bptl-text-primary);cursor:pointer;}

.bptl-confirm__cancel:hover{background:var(--bptl-border-light);}

.bptl-confirm__confirm{border:none;border-radius:var(--bptl-radius);padding:10px 20px;font-size:14px;cursor:pointer;color:#fff;}

.bptl-confirm--success .bptl-confirm__confirm{background:var(--bptl-color-success);}
.bptl-confirm--danger .bptl-confirm__confirm{background:var(--bptl-color-danger);}
.bptl-confirm--warning .bptl-confirm__confirm{background:var(--bptl-color-warning);color:#000;}
.bptl-confirm--info .bptl-confirm__confirm{background:var(--bptl-color-info);}

.bptl-confirm__confirm:hover{filter:brightness(.92);}

.bptl-confirm-out{animation:bptlConfirmOut .16s ease forwards;}

.bptl-confirm-overlay-out{animation:bptlOverlayOut .16s ease forwards;}

@keyframes bptlConfirmIn{from{opacity:0;transform:scale(.96);}to{opacity:1;transform:scale(1);}}

@keyframes bptlConfirmOut{from{opacity:1;transform:scale(1);}to{opacity:0;transform:scale(.96);}}

@keyframes bptlOverlayOut{from{opacity:1;}to{opacity:0;}}
