.wallet-dialog-open { overflow: hidden !important; }
.wallet-modal { position: fixed; z-index: 1000; inset: 0; display: grid; place-items: center; padding: 18px; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .25s ease,visibility 0s linear .25s; font-family: Inter,Arial,sans-serif; }
.wallet-modal.is-open { opacity: 1; visibility: visible; pointer-events: auto; transition-delay: 0s; }
.wallet-modal__backdrop { position: absolute; inset: 0; border: 0; background: rgba(2,3,2,.78); backdrop-filter: blur(16px); }
.wallet-dialog { position: relative; width: min(100%,590px); max-height: calc(100dvh - 36px); overflow-y: auto; border: 1px solid rgba(168,255,98,.38); padding: 24px; background: radial-gradient(circle at 85% 6%,rgba(168,255,98,.14),transparent 31%),#0b0e09; color: #ecece1; box-shadow: 0 40px 120px rgba(0,0,0,.7); }
.wallet-dialog::before { content: ''; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size: 34px 34px; mask-image: linear-gradient(#000,transparent 70%); }
.wallet-dialog__top { position: relative; display: flex; justify-content: space-between; align-items: center; }
.wallet-dialog__signal { color: #a8ff62; font: 11px 'DM Mono',monospace; letter-spacing: .11em; }
.wallet-dialog__close { width: 38px; height: 38px; border: 1px solid rgba(255,255,255,.2); background: transparent; color: #ecece1; font-size: 25px; line-height: 1; }
.wallet-dialog h2 { position: relative; white-space: pre-line; margin: 30px 0 13px; font-size: clamp(38px,6vw,62px); line-height: .82; letter-spacing: -.07em; }
.wallet-dialog > p { position: relative; max-width: 470px; margin: 0 0 22px; color: #969c91; font-size: 13px; line-height: 1.55; }
.wallet-provider-list { position: relative; display: grid; gap: 8px; }
.wallet-provider { min-height: 74px; display: grid; grid-template-columns: 46px 1fr auto; align-items: center; gap: 13px; border: 1px solid rgba(255,255,255,.15); padding: 9px 14px; background: #11150e; color: #ecece1; text-align: left; }
.wallet-provider:hover,.wallet-provider:focus-visible { border-color: #a8ff62; background: #171d13; }
.wallet-provider--walletconnect { border-color: rgba(74,141,255,.55); background: linear-gradient(100deg,rgba(74,141,255,.14),rgba(17,21,14,.92)); }
.wallet-provider--walletconnect:hover,.wallet-provider--walletconnect:focus-visible { border-color: #6ea3ff; background: linear-gradient(100deg,rgba(74,141,255,.22),#171d13); }
.wallet-provider--walletconnect > i { border-color: rgba(110,163,255,.7); color: #8cb6ff; }
.wallet-provider--walletconnect strong { color: #8cb6ff; }
.wallet-provider > i { width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid rgba(168,255,98,.35); background: #090b08; color: #a8ff62; font: normal 14px 'DM Mono',monospace; }
.wallet-provider > span { display: flex; flex-direction: column; gap: 7px; }
.wallet-provider b { font-size: 14px; font-weight: 500; }
.wallet-provider small,.wallet-provider strong { color: #7e8579; font: 11px 'DM Mono',monospace; }
.wallet-provider strong { color: #a8ff62; font-weight: 400; }
.wallet-provider-empty { min-height: 150px; display: flex; flex-direction: column; justify-content: center; gap: 10px; border: 1px dashed rgba(255,255,255,.2); padding: 18px; }
.wallet-provider-empty b { font: 12px 'DM Mono',monospace; }
.wallet-provider-empty span { color: #8f968a; font-size: 13px; }
.wallet-install-links { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 8px; }
.wallet-install-links a { border: 1px solid rgba(255,255,255,.16); padding: 9px 11px; color: #a8ff62; font: 11px 'DM Mono',monospace; }
.wallet-dialog__status { min-height: 41px; display: flex; align-items: center; margin: 13px 0 !important; border: 1px solid rgba(255,255,255,.12); padding: 0 13px; color: #a8ff62 !important; font: 11px 'DM Mono',monospace !important; }
.wallet-dialog__status[data-state="error"] { color: #ff8568 !important; }
.wallet-network-card { position: relative; min-height: 68px; display: grid; grid-template-columns: 12px 1fr auto; align-items: center; gap: 13px; border: 1px solid rgba(168,255,98,.25); padding: 12px 14px; background: rgba(168,255,98,.055); }
.wallet-network-card > i { width: 8px; height: 8px; border-radius: 50%; background: #a8ff62; box-shadow: 0 0 15px #a8ff62; }
.wallet-network-card div { display: flex; flex-direction: column; gap: 5px; }
.wallet-network-card b { font-size: 12px; }
.wallet-network-card span,.wallet-network-card strong { color: #8d9588; font: 11px 'DM Mono',monospace; }
.wallet-network-card strong { color: #a8ff62; font-weight: 400; }
.wallet-dialog > small { position: relative; display: block; margin-top: 15px; color: #71776e; font: 11px/1.5 'DM Mono',monospace; }
@media (max-width:600px) { .wallet-dialog { padding: 18px; }.wallet-dialog h2 { font-size: 13vw; }.wallet-provider { grid-template-columns: 44px 1fr; }.wallet-provider > strong { grid-column: 2; }.wallet-network-card { grid-template-columns: 10px 1fr; }.wallet-network-card > strong { grid-column: 2; } }
@media (prefers-reduced-motion:reduce) { .wallet-modal { transition: none; } }
