/* Chama da sequência no topo e folha de detalhes */
.streak-chip{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding:0 10px;border:0;border-radius:22px;background:transparent;color:var(--muted);font:700 15px Manrope,sans-serif;cursor:pointer}.streak-chip.lit{color:var(--text)}.streak-chip:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.streak-sheet{display:grid;gap:16px}.streak-hero{display:grid;justify-items:center;gap:2px;color:var(--muted)}.streak-hero strong{font:700 48px/1.1 Manrope,sans-serif;color:var(--text)}.streak-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.streak-stats div,.streak-shields{background:var(--bg);border-radius:14px;padding:12px}.streak-stats span{display:block;font-size:12px;color:var(--muted)}.streak-stats strong{font:700 18px Manrope,sans-serif}.streak-stats strong.ok{color:var(--lime);font:600 15px 'DM Sans',sans-serif}
.streak-shields div{display:flex;align-items:center;justify-content:space-between}.streak-shields span{display:inline-flex;gap:6px}.streak-shields p{margin:8px 0 0;font-size:13px;color:var(--muted)}.streak-shields .streak-used{color:var(--blue)}
.streak-label{margin:0;font-size:13px;color:var(--muted)}.streak-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.streak-grid span{aspect-ratio:1;border-radius:8px;background:var(--panel2)}.streak-grid .active{background:var(--lime)}.streak-grid .protected{background:var(--blue)}
/* Revelação de conquista */
dialog.achievement-reveal{width:100%;max-width:none;height:100%;max-height:none;margin:0;border:0;padding:28px;background:rgba(var(--bg-rgb),0.95);color:var(--text);display:grid;place-content:center;justify-items:center;gap:14px;text-align:center}dialog.achievement-reveal::backdrop{background:#000c}
.reveal-tag{margin:0;font:700 11px 'DM Sans',sans-serif;letter-spacing:1.8px;color:var(--medal)}.reveal-medal{position:relative;width:150px;height:150px;border-radius:50%;display:grid;place-items:center;border:3px solid var(--medal);background:color-mix(in srgb,var(--medal) 14%,transparent);box-shadow:0 0 40px color-mix(in srgb,var(--medal) 50%,transparent);margin:30px 0 10px}.reveal-medal span{width:110px;height:110px;border-radius:50%;display:grid;place-items:center;background:var(--panel);font-size:48px;color:var(--medal)}
.reveal-medal i{position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:4px;background:var(--medal);opacity:0}.reveal-actions{display:grid;gap:8px;width:min(420px,100%)}dialog.achievement-reveal h2{margin:0;font:700 26px Manrope,sans-serif}dialog.achievement-reveal p{margin:0;color:var(--muted)}.reveal-meta{font-size:12px}.reveal-actions .ghost{background:none;border:0;color:var(--muted);min-height:44px}
@media(prefers-reduced-motion:no-preference){.streak-chip.pop svg{animation:streak-pop .5s cubic-bezier(.3,1.6,.5,1)}.reveal-medal{animation:medal-in .7s cubic-bezier(.3,1.5,.5,1) both}.reveal-medal i{animation:particle .9s cubic-bezier(.2,.8,.2,1) .18s both;--a:calc(var(--i) * 30deg)}dialog.achievement-reveal h2,dialog.achievement-reveal p,.reveal-actions{animation:reveal-fade .4s ease .3s both}.streak-grid span{animation:reveal-fade .3s ease both}}
@keyframes streak-pop{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}@keyframes medal-in{from{transform:scale(.3) rotate(-30deg);opacity:0}to{transform:none;opacity:1}}@keyframes particle{0%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(0)}100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-130px) scale(.6)}}@keyframes reveal-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
