.skill-gain-stack {
    position: fixed;
    top: 18px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10000;
    width: min(440px, calc(100vw - 32px));
    max-height: 45vh;
    overflow-y: auto;
    pointer-events: none;
}
.skill-gain-celebration {
    background: #29251c;
    color: #fff5d6;
    border: 2px solid #d1a33a;
    border-radius: 8px;
    box-shadow: 0 5px 24px #0009;
    padding: 16px 20px;
    margin-bottom: 10px;
    text-align: center;
    pointer-events: auto;
    animation: skill-gain-arrive .25s ease-out;
}
.skill-gain-celebration strong { color: #ffda75; font-size: 1.3rem; }
.skill-gain-celebration p { margin: 8px 0 12px; font-size: 1.1rem; font-weight: bold; }
.skill-gain-celebration button { background: #d1a33a; color: #17140c; border: 1px solid #ffda75; border-radius: 4px; padding: 5px 16px; cursor: pointer; }
.skill-gain-celebration button:focus-visible { outline: 3px solid white; outline-offset: 3px; }
@keyframes skill-gain-arrive { from { opacity: 0; translate: 0 -10px; } to { opacity: 1; translate: 0 0; } }
@media (prefers-reduced-motion: reduce) { .skill-gain-celebration { animation: none; } }
