.global-game-notifications {
    position: fixed;
    top: 14px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10000;
    display: grid;
    gap: 10px;
    width: min(520px, calc(100vw - 28px));
}

.global-game-notification {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px;
    border: 1px solid rgba(90, 194, 255, .4);
    border-left: 4px solid #5ac2ff;
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(9, 18, 30, .96), rgba(12, 29, 54, .94));
    color: #ebf7ff;
    box-shadow: 0 16px 32px rgba(0, 0, 0, .28), 0 0 0 1px rgba(90, 194, 255, .13), 0 0 18px rgba(62, 142, 255, .12);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    opacity: 0;
    transform: translateY(-22px);
    transition: opacity .22s ease, transform .22s ease, box-shadow .22s ease;
}
.global-game-notification.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.global-game-notification > img {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid rgba(90, 194, 255, .55);
    box-shadow: 0 8px 16px rgba(0, 0, 0, .22);
}

.global-game-notification-copy {
    display: grid;
    gap: 3px;
    min-width: 0;
    flex: 1;
}

.global-game-notification-copy strong {
    color: #8ed2ff;
    font-size: .86rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.global-game-notification-copy span { font-size: .86rem; line-height: 1.35; }
.global-game-notification-actions { display: flex; gap: 8px; margin-top: 6px; }
.global-game-notification-actions button {
    flex: 1;
    min-height: 34px;
    padding: 7px 12px;
    border: 1px solid rgba(90, 194, 255, .5);
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(90, 194, 255, .18), rgba(90, 194, 255, .28));
    color: #ebf7ff;
    cursor: pointer;
    font-weight: 800;
    font-size: .78rem;
    letter-spacing: .02em;
    transition: transform .18s ease, filter .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.global-game-notification-actions button[data-action="accept"] {
    background: linear-gradient(135deg, rgba(56, 209, 149, .18), rgba(56, 209, 149, .28));
    border-color: rgba(56, 209, 149, .5);
    color: #d8fff0;
}
.global-game-notification-actions button[data-action="decline"] {
    border-color: rgba(255, 104, 120, .45);
    background: linear-gradient(135deg, rgba(255, 104, 120, .08), rgba(255, 104, 120, .18));
    color: #ffd5d9;
}
.global-game-notification-actions button:hover {
    filter: brightness(1.12);
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(212, 154, 69, .08);
}
.global-game-notification-actions button:disabled { opacity: .6; cursor: wait; }
.global-game-notification-feedback { min-height: 15px; color: #ffb8c0; font-size: .72rem; }

@keyframes globalGameNotificationIn {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 560px) {
    .global-game-notifications { top: 8px; width: calc(100vw - 16px); }
    .global-game-notification { padding: 10px; }
    .global-game-notification > img { width: 36px; height: 36px; flex-basis: 36px; }
    .global-game-notification-copy span { font-size: .8rem; }
    .global-game-notification-actions { gap: 6px; }
    .global-game-notification-actions button { flex: 1; min-width: 0; font-size: .74rem; }
}
/* Country Western action palette */
button:not(.close-btn), input[type="submit"], input[type="button"], .btn, [class*="-btn"] { background: linear-gradient(135deg, #d49a45, #a9652f) !important; border-color: #f0bd69 !important; color: #211309 !important; }
button:not(.close-btn):hover, input[type="submit"]:hover, input[type="button"]:hover, .btn:hover, [class*="-btn"]:hover { background: linear-gradient(135deg, #f0bd69, #d49a45) !important; color: #211309 !important; box-shadow: 0 6px 16px rgba(212, 154, 69, .28) !important; }
.close-btn, .icon-btn, .btn-icon { background: rgba(212, 154, 69, .12) !important; border-color: rgba(240, 189, 105, .55) !important; color: #f0bd69 !important; }
/* Country Western surface palette */
html, body { background-color: #1b120d; }
header, .header, .admin-sidebar, .sidebar, .admin-shell { background-color: #21150e !important; }
.card, .panel, .modal, .admin-card, .dashboard-card, .sidebar-card, .glass-card, .auth-box, .games-live-lobby, .games-matches-panel, .games-progress-panel, .game-leaderboard-dialog, .game-guide-dialog, .login-card { background-color: #3a2519 !important; border-color: rgba(212, 154, 69, .28) !important; }
/* Country Western admin reference bridge */
:root { --cw-bg: #1b120d; --cw-bg-deep: #120b08; --cw-wood: #2a1a11; --cw-wood-2: #3a2417; --cw-leather: #4a2e1b; --cw-brass: #c98a38; --cw-gold: #f0bd69; --cw-gold-soft: #d9a252; --cw-copper: #a9652f; --cw-red: #a94735; --cw-cream: #fff2d8; --cw-muted: #c4a886; --cw-muted-2: #9d805f; --cw-line: rgba(212,154,69,.26); }
html { background: var(--cw-bg); }
body { color: var(--cw-cream); background-color: var(--cw-bg) !important; }
header, .header, .sidebar, .admin-sidebar, .admin-shell { background: linear-gradient(180deg, var(--cw-wood), var(--cw-bg-deep)) !important; border-color: var(--cw-line) !important; }
.card, .panel, .modal, .admin-card, .dashboard-card, .sidebar-card, .glass-card, .auth-box, .login-card, .games-live-lobby, .games-matches-panel, .games-progress-panel, .game-leaderboard-dialog, .game-guide-dialog { background: linear-gradient(145deg, var(--cw-wood-2), var(--cw-leather)) !important; border-color: var(--cw-line) !important; color: var(--cw-cream); }
h1, h2, h3, h4, h5, h6 { color: var(--cw-cream); }
a { color: var(--cw-gold); }
button:not(.close-btn), input[type="submit"], input[type="button"], .btn, .primary-btn, .login-btn, [class*="-btn"] { background: linear-gradient(135deg, var(--cw-brass), var(--cw-copper)) !important; border-color: var(--cw-gold) !important; color: #211309 !important; }
button:not(.close-btn):hover, input[type="submit"]:hover, input[type="button"]:hover, .btn:hover, .primary-btn:hover, .login-btn:hover, [class*="-btn"]:hover { background: linear-gradient(135deg, var(--cw-gold), var(--cw-brass)) !important; color: #211309 !important; box-shadow: 0 6px 16px rgba(201,138,56,.28) !important; }
input, select, textarea { background: rgba(18,11,8,.72) !important; border-color: var(--cw-line) !important; color: var(--cw-cream) !important; }
input:focus, select:focus, textarea:focus { border-color: var(--cw-gold) !important; outline-color: var(--cw-gold) !important; }
.close-btn, .icon-btn, .btn-icon { background: rgba(201,138,56,.14) !important; border-color: rgba(240,189,105,.55) !important; color: var(--cw-gold) !important; }
.success, .alert-success { border-color: rgba(130,181,122,.42) !important; }
.error, .alert-error, .danger { border-color: rgba(169,71,53,.55) !important; }
/* End Country Western admin reference bridge */