:root{--ch-maroon:#510000;--ch-maroon-2:#7A1414;--ch-gold:#C8922A;--ch-online:#22A35A;--ch-bubble:#FFFFFF;--ch-thread-bg:#F7EEDF}.ch-root,.ch-overlay,.ch-lightbox{font-family:Outfit,sans-serif;color:var(--text-primary)}.ch-root.desktop{flex:1 1 0;min-height:0;display:flex;margin:16px;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--bg-card);box-shadow:0 6px 28px #50280012}.ch-pane-list{width:340px;min-width:280px;border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:0;background:var(--bg-surface)}.ch-pane-thread{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}.ch-icon-btn{width:40px;height:40px;border-radius:50%;border:none;background:none;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s,color .15s;text-decoration:none}.ch-icon-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.ch-icon-btn.accent{background:var(--ch-maroon);color:#fff}.ch-icon-btn.accent:hover{background:var(--ch-maroon-2);color:#fff}.ch-icon-btn.light{color:#fff}.ch-icon-btn.light:hover{background:#ffffff26}.ch-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);font:600 14px Outfit,sans-serif;cursor:pointer}.ch-btn.primary{background:var(--ch-maroon);border-color:var(--ch-maroon);color:#fff}.ch-btn.primary:hover:not(:disabled){background:var(--ch-maroon-2)}.ch-btn:disabled{opacity:.5;cursor:not-allowed}.ch-btn.block{width:100%}.ch-row-btns{display:flex;gap:10px}.ch-row-btns .ch-btn{flex:1}.ch-input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated);font:500 16px Outfit,sans-serif;color:var(--text-primary);outline:none}.ch-input:focus{border-color:var(--ch-gold);box-shadow:0 0 0 3px var(--accent-glow)}.ch-label{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.ch-badge{font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:20px;background:#c8922a26;color:#9a6a12;flex-shrink:0}.ch-avatar{position:relative;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;letter-spacing:.02em;-webkit-user-select:none;user-select:none}.ch-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.ch-avatar.small-ic{width:28px;height:28px;background:var(--ch-gold)}.ch-dot{position:absolute;right:-1px;bottom:-1px;border-radius:50%;background:#b9afa2;border:2.5px solid var(--bg-card)}.ch-dot.on{background:var(--ch-online)}.ch-list{display:flex;flex-direction:column;min-height:0;flex:1}.ch-list-head{display:flex;align-items:center;gap:4px;padding:16px 14px 8px 18px}.ch-list-title{flex:1;font-size:22px;font-weight:800;letter-spacing:-.01em}.ch-conn{margin:0 14px 8px;padding:7px 12px;border-radius:10px;background:#c8922a1f;color:#8a5e10;font-size:12.5px;font-weight:600}.ch-search{display:flex;align-items:center;gap:8px;margin:4px 14px 8px;padding:0 12px;height:42px;border-radius:12px;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-muted)}.ch-search input{border:none;background:none;padding:0;height:100%;box-shadow:none!important;font-size:15px;flex:1;min-width:0}.ch-clear{border:none;background:var(--border);color:var(--text-secondary);width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer}.ch-filters{display:flex;gap:6px;padding:2px 14px 10px}.ch-filter{border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);border-radius:20px;padding:6px 14px;font:600 12.5px Outfit,sans-serif;cursor:pointer}.ch-filter.on{background:var(--ch-maroon);border-color:var(--ch-maroon);color:#fff}.ch-list-scroll{flex:1;overflow-y:auto;min-height:0;padding-bottom:12px;overscroll-behavior:contain}.ch-online{padding:4px 0 8px}.ch-online .ch-label{padding:0 16px 8px}.ch-online-row{display:flex;gap:4px;overflow-x:auto;padding:0 10px 4px;scrollbar-width:none}.ch-online-row::-webkit-scrollbar{display:none}.ch-online-item{display:flex;flex-direction:column;align-items:center;gap:5px;width:66px;flex-shrink:0;border:none;background:none;cursor:pointer;padding:4px 0;font:500 11.5px Outfit,sans-serif;color:var(--text-secondary)}.ch-online-item span{max-width:62px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-conv{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;border:none;background:none;text-align:left;cursor:pointer;font-family:inherit;color:inherit;border-radius:0;transition:background .12s}.ch-conv:hover{background:var(--bg-hover)}.ch-conv.active{background:#c8922a24}.ch-conv-main{flex:1;min-width:0;border-bottom:1px solid rgba(232,213,181,.6);padding-bottom:10px;margin-bottom:-10px}.ch-conv-top,.ch-conv-bottom{display:flex;align-items:center;gap:8px}.ch-conv-name{flex:1;min-width:0;font-weight:600;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-conv-time{font-size:11.5px;color:var(--text-muted);flex-shrink:0}.ch-conv.unread .ch-conv-time{color:var(--ch-gold);font-weight:700}.ch-conv-bottom{margin-top:3px}.ch-conv-preview{flex:1;min-width:0;font-size:13.5px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-conv.unread .ch-conv-preview{color:var(--text-primary);font-weight:500}.ch-conv-typing{flex:1;font-size:13.5px;color:var(--ch-online);font-weight:600;font-style:italic}.ch-unread{min-width:21px;height:21px;padding:0 6px;border-radius:11px;background:var(--ch-gold);color:#fff;font-size:11.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ch-skeletons{padding:6px 14px}.ch-skel{height:56px;border-radius:14px;margin-bottom:10px;background:linear-gradient(90deg,var(--bg-elevated),var(--bg-hover),var(--bg-elevated));background-size:200% 100%;animation:chShimmer 1.3s infinite}@keyframes chShimmer{to{background-position:-200% 0}}.ch-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:40px 24px;color:var(--text-secondary)}.ch-empty-ic{width:72px;height:72px;border-radius:50%;background:#c8922a24;color:var(--ch-gold);display:flex;align-items:center;justify-content:center;margin-bottom:6px}.ch-empty-ic.big{width:104px;height:104px}.ch-empty-title{font-size:18px;font-weight:700;color:var(--text-primary)}.ch-empty-sub{font-size:14px;max-width:380px;line-height:1.5;margin-bottom:8px}.ch-empty.welcome{background:var(--ch-thread-bg)}.ch-empty-small{padding:24px;text-align:center;color:var(--text-muted);font-size:14px}.ch-thread{flex:1;display:flex;flex-direction:column;min-height:0;position:relative;background:var(--ch-thread-bg)}.ch-thread.drag:after{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border:2px dashed var(--ch-gold);border-radius:16px;pointer-events:none}.ch-drop-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--ch-maroon);color:#fff;padding:12px 20px;border-radius:12px;font-weight:600;pointer-events:none}.ch-thread-head{display:flex;align-items:center;gap:6px;padding:10px 12px;background:var(--bg-card);border-bottom:1px solid var(--border);min-height:62px}.ch-thread-who{flex:1;min-width:0;display:flex;align-items:center;gap:12px;border:none;background:none;cursor:pointer;text-align:left;font-family:inherit;color:inherit;padding:2px 4px;border-radius:12px}.ch-thread-who-text{min-width:0}.ch-thread-name{font-weight:700;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-thread-sub{font-size:12.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-thread-sub.on{color:var(--ch-online);font-weight:600}.ch-thread-sub.typing{color:var(--ch-online);font-weight:600;font-style:italic}.ch-messages-wrap{flex:1;min-height:0;position:relative;display:flex;flex-direction:column}.ch-messages{flex:1;overflow-y:auto;padding:12px 16px 8px;overscroll-behavior:contain;background-image:radial-gradient(rgba(200,146,42,.1) 1px,transparent 1px);background-size:18px 18px}.ch-thread-start{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 0 16px;text-align:center}.ch-thread-start-title{font-weight:700;font-size:16px}.ch-thread-start-sub{font-size:12.5px;color:var(--text-muted)}.ch-loading-older{display:flex;justify-content:center;padding:8px}.ch-spinner{width:22px;height:22px;border:2.5px solid var(--border);border-top-color:var(--ch-gold);border-radius:50%;animation:spin .8s linear infinite;display:inline-block}.ch-day{display:flex;justify-content:center;margin:12px 0 8px;position:sticky;top:4px;z-index:2}.ch-day span{background:#fffaf2f2;border:1px solid var(--border);color:var(--text-secondary);font-size:11.5px;font-weight:600;padding:4px 12px;border-radius:20px;box-shadow:0 1px 3px #0000000d}.ch-system{display:flex;justify-content:center;margin:8px 0}.ch-system span{max-width:80%;text-align:center;background:#c8922a21;color:#7a5410;font-size:12px;font-weight:500;padding:5px 12px;border-radius:10px}.ch-msg-row{display:flex;align-items:flex-end;gap:6px;margin-top:2px;flex-wrap:wrap}.ch-msg-row.first{margin-top:8px}.ch-msg-row.mine{justify-content:flex-end}.ch-msg-avatar{width:30px;flex-shrink:0;align-self:flex-end}.ch-bubble{position:relative;max-width:min(72%,520px);padding:7px 10px 6px 12px;border-radius:16px;background:var(--ch-bubble);box-shadow:0 1px 1.5px #3c1e001f;font-size:14.5px;line-height:1.42;word-wrap:break-word;overflow-wrap:anywhere;-webkit-touch-callout:none}.ch-msg-row.theirs.first .ch-bubble{border-top-left-radius:5px}.ch-msg-row.mine .ch-bubble{background:linear-gradient(135deg,#6B1414,var(--ch-maroon));color:#fff6e8}.ch-msg-row.mine.first .ch-bubble{border-top-right-radius:5px}.ch-bubble.has-media{padding:4px 4px 6px}.ch-bubble.has-media .ch-text{display:block;padding:4px 8px 0}.ch-bubble.deleted{background:#fff9!important;color:var(--text-muted)!important;box-shadow:none;border:1px dashed var(--border)}.ch-bubble.mentions-me{box-shadow:0 0 0 2px #c8922a8c,0 1px 1.5px #3c1e001f}.ch-bubble.failed{opacity:.75}.ch-sender{font-size:12.5px;font-weight:700;margin-bottom:1px}.ch-text{white-space:pre-wrap}.ch-text.deleted{font-style:italic;font-size:13.5px}.ch-text a{color:#1f6fb2;text-decoration:underline}.ch-msg-row.mine .ch-text a{color:#ffd98a}.ch-mention{color:#a0650a;font-weight:700;background:#c8922a24;border-radius:4px;padding:0 2px}.ch-msg-row.mine .ch-mention{color:#ffd98a;background:#ffd98a26}.ch-meta{float:right;display:inline-flex;align-items:center;gap:3px;margin:6px 0 -4px 10px;font-size:10.5px;color:var(--text-muted);white-space:nowrap}.ch-msg-row.mine .ch-meta{color:#fff0dcb8}.ch-bubble.has-media .ch-meta{padding-right:6px}.ch-tick{display:inline-flex;align-items:center}.ch-tick.seen{color:#7fd4ff}.ch-tick.fail{color:#ff8a80;font-weight:800;font-size:12px}.ch-bubble-more{position:absolute;top:4px;right:4px;width:26px;height:26px;border-radius:50%;border:none;background:#ffffffe6;color:var(--text-secondary);display:none;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 4px #00000026}@media (hover:hover){.ch-bubble:hover .ch-bubble-more{display:inline-flex}}.ch-failed-actions{width:100%;display:flex;justify-content:flex-end;gap:8px;margin-top:3px}.ch-failed-actions button{display:inline-flex;align-items:center;gap:4px;border:none;background:none;color:#b03a2e;font:600 12px Outfit,sans-serif;cursor:pointer;padding:2px 4px}.ch-media-wrap{position:relative}.ch-media{display:block;width:100%;max-width:300px;min-width:180px;max-height:340px;object-fit:cover;border-radius:12px;background:#0000000f;cursor:zoom-in}video.ch-media{cursor:default;background:#000;object-fit:contain}.ch-progress{position:absolute;left:10px;right:10px;bottom:10px;height:5px;border-radius:3px;background:#00000059;overflow:hidden}.ch-progress div{height:100%;background:var(--ch-gold);transition:width .2s}.ch-new-below{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;border:none;background:var(--ch-maroon);color:#fff;padding:8px 14px;border-radius:20px;font:600 12.5px Outfit,sans-serif;box-shadow:0 4px 14px #51000059;cursor:pointer;z-index:3}.ch-composer-wrap{position:relative;background:var(--bg-card);border-top:1px solid var(--border)}.ch-composer{display:flex;align-items:flex-end;gap:6px;padding:8px 10px}.ch-composer textarea{flex:1;resize:none;min-height:42px;max-height:140px;padding:10px 14px;border-radius:21px;border:1px solid var(--border);background:var(--bg-elevated);font:400 15px/1.4 Outfit,sans-serif;outline:none;overflow-y:auto}.ch-composer textarea:focus{border-color:var(--ch-gold);box-shadow:0 0 0 3px var(--accent-glow)}.ch-send{width:44px;height:44px;border-radius:50%;border:none;background:var(--ch-maroon);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .12s,opacity .12s}.ch-send:disabled{opacity:.4;cursor:default}.ch-send:not(:disabled):active{transform:scale(.92)}.ch-attach-preview{display:flex;align-items:center;gap:12px;padding:10px 12px 0}.ch-attach-preview img,.ch-attach-preview video{width:64px;height:64px;border-radius:10px;object-fit:cover;background:#000}.ch-attach-meta{flex:1;min-width:0;display:flex;flex-direction:column;font-size:12.5px;color:var(--text-muted)}.ch-attach-meta b{font-size:13.5px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-mentions{position:absolute;left:10px;right:10px;bottom:calc(100% + 6px);background:var(--bg-card);border:1px solid var(--border);border-radius:14px;box-shadow:0 10px 30px #3c1e002e;overflow:hidden;z-index:5;max-height:260px;overflow-y:auto}.ch-mention-opt{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:none;background:none;text-align:left;font:500 14px Outfit,sans-serif;color:var(--text-primary);cursor:pointer}.ch-mention-opt em{color:var(--text-muted);font-size:12px}.ch-mention-opt.on,.ch-mention-opt:hover{background:#c8922a1f}.ch-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e0f0573;z-index:400;display:flex;align-items:center;justify-content:center;padding:20px;animation:chFade .15s ease}.ch-overlay.side{justify-content:flex-end;padding:0}@keyframes chFade{0%{opacity:0}}.ch-sheet{width:100%;max-width:440px;max-height:min(680px,88vh);background:var(--bg-card);border-radius:20px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:chPop .18s ease}.ch-sheet.side{max-width:400px;height:100%;max-height:none;border-radius:0;animation:chSlideIn .2s ease}@keyframes chPop{0%{transform:scale(.97);opacity:0}}@keyframes chSlideIn{0%{transform:translate(30px);opacity:0}}.ch-sheet-grip{display:none}.ch-sheet-head{display:flex;align-items:center;padding:12px 8px 8px 18px}.ch-sheet-title{flex:1;font-size:17px;font-weight:700}.ch-sheet-body{flex:1;overflow-y:auto;min-height:0;padding-bottom:8px}.ch-sheet-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border)}.ch-member-list{display:flex;flex-direction:column}.ch-member-row{display:flex;align-items:center;gap:12px;padding:9px 16px;border:none;background:none;width:100%;text-align:left;font-family:inherit;color:inherit;cursor:pointer}.ch-member-row:hover{background:var(--bg-hover)}.ch-member-row.static{cursor:default}.ch-member-row.selected{background:#c8922a1a}.ch-member-main{flex:1;min-width:0}.ch-member-name{font-weight:600;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-member-sub{font-size:12.5px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-check{width:24px;height:24px;border-radius:50%;border:2px solid var(--border-light);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.ch-check.on{background:var(--ch-maroon);border-color:var(--ch-maroon)}.ch-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 8px;max-height:96px;overflow-y:auto}.ch-chips.static{max-height:none;padding:8px 0}.ch-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 3px;border-radius:20px;border:1px solid var(--border);background:var(--bg-elevated);font:500 13px Outfit,sans-serif;color:var(--text-primary);cursor:pointer}.ch-new-group-btn{display:flex;align-items:center;gap:12px;width:100%;padding:10px 16px;border:none;background:none;font:600 15px Outfit,sans-serif;color:var(--text-primary);cursor:pointer;text-align:left}.ch-new-group-btn:hover{background:var(--bg-hover)}.ch-new-group-ic{width:42px;height:42px;border-radius:50%;background:var(--ch-maroon);color:#fff;display:flex;align-items:center;justify-content:center}.ch-group-form{padding:8px 18px}.ch-group-form-top{display:flex;align-items:center;gap:14px;margin-bottom:16px}.ch-info-hero{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 20px 18px;text-align:center;border-bottom:8px solid var(--bg-base)}.ch-info-name{display:flex;align-items:center;gap:4px;font-size:20px;font-weight:700;margin-top:8px}.ch-info-status{font-size:13.5px;color:var(--text-muted)}.ch-info-status.on{color:var(--ch-online);font-weight:600}.ch-info-list{padding:8px 0}.ch-info-item{display:flex;justify-content:space-between;gap:12px;padding:12px 20px;border-bottom:1px solid var(--border);font-size:14px}.ch-info-item span{color:var(--text-muted)}.ch-rename{display:flex;gap:8px;width:100%;margin-top:8px}.ch-danger-row{display:flex;align-items:center;gap:10px;width:100%;padding:16px 20px;margin-top:8px;border:none;border-top:8px solid var(--bg-base);background:none;color:#b03a2e;font:600 15px Outfit,sans-serif;cursor:pointer;text-align:left}.ch-menu-wrap{position:relative}.ch-menu{position:absolute;right:0;top:100%;z-index:10;min-width:170px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 30px #0000002e;overflow:hidden}.ch-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:none;background:none;font:500 14px Outfit,sans-serif;color:var(--text-primary);cursor:pointer;text-align:left}.ch-menu button:hover{background:var(--bg-hover)}.ch-menu button.danger{color:#b03a2e}.ch-action-list{display:flex;flex-direction:column;padding:0 8px 8px}.ch-action-list button,.ch-action-list a{display:flex;align-items:center;gap:14px;padding:14px 12px;border:none;background:none;border-radius:12px;font:500 15px Outfit,sans-serif;color:var(--text-primary);cursor:pointer;text-align:left;text-decoration:none}.ch-action-list button:hover,.ch-action-list a:hover{background:var(--bg-hover)}.ch-action-list .danger{color:#b03a2e}.ch-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:#0a0500f0;display:flex;align-items:center;justify-content:center;padding:60px 12px 20px;animation:chFade .15s ease}.ch-lightbox img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px}.ch-lightbox-bar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:6px;padding:calc(8px + env(safe-area-inset-top)) 10px 8px 18px;color:#fff;background:linear-gradient(rgba(0,0,0,.5),transparent)}.ch-lightbox-name{flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.85}.ch-root.mobile{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg-card)}.ch-root.mobile .ch-list-head{display:none}.ch-root.mobile .ch-search{margin-top:14px}.ch-root.mobile .ch-list-scroll{padding-bottom:96px}.ch-root.mobile .ch-conv{padding:11px 16px;gap:14px}.ch-root.mobile .ch-conv:active{background:var(--bg-hover)}.ch-root.mobile .ch-conv-name{font-size:16px}.ch-root.mobile .ch-conv-preview{font-size:14px}.ch-root.mobile.in-thread{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;height:100dvh}.ch-root.mobile .ch-thread-head{padding:calc(6px + env(safe-area-inset-top)) 6px 6px 4px;background:linear-gradient(135deg,#6B1414,var(--ch-maroon));border-bottom:none;color:#fff;min-height:58px}.ch-root.mobile .ch-thread-head .ch-icon-btn{color:#fff}.ch-root.mobile .ch-thread-head .ch-icon-btn:active{background:#ffffff26}.ch-root.mobile .ch-thread-sub{color:#fff0dccc}.ch-root.mobile .ch-thread-sub.on,.ch-root.mobile .ch-thread-sub.typing{color:#9bf0b8}.ch-root.mobile .ch-thread-head .ch-dot{border-color:#5e0a0a}.ch-root.mobile .ch-messages{padding:10px 10px 6px}.ch-root.mobile .ch-bubble{max-width:82%;font-size:15px}.ch-root.mobile .ch-media{max-width:240px;min-width:160px}.ch-root.mobile .ch-composer{padding:6px 6px calc(6px + env(safe-area-inset-bottom))}.ch-root.mobile .ch-composer textarea{font-size:16px}.ch-fab{position:fixed;right:18px;bottom:calc(84px + env(safe-area-inset-bottom));width:58px;height:58px;border-radius:18px;border:none;background:linear-gradient(135deg,#7A1414,var(--ch-maroon));color:#fff;box-shadow:0 8px 22px #51000061;display:flex;align-items:center;justify-content:center;z-index:120;cursor:pointer}.ch-fab:active{transform:scale(.95)}@media (max-width:768px){.ch-overlay{align-items:flex-end;padding:0}.ch-overlay.side{align-items:stretch}.ch-sheet{max-width:none;border-radius:22px 22px 0 0;max-height:92dvh;animation:chUp .22s ease}.ch-sheet.side{border-radius:0;height:100dvh;max-height:none;padding-top:env(safe-area-inset-top);animation:chSlideIn .2s ease}.ch-sheet-grip{display:block;width:40px;height:4px;border-radius:2px;background:var(--border-light);margin:8px auto 0}.ch-sheet.side .ch-sheet-grip{display:none}.ch-sheet-body{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.ch-member-row{padding:11px 18px}}@keyframes chUp{0%{transform:translateY(40px);opacity:.4}}@media (prefers-reduced-motion:reduce){.ch-sheet,.ch-overlay,.ch-lightbox,.ch-skel{animation:none}}.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#c8922a;color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.profile-pic{position:relative;flex-shrink:0}.profile-pic-btn{position:absolute;right:-2px;bottom:-2px;width:30px;height:30px;border-radius:50%;border:2.5px solid var(--bg-card);background:#510000;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #0003}.profile-pic-btn:disabled{opacity:.6}.profile-pic-busy{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#ffffffa6;display:flex;align-items:center;justify-content:center}.profile-pic-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:170px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 28px #0000002e;overflow:hidden}.profile-pic-menu button{display:block;width:100%;padding:12px 14px;border:none;background:none;text-align:left;font:500 14px Outfit,sans-serif;color:var(--text-primary);cursor:pointer}.profile-pic-menu button:hover{background:var(--bg-hover)}.profile-pic-menu button.danger{color:#b03a2e}.chat-cta{display:flex;align-items:center;gap:14px;width:100%;cursor:pointer;font-family:Outfit,sans-serif;color:var(--text-primary)}.chat-cta:hover{border-color:#c8922a}.chat-cta-ic{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#7a1414,#510000);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-cta-title{display:block;font-weight:700;font-size:15.5px}.chat-cta-sub{display:block;font-size:12.5px;color:var(--text-muted);margin-top:2px}.m-app{--m-maroon:#510000;--m-tabbar-h:64px;display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;background:var(--bg-base)}.m-header{position:relative;z-index:90;display:flex;align-items:center;gap:12px;padding:calc(10px + env(safe-area-inset-top)) 14px 14px 16px;background:linear-gradient(135deg,#6e1616,#510000 55%,#3a0000);color:#fff;border-radius:0 0 22px 22px;box-shadow:0 6px 20px #51000040;flex-shrink:0}.m-header:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 85% -20%,rgba(232,184,74,.28),transparent 55%)}.m-header-logo{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid rgba(232,184,74,.7);flex-shrink:0;background:#fff}.m-header-text{flex:1;min-width:0;position:relative;z-index:1}.m-header-brand{font-family:IM Fell English SC,serif;font-size:12.5px;color:#f0cf7a;letter-spacing:.04em;line-height:1.1}.m-header-title{font-size:20px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-header-actions{position:relative;z-index:2;display:flex;align-items:center;gap:8px}.m-header-actions .btn-icon{width:40px;height:40px;border-radius:50%;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:16px}.m-header-actions .btn-icon:hover{background:#fff3;border-color:#ffffff4d;color:#fff}.m-header-actions>div>button>div{box-shadow:0 0 0 2px #e8b84ab3}.m-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;padding-bottom:calc(var(--m-tabbar-h) + 18px + env(safe-area-inset-bottom))}.m-content.flush{display:flex;flex-direction:column;overflow:hidden;padding-bottom:calc(var(--m-tabbar-h) + env(safe-area-inset-bottom))}.m-in-chat .m-header{border-radius:0;box-shadow:none}.m-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:100;display:grid;height:calc(var(--m-tabbar-h) + env(safe-area-inset-bottom));padding:0 6px env(safe-area-inset-bottom);background:#fffbf5f7;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--border);box-shadow:0 -6px 24px #50280014}.m-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;background:none;color:var(--text-muted);font:600 11px Outfit,sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent;min-width:0}.m-tab-ic{position:relative;width:58px;height:30px;border-radius:15px;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.m-tab.active{color:var(--m-maroon)}.m-tab.active .m-tab-ic{background:#c8922a33}.m-tab:active .m-tab-ic{transform:scale(.94)}.m-tab-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-tab-badge{position:absolute;top:-3px;right:8px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#c0392b;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #FFFBF5}.m-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#1e0f0573;display:flex;align-items:flex-end;animation:mFade .15s ease}.m-sheet{width:100%;background:var(--bg-card);border-radius:24px 24px 0 0;padding:6px 16px calc(16px + env(safe-area-inset-bottom));animation:mUp .22s ease;max-height:88dvh;overflow-y:auto}.m-sheet-grip{width:40px;height:4px;border-radius:2px;background:var(--border-light);margin:4px auto 12px}.m-sheet-user{display:flex;align-items:center;gap:12px;padding:4px 4px 14px;border-bottom:1px solid var(--border);margin-bottom:12px}.m-sheet-name{font-weight:700;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-sheet-role{font-size:12.5px;color:var(--text-muted);text-transform:capitalize}.m-sheet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.m-sheet-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:92px;padding:12px 6px;border-radius:18px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);font:600 12.5px Outfit,sans-serif;text-align:center;cursor:pointer}.m-sheet-tile.active{border-color:#c8922a;background:#c8922a1f}.m-sheet-tile-ic{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#7a1414,#510000);color:#fff;display:flex;align-items:center;justify-content:center}.m-sheet-logout{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:16px;min-height:48px;border-radius:14px;border:1px solid rgba(192,57,43,.25);background:#c0392b0f;color:#b03a2e;font:600 14.5px Outfit,sans-serif;cursor:pointer}@keyframes mFade{0%{opacity:0}}@keyframes mUp{0%{transform:translateY(60px);opacity:.5}}.m-app .page{padding:16px 14px 8px;animation:fadeIn .2s ease}.m-app .page-header{margin-bottom:16px}.m-app .page-title{font-size:21px}.m-app .page-sub{font-size:13px}.m-app .card{border-radius:20px;padding:16px;box-shadow:0 2px 12px #5028000d}.m-app .card-title{font-size:15.5px}.m-app .stats-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.m-app .stat-card{border-radius:18px;padding:14px}.m-app .stat-icon{width:36px;height:36px;margin-bottom:10px}.m-app .stat-value{font-size:22px}.m-app .grid-2{grid-template-columns:1fr;gap:12px}.m-app .col-span-2{grid-column:span 1}.m-app .table-wrap{margin:0 -16px;padding:0 16px;-webkit-overflow-scrolling:touch}.m-app table{font-size:13px}.m-app thead th{padding:9px 10px;white-space:nowrap}.m-app td{padding:10px}.m-app .btn{min-height:42px;border-radius:12px}.m-app .btn-sm{min-height:36px;border-radius:10px}.m-app .btn-icon{min-height:0}.m-app input,.m-app select,.m-app textarea{font-size:16px;border-radius:12px}.m-app input:not([type=checkbox]):not([type=radio]):not([type=range]),.m-app select{min-height:44px}.m-app .member-card{border-radius:18px}.m-app .announcement,.m-app .lib-item{border-radius:14px}.m-app .modal-overlay,.modal-overlay.m-sheetify{align-items:flex-end;padding:0}@media (max-width:768px){.modal-overlay{align-items:flex-end;padding:0}.modal{max-width:none!important;width:100%;border-radius:24px 24px 0 0;max-height:92dvh;padding:20px 18px calc(20px + env(safe-area-inset-bottom));animation:mUp .22s ease;border-bottom:none}.modal-header{margin-bottom:18px}.modal input,.modal select,.modal textarea{font-size:16px}}@media (prefers-reduced-motion:reduce){.m-sheet,.m-sheet-overlay,.modal{animation:none}}
