:root{--chat-font-scale:1}#chat-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}#chat-messages{flex:1;overflow-y:auto;padding:10px;font-size:calc(.9rem * var(--chat-font-scale,1));font-family:inter,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,sans-serif;font-variant-numeric:tabular-nums;display:flex;flex-direction:column;gap:4px;min-width:0}.chat-messages-shell{position:relative;flex:1;display:flex;min-width:0;min-height:0}.chat-row{display:block;max-width:100%;min-width:0;line-height:1.35;contain:paint;overflow-wrap:anywhere;word-break:break-word}.chat-row-emote .chat-emote-content{font-style:italic}.chat-tabs-shell{--chat-tabs-edge-width:40px;--chat-tabs-fade-width:28px;position:relative;display:grid;grid-template-columns:0 minmax(0,1fr)0;min-width:0;border-bottom:var(--ui-border-light);background:var(--chat-tabs-bg);border-radius:var(--ui-radius-md)var(--ui-radius-md)0 0;overflow:hidden}.chat-tabs-shell.is-scrollable{grid-template-columns:var(--chat-tabs-edge-width)minmax(0,1fr)var(--chat-tabs-edge-width)}.chat-tabs-shell::before,.chat-tabs-shell::after{content:'';position:absolute;top:0;bottom:0;width:var(--chat-tabs-edge-width);opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:2}.chat-tabs-shell::before{left:var(--chat-tabs-edge-width);background:linear-gradient(to right,var(--chat-tabs-bg) 20%,transparent)}.chat-tabs-shell::after{right:var(--chat-tabs-edge-width);background:linear-gradient(to left,var(--chat-tabs-bg) 20%,transparent)}.chat-tabs-shell.can-scroll-left::before,.chat-tabs-shell.can-scroll-right::after{opacity:1}#chat-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;min-width:0;background:var(--chat-tabs-bg);-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;touch-action:pan-x}#chat-tabs::-webkit-scrollbar{display:none;width:0;height:0}.chat-tab{flex:none;padding:var(--tab-padding);cursor:pointer;border-right:var(--chat-tab-border);color:var(--dim-color);font-size:calc(.9rem * var(--chat-font-scale,1));white-space:nowrap;transition:all .2s ease}.chat-tabs-scroll-arrow{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:0;background:var(--chat-tabs-bg);color:var(--text-color);cursor:pointer;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .18s ease,background .18s ease,color .18s ease;z-index:4;font-size:1rem;line-height:1;box-shadow:inset 0 0 0 1px rgba(255,255,255,6%)}.chat-tabs-scroll-arrow-left{border-right:var(--chat-tab-border)}.chat-tabs-scroll-arrow-right{border-left:var(--chat-tab-border)}.chat-tabs-shell.is-scrollable .chat-tabs-scroll-arrow{visibility:visible;opacity:1;pointer-events:auto}.chat-tabs-scroll-arrow:hover:not(:disabled){background:var(--ui-surface-hover);color:var(--accent-color)}.chat-tabs-scroll-arrow.has-hidden-activity{background:rgba(255,196,0,.12);color:var(--warning-color,#ffd24a);box-shadow:inset 0 0 0 1px rgba(255,210,74,.3)}.chat-tabs-scroll-arrow.has-hidden-attention{background:rgba(255,210,74,.18);color:var(--warning-color,#ffd24a);box-shadow:inset 0 0 0 1px rgba(255,210,74,.5),0 0 14px rgba(255,210,74,.16)}.chat-tabs-scroll-arrow[data-hidden-count]::after{content:attr(data-hidden-count);position:absolute;top:4px;right:4px;min-width:14px;height:14px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--warning-color,#ffd24a);color:var(--bg-color,#000);font-size:.62rem;font-weight:700;line-height:1}.chat-tabs-scroll-arrow.has-hidden-attention[data-hidden-count]::after{background:#ffd24a;color:#17120b}.chat-tabs-shell.is-scrollable .chat-tabs-scroll-arrow:disabled{opacity:.4;pointer-events:none;color:var(--dim-color)}.chat-tab:hover{background:var(--ui-surface-hover);color:var(--text-color)}.chat-tab.active{background:var(--tab-active-bg);color:var(--tab-active-color);font-weight:700}.chat-tab.unread{animation:pulse-tab 2s infinite;color:var(--accent-color)}.chat-tab.attention{color:var(--warning-color,#ffd24a);background:rgba(255,210,74,.16);box-shadow:inset 0 0 0 1px rgba(255,210,74,.45),0 0 12px rgba(255,210,74,.2);animation:whisper-tab-flash .9s ease-in-out infinite}.chat-tab.dragging{opacity:.5;border:1px dashed var(--text-color)}@keyframes pulse-tab{0%{opacity:1}50%{opacity:.4}100%{opacity:1}}@keyframes whisper-tab-flash{0%,100%{background:rgba(255,210,74,8%);box-shadow:inset 0 0 0 1px rgba(255,210,74,.24),0 0 rgba(255,210,74,0)}50%{background:rgba(255,210,74,.28);box-shadow:inset 0 0 0 1px rgba(255,210,74,.7),0 0 16px rgba(255,210,74,.38)}}#chat-input-area{display:flex;align-items:center;border-top:1px solid var(--dim-color);padding:5px;position:relative}#chat-input{flex:1;min-width:0;background:0 0;border:none;color:var(--text-color);font-family:inter,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,sans-serif;font-size:calc(1rem * var(--chat-font-scale,1))}#chat-input-status{display:inline-flex;align-items:center;justify-content:flex-end;min-width:82px;margin-left:8px}#chat-char-count{font-size:calc(.85rem * var(--chat-font-scale,1));white-space:nowrap}#chat-char-count.near-limit{color:var(--warning-color,#ff0)}#chat-char-count.at-limit{color:var(--error-color,#f00)}.chat-player-suggestions{position:absolute;left:28px;right:92px;bottom:calc(100% + 4px);z-index:40;max-height:180px;overflow-y:auto;background:var(--bg-color);border:1px solid var(--accent-color);box-shadow:0 8px 18px rgba(0,0,0,.35);font-family:inter,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,sans-serif;font-size:calc(.9rem * var(--chat-font-scale,1))}.chat-player-suggestions[hidden]{display:none}#chat-panel.chat-top-first .chat-player-suggestions{top:calc(100% + 4px);bottom:auto}.chat-player-suggestion{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:30px;padding:5px 8px;border:0;background:0 0;color:var(--text-color);text-align:left;cursor:pointer;font:inherit}.chat-player-suggestion:hover,.chat-player-suggestion.is-active{background:var(--ui-surface-hover);color:var(--accent-color)}.chat-player-suggestion-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.chat-player-suggestion-meta{flex:none;color:var(--dim-color);font-size:calc(.75rem * var(--chat-font-scale,1));text-transform:uppercase}.dim{color:var(--dim-color)}.msg-user-link{cursor:pointer;transition:color .15s}.msg-user-link:hover{color:var(--accent-color);text-decoration:underline}.msg-premium-star{display:inline-block;margin-right:2px;color:#ffd54d;text-shadow:0 0 6px rgba(255,213,77,.45);cursor:help}.msg-admin-gear{display:inline-block;margin-right:2px;color:#8ec8f0;text-shadow:0 0 8px rgba(142,200,240,.7);cursor:help}.msg-admin-name{display:inline-block;text-shadow:none}.msg-chat-icon{display:inline-block;margin-right:0;text-align:center;cursor:help;vertical-align:-.08em;font-weight:700;line-height:1}.msg-chat-icon+.msg-chat-icon{margin-left:1px}.msg-chat-icon-image{width:.95em;height:.95em;min-width:.95em}.msg-chat-icon-image-el{display:block;width:100%;height:100%}.msg-chat-icon-id-premium{color:#ffd54d;text-shadow:0 0 6px rgba(255,213,77,.45)}.msg-chat-icon-id-admin{color:#8ec8f0;text-shadow:0 0 8px rgba(142,200,240,.7)}.msg-chat-icon-id-moo{color:#f5f0e8;text-shadow:0 0 7px rgba(245,240,232,.45);font-size:.82em}.msg-admin-developer-gear{cursor:pointer}.msg-admin-developer-gear:focus-visible{outline:1px solid var(--accent-color);outline-offset:2px}.msg-admin-developer-gear-active{animation:admin-developer-gear-spin 1.1s linear infinite;transform-origin:center}@keyframes admin-developer-gear-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.msg-chat-icon-id-alpha_tester{color:#7df3c6;text-shadow:0 0 8px rgba(125,243,198,.45);font-weight:700;font-size:1.02em;font-family:apple color emoji,segoe ui emoji,noto color emoji,twemoji mozilla,emojione color,sans-serif;text-shadow:none}.msg-chat-icon-id-premium,.msg-chat-icon-id-admin{font-family:apple color emoji,segoe ui emoji,noto color emoji,twemoji mozilla,emojione color,sans-serif;text-shadow:none}.msg-chat-title{display:inline-block;margin-right:4px;color:var(--dim-color);letter-spacing:.02em}.msg-chat-title-prefix{color:#7df3c6}.msg-chat-title-suffix{color:#7df3c6;margin-left:4px;margin-right:0}.msg-mention-link{color:var(--accent-color);font-weight:600}.chat-row-mention{background:rgba(255,212,59,.14);border-left:2px solid rgba(255,212,59,.85);padding-left:6px}.chat-link{color:var(--accent-color);text-decoration:underline;word-break:break-all}.chat-link:hover{color:var(--text-color)}.chat-item-link{cursor:pointer;font-weight:600;text-decoration:none}.chat-item-link:hover{text-decoration:underline}.chat-market-link{cursor:pointer;font-weight:600;color:var(--warning-color);text-decoration:none}.chat-market-link:hover{text-decoration:underline}.chat-channel-link{cursor:pointer;font-weight:600;color:var(--accent-color);text-decoration:none}.chat-channel-link:hover{color:var(--text-color);text-decoration:underline}.item-tooltip-trigger.chat-item-link{padding:0;border:0;background:0 0;font:inherit}.item-tooltip-trigger.chat-item-link:focus-visible{outline:1px solid currentColor;outline-offset:2px}.chat-item-link.rarity-basic{color:var(--rarity-basic)}.chat-item-link.rarity-common{color:var(--rarity-common)}.chat-item-link.rarity-uncommon{color:var(--rarity-uncommon)}.chat-item-link.rarity-rare{color:var(--rarity-rare)}.chat-item-link.rarity-epic{color:var(--rarity-epic)}.signature-drop-message{color:var(--text-color)}.context-menu{display:none;position:fixed;background:var(--bg-color,#1e1e1e);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.4);z-index:10000;min-width:160px;padding:4px 0}.context-menu.visible{display:block}.context-menu-item{display:block;width:100%;padding:8px 12px;background:0 0;border:none;cursor:pointer;color:var(--text-color);font-size:.9em;text-align:left;transition:background .1s}.context-menu-item[hidden]{display:none!important}.context-menu-item:hover{background:rgba(255,255,255,.1);color:var(--accent-color)}.context-menu-separator{height:1px;background:var(--border-color);margin:4px 0}.context-menu-separator[hidden]{display:none!important}.system-message-text{color:#0c6}.msg-system-text{color:#ff0}.broadcast-message{margin:10px 0;padding:12px;border:2px solid var(--accent-color,#00ff00);background:rgba(0,255,0,.1);font-size:1.2em;max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word}.broadcast-community-line{margin:4px 0}.community-event-line{font-weight:500}.community-event-line-soon{color:var(--warning-color,#ffcc00)}.community-event-line-started{color:var(--success-color,#00ff00)}.broadcast-message.broadcast-warning{border-color:#fc0;background:rgba(255,204,0,.15)}.broadcast-message.broadcast-maintenance{border-color:#f60;background:rgba(255,102,0,.15)}.broadcast-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:.85em;color:var(--dim-color)}.broadcast-type{font-weight:700;font-size:1.1em;color:var(--accent-color,#00ff00)}.broadcast-warning .broadcast-type{color:#fc0}.broadcast-maintenance .broadcast-type{color:#f60}.broadcast-from{color:var(--dim-color)}.broadcast-time{margin-left:auto;color:var(--text-color);font-size:.82em;font-weight:500}.broadcast-content{font-size:1.1em;line-height:1.4;color:var(--text-color);font-weight:500;overflow-wrap:anywhere;word-break:break-word}.context-menu-item.context-menu-danger{color:#f66}.context-menu-item.context-menu-danger:hover{background:rgba(255,100,100,.2);color:#f44}.msg-censored{color:#ff9800;font-size:.85em;margin-left:4px;opacity:.8}.report-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:10001}.report-modal.hidden{display:none}.report-modal-content{background:var(--bg-color,#0a0a0a);border:1px solid var(--border-color);min-width:350px;max-width:450px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(0,0,0,.5)}.report-modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color);background:rgba(255,100,100,.1);flex-shrink:0}.report-modal-title{font-weight:700;color:#f66;font-size:1.1em}.report-modal-close{background:0 0;border:none;color:var(--dim-color);font-size:1.5em;cursor:pointer;padding:0;line-height:1}.report-modal-close:hover{color:var(--text-color)}.report-modal-body{padding:16px;overflow-y:auto;min-height:0}.report-target-info{margin-bottom:16px;padding:8px 12px;background:rgba(0,0,0,.3);border-left:3px solid #f66;color:var(--text-color)}.report-form-group{margin-bottom:16px}.report-form-group label{display:block;margin-bottom:6px;color:var(--dim-color);font-size:.9em}.report-form-group select,.report-form-group textarea{width:100%;background:#1a1a1a;border:1px solid var(--border-color);color:var(--text-color);font-family:inherit;font-size:1em;padding:8px}.report-form-group select option{background:#1a1a1a;color:#e0e0e0}.report-form-group select:focus,.report-form-group textarea:focus{border-color:var(--accent-color)}.report-form-group textarea{min-height:80px;resize:vertical}.report-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border-color);background:rgba(0,0,0,.2);flex-shrink:0}.report-btn{padding:8px 16px;border:1px solid var(--border-color);background:0 0;color:var(--text-color);font-family:inherit;cursor:pointer;transition:all .15s}.report-btn:hover{background:rgba(255,255,255,.1)}.report-btn-cancel{color:var(--dim-color)}.report-btn-submit{background:rgba(255,100,100,.2);border-color:#f66;color:#f66}.report-btn-submit:hover{background:rgba(255,100,100,.3)}#chat-panel.chat-top-first #chat-main{display:flex;flex-direction:column}#chat-panel.chat-top-first #chat-tabs-shell{order:3;border-bottom:none;border-top:1px solid var(--dim-color)}#chat-panel.chat-top-first #chat-tabs{border-top:none}#chat-panel.chat-top-first #chat-input-area{order:1;border-top:none;border-bottom:1px solid var(--dim-color)}#chat-panel.chat-top-first #chat-messages{order:2}#chat-panel.chat-top-first .chat-messages-shell{order:2}.online-players-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.online-players-modal.hidden{display:none}.online-players-modal-content{background:var(--bg-color,#0a0a0a);border:1px solid var(--dim-color);min-width:300px;max-width:400px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(0,0,0,.5)}.online-players-modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--dim-color)}.online-players-modal-title{font-weight:700;color:var(--accent-color);font-size:1.1em}.online-players-modal-close{background:0 0;border:none;color:var(--dim-color);font-size:1.5em;cursor:pointer;padding:0;line-height:1}.online-players-modal-close:hover{color:var(--text-color)}.online-players-modal-body{padding:12px;overflow:hidden;display:flex;flex-direction:column}.online-players-search{width:100%;padding:8px 12px;background:rgba(255,255,255,5%);border:1px solid var(--dim-color);color:var(--text-color);font-family:inherit;font-size:.9em;margin-bottom:12px;box-sizing:border-box}.online-players-search:focus{border-color:var(--accent-color)}.online-players-search::placeholder{color:var(--dim-color)}.online-players-list{overflow-y:auto;max-height:400px}.online-player-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,5%);transition:background .15s}.online-player-item:hover{background:rgba(255,255,255,.1)}.online-player-item:last-child{border-bottom:none}.online-player-name{color:var(--text-color)}.online-player-status{font-size:.7em;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:3px;background:rgba(255,255,255,.1);color:var(--dim-color)}.online-player-item.player-active .online-player-status{background:rgba(0,255,0,.15);color:var(--success-color,#00ff00);border:1px solid rgba(0,255,0,.3)}.online-player-item.player-idle .online-player-status{background:rgba(255,255,255,5%);color:var(--dim-color);border:1px solid rgba(255,255,255,.1)}.chat-inline-twemoji{width:1em;height:1em}