:root{--bg: #0b0b10;--surface: #15151c;--surface-2: #1d1d26;--line: #2a2a35;--text: #f4f4f7;--muted: #9a9aab;--faint: #6b6b7a;--accent: #ff9532;--accent-ink: #2a1503;--accent-soft: rgba(255, 149, 50, .14);--green: #3ddc97;--red: #ff6b6b;--red-soft: rgba(255, 107, 107, .13);--radius: 18px;--safe-top: env(safe-area-inset-top, 0px);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);overscroll-behavior:none}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input,textarea{font:inherit;font-size:16px;color:var(--text)}.screen{min-height:100%;padding:calc(var(--safe-top) + 16px) 20px 24px}.top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.top h1{margin:0;font-size:28px;font-weight:700;letter-spacing:-.02em}.icon-btn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2)}.icon-btn svg{width:20px;height:20px}.search{display:flex;align-items:center;gap:10px;height:44px;padding:0 14px;border-radius:14px;background:var(--surface);border:1px solid var(--line);margin-bottom:18px}.search svg{width:18px;height:18px;color:var(--faint);flex:none}.search input{flex:1;min-width:0;background:none;border:0;outline:none}.search input::placeholder{color:var(--faint)}.banner{display:flex;gap:10px;align-items:center;padding:10px 14px;border-radius:14px;background:var(--red-soft);color:var(--red);font-size:14px;margin-bottom:14px}.banner[hidden]{display:none}.banner svg{flex:none;width:20px;height:20px}.empty{text-align:center;padding:48px 12px 24px}.empty .art{width:72px;height:72px;margin:0 auto 18px;border-radius:24px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.empty .art svg{width:34px;height:34px}.empty h2{margin:0 0 8px;font-size:20px}.empty p{margin:0 auto 22px;max-width:300px;color:var(--muted);font-size:15px;line-height:1.45}.lock{display:inline-flex;align-items:center;gap:6px;color:var(--faint);font-size:13px;margin-top:18px}.lock svg{width:14px;height:14px}.big-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:50px;padding:0 22px;border-radius:var(--radius);font-size:16px;font-weight:600;background:var(--accent);color:var(--accent-ink)}.big-btn:disabled{opacity:.45;cursor:default}.hint{color:var(--muted);font-size:14px;line-height:1.45}.sheet-bg{position:fixed;inset:0;background:#0000008c;display:flex;align-items:flex-end;justify-content:center;z-index:30}.sheet{width:100%;max-width:480px;background:var(--surface);border-radius:22px 22px 0 0;border-top:1px solid var(--line);padding:18px 20px 28px}.sheet .head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.sheet .head h3{margin:0;font-size:18px}.sheet .search{margin-bottom:12px}.me{color:var(--muted);font-size:14px;margin-top:2px}.big-btn.full{display:flex;width:100%}.big-btn.secondary{background:var(--surface-2);color:var(--text)}.onboard{display:flex;flex-direction:column;padding-top:calc(var(--safe-top) + 40px)}.onboard .art{width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);margin-bottom:18px}.onboard .art svg{width:30px;height:30px}.onboard h1{margin:0 0 8px;font-size:26px;letter-spacing:-.02em}.lead{margin:0 0 20px;color:var(--muted);font-size:15px;line-height:1.45}.field{display:flex;align-items:center;gap:4px;height:54px;padding:0 16px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}.field:focus-within{border-color:var(--accent)}.field .at{color:var(--muted);font-size:18px;font-weight:600}.field input{flex:1;min-width:0;background:none;border:0;outline:none;font-size:18px}.status{min-height:20px;margin:10px 2px 18px;font-size:14px;color:var(--muted)}.status.ok{color:var(--green)}.status.ko{color:var(--red)}.secret{padding:16px;border-radius:16px;background:var(--surface);border:1px solid var(--line);margin-bottom:12px;font:600 16px/1.6 ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.04em;user-select:all;-webkit-user-select:all}.secret span{display:inline-block;white-space:nowrap}.check{display:flex;gap:12px;align-items:flex-start;margin:20px 2px 0;color:var(--muted);font-size:14px;line-height:1.45}.check input{width:20px;height:20px;flex:none;margin:1px 0 0;accent-color:var(--accent)}.top-actions{display:flex;gap:10px}.big-btn svg{width:20px;height:20px}.big-btn.danger{background:var(--red);color:#2b0606}.sub-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.sub-head h2{margin:0;font-size:18px}.spacer{width:40px}.profile{display:flex;align-items:center;gap:14px;margin-bottom:18px}.avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.avatar svg{width:26px;height:26px}.profile .name{font-size:20px;font-weight:700}.profile .hint{font-size:13px}.notice{padding:12px 14px;border-radius:14px;background:var(--accent-soft);color:var(--accent);font-size:14px;line-height:1.45;margin-bottom:16px}.notice[hidden]{display:none}.section{margin:8px 2px 10px;font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.row{display:flex;align-items:center;gap:12px;padding:14px}.row+.row{border-top:1px solid var(--line)}.row.muted{color:var(--muted);font-size:14px}.row .ico{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);color:var(--muted)}.row .ico svg{width:19px;height:19px}.row .grow{flex:1;min-width:0}.row .title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .sub{color:var(--muted);font-size:13px;margin-top:2px}.pill{flex:none;height:32px;padding:0 14px;border-radius:99px;font-size:14px;font-weight:600;background:var(--surface-2)}.pill.danger{background:var(--red-soft);color:var(--red)}.hint.small{font-size:13px;margin:14px 2px 6px}.text-btn{display:block;margin:14px auto 0;padding:8px 12px;color:var(--accent);font-size:15px;font-weight:600}.text-btn.danger{color:var(--red)}.scanner{position:relative;aspect-ratio:1;border-radius:var(--radius);overflow:hidden;background:#000;margin-bottom:14px}.scanner video{width:100%;height:100%;object-fit:cover;display:block}.scanner .frame{position:absolute;inset:16%;border:3px solid rgba(255,255,255,.85);border-radius:18px}.cam-msg{position:absolute;left:0;right:0;bottom:12px;margin:0;text-align:center;color:#fff;font-size:14px;padding:0 16px}.paste summary{color:var(--accent);font-weight:600;font-size:15px;cursor:pointer;padding:6px 2px}.paste textarea,.secret-in{width:100%;margin:10px 0;padding:12px 14px;border-radius:14px;background:var(--surface);border:1px solid var(--line);outline:none;resize:none;font:600 15px/1.5 ui-monospace,SF Mono,Menlo,monospace;color:var(--text)}.secret-in:focus,.paste textarea:focus{border-color:var(--accent)}.center{text-align:center;padding:10px 0 18px}.center h2{margin:0 0 8px;font-size:22px}.center .lead{margin-bottom:10px}.art.big{width:72px;height:72px;margin:0 auto 16px;border-radius:24px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.art.big svg{width:34px;height:34px}.code{text-align:center;font:700 34px/1.2 ui-monospace,SF Mono,Menlo,monospace;letter-spacing:.08em;margin:6px 0 14px}.center-text{text-align:center;margin-bottom:0}.qr{width:220px;margin:4px auto 14px;padding:10px;border-radius:16px;background:#fff}.qr svg{display:block;width:100%;height:auto}.choice{display:flex;gap:14px;align-items:flex-start;width:100%;text-align:left;padding:16px;margin-bottom:12px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.choice .ico{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.choice .ico svg{width:20px;height:20px}.choice b{display:block;font-size:16px;margin-bottom:4px}.choice small{display:block;color:var(--muted);font-size:14px;line-height:1.4}.toast{position:fixed;left:50%;bottom:20px;transform:translate(-50%,20px);opacity:0;transition:opacity .2s,transform .2s;z-index:50;padding:10px 16px;border-radius:99px;background:var(--surface-2);border:1px solid var(--line);font-size:14px;font-weight:600;pointer-events:none;white-space:nowrap}.toast.on{opacity:1;transform:translate(-50%)}.convs .conv{width:100%;text-align:left}.avatar.sm{width:44px;height:44px;flex:none;font-weight:700;font-size:18px}.conv .line{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.conv .title{flex:1;min-width:0}.conv .sub{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv .time{flex:none;color:var(--faint);font-size:12px}.badge{flex:none;min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:var(--accent);color:var(--accent-ink);font-size:12px;line-height:20px;text-align:center}.badge[hidden]{display:none}.thread{display:flex;flex-direction:column;height:100vh;height:100dvh}.thread-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:calc(var(--safe-top) + 10px) 14px 10px;border-bottom:1px solid var(--line);background:var(--bg)}.thread-head .who{flex:1;min-width:0;text-align:center}.thread-head .title{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-head .sub{color:var(--muted);font-size:12px;margin-top:2px}.msgs{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:14px 12px 8px;display:flex;flex-direction:column;gap:4px}.day{align-self:center;margin:10px 0 6px;padding:3px 10px;border-radius:99px;background:var(--surface);color:var(--muted);font-size:12px}.note{align-self:center;max-width:280px;margin:18px 0;text-align:center;color:var(--faint);font-size:13px;line-height:1.45}.bubble{max-width:80%;padding:8px 12px 6px;border-radius:18px;line-height:1.4;word-wrap:break-word;overflow-wrap:anywhere}.bubble.theirs{align-self:flex-start;background:var(--surface-2);border-bottom-left-radius:6px}.bubble.mine{align-self:flex-end;background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:6px}.bubble.sending{opacity:.7}.bubble.failed{background:var(--red-soft);color:var(--text)}.bubble .text{white-space:pre-wrap;font-size:16px}.bubble a{color:inherit;text-decoration:underline}.bubble .meta{font-size:11px;text-align:right;margin-top:2px;color:var(--muted)}.bubble.mine .meta{color:#2a15039e}.bubble .retry{display:block;margin-top:4px;color:var(--red);font-size:13px;font-weight:600}.composer{flex:none;display:flex;align-items:flex-end;gap:8px;padding:8px 10px calc(var(--safe-bottom, 0px) + 8px);border-top:1px solid var(--line);background:var(--bg)}.composer textarea{flex:1;min-height:40px;max-height:140px;padding:9px 14px;border-radius:20px;background:var(--surface);border:1px solid var(--line);outline:none;resize:none;font-size:16px;line-height:1.35}.composer textarea:focus{border-color:var(--accent)}.send{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink)}.send svg{width:20px;height:20px}.bubble .st{margin-left:2px;letter-spacing:-.12em}.bubble .st.read{color:#0a3fc4;font-weight:800}.requests-link{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px;margin-bottom:12px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.requests-link .ico{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.requests-link .ico svg{width:20px;height:20px}.requests-link .grow{flex:1;min-width:0}.requests-link b{display:block}.requests-link small{display:block;color:var(--muted);font-size:13px;margin-top:2px}.request-bar{flex:none;padding:12px 14px;background:var(--surface);border-bottom:1px solid var(--line)}.request-bar[hidden]{display:none}.request-bar p{margin:0 0 10px;color:var(--muted);font-size:14px;line-height:1.4}.request-bar .actions{display:flex;gap:10px;justify-content:flex-end}.pill.accent{background:var(--accent);color:var(--accent-ink)}.danger-text{color:var(--red)!important}.reasons{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}.radio{display:flex;gap:12px;align-items:center;padding:10px 2px;font-size:15px}.radio input{width:18px;height:18px;accent-color:var(--accent);margin:0}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px}.toggle-row .grow{flex:1}.toggle-row small{display:block;color:var(--muted);font-size:13px;margin-top:2px;line-height:1.4}.switch{position:relative;flex:none;width:50px;height:30px}.switch input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}.switch span{position:absolute;inset:0;border-radius:99px;background:var(--surface-2);border:1px solid var(--line);transition:background .15s;pointer-events:none}.switch span:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .15s}.switch input:checked+span{background:var(--green)}.switch input:checked+span:after{transform:translate(20px)}.bubble.mine:not(.deleted){cursor:pointer}.bubble.deleted{background:transparent!important;border:1px dashed var(--line);color:var(--faint)!important}.bubble.deleted .text{font-style:italic;font-size:14px}.bubble.deleted .meta,.bubble.deleted .meta .st{color:var(--faint)}.quote{padding:10px 12px;border-radius:12px;background:var(--surface-2);white-space:pre-wrap;word-break:break-word}.attach{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:var(--muted)}.attach svg{width:22px;height:22px}.composer[hidden],.recorder[hidden]{display:none}.recorder{flex:none;display:flex;align-items:center;gap:10px;padding:8px 12px calc(var(--safe-bottom, 0px) + 8px);border-top:1px solid var(--line);background:var(--bg)}.recorder .grow{flex:1;color:var(--muted);font-size:14px}.rec-dot{width:10px;height:10px;border-radius:50%;background:var(--red);animation:blink 1s infinite}@keyframes blink{50%{opacity:.3}}.big-btn svg+*{margin-left:2px}.bubble .media{margin:-2px -6px 2px}.media.image{width:240px;max-width:100%;min-height:80px;border-radius:12px;overflow:hidden;background:#00000026}.media.image img{display:block;width:100%;height:100%;object-fit:cover;cursor:zoom-in}.media.voice{display:flex;align-items:center;gap:8px;min-width:220px;min-height:40px}.media.voice audio{width:240px;max-width:100%;height:40px}.media.file{display:flex;align-items:center;gap:10px;min-width:220px;padding:4px 2px}.media.file .grow{flex:1;min-width:0}.media.file .fname{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media.file small{opacity:.7}.vo-ico{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:#0000001f}.vo-ico svg{width:18px;height:18px}.media.locked{font-style:italic;opacity:.75;padding:6px 4px;min-height:0;aspect-ratio:auto!important}.viewer{position:fixed;inset:0;z-index:60;background:#000000f0;display:grid;place-items:center}.viewer img{max-width:100%;max-height:100%;object-fit:contain}.viewer-bar{position:absolute;top:calc(var(--safe-top) + 10px);left:12px;right:12px;display:flex;justify-content:space-between}.bubble{cursor:pointer}.bubble.deleted{cursor:default}.quoted{order:-1;margin:0 -4px 6px;padding:6px 10px;border-left:3px solid currentColor;border-radius:8px;background:#0000001f;font-size:13px;line-height:1.35}.bubble{display:flex;flex-direction:column}.quoted b{display:block;font-size:12px}.quoted span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;opacity:.85}.bubble.flash{animation:flash 1.2s ease}@keyframes flash{30%{box-shadow:0 0 0 3px var(--accent)}}.reply-bar{flex:none;display:flex;align-items:center;gap:10px;padding:8px 10px 0 14px;background:var(--bg);border-top:1px solid var(--line)}.reply-bar[hidden]{display:none}.reply-bar .grow{flex:1;min-width:0;border-left:3px solid var(--accent);padding-left:10px}.reply-bar b{display:block;font-size:13px;color:var(--accent)}.reply-bar span{display:block;font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-bar+.composer{border-top:0}.key-bar{flex:none;display:flex;flex-direction:column;gap:10px;padding:12px 14px;background:var(--amber-soft, rgba(245, 185, 66, .14));border-bottom:1px solid var(--line)}.key-bar[hidden]{display:none}.key-bar p{margin:0;color:var(--amber, #f5b942);font-size:14px;line-height:1.4}.key-bar button{align-self:flex-end}.attach.btc{color:var(--accent)}.bubble.pay{padding:10px 12px 6px;min-width:210px}.bubble.pay.theirs{background:var(--surface);border:1px solid var(--accent)}.pay-card{display:flex;flex-direction:column;gap:4px;white-space:normal}.pay-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;opacity:.85}.pay-label svg{width:16px;height:16px;flex:none}.pay-amount{font-size:26px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.pay-memo{font-size:15px}.pay-memo[hidden]{display:none}.pay-foot{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-top:4px;font-size:14px;font-weight:600}.pay-foot .pill{height:36px}.pay-tx{font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;opacity:.75;text-decoration:underline dotted}.pay-check{font-size:13px;color:var(--muted);font-weight:500}.pay-check.ok{color:var(--green);font-weight:600}.pay-check.again{cursor:pointer;text-decoration:underline}.sats-in{display:flex;align-items:baseline;justify-content:center;gap:8px;margin:6px 0 14px}.sats-in input{width:100%;max-width:260px;text-align:center;font-size:40px;font-weight:700;background:none;border:0;outline:none;font-variant-numeric:tabular-nums}.sats-in span{color:var(--muted);font-size:18px}.memo-in{width:100%;height:46px;padding:0 14px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line);outline:none}.memo-in:focus{border-color:var(--accent)}.sats-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sats-actions .big-btn:disabled{opacity:.4}
