:root{color-scheme:dark;--bg-0: #1e1f22;--bg-1: #2b2d31;--bg-2: #313338;--bg-3: #383a40;--bg-hover: #35373c;--text: #f2f3f5;--text-muted: #b5bac1;--text-faint: #80848e;--accent: #5865f2;--accent-hover: #4752c4;--danger: #f23f43;--online: #23a55a;--link: #00a8fc;font-family:system-ui,-apple-system,Segoe UI,Roboto,Noto Sans,sans-serif;font-size:16px;line-height:1.375;background:var(--bg-0);color:var(--text);-webkit-text-size-adjust:100%}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}input,textarea{font:inherit;color:inherit}a{color:var(--link)}.splash{height:100dvh;display:grid;place-content:center;gap:12px;text-align:center;color:var(--text-muted)}.btn-primary,.btn-secondary{border:0;border-radius:4px;padding:10px 16px;font-weight:600}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.6;cursor:default}.btn-secondary{background:var(--bg-3)}.btn-secondary:hover{background:#4e5058}.link{background:none;border:0;padding:0;color:var(--link)}.link:hover{text-decoration:underline}.icon-btn{background:none;border:0;border-radius:4px;padding:6px 8px;color:var(--text-muted);font-size:18px;line-height:1}.icon-btn:hover{background:var(--bg-hover);color:var(--text)}.auth{min-height:100dvh;overflow-y:auto;display:grid;place-items:center;padding:16px;background:linear-gradient(135deg,#404eed,#1e1f22 70%)}.auth-card{width:100%;max-width:420px;background:var(--bg-2);border-radius:8px;padding:28px 24px;display:flex;flex-direction:column;gap:16px;box-shadow:0 8px 24px #00000059}.auth-card h1{margin:0;font-size:24px;text-align:center}.auth-hint{margin:0;color:var(--text-muted);text-align:center;font-size:14px}.auth-card label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted)}.auth-card .optional{text-transform:none;font-weight:400}.auth-card input,.invite-row input{background:var(--bg-0);border:0;border-radius:4px;padding:10px;font-size:16px;text-transform:none;letter-spacing:normal;font-weight:400;color:var(--text);outline:none}.auth-card input:focus{box-shadow:0 0 0 2px var(--accent)}.auth-error{margin:0;color:var(--danger);font-size:14px}.auth-switch{margin:0;font-size:14px;color:var(--text-muted)}.layout{height:100dvh;display:grid;grid-template-columns:1fr;position:relative}.sidebar{background:var(--bg-1);display:flex;flex-direction:column;min-height:0;width:280px;max-width:85vw;position:fixed;inset:0 auto 0 0;z-index:20;transform:translate(-100%);transition:transform .2s ease;padding-top:env(safe-area-inset-top)}.drawer-open .sidebar{transform:translate(0)}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:10;opacity:0;pointer-events:none;transition:opacity .2s}.drawer-open .drawer-backdrop{opacity:1;pointer-events:auto}@media(min-width:768px){.layout{grid-template-columns:var(--sidebar-w, 240px) minmax(0,1fr)}.layout.has-members-col{grid-template-columns:var(--sidebar-w, 240px) minmax(0,1fr) var(--members-w, 240px)}.layout.sidebar-hidden{grid-template-columns:minmax(0,1fr)}.layout.sidebar-hidden.has-members-col{grid-template-columns:minmax(0,1fr) var(--members-w, 240px)}.layout.sidebar-hidden .sidebar{display:none}.sidebar{position:static;transform:none;width:auto;max-width:none;transition:none}.drawer-backdrop,.menu-btn{display:none}}.server-name{height:48px;flex-shrink:0;display:flex;align-items:center;gap:4px;padding:0 8px 0 16px;font-weight:700;border-bottom:1px solid var(--bg-0)}.server-name-text{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-scroll{flex:1;overflow-y:auto;padding:8px}.section-title{padding:16px 8px 4px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--text-faint)}.channel{width:100%;display:flex;align-items:center;gap:6px;padding:8px;margin:1px 0;border:0;border-radius:4px;background:none;color:var(--text-faint);text-align:left;font-size:16px}.channel .hash{font-size:18px;width:20px;text-align:center;color:var(--text-faint)}button.channel:hover{background:var(--bg-hover);color:var(--text-muted)}.channel.active{background:var(--bg-3);color:var(--text)}.channel.unread{color:var(--text);font-weight:600}.channel.disabled{cursor:default;opacity:.6}.soon{margin-left:auto;font-size:11px;padding:1px 6px;border-radius:8px;background:var(--bg-3)}.member{display:flex;align-items:center;gap:10px;padding:5px 8px;color:var(--text-faint);opacity:.5}.member.online{color:var(--text-muted);opacity:1}.member-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{font-size:10px;font-weight:700;padding:1px 5px;border-radius:4px;background:var(--accent);color:#fff}.avatar{position:relative;flex-shrink:0;display:inline-grid;place-items:center;border-radius:50%;color:#fff;font-weight:600;-webkit-user-select:none;user-select:none}.status-dot{position:absolute;right:-2px;bottom:-2px;width:38%;height:38%;border-radius:50%;background:var(--text-faint);border:3px solid var(--bg-1)}.status-dot.on{background:var(--online)}.user-bar{flex-shrink:0;display:flex;align-items:center;gap:8px;padding:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom));background:#232428}.user-names{flex:1;min-width:0}.user-display{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-handle{font-size:12px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat{background:var(--bg-2);display:flex;flex-direction:column;min-width:0;min-height:0;height:100dvh}.chat-header{flex-shrink:0;height:calc(48px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0;display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--bg-0);box-shadow:0 1px 2px #00000026}.chat-header .hash{font-size:22px;color:var(--text-faint);margin-left:4px}.chat-header h2{margin:0;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conn-badge{margin-left:auto;font-size:12px;padding:2px 8px;border-radius:10px;background:#faa61a;color:#000;font-weight:600}.messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px 0 8px;overscroll-behavior:contain}.channel-start{padding:16px}.channel-start-icon{width:64px;height:64px;border-radius:50%;background:var(--bg-3);display:grid;place-items:center;font-size:40px}.channel-start h3{margin:8px 0 4px;font-size:26px}.channel-start p{margin:0;color:var(--text-muted)}.loading-more{text-align:center;color:var(--text-faint);font-size:14px;padding:8px}.loading-more.error{color:var(--danger)}.day-divider{display:flex;align-items:center;margin:16px 16px 8px;color:var(--text-faint);font-size:12px;font-weight:600}.day-divider:before,.day-divider:after{content:"";flex:1;height:1px;background:var(--bg-3)}.day-divider span{padding:0 8px}.message{display:grid;grid-template-columns:40px 1fr;column-gap:12px;padding:4px 12px 2px;margin-top:12px;position:relative}.message.grouped{margin-top:0;padding-top:1px;padding-bottom:1px}.message:hover{background:#2e3035}.msg-time-hover{font-size:11px;color:var(--text-faint);text-align:right;line-height:22px;visibility:hidden}.message:hover .msg-time-hover{visibility:visible}.msg-body{min-width:0}.msg-head{display:flex;align-items:baseline;gap:8px}.msg-time{font-size:12px;color:var(--text-faint)}.msg-content{white-space:pre-wrap;overflow-wrap:anywhere;color:#dbdee1}.typing-line{height:20px;padding:0 16px;font-size:13px;color:var(--text-muted);flex-shrink:0}.composer{flex-shrink:0;padding:0 12px calc(12px + env(safe-area-inset-bottom))}.composer-error{color:var(--danger);font-size:13px;padding:0 4px 4px}.composer-box{display:flex;align-items:flex-end;gap:4px;background:var(--bg-3);border-radius:8px;padding:4px 4px 4px 14px}.composer textarea{flex:1;resize:none;border:0;outline:none;background:none;padding:8px 0;max-height:40vh;font-size:16px;line-height:1.375}.composer textarea::placeholder{color:var(--text-faint)}.send-btn{flex-shrink:0;width:38px;height:38px;border:0;border-radius:6px;background:var(--accent);color:#fff;font-size:16px}.send-btn:disabled{background:none;color:var(--text-faint);cursor:default}.empty{flex:1;display:grid;place-items:center;color:var(--text-faint)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#000000b3;display:grid;place-items:center;padding:16px}.modal{width:100%;max-width:440px;background:var(--bg-2);border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:12px}.modal h2{margin:0;font-size:20px}.modal p{margin:0;color:var(--text-muted);font-size:14px}.invite-row{display:flex;gap:8px}.invite-row input{flex:1;min-width:0;font-size:14px}.invite-code strong{color:var(--text);letter-spacing:.1em}.modal .btn-secondary{align-self:flex-end}.custom-emoji{width:22px;height:22px;object-fit:contain;vertical-align:-5px;margin:0 1px}.msg-content.jumbo{font-size:44px;line-height:1.2}.msg-content.jumbo .custom-emoji{width:48px;height:48px;vertical-align:-8px}.emoji-btn{flex-shrink:0;width:38px;height:38px;border:0;border-radius:6px;background:none;font-size:22px;filter:grayscale(1);opacity:.7;transition:filter .1s,opacity .1s,transform .1s}.emoji-btn:hover,.emoji-btn.open{filter:none;opacity:1;transform:scale(1.1)}.emoji-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60}.emoji-popover{position:fixed;border-radius:8px;overflow:hidden;box-shadow:0 8px 24px #00000080}.emoji-popover.mobile{left:0;right:0;bottom:0;border-radius:12px 12px 0 0;padding-bottom:env(safe-area-inset-bottom);background:#151617}.emoji-layer:has(.emoji-popover.mobile){background:#00000080}.emoji-popover em-emoji-picker{--rgb-background: 43, 45, 49;--rgb-accent: 88, 101, 242;height:420px}.emoji-popover.mobile em-emoji-picker{width:100%;height:min(420px,60dvh)}.composer{position:relative}.suggest{position:absolute;left:12px;right:12px;bottom:calc(100% + 4px);background:var(--bg-1);border-radius:8px;padding:6px;box-shadow:0 4px 16px #0006;z-index:5}.suggest-title{padding:4px 8px 6px;font-size:12px;font-weight:700;text-transform:uppercase;color:var(--text-faint)}.suggest-item{width:100%;display:flex;align-items:center;gap:10px;padding:6px 8px;border:0;border-radius:4px;background:none;text-align:left;color:var(--text-muted)}.suggest-item.active{background:var(--bg-3);color:var(--text)}.suggest-emoji{width:24px;font-size:20px;text-align:center}.suggest-emoji img{width:22px;height:22px;object-fit:contain;vertical-align:middle}.reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.reaction{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 8px;border-radius:8px;border:1px solid transparent;background:var(--bg-1);font-size:14px;color:var(--text-muted)}.reaction:hover{border-color:#4e5058}.reaction.reacted{background:#5865f240;border-color:var(--accent);color:#dee0fc}.reaction-native{font-size:16px;line-height:1}.reaction-custom{width:18px;height:18px;object-fit:contain}.reaction-count{font-weight:600;min-width:8px}.reaction.add{opacity:0;color:var(--text-faint);font-weight:700}.reaction.add .reaction-native{filter:grayscale(1)}.message:hover .reaction.add,.message.selected .reaction.add{opacity:1}.msg-actions{position:absolute;top:-14px;right:16px;display:none;background:var(--bg-2);border:1px solid var(--bg-0);border-radius:6px;padding:2px;box-shadow:0 2px 6px #00000040}.msg-actions .icon-btn{font-size:18px;padding:4px 6px}@media(hover:hover){.message:hover .msg-actions{display:flex}}.message.selected{background:#2e3035}.message.selected .msg-actions{display:flex}.message.grouped .msg-actions{top:-18px}.toast{position:fixed;left:50%;bottom:calc(90px + env(safe-area-inset-bottom));transform:translate(-50%);max-width:calc(100vw - 32px);background:var(--danger);color:#fff;padding:8px 14px;border-radius:6px;font-size:14px;z-index:70;box-shadow:0 4px 12px #0006}.emoji-manager{max-width:520px;max-height:calc(100dvh - 32px);overflow-y:auto}.emoji-upload{display:flex;gap:12px;align-items:stretch}.emoji-file{width:72px;height:72px;flex-shrink:0;border:2px dashed #4e5058;border-radius:8px;display:grid;place-items:center;text-align:center;font-size:12px;color:var(--text-faint);cursor:pointer;overflow:hidden}.emoji-file:hover{border-color:var(--accent)}.emoji-file img{width:56px;height:56px;object-fit:contain}.emoji-file input{display:none}.emoji-upload-fields{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.emoji-upload-fields input{background:var(--bg-0);border:0;border-radius:4px;padding:10px;font-size:16px;outline:none}.emoji-upload-fields input:focus{box-shadow:0 0 0 2px var(--accent)}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px}.emoji-tile{display:flex;align-items:center;gap:8px;padding:6px 4px 6px 8px;border-radius:6px;background:var(--bg-1);min-width:0}.emoji-tile img{width:28px;height:28px;object-fit:contain;flex-shrink:0}.emoji-tile-name{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emoji-tile .icon-btn{font-size:14px;padding:4px 6px}.attach-btn{flex-shrink:0;width:38px;height:38px;margin-left:-8px;border:0;border-radius:50%;background:none;color:var(--text-muted);font-size:22px;font-weight:700}.attach-btn:hover{color:var(--text)}.pending-list{display:flex;gap:8px;overflow-x:auto;padding:8px 4px;margin-bottom:4px}.pending{position:relative;flex-shrink:0;width:120px;background:var(--bg-1);border-radius:8px;padding:6px}.pending-thumb{position:relative;height:84px;border-radius:4px;overflow:hidden;background:var(--bg-0);display:grid;place-items:center}.pending-thumb img{width:100%;height:100%;object-fit:cover}.pending-icon{font-size:32px}.pending-progress{position:absolute;left:6px;right:6px;bottom:6px;height:6px;border-radius:3px;background:#00000080}.pending-progress div{height:100%;border-radius:3px;background:var(--accent);transition:width .15s}.pending-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:4px;text-align:center;font-size:12px;font-weight:600;background:#0000008c}.pending-overlay.error{background:#f23f43d9;color:#fff}.pending-name{margin-top:4px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pending-size{font-size:11px;color:var(--text-faint)}.pending-remove{position:absolute;top:-6px;right:-6px;width:24px;height:24px;border-radius:50%;border:0;background:var(--bg-3);color:var(--danger);font-size:12px;box-shadow:0 1px 4px #0006}.pending-remove:hover{background:var(--danger);color:#fff}.attachments{display:flex;flex-wrap:wrap;align-items:flex-start;gap:6px;margin-top:4px}.att{position:relative;max-width:100%;border-radius:8px;overflow:hidden;background:var(--bg-1)}.att-image{border:0;padding:0;cursor:zoom-in;display:block}.att-image img{display:block;width:100%;height:100%;object-fit:cover}.att-video video{display:block;width:100%;height:100%;background:#000}.att-badge{position:absolute;top:6px;left:6px;padding:1px 6px;border-radius:4px;background:#000000a6;font-size:12px;pointer-events:none}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#000000e0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 16px calc(64px + env(safe-area-inset-bottom))}.lightbox img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}.lightbox-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));font-size:14px}.lightbox-name{flex:1;min-width:0;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat{position:relative}.drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;background:#5865f2d9;pointer-events:none}.drop-overlay div{padding:32px 24px;border:3px dashed rgb(255 255 255 / .7);border-radius:12px;font-size:20px;font-weight:700;text-align:center}.channel.connected,.channel.connected .hash{color:var(--online)}.voice-members{padding:0 0 4px 30px}.voice-member{display:flex;align-items:center;gap:8px;padding:3px 6px;border-radius:4px;font-size:14px;color:var(--text-muted)}.voice-member .avatar{box-shadow:0 0 0 2px transparent;transition:box-shadow .1s}.voice-member.speaking .avatar{box-shadow:0 0 0 2px var(--online)}.voice-member svg{width:16px;height:16px;margin-left:auto;color:var(--text-faint)}.voice-panel{flex-shrink:0;display:flex;align-items:center;gap:8px;padding:8px;background:#232428;border-bottom:1px solid var(--bg-1)}.voice-panel-info{flex:1;min-width:0}.voice-status{border:0;background:none;padding:0;font-size:13px;font-weight:700;color:var(--online);text-align:left}.voice-status:hover{text-decoration:underline}.voice-status.connecting,.voice-status.reconnecting{color:#faa61a}.voice-channel-name{font-size:12px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-hangup{color:var(--danger)}.voice-hangup:hover{background:#f23f4326;color:var(--danger)}.icon-btn.danger{color:var(--danger)}.user-bar .icon-btn{padding:6px 5px}.voice-room{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:24px 16px calc(24px + env(safe-area-inset-bottom));background:#000}.voice-empty{color:var(--text-faint);margin:0}.voice-grid{width:100%;max-width:900px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,300px));justify-content:center;gap:12px}.voice-tile{aspect-ratio:16 / 10;border-radius:10px;background:var(--bg-1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;outline:3px solid transparent;outline-offset:-3px;transition:outline-color .1s}.voice-tile.speaking{outline-color:var(--online)}.voice-tile-name{display:flex;align-items:center;gap:6px;font-weight:600}.voice-tile-muted{display:inline-flex;color:var(--text-faint)}.voice-actions{display:flex;gap:16px}.round-btn{width:56px;height:56px;border-radius:50%;border:0;background:var(--bg-3);color:var(--text);display:grid;place-items:center}.round-btn:hover{background:#4e5058}.round-btn svg{width:24px;height:24px}.round-btn.danger{background:#fff;color:#000}.round-btn.hangup{background:var(--danger);color:#fff}.round-btn.hangup:hover{background:#c03537}.voice-join{padding:12px 32px;font-size:16px}.settings{max-width:480px;max-height:calc(100dvh - 32px);overflow-y:auto}.settings-section{display:flex;flex-direction:column;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--bg-3)}.settings-section h3{margin:0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--text-faint)}.settings-row{display:flex;gap:8px;flex-wrap:wrap}.settings-hint{color:#faa61a!important}.settings-ok{margin:0;color:var(--online)!important;font-size:14px}.btn-danger{border:0;border-radius:4px;padding:10px 16px;font-weight:600;background:var(--danger);color:#fff}.btn-danger:hover{background:#c03537}.avatar{overflow:visible}.avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.avatar-btn,.msg-author,button.member,button.voice-member,.user-bar-me{border:0;background:none;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer}.avatar-btn{align-self:start;border-radius:50%}.avatar-btn:hover{opacity:.85}.msg-author{font-weight:600}.msg-author:hover{text-decoration:underline}.msg-author.mine{color:#c9cdfb}button.member{width:100%;border-radius:4px;padding:5px 8px}button.member:hover{background:var(--bg-hover);opacity:1}.member-text{flex:1;min-width:0;display:flex;flex-direction:column}.member-name{display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-status{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-faint);overflow:hidden;white-space:nowrap}.member-status span{overflow:hidden;text-overflow:ellipsis}button.voice-member{width:100%}button.voice-member:hover{background:var(--bg-hover)}.user-bar-me{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border-radius:4px;padding:2px 4px 2px 2px}.user-bar-me:hover{background:var(--bg-hover)}.user-names{display:flex;flex-direction:column;min-width:0}.user-display,.user-handle{display:block}.user-handle img{vertical-align:-2px}.status-emoji{display:inline-block;line-height:1;object-fit:contain;vertical-align:middle}.profile-card{width:320px;max-width:100%;background:#232428;border-radius:8px;overflow:hidden;box-shadow:0 8px 24px #00000073}.profile-banner{height:120px;background-size:cover;background-position:center}.profile-avatar-wrap{position:relative;height:0}.profile-avatar-wrap .avatar{position:absolute;left:calc(16px + (100% - 132px) * var(--avatar-x, 0));top:-48px;border:6px solid #232428;box-sizing:content-box;background-clip:padding-box}.profile-avatar-wrap .status-dot{width:24px;height:24px;border-width:5px;border-color:#232428;right:0;bottom:0}.profile-body{padding:52px 16px 16px;display:flex;flex-direction:column;gap:12px}.profile-names{background:var(--bg-0);border-radius:8px;padding:12px}.profile-display{font-size:20px;font-weight:700;display:flex;align-items:center;gap:8px;overflow-wrap:anywhere}.profile-handle{font-size:14px;color:var(--text-muted)}.profile-pronouns{color:var(--text-faint)}.profile-status{display:flex;align-items:center;gap:8px;background:var(--bg-0);border-radius:8px;padding:8px 12px;font-size:14px;overflow-wrap:anywhere}.profile-section{background:var(--bg-0);border-radius:8px;padding:10px 12px}.profile-section-title{font-size:12px;font-weight:700;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px}.profile-bio{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.profile-since{font-size:14px;color:var(--text-muted)}.profile-edit{width:100%}.popover-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65}.popover-layer.mobile{background:#00000080}.profile-popover{position:fixed;max-height:calc(100dvh - 16px);overflow-y:auto;border-radius:8px}.profile-popover.mobile{left:0;right:0;bottom:0;top:auto;padding-bottom:env(safe-area-inset-bottom)}.profile-popover.mobile .profile-card{width:100%;border-radius:12px 12px 0 0}.settings{max-width:860px;width:100%;padding:0;gap:0;max-height:calc(100dvh - 32px);overflow:hidden;display:flex;flex-direction:column}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 8px 20px}.settings-tabs{display:flex;gap:4px;padding:0 16px;border-bottom:1px solid var(--bg-3);overflow-x:auto;flex-shrink:0}.settings-tab{border:0;background:none;padding:10px 12px;font-weight:600;color:var(--text-muted);border-bottom:2px solid transparent;white-space:nowrap}.settings-tab:hover{color:var(--text)}.settings-tab.active{color:var(--text);border-bottom-color:var(--accent)}.settings-content{padding:16px 20px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.settings-section:last-child{border-bottom:0}.profile-editor{display:grid;grid-template-columns:1fr;gap:24px}@media(min-width:760px){.profile-editor{grid-template-columns:1fr 320px;align-items:start}.profile-editor-preview{position:sticky;top:0}}.profile-editor-form{display:flex;flex-direction:column;gap:16px;min-width:0}.profile-editor-preview{display:flex;flex-direction:column;gap:8px}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted);display:flex;justify-content:space-between}.field-count{font-weight:400;color:var(--text-faint)}.field-hint{font-size:12px;color:var(--text-faint)}.field input,.field textarea,.password-form input,.status-input input{background:var(--bg-0);border:0;border-radius:4px;padding:10px;font-size:16px;color:var(--text);outline:none;width:100%;font-family:inherit}.field textarea{resize:vertical;min-height:80px}.field input:focus,.field textarea:focus,.password-form input:focus,.status-input input:focus{box-shadow:0 0 0 2px var(--accent)}.swatches{display:flex;flex-wrap:wrap;gap:8px}.swatch{width:32px;height:32px;border-radius:6px;border:2px solid transparent;padding:0;cursor:pointer;box-shadow:inset 0 0 0 1px #ffffff1a}.swatch.active{border-color:#fff}.swatch.custom{position:relative;overflow:hidden;background:conic-gradient(#ed4245,#faa61a,#3ba55d,#00a8fc,#5865f2,#eb459e,#ed4245)}.swatch.custom input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%}.status-input{display:flex;align-items:center;gap:8px;background:var(--bg-0);border-radius:4px;padding-right:4px}.status-input input{flex:1;min-width:0}.status-emoji-btn{border:0;background:none;font-size:20px;padding:6px 4px 6px 10px;line-height:1}.save-row{padding-top:4px}.password-form{display:flex;flex-direction:column;gap:8px;max-width:360px}.emoji-pack{background:var(--bg-1);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:10px}.emoji-pack-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.emoji-pack-strip{display:flex;flex-wrap:wrap;gap:6px}.emoji-pack-strip img{width:32px;height:32px;object-fit:contain}.emoji-pack-strip img.added{opacity:.45}.text-input{background:var(--bg-0);border:0;border-radius:4px;padding:10px;font-size:16px;color:var(--text);outline:none;width:100%;font-family:inherit}.text-input:focus{box-shadow:0 0 0 2px var(--accent)}.text-input.grow{flex:1;min-width:0;width:auto}.recovery-code{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:20px;letter-spacing:.06em;text-align:center;padding:14px;border-radius:8px;background:var(--bg-0);border:2px dashed var(--accent);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.check-row{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.check-row input{width:18px;height:18px}.info-list{margin:0;padding-left:20px;color:var(--text-muted);font-size:14px;display:flex;flex-direction:column;gap:4px}.admin-actions,.admin-form{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.settings .btn-secondary,.settings .btn-primary{align-self:auto}.admin-form{align-items:stretch}.field-hint.warn,.warn-text{color:#faa61a}.locked-composer{flex-shrink:0;margin:0 12px calc(12px + env(safe-area-inset-bottom));padding:12px 14px;border-radius:8px;background:var(--bg-3);display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--text-muted);font-size:14px}.locked-composer span{flex:1;min-width:200px}.msg-lock{font-size:11px;opacity:.55}.msg-locked{color:var(--text-faint);font-style:italic}.att-placeholder{display:grid;place-items:center;width:100%;height:100%;font-size:28px;color:var(--text-faint)}.att-video-start{position:relative;width:100%;height:100%;border:0;padding:0;background:#000;cursor:pointer;display:grid;place-items:center}.att-video-start img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.att-play{position:relative;width:56px;height:56px;border-radius:50%;background:#0009;color:#fff;display:grid;place-items:center;font-size:22px}.att-download{position:absolute;top:6px;right:6px;width:30px;height:30px;border:0;border-radius:6px;background:#0009;color:#fff;font-size:15px}.att-note{position:absolute;left:6px;right:6px;bottom:6px;padding:4px 8px;border-radius:4px;background:#000000bf;font-size:12px}.reset-box{display:flex;flex-direction:column;gap:8px}.reset-hint{margin:0;font-size:13px;color:var(--text-muted)}.reset-box .text-input{font-size:13px;padding:8px}select.text-input{cursor:pointer}.mic-test{display:flex;flex-direction:column;gap:8px}.level-meter{height:10px;border-radius:5px;background:var(--bg-0);overflow:hidden}.level-fill{height:100%;background:linear-gradient(90deg,var(--online) 0%,var(--online) 70%,#faa61a 85%,var(--danger) 100%);background-size:300px 100%;transition:width .05s linear}input[type=range]{accent-color:var(--accent);width:100%}.ptt-key{align-self:flex-start}.ptt-key.listening{outline:2px solid var(--accent)}.ptt-hint{font-size:11px;color:var(--text-faint)}.ptt-hint.talking{color:var(--online);font-weight:700}.user-volume{display:flex;align-items:center;gap:6px;width:80%;font-size:12px;color:var(--text-faint);opacity:0;transition:opacity .15s}.voice-tile:hover .user-volume,.user-volume:focus-within{opacity:1}@media(hover:none){.user-volume{opacity:1}}.user-volume input{flex:1;min-width:0}.user-volume-value{width:36px;text-align:right}.section-title{display:flex;align-items:center;justify-content:space-between}.section-add{border:0;background:none;color:var(--text-faint);font-size:18px;line-height:1;padding:0 4px}.section-add:hover{color:var(--text)}.channel-row{position:relative}.channel-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-tools{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:0;pointer-events:none}.row-tool{pointer-events:auto;border:0;background:none;font-size:13px;opacity:0;padding:4px;filter:grayscale(1);color:var(--text-muted);border-radius:4px}.channel-row:hover .row-tool,.row-tool:focus-visible{opacity:.8}.row-tool:hover{opacity:1;filter:none;background:var(--bg-3)}.row-tool:disabled{opacity:.25!important;cursor:default;background:none}.channel-pin.on{opacity:.9;filter:none}@media(hover:none){.channel-edit{opacity:.6}.channel-pin:not(.on){display:none}.arrange-mode .channel-pin{display:inline-block;opacity:.8}}.arrange-mode .row-tool{opacity:.85}.arrange-mode .channel-row .channel{padding-right:96px}.channel-row[draggable=true]{cursor:grab}.channel-row.drop-before{box-shadow:inset 0 2px 0 var(--accent)}.channel-row.drop-after{box-shadow:inset 0 -2px 0 var(--accent)}.arrange-hint{display:flex;align-items:center;gap:8px;margin:8px 8px 0;padding:8px 10px;border-radius:8px;background:var(--bg-2);font-size:12px;color:var(--text-muted)}.arrange-hint .btn-primary{margin-left:auto;padding:4px 10px;font-size:12px;flex-shrink:0}.section-toggle{display:flex;align-items:center;gap:2px;border:0;background:none;padding:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;min-width:0;flex:1;text-align:left}.section-toggle:hover{color:var(--text-muted)}.section-chevron{display:inline-block;width:12px;font-size:10px;transition:transform .15s}.section-chevron.closed{transform:rotate(-90deg)}.thread-link{padding:4px 8px 4px 28px;font-size:14px}.thread-branch{color:var(--text-faint);width:14px}.channel-dialog,.thread-dialog{max-width:460px}.type-option{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:6px;background:var(--bg-1);cursor:pointer}.type-option.active{background:var(--bg-3)}.type-option input{width:18px;height:18px;accent-color:var(--accent)}.type-option strong{display:block;color:var(--text)}.type-hint{display:block;font-size:12px;color:var(--text-faint);font-weight:400;text-transform:none}.type-icon{width:22px;text-align:center;font-size:18px;color:var(--text-muted)}.name-input{display:flex;align-items:center;gap:8px;background:var(--bg-0);border-radius:4px;padding-left:10px}.name-input .text-input{background:none}.dialog-actions{align-items:center}.dialog-actions .grow{flex:1}.thread-starter{font-size:13px;color:var(--text-muted);background:var(--bg-1);border-left:3px solid var(--accent);border-radius:4px;padding:8px 10px;max-height:80px;overflow:hidden}textarea.text-input{resize:vertical;min-height:90px}.header-back{display:flex;align-items:center;gap:4px;border:0;background:none;color:var(--text-faint);font-size:14px;padding:4px 6px;border-radius:4px;max-width:40%}.header-back:hover{background:var(--bg-hover);color:var(--text)}.header-back .hash{font-size:16px;margin:0}.header-parent{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-action{margin-left:auto;font-size:16px}.forum{flex:1;min-height:0;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.forum-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.forum-top h3{margin:0;font-size:20px}.forum-top .field-hint{margin:2px 0 0}.forum-list{display:flex;flex-direction:column;gap:8px}.forum-post{border:0;text-align:left;background:var(--bg-1);border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;color:var(--text)}.forum-post:hover{background:var(--bg-hover)}.forum-post-title{font-size:16px;font-weight:700;display:flex;align-items:center;gap:8px;overflow-wrap:anywhere}.forum-post.unread .forum-post-title{color:#fff}.unread-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0}.forum-post-preview{font-size:14px;color:var(--text-muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.forum-post-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-faint);flex-wrap:wrap}.forum-empty{text-align:center;color:var(--text-faint);padding:40px 0}.forum-empty-icon{font-size:48px}.forum-more{align-self:center}.thread-chip{margin-top:6px;display:inline-flex;align-items:center;gap:6px;border:0;border-radius:6px;background:var(--bg-1);color:var(--text-muted);padding:6px 10px;font-size:13px;max-width:100%}.thread-chip strong{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-chip:hover{background:var(--bg-3)}.msg-actions{gap:2px}.md-code{background:var(--bg-0);border-radius:4px;padding:1px 4px;font-family:ui-monospace,Consolas,monospace;font-size:.88em}.md-pre{background:var(--bg-0);border:1px solid #1a1b1e;border-radius:6px;padding:8px 10px;margin:4px 0;overflow-x:auto;white-space:pre;font-family:ui-monospace,Consolas,monospace;font-size:.88em}.md-quote{margin:2px 0;padding:0 0 0 10px;border-left:4px solid #4e5058}.spoiler{background:#1e1f22;color:transparent;border-radius:3px;cursor:pointer;transition:background .1s}.spoiler *{visibility:hidden}.spoiler:hover{background:#18191c}.spoiler.shown{background:#ffffff14;color:inherit;cursor:auto}.spoiler.shown *{visibility:visible}.mention{background:#5865f24d;color:#dee0fc;border-radius:3px;padding:0 2px;font-weight:500}.mention[role=button]{cursor:pointer}.mention[role=button]:hover{background:var(--accent);color:#fff}.message.mentioned{background:#f0b13214}.message.mentioned:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:#f0b132}.message.mentioned:hover{background:#f0b1321f}.message.flash{animation:msg-flash 2.2s ease-out}@keyframes msg-flash{0%,30%{background:#5865f247}to{background:transparent}}.msg-edited{font-size:11px;color:var(--text-faint)}.msg-pin{font-size:11px;opacity:.8}.msg-actions .icon-btn.danger:hover{background:#f23f4333}.reply-preview{grid-column:1 / -1;display:flex;align-items:center;gap:5px;min-width:0;margin:0 0 2px 18px;font-size:13px;color:var(--text-muted);text-align:left}button.reply-preview:hover .reply-text{color:var(--text)}.reply-preview.deleted{font-style:italic;color:var(--text-faint)}.reply-curve{color:var(--text-faint);font-size:15px}.reply-preview strong{color:#c9cdfb;font-weight:600;flex-shrink:0}.reply-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.reply-bar{display:flex;align-items:center;gap:8px;background:var(--bg-1);border-radius:8px 8px 0 0;padding:6px 8px 6px 14px;font-size:13px;color:var(--text-muted);margin-bottom:-4px}.reply-bar>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-bar strong{color:var(--text)}.reply-bar-text{margin-left:8px;color:var(--text-faint)}.suggest-sub{margin-left:auto;padding-left:12px;font-size:12px;color:var(--text-faint)}.suggest-emoji .avatar,.suggest-emoji>*{vertical-align:middle}.edit-box{margin:4px 0}.edit-box textarea{width:100%;resize:none;max-height:50vh;font:inherit}.edit-hint{font-size:12px;color:var(--text-faint);margin-top:4px}.edit-hint button{color:var(--link)}.edit-hint button:hover{text-decoration:underline}.mention-badge{flex-shrink:0;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--danger);color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}.header-tools{margin-left:auto;display:flex;gap:2px}.header-action+.header-tools,.header-tools:has(+.header-action){margin-left:0}.header-tools .icon-btn{font-size:16px;padding:6px;border-radius:6px}.header-tools .icon-btn.active{background:var(--bg-3)}.side-panel{position:absolute;z-index:30;top:calc(52px + env(safe-area-inset-top));right:12px;width:min(420px,calc(100% - 24px));max-height:calc(100% - 140px);display:flex;flex-direction:column;background:var(--bg-1);border:1px solid var(--bg-0);border-radius:10px;box-shadow:0 8px 24px #0006}.side-panel-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--bg-0)}.side-panel-head h3{margin:0;font-size:15px}.side-panel-body{overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.panel-empty{color:var(--text-faint);font-size:13px;margin:4px 2px}.panel-card{background:var(--bg-2);border-radius:8px;padding:8px 10px}.panel-card-head{display:flex;align-items:center;gap:6px;font-size:13px;min-width:0}.panel-card-head time{margin-left:auto;color:var(--text-faint);font-size:11px;flex-shrink:0}.panel-card-where{color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-card-text{margin:4px 0 6px;white-space:pre-wrap;overflow-wrap:anywhere;color:#dbdee1;font-size:14px;max-height:160px;overflow:hidden}.panel-card-actions{display:flex;gap:6px;justify-content:flex-end}.panel-card-actions .btn-secondary{padding:4px 10px;font-size:12px}.search-form{display:flex;gap:6px;flex-wrap:wrap}.search-form input{flex:1 1 180px;min-width:0}.search-form select{flex:0 0 auto;width:auto}@media(max-width:767px){.side-panel{left:8px;right:8px;width:auto;max-height:calc(100% - 120px)}}.reply-preview{background:none;border:0;padding:0;font:inherit;font-size:13px;cursor:pointer}.reply-preview.deleted{cursor:default}.plus-wrap{position:relative;flex-shrink:0}.attach-btn{transition:transform .15s}.attach-btn.open{color:var(--text);transform:rotate(45deg)}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.plus-menu{position:absolute;bottom:calc(100% + 10px);left:-10px;z-index:41;min-width:190px;background:var(--bg-0);border-radius:8px;padding:6px;box-shadow:0 8px 24px #00000073;display:flex;flex-direction:column}.plus-menu button{text-align:left;padding:8px 10px;border-radius:4px;color:var(--text-muted)}.plus-menu button:hover{background:var(--accent);color:#fff}.gif-btn{flex-shrink:0;height:26px;margin:0 2px 6px;padding:0 6px;border:2px solid var(--text-muted);border-radius:5px;background:none;color:var(--text-muted);font-size:11px;font-weight:800;letter-spacing:.5px}.gif-btn:hover,.gif-btn.open{color:var(--text);border-color:var(--text)}.mic-btn{background:none;font-size:20px}.mic-btn:hover:not(:disabled){background:var(--bg-hover)}.composer-note{font-size:13px;color:var(--text-muted);padding:2px 4px 6px}.recorder{display:flex;align-items:center;gap:10px;background:var(--bg-3);border-radius:8px;padding:4px 4px 4px 8px;min-height:46px}.recorder-dot{width:10px;height:10px;border-radius:50%;background:var(--danger);flex-shrink:0;transition:transform .08s}.recorder-time{font-variant-numeric:tabular-nums;min-width:38px}.recorder-level{flex:1;height:6px;background:var(--bg-0);border-radius:3px;overflow:hidden}.recorder-level div{height:100%;background:var(--online);transition:width .08s}.recorder-hint{font-size:12px;color:var(--text-faint)}.voice-msg{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:min(360px,100%);background:var(--bg-1);border-radius:22px;padding:6px 12px 6px 6px;margin-top:4px}.voice-play{width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;font-size:13px;flex-shrink:0}.voice-play:disabled{background:var(--bg-3);color:var(--text-faint)}.voice-wave{flex:1;display:flex;align-items:center;gap:2px;height:30px;cursor:pointer;min-width:120px}.voice-wave span{flex:1;min-height:3px;border-radius:2px;background:#6d717a}.voice-wave span.played{background:#c9cdfb}.voice-time{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.voice-speed{font-size:11px;font-weight:700;color:var(--text-muted);background:var(--bg-3);border-radius:10px;padding:2px 6px}.voice-error{flex-basis:100%;font-size:12px;color:var(--text-faint);padding-left:44px}.poll{max-width:440px;background:var(--bg-1);border:1px solid var(--bg-0);border-radius:10px;padding:12px;margin-top:4px}.poll-q{font-weight:700;font-size:15px;overflow-wrap:anywhere}.poll-hint{font-size:12px;color:var(--text-faint);margin:2px 0 8px}.poll-option{position:relative;display:flex;align-items:center;gap:8px;width:100%;margin-top:6px;padding:8px 10px;border:1px solid var(--bg-3);border-radius:8px;background:var(--bg-2);text-align:left;overflow:hidden}.poll-option:hover:not(:disabled){border-color:var(--accent)}.poll-option.mine{border-color:var(--accent)}.poll-option.leading{border-color:var(--online)}.poll-option:disabled{cursor:default}.poll-fill{position:absolute;inset:0 auto 0 0;background:#5865f238;transition:width .3s}.poll-option.leading .poll-fill{background:#23a55a40}.poll-option>:not(.poll-fill){position:relative}.poll-check{color:var(--text-muted);width:16px}.poll-option.mine .poll-check{color:#c9cdfb}.poll-text{flex:1;min-width:0;overflow-wrap:anywhere}.poll-voters{display:flex}.poll-voters>*{margin-left:-4px;box-shadow:0 0 0 2px var(--bg-2);border-radius:50%}.poll-count{font-size:12px;color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.poll-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:12px;color:var(--text-faint)}.poll-close{color:var(--link);font-size:12px}.poll-close:hover{text-decoration:underline}.poll-dialog{width:min(460px,calc(100vw - 32px))}.poll-edit-row{display:flex;gap:6px;margin-bottom:6px}.poll-edit-row input{flex:1}.poll-add{align-self:flex-start}.check-row{display:flex;align-items:center;gap:8px;margin:6px 0;color:var(--text-muted)}.sticker{display:block;margin-top:4px;object-fit:contain}.gif-embed{position:relative;max-width:100%;margin-top:4px;border-radius:8px;overflow:hidden;background:var(--bg-0)}.gif-embed video{display:block;width:100%;height:100%;object-fit:cover}.gif-badge{position:absolute;left:6px;bottom:6px;font-size:10px;font-weight:800;padding:1px 4px;border-radius:3px;background:#0000008c;color:#fff}.gif-fav{position:absolute;top:6px;right:6px;width:30px;height:30px;border-radius:50%;background:#0000008c;color:#fff;font-size:17px;opacity:0;transition:opacity .1s}.gif-fav.on{color:#f0b132}.gif-embed:hover .gif-fav,.gif-tile:hover .gif-fav,.gif-fav.on,.message.selected .gif-fav{opacity:1}@media(hover:none){.gif-fav{opacity:1}}.gif-popover{width:420px;height:470px;display:flex;flex-direction:column;background:var(--bg-1);border:1px solid var(--bg-0)}.gif-popover.mobile{width:auto;height:min(470px,70dvh)}.gif-tabs{display:flex;gap:4px;padding:8px 8px 0;align-items:center}.gif-tabs>button[role=tab]{padding:6px 12px;border-radius:6px;color:var(--text-muted);font-weight:600}.gif-tabs>button.active{background:var(--bg-3);color:var(--text)}.gif-close{margin-left:auto}.gif-search{margin:8px 8px 0;width:auto}.gif-scroll{flex:1;overflow-y:auto;padding:8px}.gif-section{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;margin:4px 2px 6px}.gif-grid{display:flex;gap:6px;margin-bottom:8px}.gif-col{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.gif-tile{position:relative;border-radius:6px;overflow:hidden;background:var(--bg-0)}.gif-tile-pick{display:block;width:100%;height:100%;padding:0}.gif-tile-pick img,.gif-tile-pick video{width:100%;height:100%;object-fit:cover;display:block}.gif-tile-pick:hover{outline:2px solid var(--accent);outline-offset:-2px}.gif-more{display:block;margin:4px auto 8px}.gif-attrib{font-size:10px;color:var(--text-faint);text-align:right;padding:4px 10px 6px;letter-spacing:.5px}.sticker-bar{display:flex;gap:6px;padding:8px 8px 0}.sticker-bar .btn-secondary{padding:5px 10px;font-size:13px}.sticker-bar .btn-secondary.active{background:var(--accent);color:#fff}.sticker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:6px;margin-bottom:10px}.sticker-tile{position:relative;aspect-ratio:1;border-radius:8px;background:var(--bg-2)}.sticker-tile>button:first-child{width:100%;height:100%;padding:6px;border-radius:8px}.sticker-tile>button:first-child:hover:not(:disabled){background:var(--bg-3)}.sticker-tile img{width:100%;height:100%;object-fit:contain}.sticker-del{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;background:var(--danger);color:#fff;font-size:11px}.sticker-upload{padding:10px;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.sticker-drop{display:grid;place-items:center;height:150px;border:2px dashed var(--bg-3);border-radius:10px;color:var(--text-faint);font-size:13px;cursor:pointer;text-align:center;padding:8px}.sticker-drop:hover{border-color:var(--accent)}.sticker-drop img{max-height:130px;max-width:100%;object-fit:contain}.gif-tabs>button[role=tab],.poll-close,.sticker-tile>button:first-child,.gif-tile-pick,.plus-menu button{background:none;border:0}.gif-tabs>button.active{background:var(--bg-3)}.plus-menu button:hover{background:var(--accent)}.voice-room.has-stage{justify-content:flex-start}.stage{width:100%;display:flex;flex-direction:column;gap:8px;min-height:0;flex:1}.stage-main{position:relative;flex:1;min-height:200px;background:#000;border-radius:10px;overflow:hidden;display:grid;place-items:center}.stage-video{width:100%;height:100%;object-fit:contain;background:#000}.stage-main:fullscreen{border-radius:0}.stage-label{position:absolute;left:10px;bottom:10px;display:flex;align-items:center;gap:6px;background:#0009;color:#fff;font-size:13px;padding:3px 8px;border-radius:6px}.stage-fullscreen{position:absolute;right:10px;bottom:10px;width:34px;height:34px;border-radius:8px;background:#0009;color:#fff;font-size:18px;opacity:0;transition:opacity .15s}.stage-main:hover .stage-fullscreen{opacity:1}@media(hover:none){.stage-fullscreen{opacity:1}}.stage-strip{display:flex;gap:8px;overflow-x:auto;flex-shrink:0}.stage-thumb{position:relative;flex-shrink:0;width:180px;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;background:#000;padding:0;border:2px solid transparent}.stage-thumb:hover{border-color:var(--accent)}.stage-thumb video{width:100%;height:100%;object-fit:cover}.stage-thumb span{position:absolute;left:4px;bottom:4px;font-size:11px;background:#0009;color:#fff;padding:1px 5px;border-radius:4px}video.mirror{transform:scaleX(-1)}.voice-room.has-stage .voice-grid{flex:0 0 auto}.voice-room.has-stage .voice-tile{padding:8px 12px;min-width:0}.voice-tile.with-video{padding:0;overflow:hidden;width:260px}.tile-video{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;background:#000}.voice-tile.with-video .voice-tile-name{padding:6px 8px}.live-badge{display:inline-block;margin-left:6px;background:var(--danger);color:#fff;font-size:9px;font-weight:800;letter-spacing:.5px;padding:1px 4px;border-radius:3px;vertical-align:middle}.round-btn.active{background:var(--online);color:#fff}.share-menu{bottom:calc(100% + 10px);left:50%;transform:translate(-50%);min-width:230px}.share-menu small{display:block;font-size:11px;color:var(--text-faint)}.share-menu button:hover small{color:#e0e3ff}.sound-note{font-size:13px;color:var(--text-muted);background:var(--bg-1);padding:4px 10px;border-radius:12px;animation:msg-flash 2.5s ease-out}.soundboard-title{padding:6px 4px}.sound-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px}.sound-tile{position:relative}.sound-tile>button:first-child{width:100%;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border-radius:8px;background:var(--bg-2);border:1px solid var(--bg-3)}.sound-tile>button:first-child:hover:not(:disabled){border-color:var(--accent);background:var(--bg-3)}.sound-tile>button:first-child:disabled{opacity:.55;cursor:default}.sound-tile>button.played{border-color:var(--online);background:#23a55a33}.sound-emoji{font-size:24px}.sound-name{font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.soundboard-volume{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--bg-0);font-size:12px;color:var(--text-muted)}.soundboard-volume input{flex:1}.sound-upload{padding:10px;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.sound-drop{height:90px}.sound-upload-row{display:flex;gap:6px}.sound-emoji-input{width:56px;text-align:center;font-size:18px}.voice-panel .icon-btn.active{background:var(--bg-3)}.events-link .events-count{flex-shrink:0;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}.events-link.live{color:var(--online);font-weight:600}.events-link{margin-bottom:6px}.events-modal{width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 40px);display:flex;flex-direction:column}.events-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.events-head h2{margin:0;flex:1}.events-list{overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-right:2px}.event-card{display:flex;gap:12px;background:var(--bg-2);border:1px solid var(--bg-3);border-radius:10px;padding:12px}.event-card.live{border-color:var(--online);box-shadow:0 0 0 1px var(--online) inset}.event-card.past{opacity:.6}.event-date{flex-shrink:0;width:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-1);border-radius:8px;padding:6px 2px;height:fit-content}.event-day{font-size:12px;text-transform:uppercase;color:var(--danger);font-weight:700}.event-date-num{font-size:13px;font-weight:700;text-align:center}.event-main{flex:1;min-width:0}.event-when{font-size:12px;color:var(--text-muted)}.event-when.live{color:var(--online);font-weight:700}.event-title{font-size:16px;font-weight:700;margin:2px 0;overflow-wrap:anywhere}.event-desc{font-size:14px;color:#dbdee1;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:4px}.event-where{font-size:13px;color:var(--link);margin:2px 0 6px}.event-where:hover{text-decoration:underline}.event-rsvp{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.event-rsvp-btn{display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:16px;background:var(--bg-1);border:1px solid var(--bg-3);font-size:13px}.event-rsvp-btn:hover:not(:disabled){border-color:var(--accent)}.event-rsvp-btn.mine{border-color:var(--accent);background:#5865f240}.event-avatars{display:flex}.event-avatars>*{margin-left:-4px;box-shadow:0 0 0 2px var(--bg-1);border-radius:50%}.event-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:12px}.event-tools button{color:var(--text-muted);background:none;border:0;padding:0}.event-tools button:hover{color:var(--text);text-decoration:underline}.event-by{margin-left:auto;color:var(--text-faint)}.event-form{overflow-y:auto}.event-form-row{display:flex;gap:8px;flex-wrap:wrap}.event-form-row .field{flex:1 1 120px}@media(max-width:600px){.stage-thumb{width:130px}.voice-tile.with-video{width:46%}.event-card{padding:10px;gap:8px}.event-date{width:46px}}.voice-room.has-stage{gap:10px;padding:12px 12px calc(12px + env(safe-area-inset-bottom))}.voice-room.has-stage .stage{flex:1 1 auto;min-height:45vh}.stage-main{display:block}.stage-video{position:absolute;top:0;right:0;bottom:0;left:0}.voice-room.has-stage .voice-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:none}.voice-room.has-stage .voice-tile{aspect-ratio:auto;flex-direction:row;gap:8px;padding:6px 12px 6px 6px;border-radius:24px}.voice-room.has-stage .voice-tile .user-volume{display:none}.push-banner{display:flex;align-items:center;gap:10px;flex-shrink:0;padding:8px 10px 8px 14px;background:#5865f22e;border-bottom:1px solid rgb(88 101 242 / .35);font-size:14px}.push-banner.danger{background:#f23f4326;border-bottom-color:#f23f4366}.push-banner-text{flex:1;min-width:0}.push-banner-error{color:#ffb3b5}.push-banner .btn-primary,.push-banner .btn-secondary{padding:5px 12px;font-size:13px;flex-shrink:0}.storage-bar{height:10px;border-radius:5px;background:var(--bg-0);overflow:hidden;margin:6px 0 8px}.storage-bar div{height:100%;background:var(--online);transition:width .3s}.storage-bar.warn div{background:#f0b132}.storage-bar.full div{background:var(--danger)}.storage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:10px}.storage-grid h4{margin:0 0 6px;font-size:13px;color:var(--text-muted);text-transform:uppercase}.storage-list{list-style:none;margin:0;padding:0;font-size:14px}.storage-list li{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px solid var(--bg-3)}.storage-list li span:last-child{color:var(--text-muted);white-space:nowrap}.cleanup-modal{width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 40px);display:flex;flex-direction:column}.cleanup-list{overflow-y:auto;display:flex;flex-direction:column;gap:6px;margin:8px 0}.cleanup-item{display:flex;align-items:center;gap:8px;background:var(--bg-2);border-radius:8px;padding:8px 10px;flex-wrap:wrap}.cleanup-size{font-weight:700;min-width:64px}.cleanup-meta{flex:1;font-size:13px;color:var(--text-muted);min-width:160px}.cleanup-item .btn-secondary{padding:4px 10px;font-size:12px}.att-expired{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:8px;margin-top:4px;background:var(--bg-1);border:1px dashed var(--bg-3);color:var(--text-faint);font-size:13px}.dm-link{gap:8px}.dm-link .avatar{flex-shrink:0}.dm-group-icon{flex-shrink:0;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-size:11px;font-weight:700}.newdm-modal{width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 40px);display:flex;flex-direction:column;gap:8px}.newdm-modal h2{margin:0}.newdm-list{overflow-y:auto;display:flex;flex-direction:column;gap:4px;min-height:80px}.newdm-item{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:8px;cursor:pointer}.newdm-item:hover{background:var(--bg-hover)}.newdm-item.picked{background:#5865f233}.newdm-name{display:flex;flex-direction:column}.newdm-name small{color:var(--text-faint);font-size:12px}.sound-setting{display:flex;align-items:center;gap:6px}.sound-setting .check-row{flex:1}.sound-setting .icon-btn{font-size:12px;padding:4px 8px}.sticker-credit{font-size:10px;color:var(--text-faint);margin:-2px 2px 6px}.pack-card{background:var(--bg-2);border-radius:10px;padding:10px;margin-bottom:8px}.pack-head{display:flex;align-items:center;gap:8px}.pack-head strong{flex:1}.pack-count{font-size:12px;color:var(--text-faint)}.pack-head button{padding:4px 12px;font-size:12px}.pack-preview{display:flex;gap:6px;margin:8px 0 4px}.pack-preview img{width:48px;height:48px;object-fit:contain}.sticker-bar{flex-wrap:wrap}.import-form{display:flex;gap:6px}.import-form input{flex:1;min-width:0}.import-license{font-size:12px;color:#f0c674;background:#f0b1321a;border-radius:6px;padding:6px 8px;margin:0 0 8px}.import-grid{grid-template-columns:repeat(auto-fill,minmax(60px,1fr))}.import-item{aspect-ratio:1;padding:4px;border-radius:8px;background:var(--bg-2);border:2px solid transparent;opacity:.45}.import-item.picked{border-color:var(--accent);opacity:1}.import-item img{width:100%;height:100%;object-fit:contain}.import-result{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.mobile-panel{display:flex;flex-direction:column;height:min(46dvh,360px);margin:6px -8px calc(-8px - env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--bg-1);border-top:1px solid var(--bg-0)}.mobile-panel-tabs{display:flex;gap:4px;padding:6px 8px;align-items:center;flex-shrink:0}.mobile-panel-tabs>button{padding:6px 12px;border-radius:16px;color:var(--text-muted);font-weight:600;font-size:14px;background:none;border:0}.mobile-panel-tabs>button.active{background:var(--bg-3);color:var(--text)}.mobile-panel-tabs .mobile-panel-del{margin-left:auto;font-size:20px;padding:4px 12px}.mobile-panel-body{flex:1;min-height:0;display:flex;flex-direction:column}.emoji-inline{flex:1;min-height:0;display:flex}.emoji-inline em-emoji-picker{width:100%;height:100%;--rgb-background: 43, 45, 49;--rgb-accent: 88, 101, 242;--border-radius: 0;--shadow: none}.gif-inline{flex:1;min-height:0;display:flex;flex-direction:column}.gif-inline .gif-scroll{-webkit-overflow-scrolling:touch}.emoji-btn.open{opacity:1;filter:none}@media(max-width:767px){.composer{padding-left:8px;padding-right:8px}.composer-box{padding-left:10px;gap:2px}.composer .emoji-btn{font-size:24px;padding:0 6px}.messages{overscroll-behavior:contain}}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#00000080;display:flex;align-items:flex-end;animation:sheet-fade .15s ease-out}.sheet{width:100%;background:var(--bg-1);border-radius:16px 16px 0 0;padding:6px 12px calc(12px + env(safe-area-inset-bottom));animation:sheet-up .2s ease-out;transition:transform .15s}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}@keyframes sheet-fade{0%{background:transparent}}.sheet-grip{width:40px;height:4px;border-radius:2px;background:var(--bg-3);margin:4px auto 10px}.sheet-preview{font-size:13px;color:var(--text-muted);margin:0 4px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-preview strong{color:var(--text)}.sheet-reactions{display:flex;justify-content:space-between;gap:6px;margin-bottom:10px}.sheet-reactions button{flex:1;aspect-ratio:1;max-width:52px;border-radius:50%;background:var(--bg-2);border:0;font-size:24px;display:grid;place-items:center}.sheet-reactions button:active{transform:scale(.9);background:var(--bg-3)}.sheet-reactions .sheet-more{font-size:18px}.sheet-actions{display:flex;flex-direction:column;background:var(--bg-2);border-radius:12px;overflow:hidden}.sheet-actions button{display:flex;align-items:center;gap:14px;padding:14px 16px;font-size:16px;text-align:left;background:none;border:0;border-bottom:1px solid var(--bg-1);color:var(--text)}.sheet-actions button:last-child{border-bottom:0}.sheet-actions button:active{background:var(--bg-3)}.sheet-actions button span{width:22px;text-align:center}.sheet-actions button.danger{color:var(--danger)}@media(hover:none)and (pointer:coarse){.message{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.message .msg-actions,.message.selected .msg-actions{display:none}.message.selected{background:transparent}.edit-box textarea{-webkit-user-select:text;user-select:text}}.xfer-pick{width:100%;margin:4px 0 10px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.newdm-item.offline{opacity:.5}.xfer-panel{position:fixed;right:16px;bottom:90px;z-index:60;width:min(340px,calc(100vw - 32px));max-height:60vh;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.xfer-item{background:var(--bg-0);border-radius:8px;padding:10px 12px;box-shadow:0 8px 24px #00000073;border-left:3px solid var(--accent)}.xfer-offered{border-left-color:#f0b232}.xfer-done{border-left-color:#23a55a}.xfer-failed,.xfer-cancelled,.xfer-declined{border-left-color:#f23f43}.xfer-head{display:flex;align-items:center;gap:6px;font-weight:600}.xfer-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xfer-size,.xfer-sub{color:var(--text-muted);font-size:12px;font-weight:400}.xfer-sub{margin-top:2px}.xfer-warn{font-size:12px;margin-top:6px;color:#f0b232}.xfer-actions{display:flex;gap:6px;justify-content:flex-end;margin-top:8px}.xfer-actions>*{padding:4px 12px;font-size:13px;text-decoration:none}.matrix{--mx: #00ff41;--mx-dim: #0b8f2e;position:relative;isolation:isolate;font-family:Cascadia Mono,Consolas,Courier New,monospace;color:var(--mx);text-shadow:0 0 4px rgb(0 255 65 / .55)}.matrix-rain{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-1;opacity:.35;pointer-events:none;border-radius:inherit}.modal.matrix{background:#000a00;border:1px solid var(--mx-dim);box-shadow:0 0 24px #00ff4140;overflow:hidden}.modal.matrix h2{color:var(--mx);letter-spacing:1px}.modal.matrix .field-hint,.modal.matrix .newdm-name small{color:var(--mx-dim);text-shadow:none}.modal.matrix .newdm-item{background:#001400b3;color:var(--mx)}.modal.matrix .newdm-item.picked{outline:1px solid var(--mx)}.xfer-panel.matrix{position:fixed;background:#000a00;border:1px solid var(--mx-dim);border-radius:8px;padding:8px;box-shadow:0 0 24px #00ff4140;overflow-x:hidden}.matrix .xfer-item{background:#000c00bf;box-shadow:none;border:1px solid #063d14;border-left:3px solid var(--mx)}.matrix .xfer-offered{border-left-color:#c6ff00;animation:mx-blink 1s steps(2) infinite}.matrix .xfer-failed,.matrix .xfer-cancelled,.matrix .xfer-declined{border-left-color:#ff3b3b;color:#ff6b6b}.matrix .xfer-size,.matrix .xfer-sub{color:var(--mx-dim);text-shadow:none}.matrix .xfer-bar{margin-top:6px;white-space:pre;font-size:12px;overflow:hidden}.matrix .btn-primary,.matrix .btn-secondary{background:transparent;color:var(--mx);border:1px solid var(--mx);border-radius:2px;font-family:inherit;text-shadow:inherit}.matrix .btn-primary{background:#00ff4126}.matrix .btn-primary:hover:not(:disabled),.matrix .btn-secondary:hover{background:var(--mx);color:#000;text-shadow:none}.matrix .btn-primary:disabled{opacity:.4}.matrix .text-input,.matrix .xfer-pick{background:#001400;color:var(--mx);border:1px solid var(--mx-dim)}@keyframes mx-blink{50%{border-left-color:transparent}}@media(prefers-reduced-motion:reduce){.matrix .xfer-offered{animation:none}}.system-avatar{background:linear-gradient(135deg,#5865f2,#eb459e);font-size:20px}.bot-badge{background:#5865f2;color:#fff;font-size:10px;font-weight:700;padding:1px 5px;border-radius:3px;margin-left:4px;letter-spacing:.3px}.sidebar-updates{padding:0 8px 6px;border-top:1px solid var(--bg-3);flex-shrink:0}.sidebar-updates .section-title{padding-top:8px}.role-dot{display:inline-block;width:12px;height:12px;border-radius:50%;flex-shrink:0}.role-pills{display:flex;flex-wrap:wrap;gap:4px}.role-pill{display:inline-flex;align-items:center;gap:5px;background:var(--bg-3);border-radius:4px;padding:2px 8px 2px 6px;font-size:12px}.role-pill .role-dot{width:10px;height:10px}.roles-list{display:flex;flex-direction:column;gap:6px;margin:10px 0 14px}.role-row{display:flex;align-items:center;gap:8px;background:var(--bg-2);border-radius:6px;padding:8px 10px}.role-name{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-count{color:var(--text-faint);font-size:12px}.role-row .icon-btn{font-size:11px;padding:4px 6px}.role-row .icon-btn:disabled{opacity:.3}.role-row .btn-secondary{padding:6px 12px}.role-editor{background:var(--bg-2);border-radius:6px;border-left:4px solid;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.role-colors{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.role-swatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;padding:0;cursor:pointer}.role-swatch.picked{border-color:#fff;box-shadow:0 0 0 2px var(--accent)}.role-swatch.none{background:var(--bg-3);color:var(--text-muted);font-size:14px;line-height:1}.role-swatch.custom{background:none;border:2px dashed var(--text-faint);overflow:hidden}.role-swatch.custom::-webkit-color-swatch-wrapper{padding:0}.role-swatch.custom::-webkit-color-swatch{border:0;border-radius:50%}.role-preview{margin-left:8px;font-weight:700}.role-perms{display:flex;flex-direction:column;gap:4px}.role-perm{display:flex;gap:10px;align-items:flex-start;padding:6px 8px;border-radius:4px;cursor:pointer}.role-perm:hover{background:var(--bg-3)}.role-perm input{margin-top:3px}.role-perm span{display:flex;flex-direction:column}.role-perm small{color:var(--text-faint)}.role-members{display:flex;flex-direction:column;gap:4px;max-height:220px;overflow-y:auto}label.field-label{flex-direction:column;gap:6px}label.field-label .text-input{text-transform:none;font-size:15px;font-weight:500;letter-spacing:0}@media(min-width:700px){.settings-tabs{flex-wrap:wrap}}.f1-import{display:flex;flex-direction:column;gap:10px}.f1-kinds{display:flex;gap:16px;flex-wrap:wrap}.f1-kinds label{display:flex;align-items:center;gap:6px;cursor:pointer}.f1-list{display:flex;flex-direction:column;gap:4px;max-height:45vh;overflow-y:auto}.f1-race{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-2);border-radius:6px;cursor:pointer;border-left:3px solid #e10600}.f1-race.off{opacity:.5;border-left-color:var(--text-faint)}.f1-round{font-weight:800;color:#e10600;min-width:22px;text-align:center}.f1-name{flex:1;min-width:0;display:flex;flex-direction:column;font-weight:600}.f1-name small{color:var(--text-faint);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.f1-when{color:var(--text-muted);font-size:13px;white-space:nowrap}.events-head>button{white-space:nowrap}.stage-controls{position:absolute;right:52px;bottom:10px;display:flex;align-items:center;gap:6px;opacity:0;transition:opacity .15s}.stage-main:hover .stage-controls,.stage-controls:focus-within{opacity:1}@media(hover:none){.stage-controls{opacity:1}}.stage-info{height:34px;box-sizing:border-box;display:flex;align-items:center;padding:0 10px;border-radius:8px;background:#0009;color:#fff;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.stage-volume{height:34px;box-sizing:border-box;display:flex;align-items:center;gap:6px;padding:4px 10px 4px 6px;border-radius:8px;background:#0009;color:#fff}.stage-volume button{background:none;border:0;font-size:18px;padding:2px 4px;cursor:pointer}.stage-volume input{width:110px;accent-color:var(--accent)}.stage-volume-pct{font-size:12px;min-width:34px;text-align:right}.admin-link{margin-top:2px}.mx-wrap{flex:1;min-height:0;display:flex;background:#000a00;overflow:hidden}.mx-wrap>.matrix-rain{opacity:.18}.mx-console{flex:1;min-height:0;overflow-y:auto;padding:16px}.mx-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}.mx-head h2{margin:0;font-size:20px;letter-spacing:1px}.mx-live{color:var(--mx-dim);font-size:12px;text-shadow:none}.mx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px}.mx-box{background:#000e00d1;border:1px solid #0b4d1c;border-radius:6px;padding:10px 12px;min-width:0}.mx-box.warn{border-color:#c6ff00;box-shadow:0 0 12px #c6ff0040}.mx-box h3{margin:0 0 8px;font-size:13px;color:var(--mx);letter-spacing:1px}.mx-box:last-child{grid-column:1 / -1}.mx-row{display:flex;justify-content:space-between;gap:10px;font-size:13px;line-height:1.6}.mx-row>span:first-child{color:var(--mx-dim);text-shadow:none;flex-shrink:0}.mx-row>span:last-child{text-align:right;white-space:pre;overflow:hidden;text-overflow:ellipsis}.mx-row.warn>span:last-child{color:#c6ff00}.mx-log-tools{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap}.mx-log-tools button{background:transparent;color:var(--mx);border:1px solid #0b4d1c;border-radius:2px;padding:3px 10px;font-family:inherit;font-size:12px}.mx-log-tools button.on,.mx-log-tools button:hover{background:var(--mx);color:#000;text-shadow:none}.mx-log{max-height:420px;overflow-y:auto;font-size:12px}.mx-log-line{border-top:1px solid #062b10;padding:5px 0}.mx-log-line pre{margin:2px 0 0;white-space:pre-wrap;word-break:break-word;font-family:inherit}.mx-log-line.error{color:#ff6b6b;text-shadow:0 0 4px rgb(255 80 80 / .5)}.mx-log-line.warn{color:#c6ff00}.mx-log-line.app{color:#7fdbff;text-shadow:0 0 4px rgb(127 219 255 / .4)}.mx-log-meta{opacity:.75}.mx-empty{color:var(--mx-dim);padding:8px 0}.mx-hint{margin-top:8px;font-size:11px;color:var(--mx-dim);text-shadow:none}@media(max-width:700px){.mx-grid{grid-template-columns:1fr}.mx-console{padding:10px}}.mx-log-short{max-height:260px}.mx-alarm{border-color:#ff3b3b!important;box-shadow:0 0 16px #ff3b3b59;margin-bottom:12px;color:#ffd0d0;text-shadow:0 0 4px rgb(255 80 80 / .5)}.mx-alarm h3{color:#ff6b6b!important}.mx-alarm p{margin:6px 0;font-size:13px;line-height:1.5}.mx-alarm .mx-ok{color:var(--mx)}.mx-emergency{margin-bottom:12px}.mx-emergency-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.mx-emergency-buttons button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:#001e0099;color:var(--mx);border:1px solid var(--mx-dim);border-radius:4px;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:700;text-shadow:inherit;cursor:pointer}.mx-emergency-buttons button small{font-weight:400;font-size:11px;color:var(--mx-dim);text-shadow:none}.mx-emergency-buttons button:hover{border-color:var(--mx);box-shadow:0 0 10px #00ff414d}.mx-emergency-buttons button.on{border-color:#c6ff00;color:#c6ff00}.mx-emergency-buttons button.danger{border-color:#7a1f1f;color:#ff8a8a}.mx-emergency-buttons button.danger:hover{border-color:#ff3b3b;box-shadow:0 0 10px #ff3b3b59}.mx-blocks{margin-top:10px;border-top:1px solid #062b10;padding-top:6px}.mx-mini{background:transparent;color:var(--mx);border:1px solid #0b4d1c;border-radius:2px;padding:0 6px;margin-left:6px;font-family:inherit;font-size:11px;cursor:pointer}.mx-mini:hover{background:var(--mx);color:#000;text-shadow:none}.mx-confirm{max-width:480px}.mx-confirm-text{font-size:13px;line-height:1.5}.mx-confirm-text ul{padding-left:18px;margin:6px 0}.mx-confirm .field-label{color:var(--mx-dim);margin-top:8px}.mx-confirm select.text-input{width:100%}.mx-error{color:#ff6b6b;font-size:13px}.matrix .btn-primary.mx-danger:not(:disabled){border-color:#ff3b3b;color:#ff8a8a;background:#ff3b3b1f}.matrix .btn-primary.mx-danger:hover:not(:disabled){background:#ff3b3b;color:#000}.badge.ok{background:#23a55a}.twofa-box{background:var(--bg-2);border-radius:8px;padding:12px 14px;margin:8px 0}.twofa-box ol{margin:0 0 10px;padding-left:18px;line-height:1.6}.twofa-qr{display:block;background:#fff;padding:6px;border-radius:8px;margin:6px 0;image-rendering:pixelated}.twofa-secret{font-size:14px;letter-spacing:1px;-webkit-user-select:all;user-select:all}.recovery-codes{background:var(--bg-0);padding:10px 14px;border-radius:6px;font-size:16px;letter-spacing:1px;columns:2;-webkit-user-select:all;user-select:all}.checkbox-row{display:flex;align-items:center;gap:8px;cursor:pointer}.device-row{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-2);border-radius:6px;margin-bottom:6px}.device-name{flex:1;display:flex;flex-direction:column;font-weight:600;gap:2px}.device-name .badge{margin-left:6px}.device-name small{color:var(--text-faint);font-weight:400}.member-admin{margin-top:8px;display:flex;flex-direction:column;gap:8px}.member-admin-row{display:flex;gap:6px;flex-wrap:wrap}.member-admin-row>button{flex:1}.member-admin-confirm{background:var(--bg-2);border-radius:6px;padding:8px 10px;display:flex;flex-direction:column;gap:8px;font-size:13px}.member-admin-confirm p,.member-admin-hint p{margin:0;line-height:1.4}.member-admin-hint{background:#f0b2321f;border:1px solid rgb(240 178 50 / .5);border-radius:6px;padding:8px 10px;font-size:13px;display:flex;flex-direction:column;gap:8px}.badge.banned{background:var(--danger)}.member .badge.banned+*{opacity:.5}.ttl-badge{margin-left:8px;background:#f0b23226;color:#f0b232;border:1px solid rgb(240 178 50 / .4);border-radius:10px;padding:1px 8px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.ttl-modal{max-width:440px}.ttl-options{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0}.ttl-option{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 6px;border-radius:6px;background:var(--bg-2);cursor:pointer;font-weight:600;font-size:14px}.ttl-option input{display:none}.ttl-option.active{background:var(--accent);color:#fff}.ttl-option.disabled{cursor:default;opacity:.6}.ttl-warn{color:#f0b232;font-size:13px}.xfer-gps{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:#c6ff00;margin:0 0 8px;cursor:pointer}.xfer-gps input{margin-top:2px}.device-name .badge{align-self:flex-start;margin-left:0}.mx-restart{margin-top:10px;display:flex;flex-direction:column;gap:6px}.mx-emergency-buttons button:disabled{opacity:.45;cursor:not-allowed}.status-dot.idle,.status-dot-inline.idle{background:#f0b232}.status-dot.dnd,.status-dot-inline.dnd{background:#f23f43}.status-dot.dnd:after,.status-dot-inline.dnd:after{content:"";position:absolute;left:22%;right:22%;top:50%;height:2px;margin-top:-1px;background:#fff;border-radius:1px}.status-dot.dnd{display:block}.status-dot.invisible,.status-dot-inline.invisible{background:var(--bg-1);box-shadow:inset 0 0 0 2px var(--text-faint)}.status-dot-inline{position:relative;display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--text-faint);flex-shrink:0;vertical-align:-1px}.status-dot-inline.on{background:var(--online)}.profile-presence{margin-top:4px;font-size:13px;color:var(--text-muted);display:flex;align-items:center;gap:6px}.status-picker{display:flex;flex-direction:column;gap:2px}.status-option{display:flex;align-items:flex-start;gap:10px;text-align:left;background:none;border:0;border-radius:6px;padding:7px 8px;color:var(--text);cursor:pointer}.status-option:hover{background:var(--bg-3)}.status-option.active{background:var(--bg-3);outline:1px solid var(--accent)}.status-option .status-dot-inline{margin-top:3px}.status-option span:last-child{display:flex;flex-direction:column;font-weight:600;font-size:14px}.status-option small{font-weight:400;color:var(--text-faint);font-size:12px}.invite-modal{max-width:520px}.invite-state{font-weight:600;padding:6px 10px;border-radius:6px;margin:6px 0}.invite-state.open{background:#23a55a26;color:#3ba55d}.invite-state.closed{background:var(--bg-2);color:var(--text-muted)}.invite-create{flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}.invite-create select{width:auto}.invite-item{background:var(--bg-2);border-radius:6px;padding:8px 10px;margin-top:8px}.invite-item.fresh{outline:1px solid var(--accent)}.invite-meta{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--text-faint);margin-top:6px}.sim-modal{max-width:760px;width:min(760px,calc(100vw - 24px))}.sim-buttons{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 10px}.sim-buttons button{background:var(--bg-2);color:var(--text-muted);border:1px solid transparent;border-radius:6px;padding:6px 10px;font-size:13px;font-weight:600;cursor:pointer}.sim-buttons button:hover{color:var(--text)}.sim-buttons button.on{background:var(--accent);color:#fff}.sim-svg{width:100%;height:auto;display:block}.sim-arrow{fill:none;stroke:var(--text-faint);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.sim-node rect{fill:var(--bg-2);stroke:var(--text-faint);stroke-width:1;transition:fill .3s,stroke .3s}.sim-node.ok rect{fill:#23a55a2e;stroke:#23a55a}.sim-node.warn rect{fill:#f0b2322e;stroke:#f0b232}.sim-node.bad rect{fill:#f23f4333;stroke:#f23f43}.sim-title{fill:var(--text);font-size:15px;font-weight:700;text-anchor:middle;dominant-baseline:central}.sim-sub{fill:var(--text-muted);font-size:12px;text-anchor:middle;dominant-baseline:central}.sim-legend{font-size:12px;color:var(--text-faint);margin:2px 0 8px}.sim-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.sim-steps li{display:flex;gap:10px;align-items:flex-start;background:var(--bg-2);border-radius:6px;padding:8px 10px;font-size:14px;line-height:1.45;border-left:3px solid var(--text-faint)}.sim-steps li.ok{border-left-color:#23a55a}.sim-steps li.warn{border-left-color:#f0b232}.sim-steps li.bad{border-left-color:#f23f43}.sim-tiles{display:none}@media(max-width:560px){.sim-svg{display:none}.sim-tiles{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:4px}.sim-tile{display:flex;flex-direction:column;align-items:center;padding:8px 6px;border-radius:8px;background:var(--bg-2);border:1px solid var(--text-faint)}.sim-tile b{font-size:14px}.sim-tile span{font-size:12px;color:var(--text-muted)}.sim-tile.ok{background:#23a55a2e;border-color:#23a55a}.sim-tile.warn{background:#f0b2322e;border-color:#f0b232}.sim-tile.bad{background:#f23f4333;border-color:#f23f43}.sim-legend{display:none}}.roll-card{display:inline-flex;align-items:center;gap:12px;background:var(--bg-2);border:1px solid var(--bg-3);border-left:3px solid var(--accent);border-radius:8px;padding:8px 14px 8px 10px;margin-top:2px}.roll-card .roll-big{font-size:30px;line-height:1}.roll-card>span:last-child{display:flex;flex-direction:column}.roll-card small{color:var(--text-faint);font-size:12px}.roll-card b{font-size:22px}.roll-dice{font-weight:400;color:var(--text-muted);font-size:18px}.command-help{display:flex;flex-direction:column;gap:2px;padding:6px}.command-help button{text-align:left;background:none;border:0;color:var(--text-muted);padding:4px 6px;border-radius:4px;cursor:pointer;font-size:13px}.command-help button:hover{background:var(--bg-3);color:var(--text)}.command-help b{color:var(--text);margin-right:6px}.fwd-icon{width:28px;height:28px;border-radius:50%;background:var(--bg-3);display:grid;place-items:center;font-weight:700;color:var(--text-muted)}.new-divider{display:flex;align-items:center;margin:10px 16px 4px;border-top:1px solid #f23f43;position:relative}.new-divider span{position:absolute;right:0;top:-9px;background:#f23f43;color:#fff;font-size:11px;font-weight:700;padding:1px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.unread-banner{position:sticky;top:0;z-index:5;display:flex;background:var(--accent);color:#fff;border-radius:0 0 8px 8px;margin:0 12px;font-size:13px;font-weight:600}.unread-banner button{background:none;border:0;color:inherit;padding:6px 12px;cursor:pointer;font:inherit}.unread-banner button:first-child{flex:1;text-align:left}.reminder-badge{background:#5865f226;color:var(--accent);border:0;border-radius:10px;padding:0 8px;font-size:11px;font-weight:600;cursor:pointer;margin-left:4px}.msg-head-grouped{margin:0 0 2px -4px;line-height:18px}.reminder-modal{max-width:440px}.reminder-quick{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:10px 0}.reminder-quick button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:8px 10px}.reminder-quick small{color:var(--text-faint);font-weight:400;font-size:12px}.reminder-custom{gap:8px}.reminder-custom input{flex:1;min-width:0}.reminder-existing{font-size:13px;color:var(--text-muted)}.reminder-note{position:fixed;left:50%;bottom:90px;transform:translate(-50%);z-index:70;display:flex;align-items:center;gap:10px;background:var(--bg-0);border:1px solid var(--accent);border-radius:10px;padding:10px 12px;box-shadow:0 8px 24px #00000073;max-width:calc(100vw - 24px);font-size:14px}.watch-start{display:flex;justify-content:center;margin:4px 0 10px}.watch-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap;width:min(560px,100%)}.watch-form input{flex:1;min-width:180px}.watch-party{width:100%;max-width:960px;margin:0 auto 10px;display:flex;flex-direction:column;gap:6px}.watch-frame{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;border-radius:10px;overflow:hidden}.watch-frame iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.watch-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.watch-controls button{background:var(--bg-2);border:0;color:var(--text);border-radius:6px;padding:6px 10px;cursor:pointer;font-size:14px}.watch-controls button:hover{background:var(--bg-3)}.watch-info{flex:1;font-size:12px;color:var(--text-muted);min-width:140px}.watch-frame video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:#000}.watch-msg{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;color:#ddd;font-size:14px}.watch-tap{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--accent);color:#fff;border:0;border-radius:22px;padding:10px 18px;font-size:15px;font-weight:600;cursor:pointer}.watch-or{font-size:12px;color:var(--text-muted)}.watch-hint{font-size:12px;color:var(--warning, #f0b232)}.watch-preload{font-size:12px;color:var(--success, #23a55a);padding:0 4px}.watch-preload.error{color:var(--danger, #f23f43);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watch-msg .btn-secondary{margin-left:6px}.watch-upload{display:flex;flex-direction:column;align-items:center;gap:8px;width:min(460px,100%);font-size:13px;color:var(--text-muted);text-align:center}.watch-progress{width:100%;height:6px;border-radius:3px;background:var(--bg-3);overflow:hidden}.watch-progress>div{height:100%;background:var(--accent);transition:width .2s}.watch-start{flex-direction:column;align-items:center;gap:6px}.voice-tools{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:0 8px;width:100%}.voice-tools>.watch-party,.voice-tools>.board{flex:1 1 100%}.board-start{display:flex;justify-content:center;margin:4px 0 10px}.board{width:100%;max-width:1100px;margin:0 auto 10px;display:flex;flex-direction:column;gap:6px}.board-tools{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.board-tools button{background:var(--bg-2);border:0;color:var(--text);border-radius:6px;min-width:32px;height:32px;padding:0 8px;cursor:pointer;font-size:14px;display:inline-flex;align-items:center;justify-content:center}.board-tools button:hover{background:var(--bg-3)}.board-tools button.active{outline:2px solid var(--accent);outline-offset:-2px}.board-tools .board-color{width:26px;min-width:26px;height:26px;border-radius:50%;padding:0;border:2px solid rgb(255 255 255 / .25)}.board-tools .board-color.active{outline:2px solid var(--accent);outline-offset:2px}.board-dot{display:inline-block;border-radius:50%;background:var(--text)}.board-sep{width:1px;height:22px;background:var(--bg-3);margin:0 4px}.board-note{flex:1;font-size:12px;color:var(--text-muted);min-width:60px}.board-canvas{position:relative;width:100%;border-radius:10px;overflow:hidden;box-shadow:0 0 0 1px #0000004d}.board-canvas canvas{display:block;touch-action:none;cursor:crosshair;background:#fff}.board-locked{background:#0009}.board-eraser{position:absolute;left:0;top:0;display:none;border:2px solid #868e96;border-radius:50%;background:#fff6;pointer-events:none}.board-canvas canvas.erasing{cursor:none}.channel-private{font-size:11px;opacity:.7;margin-left:2px}.founder-only{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:8px;background:var(--bg-2);cursor:pointer;margin:4px 0 8px}.founder-only input{margin-top:3px}.founder-only strong{display:block}.avatar-x-row{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:12px}.avatar-x-row input[type=range]{flex:1;min-width:0;accent-color:var(--accent, #5865f2)}.col-resizer{position:absolute;top:0;bottom:0;width:8px;z-index:15;cursor:col-resize;touch-action:none}.col-resizer.left{left:calc(var(--sidebar-w, 240px) - 4px)}.col-resizer.right{right:calc(var(--members-w, 240px) - 4px)}.col-resizer:after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background:transparent;transition:background .15s}.col-resizer:hover:after,.col-resizer:focus-visible:after,.col-resizing .col-resizer:after{background:var(--accent)}.col-resizer:focus-visible{outline:none}body.col-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}body.col-resizing iframe,body.col-resizing video{pointer-events:none}.member-column{background:var(--bg-1);display:flex;flex-direction:column;min-height:0;height:100dvh;min-width:0;padding-top:env(safe-area-inset-top)}.sidebar-hide{font-size:18px;line-height:1}.sidebar-show{font-size:20px;line-height:1;padding:4px 8px}.header-members{margin-left:auto;font-size:16px;padding:6px;border-radius:6px;opacity:.6}.header-members.active{opacity:1;background:var(--bg-3)}.header-tools+.header-members{margin-left:0}.layout-options{display:flex;flex-direction:column;gap:6px}.layout-option{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border-radius:8px;background:var(--bg-2);cursor:pointer}.layout-option input{margin-top:3px;accent-color:var(--accent)}.layout-option small{display:block;color:var(--text-faint);font-size:12px}.section-order{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.section-order li{display:flex;align-items:center;gap:4px;padding:4px 6px 4px 10px;border-radius:8px;background:var(--bg-2)}.section-order li .checkbox-row{flex:1}.section-order li.off .checkbox-row{color:var(--text-faint)}.section-order .icon-btn{padding:4px 8px;font-size:12px}.section-order .icon-btn:disabled{opacity:.3}.section-order .checkbox-row{justify-content:flex-start}.section-order input[type=checkbox],.field .avatar-x-row input[type=range]{width:auto;padding:0;background:none;box-shadow:none;border:0;accent-color:var(--accent)}.section-order input[type=checkbox]{flex:none;width:16px;height:16px;margin:0}.field .avatar-x-row input[type=range]{flex:1}.mx-pre{margin:4px 0;padding:6px 8px;background:#001e0099;border:1px solid #062b10;border-radius:4px;font-family:inherit;font-size:11px;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow:auto}.mx-small-buttons{margin-top:8px}.mx-small-buttons button{font-size:12px}.mx-mini:disabled{opacity:.4;cursor:default}.mx-big{padding:6px 12px;font-size:13px;margin-left:0}.mx-spark{margin-bottom:4px}.mx-spark svg{display:block;width:100%;height:34px;color:var(--mx);filter:drop-shadow(0 0 3px rgb(0 255 65 / .5))}.mx-table-wrap{overflow-x:auto}.mx-table{width:100%;border-collapse:collapse;font-size:12px}.mx-table th{text-align:left;font-weight:400;color:var(--mx-dim);border-bottom:1px solid #0b4d1c;padding:3px 6px 3px 0;white-space:nowrap}.mx-table td{padding:3px 6px 3px 0;border-bottom:1px solid #062b10;white-space:nowrap}.mx-table tr.dim td{opacity:.5}.mx-table tr.off td{opacity:.4;text-decoration:line-through}.mx-form{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}.mx-form .text-input{flex:1 1 140px;min-width:0;padding:6px 8px;font-family:inherit;font-size:12px;border-radius:3px}.mx-form select.text-input{flex:0 1 auto}.mx-form .btn-primary,.mx-form .btn-secondary{padding:6px 12px;font-size:12px}.mx-select,.mx-search{background:transparent;color:var(--mx);border:1px solid #0b4d1c;border-radius:2px;padding:3px 6px;font-family:inherit;font-size:12px}.mx-search{flex:1 1 120px;min-width:0}.mx-select option{background:#001400}.mx-voice{margin:8px 0 0;font-size:13px;line-height:1.5}.mx-voice.bad{color:#ff8a8a}.mx-voice.warn{color:#c6ff00}.voice-test{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.voice-test-result{margin:0;font-size:14px;line-height:1.5}.voice-test-result.bad{color:var(--danger)}.voice-test-result.warn{color:#faa61a}.maintenance-banner{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#4a3a00;color:#ffe08a;font-size:14px;border-bottom:1px solid #6b5400}.maintenance-banner span{flex:1;min-width:0}.maintenance-banner small{opacity:.7}.mx-row>span:last-child:has(.mx-mini){white-space:normal;overflow:visible}.passkey-btn{width:100%}.auth-or{display:flex;align-items:center;gap:10px;color:var(--text-faint);font-size:12px;text-transform:uppercase}.auth-or:before,.auth-or:after{content:"";flex:1;height:1px;background:var(--bg-3)}.passkey-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}.passkey-list li{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 10px;border-radius:8px;background:var(--bg-2)}.passkey-name{flex:1;min-width:0;display:flex;flex-direction:column}.passkey-name small{color:var(--text-faint);font-size:12px}.passkey-rename{display:flex;gap:6px;flex:1;flex-wrap:wrap}.passkey-rename .text-input{flex:1 1 160px}.passkey-code{align-items:flex-start;margin-top:8px}.passkey-code small{display:block;color:var(--text-faint);font-size:12px}.passkey-code.off{opacity:.6}.watch-sound{font-size:13px;color:#f0b232;background:#f0b2321a;border-radius:8px;padding:6px 10px}.watch-sound.overlay{position:absolute;left:10px;right:10px;top:10px;background:#000000b3}.watch-volume{display:inline-flex;align-items:center;gap:4px}.watch-volume input{width:90px;accent-color:var(--accent)}
