.notification-window-overlay{position:fixed; top:0; left:0; width:100%; height:100%; background-color:rgba(0,0,0,0.5); z-index:999999; display:flex; align-items:center; justify-content:center; opacity:0; visibility:hidden; transition:opacity 0.2s ease, visibility 0.2s ease; }
.notification-window-overlay.show{opacity:1; visibility:visible; }
.notification-window{background:#ffffff; border-radius:8px; box-shadow:0 10px 40px rgba(0,0,0,0.2); max-width:350px; width:90%; max-height:90vh; overflow:hidden; transform:scale(0.9) translateY(-20px); transition:transform 0.2s ease; text-align:center; padding:30px 25px 25px; }
.notification-window-overlay.show .notification-window{transform:scale(1) translateY(0); }
.notification-window-close{position:absolute; top:10px; right:10px; }
.notification-window-close .btn-close-x{background:none; border:none; font-size:18px; color:#999; cursor:pointer; padding:5px 8px; line-height:1; transition:color 0.15s ease; }
.notification-window-close .btn-close-x:hover{color:#333; }
.notification-window{position:relative; }
.notification-window-icon{width:60px; height:60px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 15px; }
.notification-window-icon.confirm{background-color:#00CC78; }
.notification-window-icon.alert{background-color:#e89830; }
.notification-window-icon.delete{background-color:#FF4A11; }
.notification-window-icon i{font-size:28px; color:#ffffff; }
.notification-window-title{margin:0 0 10px; font-size:22px; font-weight:600; color:#333333; line-height:1.3; }
.notification-window-body{padding:0 10px 20px; font-size:15px; line-height:1.6; color:#666666; }
.notification-window-footer{display:flex; justify-content:center; gap:10px; }
.notification-window-footer .btn{padding:10px 30px; font-size:14px; font-weight:500; border-radius:6px; transition:all 0.15s ease; cursor:pointer; min-width:80px; }
.notification-window-footer .btn-confirm{background-color:#00A1BE; border-color:#00A1BE; color:#ffffff; }
.notification-window-footer .btn-confirm:hover{background-color:#008da6; border-color:#008da6; }
.notification-window-footer .btn-alert{background-color:#00A1BE; border-color:#00A1BE; color:#ffffff; }
.notification-window-footer .btn-alert:hover{background-color:#008da6; border-color:#008da6; }
.notification-window-footer .btn-delete{background-color:#FF4A11; border-color:#FF4A11; color:#ffffff; }
.notification-window-footer .btn-delete:hover{background-color:#e04210; border-color:#e04210; }
.notification-window-footer .btn-outline-secondary{background-color:#ffffff; border:1px solid #ced4da; color:#6c757d; }
.notification-window-footer .btn-outline-secondary:hover{background-color:#e9ecef; border-color:#ced4da; color:#495057; }
.notification-window-footer .btn:focus, .notification-window-footer .btn:active, .notification-window-footer .btn:active:focus, .notification-window-footer .btn:focus-visible, .notification-window-footer button:focus, .notification-window-footer button:active{outline:none !important; box-shadow:none !important; }
.notification-window-footer .btn-confirm:focus, .notification-window-footer .btn-confirm:active, .notification-window-footer .btn-confirm:active:focus, .notification-window-footer .btn-confirm:focus-visible{background-color:#00A1BE !important; border-color:#00A1BE !important; color:#ffffff !important; }
.notification-window-footer .btn-alert:focus, .notification-window-footer .btn-alert:active, .notification-window-footer .btn-alert:active:focus, .notification-window-footer .btn-alert:focus-visible{background-color:#00A1BE !important; border-color:#00A1BE !important; color:#ffffff !important; }
.notification-window-footer .btn-delete:focus, .notification-window-footer .btn-delete:active, .notification-window-footer .btn-delete:active:focus, .notification-window-footer .btn-delete:focus-visible{background-color:#FF4A11 !important; border-color:#FF4A11 !important; color:#ffffff !important; }
.notification-window-footer .btn-outline-secondary:focus, .notification-window-footer .btn-outline-secondary:active, .notification-window-footer .btn-outline-secondary:active:focus, .notification-window-footer .btn-outline-secondary:focus-visible, .notification-window-footer button.btn-outline-secondary:focus{background-color:#ffffff !important; border:1px solid #ced4da !important; color:#6c757d !important; outline:none !important; box-shadow:none !important; }
@media (max-width:576px){.notification-window{width:95%; margin:10px; padding:25px 20px 20px; } .notification-window-footer{flex-direction:column-reverse; } .notification-window-footer .btn{width:100%; } }
@keyframes notification-shake{0%,100%{transform:translateX(0); } 10%,30%,50%,70%,90%{transform:translateX(-5px); } 20%,40%,60%,80%{transform:translateX(5px); } }
.notification-window.shake{animation:notification-shake 0.5s ease; }
