@font-face{font-family:MesloLGS NF;src:url("/fonts/MesloLGS NF Regular.ttf")format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:MesloLGS NF;src:url("/fonts/MesloLGS NF Bold.ttf")format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:MesloLGS NF;src:url("/fonts/MesloLGS NF Italic.ttf")format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:MesloLGS NF;src:url("/fonts/MesloLGS NF Bold Italic.ttf")format("truetype");font-weight:700;font-style:italic;font-display:swap}*{box-sizing:border-box;margin:0;padding:0}html,body{color:#c8c8c8;touch-action:pan-x pan-y;background-color:#1a1a1a;min-height:100vh;font-family:MesloLGS NF,Courier New,monospace;font-size:14px;line-height:1.6}.c-sky{color:#8ce4ff}.c-yel{color:#feee91}.c-ora{color:#ffa239}.c-red{color:#ff5656}.c-dim{color:#555}.npub-copy{font:inherit;color:#555;cursor:pointer;background:0 0;border:none;margin:0;padding:0;transition:color .15s}.npub-copy:hover{color:#8ce4ff}.npub-copied{color:#22c55e}.verified-badge{color:#000;vertical-align:middle;background-color:#22c55e;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:15px;height:15px;font-size:9px;font-weight:700;display:inline-flex;position:relative;top:-1px}.last-login{margin-bottom:0;font-size:.88em}.terminal-page{cursor:text;min-height:100vh;padding:4px 6px 40px}.banner{white-space:pre;text-align:left;margin-bottom:12px;font-family:MesloLGS NF,Courier New,monospace;font-size:17px;line-height:1.35;display:block;overflow-x:auto}.banner-row{display:contents}.app-version{letter-spacing:.05em;margin-top:-6px;margin-bottom:14px;padding-left:4ch;font-size:.78em}.term-meta{margin-bottom:20px;padding-left:4ch;font-size:.93em;line-height:2}.meta-top{align-items:center;gap:20px;display:flex}.hint{margin-top:2px;font-size:.82em}.qr-link{opacity:.65;flex-shrink:0;width:60px;height:60px;transition:opacity .2s;display:block}.qr-link:hover{opacity:1}.qr-link svg{width:100%;height:100%}.term-body{flex-direction:column;gap:16px;padding-left:0;display:flex}.term-block{flex-direction:column;gap:4px;display:flex}.prompt-line{align-items:baseline;gap:6px;font-size:.93em;display:flex}.cmd-echo{color:#e0e0e0}.input-wrap{flex:1;align-items:baseline;min-width:0;display:flex}.term-input{color:#e0e0e0;caret-color:#0000;background:0 0;border:none;outline:none;flex:none;min-width:0;padding:0;font-family:inherit;font-size:1em}.block-cursor{pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1;animation:1.1s step-start infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.output{color:#a8a8a8;padding-left:2ch;font-size:.9em;line-height:1.7}.out-text{max-width:680px;line-height:1.8}.help-grid{grid-template-columns:max-content 1fr;gap:2px 16px;margin-top:4px;display:grid}.ls-row{flex-wrap:wrap;gap:24px;display:flex}.list-item{margin-bottom:3px}.address-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.address-label{flex-shrink:0;width:50px;font-size:.88em}.long-address{color:#999;background-color:#111;border:1px solid #2a2a2a;border-radius:2px;flex:1;padding:4px 10px;font-size:.84em}.copy-btn{cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;padding:0 6px;font-size:.9em;line-height:1;transition:opacity .2s;display:inline-flex}.copy-btn:hover{opacity:1}.mobile-wip{justify-content:center;align-items:center;min-height:100dvh;padding:32px 24px;font-family:MesloLGS NF,Cascadia Code,Fira Code,monospace;display:flex}.mobile-wip-inner{text-align:center}.mobile-wip-title{color:#feee91;letter-spacing:.08em;margin-bottom:12px;font-size:1.4em}.mobile-wip-sub{font-size:.9em;line-height:1.6}.pf{width:100%;font-size:.85em}.pf-header{position:relative}.pf-banner-wrap{width:100%;height:130px;overflow:hidden}.pf-banner{object-fit:cover;width:100%;height:100%;display:block}.pf-banner-placeholder{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);width:100%;height:100%}.pf-avatar-wrap{background-color:#1a1a1a;border:3px solid #111;border-radius:50%;width:80px;height:80px;position:absolute;bottom:-40px;left:16px;overflow:hidden}.pf-avatar{object-fit:cover;width:100%;height:100%;display:block}.pf-avatar-placeholder{color:#999;background-color:#222;justify-content:center;align-items:center;width:100%;height:100%;font-size:1.4em;display:flex}.pf-fields{padding:0 10px 10px}.pf-spacer{height:48px}.pf-row{align-items:center;gap:8px;margin-bottom:5px;display:flex}.pf-label{text-align:right;flex-shrink:0;width:88px;font-size:.88em}.pf-input{color:#c8c8c8;background-color:#0d0d0d;border:1px solid #2a2a2a;border-radius:2px;outline:none;flex:1;min-width:0;padding:3px 8px;font-family:MesloLGS NF,Courier New,monospace;font-size:1em;transition:border-color .15s}.pf-input:focus{border-color:#8ce4ff}.pf-input:disabled{opacity:.45}.pf-actions{border-top:1px solid #222;flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;padding-top:10px;display:flex}.pf-btn{color:#8ce4ff;cursor:pointer;background:0 0;border:1px solid #8ce4ff;flex-shrink:0;padding:4px 14px;font-family:MesloLGS NF,Courier New,monospace;font-size:.9em;transition:background-color .15s,color .15s}.pf-btn:hover:not(:disabled){color:#111;background-color:#8ce4ff}.pf-btn:disabled{opacity:.5;cursor:not-allowed}.pf-btn-done,.pf-btn-done:disabled{color:#22c55e;opacity:1;border-color:#22c55e}.pf-btn-cancel{color:#777;border-color:#444}.pf-btn-cancel:hover:not(:disabled){color:#c8c8c8;background-color:#444}.pf-btn-error,.pf-btn-error:disabled{color:#ff5656;opacity:1;border-color:#ff5656}.pf-btn-error:hover:not(:disabled){color:#111;background-color:#ff5656}dialog{background:0 0;border:none;max-width:none;max-height:none;margin:0;padding:0}.gwin{background-color:#111;border:1px solid #2a2a2a;border-top:2px solid #8ce4ff;flex-direction:column;min-width:160px;display:flex;position:fixed;overflow:visible;box-shadow:0 16px 48px #000000bf}.gwin-bar{cursor:move;-webkit-user-select:none;user-select:none;touch-action:none;background-color:#0d0d0d;border-bottom:1px solid #222;justify-content:space-between;align-items:center;padding:6px 10px;display:flex}.gwin-title{color:#8ce4ff;letter-spacing:.06em;font-size:.82em}.gwin-close{cursor:pointer;color:#444;background:0 0;border:none;padding:0 2px;font-family:inherit;font-size:1.2em;line-height:1;transition:color .15s}.gwin-close:hover{color:#ff5656}.gwin-body{padding:8px}.dm-win{flex-direction:column;width:320px;height:380px;font-size:.85em;display:flex}.dm-unsupported{padding:16px 4px;font-size:.88em;line-height:1.6}.dm-messages{flex-direction:column;flex:1;gap:4px;min-height:0;padding:4px 0;display:flex;overflow-y:auto}.dm-empty{text-align:center;margin-top:16px;font-size:.82em}.dm-msg{align-items:baseline;gap:8px;line-height:1.5;display:flex}.dm-msg-mine{flex-direction:row-reverse}.dm-time{flex-shrink:0;font-size:.76em}.dm-text{color:#c8c8c8;word-break:break-word;max-width:220px}.dm-msg-mine .dm-text{color:#8ce4ff}.dm-error{padding:4px 0;font-size:.8em}.dm-compose{border-top:1px solid #222;flex-shrink:0;gap:6px;margin-top:4px;padding-top:8px;display:flex}.dm-input{color:#c8c8c8;background-color:#0d0d0d;border:1px solid #2a2a2a;border-radius:2px;outline:none;flex:1;min-width:0;padding:3px 8px;font-family:MesloLGS NF,Courier New,monospace;font-size:1em;transition:border-color .15s}.dm-input:focus{border-color:#8ce4ff}.dm-input::placeholder{color:#333}.dm-send{color:#8ce4ff;cursor:pointer;background:0 0;border:1px solid #2a2a2a;flex-shrink:0;padding:3px 10px;font-family:MesloLGS NF,Courier New,monospace;font-size:1em;transition:background-color .15s,border-color .15s}.dm-send:hover:not(:disabled){color:#111;background-color:#8ce4ff;border-color:#8ce4ff}.dm-send:disabled{opacity:.35;cursor:not-allowed}.dm-hub{flex-direction:column;width:300px;height:280px;font-size:.85em;display:flex}.dm-hub-empty{text-align:center;flex:1;padding-top:20px;font-size:.82em}.dm-hub-list{flex-direction:column;flex:1;min-height:0;padding-bottom:4px;display:flex;overflow-y:auto}.dm-hub-item{border-bottom:1px solid #1a1a1a;align-items:center;gap:4px;width:100%;display:flex}.dm-hub-item-open-btn{cursor:pointer;text-align:left;color:#c8c8c8;background:0 0;border:none;flex:1;grid-template-columns:1fr;gap:0;min-width:0;padding:6px 4px;font-family:MesloLGS NF,Courier New,monospace;font-size:1em;transition:background-color .1s;display:grid}.dm-hub-item-open-btn:hover{background-color:#1a1a1a}.dm-hub-id-btn{cursor:pointer;opacity:.4;background:0 0;border:none;flex-shrink:0;padding:0 6px;font-size:1em}.dm-hub-id-btn:hover{opacity:1;color:#8ce4ff}.dm-hub-npub{text-overflow:ellipsis;white-space:nowrap;font-size:.9em;display:block;overflow:hidden}.dm-hub-badge{color:#8ce4ff;flex-shrink:0;padding-right:4px;font-size:.65em}.dm-hub-preview{text-overflow:ellipsis;white-space:nowrap;grid-area:2/1/auto/-1;font-size:.78em;display:block;overflow:hidden}.dm-hub-item-open .dm-hub-npub{color:#8ce4ff}.dm-hub-new{border-top:1px solid #222;flex-shrink:0;gap:6px;margin-top:4px;padding-top:8px;display:flex}.pf-overlay{z-index:500;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pf-overlay-backdrop{cursor:default;background:0 0;border:none;margin:0;padding:0;position:absolute;inset:0}.pf-modal{background-color:#111;border:1px solid #2a2a2a;border-top:2px solid #8ce4ff;flex-direction:column;width:680px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);display:flex;position:relative;box-shadow:0 24px 72px #000000e6}.pf-modal-bar{background-color:#0d0d0d;border-bottom:1px solid #222;flex-shrink:0;justify-content:space-between;align-items:center;padding:6px 10px;display:flex}.pf-modal-title{color:#8ce4ff;letter-spacing:.06em;font-size:.82em}.pf-modal-body{flex:1;min-height:0;overflow-y:auto}.pwa-banner{background-color:#222;border:1px solid #333;border-left:3px solid #8ce4ff;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;animation:.3s ease-out welcome-in;display:flex}.pwa-banner-icon{width:36px;height:36px;image-rendering:pixelated;flex-shrink:0}.pwa-banner-body{flex:1;min-width:0}.pwa-banner-title{margin-bottom:2px;font-size:.88em;font-weight:700}.pwa-banner-steps{font-size:.78em;line-height:1.4}.pwa-banner-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.pwa-banner-btn{cursor:pointer;background:0 0;border:none;padding:4px 6px;font-family:MesloLGS NF,Courier New,monospace;font-size:.82em}.ptr-indicator{z-index:9000;letter-spacing:.04em;pointer-events:none;white-space:nowrap;background-color:#1e1e1e;border:1px solid #333;border-radius:999px;padding:4px 12px;font-family:MesloLGS NF,Courier New,monospace;font-size:.82em;position:fixed;top:-28px;left:50%}.welcome-overlay{z-index:9999;cursor:pointer;background-color:#1a1a1a;flex-direction:column;justify-content:center;align-items:center;gap:18px;animation:.25s ease-out welcome-in;display:flex;position:fixed;inset:0}.welcome-fade{animation:.5s ease-in forwards welcome-out}.welcome-icon{width:96px;height:96px;image-rendering:pixelated}.welcome-title{letter-spacing:.08em;font-family:MesloLGS NF,Courier New,monospace;font-size:1.6em}.welcome-sub{font-family:MesloLGS NF,Courier New,monospace;font-size:.9em}.welcome-version{letter-spacing:.06em;margin-top:4px;font-family:MesloLGS NF,Courier New,monospace;font-size:.75em}@keyframes welcome-in{0%{opacity:0}to{opacity:1}}@keyframes welcome-out{0%{opacity:1}to{opacity:0}}.id-popover{z-index:9999;background:#111;border:1px solid #333;border-radius:4px;min-width:260px;max-width:320px;padding:8px 10px;font-family:inherit;font-size:.82em;position:fixed;box-shadow:0 4px 16px #0009}.id-popover-bar{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.id-popover-title{letter-spacing:.06em;text-transform:uppercase;font-size:.75em}.id-popover-close{color:#555;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:1em;line-height:1}.id-popover-close:hover{color:#ccc}.id-popover-id{background:#1a1a1a;border-radius:3px;align-items:center;gap:8px;margin-bottom:8px;padding:4px 6px;display:flex}.id-popover-hex{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.02em;flex:1;font-size:.72em;overflow:hidden}.id-popover-copy{color:#8ce4ff;cursor:pointer;background:0 0;border:1px solid #333;border-radius:3px;flex-shrink:0;padding:2px 6px;font-family:inherit;font-size:.75em}.id-popover-copy:hover{border-color:#8ce4ff}.id-popover-form{border:1px solid #333;border-radius:3px;gap:0;display:flex;overflow:hidden}.id-popover-input{color:inherit;background:0 0;border:none;outline:none;flex:1;padding:5px 8px;font-family:inherit;font-size:.82em}.id-popover-save{color:#feee91;cursor:pointer;background:0 0;border:none;border-left:1px solid #333;flex-shrink:0;padding:0 10px;font-family:inherit;font-size:.78em}.id-popover-save:disabled{opacity:.3;cursor:default}.id-popover-save:not(:disabled):hover{color:#fff}.gc-list-grid{grid-template-columns:auto 1fr;gap:2px 12px;font-size:.85em;display:grid}.gc-list-id{cursor:pointer;font-size:.78em}.gc-list-id:hover{color:#8ce4ff}.chan-win{flex-direction:column;width:340px;height:320px;display:flex;overflow:hidden}.chan-warning{border-bottom:1px solid #222;flex-shrink:0;padding:4px 10px;font-size:.72em}.chan-id{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.02em;border-bottom:1px solid #222;flex-shrink:0;padding:3px 10px;font-size:.68em;overflow:hidden}.chan-id:hover{color:#8ce4ff}.dark-mode .chan-id{border-bottom-color:#333}.chan-messages{flex-direction:column;flex:1;gap:4px;padding:8px 10px;display:flex;overflow-y:auto}.chan-empty{text-align:center;margin-top:16px;font-size:.82em}.chan-msg{grid-template-columns:auto auto 1fr;align-items:baseline;gap:6px;font-size:.82em;line-height:1.5;display:grid}.chan-msg-mine .chan-sender{color:#8ce4ff}.chan-sender{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:90px;font-size:.78em;overflow:hidden}.chan-sender-click{cursor:pointer}.chan-sender-click:hover{color:#8ce4ff}.chan-time{white-space:nowrap;font-size:.72em}.chan-text{word-break:break-word}.chan-unsupported{padding:16px 12px;font-size:.82em}.chan-error{flex-shrink:0;padding:4px 10px;font-size:.78em}.chan-compose{border-top:1px solid #222;flex-shrink:0;gap:0;display:flex}.chan-input{color:inherit;background:0 0;border:none;outline:none;flex:1;padding:7px 10px;font-family:inherit;font-size:.82em}.chan-send{cursor:pointer;color:#8ce4ff;background:0 0;border:none;border-left:1px solid #222;padding:0 12px;font-size:1em;transition:opacity .15s}.chan-send:disabled{opacity:.3;cursor:default}.dark-mode .chan-compose{border-top-color:#333}.dark-mode .chan-warning{border-bottom-color:#333}.dark-mode .chan-send{border-left-color:#333}
