.achievement-filters{display:flex;gap:18px;flex-wrap:wrap}.achievement-filters label{flex:1;min-width:180px}.achievement-summary{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#e9f0e8;border:1px solid #d0dfd4;border-radius:20px;padding:28px;margin:24px 0 36px}.achievement-summary h3{font-size:24px;margin:8px 0}.achievement-counts{display:flex;gap:30px}.achievement-counts span{display:flex;flex-direction:column;font-size:14px}.achievement-counts strong{font-size:32px}.patch-section{margin-bottom:40px}.patch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.patch-tile{display:flex;flex-direction:column;align-items:center;text-align:center;color:#193d2e;background:transparent;border:1px solid transparent;border-radius:20px;padding:15px 12px 20px;font-weight:400;transition:background .15s,transform .15s}.patch-tile:hover{background:#edf1e8;transform:translateY(-3px)}.patch-tile:focus-visible{outline:3px solid #327798}.patch-tile img{width:min(100%,260px);aspect-ratio:1;object-fit:contain}.patch-tile h3{font:700 24px Georgia,serif;margin:12px 0 8px}.patch-tile span{font-size:15px}.patch-tile small{font-size:13px;margin-top:8px;color:#52685d}.patch-tile b{font-size:13px;margin-top:12px}.patch-locked img,.locked-preview{filter:grayscale(1);opacity:.38}.patch-tile progress{width:70%;height:7px;margin-top:14px;accent-color:#285b49}.achievement-challenges{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.achievement-challenges progress{width:100%;accent-color:#285b49}#achievement-dialog{width:min(640px,94vw);max-height:90vh;padding:24px;border:1px solid #d4dfd5;border-radius:20px;background:#f7f7f0;color:#193d2e;overflow:auto}#achievement-dialog::backdrop{background:#10271ecc}#achievement-share-preview img{display:block;width:100%;max-width:450px;margin:18px auto;border-radius:10px}.card-actions{display:flex;gap:10px;flex-wrap:wrap}.card-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.viewnav{flex-wrap:wrap}@media(max-width:650px){.achievement-summary{align-items:flex-start;flex-direction:column;padding:20px}.achievement-counts{width:100%;justify-content:space-between;gap:12px}.patch-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 4px}.patch-tile{padding:8px 4px 14px}.patch-tile h3{font-size:19px}.patch-tile span{font-size:12px}.patch-tile small{font-size:11px}.viewnav button{font-size:13px;padding:12px 8px}.achievement-filters label{min-width:135px}}
.compact-scope{padding:20px 24px;margin:16px 0 24px}.compact-scope h3{font-size:23px}.compact-scope p{margin:6px 0 0;color:#52685d}.recent-achievements{margin-bottom:28px}.recent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.recent-grid .patch-tile{background:#eef2e9;border-color:#dce5db;padding:12px}.recent-grid .patch-tile img{max-width:112px}.recent-grid .patch-tile h3{font:700 17px Arial;margin:8px 0}.recent-grid .patch-tile small{font-size:11px}.recent-grid .patch-tile span{font-size:13px}.achievement-group{border:1px solid #d7e1d7;border-radius:16px;margin:12px 0;background:#fff;overflow:hidden}.achievement-group>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;cursor:pointer;list-style:none}.achievement-group>summary::-webkit-details-marker{display:none}.group-copy{display:flex;flex-direction:column;gap:7px;flex:1}.group-copy>strong{font-size:20px}.group-copy>span{font-size:14px;color:#4f695c}.group-copy>progress{width:min(100%,420px);height:6px;accent-color:#28614c;margin-top:3px}.group-toggle{font-size:25px;color:#315c49;transition:transform .15s}.achievement-group[open] .group-toggle{transform:rotate(45deg)}.achievement-group>summary:focus-visible{outline:3px solid #78b2c9;outline-offset:-4px}.group-body{border-top:1px solid #e3e9e1;padding:20px 24px}.group-scope{font-weight:700;font-size:13px;color:#506b5d;margin-top:0}.group-body .patch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.group-body .patch-tile img{max-width:165px}.group-body .patch-tile h3{font-size:18px}.achievement-empty{color:#5b6f64}.group-body .achievement-challenges{margin-bottom:25px}.group-body .achievement-challenges article{border:1px solid #e1e8df;padding:16px;border-radius:12px}@media(max-width:650px){.recent-grid{gap:6px}.recent-grid .patch-tile{padding:8px 5px}.recent-grid .patch-tile img{max-width:78px}.recent-grid .patch-tile h3{font-size:13px}.recent-grid .patch-tile span,.recent-grid .patch-tile small,.recent-grid .patch-tile b{font-size:10px}.achievement-group>summary{padding:18px 16px}.group-copy>strong{font-size:18px}.group-copy>span{font-size:13px}.group-body{padding:16px 10px}.group-body .patch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-scope{padding:18px}.compact-scope h3{font-size:20px}}

#achievement-reveal{width:min(520px,94vw);max-height:90vh;overflow:auto;box-sizing:border-box;border:1px solid #c8dbd0;border-radius:24px;background:#f7f7f0;color:#193d2e;padding:24px;text-align:center}#achievement-reveal::backdrop{background:#10271ecc}#achievement-reveal .eyebrow{font-size:11px}#achievement-reveal h2{margin:8px 0 18px;font-size:26px}#reveal-badge{display:block;width:200px;height:200px;object-fit:contain;margin:0 auto;animation:badge-arrive .3s ease-out}.reveal-count{font-size:13px;color:#52685d}.reveal-scope{display:flex;flex-direction:column;gap:6px;text-align:left;font-size:12px;font-weight:700}.reveal-scope select{width:100%;box-sizing:border-box}.reveal-next{background:#e5efdf;border-radius:12px;padding:16px;margin:20px 0;font-size:14px}.reveal-next progress{display:block;width:100%;height:7px;accent-color:#285b49;margin-top:12px}.reveal-actions,.reveal-pagination{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}.reveal-pagination button{background:transparent;color:#285b49;border:1px solid #c7d9cb}.reveal-pagination button:disabled{opacity:.35;cursor:default}.reveal-teaser{background:#e9f1e5;padding:20px;border-radius:16px;margin-top:20px}.reveal-teaser h3{margin:8px 0}.reveal-teaser p{color:#52685d}@keyframes badge-arrive{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){#reveal-badge{animation:none}}@media(max-width:520px){#achievement-reveal{padding:18px}#reveal-badge{width:150px;height:150px}#achievement-reveal h2{font-size:23px}.reveal-actions button{width:100%}}
