.omnilion-achievements { color:CanvasText; background:Canvas; font:inherit; border-block-start:1px solid color-mix(in srgb,currentColor 18%,transparent); padding-block:1.25rem; container-type:inline-size; }
.omnilion-achievements * { box-sizing:border-box; }
.omnilion-achievements h2,.omnilion-achievements h3,.omnilion-achievements p { margin:0; }
.omnilion-achievements .ach-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:.5rem 1rem; }
.omnilion-achievements h2 { font-size:1.05em; font-weight:650; }
.omnilion-achievements .ach-total { font-size:.875em; font-variant-numeric:tabular-nums; }
.omnilion-achievements .ach-disclaimer { font-size:.8em; line-height:1.5; max-width:70ch; margin-block:.5rem 1rem; }
.omnilion-achievements .ach-categories { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr)); gap:.75rem; }
.omnilion-achievements .ach-category { min-width:0; border:1px solid color-mix(in srgb,currentColor 18%,transparent); border-radius:.875rem; padding:.875rem; background:color-mix(in srgb,var(--ach-dusty-rose,CanvasText) 5%,Canvas); }
.omnilion-achievements .ach-title { display:flex; align-items:center; gap:.5rem; font-size:.9em; }
.omnilion-achievements .ach-title strong { margin-inline-start:auto; white-space:nowrap; font-size:.85em; font-variant-numeric:tabular-nums; }
.omnilion-achievements .ach-symbol { width:2.5rem; height:2.5rem; flex:0 0 auto; }
.omnilion-achievements .ach-unlocked { display:flex; flex-wrap:wrap; gap:.75rem; margin-block:.75rem; min-height:2.5rem; align-items:center; }
.omnilion-achievements .ach-badge { display:inline-flex; align-items:center; gap:.2rem; font-size:.75em; }
.omnilion-achievements .ach-badge .ach-symbol { width:2rem; height:2rem; }
.omnilion-achievements .ach-small { font-size:.75em; }
.omnilion-achievements progress { display:block; width:100%; height:.5rem; accent-color:var(--ach-dusty-rose,CanvasText); }
.omnilion-achievements .ach-scale { list-style:none; display:flex; justify-content:space-between; gap:.5rem; margin:.5rem 0 0; padding:0; font-size:.7em; }
.omnilion-achievements .ach-scale li { border-block-start:2px dotted currentColor; padding-block-start:.25rem; }
.omnilion-achievements .ach-scale [data-unlocked=true] { border-block-start-style:solid; font-weight:700; }
.omnilion-achievements:is([data-brand=approved],[data-brand=provisional]) .ach-symbol[data-level=grey] .ach-orbit { stroke:var(--ach-grey); stroke-width:3; }
.omnilion-achievements:is([data-brand=approved],[data-brand=provisional]) .ach-symbol[data-level=dusty_rose] .ach-orbit { stroke:var(--ach-dusty-rose); stroke-width:3; }
.omnilion-achievements:is([data-brand=approved],[data-brand=provisional]) .ach-symbol[data-level=gold] .ach-orbit { stroke:var(--ach-gold); stroke-width:3; }
.omnilion-achievements details { margin-block-start:1rem; }
.omnilion-achievements summary { cursor:pointer; padding:.5rem 0; min-height:44px; }
.omnilion-achievements form { display:grid; gap:.75rem; max-width:32rem; margin-block:.5rem; }
.omnilion-achievements label { display:grid; gap:.4rem; font-size:.875em; }
.omnilion-achievements input,.omnilion-achievements select,.omnilion-achievements button { min-height:44px; max-width:100%; width:100%; font:inherit; color:CanvasText; background:Canvas; }
.omnilion-achievements button { padding:.65rem 1rem; border:1px solid currentColor; border-radius:.5rem; cursor:pointer; }
.omnilion-achievements button[type=submit] { color:Canvas; background:CanvasText; font-weight:600; }
.omnilion-achievements input,.omnilion-achievements select { border:1px solid color-mix(in srgb,currentColor 50%,Canvas); border-radius:.4rem; padding:.4rem; }
.omnilion-achievements button:disabled { cursor:wait; }
.omnilion-achievements :focus-visible { outline:3px solid CanvasText; outline-offset:3px; }
.omnilion-achievements [role=status] { min-height:1.5em; font-size:.875em; }
.omnilion-achievements .ach-empty { font-size:.875em; padding-block:.5rem; }
@container (max-width:340px) { .omnilion-achievements .ach-title { flex-wrap:wrap; } .omnilion-achievements .ach-title strong { margin-inline-start:3rem; } .omnilion-achievements .ach-scale { font-size:.65em; } }
@media (forced-colors:active) { .omnilion-achievements .ach-orbit { stroke:CanvasText!important; } .omnilion-achievements .ach-category { border:1px solid CanvasText; } }

.omnilion-achievements{--ach-grey:#787D80;--ach-dusty-rose:#B58D95;--ach-gold:#C0A05F;}
