:root{color-scheme:light;--green: #20b26b;--green-dark: #0f6f49;--green-soft: #d8fdd2;--ink: #15201b;--muted: #647067;--line: #dfe8e2;--panel: #ffffff;--bg: #eef5f0;--bubble: #ffffff;--danger: #d94444;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html,body{overflow:hidden;overscroll-behavior:none}body{background:#d9e8df;color:var(--ink);font-size:13px;line-height:1.4}button,input,textarea{font:inherit}button{cursor:pointer}.mobile-shell{width:100%;min-height:100%;margin:0 auto;background:var(--bg)}.home-shell{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.screen,.chat-screen{max-width:920px;margin:0 auto;background:var(--panel)}.screen{width:100%;flex:1;min-height:0;display:flex;flex-direction:column}.home-header,.chat-header{position:sticky;top:0;z-index:10;flex:none;height:calc(52px + env(safe-area-inset-top));display:flex;align-items:center;gap:10px;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;background:#f8fbf9;border-bottom:1px solid var(--line)}.home-header h1,.chat-header h1{min-width:0;flex:1;margin:0;font-size:16px;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{flex:0 0 auto;display:grid;place-items:center;border-radius:26%;overflow:hidden;background:linear-gradient(135deg,#d7f6e5,#a9dec3);color:#0b5b3b;font-weight:800}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-button{border:0;padding:0;border-radius:26%;background:transparent;display:grid;place-items:center}.icon-button,.send-button{width:40px;height:40px;border:0;border-radius:50%;display:grid;place-items:center;background:transparent;color:var(--ink)}.icon-button.primary,.send-button{background:var(--green);color:#fff}.home-header .icon-button.primary{width:34px;height:34px}.icon-button-placeholder{width:34px;height:34px;flex:0 0 auto}.icon-button.danger{color:var(--danger)}.icon-button:disabled{opacity:.5}.room-search{flex:none;display:flex;align-items:center;gap:8px;margin:8px 12px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#f8fbf9;color:var(--muted)}.room-search input{flex:1;min-width:0;border:0;padding:0;background:transparent;color:var(--ink)}.room-search input:focus{border:0;box-shadow:none}.share-banner{flex:none;display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--green-dark);color:#fff;font-size:14px;font-weight:600}.share-banner span{flex:1}.share-banner button{display:inline-flex;align-items:center;justify-content:center;padding:4px;border:0;border-radius:999px;background:#ffffff2e;color:#fff}.room-list{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.room-row{flex:none;min-height:62px;display:flex;align-items:center;gap:10px;padding:8px 12px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left}.room-main{min-width:0;flex:1;display:grid;gap:5px}.room-title{font-size:14px;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-badges{display:flex;flex-wrap:wrap;gap:6px}.room-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.room-badge.date{background:#0000000f;color:var(--muted)}.room-badge.pin,.room-badge.muted{padding:2px 6px;background:#0000000f;color:var(--muted)}.room-meta{align-self:stretch;display:grid;justify-items:end;align-content:center;gap:5px;color:var(--muted);font-size:11px}.room-meta b{min-width:20px;border-radius:999px;padding:3px 8px;background:var(--green);color:#fff;font-size:11px;font-weight:700;white-space:nowrap;text-align:center}.login-screen,.loading-screen{position:fixed;left:0;right:0;top:var(--app-offset-top, 0px);height:var(--app-height, 100dvh);min-height:0;display:grid;align-content:center;align-content:safe center;justify-items:center;gap:18px;padding:calc(24px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom));overflow-y:auto;background:#f5faf7}.login-mark{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff}.login-screen h1{margin:0;font-size:25px}.login-form{width:min(100%,360px);display:grid;gap:16px}label{display:grid;gap:7px;color:var(--muted);font-size:14px}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 13px;background:#fff;color:var(--ink);outline:none;font-size:16px}input:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #20b26b1f}.wide-button{min-height:46px;border:0;border-radius:10px;background:var(--green);color:#fff;font-weight:760}.wide-button.danger{background:var(--danger)}.wide-button:disabled{opacity:.55;cursor:default}.text-button{border:0;background:transparent;color:var(--green-dark);font-weight:700}.form-error,.toast-error{color:var(--danger);margin:0}.form-success{color:var(--green-dark);margin:0;font-weight:700}.pin-copy{margin:0;text-align:center;color:var(--muted)}.pin-grid{display:grid;grid-template-columns:repeat(4,54px);justify-content:center;gap:10px}.pin-grid input{height:58px;padding:0;text-align:center;font-size:25px;font-weight:800}.pin-grid.masked input{-webkit-text-security:disc;text-security:disc}.pin-field{display:grid;gap:8px}.pin-field small{color:var(--muted);text-align:center}.chat-header h1{font-size:14px;min-width:0;width:0;flex:1 1 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-screen{position:fixed;top:var(--app-offset-top, 0px);left:0;right:0;margin:0 auto;min-height:0;height:var(--app-height, 100dvh);display:grid;grid-template-rows:calc(52px + env(safe-area-inset-top)) 1fr auto;background:#e7f0ea}.chat-header{position:relative;height:calc(52px + env(safe-area-inset-top));background:#f8fbf9;gap:2px;padding:calc(8px + env(safe-area-inset-top)) 8px 8px;min-width:0;overflow:hidden}.chat-header h1{margin:0 2px}.chat-header .icon-button{width:30px;height:30px;flex:0 0 auto}.chat-header .avatar{flex:0 0 auto}.messages{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:14px 10px 18px;background:radial-gradient(circle at 12px 12px,rgba(32,178,107,.08) 1px,transparent 1px) 0 0 / 26px 26px,#e7f0ea}.bubble-row{display:flex;align-items:flex-end;gap:7px;margin:8px 0}.bubble-row.mine{justify-content:flex-end}.bubble-row.highlighted .bubble{animation:messageFocusGlow 1.15s ease-in-out 2}@keyframes messageFocusGlow{0%{transform:translateY(0) scale(1);box-shadow:0 1px 2px #00000014;outline:0 solid rgba(32,178,107,0)}18%{transform:translateY(-3px) scale(1.018);box-shadow:0 0 0 4px #20b26b29,0 12px 28px #20b26b33;outline:3px solid rgba(32,178,107,.36)}58%{transform:translateY(2px) scale(1.006);box-shadow:0 0 0 7px #20b26b1a,0 8px 20px #20b26b26;outline:2px solid rgba(32,178,107,.28)}to{transform:translateY(0) scale(1);box-shadow:0 1px 2px #00000014;outline:0 solid rgba(32,178,107,0)}}.bubble{max-width:min(78%,560px);padding:8px 9px 6px;border-radius:12px;background:var(--bubble);box-shadow:0 1px 2px #00000014}.bubble.has-attachments{width:max-content;max-width:min(72%,166px)}.bubble.has-file-attachment{width:min(82%,360px);max-width:min(82%,360px)}.bubble.has-attachments.has-media-text{max-width:min(76%,260px)}.bubble.has-file-attachment.has-media-text{max-width:min(82%,360px)}.mine .bubble{background:var(--green-soft);border-bottom-right-radius:4px}.theirs .bubble{border-bottom-left-radius:4px}.sender-name{display:block;color:var(--green-dark);font-size:12px;margin-bottom:3px}.bubble p{margin:3px 0 5px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.34;font-size:14px}.bubble p.emoji-only{font-size:28px;line-height:1.15}.bubble-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:20px;margin-bottom:2px}.bubble-head .sender-name{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.bubble-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;margin-left:auto}.bubble-actions button{border:0;background:transparent;color:var(--muted);padding:5px;display:grid;place-items:center;border-radius:7px;cursor:pointer}.bubble-actions button:hover{background:#80808029;color:var(--ink)}.action-sheet{width:min(92vw,360px);background:var(--panel);border-radius:16px;padding:8px;box-shadow:0 14px 44px #00000047}.action-sheet-head{display:flex;align-items:center;justify-content:space-between;padding:6px 6px 4px 10px}.action-sheet-head strong{font-size:15px}.action-sheet-list{display:grid;gap:2px}.action-sheet-list button{display:flex;align-items:center;gap:13px;width:100%;border:0;background:transparent;color:var(--ink);padding:12px;border-radius:10px;font-size:15px;text-align:left;cursor:pointer}.action-sheet-list button:hover{background:#80808024}.action-sheet-list button svg{flex:0 0 auto;color:var(--muted)}.action-sheet-list button.danger,.action-sheet-list button.danger svg{color:var(--danger)}.pinned-bar-wrap{display:flex;align-items:center;gap:4px;padding:6px 10px;background:var(--panel);border-bottom:1px solid var(--line);min-width:0;max-width:100%}.pinned-bar{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--ink);padding:2px 0;text-align:left;cursor:pointer}.pinned-bar>svg{flex:0 0 auto;color:var(--green-dark)}.pinned-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.pinned-unpin{flex:0 0 auto;border:0;background:transparent;color:var(--muted);display:grid;place-items:center;padding:4px;cursor:pointer;border-radius:6px}.pinned-unpin:hover{background:#80808029;color:var(--ink)}.pin-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:4px 0 8px}.poll-banner{display:flex;align-items:center;gap:8px;padding:7px 10px;background:var(--panel);border-bottom:1px solid var(--line)}.poll-banner>svg{flex:0 0 auto;color:var(--green-dark)}.poll-banner-main{flex:1;min-width:0;display:grid;gap:1px;border:0;background:transparent;text-align:left;color:var(--ink);cursor:pointer}.poll-banner-main strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.poll-banner-main small{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.poll-banner-go{flex:0 0 auto;border:0;background:var(--green);color:#fff;font-weight:700;font-size:12px;padding:5px 12px;border-radius:999px;cursor:pointer}.bubble.has-link{width:min(84%,320px);max-width:min(84%,320px)}.link-preview{display:block;margin:2px 0 5px;border-radius:10px;overflow:hidden;background:#80808014;border:1px solid var(--line);text-decoration:none;color:inherit}.link-preview:hover{background:#80808024}.link-preview-img{width:100%;max-height:180px;overflow:hidden;background:#8080801f}.link-preview-img img{width:100%;max-height:180px;object-fit:cover;display:block}.link-preview-body{display:grid;gap:2px;padding:8px 10px}.link-preview-site{font-size:11px;color:var(--green-dark);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-preview-title{font-size:13.5px;line-height:1.25;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.link-preview-desc{font-size:12px;color:var(--muted);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bubble.has-poll{width:min(84%,340px);max-width:min(84%,340px)}.poll-view{display:grid;gap:8px;margin:2px 0 4px;min-width:0;max-width:100%}.poll-image{border-radius:10px;overflow:hidden}.poll-image img{width:100%;max-height:220px;object-fit:cover;display:block}.poll-img-skel{display:block;width:100%;height:120px;background:#80808026;border-radius:10px}.poll-question{font-size:15px;line-height:1.3;min-width:0;overflow-wrap:anywhere;word-break:break-word}.poll-options{display:grid;gap:6px}.poll-opt{position:relative;overflow:hidden;display:grid;gap:3px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--panel);text-align:left;cursor:pointer;color:var(--ink)}.poll-opt:disabled{cursor:default}.poll-opt.mine{border-color:var(--green)}.poll-opt-bar{position:absolute;inset:0 auto 0 0;background:var(--green-soft);z-index:0;transition:width .3s ease}.poll-opt.mine .poll-opt-bar{background:#0f6f492e}.poll-opt-content{position:relative;z-index:1;display:flex;align-items:center;gap:8px}.poll-check{flex:0 0 auto;color:var(--green-dark);display:grid;place-items:center}.poll-opt-img{flex:0 0 auto;width:48px;height:48px;border-radius:8px;overflow:hidden}.poll-opt-img img{width:100%;height:100%;object-fit:cover}.poll-opt-text{flex:1;min-width:0;font-size:14px;overflow-wrap:anywhere}.poll-opt-count{flex:0 0 auto;font-size:12px;font-weight:700;color:var(--muted)}.poll-opt-voters{position:relative;z-index:1;display:flex;align-items:center;gap:3px;flex-wrap:wrap}.poll-more-voters{font-size:11px;color:var(--muted);font-weight:700}.poll-see-votes{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--green-dark);font-weight:700;font-size:12px;cursor:pointer;padding:0}.poll-vote-btn{border:0;background:var(--green);color:#fff;font-weight:700;padding:8px;border-radius:9px;cursor:pointer}.poll-vote-btn:disabled{opacity:.5;cursor:default}.poll-view-footer{display:flex;flex-wrap:wrap;gap:4px;font-size:11px;color:var(--muted)}.poll-end-btn{border:0;background:transparent;color:var(--danger);font-weight:700;font-size:12px;padding:2px;text-align:left;cursor:pointer;justify-self:start}.poll-compose{width:min(94vw,480px);max-height:88vh;display:flex;flex-direction:column;background:var(--panel);border-radius:16px;overflow:hidden;box-shadow:0 14px 44px #00000047}.poll-compose-head{display:flex;align-items:center;gap:10px;padding:12px 12px 8px}.poll-compose-head strong{flex:1;font-size:16px}.poll-compose-body{padding:4px 14px;overflow-y:auto;display:grid;gap:14px}.poll-field{display:grid;gap:6px}.poll-field>span{font-size:13px;font-weight:700;color:var(--muted)}.poll-question-row,.poll-option-row{display:flex;align-items:center;gap:6px}.poll-question-row input,.poll-option-row input{flex:1;min-width:0}.poll-field input[type=datetime-local]{width:100%}.poll-img-btn{flex:0 0 auto;width:34px;height:34px;border:1px dashed var(--line);border-radius:8px;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer}.poll-option-remove{flex:0 0 auto;width:32px;height:32px;border:0;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer}.poll-option-remove:disabled{opacity:.3;cursor:default}.poll-add-option{justify-self:start;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--green-dark);font-weight:700;font-size:13px;cursor:pointer;padding:2px}.poll-img-thumb{position:relative;flex:0 0 auto;width:34px;height:34px;border-radius:8px;overflow:hidden}.poll-img-thumb img{width:100%;height:100%;object-fit:cover}.poll-img-thumb button{position:absolute;top:-4px;right:-4px;width:18px;height:18px;border:0;border-radius:50%;background:#000000b3;color:#fff;display:grid;place-items:center;cursor:pointer}.poll-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.poll-switch-row>span{font-size:14px}.poll-compose-actions{display:flex;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.poll-compose-actions .outline-button,.poll-compose-actions .wide-button{flex:1}.poll-durations{display:grid;grid-template-columns:1fr 1fr;gap:8px}.poll-duration{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:9px;padding:9px;font-size:13px;font-weight:600;cursor:pointer}.poll-duration.on{border-color:var(--green);background:var(--green-soft);color:var(--green-dark)}.poll-votes-modal{width:min(94vw,440px);max-height:86vh;display:flex;flex-direction:column;background:var(--panel);border-radius:16px;overflow:hidden;box-shadow:0 14px 44px #00000047}.poll-votes-body{padding:4px 14px 14px;overflow-y:auto;display:grid;gap:14px}.poll-votes-body .poll-image img{width:100%;max-height:200px;object-fit:cover;border-radius:10px}.poll-votes-option{display:grid;gap:8px}.poll-votes-opt-head{display:flex;align-items:center;gap:8px;padding-bottom:6px;border-bottom:1px solid var(--line)}.poll-votes-opt-text{flex:1;min-width:0;font-weight:700;font-size:14px}.poll-votes-list{display:grid;gap:8px}.poll-voter{display:flex;align-items:center;gap:8px;font-size:14px}.poll-votes-empty{font-size:13px;color:var(--muted)}.pinned-countdown{flex:0 0 auto;font-size:11px;color:var(--muted);white-space:nowrap;padding:0 2px}.avatar-open{border:0;padding:0;background:transparent;flex:0 0 auto;display:grid;place-items:center;cursor:pointer}.avatar-viewer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;display:grid;place-items:center;padding:24px;background:#060b089e}.avatar-viewer{position:relative;display:grid;justify-items:center;gap:14px;padding:26px 24px 22px;border-radius:22px;background:var(--panel);color:var(--ink);box-shadow:0 24px 70px #00000057;max-width:min(88vw,320px)}.avatar-viewer .avatar{border-radius:22px}.avatar-viewer strong{font-size:18px;text-align:center;overflow-wrap:anywhere;max-width:100%}.avatar-viewer-close{position:absolute;top:12px;right:12px;width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:50%;background:#060b0899;color:#fff;box-shadow:0 2px 8px #00000059}.admin-page{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;background:var(--bg);color:var(--ink)}.admin-login{display:grid;place-items:center;padding:calc(24px + env(safe-area-inset-top)) 24px 24px;min-height:100%}.admin-login-card{width:min(100%,360px);display:grid;gap:12px;padding:24px;border-radius:16px;background:var(--panel);border:1px solid var(--line);box-shadow:0 12px 40px #0000001f}.admin-login-card h1{margin:0;font-size:20px}.admin-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:calc(12px + env(safe-area-inset-top)) 16px 12px;background:var(--panel);border-bottom:1px solid var(--line)}.admin-header h1{margin:0;font-size:18px}.admin-header-actions{display:flex;gap:6px}.admin-tabs{display:flex;gap:6px;padding:10px 12px;overflow-x:auto}.admin-tabs button{flex:0 0 auto;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:999px;padding:7px 14px;white-space:nowrap;font-weight:700}.admin-tabs button.active{background:var(--green);color:#fff;border-color:var(--green)}.admin-body{max-width:820px;margin:0 auto;padding:4px 12px calc(40px + env(safe-area-inset-bottom));display:grid;gap:10px}.admin-card{display:grid;gap:10px;padding:16px;border-radius:14px;background:var(--panel);border:1px solid var(--line)}.admin-card h2{margin:0;font-size:16px}.admin-switch-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid var(--line)}.admin-switch-row>div{display:grid;gap:3px;min-width:0}.admin-switch-row strong{font-size:14px}.admin-switch-row .admin-muted{font-size:12px;line-height:1.35}.admin-switch-row .ui-switch{flex:0 0 auto}.admin-list{display:grid;gap:8px}.admin-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--panel);border:1px solid var(--line)}.admin-item-main{min-width:0;flex:1;display:grid;gap:2px;text-align:left;border:0;background:transparent;color:inherit;padding:0}.admin-item-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-room-head{cursor:pointer}.admin-avatar{width:40px;height:40px;flex:0 0 auto;border-radius:26%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#d7f6e5,#a9dec3);color:#0b5b3b;font-weight:800}.admin-avatar img{width:100%;height:100%;object-fit:cover}.admin-muted{color:var(--muted);font-size:12px}.admin-room{display:grid;gap:6px}.admin-files{display:grid;gap:6px;padding:2px 6px 8px}.admin-file{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;background:#0000000a}.admin-file-preview{width:44px;height:44px;flex:0 0 auto;border-radius:8px;overflow:hidden;display:grid;place-items:center;background:#edf4ef}.admin-file-preview img{width:100%;height:100%;object-fit:cover}.admin-file-icon{color:var(--muted)}.admin-file-main{min-width:0;flex:1;display:grid;gap:2px}.admin-file-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.admin-row-actions{display:flex}.admin-page .icon-button.danger{color:var(--danger)}.admin-media-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:115;display:grid;overflow:hidden;background:#040806eb}.admin-media{display:grid;grid-template-rows:auto 1fr;min-height:0;min-width:0;overflow:hidden}.admin-media-bar{display:flex;align-items:center;gap:8px;min-width:0;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;color:#fff;background:#060b08e6}.admin-media-bar .admin-media-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.admin-media-bar .icon-button{color:#fff;flex:0 0 auto}.admin-media-content{min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}.admin-media-content img,.admin-media-content video{max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain}.admin-media-content audio{width:min(100%,460px)}.admin-media-content .wide-button{max-width:320px}.paste-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:108;display:grid;place-items:center;padding:20px;background:#060b0899}.paste-modal{width:min(100%,340px);display:grid;justify-items:center;gap:10px;padding:20px;border-radius:18px;background:var(--panel);color:var(--ink);box-shadow:0 24px 70px #0000004d;text-align:center}.paste-preview{width:160px;height:160px;max-width:60vw;border-radius:14px;overflow:hidden;display:grid;place-items:center;background:#0000000f}.paste-preview img{width:100%;height:100%;object-fit:contain}.paste-modal strong{font-size:16px}.paste-modal p{margin:0;color:var(--muted)}.paste-actions{display:grid;gap:8px;width:100%}.paste-actions .wide-button,.paste-actions .outline-button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.crop-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:112;display:grid;place-items:center;padding:16px;background:#060b0899}.crop-modal{width:min(100%,420px);display:grid;gap:10px;padding:14px;border-radius:18px;background:var(--panel);color:var(--ink);box-shadow:0 24px 70px #0000004d}.crop-head{display:flex;align-items:center;justify-content:space-between}.crop-head strong{font-size:16px}.crop-area{position:relative;width:100%;aspect-ratio:1;border-radius:12px;overflow:hidden;background:#0b130f}.crop-zoom{display:flex;align-items:center;gap:10px;color:var(--muted)}.crop-zoom input[type=range]{flex:1;min-width:0}.crop-hint{margin:0;text-align:center;color:var(--muted);font-size:12px}.crop-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.chat-link{color:#1971c2;text-decoration:underline;overflow-wrap:anywhere}.chat-link:hover{text-decoration:underline;opacity:.85}.sticker-row .sticker-bubble{display:grid;gap:2px;min-width:0}.sticker-row.mine .sticker-bubble{justify-items:end}.sticker-message{border:0;padding:0;background:transparent;line-height:0}.sticker-message img,.sticker-skel{width:128px;height:128px;max-width:42vw;object-fit:contain;display:block}.sticker-skel{border-radius:14px;background:#00000012}.sticker-row footer{display:flex;align-items:center;justify-content:flex-end;gap:6px;color:var(--muted);font-size:11px;margin-top:2px}.sticker-row footer button{border:0;background:transparent;color:inherit;padding:1px;display:grid;place-items:center}.sticker-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:end center;background:#08140e59}.sticker-modal{width:min(100%,560px);max-height:72dvh;overflow:auto;display:grid;gap:10px;padding:14px;border-radius:16px 16px 0 0;background:var(--panel);color:var(--ink);box-shadow:0 -12px 40px #0000002e}.sticker-modal-head{display:flex;align-items:center;justify-content:space-between}.sticker-modal-head strong{font-size:16px}.sticker-modal-head div{display:flex;align-items:center;gap:4px}.sticker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,96px));gap:10px;justify-content:center}.sticker-add{display:grid;place-items:center;gap:4px;aspect-ratio:1;border:1px dashed var(--line);border-radius:12px;background:transparent;color:var(--muted);font-size:12px}.sticker-cell{position:relative}.sticker-cell:before{content:"";display:block;padding-top:100%}.sticker-cell-btn{position:absolute;top:0;right:0;bottom:0;left:0;border:0;padding:6px;border-radius:12px;background:#f0f5f2;display:grid;place-items:center;overflow:hidden}.sticker-cell-btn img{width:100%;height:100%;object-fit:contain}.sticker-cell .sticker-skel{width:100%;height:100%;max-width:none}.sticker-remove{position:absolute;top:3px;right:3px;width:22px;height:22px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--danger);color:#fff;box-shadow:0 1px 5px #0000004d}.sticker-empty{text-align:center;padding:8px 0 4px}.reads-modal{text-align:left;gap:8px;max-height:min(80dvh,100%)}.reads-head{display:flex;align-items:center;justify-content:space-between}.reads-head h2{margin:0;font-size:17px}.reads-body{overflow-y:auto}.reads-section-label{display:flex;align-items:center;gap:6px;margin:8px 0 4px;font-size:13px;font-weight:700;color:var(--green)}.reads-section-label.muted{color:var(--muted)}.reader-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.reader-row{display:flex;align-items:center;gap:10px;padding:5px 2px}.reader-info{display:flex;flex-direction:column;gap:1px;min-width:0}.reader-info span{font-size:14px}.reader-reaction{margin-left:6px;font-size:15px;vertical-align:middle}.reader-time{font-size:11px;color:var(--muted)}.reads-divider{height:1px;background:#80808040;margin:10px 0}.reads-empty{margin:4px 0;color:var(--muted);font-size:13px}.sticker-collect{justify-items:center}.sticker-collect-preview{display:grid;place-items:center;width:100%;padding:2px 0 6px}.sticker-collect-preview img{width:100%;height:auto;max-height:70dvh;aspect-ratio:1;object-fit:contain}.deleted-text{color:var(--muted);font-style:italic}.bubble footer{display:flex;align-items:center;justify-content:flex-end;gap:6px;color:var(--muted);font-size:11px}.bubble footer button{border:0;background:transparent;color:inherit;padding:1px;display:grid;place-items:center}.bubble footer button svg,.sticker-row footer button svg{width:15.4px;height:15.4px}.edited-label{display:block;margin-top:2px;color:var(--muted);font-size:11px}.read-stack{position:relative;flex:1 1 auto;min-width:0;align-self:center;height:15px;padding:0;overflow:hidden}.read-stack-item{position:absolute;top:0}.read-avatar{display:grid;place-items:center;width:15px;height:15px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 1px var(--bubble);background:linear-gradient(135deg,#d7f6e5,#a9dec3);color:#0b5b3b;font-size:8px;font-weight:800;line-height:1}.read-avatar img{width:100%;height:100%;object-fit:cover}.read-stack-more{position:absolute;top:0;height:15px;display:grid;place-items:center;color:var(--muted);font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}.reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.reaction{display:inline-flex;align-items:center;gap:3px;padding:1px 7px 1px 5px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);font-size:13px;line-height:1.5}.reaction.mine{border-color:var(--green);background:var(--green-soft)}.reaction-emoji{font-size:14px}.reaction-count{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.reaction.mine .reaction-count{color:var(--green-dark)}.reply-quote{display:grid;gap:1px;width:100%;text-align:left;margin-bottom:5px;padding:4px 8px;border:0;border-left:3px solid var(--green);border-radius:6px;background:#20b26b1a;cursor:pointer}.reply-quote-author{font-size:12px;font-weight:600;color:var(--green-dark)}.reply-quote-text{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.reply-banner .reply-banner-icon{color:var(--green);display:flex;align-items:center}.bubble-attachments{display:grid;gap:6px;margin-bottom:6px}.bubble-attachments .message-media-thumb{margin-bottom:0}.message-media-thumb{position:relative;width:min(130px,100%);aspect-ratio:4 / 3;display:block;padding:0;border:0;border-radius:9px;overflow:hidden;margin-bottom:6px;background:#d9e8df;color:#fff}.message-media-thumb img{width:100%;height:100%;display:block;object-fit:cover}.message-media-placeholder{width:100%;height:100%;display:grid;place-items:center;color:var(--green-dark);background:#d9e8df}.message-media-kind{position:absolute;left:6px;bottom:6px;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#08140eb8;color:#fff;box-shadow:0 2px 8px #00000038}.message-media-kind.video{background:#08140eb8}.date-divider{display:flex;align-items:center;gap:10px;margin:14px 4px 10px;color:var(--muted);font-size:12px;font-weight:700;text-transform:capitalize}.date-divider:before,.date-divider:after{content:"";height:1px;flex:1;background:#15201b24}.date-divider span{max-width:82%;padding:4px 9px;border-radius:999px;background:#ffffffb8}.date-divider.compact{margin:8px 0 6px;font-size:10px}.date-divider.compact span{padding:3px 7px}.date-divider.unread-divider{color:var(--green-dark);scroll-margin-top:10px}.date-divider.unread-divider:before,.date-divider.unread-divider:after{background:#20b26b6b}.date-divider.unread-divider span{background:var(--green-soft);color:var(--green-dark);font-weight:800}.file-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid rgba(0,0,0,.08);border-radius:11px;padding:8px;background:#f8fbf9;color:inherit;text-align:left}.file-open-area{min-width:0;flex:1;display:flex;align-items:center;gap:9px;border:0;padding:0;background:transparent;color:inherit;text-align:left}.file-card span{min-width:0}.file-open-area>span:last-child{display:grid;gap:2px}.file-card strong{overflow-wrap:anywhere;word-break:break-word;white-space:normal;line-height:1.22}.file-card small,.muted{color:var(--muted)}.file-download-button{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:50%;background:#20b26b21;color:var(--green-dark)}.file-type-badge{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;border-radius:10px;color:#fff;font-size:11px;font-weight:900;letter-spacing:0}.file-type-badge.tone-red{background:#d84f4f}.file-type-badge.tone-blue{background:#3478d4}.file-type-badge.tone-green{background:#1f9d67}.file-type-badge.tone-orange{background:#d46f2c}.file-type-badge.tone-yellow{background:#c79a11;color:#201806}.file-type-badge.tone-violet{background:#7b5bd6}.file-type-badge.tone-slate{background:#586575}.file-type-badge.tone-gray{background:#69736d}.message-input{display:grid;grid-template-columns:36px 36px 1fr 42px;gap:6px;align-items:end;padding:4px 8px;background:#f8fbf9;border-top:1px solid var(--line)}.message-input.no-files{grid-template-columns:36px 1fr 42px}.message-input .icon-button{width:36px;height:36px}.message-input .send-button{width:42px;height:42px}.emoji-panel{grid-column:1 / -1;display:grid;grid-template-rows:auto 1fr auto;min-height:0;max-height:min(38dvh,300px);margin-bottom:4px;padding:6px 8px 2px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.emoji-panel .emoji-modal-head{margin-bottom:4px}.emoji-panel .emoji-modal-head strong{font-size:13px}.emoji-bar{grid-column:1 / -1;display:flex;align-items:center;gap:6px;padding:2px 2px 5px;min-width:0}.emoji-bar-add{flex:0 0 auto;width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--green-dark)}.emoji-bar-add.active{background:var(--green-soft);border-color:var(--green)}.emoji-bar-right{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.emoji-bar-track{position:relative;height:1px;border-radius:999px;background:#0000000f;visibility:hidden}.emoji-bar-track.visible{visibility:visible}.emoji-bar-thumb{position:absolute;top:0;height:100%;min-width:12px;border-radius:999px;background:var(--muted)}.emoji-bar-scroll{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:2px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;touch-action:pan-x}.emoji-bar-scroll::-webkit-scrollbar{display:none}.emoji-bar-item{flex:0 0 auto;border:0;background:transparent;border-radius:8px;padding:1px 4px;font-size:22px;line-height:1.25}.emoji-bar-item:hover{background:#0000000f}.emoji-anim{position:relative;flex:0 0 auto;display:flex;align-items:center}.emoji-anim-btn{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--green-dark)}.emoji-anim-btn.active{background:var(--green-soft);border-color:var(--green)}.emoji-anim-menu{position:absolute;right:0;bottom:calc(100% + 8px);display:grid;grid-template-columns:repeat(2,38px);gap:6px;padding:6px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 8px 24px #0000002e;transform-origin:bottom right;animation:animMenuIn .18s ease;z-index:30}.emoji-anim-item{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:11px;background:var(--green-soft);color:var(--green-dark);animation:animItemIn .3s ease backwards}.emoji-anim-item:hover{background:var(--green);color:#fff}.emoji-anim-menu .emoji-anim-item:nth-child(1){animation-delay:.03s}.emoji-anim-menu .emoji-anim-item:nth-child(2){animation-delay:.08s}.emoji-anim-menu .emoji-anim-item:nth-child(3){animation-delay:.13s}.emoji-anim-menu .emoji-anim-item:nth-child(4){animation-delay:.18s}.emoji-anim-menu .emoji-anim-item:nth-child(5){animation-delay:.23s}.emoji-anim-menu .emoji-anim-item:nth-child(6){animation-delay:.28s}.emoji-anim-menu .emoji-anim-item:nth-child(7){animation-delay:.33s}.emoji-anim-menu .emoji-anim-item:nth-child(8){animation-delay:.38s}.emoji-anim-menu .emoji-anim-item:nth-child(9){animation-delay:.43s}.emoji-anim-menu .emoji-anim-item:nth-child(10){animation-delay:.48s}@keyframes animMenuIn{0%{opacity:0;transform:translateY(10px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes animItemIn{0%{opacity:0;transform:translateY(16px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}.bubble-row.anim-bounce{animation:bubbleDrop 4.5s both;will-change:transform}@keyframes bubbleDrop{0%{transform:translateY(0);animation-timing-function:cubic-bezier(.5,0,.9,.4)}14%{transform:translateY(var(--drop, 0px));animation-timing-function:cubic-bezier(.1,.6,.5,1)}22%{transform:translateY(calc(var(--drop, 0px) * .5));animation-timing-function:cubic-bezier(.5,0,.9,.4)}29%{transform:translateY(var(--drop, 0px));animation-timing-function:cubic-bezier(.1,.6,.5,1)}33%{transform:translateY(calc(var(--drop, 0px) * .8));animation-timing-function:cubic-bezier(.5,0,.9,.4)}37%{transform:translateY(var(--drop, 0px))}75%{transform:translateY(var(--drop, 0px));animation-timing-function:cubic-bezier(.4,0,.2,1)}to{transform:translateY(0)}}.anim-burn{position:relative;z-index:1}.anim-burn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;z-index:2;background:radial-gradient(circle at 50% 120%,#3a1500,#000 70%);opacity:0;animation:burnChar 5s ease-in-out both;animation-delay:var(--burn-delay, 0ms)}.anim-burn:before{content:"";position:absolute;top:-26px;right:-6px;bottom:-10px;left:-6px;border-radius:inherit;pointer-events:none;z-index:3;background:radial-gradient(36% 62% at 20% 100%,rgba(255,244,190,.95),rgba(255,150,30,.75) 34%,rgba(210,40,0,.35) 62%,transparent 78%),radial-gradient(28% 80% at 40% 100%,rgba(255,255,220,1),rgba(255,170,30,.85) 32%,rgba(220,45,0,.4) 60%,transparent 80%),radial-gradient(32% 66% at 60% 100%,rgba(255,240,170,.95),rgba(255,150,25,.78) 33%,rgba(210,40,0,.35) 62%,transparent 79%),radial-gradient(28% 84% at 80% 100%,rgba(255,250,200,1),rgba(255,165,30,.82) 32%,rgba(215,45,0,.4) 60%,transparent 80%);background-repeat:no-repeat;filter:blur(3px) contrast(1.5);mix-blend-mode:screen;opacity:0;transform-origin:50% 100%;animation:burnFlames 5s ease-in-out both,burnFlicker .16s ease-in-out infinite alternate;animation-delay:var(--burn-delay, 0ms)}@keyframes burnChar{0%,20%{opacity:0}42%{opacity:.85}54%,86%{opacity:1}to{opacity:0}}@keyframes burnFlames{0%{opacity:0;transform:translateY(8px) scaleY(.35)}10%{opacity:1;transform:translateY(0) scaleY(1)}30%{opacity:1;transform:translateY(-3px) scaleY(1.2)}45%{opacity:1;transform:translateY(0) scaleY(.95)}55%{opacity:.85;transform:translateY(-2px) scaleY(1.12)}63%{opacity:0;transform:translateY(0) scaleY(.6)}to{opacity:0;transform:scaleY(.4)}}@keyframes burnFlicker{0%{filter:blur(3px) contrast(1.5) brightness(1)}to{filter:blur(4px) contrast(1.75) brightness(1.28)}}.bubble-row.anim-shake{animation:bubbleShake 1.5s both}@keyframes bubbleShake{0%{transform:translate(0) rotate(0)}10%{transform:translate(-7px,2px) rotate(-3.5deg)}20%{transform:translate(7px,-2px) rotate(3.5deg)}30%{transform:translate(-6px,1px) rotate(-2.8deg)}40%{transform:translate(6px,-1px) rotate(2.8deg)}50%{transform:translate(-4px,1px) rotate(-2deg)}60%{transform:translate(4px,-1px) rotate(2deg)}70%{transform:translate(-3px) rotate(-1.3deg)}80%{transform:translate(2px) rotate(.9deg)}90%{transform:translate(-1px) rotate(-.4deg)}to{transform:translate(0) rotate(0)}}.wind-streak{position:absolute;left:0;top:var(--y, 50%);width:var(--len, 24%);height:2px;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(170,190,210,.55),rgba(230,240,250,.75),transparent);filter:blur(.6px);opacity:0;transform:translate(-120%);animation:windSweep var(--dur, .8s) linear both}@keyframes windSweep{0%{transform:translate(-120%);opacity:0}12%{opacity:.9}88%{opacity:.9}to{transform:translate(560%);opacity:0}}.bubble-row.anim-wind{animation:bubbleWind 2.2s ease-in-out both;transform-origin:center bottom}@keyframes bubbleWind{0%{transform:translate(0) rotate(0) skew(0)}12%{transform:translate(10px) rotate(3deg) skew(-6deg)}24%{transform:translate(20px) rotate(6deg) skew(-9deg)}38%{transform:translate(6px) rotate(2deg) skew(-3deg)}50%{transform:translate(24px) rotate(7deg) skew(-10deg)}64%{transform:translate(8px) rotate(2.5deg) skew(-4deg)}78%{transform:translate(14px) rotate(4deg) skew(-6deg)}90%{transform:translate(3px) rotate(1deg) skew(-2deg)}to{transform:translate(0) rotate(0) skew(0)}}.water-body{position:absolute;left:0;bottom:0;width:100%;height:0;background:linear-gradient(to bottom,#38bdf866,#0a6eaf85);box-shadow:inset 0 8px 24px #ffffff2e;animation:waterRise 3.4s ease-in-out both}.water-surface{position:absolute;top:-13px;left:-10px;right:-10px;height:16px;background:radial-gradient(circle at 13px 16px,rgba(56,189,248,.5) 12px,transparent 13px) repeat-x;background-size:26px 16px;animation:waterWave 1s linear infinite}@keyframes waterWave{0%{background-position-x:0}to{background-position-x:26px}}@keyframes waterRise{0%{height:0}32%{height:80%}70%{height:80%}to{height:0}}.water-drop{position:absolute;bottom:0;left:var(--x, 50%);width:var(--s, 8px);height:var(--s, 8px);border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.9),rgba(200,240,255,.25) 70%,transparent);box-shadow:0 0 6px #ffffff80;opacity:0;animation:waterDrop 2.6s ease-in both}@keyframes waterDrop{0%{transform:translateY(0) scale(.5);opacity:0}18%{opacity:.85}to{transform:translateY(calc(-1 * var(--rise, 200px))) scale(1);opacity:0}}.anim-water{animation:bubbleWater 3.4s ease-in-out both}@keyframes bubbleWater{0%{transform:translateY(0) rotate(0) scale(1);box-shadow:0 0 #38bdf800}18%{transform:translateY(-7px) rotate(-2.4deg) scale(1.015);box-shadow:0 8px 26px #38bdf880,inset 0 0 40px #38bdf861}36%{transform:translateY(5px) rotate(2.4deg) scale(.99);box-shadow:0 8px 26px #38bdf880,inset 0 0 40px #38bdf861}54%{transform:translateY(-6px) rotate(-1.8deg) scale(1.01);box-shadow:0 6px 22px #38bdf875,inset 0 0 34px #38bdf852}72%{transform:translateY(4px) rotate(1.4deg) scale(1);box-shadow:0 5px 18px #38bdf857,inset 0 0 26px #38bdf838}to{transform:translateY(0) rotate(0) scale(1);box-shadow:0 0 #38bdf800}}.fx-layer{position:fixed;pointer-events:none;overflow:hidden;z-index:55}.asteroid{position:absolute;top:0;right:0;bottom:0;left:0}.asteroid-rock{position:absolute;top:0;left:var(--x, 50%);width:var(--size, 32px);height:var(--size, 32px);border-radius:50%;background:radial-gradient(circle at 35% 30%,#7a6152,#241812 72%);box-shadow:0 0 16px 5px #ff9632d9,0 0 42px 14px #ff500a80;transform:translate(-50%,-70px) scale(.55);animation:asteroidFall .95s cubic-bezier(.55,.05,.9,.55) both;animation-delay:var(--delay, 0ms)}.asteroid-rock:after{content:"";position:absolute;left:50%;bottom:45%;transform:translate(-50%);width:38%;height:380%;background:linear-gradient(to top,rgba(255,190,70,.95),rgba(255,90,10,.45) 45%,transparent);filter:blur(3px);border-radius:999px}.asteroid-fire,.asteroid-flame,.asteroid-shock,.asteroid-smoke,.asteroid-bit{position:absolute;left:var(--x, 50%);top:var(--fall, 80%);border-radius:50%;opacity:0;pointer-events:none}.asteroid-fire{width:calc(58px * var(--boom, 1));height:calc(58px * var(--boom, 1));transform:translate(-50%,-50%) scale(0);background:radial-gradient(circle,#fff 0%,#fff2b0 18%,#ffc042 38%,#ff8a1e 55%,#ff3d0a 72%,rgba(150,15,0,.5) 84%,transparent 92%);filter:blur(1px);animation:asteroidFire 1.15s ease-out both;animation-delay:calc(.84s + var(--delay, 0ms))}.asteroid-flame{width:calc(46px * var(--boom, 1));height:calc(80px * var(--boom, 1));border-radius:50% 50% 46% 46%;transform:translate(-50%,-100%) scaleY(0);transform-origin:50% 100%;background:radial-gradient(38% 60% at 30% 100%,rgba(255,240,170,.95),rgba(255,140,25,.8) 40%,transparent 72%),radial-gradient(30% 78% at 50% 100%,#fffbdc,rgba(255,160,30,.9) 34%,rgba(210,45,0,.45) 62%,transparent 82%),radial-gradient(38% 60% at 70% 100%,rgba(255,235,160,.95),rgba(255,130,20,.8) 40%,transparent 72%);filter:blur(2px) contrast(1.4);mix-blend-mode:screen;animation:asteroidFlame 1.05s ease-out both,burnFlicker .15s ease-in-out infinite alternate;animation-delay:calc(.85s + var(--delay, 0ms))}.asteroid-shock{width:calc(42px * var(--boom, 1));height:calc(42px * var(--boom, 1));transform:translate(-50%,-50%) scale(.2);border:3px solid rgba(255,190,90,.95);box-shadow:0 0 26px #ff781eb3,inset 0 0 12px #ffa03c99;animation:asteroidShock 1.05s cubic-bezier(.2,.7,.3,1) both;animation-delay:calc(.88s + var(--delay, 0ms))}.asteroid-smoke{width:calc(32px * var(--boom, 1));height:calc(32px * var(--boom, 1));transform:translate(-50%,-50%) scale(.3);background:radial-gradient(circle,rgba(70,60,55,.55),rgba(30,25,22,.35) 60%,transparent 75%);filter:blur(5px);animation:asteroidSmoke 1.7s ease-out both;animation-delay:calc(.95s + var(--delay, 0ms))}.asteroid-bit{width:6px;height:6px;background:radial-gradient(circle,#fff3b0,#ff7a1a 55%,#d33 90%);box-shadow:0 0 6px #ff8c28e6;transform:translate(-50%,-50%) scale(1);animation:asteroidBit .8s ease-out both;animation-delay:calc(.85s + var(--delay, 0ms))}@keyframes asteroidFall{0%{transform:translate(-50%,-70px) scale(.5);opacity:0}12%{opacity:1}90%{transform:translate(-50%,var(--fall, 80%)) scale(1);opacity:1}to{transform:translate(-50%,var(--fall, 80%)) scale(1);opacity:0}}@keyframes asteroidFire{0%{transform:translate(-50%,-50%) scale(0);opacity:0}12%{transform:translate(-50%,-50%) scale(1.55);opacity:1}45%{transform:translate(-50%,-50%) scale(1.15);opacity:.92}to{transform:translate(-50%,-58%) scale(2.1);opacity:0}}@keyframes asteroidFlame{0%{transform:translate(-50%,-100%) scaleY(0);opacity:0}16%{transform:translate(-50%,-100%) scaleY(1.15);opacity:1}45%{transform:translate(-50%,-100%) scaleY(.9);opacity:.95}70%{transform:translate(-50%,-100%) scaleY(1.05);opacity:.55}to{transform:translate(-50%,-100%) scaleY(.35);opacity:0}}@keyframes asteroidShock{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}12%{opacity:1}to{transform:translate(-50%,-50%) scale(5);opacity:0;border-width:1px}}@keyframes asteroidSmoke{0%{transform:translate(-50%,-50%) scale(.3);opacity:0}25%{opacity:.5}to{transform:translate(-50%,-95%) scale(2.5);opacity:0}}@keyframes asteroidBit{0%{transform:translate(-50%,-50%) scale(1.1);opacity:0}6%{opacity:1}70%{opacity:1}to{transform:translate(calc(-50% + var(--dx, 0px)),calc(-50% + var(--dy, 0px))) scale(.2);opacity:0}}.bubble-row.anim-quake{animation:bubbleQuake .7s both}@keyframes bubbleQuake{0%{transform:translate(0)}12%{transform:translateY(calc(7px * var(--quake, 1))) scale(1.015)}26%{transform:translate(calc(-5px * var(--quake, 1)),calc(-3px * var(--quake, 1)))}40%{transform:translate(calc(5px * var(--quake, 1)),calc(2px * var(--quake, 1)))}55%{transform:translate(calc(-4px * var(--quake, 1)),calc(-1px * var(--quake, 1)))}70%{transform:translate(calc(3px * var(--quake, 1)),calc(1px * var(--quake, 1)))}85%{transform:translate(calc(-2px * var(--quake, 1)))}to{transform:translate(0)}}.dice-scene{position:absolute;top:6%;width:62px;height:62px;margin-left:-31px;perspective:560px;animation:diceFall 1.9s cubic-bezier(.3,.7,.4,1) forwards,diceFade .4s ease 3.1s forwards}.dice{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(0) rotateY(0);transition:transform 1.9s cubic-bezier(.18,.6,.25,1)}.dice-face{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:7px;border-radius:12px;background:linear-gradient(145deg,#fff,#e4e4ea);border:1px solid rgba(0,0,0,.14);box-shadow:inset 0 0 10px #0000001a;backface-visibility:hidden}.dice-face .pip{place-self:center;width:10px;height:10px;border-radius:50%}.dice-face .pip.on{background:radial-gradient(circle at 35% 30%,#454549,#101014);box-shadow:inset 0 0 2px #00000080}.df-front{transform:rotateY(0) translateZ(31px)}.df-back{transform:rotateY(180deg) translateZ(31px)}.df-right{transform:rotateY(90deg) translateZ(31px)}.df-left{transform:rotateY(-90deg) translateZ(31px)}.df-top{transform:rotateX(90deg) translateZ(31px)}.df-bottom{transform:rotateX(-90deg) translateZ(31px)}@keyframes diceFall{0%{transform:translateY(-110px)}46%{transform:translateY(var(--rest, 60%));animation-timing-function:cubic-bezier(.25,.6,.4,1)}62%{transform:translateY(calc(var(--rest, 60%) - 34px))}76%{transform:translateY(var(--rest, 60%))}87%{transform:translateY(calc(var(--rest, 60%) - 11px))}to{transform:translateY(var(--rest, 60%))}}@keyframes diceFade{0%{opacity:1}to{opacity:0}}.coin-scene{position:absolute;left:50%;top:8%;width:74px;height:74px;margin-left:-37px;perspective:700px;animation:coinToss 2.25s cubic-bezier(.3,.7,.4,1) forwards,diceFade .5s ease 4.5s forwards}.coin{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(0);transition:transform 2.25s cubic-bezier(.15,.55,.25,1)}.coin-face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:13px;font-weight:800;letter-spacing:.5px;color:#7a5a12;background:radial-gradient(circle at 34% 28%,#fff3c4,#e8c25c 42%,#c8992f 70%,#a97c1e);border:3px solid #b98d26;box-shadow:inset 0 -3px 6px #00000047,inset 0 3px 6px #ffffff8c,0 4px 10px #0000004d;backface-visibility:hidden}.cf-heads{transform:translateZ(3px)}.cf-tails{transform:rotateX(180deg) translateZ(3px)}@keyframes coinToss{0%{transform:translateY(var(--rest, 60%))}38%{transform:translateY(calc(var(--rest, 60%) - 190px));animation-timing-function:cubic-bezier(.5,0,.7,.35)}76%{transform:translateY(var(--rest, 60%))}86%{transform:translateY(calc(var(--rest, 60%) - 22px))}94%{transform:translateY(var(--rest, 60%))}97%{transform:translateY(calc(var(--rest, 60%) - 6px))}to{transform:translateY(var(--rest, 60%))}}.coin-result{position:absolute;left:50%;top:26%;transform:translate(-50%);padding:8px 18px;border-radius:999px;background:#0f6f49f0;color:#fff;font-size:20px;font-weight:800;box-shadow:0 8px 22px #00000059;animation:raceWinner 3s ease both}.race-track{position:absolute;top:5%;right:0;bottom:5%;left:0;display:flex;flex-direction:column;background:linear-gradient(#c8965f,#ad7c49);box-shadow:inset 0 0 30px #00000040;animation:raceTrackIn .35s ease both}.race-lane{position:relative;flex:1;border-bottom:1px dashed rgba(255,255,255,.35)}.race-lane:last-child{border-bottom:0}.race-finish{position:absolute;right:34px;top:5%;bottom:5%;width:12px;background:repeating-conic-gradient(#fff 0,#fff 25%,#1a1a1a 0,#1a1a1a 50%) 0 0 / 12px 12px;box-shadow:0 0 8px #00000059;animation:raceTrackIn .35s ease both}.race-shot{position:absolute;left:3%;top:50%;width:44px;height:44px;margin-top:-22px;border-radius:50%;background:radial-gradient(circle,#fff,rgba(255,220,150,.75) 38%,transparent 70%);opacity:0;animation:raceShot .55s ease-out both}@keyframes raceShot{0%{opacity:0;transform:scale(.3)}12%{opacity:1;transform:scale(1.4)}to{opacity:0;transform:scale(2.3)}}@keyframes raceTrackIn{0%{opacity:0}to{opacity:1}}.horse{position:absolute;left:6px;bottom:1px;width:54px;height:38px;color:var(--c, #333);transform:translate(0);animation:horseRun var(--dur, 3.6s) cubic-bezier(.3,.55,.5,1) both;animation-delay:.18s}.horse:after{content:"";position:absolute;left:-8px;bottom:0;width:16px;height:8px;border-radius:50%;background:#ffffff61;filter:blur(2px);animation:horseDust var(--gallop, .28s) linear infinite}.horse.winner .horse-svg{filter:drop-shadow(0 0 6px var(--c, #fff))}.horse-svg{width:100%;height:100%;display:block;animation:horseBob var(--gallop, .28s) ease-in-out infinite}.horse-svg .leg{transform-box:fill-box;transform-origin:50% 0%}.horse-svg .horse-num{font-family:system-ui,-apple-system,Segoe UI,sans-serif}.horse-svg .leg-fl,.horse-svg .leg-br{animation:gallopA var(--gallop, .28s) linear infinite}.horse-svg .leg-fr,.horse-svg .leg-bl{animation:gallopB var(--gallop, .28s) linear infinite}@keyframes gallopA{0%{transform:rotate(-28deg)}50%{transform:rotate(26deg)}to{transform:rotate(-28deg)}}@keyframes gallopB{0%{transform:rotate(26deg)}50%{transform:rotate(-28deg)}to{transform:rotate(26deg)}}@keyframes horseBob{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}@keyframes horseDust{0%{opacity:.5;transform:translate(0) scale(.6)}to{opacity:0;transform:translate(-14px) scale(1.3)}}@keyframes horseRun{0%{transform:translate(0)}25%{transform:translate(calc(var(--xf, 200px) * var(--k1, .24)))}50%{transform:translate(calc(var(--xf, 200px) * var(--k2, .5)))}75%{transform:translate(calc(var(--xf, 200px) * var(--k3, .76)))}to{transform:translate(var(--xf, 200px))}}.firework{position:absolute}.firework i{position:absolute;left:0;top:0;width:5px;height:5px;border-radius:50%;background:var(--c, #fff);box-shadow:0 0 8px var(--c, #fff);opacity:0;animation:fireworkBurst 1.1s ease-out both;animation-delay:var(--d, 0ms)}@keyframes fireworkBurst{0%{transform:translate(0) scale(.4);opacity:0}10%{opacity:1}to{transform:translate(var(--dx, 0px),calc(var(--dy, 0px) + 16px)) scale(.9);opacity:0}}.race-winner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.6);padding:10px 20px;border-radius:14px;background:#000000bd;color:var(--c, #fff);font-weight:800;font-size:clamp(15px,4vw,26px);white-space:nowrap;text-shadow:0 0 12px var(--c, #fff);box-shadow:inset 0 0 0 2px var(--c, #fff),0 8px 30px #00000073;opacity:0;animation:raceWinner 3.6s ease both}@keyframes raceWinner{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}8%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}14%{transform:translate(-50%,-50%) scale(1)}90%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.95)}}.nuke-layer{animation:nukeLayerFade .8s ease 4s forwards}.nuke-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 72%,#fff,rgba(255,244,210,.7) 20%,rgba(255,210,150,.25) 42%,transparent 62%);opacity:0;animation:nukeFlash 1s ease-out both}.nuke-glow{position:absolute;left:50%;top:74%;width:46%;height:40%;transform:translate(-50%,-55%);border-radius:50%;background:radial-gradient(circle,rgba(255,150,50,.42),transparent 66%);filter:blur(10px);opacity:0;animation:nukeGlow 3.2s ease-out both}.nuke-ring{position:absolute;left:50%;top:74%;width:18%;height:6%;transform:translate(-50%,-50%) scale(.3);border-radius:50%;border:3px solid rgba(255,220,150,.85);box-shadow:0 0 20px #ff963c99;opacity:0;animation:nukeRing 1.7s ease-out both;animation-delay:.05s}.nuke-dust{position:absolute;left:50%;top:74%;width:22%;height:7%;transform:translate(-50%,-30%) scale(.4);border-radius:50%;background:radial-gradient(ellipse at 50% 40%,rgba(180,162,140,.55),rgba(150,130,110,.3) 55%,transparent 75%);filter:blur(3px);opacity:0;animation:nukeDust 1.9s ease-out both;animation-delay:.1s}.nuke-ball{position:absolute;left:50%;top:74%;width:15%;aspect-ratio:1;transform:translate(-50%,-50%) scale(0);border-radius:50%;background:radial-gradient(circle at 50% 45%,#fff 0%,#ffe789 20%,#ffb03a 42%,#ff6a1a 62%,#e0350a 78%,transparent 88%);filter:blur(2px);opacity:0;animation:nukeBall 1.9s ease-out both}.nuke-stem{position:absolute;left:50%;bottom:26%;width:11%;height:0;transform:translate(-50%);clip-path:polygon(33% 100%,67% 100%,90% 0%,10% 0%);background:linear-gradient(to top,#78583ab3,#cd7837d1 45%,#ffbe64e6);box-shadow:inset 0 0 12px #ffaa468c;filter:blur(1.5px);opacity:0;animation:nukeStem 2.6s ease-out both;animation-delay:.22s}.nuke-collar{position:absolute;left:50%;top:34%;width:44px;height:20px;margin-left:-22px;border-radius:50%;background:radial-gradient(ellipse at 50% 40%,#ddcbb4,rgba(190,150,110,.6) 60%,transparent 78%);filter:blur(2px);opacity:0;animation:nukeCollar 2.7s ease-out both;animation-delay:.5s}.nuke-cap{position:absolute;left:50%;top:34%;width:46px;height:32px;border-radius:50%;background:radial-gradient(circle at 50% 38%,#ecdfcc,#cdbba4 75%);box-shadow:-20px 5px 0 -1px #d9c8b2,20px 5px 0 -1px #d9c8b2,-35px 9px 0 -5px #cfbda6,35px 9px 0 -5px #cfbda6,-11px -8px 0 -2px #ece0cf,13px -7px 0 -3px #ece0cf,0 -13px 0 -3px #f1e7d7,0 13px 16px -3px #ff78288c;transform:translate(-50%,34%) scale(.22);transform-origin:50% 100%;opacity:0;animation:nukeCap 2.9s ease-out both;animation-delay:.55s}@keyframes nukeFlash{0%{opacity:0}5%{opacity:1}22%{opacity:.5}60%{opacity:.12}to{opacity:0}}@keyframes nukeGlow{0%{opacity:0}12%{opacity:.9}60%{opacity:.5}to{opacity:0}}@keyframes nukeRing{0%{transform:translate(-50%,-50%) scale(.3);opacity:0}12%{opacity:1}to{transform:translate(-50%,-50%) scale(7);opacity:0;border-width:1px}}@keyframes nukeDust{0%{transform:translate(-50%,-30%) scale(.4);opacity:0}20%{opacity:.8}to{transform:translate(-50%,-30%) scale(3.4);opacity:0}}@keyframes nukeBall{0%{transform:translate(-50%,-50%) scale(0);opacity:0}8%{transform:translate(-50%,-50%) scale(1.3);opacity:1}35%{transform:translate(-50%,-80%) scale(1.5);opacity:1}70%{transform:translate(-50%,-150%) scale(1.15);opacity:.6}to{transform:translate(-50%,-210%) scale(.7);opacity:0}}@keyframes nukeStem{0%{height:0;opacity:0}12%{opacity:1}50%{height:40%}to{height:48%;opacity:.92}}@keyframes nukeCollar{0%{transform:scale(.2);opacity:0}30%{opacity:.9}to{transform:translateY(-10px) scale(2.6);opacity:.5}}@keyframes nukeCap{0%{transform:translate(-50%,34%) scale(.22);opacity:0}22%{opacity:1}to{transform:translate(-50%,-70%) scale(3.1);opacity:.95}}@keyframes nukeLayerFade{0%{opacity:1}to{opacity:0}}.bubble.anim-event .anim-event-body{display:flex;align-items:center;gap:8px;font-size:14px}.anim-event-icon{display:inline-flex;opacity:.85}@media(prefers-reduced-motion:reduce){.bubble-row.anim-bounce,.bubble-row.anim-shake,.bubble-row.anim-wind,.bubble-row.anim-quake,.anim-water,.anim-burn:before,.anim-burn:after,.water-body,.water-surface,.water-drop,.wind-streak,.asteroid-rock,.asteroid-fire,.asteroid-flame,.asteroid-shock,.asteroid-smoke,.asteroid-bit,.dice-scene,.coin-scene,.nuke-flash,.nuke-glow,.nuke-ring,.nuke-dust,.nuke-ball,.nuke-stem,.nuke-collar,.nuke-cap,.race-shot,.horse,.horse:after,.horse-svg,.horse-svg .leg,.firework i{animation-duration:.01ms}.race-winner{animation-duration:3.6s}.coin-result{animation-duration:3s}}.editing-banner{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-left:4px solid var(--green);border-radius:10px;background:#20b26b1c}.editing-banner span{min-width:0;display:grid;gap:2px}.editing-banner strong{font-size:13px}.editing-banner small{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted);font-size:12px}.message-input textarea{resize:none;min-height:42px;max-height:calc(13.5em + 24px);border-radius:21px;font-size:13px;line-height:1.35;overflow-y:auto}.composer-textarea-wrap{position:relative;display:flex}.composer-textarea-wrap textarea{width:100%}.composer-textarea-wrap.has-lock textarea{padding-right:40px}.composer-lock{position:absolute;right:6px;bottom:6px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer}.composer-lock:hover{background:#0000000f}.composer-lock.active{background:var(--green-dark);color:#fff}.encrypted-reveal{display:flex;align-items:center;gap:9px;width:100%;margin:2px 0;padding:10px 12px;border:1px dashed var(--line);border-radius:12px;background:#00000008;color:var(--text);cursor:pointer;text-align:left}.encrypted-reveal:hover{background:#0000000f}.encrypted-reveal-icon{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:50%;background:var(--green-dark);color:#fff;flex-shrink:0}.encrypted-reveal-text{font-size:13px;color:var(--muted)}.encrypted-modal{position:relative}.encrypted-modal-close{position:absolute;top:8px;right:8px}.lock-screen-icon{display:inline-flex;width:60px;height:60px;align-items:center;justify-content:center;border-radius:50%;background:var(--green-dark);color:#fff;margin-bottom:4px}.recording-bar{grid-column:1 / -1;display:flex;align-items:center;gap:10px;padding:2px}.recording-wave{flex:1;min-width:0;display:flex;align-items:center;gap:2px;height:30px}.rec-bar{flex:1;min-width:2px;border-radius:2px;background:var(--green)}.recording-time{font-variant-numeric:tabular-nums;font-weight:800;color:var(--ink)}.recording-dot{width:12px;height:12px;border-radius:50%;background:var(--danger);animation:recPulse 1s ease-in-out infinite}@keyframes recPulse{0%,to{opacity:1}50%{opacity:.25}}.voice-message{display:flex;align-items:center;gap:10px;width:100%;min-width:224px}.voice-play{flex:0 0 auto;width:38px;height:38px;border:0;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center}.voice-play:disabled{opacity:.6}.voice-wave{flex:1;min-width:0;display:flex;align-items:center;gap:2px;height:36px;cursor:pointer}.voice-bar{flex:1;min-width:2px;border-radius:2px;background:#00000038;transition:background .12s}.voice-bar.played{background:var(--green-dark)}.voice-time{flex:0 0 auto;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.attachment-tray{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px;padding:2px 2px 6px}.attachment-chip{position:relative;width:58px;height:58px;flex:0 0 auto;border-radius:11px;overflow:hidden;background:#edf4ef;display:grid;place-items:center}.attachment-chip img{width:100%;height:100%;object-fit:cover}.attachment-chip-icon{color:var(--green-dark);display:grid;place-items:center}.attachment-chip .file-type-badge{width:100%;height:100%;border-radius:11px;font-size:12px}.attachment-remove{position:absolute;top:3px;left:3px;z-index:2;width:21px;height:21px;display:grid;place-items:center;border:0;border-radius:50%;background:#08140ebd;color:#fff;box-shadow:0 1px 5px #00000059}.composer-area{display:grid;position:relative;background:#f8fbf9;border-top:1px solid var(--line)}.composer-area .message-input{border-top:0}.jump-down-btn{position:absolute;bottom:100%;right:14px;margin-bottom:12px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#fff;color:var(--green-dark);box-shadow:0 3px 12px #00000038;cursor:pointer;z-index:5;animation:jumpDownIn .16s ease-out}.jump-down-btn:hover{background:#f0f5f2}@keyframes jumpDownIn{0%{opacity:0;transform:translateY(8px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.typing-indicator{padding:7px 14px 0;color:var(--green-dark);font-size:13px;font-weight:700}.upload-progress-stack{display:grid;gap:8px;padding:8px 10px 0}.upload-progress-bubble{max-width:min(82%,460px);display:grid;grid-template-columns:48px 1fr 32px;gap:10px;align-items:center;padding:8px;border-radius:12px;background:var(--green-soft);box-shadow:0 1px 2px #00000014;justify-self:end}.upload-thumb{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;overflow:hidden;background:#ffffffa6;color:var(--green-dark)}.upload-thumb img{width:100%;height:100%;object-fit:cover}.upload-info{min-width:0;display:grid;gap:4px}.upload-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.upload-info span{color:var(--muted);font-size:12px}.upload-bar{height:5px;border-radius:999px;background:#0000001f;overflow:hidden}.upload-bar i{display:block;height:100%;border-radius:inherit;background:var(--green);transition:width .18s ease}.upload-cancel{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:50%;background:#00000014;color:var(--ink)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:end center;background:#08140e59}.modal-panel{width:min(100%,560px);max-height:86dvh;overflow:auto;padding:16px;border-radius:16px 16px 0 0;background:#fff;box-shadow:0 -12px 40px #0000002e}.modal-panel.tall{min-height:62dvh}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.modal-head h2{margin:0;font-size:18px}.stack{display:grid;gap:12px}.tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:10px}.tabs button{border:0;border-radius:999px;padding:9px 12px;background:#edf4ef;color:var(--muted);white-space:nowrap}.tabs .active{background:var(--green);color:#fff}.member-row{display:grid;grid-template-columns:36px 1fr 40px 40px;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line)}.member-row span{min-width:0;display:grid}.member-row span strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.media-thumb{position:relative;aspect-ratio:1;border:0;padding:0;border-radius:9px;overflow:hidden;background:#e6eee8}.media-thumb img,.media-thumb video{width:100%;height:100%;object-fit:cover}.media-thumb-video{position:absolute;left:6px;bottom:6px;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#20b26beb;color:#fff;box-shadow:0 2px 8px #00000038}.media-list,.search-results{display:grid;gap:8px}.resource-row{position:relative;display:grid;gap:4px}.resource-audio-line{display:flex;align-items:center;gap:8px}.resource-audio-line .voice-message{flex:1;min-width:0}.resource-audio-download{flex:0 0 auto;width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;background:#08140ebd;color:#fff;box-shadow:0 2px 8px #00000038}.resource-row .file-download-button{width:40px;height:40px;background:#08140ebd;color:#fff;box-shadow:0 2px 8px #00000038}.media-thumb-download{position:absolute;top:6px;right:6px;z-index:2;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#08140ebd;color:#fff;cursor:pointer;box-shadow:0 2px 8px #00000038}.resource-author{justify-self:start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 8px;border-radius:999px;background:#00000014;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.2px}.resource-author.overlay{position:absolute;left:5px;bottom:5px;z-index:1;max-width:calc(100% - 10px);background:#08140ebd;color:#fff}.media-grouped{display:grid;gap:14px;max-width:780px;margin:0 auto}.media-date-group{display:grid;gap:8px}.search-results button{border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;padding:10px 0;display:grid;gap:3px}.search-results span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.search-results small{color:var(--muted)}.search-popover-backdrop{position:fixed;inset:calc(52px + env(safe-area-inset-top)) 0 auto 0;z-index:45;display:grid;justify-items:center;pointer-events:none}.search-popover{width:min(calc(100% - 20px),520px);max-height:min(58dvh,520px);display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:14px;background:#fffffffa;box-shadow:0 12px 36px #0000002e;pointer-events:auto}.search-popover-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.search-popover-head h2{margin:0;font-size:15px}.search-popover input{min-height:38px;padding:9px 11px;border-radius:10px;font-size:16px}.search-popover .search-results{max-height:42dvh;overflow:auto;gap:0}.search-popover .search-results button{padding:7px 0;font-size:12px}.search-result-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.search-result-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-head time{flex:0 0 auto;color:var(--muted);font-size:11px;font-weight:600}.empty-state{padding:32px 18px;text-align:center;color:var(--muted)}.loading-pill{width:max-content;margin:0 auto 10px;padding:6px 10px;border-radius:999px;background:#fffc;color:var(--muted);font-size:12px}.toast-error{position:fixed;left:12px;right:12px;bottom:76px;z-index:40;padding:10px 12px;border-radius:10px;background:#fff;box-shadow:0 6px 20px #00000029;cursor:pointer;animation:toastIn .18s ease-out}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.copy-tooltip{position:fixed;top:calc(60px + env(safe-area-inset-top));left:50%;z-index:95;transform:translate(-50%);padding:9px 13px;border-radius:999px;background:#08140ee6;color:#fff;font-size:13px;font-weight:800;box-shadow:0 12px 34px #00000038;animation:copyTooltipIn .18s ease-out}@keyframes copyTooltipIn{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.confirm-modal-backdrop{position:fixed;top:var(--app-offset-top, 0px);left:0;right:0;bottom:auto;height:var(--app-height, 100dvh);z-index:105;display:grid;place-items:center;padding:18px;background:#08140e61}.confirm-modal{width:min(100%,360px);display:grid;gap:11px;padding:16px;border-radius:16px;background:var(--panel);color:var(--ink);box-shadow:0 20px 70px #0000003d}.confirm-modal header{display:flex;align-items:center;justify-content:space-between}.confirm-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#d944441f;color:var(--danger)}.confirm-modal h2{margin:0;font-size:19px}.confirm-modal p{margin:0;color:var(--muted);line-height:1.35;overflow-wrap:anywhere;word-break:break-word}.confirm-modal blockquote{max-height:84px;overflow:auto;margin:0;padding:10px;border-left:4px solid var(--line);border-radius:10px;background:#f8fbf9;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.install-cta{display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 12px;flex:0 0 auto;border:0;border-radius:999px;background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;font-weight:720;font-size:13px;white-space:nowrap;cursor:pointer;box-shadow:0 0 #20b26b8c;animation:installPulse 2.1s ease-out infinite}.install-cta:active{transform:scale(.96)}@keyframes installPulse{0%{box-shadow:0 0 #20b26b8c}70%{box-shadow:0 0 0 11px #20b26b00}to{box-shadow:0 0 #20b26b00}}@media(prefers-reduced-motion:reduce){.install-cta{animation:none}}.install-modal .install-hero-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#20b26b24;color:var(--green-dark)}.install-modal .wide-button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.install-actions{display:grid;margin-top:4px}.install-steps{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:12px}.install-step{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px}.install-step-num{width:24px;height:24px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font-weight:800;font-size:13px}.install-step-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#eef7f2;color:var(--green-dark)}.install-step-text{font-size:14px;line-height:1.35;color:var(--ink)}.install-note{font-size:13px;color:var(--muted);line-height:1.35;padding-top:4px;border-top:1px solid var(--line)}.install-benefits{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:9px}.install-benefits li{display:flex;align-items:center;gap:10px;font-size:14px;line-height:1.3;color:var(--ink)}.install-b-icon{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;border-radius:9px;background:#eef7f2;color:var(--green-dark)}.install-modal .install-lead{margin:2px 0 0;font-weight:600;color:var(--ink)}.install-after{display:flex;align-items:flex-start;gap:8px;margin:0;font-size:13px;line-height:1.35;color:var(--muted);padding-top:10px;border-top:1px solid var(--line)}.install-after svg{flex:0 0 auto;margin-top:1px;color:var(--green-dark)}.copy-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;pointer-events:none;background:#08140e42}.copy-modal-backdrop.interactive{pointer-events:auto}.copy-modal{width:min(88vw,340px);display:grid;justify-items:center;gap:10px;padding:18px;border-radius:16px;background:#fffffff5;box-shadow:0 18px 60px #00000038;text-align:center}.copy-modal-icon{position:relative;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff}.copy-modal-icon i{position:absolute;right:-2px;bottom:-2px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#0b5b3b}.copy-modal small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.copy-qr{width:210px;height:210px;display:grid;place-items:center;padding:10px;border:1px solid var(--line);border-radius:14px;background:#fff}.copy-qr img{width:100%;height:100%;display:block}.copy-qr span{width:100%;height:100%;border-radius:8px;background:#edf4ef}.wide-button.compact{width:100%;min-height:40px;margin-top:4px}.media-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;overflow:hidden;background:#050806;color:#fff}.media-viewer-header{position:relative;flex:0 0 auto;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(8px,env(safe-area-inset-top)) 12px 8px;background:#050806eb;border-bottom:1px solid rgba(255,255,255,.1)}.media-viewer-header nav{flex:0 0 auto;display:flex;align-items:center;gap:6px}.media-viewer-header span{min-width:0;display:flex;align-items:center;gap:8px}.media-viewer-header strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.media-viewer-header .icon-button{color:#fff}.media-viewer-body{flex:1 1 auto;min-height:0;display:grid;place-items:center;padding:10px;overflow:hidden}.media-viewer-body img,.media-viewer-body video{max-width:100%;max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);object-fit:contain}.media-viewer-body video{width:min(100%,1100px)}.media-viewer-loading{color:#ffffffb8;font-size:14px}.account-panel{width:min(100%,560px);margin:0 auto;display:grid;gap:16px}.account-hero{display:grid;justify-items:center;gap:6px;padding:10px 0 18px;border-bottom:1px solid var(--line)}.account-hero small{color:var(--muted)}.account-logout{display:inline-flex;align-items:center;justify-content:center;gap:8px}.profile-image-button,.room-image-button{position:relative;border:0;padding:0;border-radius:26%;background:transparent}.profile-image-button>span,.room-image-button>span{position:absolute;right:0;bottom:0;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;box-shadow:0 2px 8px #00000038}.room-options-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;grid-template-rows:calc(60px + env(safe-area-inset-top)) auto 1fr;background:var(--panel);color:var(--ink)}.room-options-screen.account-options-screen{grid-template-rows:calc(60px + env(safe-area-inset-top)) 1fr}.room-options-header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;border-bottom:1px solid var(--line);background:#f8fbf9}.room-options-header h2{margin:0;text-align:center;font-size:16px}.room-options-hero{display:grid;justify-items:center;gap:6px;padding:18px 16px;background:linear-gradient(180deg,#f8fbf9,var(--panel))}.room-options-hero strong{font-size:20px;max-width:100%;text-align:center;overflow-wrap:anywhere}.room-options-hero small{max-width:100%;text-align:center;overflow-wrap:anywhere;color:var(--muted)}.room-mute{width:100%;max-width:420px;margin-top:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.room-mute-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px}.room-mute-label{display:flex;align-items:center;gap:10px;min-width:0;color:var(--ink)}.room-mute-label>span{display:grid;gap:1px;min-width:0}.room-mute-label strong{font-size:14px}.room-mute-label small{color:var(--muted);font-size:12px}.ui-switch{flex:none;width:44px;height:26px;border-radius:999px;border:0;padding:0;background:var(--line);cursor:pointer;transition:background .18s ease}.ui-switch.on{background:var(--green)}.ui-switch-knob{display:block;width:20px;height:20px;margin:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:transform .18s ease}.ui-switch.on .ui-switch-knob{transform:translate(18px)}.mute-options{display:flex;flex-wrap:wrap;gap:8px;padding:0 12px 12px}.mute-options button{flex:1 1 auto;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer}.mute-options button:hover{border-color:var(--green);color:var(--green-dark)}.mute-options button:disabled{opacity:.6;cursor:default}.options-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:5px;padding:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.options-tabs button{min-width:0;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;border-radius:12px;padding:6px 2px;background:#edf4ef;color:var(--muted);font-size:10px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.options-tabs button svg{flex:0 0 auto}.options-tabs .active{background:var(--green);color:#fff}.room-options-body{min-height:0;overflow:auto;padding:14px}.readonly-room-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8fbf9}.readonly-room-card span{display:grid;gap:3px}.readonly-room-card small{color:var(--muted)}.settings-grid{display:grid;gap:14px;max-width:720px;margin:0 auto}.config-layout{display:grid;grid-template-columns:220px 1fr;gap:18px;align-items:start;max-width:960px;margin:0 auto}.config-left{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;position:sticky;top:0}.config-left .config-room-name{font-size:17px;overflow-wrap:anywhere}.config-left small{color:var(--muted);overflow-wrap:anywhere}.config-right{max-width:none;margin:0;gap:10px}.room-image-button.large{width:140px;height:140px}.config-right .settings-card{gap:8px;padding:12px}.config-right .settings-card h3{font-size:15px;display:flex;align-items:center;gap:6px}.config-right .settings-card small{text-align:left}.settings-card .stat-value{font-size:28px;font-weight:800;color:var(--green-dark);line-height:1}.config-right .pin-grid{grid-template-columns:repeat(4,38px);gap:7px;justify-content:flex-start}.config-right .pin-grid input{height:40px;font-size:18px;border-radius:9px}@media(max-width:640px){.config-layout{grid-template-columns:1fr}.config-left{position:static}}.settings-card{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8fbf9}.settings-card h3{margin:0;font-size:17px}.settings-card .wide-button,.settings-card .outline-button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.current-pin{margin:0;color:var(--muted)}.current-pin strong{color:var(--ink);font-size:18px;letter-spacing:3px}.settings-card small{color:var(--muted);text-align:center}.split-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.outline-button{min-height:46px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);font-weight:760}.outline-button.danger{color:var(--danger);border-color:#d9444459}.members-list{max-width:780px;margin:0 auto;display:grid;gap:8px}.members-list .member-row{grid-template-columns:40px 1fr auto 42px 42px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink);box-shadow:0 1px #00000008}.members-list.readonly .member-row{grid-template-columns:40px 1fr}.member-action-spacer{width:42px;height:42px}.labeled-switch{display:inline-flex;flex-direction:column;align-items:center;gap:3px;align-self:center}.labeled-switch>small{font-size:9px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);line-height:1;white-space:nowrap}.settings-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-switch-label{display:flex;align-items:flex-start;gap:10px;min-width:0;color:var(--ink)}.settings-switch-label>svg{flex:0 0 auto;margin-top:2px;color:var(--muted)}.settings-switch-label>span{display:grid;gap:2px;min-width:0}.settings-switch-label strong{font-size:14px}.settings-switch-label small{color:var(--muted);font-size:12px;line-height:1.35}.composer-locked{padding:14px 16px calc(14px + env(safe-area-inset-bottom));text-align:center;font-size:13px;color:var(--muted);background:var(--panel);border-top:1px solid var(--line)}.call-banner{position:fixed;top:calc(52px + env(safe-area-inset-top) + var(--app-offset-top, 0px));left:50%;transform:translate(-50%);z-index:45;width:min(calc(100% - 20px),520px);margin-top:8px;border:0;border-radius:999px;padding:10px 16px;background:var(--green);color:#fff;font-weight:800;box-shadow:0 10px 28px #00000038;animation:recPulse 1.6s ease-in-out infinite}.call-view{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:grid;grid-template-rows:1fr auto;background:#060b08;color:#fff}.call-stage{position:relative;overflow:hidden;min-height:0}.call-grid{display:grid;gap:6px;padding:calc(8px + env(safe-area-inset-top)) 8px 8px;width:100%;height:100%}.call-grid .call-tile{aspect-ratio:auto;max-height:none;width:100%;height:100%;min-width:0;min-height:0;background:transparent}.call-waiting{position:absolute;top:12px;left:50%;transform:translate(-50%);padding:6px 14px;border-radius:999px;background:#060b08b3;color:#ffffffd9;font-size:12px;font-weight:700}.call-empty{display:grid;place-items:center;height:100%;padding:20px;text-align:center;color:#ffffffb8;font-weight:700}.call-self{position:absolute;right:12px;bottom:12px;z-index:3;width:104px;height:148px;border-radius:14px;overflow:hidden;border:2px solid rgba(255,255,255,.3);box-shadow:0 8px 24px #0006}.call-self.top-left{left:12px;top:12px;right:auto;bottom:auto}.call-self.call-self-top-right{right:12px;top:calc(12px + env(safe-area-inset-top));left:auto;bottom:auto}.call-solo{width:100%;height:100%;padding:calc(8px + env(safe-area-inset-top)) 8px 8px}.call-solo .call-tile{aspect-ratio:auto;max-height:none;width:100%;height:100%;min-width:0;min-height:0;background:transparent}.call-solo .call-tile video{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}@media(hover:hover)and (pointer:fine){.call-solo .call-tile video{object-fit:contain}}.call-self .call-tile{aspect-ratio:auto;max-height:none;width:100%;height:100%;border-radius:0}.call-self .call-tile-avatar{width:52px;height:52px;font-size:22px}.call-self .call-tile-label{display:none}.call-tile{position:relative;aspect-ratio:3 / 4;max-height:70dvh;border-radius:14px;overflow:hidden;background:#10201a;display:flex;align-items:center;justify-content:center}.call-tile video{width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;background:transparent}.call-tile video.hidden-video{display:none}.call-tile-avatar{width:84px;height:84px;display:grid;place-items:center;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#1f9d67,#0b5b3b);color:#fff;font-size:34px;font-weight:800}.call-tile-avatar img{width:100%;height:100%;object-fit:cover}.call-tile-label{position:absolute;left:8px;bottom:8px;display:flex;align-items:center;gap:6px;max-width:calc(100% - 16px);padding:3px 9px;border-radius:999px;background:#060b08a8;font-size:12px;font-weight:700}.call-tile-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-tile-center{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;pointer-events:none}.call-tile-status{display:flex;gap:6px}.call-status-icon{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#060b08a8;color:#fff}.call-self .call-status-icon{width:20px;height:20px}.call-self .call-tile-center{gap:6px}.call-controls{display:flex;justify-content:center;gap:16px;padding:16px 16px calc(20px + env(safe-area-inset-bottom));background:#060b08e6}.call-btn{width:56px;height:56px;display:grid;place-items:center;border:0;border-radius:50%;background:#ffffff29;color:#fff}.call-btn.off{background:#fff6;color:#10201a}.call-btn.hangup{background:var(--danger)}.call-btn.accept{background:var(--green)}.incoming-call-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:130;display:grid;place-items:center;padding:20px;background:#060b0899}.incoming-call{width:min(100%,340px);display:grid;justify-items:center;gap:8px;padding:26px 20px;border-radius:20px;background:var(--panel);color:var(--ink);box-shadow:0 24px 70px #0000004d;text-align:center}.incoming-call-icon{width:66px;height:66px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;animation:recPulse 1.3s ease-in-out infinite}.incoming-call strong{font-size:20px}.incoming-call small{color:var(--muted)}.incoming-call-actions{display:flex;gap:40px;margin-top:12px}@media(min-width:760px){.mobile-shell{padding:0}.screen,.chat-screen{border-radius:14px;overflow:hidden;box-shadow:0 18px 60px #00000029}.modal-backdrop{place-items:center}.modal-panel{border-radius:14px}.room-options-screen{top:0;right:0;bottom:0;left:0;border-radius:0;overflow:hidden;box-shadow:none}}.emoji-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:16px;background:#08140e59}.emoji-modal{width:min(100%,480px);display:grid;grid-template-rows:auto 1fr auto;max-height:min(60dvh,420px);padding:12px 12px 6px;border-radius:16px;background:var(--panel);color:var(--ink);box-shadow:0 20px 60px #00000047}.emoji-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.emoji-modal-head strong{font-size:15px}.emoji-grid{min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:2px;padding-bottom:6px;-webkit-overflow-scrolling:touch}.emoji-cell{border:0;background:transparent;border-radius:10px;padding:4px 0;font-size:25px;line-height:1.15;display:grid;place-items:center}.emoji-cell:hover{background:#0000000f}.emoji-cell.selected{background:var(--green-soft)}.emoji-tabs{display:flex;gap:2px;padding-top:6px;margin-top:4px;border-top:1px solid var(--line);overflow-x:auto;-webkit-overflow-scrolling:touch}.emoji-tab{flex:1 0 auto;min-width:40px;border:0;background:transparent;border-radius:10px;padding:7px 0;font-size:19px;display:grid;place-items:center;opacity:.6}.emoji-tab.active{opacity:1;background:#0000000f}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--ink: #eaf4ee;--muted: #aab8b0;--line: #26382e;--panel: #111c16;--bg: #0b130f;--bubble: #1b2922;--green-soft: #154d34}body{background:#07100b}.home-header,.chat-header,.message-input,.modal-panel,input,textarea,.room-row,.search-results button,.search-popover,.room-search{background:#111c16}.room-search input{background:transparent}.room-badge.date,.room-badge.pin,.room-badge.muted{background:#ffffff1a}.settings-card .stat-value{color:#d8fdd2}.composer-area,.room-options-header,.settings-card,.readonly-room-card,.options-tabs button,.members-list .member-row,.file-card,.confirm-modal blockquote{background:#111c16}.attachment-chip,.sticker-cell-btn{background:#1b2922}.voice-bar{background:#ffffff3d}.voice-bar.played{background:#48d597}.resource-author{background:#ffffff1f}.resource-author.overlay{background:#08140ecc}.room-options-hero{background:linear-gradient(180deg,#111c16,var(--panel))}.copy-modal{background:#111c16f5}.messages{background:#0d1712}.jump-down-btn{background:#233a30;color:#d8fdd2}.jump-down-btn:hover{background:#2c4a3c}.config-left,.config-right .settings-card{background:#111c16}.composer-lock:hover{background:#ffffff14}.encrypted-reveal{background:#ffffff0a;border-color:#24382e}.encrypted-reveal:hover{background:#ffffff14}.login-screen,.loading-screen{background:#0b130f}.date-divider:before,.date-divider:after{background:#eaf4ee29}.date-divider span{background:#111c16db}.date-divider.unread-divider span{background:#154d34;color:#d8fdd2}.chat-link{color:#74c0fc}.reaction{background:#1b2922}.reaction.mine{background:#154d34}.reaction.mine .reaction-count{color:#d8fdd2}.reply-quote{background:#48d5971f}.room-mute,.mute-options button{background:#111c16}.ui-switch{background:#34493d}.ui-switch.on{background:var(--green)}.install-step-icon,.install-b-icon{background:#17281f;color:#48d597}.install-modal .install-hero-icon,.install-after svg{color:#48d597}.emoji-cell:hover,.emoji-tab.active{background:#ffffff17}.emoji-cell.selected{background:#154d34}.emoji-bar-add{background:#111c16}.emoji-bar-add.active{background:#154d34}.emoji-panel{background:#111c16}.emoji-bar-item:hover{background:#ffffff17}.emoji-bar-track{background:#ffffff1a}}
