.achievement-hero,
.achievement-controls,
.achievement-showcase-toolbar,
.achievement-category,
.achievement-groups,
.garden-glimmer-form {
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}

.achievement-hero {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 28px;
  align-items: center;
  padding: 30px 32px;
  margin-top: 24px;
  border: 1px solid var(--border);
  border-radius: 26px;
  background:
    radial-gradient(circle at 88% 18%, rgba(188,148,255,.15), transparent 27%),
    linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
  box-shadow: 0 20px 54px rgba(0,0,0,.14);
}
.achievement-hero h1 { margin: 4px 0 9px; max-width: 780px; }
.achievement-hero p:not(.eyebrow) { max-width: 780px; color: var(--muted); line-height: 1.65; }

.achievement-count-orb {
  width: 138px;
  height: 138px;
  display: grid;
  place-items: center;
  align-content: center;
  border-radius: 50%;
  border: 1px solid rgba(205,177,119,.45);
  background:
    radial-gradient(circle at 34% 26%, rgba(255,236,185,.18), transparent 20%),
    radial-gradient(circle, rgba(77,92,65,.34), rgba(23,22,31,.28) 72%);
  box-shadow: inset 0 0 32px rgba(0,0,0,.18), 0 15px 34px rgba(0,0,0,.16);
  text-align: center;
}
.achievement-count-orb strong { font-size: 2.15rem; line-height: 1; }
.achievement-count-orb span,
.achievement-count-orb small { color: var(--muted); }
.achievement-count-orb span { margin-top: 4px; font-weight: 800; }
.achievement-count-orb small { margin-top: 3px; font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; }

.achievement-controls {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 16px;
  margin-top: 18px;
}
.achievement-settings-card {
  padding: 22px;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: var(--panel);
}
.achievement-settings-card h2,
.achievement-showcase-toolbar h2,
.achievement-category-head h2 { margin: 3px 0 7px; }
.achievement-settings-card > p,
.achievement-settings-card div > p:not(.eyebrow) { color: var(--muted); line-height: 1.55; }

.achievement-field,
.achievement-toggle { display: flex; gap: 12px; margin: 16px 0; }
.achievement-field { flex-direction: column; }
.achievement-field span,
.achievement-toggle strong { font-weight: 800; }
.achievement-field select { width: 100%; }
.achievement-toggle {
  align-items: center;
  justify-content: space-between;
  padding: 13px 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.achievement-toggle span { display: grid; gap: 3px; }
.achievement-toggle small { color: var(--muted); font-weight: 500; }

.rarity-key { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 16px; }
.rarity-pill {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 8px;
  border: 1px solid var(--border);
  border-radius: 999px;
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .035em;
  white-space: nowrap;
  background: rgba(255,255,255,.04);
}
.rarity-common { --badge-metal:#b89358; --badge-glow:rgba(196,154,91,.14); }
.rarity-uncommon { --badge-metal:#8eae7b; --badge-glow:rgba(117,163,109,.15); border-color:rgba(130,205,162,.36); }
.rarity-rare { --badge-metal:#85a8c8; --badge-glow:rgba(104,160,215,.17); border-color:rgba(110,165,255,.42); }
.rarity-epic { --badge-metal:#b18ad2; --badge-glow:rgba(176,113,223,.18); border-color:rgba(193,129,255,.46); }
.rarity-legendary { --badge-metal:#ddb14e; --badge-glow:rgba(235,187,70,.24); border-color:rgba(246,201,102,.55); }
.rarity-secret { --badge-metal:#a78f9c; --badge-glow:rgba(170,115,157,.16); border-color:rgba(218,190,208,.28); border-style:dashed; }

.achievement-showcase-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 22px;
  align-items: end;
  margin-top: 28px;
  padding: 0 2px 15px;
  border-bottom: 1px solid var(--border);
}
.achievement-showcase-toolbar p:not(.eyebrow) { color: var(--muted); }
.showcase-save { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.showcase-save span { color:var(--muted); font-size:.82rem; font-weight:800; }

.achievement-groups { padding-bottom: 42px; }
.achievement-category {
  --category-accent:rgba(124,154,112,.2);
  position: relative;
  overflow: hidden;
  margin-top: 22px;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 24px;
  background:
    radial-gradient(circle at 2% 0%, var(--category-accent), transparent 24%),
    linear-gradient(145deg, rgba(255,255,255,.028), rgba(255,255,255,.01));
}
.achievement-category::after {
  content:"";
  position:absolute;
  inset:auto -50px -70px auto;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle, var(--category-accent), transparent 68%);
  opacity:.55;
  pointer-events:none;
}
.category-writer { --category-accent:rgba(179,104,128,.16); }
.category-reader { --category-accent:rgba(90,143,112,.16); }
.category-library { --category-accent:rgba(108,151,116,.15); }
.category-community { --category-accent:rgba(126,96,163,.17); }
.category-special { --category-accent:rgba(166,100,135,.16); }
.category-secret {
  --category-accent:rgba(92,100,166,.18);
  background:
    radial-gradient(circle at 2% 0%, rgba(76,87,148,.2), transparent 25%),
    linear-gradient(145deg, rgba(24,31,51,.64), rgba(18,20,32,.26));
}
.category-legacy { --category-accent:rgba(206,165,75,.17); }

.achievement-category-head {
  position:relative;
  z-index:1;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}
.achievement-category-head > span { color:var(--muted); font-size:.78rem; font-weight:800; }

.achievement-grid {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:11px;
}
.achievement-card {
  --badge-metal:#b89358;
  --badge-glow:rgba(196,154,91,.14);
  position:relative;
  min-width:0;
  min-height:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:12px 12px 11px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(18,18,26,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  text-align:center;
  transition:transform .18s ease,border-color .18s ease,opacity .18s ease,background .18s ease;
}
[data-theme="paper"] .achievement-card { background:rgba(255,255,255,.70); }
.achievement-card.is-unlocked {
  border-color:color-mix(in srgb, var(--badge-metal) 34%, transparent);
  background:
    radial-gradient(circle at 50% 4%, var(--badge-glow), transparent 31%),
    rgba(18,18,26,.38);
}
[data-theme="paper"] .achievement-card.is-unlocked {
  background:radial-gradient(circle at 50% 4%, var(--badge-glow), transparent 34%),rgba(255,255,255,.78);
}
.achievement-card.is-unlocked:hover { transform:translateY(-2px); }
.achievement-card.is-locked { opacity:.72; }

.achievement-badge {
  position:relative;
  width:88px;
  height:88px;
  flex:0 0 88px;
  display:grid;
  place-items:center;
  margin:1px auto 9px;
  border-radius:50%;
  border:3px solid var(--badge-metal);
  outline:1px solid color-mix(in srgb, var(--badge-metal) 72%, white 28%);
  outline-offset:2px;
  background:
    radial-gradient(circle at 35% 24%, rgba(255,255,255,.12), transparent 17%),
    radial-gradient(circle at 50% 58%, #344d3b 0 40%, #18241c 72%);
  box-shadow:
    inset 0 0 0 2px rgba(60,39,23,.58),
    inset 0 0 24px rgba(0,0,0,.42),
    0 0 20px var(--badge-glow),
    0 8px 18px rgba(0,0,0,.22);
}
.badge-category-community { background:radial-gradient(circle at 35% 24%,rgba(255,255,255,.1),transparent 17%),radial-gradient(circle,#463552,#211a2c 72%); }
.badge-category-secret { background:radial-gradient(circle at 35% 24%,rgba(125,139,222,.16),transparent 18%),radial-gradient(circle,#28345a,#11182d 73%); }
.badge-category-legacy { background:radial-gradient(circle at 35% 24%,rgba(255,221,127,.12),transparent 17%),radial-gradient(circle,#49304f,#1c1522 73%); }

.achievement-art {
  width:66px;
  height:66px;
  overflow:visible;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.32));
}
.badge-leaf {
  position:absolute;
  z-index:-1;
  bottom:-5px;
  width:18px;
  height:10px;
  border:1px solid color-mix(in srgb,var(--badge-metal) 82%,transparent);
  border-radius:100% 0 100% 0;
  background:linear-gradient(145deg,color-mix(in srgb,var(--badge-metal) 42%,#527254 58%),rgba(54,78,55,.34));
}
.badge-leaf-left { left:4px; transform:rotate(-38deg); }
.badge-leaf-right { right:4px; transform:scaleX(-1) rotate(-38deg); }

.is-locked .achievement-badge {
  filter:grayscale(.65) saturate(.55);
  opacity:.58;
}
.is-locked .achievement-art { opacity:.78; }

.achievement-card-copy {
  width:100%;
  min-width:0;
  display:flex;
  flex:1;
  flex-direction:column;
  align-items:center;
}
.achievement-card-title {
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
}
.achievement-card-title h3 {
  margin:0;
  font-size:.93rem;
  line-height:1.25;
}
.achievement-card-copy > p {
  min-height:2.5em;
  margin:7px 0 8px;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.4;
}

.achievement-earned-line,
.achievement-feature-choice,
.achievement-secret-lock {
  width:100%;
  display:flex;
  align-items:center;
  gap:7px;
  font-size:.74rem;
}
.achievement-earned-line {
  justify-content:space-between;
  margin-top:auto;
  color:var(--muted);
}
.achievement-earned-line > span { font-weight:800; }
.achievement-feature-choice {
  width:max-content;
  max-width:100%;
  align-self:center;
  justify-content:center;
  gap:7px;
  margin:8px auto 0;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  color:var(--muted);
  cursor:pointer;
  line-height:1.2;
}
.achievement-feature-choice:hover {
  border-color:color-mix(in srgb,var(--badge-metal) 34%,rgba(255,255,255,.08));
  background:var(--badge-glow);
}
.achievement-feature-choice input {
  width:14px;
  height:14px;
  flex:0 0 14px;
  margin:0;
}
.achievement-feature-choice span {
  white-space:nowrap;
  font-weight:800;
}
.achievement-progress { width:100%; margin-top:auto; }
.achievement-progress > div {
  height:6px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.07);
}
.achievement-progress i {
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,color-mix(in srgb,var(--badge-metal) 72%,#7351c8 28%),var(--badge-metal));
}
.achievement-progress small {
  display:block;
  margin-top:6px;
  color:var(--muted);
  text-align:right;
  font-size:.7rem;
}
.achievement-secret-lock {
  justify-content:center;
  margin-top:auto;
  color:var(--muted);
}
.achievement-secret-lock span {
  width:21px;
  height:21px;
  display:grid;
  place-items:center;
  border:1px dashed var(--border);
  border-radius:50%;
}

.profile-achievement-garden { margin-top:18px; }
.profile-achievement-garden .profile-achievement-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.profile-achievement-row {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:9px;
}
.profile-achievement-mini {
  --badge-metal:#b89358;
  min-height:134px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:7px;
  padding:12px 8px;
  border:1px solid var(--border);
  border-radius:17px;
  background:radial-gradient(circle at 50% 10%,var(--badge-glow,rgba(196,154,91,.12)),transparent 32%),var(--panel);
  text-align:center;
}
.profile-achievement-medallion {
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:2px solid var(--badge-metal);
  outline:1px solid color-mix(in srgb,var(--badge-metal) 68%,white 32%);
  outline-offset:2px;
  background:radial-gradient(circle,#344d3b,#18241c 72%);
  box-shadow:inset 0 0 14px rgba(0,0,0,.36),0 6px 14px rgba(0,0,0,.18);
}
.profile-achievement-medallion.badge-category-community { background:radial-gradient(circle,#463552,#211a2c 72%); }
.profile-achievement-medallion.badge-category-secret { background:radial-gradient(circle,#28345a,#11182d 72%); }
.profile-achievement-medallion.badge-category-legacy { background:radial-gradient(circle,#49304f,#1c1522 72%); }
.profile-achievement-art { width:49px; height:49px; filter:drop-shadow(0 2px 2px rgba(0,0,0,.28)); }
.profile-achievement-mini strong { font-size:.75rem; line-height:1.2; }
.profile-achievement-mini small { color:var(--muted); font-size:.64rem; }

.achievement-toast-stack {
  position:fixed;
  right:18px;
  bottom:92px;
  z-index:190;
  display:grid;
  gap:10px;
  width:min(360px,calc(100vw - 36px));
}
.achievement-toast {
  display:grid;
  grid-template-columns:46px 1fr auto;
  gap:11px;
  align-items:center;
  padding:12px 13px;
  border:1px solid rgba(182,146,255,.38);
  border-radius:17px;
  background:var(--panel);
  box-shadow:0 18px 42px rgba(0,0,0,.24);
}
.achievement-toast-medallion {
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:2px solid #b89358;
  background:radial-gradient(circle,#344d3b,#18241c 72%);
}
.achievement-toast-medallion svg { width:32px; height:32px; }
.achievement-toast p { margin:0 0 2px; font-size:.7rem; color:var(--muted); text-transform:uppercase; letter-spacing:.08em; font-weight:900; }
.achievement-toast strong { font-size:.88rem; }
.achievement-toast a { color:var(--muted); font-size:.76rem; font-weight:800; }

.garden-glimmer-form { margin-top:-24px; margin-bottom:32px; text-align:right; }
.garden-glimmer {
  appearance:none;
  border:0;
  background:transparent;
  color:rgba(190,174,235,.34);
  font-size:1rem;
  cursor:pointer;
  padding:10px;
  transition:color .2s ease,transform .2s ease;
}
.garden-glimmer:hover,
.garden-glimmer:focus-visible { color:rgba(216,198,255,.9); transform:rotate(14deg) scale(1.16); }

@media (max-width:1100px) {
  .achievement-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:880px) {
  .achievement-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .profile-achievement-row { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:700px) {
  .achievement-hero { grid-template-columns:1fr; padding:23px 18px; border-radius:21px; }
  .achievement-count-orb { width:108px; height:108px; justify-self:start; }
  .achievement-count-orb strong { font-size:1.75rem; }
  .achievement-controls { grid-template-columns:1fr; }
  .achievement-showcase-toolbar,
  .achievement-category-head { align-items:flex-start; flex-direction:column; }
  .showcase-save { width:100%; justify-content:space-between; }
  .achievement-category { padding:15px; }
  .achievement-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .achievement-toast-stack { bottom:82px; }
}
@media (max-width:460px) {
  .achievement-grid { grid-template-columns:1fr; }
  .achievement-card {
    display:grid;
    grid-template-columns:82px minmax(0,1fr);
    align-items:start;
    gap:12px;
    text-align:left;
  }
  .achievement-badge { width:74px; height:74px; flex-basis:74px; margin:2px 0 0; }
  .achievement-art { width:56px; height:56px; }
  .achievement-card-copy,
  .achievement-card-title { align-items:flex-start; }
  .achievement-card-copy > p { min-height:0; }
  .achievement-earned-line,
  .achievement-feature-choice,
  .achievement-secret-lock,
  .achievement-progress { grid-column:2; }
  .achievement-feature-choice { justify-content:flex-start; }
  .profile-achievement-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

[data-theme="paper"] .achievement-settings-card,
[data-theme="paper"] .profile-achievement-mini,
[data-theme="paper"] .achievement-toast {
  box-shadow:0 9px 24px rgba(50,40,70,.07);
}
