.ic{display:inline-block;flex:none;background-color:currentColor;-webkit-mask:var(--src) center / contain no-repeat;mask:var(--src) center / contain no-repeat}.spinner{width:22px;height:22px;border:2px solid var(--separator);border-top-color:var(--text-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.avatar{position:relative;flex:none;border-radius:50%}.avatar img,.avatar .letter{width:100%;height:100%;border-radius:50%;object-fit:cover;display:grid;place-items:center;font-weight:500}.avatar .online{position:absolute;width:14px;height:14px;border-radius:50%;background:var(--green);border:2px solid var(--bg-primary);right:-1px;bottom:-1px}.icon-btn{width:40px;height:37px;display:grid;place-items:center;border-radius:12px;color:var(--text-primary);position:relative}.icon-btn:hover{background:var(--bg-elements)}.search{margin:0 16px 10px;height:36px;border-radius:var(--r-global);background:var(--bg-elements);display:flex;align-items:center;gap:8px;padding:0 12px;color:var(--text-secondary)}.search input{flex:1;border:0;outline:0;background:transparent;font-size:16px;color:var(--text-primary);min-width:0}.search input::placeholder{color:var(--text-secondary)}.panel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;background:var(--bg-primary);display:flex;flex-direction:column;animation:slideIn .22s cubic-bezier(.2,.8,.2,1)}@keyframes slideIn{0%{transform:translate(-24px);opacity:0}to{transform:none;opacity:1}}.panel-head{display:flex;align-items:center;gap:10px;padding:14px 16px}.panel-head h3{margin:0;font-size:20px;font-weight:700;flex:1}.panel-body{flex:1;overflow-y:auto;padding:0 16px 24px}.profile-card{display:flex;flex-direction:column;align-items:center;padding:8px 0 20px;gap:6px}.profile-card b{font-size:20px;font-weight:600;margin-top:8px}.profile-card span{color:var(--text-secondary)}.group-title{font-size:13px;color:var(--text-secondary);font-weight:500;margin:18px 4px 8px;text-transform:none}.card{background:var(--bg-secondary);border-radius:18px;overflow:hidden}.item{display:flex;align-items:center;gap:12px;padding:12px 14px;width:100%;text-align:left;font-size:15px;min-height:52px;position:relative}button.item:hover{background:var(--bg-elements)}.item+.item:before{content:"";position:absolute;top:0;left:56px;right:0;height:.5px;background:var(--separator)}.item .ii{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;color:#fff;flex:none}.item .txt{flex:1;min-width:0}.item .txt small{display:block;color:var(--text-secondary);font-size:13px;margin-top:3px}.item .end{color:var(--text-secondary);font-size:14px;display:flex;align-items:center;gap:6px}.item.danger{color:var(--red)}.item .cur{color:var(--green);font-size:12px;font-weight:600}.seg{display:flex;background:var(--bg-elements);border-radius:99px;padding:3px}.seg button{padding:6px 12px;border-radius:99px;font-size:13px;font-weight:500;color:var(--text-secondary)}.seg button.on{background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-card)}.hint{color:var(--text-secondary);font-size:13px;line-height:1.4;margin:10px 4px 0}.btn-ghost-danger{color:var(--red);font-weight:600;padding:8px 12px;border-radius:10px;font-size:14px}.btn-ghost-danger:hover{background:var(--bg-elements)}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%);z-index:100;background:var(--bg-toast);color:#fff;padding:12px 18px;border-radius:var(--r-m);font-size:14px;font-weight:500;box-shadow:0 8px 30px #0003;max-width:calc(100% - 32px)}.link-btn{display:inline-flex;align-items:center;gap:6px;margin-top:22px;font-weight:600;font-size:14px;color:var(--accent-secondary);padding:8px 12px;border-radius:99px}.link-btn:hover{background:var(--bg-elements)}:root[data-theme=dark] .link-btn{color:#a78bfa}.btn-primary{width:100%;margin-top:16px;padding:16px 10px;border-radius:var(--r-global);background:var(--accent);color:var(--on-accent);font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px}.btn-primary:disabled{background:var(--bg-disabled);color:#fff;cursor:default}.chat-list{flex:1;overflow-y:auto;padding-bottom:12px}.row{display:flex;gap:8px;padding:6px 16px;min-height:64px;align-items:center;width:100%;text-align:left;position:relative}.row:hover{background:var(--bg-hover)}.row.active{background:var(--bg-active-row)}.row:after{content:"";position:absolute;left:76px;right:16px;bottom:0;height:.5px;background:var(--separator);opacity:.6}.row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.row-line{display:flex;align-items:center;gap:4px;min-width:0}.row-name{font-size:16px;font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:4px}.row-time{font-size:14px;color:var(--text-secondary);flex:none}.row-time.unread{color:var(--text-primary)}.row-preview{font-size:14px;color:var(--text-secondary);flex:1;min-width:0;height:20px;line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-preview .author{color:var(--text-primary);font-weight:500}.row-preview.typing{color:var(--blue)}.row-marks{display:flex;align-items:center;gap:4px;color:var(--text-secondary);flex:none}.badge{min-width:20px;height:20px;border-radius:10px;padding:0 6px;background:var(--accent);color:var(--on-accent);font-size:14px;font-weight:500;display:grid;place-items:center;line-height:1}.badge.muted{background:var(--text-secondary);color:#fff}.dot{width:12px;height:12px;border-radius:50%;background:var(--accent)}.empty-list{padding:40px 24px;text-align:center;color:var(--text-secondary);line-height:1.4}.wallpaper{position:relative;background:var(--wallpaper);isolation:isolate}.wallpaper:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;background-color:var(--doodle, var(--wallpaper-doodle));-webkit-mask:url(/brand/doodles.svg) 0 0 / 360px repeat;mask:url(/brand/doodles.svg) 0 0 / 360px repeat}.btn-small{width:auto;min-height:0;margin-top:4px;padding:11px 20px;font-size:15px}.link-inline{color:var(--accent-secondary);font-weight:600;padding:0 2px;border-radius:6px}.link-inline:hover{text-decoration:underline}:root[data-theme=dark] .link-inline{color:#a78bfa}label.item{cursor:pointer}.switch{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex:none;width:46px;height:28px;margin:0;border-radius:99px;background:var(--bg-disabled);position:relative;cursor:pointer;transition:background .2s}.switch:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003;transition:transform .2s cubic-bezier(.3,1.3,.5,1)}.switch:checked{background:var(--green)}.switch:checked:after{transform:translate(18px)}.switch:disabled{opacity:.45;cursor:default}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#08080af0;display:flex;flex-direction:column;animation:viewerIn .18s ease;color:#fff}@keyframes viewerIn{0%{opacity:0}}.viewer-bar{display:flex;align-items:center;gap:6px;padding:max(10px,env(safe-area-inset-top)) 12px 10px 18px}.viewer-name{flex:1;min-width:0;font-size:14px;font-weight:500;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewer-btn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff!important}.viewer-btn:hover{background:#ffffff1f;text-decoration:none}.viewer-stage{flex:1;min-height:0;display:grid;place-items:center;padding:0 16px 16px;overflow:auto}.viewer-stage img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;cursor:zoom-in;animation:viewerImg .25s cubic-bezier(.2,.8,.2,1);box-shadow:0 20px 60px #00000080}.viewer-stage.zoom{place-items:start center}.viewer-stage.zoom img{max-width:none;max-height:none;cursor:zoom-out}@keyframes viewerImg{0%{transform:scale(.94);opacity:0}}.viewer-caption{text-align:center;padding:0 20px max(20px,env(safe-area-inset-bottom));font-size:15px;line-height:1.4;opacity:.9}.fab{position:absolute;right:20px;bottom:22px;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--accent-secondary);color:#fff;box-shadow:0 8px 24px #7c3aed66;transition:transform .15s,opacity .15s;z-index:2}.fab:hover{transform:scale(1.05)}.fab:disabled{opacity:0;pointer-events:none;transform:scale(.8)}.new-entry .ne-ic{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--accent-secondary);color:#fff;flex:none}.new-group-head{display:flex;align-items:center;gap:14px;margin-top:10px}.new-group-head .md-caption{flex:1;font-size:17px}.ng-avatar{width:64px;height:64px;border-radius:50%;flex:none;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#7c3aed,#c8102e)}.user-picker{display:flex;flex-direction:column;min-height:0;flex:1}.up-chips{display:flex;flex-wrap:wrap;gap:6px;padding:4px 0 6px}.up-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 3px;border-radius:99px;background:var(--bg-elements);font-size:13px;font-weight:500}.up-list{flex:1;overflow-y:auto;margin:0 -16px}.up-list .group-title{margin:8px 16px}.up-list .row:after{left:64px}.check-dot{width:22px;height:22px;border-radius:50%;border:2px solid var(--separator);display:grid;place-items:center;flex:none;color:#fff}.check-dot.on{background:var(--green);border-color:var(--green)}.md-caption{font:inherit;color:inherit;resize:vertical}.profile-card.clickable{width:100%;border-radius:18px;padding:14px 0 18px}.profile-card.clickable:hover{background:var(--bg-hover)}.edit-pill{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:13px;font-weight:600;color:var(--accent-secondary)!important}:root[data-theme=dark] .edit-pill{color:#a78bfa!important}.avatar-edit{position:relative;width:112px;height:112px;border-radius:50%;overflow:hidden}.avatar-edit>img{width:100%;height:100%;object-fit:cover}.ae-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff;background:#00000059;opacity:0;transition:opacity .15s}.avatar-edit:hover .ae-overlay,.avatar-edit:disabled .ae-overlay{opacity:1}.ae-actions{display:flex;gap:14px;margin-top:8px;font-size:14px}.link-inline.danger{color:var(--red)!important}.field{display:flex;align-items:center;gap:2px;width:100%;padding:12px 14px;border-radius:var(--r-m);border:2px solid transparent;background:var(--bg-elements);font-size:15px;outline:none}.field:focus,.field:focus-within{border-color:var(--accent-secondary)}.field.at span{color:var(--text-secondary);font-weight:600}.field.at input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;color:inherit}.field.bad{border-color:var(--red)}.item input[type=radio]{width:18px;height:18px;accent-color:var(--accent-secondary)}.join-dialog{max-width:360px;position:relative}.jd-close{position:absolute;top:10px;right:10px}.jd-body{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:34px 24px 22px;min-height:160px;justify-content:center}.jd-body h3{margin:10px 0 0;font-size:20px;font-weight:700}.jd-sub{color:var(--text-secondary);font-size:14px}.jd-hint{margin:8px 0 0;color:var(--text-secondary);font-size:14px}.jd-bad{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--bg-elements);color:var(--text-secondary)}@font-face{font-family:Onest;src:url(/fonts/Onest-Light.ttf) format("truetype");font-weight:300;font-display:swap}@font-face{font-family:Onest;src:url(/fonts/Onest-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Onest;src:url(/fonts/Onest-Medium.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Onest;src:url(/fonts/Onest-SemiBold.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Onest;src:url(/fonts/Onest-Bold.ttf) format("truetype");font-weight:700;font-display:swap}:root{color-scheme:light;--bg-primary: #FFFFFF;--bg-secondary: #F6F7F9;--bg-elements: #F4F4F8;--bg-selected: #17161D;--bg-blurred: rgba(255, 255, 255, .6);--bg-blurred-cards: rgba(255, 255, 255, .25);--bg-inputs: #F7F6FA;--bg-toast: #1C1B22;--bg-blurred-input: rgba(255, 255, 255, .77);--bg-disabled: #C8C7CB;--bg-hover: #F4F4F8;--bg-active-row: #F0F0F5;--text-primary: #1D1D1D;--text-secondary: #717473;--text-muted: #ADADAD;--text-on-dark: #FFFFFF;--accent: #FEE500;--on-accent: #1D1D1D;--accent-secondary: #7C3AED;--green: #34C759;--blue: #007AFF;--red: #FF3B30;--separator: #D6D6D6;--wallpaper: #E6F1F5;--wallpaper-doodle: transparent;--bubble-in: #FFFFFF;--on-bubble-in: #1D1D1D;--bubble-out: #FEE500;--on-bubble-out: #1D1D1D;--link-in: #007AFF;--quote-in: #F4F4F8;--quote-in-bar: #7C3AED;--quote-out: rgba(0, 0, 0, .05);--quote-out-bar: #5B4636;--ink-in-accent: #7C3AED;--ink-out-accent: #5B4636;--system-bg: rgba(255, 255, 255, .6);--on-system: #717473;--composer-shadow: rgba(214, 214, 214, .25);--danger: #FF383C;--shadow-card: 0 2px 7px rgba(104, 104, 104, .25);--r-global: 100px;--r-m: 16px;--r-bubble: 20px;--font: "Onest", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg-primary: #0A0A0A;--bg-secondary: #161817;--bg-elements: #222222;--bg-selected: #1D4882;--bg-blurred: rgba(10, 10, 10, .6);--bg-blurred-cards: #1E1E1E;--bg-inputs: #222222;--bg-toast: #444545;--bg-blurred-input: rgba(18, 18, 18, .77);--bg-disabled: #444545;--bg-hover: #161817;--bg-active-row: #1D1F1E;--text-primary: #EAECEB;--text-secondary: #8E8888;--text-muted: #8E8888;--accent: #1CD66B;--on-accent: #FFFFFF;--accent-secondary: #1D4882;--green: #1CD66B;--blue: #0071FF;--red: #FF453A;--separator: #303231;--wallpaper: #0E1116;--wallpaper-doodle: rgba(255, 255, 255, .075);--bubble-in: #262828;--on-bubble-in: #EAECEB;--bubble-out: #278EFF;--on-bubble-out: #FFFFFF;--link-in: #5AA9FF;--quote-in: #3D3F3E;--quote-in-bar: #3C803A;--quote-out: rgba(255, 255, 255, .15);--quote-out-bar: #A8D2FF;--ink-in-accent: #EAECEB;--ink-out-accent: #FFFFFF;--system-bg: #444545;--on-system: #EAECEB;--composer-shadow: rgba(0, 0, 0, .25);--danger: #FF453A;--shadow-card: 0 2px 7px rgba(0, 0, 0, .5)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}@supports (height: 100dvh){html,body,#root{height:100dvh}}body{font-family:var(--font);font-size:14px;line-height:1.2;color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;overflow:hidden}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input,textarea{font:inherit;color:inherit}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}
