:root{
  --bg: #0a0a0a;
  --panel: #141414;
  --line: rgba(179,179,179,1.00);
  --text: #f2f2f2;
  --muted: #a3a3a3;
  --border: 1px solid var(--line);
}
*{ box-sizing:border-box; }
html,body{ margin:0; min-height:100vh; background:var(--bg); }
body{ color:var(--text); font-family:-apple-system,Segoe UI,Roboto,sans-serif; display:flex; align-items:center; justify-content:center; padding:24px; position:relative; }
.bg-fixed{ position:fixed; inset:0; z-index:-1; background:#0a0a0a; }
.shell{ width:min(92vw,420px); background:rgba(10,10,10,.88); border:var(--border); border-radius:22px; padding:20px; }
.profile{ position:relative; background:var(--panel); border:var(--border); border-radius:18px; padding:24px 18px; text-align:center; }
.menu-trigger{ position:absolute; top:10px; right:10px; width:32px; height:32px; border-radius:50%; border:var(--border); background:rgba(255,255,255,.04); color:var(--text); display:grid; place-items:center; text-decoration:none; font-weight:900; letter-spacing:1px; font-size:.8rem; }
.profile img{ width:96px; height:96px; border-radius:50%; object-fit:cover; border:var(--border); }
.profile h1{ font-size:1.3rem; margin:14px 0 4px; }
.verified-badge{ display:flex; align-items:center; justify-content:center; gap:6px; color:var(--muted); font-size:.8rem; margin-bottom:10px; }
.verified-badge svg{ width:16px; height:16px; }
.bio{ color:var(--muted); font-size:.92rem; margin:0 0 16px; }
.lang-toggle{ position:absolute; top:10px; left:10px; margin:0; background:rgba(255,255,255,.04); border:var(--border); color:var(--text); border-radius:50%; width:32px; height:32px; padding:0; font-size:.7rem; font-weight:700; cursor:pointer; display:grid; place-items:center; }
.quick-actions{ display:flex; justify-content:center; gap:10px; margin-top:6px; }
.quick-btn{ width:54px; height:54px; border-radius:14px; border:var(--border); background:rgba(255,255,255,.04); display:grid; place-items:center; color:var(--line); font-size:1.4rem; font-weight:900; text-decoration:none; }
.links{ margin-top:16px; display:flex; flex-direction:column; gap:12px; }
.link-btn{ display:flex; align-items:center; gap:12px; border:var(--border); border-radius:14px; padding:10px 14px; text-decoration:none; color:var(--text); background:var(--panel); }
.link-btn img{ width:34px; height:34px; border-radius:50%; object-fit:cover; }
.link-desc{ color:var(--muted); font-size:.78rem; margin:4px 0 0 46px; }
.banner{ margin-top:16px; overflow:hidden; border:var(--border); border-radius:10px; padding:8px 0; }
.banner-track{ display:inline-flex; white-space:nowrap; animation: ramal-marquee 18s linear infinite; }
.banner-track span{ color:var(--line); font-size:.85rem; }
@keyframes ramal-marquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
.popup{ position:fixed; inset:0; opacity:0; pointer-events:none; transition:opacity .2s; z-index:30; display:flex; align-items:center; justify-content:center; padding:20px; }
.popup:target{ opacity:1; pointer-events:auto; }
.popup .backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.6); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.popup-box{ position:relative; width:min(90vw,360px); background:var(--panel); border:var(--border); border-radius:18px; padding:20px; max-height:78vh; overflow-y:auto; }
.popup-box .close{ position:absolute; top:12px; right:14px; color:var(--muted); text-decoration:none; }
.copy-box{ border:var(--border); border-radius:10px; padding:10px; font-size:.8rem; word-break:break-all; margin-bottom:10px; text-align:center; }
.qr-box{ width:min(100%,180px); margin:0 auto 10px; border:var(--border); border-radius:10px; overflow:hidden; }
.qr-box img, .qr-box svg{ display:block; width:100%; height:auto; }
.wallet-tabs{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:10px; }
.wallet-radio{ position:absolute; opacity:0; width:0; height:0; }
.wallet-tab-btn{ border:var(--border); border-radius:10px; padding:8px; text-align:center; font-size:.8rem; cursor:pointer; }
.wallet-tab-btn.wallet-tab-solo{ grid-column: 1 / -1; cursor:default; }
.wallet-pane{ display:none; }
.wallet-pane-solo{ display:block; }
#btc-ln:checked ~ .wallet-content .pane-btc-ln,
#btc-onchain:checked ~ .wallet-content .pane-btc-onchain{ display:block; }
#nostr-npub:checked ~ .wallet-content .pane-nostr-npub,
#nostr-nprofile:checked ~ .wallet-content .pane-nostr-nprofile{ display:block; }
.menu-actions{ display:flex; flex-direction:column; gap:8px; margin-top:6px; }
.menu-actions a{ border:var(--border); border-radius:10px; padding:10px; text-align:center; text-decoration:none; color:var(--text); }
