.badge-detail-modal{position:fixed;inset:0;z-index:1500;display:flex;align-items:center;justify-content:center;padding:var(--space-lg)}.badge-detail-modal__backdrop{position:absolute;inset:0;background:rgba(5,5,7,.88);backdrop-filter:blur(var(--blur-heavy));-webkit-backdrop-filter:blur(var(--blur-heavy))}.badge-detail-modal__content{position:relative;width:min(480px,100%);max-height:90vh;background:var(--surface-obsidian);border:1px solid var(--border-default);border-radius:var(--radius-2xl);box-shadow:0 32px 64px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.03),inset 0 1px 0 rgba(255,255,255,.04);padding:var(--space-xl);overflow-y:auto;animation:badge-modal-enter .3s var(--ease-out-expo)}@keyframes badge-modal-enter{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.badge-detail-modal__content--rps,.badge-detail-modal__content--winker{--badge-glow-color:var(--gem-amethyst-glow);--badge-accent:var(--gem-amethyst);--badge-accent-dim:var(--gem-amethyst-dim)}.badge-detail-modal__content--lucky{--badge-glow-color:var(--gem-topaz-glow);--badge-accent:var(--gem-topaz);--badge-accent-dim:var(--gem-topaz-dim)}.badge-detail-modal__content--sniper{--badge-glow-color:var(--gem-ruby-glow);--badge-accent:var(--gem-ruby);--badge-accent-dim:var(--gem-ruby-dim)}.badge-detail-modal__content--mastermind{--badge-glow-color:var(--gem-sapphire-glow);--badge-accent:var(--gem-sapphire);--badge-accent-dim:var(--gem-sapphire-dim)}.badge-detail-modal__content--blackjack{--badge-glow-color:var(--gem-emerald-glow);--badge-accent:var(--gem-emerald);--badge-accent-dim:var(--gem-emerald-dim)}.badge-detail-modal__content--diceroll{--badge-glow-color:var(--gem-opal-glow);--badge-accent:var(--gem-opal);--badge-accent-dim:var(--gem-opal-dim)}.badge-detail-modal__content--slotmachine{--badge-glow-color:var(--gem-citrine-glow);--badge-accent:var(--gem-citrine);--badge-accent-dim:var(--gem-citrine-dim)}.badge-detail-modal__content--higherorlower{--badge-glow-color:var(--gem-aquamarine-glow);--badge-accent:var(--gem-aquamarine);--badge-accent-dim:var(--gem-aquamarine-dim)}.badge-detail-modal__content--rabbit{--badge-glow-color:var(--gem-jade-glow);--badge-accent:var(--gem-jade);--badge-accent-dim:var(--gem-jade-dim)}.badge-detail-modal__close{position:absolute;top:var(--space-md);right:var(--space-md);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-subtle);background:var(--surface-onyx);color:var(--text-secondary);font-size:1.25rem;width:2.5rem;height:2.5rem;border-radius:var(--radius-full);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-in-out);z-index:10}.badge-detail-modal__close:hover{background:var(--surface-graphite);border-color:var(--border-default);color:var(--text-primary)}.badge-detail-modal__body{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg)}.badge-detail-modal__image-container{position:relative;width:200px;height:200px;display:flex;align-items:center;justify-content:center}.badge-detail-modal__image-container--locked{filter:grayscale(.8);opacity:.5}.badge-detail-modal__image-container--locked .badge-detail-modal__image-glow{opacity:.2;animation:none}.badge-detail-modal__image-glow{position:absolute;inset:-30px;background:radial-gradient(circle,var(--badge-glow-color,var(--gem-amethyst-glow)) 0,transparent 70%);border-radius:var(--radius-full);animation:badge-glow-pulse 3s ease-in-out infinite}@keyframes badge-glow-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.9;transform:scale(1.08)}}.badge-detail-modal__image{position:relative;z-index:1;width:100%;height:100%;border-radius:var(--radius-xl);object-fit:contain;box-shadow:0 8px 32px rgba(0,0,0,.4)}.badge-detail-modal__info{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-md);text-align:center}.badge-detail-modal__name{margin:0;font-family:var(--font-display);font-size:1.75rem;font-weight:600;color:var(--text-primary);letter-spacing:.01em}.badge-detail-modal__description{margin:0;font-size:.95rem;color:var(--text-secondary);line-height:1.6;max-width:360px}.badge-detail-modal__locked-label{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:var(--surface-onyx);border:1px solid var(--border-subtle);border-radius:var(--radius-full);font-size:.8rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.badge-detail-modal__stats{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-sm);gap:var(--space-sm);width:100%;margin-top:var(--space-xs)}.badge-detail-modal__stat{background:var(--surface-onyx);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-md);display:flex;flex-direction:column;gap:4px;transition:all var(--duration-fast) var(--ease-in-out)}.badge-detail-modal__stat:hover{border-color:var(--border-default);background:var(--surface-graphite)}.badge-detail-modal__stat-label{font-size:.7rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.badge-detail-modal__stat-value{font-family:var(--font-mono);font-size:1.15rem;font-weight:600;color:var(--badge-accent,var(--gem-amethyst))}.badge-detail-modal__contract{width:100%;background:var(--surface-onyx);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.badge-detail-modal__contract-label{font-size:.7rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.badge-detail-modal__contract-row{display:flex;align-items:center;gap:var(--space-sm)}.badge-detail-modal__contract-address{flex:1 1;font-family:var(--font-mono);font-size:.85rem;color:var(--text-secondary);background:none;overflow:hidden;text-overflow:ellipsis}.badge-detail-modal__copy-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-subtle);background:var(--surface-graphite);color:var(--text-secondary);font-family:var(--font-body);font-size:.7rem;font-weight:600;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--duration-fast) var(--ease-in-out);text-transform:uppercase;letter-spacing:.04em}.badge-detail-modal__copy-btn:hover{background:var(--badge-accent-dim,var(--gem-amethyst-dim));border-color:var(--badge-accent,var(--gem-amethyst));color:var(--badge-accent,var(--gem-amethyst))}.badge-detail-modal__copy-btn--copied{background:var(--color-success-dim);border-color:var(--color-success);color:var(--color-success)}.badge-detail-modal__actions{width:100%;display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-xs)}.badge-detail-modal__btn{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);width:100%;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:.95rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all var(--duration-fast) var(--ease-out-expo);border:none}.badge-detail-modal__btn--primary{background:linear-gradient(135deg,var(--badge-accent,var(--gem-amethyst)) 0,color-mix(in srgb,var(--badge-accent,var(--gem-amethyst)) 70%,#000) 100%);color:var(--surface-void);box-shadow:0 4px 20px var(--badge-glow-color,var(--gem-amethyst-glow)),inset 0 1px 0 rgba(255,255,255,.15)}.badge-detail-modal__btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px var(--badge-glow-color,var(--gem-amethyst-glow)),inset 0 1px 0 rgba(255,255,255,.15)}.badge-detail-modal__btn--primary:active{transform:translateY(0)}.badge-detail-modal__btn--secondary{background:var(--surface-onyx);border:1px solid var(--border-subtle);color:var(--text-secondary)}.badge-detail-modal__btn--secondary:hover{background:var(--surface-graphite);border-color:var(--border-default);color:var(--text-primary)}.badge-detail-modal__btn--locked{background:var(--surface-graphite);color:var(--text-tertiary);cursor:not-allowed;opacity:.7}.badge-detail-modal__btn--locked:hover{transform:none;box-shadow:none}.badge-detail-modal__btn-icon{font-size:1.1rem}.badge-detail-modal__requirement{width:100%;padding:var(--space-md);background:var(--surface-onyx);border:1px dashed var(--border-subtle);border-radius:var(--radius-lg);text-align:center}.badge-detail-modal__requirement p{margin:0;font-size:.9rem;color:var(--text-tertiary);line-height:1.5}.badge-detail-modal__requirement strong{color:var(--badge-accent,var(--gem-amethyst));font-weight:600}.badge-detail-modal__content::-webkit-scrollbar{width:6px}.badge-detail-modal__content::-webkit-scrollbar-track{background:var(--surface-void);border-radius:var(--radius-full)}.badge-detail-modal__content::-webkit-scrollbar-thumb{background:var(--surface-slate);border-radius:var(--radius-full)}.badge-detail-modal__content::-webkit-scrollbar-thumb:hover{background:var(--border-default)}@media (max-width:480px){.badge-detail-modal{padding:var(--space-md)}.badge-detail-modal__content{padding:var(--space-lg);border-radius:var(--radius-xl)}.badge-detail-modal__image-container{width:160px;height:160px}.badge-detail-modal__image-glow{inset:-20px}.badge-detail-modal__name{font-size:1.35rem}.badge-detail-modal__description{font-size:.9rem}.badge-detail-modal__stats{gap:var(--space-xs)}.badge-detail-modal__stat{padding:var(--space-sm)}.badge-detail-modal__stat-value{font-size:1rem}.badge-detail-modal__contract-address{font-size:.75rem}.badge-detail-modal__btn{padding:var(--space-sm) var(--space-md);font-size:.9rem}}