:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#171717;background:#fff;font-synthesis:none}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;touch-action:pan-x pan-y}button,input,select{font:inherit}button{cursor:pointer}.shell{width:min(100%,520px);height:100dvh;margin:auto;background:#fff;display:flex;flex-direction:column;overflow:hidden}.app-header{min-height:68px;flex:none;display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-bottom:1px solid #e5e5e5;z-index:1}h1{font-size:20px;line-height:1.3;font-weight:600;letter-spacing:0;margin:0}.avatar{flex:none;display:grid;place-items:center;border-radius:50%;overflow:hidden;color:#171717;font-weight:600}.avatar img{width:100%;height:100%;object-fit:cover}.header-label{min-width:0;display:flex;flex-direction:column;gap:2px}.header-label strong{font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-label small{font-size:12px;color:#737373;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-button{border:0;background:transparent;color:#171717;padding:8px;display:grid;place-items:center}.back-button{margin-left:-8px}.list-view{background:#fff}.chat-search{flex:none;display:flex;align-items:center;gap:10px;margin:16px;padding:12px 14px;min-height:48px;border:1px solid #a3a3a3;border-radius:0;background:#fff;color:#737373}.chat-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#171717;font-size:16px}.chat-search input::placeholder{color:#737373}.chat-list{flex:1;overflow-y:auto;padding:0 16px 16px}.chat-row{width:100%;min-height:80px;margin-bottom:8px;padding:12px;display:flex;align-items:center;gap:12px;border:1px solid #d4d4d4;border-radius:0;background:#fff;text-align:left}.chat-row:active{background:#f5f5f5}.chat-row-label{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.chat-row-label strong,.chat-row-label small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-row-label strong{font-size:15px;font-weight:600}.chat-row-label small{font-size:13px;color:#737373}.chat-preview{display:flex;align-items:center;gap:3px}.chat-preview>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.read-checks{display:inline-flex;flex:none;align-items:center;justify-content:center;color:#a3a3a3;vertical-align:middle}.read-checks.is-read{color:#171717}.chat-row-meta{align-self:stretch;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:5px}.chat-row time{font-size:11px;color:#737373}.unread-badge{min-width:23px;height:23px;padding:0 6px;border-radius:4px;display:grid;place-items:center;background:#000;color:#fff;font-size:12px;font-weight:600}.chat-view{background:#fafafa}.chat-view .app-header{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:8px;background:#fff}.chat-view .back-button{margin-left:-8px}.chat-view .header-label{text-align:center;align-items:center}.messages{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:16px;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.messages-loading{visibility:hidden}.message-row{display:flex;align-items:center;gap:4px;max-width:100%}.message-row.mine{align-self:flex-end}.message-row .bubble{max-width:min(75vw,420px)}.heart-button,.heart-indicator{flex:none;width:30px;height:32px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent}.heart-button{color:#a3a3a3;transition:transform .16s ease,color .16s ease}.heart-button.active,.heart-indicator{color:#e53952}.heart-button:active{transform:scale(1.16)}.heart-button:focus-visible{outline:2px solid #171717;outline-offset:2px}.bubble{min-width:92px;padding:10px 12px 7px;background:#fff;border:1px solid #d4d4d4;border-radius:12px 12px 12px 3px}.bubble.mine{background:#f5f5f5;border-color:#d4d4d4;border-radius:12px 12px 3px}.bubble p{margin:0 0 4px;font-size:15px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.bubble a{color:#171717;font-size:14px;text-decoration:underline;overflow-wrap:anywhere}.bubble-foot{display:flex;justify-content:flex-end;align-items:center;gap:3px;min-height:15px}.bubble-foot small,.mine .bubble-foot small{color:#737373;font-size:10px}.bubble-foot .read-checks{margin-left:0}.message-photo{max-width:100%;max-height:280px;border-radius:4px}.photo-thumbnail{display:block;max-width:100%;padding:0;border:0;background:transparent;line-height:0;cursor:zoom-in}.photo-thumbnail:focus-visible{outline:2px solid #171717;outline-offset:2px}.photo-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:72px 12px 24px;background:#000e;touch-action:pan-x pan-y}.photo-viewer>img{display:block;max-width:100%;max-height:100%;object-fit:contain}.photo-viewer-close{position:absolute;top:calc(12px + max(env(safe-area-inset-top,0px),var(--app-device-safe-top, 0px)) + var(--app-content-safe-top, 0px));right:12px;width:44px;height:44px;border:0;border-radius:50%;background:#ffffff24;color:#fff;font-size:32px;line-height:1}.photo-warning{display:flex;flex-direction:column;gap:8px;min-width:190px;padding:8px 2px;color:#525252}.photo-warning strong{font-size:13px;color:#171717}.photo-warning span{font-size:12px}.photo-warning button{align-self:flex-start;border:0;border-radius:4px;background:#000;color:#fff;padding:9px 13px;font-size:12px;font-weight:600}.composer{flex:none;display:flex;align-items:center;gap:5px;min-height:64px;margin:0;padding:8px 12px;border-top:1px solid #d4d4d4;background:#fff}.composer>input{min-width:0;flex:1;border:0;outline:none;background:transparent;padding:10px 2px;font-size:16px}.composer>input::placeholder{color:#737373}.attach-control{position:relative;flex:none;width:38px;height:42px;display:grid;place-items:center;color:#525252}.attach-control select{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.attach-control:focus-within{outline:2px solid #171717;outline-offset:2px}.send{flex:none;width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:4px;background:#000;color:#fff}.send:disabled{background:#f5f5f5;color:#a3a3a3}.error{margin:8px 12px;padding:9px 12px;border:1px solid #a3a3a3;background:#fff;color:#171717;font-size:13px}.onboarding{justify-content:center;gap:16px;padding:30px 24px;background:#fff}.onboarding h1{font-size:24px}.muted{margin:0;color:#737373;font-size:14px}.preview{display:flex;justify-content:center;padding:22px}.onboarding label{display:block;font-size:13px;font-weight:600}.onboarding input{display:block;width:100%;margin-top:8px;padding:14px;border:1px solid #a3a3a3;border-radius:0;background:#fff;outline-color:#171717;font-size:16px}.profile-row{display:flex;gap:10px}.profile-row input{flex:1;min-width:0}.upload{align-self:flex-end;padding:15px;border:1px solid #a3a3a3;background:#fff;color:#171717;white-space:nowrap}.colors{display:flex;gap:11px}.colors button{width:34px;height:34px;border:3px solid #fff;border-radius:50%}.primary{width:100%;padding:16px;border:0;border-radius:4px;background:#000;color:#fff;font-weight:600}@media(max-width:767px){.shell{width:100%;max-width:none}}.telegram-mobile,.telegram-mobile body,.telegram-mobile #root{height:100%;overflow:hidden;overscroll-behavior:none}.telegram-mobile .shell{width:100%;max-width:none;height:var(--app-viewport-height, 100dvh)}.telegram-mobile .onboarding{overflow-y:auto}.telegram-fullscreen .shell{padding-top:calc(max(env(safe-area-inset-top,0px),var(--app-device-safe-top, 0px)) + var(--app-content-safe-top, 0px));padding-bottom:calc(max(env(safe-area-inset-bottom,0px),var(--app-device-safe-bottom, 0px)) + var(--app-content-safe-bottom, 0px))}.typing-label{color:#171717!important;font-weight:600}.typing-bubble{display:flex;align-items:center;gap:5px;height:36px;min-width:57px;padding:0 13px;border:1px solid #d4d4d4;border-radius:12px 12px 12px 3px;background:#fff}.typing-bubble i{display:block;width:6px;height:6px;border-radius:50%;background:#737373;animation:typing-dot 1.25s infinite ease-in-out}.typing-bubble i:nth-child(2){animation-delay:.16s}.typing-bubble i:nth-child(3){animation-delay:.32s}@keyframes typing-dot{0%,60%,to{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}@media(prefers-reduced-motion:reduce){.typing-bubble i{animation:none;opacity:.8}}
