/*
 * TRset Artificial Intelligence Generation III / Version 5.0
 * TRset Yapay Zeka Tabanli Bilgi Servisi
 * TRset.com Jenerasyon III / Version 5.0
 *
 * 27 03 2026 - Oguzhan YURTSEVER
 * Powered by Bilisim Park (c)
 * Neva CMS + Ouzkahn Script Framework + TRawl
 */
/* N00000239 */
.trset-theme-toast {
    position: fixed;
    z-index: 2000;
    bottom: 1.1rem;
    left: 50%;
    max-width: min(92vw, 480px);
    padding: 0.85rem 1rem;
    border-radius: var(--radius-md);
    border: 2px solid color-mix(in srgb, var(--accent-cyan) 48%, var(--border-soft));
    background: var(--bg-layer);
    color: var(--text-main);
    box-shadow: var(--shadow-cyber);
    font-size: 0.94rem;
    line-height: 1.55;
    font-weight: 500;
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    transform: translateX(-50%) translateY(140%);
    opacity: 0;
    pointer-events: none;
    transition:
        transform 0.42s cubic-bezier(0.22, 1, 0.36, 1),
        opacity 0.35s ease;
}

body.theme-light .trset-theme-toast {
    border-color: color-mix(in srgb, var(--accent-cyan) 58%, #1e4d8c);
    box-shadow:
        var(--shadow-cyber),
        0 0 0 1px color-mix(in srgb, var(--accent-cyan) 22%, transparent);
}

.trset-theme-toast.is-visible {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
    pointer-events: auto;
}

/* N00000200 */
.trset-theme-toast.trset-theme-toast--alert {
    bottom: auto;
    top: 50%;
    left: 50%;
    max-width: min(92vw, 560px);
    padding: 1rem 1.15rem;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 600;
    border: 2px solid #ff0000;
    background: #cc3300;
    color: #ffffff;
    border-radius: 5%;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
    transform: translate(-50%, calc(-50% + 14px));
}

.trset-theme-toast.trset-theme-toast--alert.is-visible {
    transform: translate(-50%, -50%);
}

.trset-theme-toast.trset-theme-toast--alert .trset-theme-toast__close {
    color: #ffffff;
}

.trset-theme-toast.trset-theme-toast--alert .trset-theme-toast__close:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.15);
}

.trset-theme-toast__text {
    flex: 1;
}

.trset-theme-toast__close {
    flex: 0 0 auto;
    border: 0;
    background: transparent;
    color: var(--text-soft);
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
    padding: 0.1rem;
    border-radius: 6px;
}

.trset-theme-toast__close:hover {
    color: var(--text-main);
    background: var(--bg-soft);
}

@media (prefers-reduced-motion: reduce) {
    .trset-theme-toast {
        transition: opacity 0.2s ease;
    }
}

/* N00000236 */
.trset-public-banner-strip {
    margin-top: 25px;
    padding: 0 1rem 0.2rem;
}

@keyframes trset-lang-banner-flow {
    0%,
    100% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
}

@keyframes trset-lang-banner-glow {
    0%,
    100% {
        box-shadow:
            0 2px 10px rgba(229, 57, 53, 0.45),
            0 0 0 1px rgba(255, 200, 190, 0.15);
    }
    50% {
        box-shadow:
            0 6px 28px rgba(255, 90, 70, 0.55),
            0 0 36px rgba(255, 160, 120, 0.42),
            0 0 0 1px rgba(255, 240, 220, 0.35);
    }
}

@keyframes trset-lang-banner-attention {
    0%,
    100% {
        transform: translateY(0) scale(1);
        filter: brightness(1);
    }
    35% {
        transform: translateY(-3px) scale(1.02);
        filter: brightness(1.1);
    }
    70% {
        transform: translateY(0) scale(1);
        filter: brightness(1);
    }
}

.trset-lang-mismatch-banner {
    max-width: var(--content-max);
    margin: 0 auto;
    padding: 0.3rem 0.95rem;
    text-align: center;
    background: linear-gradient(110deg, #e53935, #c62828, #b71c1c, #e53935);
    background-size: 260% 100%;
    color: #fff;
    font-size: 0.78rem;
    line-height: 1.35;
    font-weight: 500;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    box-shadow: 0 3px 14px rgba(229, 57, 53, 0.35);
    animation:
        trset-lang-banner-flow 4.5s ease-in-out infinite,
        trset-lang-banner-glow 2s ease-in-out infinite,
        trset-lang-banner-attention 2.8s ease-in-out infinite;
}

body.trset-motion-calm .trset-lang-mismatch-banner {
    animation: none !important;
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    body:not(.trset-motion-full) .trset-lang-mismatch-banner {
        animation: none !important;
    }
}
