.achievement-intro{max-width:800px;color:#bcb5cc;line-height:1.6;margin-bottom:24px}
.achievement-intro small{display:block;margin-top:8px;color:#a79cb9}
.achievement-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.achievement-card{display:flex;align-items:center;gap:15px;padding:12px 18px;border:1px solid #40364f;border-radius:14px;background:linear-gradient(145deg,#251e36,#191528);min-width:0}
.achievement-sort{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:16px 0;color:#bcb5cc}.achievement-sort select{padding:10px;background:#251e36;color:#f5f1fa;border:1px solid #665870;border-radius:8px;max-width:100%}
.achievement-popularity{color:#bcb5cc;font-size:12px;margin-top:6px}#achievementRatesStatus{color:#bcb5cc;font-size:12px}
.achievement-card.earned{border-color:#99a543;background:linear-gradient(145deg,#303422,#1d1c2b)}
.achievement-emblem{display:grid;place-items:center;flex-shrink:0;width:42px;height:48px;border:1px solid #665870;color:#a59bad;border-radius:12px;font-size:27px}
.earned .achievement-emblem{color:#ddff45;border-color:#bdd34a;background:#d5ff4510}
.achievement-content{min-width:0;flex:1}.achievement-content>small{font-size:10px;letter-spacing:1.6px;color:#aaa0ba}.earned .achievement-content>small{color:#d5ff45}
.achievement-content h3{font-size:17px;line-height:1.3;margin:9px 0;color:#f5f1fa;overflow-wrap:anywhere}
.achievement-content p{font-size:13px;line-height:1.55;color:#bcb5cc;margin:0 0 12px}
.achievement-content progress{display:block;width:100%;height:6px;border:0;border-radius:4px;overflow:hidden;background:#100d19;accent-color:#d5ff45}
.achievement-content progress::-webkit-progress-bar{background:#100d19}.achievement-content progress::-webkit-progress-value{background:#d5ff45}.achievement-content progress::-moz-progress-bar{background:#d5ff45}
.achievement-progress{font-size:11px;color:#c1bacd;margin-top:9px;line-height:1.5}.achievement-content details{margin-top:12px}.achievement-content summary{cursor:pointer;font-size:11px;color:#b7adc5}.achievement-content details p{margin-top:9px;font-size:12px}
.achievement-notice{position:fixed;right:24px;bottom:24px;z-index:15000;max-width:min(420px,calc(100vw - 32px));padding:20px;border:1px solid #d5ff45;border-radius:14px;background:#241d36;box-shadow:0 12px 40px #0008;animation:achievement-arrive .25s ease-out}
.achievement-notice[hidden]{display:none}.achievement-notice strong,.achievement-notice span{display:block}.achievement-notice .achievement-reward-message{margin-bottom:9px;color:#eee8f6;font-size:14px;font-weight:400;line-height:1.5}.achievement-notice .achievement-reward-title,.achievement-notice .achievement-reward-amount{display:block}.achievement-notice .achievement-unlocked-name{margin-bottom:7px;color:#d5ff45;font-size:18px;font-weight:900;line-height:1.35}.achievement-notice .achievement-unlocked-description{color:#eee8f6;font-size:14px;font-weight:400;line-height:1.5}.achievement-notice button{margin-top:12px;padding:8px 12px;font-size:12px}.achievement-notice .achievement-dismiss{margin-left:8px;background:transparent;color:#cbc2d9;border:0;cursor:pointer}
@keyframes achievement-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:600px){.achievement-card{padding:12px;gap:10px}.achievement-notice{right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){.achievement-notice{animation:none}}
.achievement-card .achievement-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,auto);column-gap:24px}
.achievement-content>small{grid-column:1;grid-row:1}
.achievement-content>h3{grid-column:1;grid-row:2;margin:5px 0}
.achievement-content>p{grid-column:1;grid-row:3;margin-bottom:8px}
.achievement-content>progress{grid-column:1/-1;grid-row:4}
.achievement-content>.achievement-popularity{grid-column:2;grid-row:2/4;text-align:right;align-self:start;margin-top:5px;font-size:11px;max-width:320px}
.achievement-content>.achievement-progress{grid-column:1/-1;grid-row:5}
.earned .achievement-content>.achievement-progress{grid-column:2;grid-row:1;text-align:right;margin-top:0}
@media(max-width:650px){.achievement-card .achievement-content{grid-template-columns:minmax(0,1fr)}.achievement-content>.achievement-popularity{grid-column:1;grid-row:5;text-align:right;max-width:none;margin-top:8px}.achievement-content>.achievement-progress,.earned .achievement-content>.achievement-progress{grid-column:1;grid-row:6;text-align:right;margin-top:5px}}
