/**


 * Gazza Market - Custom Alert & Modal Styles


 * Şık ve modern alert/modal tasarımı


 */


/* Modal Overlay */


.gazza-modal-overlay {


    position: fixed;


    top: 0;


    left: 0;


    width: 100%;


    height: 100%;


    background: rgba(0, 0, 0, 0.75);


    backdrop-filter: blur(8px);


    -webkit-backdrop-filter: blur(8px);


    display: flex;


    align-items: center;


    justify-content: center;


    z-index: 999999;


    opacity: 0;


    visibility: hidden;


    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);


    padding: 20px;


}


.gazza-modal-overlay.active {


    opacity: 1;


    visibility: visible;


}


/* Modal Container */


.gazza-modal-container {


    background: linear-gradient(145deg, #1a1f2e 0%, #2a3142 50%, #1a1f2e 100%);


    border-radius: 20px;


    padding: 30px 35px;


    max-width: 360px;


    width: 100%;


    text-align: center;


    box-shadow:


        0 20px 50px rgba(0, 0, 0, 0.6),


        0 10px 25px rgba(0, 0, 0, 0.4),


        inset 0 1px 0 rgba(255, 255, 255, 0.12),


        inset 0 -1px 0 rgba(0, 0, 0, 0.2);


    transform: scale(0.9) translateY(-20px);


    transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);


    position: relative;


    overflow: visible;


    border: 1px solid rgba(255, 255, 255, 0.1);


}


.gazza-modal-overlay.active .gazza-modal-container {


    transform: scale(1) translateY(0);


}


/* Decorative Background */


.gazza-modal-container::before {


    content: '';


    position: absolute;


    top: -50%;


    right: -50%;


    width: 200%;


    height: 200%;


    background: radial-gradient(circle, rgba(255, 255, 255, 0.05) 0%, transparent 70%);


    pointer-events: none;


}


/* Modal Icon */


.gazza-modal-icon {


    margin-bottom: 15px;


    animation: iconBounce 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);


}


.gazza-modal-icon svg {


    width: 44px;


    height: 44px;


}


@keyframes iconBounce {


    0% {


        transform: scale(0) rotate(-180deg);


        opacity: 0;


    }


    50% {


        transform: scale(1.1) rotate(10deg);


    }


    100% {


        transform: scale(1) rotate(0deg);


        opacity: 1;


    }


}


.gazza-modal-icon svg {


    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.3));


}


/* Modal Title */


.gazza-modal-title {


    font-size: 20px;


    font-weight: 700;


    color: #ffffff;


    margin-bottom: 10px;


    letter-spacing: -0.5px;


    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);


}


/* Modal Message */


.gazza-modal-message {


    font-size: 14px;


    color: rgba(255, 255, 255, 0.9);


    line-height: 1.5;


    margin-bottom: 20px;


    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);


    font-weight: 400;


    word-wrap: break-word;


    word-break: break-word;


    white-space: normal;


    overflow-wrap: break-word;


}


/* Modal Button */


.gazza-modal-btn {


    padding: 12px 32px;


    border: none;


    border-radius: 10px;


    font-size: 14px;


    font-weight: 600;


    cursor: pointer;


    transition: all 0.3s ease;


    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);


    text-transform: uppercase;


    letter-spacing: 1px;


    position: relative;


    overflow: hidden;


    border: 2px solid rgba(255, 255, 255, 0.1);


}


.gazza-modal-btn::before {


    content: '';


    position: absolute;


    top: 50%;


    left: 50%;


    width: 0;


    height: 0;


    border-radius: 50%;


    background: rgba(255, 255, 255, 0.25);


    transform: translate(-50%, -50%);


    transition: width 0.7s ease, height 0.7s ease;


}


.gazza-modal-btn:hover::before {


    width: 350px;


    height: 350px;


}


.gazza-modal-btn:hover {


    transform: translateY(-5px) scale(1.03);


}


.gazza-modal-btn:active {


    transform: translateY(-2px) scale(0.97);


}


/* Button Types */


.gazza-modal-btn-success {


    background: linear-gradient(145deg, #3ea635 0%, #2d7a28 100%);


    color: white;


    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);


}


.gazza-modal-btn-success:hover {


    background: linear-gradient(145deg, #45b83c 0%, #3ea635 100%);


    box-shadow:


        0 12px 32px rgba(62, 166, 53, 0.5),


        0 6px 16px rgba(62, 166, 53, 0.3),


        inset 0 1px 0 rgba(255, 255, 255, 0.3);


}


.gazza-modal-btn-error {


    background: linear-gradient(145deg, #ff4444 0%, #cc0000 100%);


    color: white;


    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);


}


.gazza-modal-btn-error:hover {


    background: linear-gradient(145deg, #ff5555 0%, #ff4444 100%);


    box-shadow:


        0 12px 32px rgba(255, 68, 68, 0.5),


        0 6px 16px rgba(255, 68, 68, 0.3),


        inset 0 1px 0 rgba(255, 255, 255, 0.3);


}


.gazza-modal-btn-warning {


    background: linear-gradient(135deg, #ffa500 0%, #ff8c00 100%);


    color: white;


}


.gazza-modal-btn-warning:hover {


    background: linear-gradient(135deg, #ff8c00 0%, #ff7700 100%);


    box-shadow: 0 8px 25px rgba(255, 165, 0, 0.4);


}


.gazza-modal-btn-info {


    background: linear-gradient(135deg, #2196F3 0%, #1976D2 100%);


    color: white;


}


.gazza-modal-btn-info:hover {


    background: linear-gradient(135deg, #1976D2 0%, #1565C0 100%);


    box-shadow: 0 8px 25px rgba(33, 150, 243, 0.4);


}


/* Confirm Dialog Buttons */


.gazza-modal-buttons {


    display: flex;


    gap: 12px;


    justify-content: center;


}


.gazza-modal-btn-cancel {


    background: linear-gradient(145deg, #5a6978 0%, #4a5968 100%);


    color: white;


    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);


    position: relative;


}


.gazza-modal-btn-cancel::after {


    content: '';


    position: absolute;


    inset: 0;


    border-radius: 16px;


    background: linear-gradient(145deg, rgba(255,255,255,0.1) 0%, transparent 100%);


    pointer-events: none;


}


.gazza-modal-btn-cancel:hover {


    background: linear-gradient(145deg, #6a7988 0%, #5a6978 100%);


    box-shadow:


        0 15px 40px rgba(90, 105, 120, 0.6),


        0 8px 20px rgba(90, 105, 120, 0.4),


        inset 0 2px 0 rgba(255, 255, 255, 0.25);


}


.gazza-modal-btn-confirm {


    background: linear-gradient(145deg, #3ea635 0%, #2d7a28 100%);


    color: white;


    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);


    position: relative;


    animation: pulseGreen 2s ease-in-out infinite;


}


@keyframes pulseGreen {


    0%, 100% { box-shadow: 0 10px 30px rgba(62, 166, 53, 0.5); }


    50% { box-shadow: 0 10px 40px rgba(62, 166, 53, 0.7); }


}


.gazza-modal-btn-confirm::after {


    content: '';


    position: absolute;


    inset: 0;


    border-radius: 16px;


    background: linear-gradient(145deg, rgba(255,255,255,0.15) 0%, transparent 100%);


    pointer-events: none;


}


.gazza-modal-btn-confirm:hover {


    background: linear-gradient(145deg, #45b83c 0%, #3ea635 100%);


    box-shadow:


        0 15px 45px rgba(62, 166, 53, 0.7),


        0 8px 25px rgba(62, 166, 53, 0.5),


        inset 0 2px 0 rgba(255, 255, 255, 0.3);


    animation: none;


}


/* Toast Notifications - Küçük Sağ Üst Bildirim */


.gazza-toast {


    position: fixed !important;


    top: 90px !important;


    right: 20px !important;


    background: #3ea635 !important;


    padding: 8px 12px !important;


    border-radius: 6px !important;


    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;


    display: flex !important;


    align-items: center !important;


    gap: 8px !important;


    z-index: 999999 !important;


    transform: translateX(300px) !important;


    opacity: 0 !important;


    transition: all 0.3s ease !important;


    width: auto !important;


    max-width: 200px !important;


    min-width: auto !important;


    font-size: 12px !important;


    height: auto !important;


    pointer-events: auto !important;


}


.gazza-toast.active {


    transform: translateX(0) !important;


    opacity: 1 !important;


}


.gazza-toast-icon {


    width: 16px !important;


    height: 16px !important;


    min-width: 16px !important;


    min-height: 16px !important;


    border-radius: 50% !important;


    display: flex !important;


    align-items: center !important;


    justify-content: center !important;


    font-size: 10px !important;


    font-weight: bold !important;


    flex-shrink: 0 !important;


    background: rgba(255, 255, 255, 0.3) !important;


    color: white !important;


}


.gazza-toast-success {


    background: #3ea635 !important;


}


.gazza-toast-error {


    background: #ff4444 !important;


}


.gazza-toast-warning {


    background: #ffa500 !important;


}


.gazza-toast-info {


    background: #2196F3 !important;


}


.gazza-toast-message {


    font-size: 12px !important;


    color: white !important;


    font-weight: 500 !important;


    line-height: 1.2 !important;


    white-space: nowrap !important;


    overflow: hidden !important;


    text-overflow: ellipsis !important;


    max-width: 160px !important;


}


/* Responsive */


@media (max-width: 768px) {


    .gazza-modal-container {


        padding: 40px 30px;


        max-width: 90%;


        border-radius: 20px;


    }


    .gazza-modal-title {


        font-size: 24px;


    }


    .gazza-modal-message {


        font-size: 15px;


    }


    .gazza-modal-btn {


        padding: 12px 32px;


        font-size: 15px;


    }


    .gazza-modal-buttons {


        flex-direction: column;


    }


    .gazza-modal-buttons .gazza-modal-btn {


        width: 100%;


    }


    .gazza-toast {


        top: 80px !important;


        right: 15px !important;


        padding: 6px 10px !important;


        max-width: 180px !important;


    }


    .gazza-toast-icon {


        width: 14px !important;


        height: 14px !important;


        min-width: 14px !important;


        min-height: 14px !important;


        font-size: 9px !important;


    }


    .gazza-toast-message {


        font-size: 11px !important;


        max-width: 140px !important;


    }


}


@media (max-width: 480px) {


    .gazza-modal-container {


        padding: 30px 20px;


    }


    .gazza-modal-icon svg {


        width: 50px;


        height: 50px;


    }


    .gazza-modal-title {


        font-size: 20px;


    }


    .gazza-modal-message {


        font-size: 14px;


    }


}
