:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#e9f7ef;background-color:#050705;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body{height:100%}body{margin:0;min-width:320px;min-height:100%;background-color:#050705;overflow:hidden;overscroll-behavior:none}#root{min-height:100%;height:100%}button,input,textarea{font-family:inherit}:root{color-scheme:dark;--bg: #050807;--bg-top: #0f1a15;--bg-mid: #0a100d;--text: #e9f7ef;--text-muted: rgba(205, 226, 214, .68);--surface: rgba(255, 255, 255, .03);--surface-strong: rgba(255, 255, 255, .05);--surface-soft: rgba(255, 255, 255, .04);--border: rgba(255, 255, 255, .06);--border-strong: rgba(255, 255, 255, .12);--accent: #20d98a;--accent-strong: #1fc27f;--accent-contrast: #03110a;--secret-accent: #20d98a;--secret-accent-strong: #1fc27f;--secret-accent-contrast: #03110a;--shadow-strong: 0 22px 60px rgba(0, 0, 0, .45);--shadow-soft: 0 10px 24px rgba(0, 0, 0, .35);--glass-blur: 16px;--glass-sat: 120%;--header-bg: var(--surface-strong);--panel-bg: var(--surface);--control-bg: var(--surface-soft);--message-in-bg: var(--surface);--message-out-bg: #1f6a57;--link: #7ce7b6}:root[data-theme=x-black]{--bg: #000000;--bg-top: #000000;--bg-mid: #000000;--text: #e7e9ea;--text-muted: rgba(231, 233, 234, .64);--surface: rgba(22, 24, 28, .92);--surface-strong: rgba(15, 17, 20, .96);--surface-soft: rgba(29, 31, 35, .92);--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .14);--accent: #1d9bf0;--accent-strong: #1a8cd8;--accent-contrast: #ffffff;--secret-accent: #20d98a;--secret-accent-strong: #1fc27f;--secret-accent-contrast: #03110a;--shadow-strong: 0 20px 48px rgba(0, 0, 0, .5);--shadow-soft: 0 10px 28px rgba(0, 0, 0, .34);--header-bg: rgba(15, 17, 20, .96);--panel-bg: rgba(22, 24, 28, .92);--control-bg: rgba(29, 31, 35, .92);--message-in-bg: #40454d;--message-out-bg: color-mix(in srgb, #1d9bf0 88%, #0f1419 12%);--link: #ffffff}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;background:var(--bg);color:var(--text)}.app{position:relative;width:100%;height:100%;display:flex;flex-direction:column;background:radial-gradient(circle at top,var(--bg-top),var(--bg-mid) 55%,var(--bg) 100%);color:var(--text);padding:24px 32px 32px;overflow:hidden;box-sizing:border-box}.app[data-theme=x-black] .ambient{display:none}.ambient{position:absolute;width:320px;height:320px;border-radius:50%;filter:blur(0px);opacity:.2;background:radial-gradient(circle,rgba(60,140,110,.25),transparent 70%);animation:float 20s ease-in-out infinite}.ambient--one{top:-80px;right:15%}.ambient--two{bottom:-120px;left:10%;animation-delay:-6s}.app__header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 22px;background:var(--header-bg);border-radius:20px;border:none;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.brand{display:flex;align-items:center;gap:16px}.brand__logo{width:48px;height:48px;border-radius:12px;cursor:pointer;transition:transform .25s ease}.brand__logo:hover{transform:scale(1.08)}.settings-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:12px;border:none;background:var(--control-bg);color:var(--accent);cursor:pointer;transition:transform .25s ease,box-shadow .25s ease;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.settings-btn__icon{font-size:18px;line-height:1}.settings-btn__svg{width:18px;height:18px}.settings-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #14c86e33}.btn,.btn--ghost,.peer__remove,.pill{white-space:nowrap}.modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000}.modal__overlay{position:absolute;inset:0;background:#0206048c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal__content{position:relative;width:92%;max-width:720px;background:var(--surface-strong);border:none;border-radius:16px;box-shadow:var(--shadow-strong);padding:20px;z-index:1;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.modal__content--profile{max-width:360px}.modal__content--peer-card{max-width:340px}.modal__content--settings{max-width:560px;padding:22px;background:linear-gradient(145deg,#ffffff13,#ffffff06),#050c09e6;border:1px solid rgba(255,255,255,.08)}.modal__content--secret{max-width:600px;padding:24px}.modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal__title{font-weight:600;font-size:18px}.secret-info{display:flex;flex-direction:column;gap:12px;color:#daeee3d6;font-size:16px;line-height:1.58}.secret-info__line{margin:0}.modal__close--plain{transition:none}.modal__close--plain:hover{transform:none;box-shadow:none}.profile{display:flex;flex-direction:column;gap:16px}.profile__avatar{align-self:center;width:120px;height:120px;padding:0;border:none;background:transparent;cursor:pointer}.profile__file{display:none}.profile__row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:12px;background:linear-gradient(135deg,#ffffff0f,#ffffff06)}.profile__address{font-size:13px;color:var(--text);word-break:break-all}.profile__meta{display:flex;flex-direction:column;gap:6px;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:12px 14px;background:linear-gradient(135deg,#ffffff0e,#ffffff05)}.profile__meta-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.profile__meta-value{font-size:14px;font-weight:600;color:var(--text);word-break:break-all}.profile__edit{display:flex;flex-direction:column;gap:12px}.profile__input{width:100%}.profile__actions{display:flex;align-items:center;gap:10px;flex-wrap:nowrap}.profile__actions .btn{flex:1;min-width:0}.profile__avatar{position:relative;border-radius:50%;overflow:hidden;padding:0;border:none;background:none;cursor:pointer;transition:transform .2s}.profile__avatar.editing:after{content:"📷";position:absolute;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;opacity:1;pointer-events:none}.peer-profile{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.peer-profile__name{font-size:22px;font-weight:600;color:var(--text);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.peer-profile__address{width:100%;font-size:13px;line-height:1.5;color:var(--text-muted);word-break:break-all;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:12px 14px;background:#ffffff08}.settings__row{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid rgba(255,255,255,.065);border-radius:14px;padding:14px;margin-bottom:0;background:linear-gradient(135deg,#ffffff12,#ffffff06),var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));box-shadow:0 14px 34px #0000003d;position:relative;overflow:hidden}.settings__grid{display:grid;gap:12px}.settings__row+.settings__row{margin-top:0}.settings__row:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(32,217,138,.07),transparent);opacity:0;transition:opacity .25s ease;pointer-events:none}.settings__row:hover:after{opacity:1}.settings__label{flex:1;min-width:0;color:#eaf8f0eb;font-size:14px;font-weight:600}.settings__icon{width:48px;height:48px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:inset 0 0 0 1px #ffffff1a}.settings__icon-svg{width:26px;height:26px;color:#f6fbff}.settings__icon--wallet{background:linear-gradient(180deg,#2d2e34,#1f2025)}.settings__icon--language{background:linear-gradient(180deg,#d774ff,#a150d8)}.settings__icon--theme{background:linear-gradient(180deg,#2a3440,#121822)}.settings__icon--session{background:linear-gradient(180deg,#ffab2e,#ff8b05)}.settings__icon--docs{background:linear-gradient(180deg,#61c7ff,#43a8ea)}.settings__icon--docs .settings__icon-svg{color:#43a8ea}.settings__actions{display:flex;align-items:center;gap:10px}.settings__control{height:40px;min-width:160px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;box-sizing:border-box}.settings__control--sm{height:32px;min-width:96px;padding:0 10px;font-size:12px}.settings__select{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:0 32px 0 12px;color:var(--text);height:40px;font-size:13px}.brand__title{font-size:22px;font-weight:600;letter-spacing:.02em}.brand__subtitle{font-size:13px;color:var(--text-muted);margin-top:4px}.brand__link{color:inherit;text-decoration:none;font-weight:500;border-bottom:1px solid rgba(25,241,138,.3);transition:border-color .2s ease,color .2s ease}.brand__link:hover{color:#19f18a;border-color:#19f18a}.wallet{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.wallet__top{display:flex;align-items:center;gap:12px}.wallet__info{text-align:right}.wallet__address{font-size:12px;color:var(--text-muted);margin-top:6px}.pill{display:inline-flex;align-items:center;gap:8px;font-size:12px;padding:6px 12px;border-radius:999px;border:none;background:var(--surface);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.pill--on{color:var(--accent);box-shadow:0 0 12px #20d98a33}.pill--off{color:#b4cdbecc}.btn{border:none;background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:var(--accent-contrast);font-weight:600;padding:10px 18px;border-radius:12px;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease;box-shadow:0 10px 20px #14c86e2e}.btn:hover{transform:translateY(-1px);box-shadow:0 12px 24px #14c86e3d}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn--ghost{background:var(--control-bg);color:var(--accent);border:none;box-shadow:none;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.btn--danger{background:linear-gradient(135deg,#f44c60e6,#be2a3ae6);color:#fff6f6;box-shadow:0 10px 20px #d22d462e}.btn--danger:hover{box-shadow:0 12px 24px #d22d4642}.btn--icon{width:44px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:var(--control-bg);color:var(--accent);border:none;box-shadow:none;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.btn__icon{width:28px;height:28px}.btn--open{height:44px;display:inline-flex;align-items:center;justify-content:center}.app__main{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:22px;margin-top:24px;flex:1;min-height:0;overflow:hidden}.panel{background:var(--panel-bg);border-radius:20px;border:none;padding:20px;box-shadow:var(--shadow-strong);display:flex;flex-direction:column;gap:16px;height:100%;overflow:hidden;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.panel__title{font-size:15px;color:#e0efe8e0;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.panel__hint{font-size:12px;line-height:1.5;color:var(--text-muted)}.address{display:flex;gap:10px;align-items:center;flex-wrap:nowrap}.input--address{flex:1 1 0;min-width:0;height:44px}.input,.textarea{width:100%;background:var(--control-bg);border:none;border-radius:16px;padding:14px 16px;color:var(--text);font-size:14px;outline:none;transition:box-shadow .25s ease,background .25s ease}.input:focus,.textarea:focus{box-shadow:0 0 0 1px #ffffff1f,0 8px 18px #00000040;background:#ffffff12}.textarea{min-height:84px;resize:vertical}.textarea--composer{height:44px;min-height:44px;max-height:44px;resize:none;line-height:1.4;overflow:hidden;scrollbar-width:none}.textarea--composer:focus{box-shadow:none;background:var(--control-bg)}.textarea--composer::-webkit-scrollbar{display:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff59}.input--compact{max-width:200px;padding:8px 10px;font-size:12px}.peer-list{display:flex;flex-direction:column;gap:4px;overflow-y:auto;flex:1;padding-right:2px;padding-top:2px;min-height:0;max-height:100%;overscroll-behavior:contain}.peer-list__empty{color:#aad2be99;font-size:13px}@keyframes shake{0%{transform:rotate(0)}25%{transform:rotate(1deg)}50%{transform:rotate(0)}75%{transform:rotate(-1deg)}to{transform:rotate(0)}}.peer--shake{animation:shake .3s ease-in-out infinite}.peer{background:transparent;border:none;border-radius:8px;padding:0;text-align:left;color:inherit;cursor:default;transition:transform .2s ease;overflow:hidden;max-width:100%;position:relative;flex-shrink:0;outline:none}.peer__surface{position:relative;z-index:1;background:transparent;border:1px solid transparent;border-radius:8px;padding:10px 12px;text-align:left;color:inherit;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease;max-width:100%;outline:none;will-change:transform}.peer__surface:focus-visible{border-color:color-mix(in srgb,var(--accent) 28%,transparent);background:#ffffff0a}.peer__swipe-actions{display:none;position:absolute;inset:0;z-index:0;align-items:center;justify-content:flex-end;gap:10px;padding:0 14px;pointer-events:none;opacity:0;transform:translate(8px);transition:opacity .18s ease,transform .18s ease}.peer--swiped .peer__swipe-actions{opacity:1;transform:translate(0);pointer-events:auto}.peer__swipe-action{width:54px;height:54px;border:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;pointer-events:auto;box-shadow:0 16px 28px #00000047;transition:transform .2s ease,opacity .2s ease,filter .2s ease}.peer__swipe-action svg{width:22px;height:22px}.peer__swipe-action:hover{filter:brightness(1.05)}.peer__swipe-action:active{transform:scale(.96)}.peer__swipe-action--secret{background:var(--secret-accent-strong)}.peer__swipe-action--delete{background:#ef5350}.peer__swipe-action--disabled{background:#7b808475;color:#ffffffb8;cursor:not-allowed;box-shadow:none}.peer__row{display:flex;align-items:center;gap:12px;min-width:0}.peer__avatar-button{display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;border:none;background:transparent;border-radius:999px;cursor:pointer;flex:0 0 auto}.peer__avatar-button:hover{transform:translateY(-1px)}.peer__content{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.peer__topline{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.peer__title-row{display:inline-flex;align-items:center;gap:8px;min-width:0}.peer__topline-right{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.peer__time{font-size:12px;color:#cde2d685;white-space:nowrap}.peer__remove{position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:50%;background:#dc283ccc;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;border:none;opacity:0;transform:scale(.8);transition:all .25s ease;z-index:10}.peer__lock{position:absolute;top:8px;right:34px;width:20px;height:20px;border-radius:50%;background:color-mix(in srgb,var(--secret-accent) 88%,white 12%);color:var(--secret-accent-contrast);display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;opacity:0;transform:scale(.8);transition:all .25s ease;z-index:10}.peer__lock svg{width:14px;height:14px}.peer__lock--off{background:#b4beb966;color:#b4beb9e6;cursor:not-allowed}.peer--shake .peer__lock,.peer--shake .peer__remove{opacity:1;transform:scale(1)}.peer__remove:hover{background:#f03246;transform:scale(1.1)}.peer__secret-lock{width:22px;height:22px;border-radius:999px;background:color-mix(in srgb,var(--secret-accent) 12%,transparent);color:color-mix(in srgb,var(--secret-accent) 82%,white 18%);display:flex;align-items:center;justify-content:center;border:none}.peer__secret-lock--button{cursor:pointer}.peer__secret-lock--inline{flex:0 0 auto}.peer__secret-lock svg{width:14px;height:14px}.peer__unread{width:8px;height:8px;border-radius:50%;background:#1d9bf0;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 4px #1d9bf01f}.peer__input{background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.2);color:inherit;font-size:11px;width:100%;outline:none;padding:0;margin-top:4px}.peer:hover .peer__surface{background:#ffffff09;border-color:#ffffff0a}.peer--active .peer__surface{background:#ffffff0f;border-color:#ffffff0f}.peer__address{display:block;font-weight:600;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.peer__address--unread{color:#fff}.peer__preview{display:block;font-size:13px;color:#cde2d694;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.peer__preview--unread{color:#fffffff5}.peer__preview--empty{color:#cde2d66b}.peer__full{display:none}.panel--chat{gap:12px}.panel--left{min-height:0}.chat__header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:2px 2px 0}.chat__back{display:none}.chat__left{display:flex;align-items:center;gap:10px;min-width:0}.chat__left-main{display:flex;flex-direction:column;justify-content:center;gap:1px;min-width:0;flex:1}.chat__avatar{display:flex;align-items:center}.chat__avatar--button{padding:0;border:none;background:transparent;border-radius:999px;cursor:pointer}.chat__right{display:flex;align-items:center;gap:0;margin-left:auto;flex:0 0 auto;min-width:0}.chat__status{display:flex;align-items:center}.chat__title{display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:600;margin-top:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:min(40vw,420px)}.chat__title-lock{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--secret-accent) 88%,white 12%);color:var(--secret-accent-contrast);flex-shrink:0}.chat__title-lock--button{border:none;padding:0;cursor:pointer}.chat__title-lock svg{width:14px;height:14px}.chat__typing{font-size:11px;color:var(--text-muted);line-height:1.2}.chat__typing--off{display:none}.pulse{padding:5px 11px;border-radius:999px;background:var(--surface-soft);color:var(--accent);font-size:11px;border:none;animation:pulse 3s ease-in-out infinite;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.pulse--off{color:var(--text-muted);background:var(--surface-soft);animation:none}.chat__body{flex:1;display:flex;flex-direction:column;gap:14px;padding:4px 8px 0;overflow-y:auto;min-height:0}.chat__empty{color:var(--text-muted);font-size:14px;align-self:center;margin-top:80px}.message-row{position:relative;display:flex;flex-direction:column;gap:4px;max-width:68%}.message-row--out{align-self:flex-end;align-items:flex-end}.message-row--in{align-self:flex-start;align-items:flex-start}.message-row__main{position:relative;display:flex;align-items:center}.message{width:fit-content;padding:12px 14px;border-radius:16px;background:var(--surface);border:none;display:flex;flex-direction:column;gap:8px;animation:rise .35s ease;position:relative;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));box-shadow:0 8px 18px #00000038}.message--out{background:var(--message-out-bg)}.message--in{background:var(--message-in-bg)}.message--out .message__sender,.message--out .message__time,.message--out .message__text{color:#fff}.message--out .message__reply-chip{color:#ffffffeb;background:#ffffff24;border-left-color:#ffffff85}.message__meta{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;justify-content:flex-start;font-size:11px;color:var(--text-muted);margin-bottom:6px}.message__sender{color:var(--text);font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.message__time{color:var(--text-muted);white-space:nowrap;flex-shrink:0}.message__text{font-size:14px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.message__reply-chip{font-size:11px;color:#daece2db;background:#ffffff0d;border-left:2px solid color-mix(in srgb,var(--accent) 55%,transparent);border-top:none;border-right:none;border-bottom:none;border-radius:6px;padding:6px 8px;text-align:left;cursor:pointer}.message__reply-chip:hover{background:#ffffff14}.message--highlighted{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 48%,transparent),0 0 24px color-mix(in srgb,var(--accent) 16%,transparent)}.message__reactions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.message__reaction{border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:var(--text);border-radius:999px;padding:2px 8px;display:inline-flex;align-items:center;gap:5px;font-size:12px;cursor:pointer}.message__reaction--selected{border-color:color-mix(in srgb,var(--accent) 38%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.message__link{color:var(--link);text-decoration:underline;text-underline-offset:2px}.message__link:hover{color:color-mix(in srgb,var(--link) 82%,white 18%)}.message__failed-remove{position:absolute;left:-34px;top:50%;z-index:1;transform:translateY(-50%) scale(.92);width:24px;height:24px;border:none;border-radius:999px;background:#d23442f5;color:#fff;display:inline-flex;align-items:center;justify-content:center;padding:0;font-size:16px;line-height:1;cursor:pointer;opacity:0;pointer-events:none;box-shadow:0 8px 18px #00000042;transition:opacity .18s ease,transform .18s ease,background .18s ease}.message__failed-remove:hover{background:#e0404ffa}@media(hover:hover)and (pointer:fine){.message-row--failed:hover .message__failed-remove{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1)}}.message__status{font-size:11px;color:var(--text-muted);padding:0 10px;min-height:14px}.message-row--out .message__status{text-align:right}.message-row--in .message__status{text-align:left}.message__status--read{color:#e7e9eab8}.message__status--error{color:#ff7f87}.message__pinned-dot{position:absolute;top:8px;left:8px;width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.9}.chat__header-pinned{display:flex;align-items:center;gap:6px;padding:0;max-width:min(38vw,420px);min-width:0;margin-right:12px}.chat__header-pinned-main{border:none;background:#ffffff0a;padding:5px 9px;border-radius:8px;display:flex;align-items:center;gap:8px;min-width:0;cursor:pointer;flex:1}.chat__header-pinned-tag{font-size:11px;color:var(--accent);white-space:nowrap}.chat__header-pinned-text{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.chat__header-pinned-clear{width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.chat__header-pinned-clear:hover{color:var(--text)}.chat__header-pinned-clear svg{width:14px;height:14px}.chat__header-pinned--mobile{display:none}.chat__reply-draft{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:8px;background:#ffffff0b;border:1px solid rgba(255,255,255,.07)}.chat__reply-copy{display:flex;flex-direction:column;min-width:0}.chat__reply-label{font-size:11px;color:var(--accent)}.chat__reply-text{font-size:12px;color:#dcefe4d1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat__reply-cancel{border:none;background:transparent;color:var(--text-muted);font-size:11px;cursor:pointer;padding:0}.chat__reply-cancel:hover{color:var(--text)}.context-menu{position:fixed;z-index:1200;width:280px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#0a100df5;box-shadow:0 18px 36px #00000073;-webkit-backdrop-filter:blur(10px) saturate(120%);backdrop-filter:blur(10px) saturate(120%);overflow:hidden}.context-menu__reactions{display:flex;gap:6px;padding:8px;border-bottom:1px solid rgba(255,255,255,.08)}.context-menu__reaction{border:none;background:#ffffff0f;border-radius:999px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px}.context-menu__reaction--selected{background:#20d98a33}.context-menu__items{display:flex;flex-direction:column;padding:6px}.context-menu__item{border:none;background:transparent;color:#e9f7efeb;text-align:left;padding:10px 12px;border-radius:8px;font-size:14px;cursor:pointer}.context-menu__item:hover{background:#ffffff12}.chat__composer{display:flex;gap:12px;align-items:center}.chat__secret-bar{display:flex;align-items:center;gap:12px}.chat__secret-input{height:40px;font-size:13px;padding:10px 14px;border-radius:14px}.chat__secret-save{height:40px;padding:0 16px;border-radius:14px;font-size:12px;letter-spacing:.02em}.btn--composer{width:44px;height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:16px}.emoji-btn{width:44px;height:44px;border-radius:12px;border:none;background:var(--surface-soft);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat))}.emoji-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #14c86e33}.emoji-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.emoji-btn__icon{width:22px;height:22px}.modal__content--emoji{max-width:420px;padding:16px}.modal__content--pin{max-width:430px;padding:18px}.pin-modal__copy{font-size:13px;line-height:1.45;color:var(--text-muted)}.pin-modal__preview{margin-top:12px;padding:10px 12px;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);color:var(--text);font-size:13px;line-height:1.4}.pin-modal__actions{display:flex;gap:10px;margin-top:14px}.pin-modal__button{flex:1;justify-content:center}.emoji-modal__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.emoji-modal__item{padding:0;border:none;background:transparent;cursor:pointer}.emoji-modal__video{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:12px;border:none;background:var(--surface-soft)}.message__gif{width:220px;height:220px;object-fit:cover;border-radius:12px;border:1px solid var(--border);background:var(--surface-soft)}.error{padding:10px 12px;background:#280c10cc;border:1px solid rgba(240,120,120,.4);border-radius:12px;color:#f5b9b9;font-size:12px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(18px)}}@keyframes pulse{0%,to{box-shadow:0 0 #19f0824d}50%{box-shadow:0 0 16px #19f08259}}@keyframes rise{0%{transform:translateY(6px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:960px){.app{padding:20px}.app__main{grid-template-columns:1fr}.panel--left{order:2}}@media(max-width:720px){.app{position:fixed;inset:0;width:100%;padding:0;min-height:var(--app-height, 100dvh);height:var(--app-height, 100dvh)}.app__header{position:sticky;top:0;z-index:20;flex-direction:row;align-items:center;gap:12px;padding:12px 14px;border-radius:0;flex-wrap:wrap}.ambient{display:none}.brand__logo{width:36px;height:36px;border-radius:10px}.brand__title{font-size:16px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand__subtitle{display:none}.wallet{align-items:center;width:auto;margin-left:auto}.wallet__top{flex-wrap:wrap;width:auto;justify-content:flex-end;gap:8px}.wallet__address{display:none}.app__main{gap:16px;flex:1;min-height:0}.panel{padding:14px;border-radius:16px;border-left:none;border-right:none;box-shadow:var(--shadow-soft)}.address{flex-direction:row;align-items:center}.input--address{flex:1;min-width:0}.address .btn--open,.address .btn--icon{flex:0 0 auto}.input--address{height:40px}.chat__header{position:sticky;top:0;z-index:10;flex-direction:row;align-items:center;gap:8px;background:transparent;padding:6px 0 8px}.chat__back{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;border:none;background:var(--surface-soft);color:var(--accent);cursor:pointer}.chat__back svg{width:20px;height:20px}.chat__right{margin-left:auto;width:auto;justify-content:flex-end;gap:8px}.panel__hint{display:none}.panel--left{padding-bottom:18px}.peer__swipe-actions{display:flex;padding:0 14px}.peer__surface{padding:10px 8px;touch-action:pan-y}.peer__swipe-action{width:52px;height:52px}.peer__address{font-size:14px}.peer__preview{font-size:12px}.peer__time{font-size:11px}.panel--chat{padding-bottom:calc(12px + env(safe-area-inset-bottom));display:flex;flex-direction:column;min-height:0}.app__main:not(.app__main--chat) .panel--chat{display:none}.app__main.app__main--chat .panel--left{display:none}.chat__left{display:flex;align-items:center;gap:10px;min-width:0}.chat__title{font-size:15px}.chat__header-pinned{max-width:180px;margin-right:0}.chat__header-pinned-text{font-size:11px}.chat__header-pinned-clear,.chat__header-pinned--desktop{display:none}.chat__header-pinned--mobile{display:flex;max-width:170px;margin:1px 0 0}.chat__header-pinned--mobile .chat__header-pinned-main{padding:3px 8px;border-radius:7px;gap:6px}.chat__header-pinned--mobile .chat__header-pinned-tag,.chat__header-pinned--mobile .chat__header-pinned-text{font-size:10px;line-height:1.1}.pin-modal__actions{flex-direction:column}.chat__body{flex:1;min-height:0;padding:4px 6px 6px}.chat__composer{gap:8px;position:sticky;bottom:0;z-index:20;background:transparent;padding:8px 0 calc(8px + env(safe-area-inset-bottom) + var(--keyboard-height, 0px))}.textarea--composer{height:40px;min-height:40px;max-height:40px;font-size:16px}.emoji-btn,.btn--composer{width:40px;height:40px}.btn--icon,.btn--open{width:40px;height:40px;padding:0}.input,.textarea{font-size:16px}.message__gif{width:160px;height:160px}.emoji-modal__video{aspect-ratio:1 / 1}.message-row{max-width:92%}.message__failed-remove{display:none}.chat__composer{flex-wrap:nowrap}.chat__composer .textarea{flex:1 1 auto;min-width:0}.chat__composer .emoji-btn,.chat__composer .btn--composer{flex:0 0 auto}.modal__content{padding:16px}.context-menu{width:250px}.settings__row{gap:14px;padding:12px}.settings__icon{width:42px;height:42px}.settings__icon-svg{width:22px;height:22px}}@media(max-width:420px){.app__header{gap:8px;padding:10px 12px}.brand__title{font-size:15px;max-width:110px}.pill{font-size:11px;padding:5px 10px}.btn--icon,.btn--open,.emoji-btn,.btn--composer{width:36px;height:36px}.btn__icon{width:22px;height:22px}.textarea--composer,.input--address{height:36px}}@media(prefers-reduced-motion:reduce){.ambient,.pulse{animation:none}}
