:root{--tg-bg-color:#fff;--tg-text-color:#000;--tg-hint-color:#707579;--tg-section-bg-color:#fff;--tg-secondary-bg-color:#f4f4f5;--tg-button-color:#2481cc;--tg-button-text-color:#fff;--tg-destructive-text-color:#e53935;--tg-inset-top:0px;--tg-inset-bottom:0px;--tg-inset-left:0px;--tg-inset-right:0px}*{box-sizing:border-box}html,body{background:var(--tg-secondary-bg-color);height:100%;color:var(--tg-text-color);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}#root{height:100%}.screen{min-height:100dvh;padding:calc(var(--tg-inset-top) + 16px) calc(var(--tg-inset-right) + 16px) calc(var(--tg-inset-bottom) + 16px) calc(var(--tg-inset-left) + 16px);justify-content:center;align-items:center;display:flex}.screen.top{align-items:flex-start}.stack{width:100%;max-width:480px}.card{background:var(--tg-section-bg-color);border-radius:16px;width:100%;max-width:420px;padding:20px}h1{margin:0 0 4px;font-size:20px;line-height:1.3}.hint{color:var(--tg-hint-color);margin:0;font-size:14px}.hint.small{font-size:12px}.center{text-align:center}.glyph{margin-bottom:12px;font-size:40px;line-height:1}.button{background:var(--tg-button-color);color:var(--tg-button-text-color);border-radius:10px;margin-top:16px;padding:12px 24px;font-size:15px;font-weight:600;text-decoration:none;display:inline-block}.code{background:var(--tg-secondary-bg-color);border-radius:6px;margin-top:12px;padding:4px 8px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;display:inline-block}.credits{background:var(--tg-secondary-bg-color);color:var(--tg-hint-color);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;padding:4px 10px;font-size:13px}.picker-head{align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.picker-head>div{flex:1}.persona-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.persona{background:var(--tg-section-bg-color);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;border:none;border-radius:14px;align-items:center;gap:14px;padding:14px 16px;display:flex}.persona:active{opacity:.7}.persona-avatar{background:var(--tg-secondary-bg-color);border-radius:50%;flex:none;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.persona-text{flex:1;gap:2px;display:grid}.chev{color:var(--tg-hint-color);font-size:20px}.chat{height:100dvh;padding-top:var(--tg-inset-top);flex-direction:column;display:flex}.chat-head{background:var(--tg-section-bg-color);flex:none;align-items:center;gap:12px;padding:10px 16px;display:flex}.chat-avatar{background:var(--tg-secondary-bg-color);border-radius:50%;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.chat-id{flex:1;gap:1px;min-width:0;display:grid}.chat-id strong{font-size:15px}.ghost{color:var(--tg-hint-color);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:18px}.messages{flex-direction:column;flex:1;gap:8px;padding:16px;display:flex;overflow-y:auto}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:16px;max-width:82%;padding:10px 14px;font-size:15px;line-height:1.45}.bubble.user{background:var(--tg-button-color);color:var(--tg-button-text-color);border-bottom-right-radius:5px;align-self:flex-end}.bubble.assistant{background:var(--tg-section-bg-color);border-bottom-left-radius:5px;align-self:flex-start}.bubble.greeting{opacity:.85;font-style:italic}.typing{gap:4px;padding:14px;display:flex}.typing span{background:var(--tg-hint-color);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite blink}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,60%,to{opacity:.25}30%{opacity:1}}@media (prefers-reduced-motion:reduce){.typing span{opacity:.6;animation:none}}.error-line{color:var(--tg-destructive-text-color);text-align:center;align-self:center;margin:4px 0;font-size:13px}.composer{padding:10px 12px calc(var(--tg-inset-bottom) + 10px);background:var(--tg-section-bg-color);flex:none;gap:8px;display:flex}.composer input{background:var(--tg-secondary-bg-color);min-width:0;color:var(--tg-text-color);font:inherit;border:none;border-radius:20px;flex:1;padding:11px 14px;font-size:15px}.composer input:focus{outline:2px solid var(--tg-button-color);outline-offset:-2px}.composer button{background:var(--tg-button-color);width:40px;height:40px;color:var(--tg-button-text-color);cursor:pointer;border:none;border-radius:50%;flex:none;font-size:19px}.composer button:disabled{opacity:.4;cursor:default}
