.achievement-controls { display:flex; flex-wrap:wrap; align-items:end; gap:1rem; margin:1.5rem 0; }
.achievement-controls label { display:grid; gap:.4rem; }
.achievement-controls select { min-width:10rem; max-width:100%; padding:.55rem; color:var(--text, #f5edda); background:#171612; border:1px solid rgba(203,164,69,.35); font:inherit; }
.achievement-controls button { min-height:2.5rem; }
.achievement-summary { min-width:0; }
.achievement-score { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.5rem 1rem; margin-bottom:.6rem; }
.achievement-score strong, .achievement-earned { color:#cba445; }
.achievement-breakdown { display:flex; flex-wrap:wrap; gap:.5rem 1rem; margin-top:.8rem; font-size:.85rem; }
.achievement-breakdown span { border:1px solid rgba(203,164,69,.25); padding:.3rem .6rem; }
.achievement-note { font-size:.9rem; opacity:.75; margin:.75rem 0 0; }
.achievement-progress { display:flex; align-items:center; gap:.75rem; }
.achievement-progress progress { flex:1; min-width:0; width:100%; height:.6rem; accent-color:#cba445; border:0; background:rgba(245,237,218,.1); }
.achievement-progress progress::-webkit-progress-bar { background:rgba(245,237,218,.1); }
.achievement-progress progress::-webkit-progress-value { background:#cba445; }
.achievement-progress progress::-moz-progress-bar { background:#cba445; }
.achievement-progress span { min-width:3rem; text-align:right; font-size:.85rem; }
.achievement-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr)); gap:1rem; margin-top:1.5rem; }
.achievement-card { min-width:0; padding:1.1rem; background:rgba(12,12,10,.65); border:1px solid rgba(245,237,218,.15); display:flex; flex-direction:column; }
.achievement-card.is-completed { border-color:rgba(203,164,69,.5); background:rgba(203,164,69,.065); }
.achievement-heading { display:flex; align-items:center; gap:.65rem; }
.achievement-heading img, .achievement-emblem { width:2rem; height:2rem; flex:none; object-fit:contain; }
.achievement-emblem { color:#cba445; text-align:center; font-size:1.4rem; }
.achievement-heading h3 { margin:0; font-size:1rem; flex:1; }
.achievement-points { font-size:.8rem; white-space:nowrap; color:#cba445; }
.achievement-card p { font-size:.95rem; margin:.8rem 0; }
.achievement-card .achievement-progress { margin-top:auto; }
.achievement-card.is-unavailable { opacity:.65; }
@media(max-width:480px) { .achievement-controls { gap:.75rem; } .achievement-controls label { flex:1 1 45%; min-width:0; } .achievement-controls select { min-width:0; width:100%; } .achievement-heading { flex-wrap:wrap; } }

/* Full achievement details in a compact adventurer-profile widget. */
.profile-achievements{min-width:0}
.achievement-profile-controls{margin:.8rem 0;gap:.65rem;align-items:end}
.achievement-profile-controls label{font-size:.8rem;gap:.25rem}
.achievement-profile-controls select{min-width:8rem;padding:.35rem .5rem;font-size:.8rem}
.achievement-profile-count{font-size:.78rem;opacity:.8;margin-left:auto}
.achievement-profile-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:.6rem;margin-top:.6rem}
.achievement-profile-card{padding:.7rem .8rem}
.achievement-profile-card .achievement-heading{gap:.45rem;flex-wrap:wrap}
.achievement-profile-card .achievement-heading h5{margin:0;flex:1;min-width:6rem;color:var(--text,#f5edda);font:800 .85rem/1.3 system-ui,sans-serif;letter-spacing:.02em;text-transform:none}
.achievement-profile-card .achievement-heading img,.achievement-profile-card .achievement-emblem{width:1.35rem;height:1.35rem;font-size:1.1rem}
.achievement-profile-card .achievement-points{font-size:.72rem}
.achievement-profile-card p{font-size:.8rem;line-height:1.45;margin:.4rem 0;overflow-wrap:anywhere}
.achievement-profile-card .achievement-progress{gap:.5rem}
.achievement-profile-card .achievement-progress progress{height:.35rem}
.achievement-profile-card .achievement-progress span{font-size:.72rem}
@media(max-width:480px){.achievement-profile-count{margin-left:0;flex-basis:100%}.achievement-profile-controls label{flex:1 1 40%;min-width:0}}
