.achievement-notice-host{position:fixed;z-index:2147483000;top:calc(env(safe-area-inset-top,0px) + 18px);left:50%;transform:translateX(-50%);width:min(430px,calc(100vw - 24px));pointer-events:none}
.achievement-notice{position:relative;display:flex;align-items:center;gap:13px;padding:14px 36px 14px 14px;box-sizing:border-box;min-height:96px;color:#eff8ff;background:linear-gradient(115deg,#1a3d50,#091a2d 72%);border:1px solid #c59c35;border-top:2px solid #ffe482;border-radius:18px;box-shadow:0 12px 40px #0009,0 0 24px #ffd94b22;overflow:hidden;font-family:'Arial',sans-serif;animation:achievement-arrive .45s cubic-bezier(.2,.8,.2,1) both}
.achievement-notice::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;transform-origin:left;background:linear-gradient(90deg,#ffe98e,#e8ad20);animation:achievement-time 6s linear forwards}
.achievement-notice>img{display:block;flex:none;width:64px;height:64px;filter:drop-shadow(0 0 10px #ffdf6b33)}
.achievement-notice-text{min-width:0;display:flex;flex-direction:column;gap:4px;text-align:left}
.achievement-notice-label{color:#ffe27a;font-size:10px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;line-height:1.4}
.achievement-notice-text>strong{font-size:18px;font-weight:900;font-style:italic;line-height:1.2;overflow-wrap:anywhere}
.achievement-notice-description{font-size:12px;color:#c3d7e7;line-height:1.4;overflow-wrap:anywhere}
.achievement-notice .achievement-notice-close{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:30px;height:30px;padding:0;background:transparent;border:0;border-radius:9px;color:#bcd0dd;font:24px/1 Arial,sans-serif;cursor:pointer;pointer-events:auto;min-width:0;min-height:0;box-shadow:none}
.achievement-notice-close:focus-visible{outline:2px solid #ffe27a;outline-offset:-2px}
.achievement-notice.is-leaving{animation:achievement-leave .25s ease-in both}
.achievement-notice.is-paused::after{animation-play-state:paused}
@keyframes achievement-arrive{from{opacity:0;transform:translateY(-24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes achievement-leave{to{opacity:0;transform:translateY(-16px) scale(.97)}}
@keyframes achievement-time{to{transform:scaleX(0)}}
@media(max-width:480px){.achievement-notice-host{top:calc(env(safe-area-inset-top,0px) + 10px)}.achievement-notice{gap:9px;padding:12px 31px 12px 10px;border-radius:14px}.achievement-notice>img{width:54px;height:54px}.achievement-notice-text>strong{font-size:16px}.achievement-notice-label{font-size:9px;letter-spacing:1px}.achievement-notice-description{font-size:11px}}
@media(prefers-reduced-motion:reduce){.achievement-notice,.achievement-notice.is-leaving{animation:none}.achievement-notice::after{animation:none}}
