:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#e7eef5;color:#17212b;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--telegram-blue: #2aabee;--telegram-blue-dark: #168acd;--bubble-mine: #e0ffc7;--bubble-theirs: #ffffff;--border: #d5e0e8;--muted: #6f8190;--danger: #cf3d43;--shadow: 0 18px 50px rgba(35, 55, 75, .14)}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;min-height:100%;margin:0}button,input,textarea{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:default;opacity:.55}.auth-shell{display:grid;min-height:100dvh;place-items:center;padding:max(20px,env(safe-area-inset-top)) 18px max(20px,env(safe-area-inset-bottom));background:radial-gradient(circle at 18% 12%,rgba(42,171,238,.16),transparent 30%),linear-gradient(135deg,#eff7fc,#dce9f2 48%,#edf6f1)}.auth-panel{position:relative;display:grid;width:min(100%,390px);gap:16px;padding:30px;border:1px solid rgba(255,255,255,.7);border-radius:8px;background:#ffffffe0;box-shadow:var(--shadow)}.auth-panel h1{margin:0 0 6px;font-size:28px;line-height:1.1;text-align:center}.auth-panel label{display:grid;gap:7px;color:#314454;font-size:14px;font-weight:650}.auth-panel input{width:100%;height:48px;border:1px solid var(--border);border-radius:8px;padding:0 14px;background:#fff;color:#17212b;outline:none}.auth-panel input:focus,.composer textarea:focus{border-color:var(--telegram-blue);box-shadow:0 0 0 3px #2aabee29}.brand-mark{display:grid;width:70px;height:70px;place-items:center;justify-self:center;border-radius:50%;background:var(--telegram-blue);color:#fff;box-shadow:0 12px 26px #2aabee42}.brand-mark.small{width:42px;height:42px;justify-self:auto;box-shadow:none}.primary-button{height:48px;border-radius:8px;background:var(--telegram-blue);color:#fff;font-weight:750}.primary-button:hover{background:var(--telegram-blue-dark)}.secondary-button{height:48px;border-radius:8px;background:transparent;border:1px solid var(--border);color:var(--muted);font-weight:650}.secondary-button:hover{background:#edf3f8}.passphrase-modal-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#17212b73;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in .18s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.passphrase-modal{display:grid;width:min(100%,380px);gap:16px;padding:26px;border:1px solid rgba(255,255,255,.7);border-radius:14px;background:#fffffff5;box-shadow:var(--shadow);animation:slide-up .2s ease}@keyframes slide-up{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.passphrase-modal-header{display:flex;align-items:center;gap:10px;color:var(--telegram-blue)}.passphrase-modal-header strong{font-size:17px}.passphrase-modal label{display:grid;gap:7px;color:#314454;font-size:14px;font-weight:650}.passphrase-modal input{width:100%;height:46px;border:1px solid var(--border);border-radius:8px;padding:0 14px;background:#fff;color:#17212b;outline:none}.passphrase-modal input:focus{border-color:var(--telegram-blue);box-shadow:0 0 0 3px #2aabee29}.passphrase-modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hint-text,.error-text{margin:0;text-align:center;font-size:13px}.hint-text{color:var(--muted)}.error-text{color:var(--danger)}.logout-float{position:absolute;top:14px;right:14px}.chat-shell{display:grid;grid-template-columns:330px minmax(0,1fr);height:100dvh;overflow:hidden;background:#dfeaf2}.chat-list{display:grid;grid-template-rows:auto 1fr;min-width:0;border-right:1px solid var(--border);background:#fff}.app-title{display:flex;gap:12px;align-items:center;min-height:72px;padding:max(14px,env(safe-area-inset-top)) 18px 14px;border-bottom:1px solid var(--border)}.app-title strong,.dialog-copy strong,.header-copy strong{display:block;overflow:hidden;color:#17212b;font-weight:760;text-overflow:ellipsis;white-space:nowrap}.app-title span,.dialog-copy span,.header-copy span{display:block;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.dialog-row{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;width:100%;height:72px;padding:10px 14px;background:#fff;text-align:left}.dialog-row.active,.dialog-row:hover{background:#edf6fc}.avatar{display:grid;width:46px;height:46px;flex:0 0 auto;place-items:center;border-radius:50%;background:linear-gradient(135deg,#31a8e0,#7fc86a);color:#fff;font-size:15px;font-weight:800}.avatar-container{position:relative;width:46px;height:46px;flex:0 0 auto}.online-badge{position:absolute;bottom:-1px;right:-1px;width:12px;height:12px;border-radius:50%;background:#39e55b;border:2px solid #fff;box-shadow:0 0 4px #39e55b66;animation:online-pulse 2s infinite}@keyframes online-pulse{0%{box-shadow:0 0 #39e55bb3}70%{box-shadow:0 0 0 5px #39e55b00}to{box-shadow:0 0 #39e55b00}}.conversation{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100dvh;background:linear-gradient(#dfeaf2e6,#dfeaf2e6),repeating-linear-gradient(45deg,rgba(42,171,238,.08) 0 2px,transparent 2px 16px)}.conversation-header{display:flex;align-items:center;gap:12px;min-width:0;min-height:68px;padding:max(10px,env(safe-area-inset-top)) 14px 10px;border-bottom:1px solid rgba(191,207,218,.85);background:#fffffff0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-copy{min-width:0;flex:1 1 auto}.header-actions{display:flex;align-items:center;gap:8px;min-width:max-content}.icon-button{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:transparent;color:#526575}.icon-button:hover{background:#edf3f8}.danger-icon{color:var(--danger)}.danger-icon:hover{background:#fff0ef}.mobile-only{display:none}.connection-pill,.security-pill{display:inline-flex;align-items:center;gap:5px;min-height:30px;border-radius:999px;padding:0 9px;font-size:12px;font-weight:760}.connection-pill{background:#fff0ef;color:#aa3438}.security-pill{background:#e9f8ec;color:#23783a}.message-pane{display:flex;min-height:0;flex-direction:column;gap:8px;overflow-y:auto;padding:18px clamp(10px,3vw,38px);scroll-behavior:smooth}.date-chip,.system-line{align-self:center;border-radius:999px;background:#6e859773;color:#fff;font-size:12px;font-weight:700}.date-chip{padding:5px 12px}.system-line{padding:6px 12px}.message{position:relative;width:fit-content;max-width:min(620px,78%);border-radius:8px;padding:8px 10px 5px;box-shadow:0 1px 1px #00000014;overflow-wrap:anywhere}.message.mine{align-self:flex-end;background:var(--bubble-mine)}.message.theirs{align-self:flex-start;background:var(--bubble-theirs)}.message.failed{outline:1px solid rgba(207,61,67,.5)}.message.selected{outline:2px solid var(--telegram-blue);background:#2aabee14;transition:outline .12s ease,background .12s ease}.message.mine.selected{background:#2aabee1f}.msg-row{display:flex;align-items:flex-end;gap:8px}.msg-row.mine{align-self:flex-end}.msg-row.theirs{align-self:flex-start}.msg-row .message.mine,.msg-row .message.theirs{align-self:unset}.msg-checkbox{flex:0 0 auto;width:22px;height:22px;border-radius:50%;border:2px solid var(--border);background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s,background .15s;margin-bottom:6px}.msg-checkbox.checked{background:var(--telegram-blue);border-color:var(--telegram-blue);color:#fff}.header-menu-wrap{position:relative}.header-menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:165px;border-radius:10px;background:#fff;box-shadow:0 8px 28px #23374b29,0 2px 8px #23374b14;border:1px solid rgba(0,0,0,.06);overflow:hidden;animation:header-menu-appear .12s ease;transform-origin:top right}@keyframes header-menu-appear{0%{opacity:0;transform:scale(.95) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.header-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:11px 14px;background:transparent;font-size:14px;font-weight:555;text-align:left;color:#17212b;cursor:pointer;border:none;transition:background .12s}.header-menu-item:hover{background:#f5f7f9}.header-menu-item svg{color:#6f8190}.message p{margin:0;color:#17212b;font-size:15px;line-height:1.42;white-space:pre-wrap}.message footer{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-height:18px;margin-top:2px;color:#6f8190;font-size:11px;line-height:1;white-space:nowrap}.ticks{display:inline-flex;color:#38a6df}.selection-bar{display:flex;align-items:center;gap:8px;padding:8px 14px;background:#fffffff7;border-bottom:1px solid rgba(191,207,218,.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:slide-down .15s ease;z-index:10}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.selection-bar span{flex:1;font-size:14px;font-weight:650;color:var(--telegram-blue)}.sel-bar-action{padding:6px 12px;border-radius:999px;background:#2aabee1a;color:var(--telegram-blue);font-size:13px;font-weight:650;border:none;cursor:pointer;white-space:nowrap}.sel-bar-action:hover{background:#2aabee2e}.sel-bar-action:disabled{opacity:.4;cursor:default}.danger-button{height:48px;border-radius:8px;background:var(--danger);color:#fff;font-weight:650;border:none;cursor:pointer}.danger-button:hover{background:#b5363b}.composer{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:10px;align-items:end;padding:10px clamp(10px,3vw,38px) max(10px,env(safe-area-inset-bottom));background:#edf5faf5;border-top:1px solid rgba(191,207,218,.85)}.composer textarea{width:100%;min-height:46px;max-height:138px;resize:none;border:1px solid var(--border);border-radius:8px;padding:12px 14px;background:#fff;color:#17212b;outline:none}.send-button{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:var(--telegram-blue);color:#fff}.send-button:hover{background:var(--telegram-blue-dark)}@media(max-width:780px){.chat-shell{grid-template-columns:1fr}.chat-list{display:none}.mobile-only{display:grid}.conversation-header{min-height:62px}.security-pill{display:none}.message{max-width:88%}}@media(max-width:430px){.auth-panel{padding:24px 18px}.message-pane{padding-inline:8px}.header-actions{gap:4px}.connection-pill{width:32px;overflow:hidden;padding:0 8px;color:transparent}.connection-pill svg{color:#aa3438}}
