:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;color:var(--text-primary);background:var(--bg-main);font-family:Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#73604a transparent}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button:not(:disabled),summary{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--accent-hover);text-underline-offset:3px}img{max-width:100%}h1,h2,h3,p{overflow-wrap:anywhere}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent-hover);outline-offset:3px}.chat-widget-page,.chat-widget-page body,.chat-widget-page #root{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--bg-main:#0b0d10;--bg-elevated:#11151a;--bg-card:#151a20;--bg-input:#0c1015;--surface-0:#0c1015;--surface-1:#151a20;--surface-2:#1b2026;--border-subtle:#303235;--border-strong:#795737;--border:#303235;--text-primary:#f3eadc;--text-secondary:#b5afa5;--text-muted:#93928b;--accent:#dca75f;--amber:#dca75f;--accent-hover:#f3c98c;--accent-ink:#251a0d;--success:#8bb79a;--danger:#ce776c;--danger-dark:#412322;--twitch:#b799ec;--kick:#8bc96b;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--shadow-card:0 12px 32px #0004, inset 0 1px #f3c98c08;--shadow-ember:0 0 18px #dca75f20;--control-height-sm:34px;--control-height:40px;--control-height-touch:44px;--control-radius:7px;--control-focus:0 0 0 3px #dca75f2e;--control-caret:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cpath d='m1 1 6 6 6-6' fill='none' stroke='%23dca75f' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--wood-surface:linear-gradient(90deg, #100c0990, #100c0950, #100c0990), url(/assets/dark-walnut-5y_AxfON.jpg) center / 900px auto}.ui-icon{vertical-align:middle;flex:none;width:18px;height:18px}.eyebrow{color:var(--accent);letter-spacing:.19em;text-transform:uppercase;font-size:10px;font-weight:750}.ui-card{background:linear-gradient(145deg, var(--bg-card), var(--bg-elevated));border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:0;box-shadow:var(--shadow-card)}.wood-surface{background:var(--wood-surface);border-bottom:1px solid var(--border-strong);box-shadow:inset 0 1px #e2ab6030,0 8px 24px #0006}.ui-button,.ui-icon-button,.ui-dialog button{min-height:38px;color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#1a1e23;justify-content:center;align-items:center;gap:8px;padding:8px 13px;font-size:12px;font-weight:600;text-decoration:none;transition:border-color .18s,box-shadow .18s,background .18s;display:inline-flex}.ui-button:hover,.ui-icon-button:hover,.ui-dialog button:hover{border-color:var(--accent);box-shadow:var(--shadow-ember);background:#28231d}.ui-primary{color:var(--accent-ink);background:linear-gradient(125deg,#f0c68a,#c08b49);border-color:#dca75f;box-shadow:inset 0 1px #fff5}.ui-primary:hover{color:var(--accent-ink);background:linear-gradient(125deg,#ffdda8,#dca75f)}.ui-button{position:relative;overflow:hidden}.ui-button:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 20%,#ffdfa826 50%,#0000 80%);position:absolute;inset:0;transform:translate(-120%)}.ui-button:hover:after{animation:.55s ease-out brass-shine}.ui-primary:active{background-image:radial-gradient(circle,#ffe0a9 0,#dca75f 65%)}.wood-surface{isolation:isolate;position:relative}.wood-surface:after{content:"";pointer-events:none;z-index:-1;opacity:0;background:linear-gradient(110deg,#0000,#dca75f0b,#0000);transition:opacity .3s;position:absolute;inset:0}.wood-surface:hover:after{opacity:1}@keyframes brass-shine{to{transform:translate(120%)}}.ui-button:active,.ui-icon-button:active,.ui-dialog button:active{transform:translateY(1px);box-shadow:inset 0 3px 8px #0008}.ui-icon-button{width:40px;padding:8px}.ui-danger,.ui-dialog .ui-danger{color:#f0c8c1;background:linear-gradient(#482723,#301c1a);border-color:#824a42}.ui-danger:hover,.ui-dialog .ui-danger:hover{border-color:var(--danger);background:#572d26;box-shadow:0 0 16px #ce776c22}.ui-status{color:var(--text-secondary);letter-spacing:.05em;white-space:nowrap;align-items:center;gap:6px;font-size:10px;font-weight:700;display:inline-flex}.ui-status i{background:#878984;border-radius:50%;flex:none;width:6px;height:6px}.ui-status.live{color:#f2c6bd}.ui-status.live i{background:var(--danger);animation:3s ease-in-out infinite ember-glow}.ui-status.connected i,.ui-status.ready i{background:var(--success)}.ui-status.error i{background:var(--danger)}.ui-status.attention i{background:var(--accent)}.ui-status.twitch:not(.live) i,.ui-platform.twitch:before{background:var(--twitch)}.ui-status.kick:not(.live) i,.ui-platform.kick:before{background:var(--kick)}.ui-platform:before{content:"";border-radius:50%;width:6px;height:6px}.ui-avatar{border:1px solid var(--border-subtle);background:#181d22;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;display:inline-grid;overflow:hidden}.ui-avatar img{object-fit:cover;width:100%;height:100%}.brand-avatar{width:50px;height:50px;color:var(--accent);background:linear-gradient(135deg,#8d6337,#24170e 44%,#c69351 78%,#362317);border:1px solid #b58448;padding:3px;box-shadow:0 0 0 3px #130e0b,0 0 0 4px #8a61333d,0 3px 12px #0008}.brand-avatar img{border-radius:50%}.hub-brand{min-width:0;color:var(--text-primary);align-items:center;text-decoration:none;display:inline-flex}.brand-logo{object-fit:contain;width:clamp(176px,16vw,228px);height:auto;max-height:66px;display:block}.brand-mobile-lockup{align-items:center;gap:9px;display:none}.brand-mobile-emblem{border:1px solid #b58448;border-radius:50%;width:42px;height:42px;display:grid;overflow:hidden;box-shadow:0 0 0 2px #130e0b,0 2px 10px #0008}.brand-mobile-emblem img{width:151px;max-width:none;height:auto;transform:translate(-2px,-3px)}.hub-wordmark{gap:1px;min-width:0;display:grid}.hub-wordmark strong{letter-spacing:-.045em;font-size:26px;font-weight:800;line-height:1.1}.hub-wordmark small{color:var(--accent-hover);letter-spacing:.18em;font-size:10px;font-weight:650}.brand-mode{color:var(--text-muted);margin-top:5px;font-size:9px;display:block}.ui-dialog{color:var(--text-primary);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--bg-card);width:min(430px,100% - 24px);max-height:85dvh;margin:auto;padding:26px;overflow:auto;box-shadow:0 24px 70px #000a}.ui-dialog::backdrop{background:#05070bc9}.ui-dialog h2{font-size:22px}.ui-dialog-close{min-width:36px;min-height:36px;padding:0;font-size:24px;line-height:1;position:absolute;top:10px;right:10px}.ui-dialog p{color:var(--text-secondary);font-size:14px;line-height:1.6}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}@keyframes ember-glow{50%{box-shadow:0 0 9px #ce776c80}}@media (width<=640px){.ui-button,.ui-icon-button,.ui-dialog button{min-height:44px}.ui-icon-button{width:44px}.hub-wordmark strong{font-size:21px}.hub-wordmark small{font-size:9px}.brand-logo{display:none}.brand-avatar{width:39px;height:39px}.brand-mobile-lockup{display:inline-flex}}.language-switcher{min-width:0;color:var(--text-secondary);align-items:center;gap:7px;font-size:12px;display:inline-flex}.language-switcher select{border-color:var(--accent);background-color:#0d1116;max-width:150px;min-height:36px;font-weight:600}.language-switcher.compact>span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=640px){.language-switcher,.language-switcher select{width:100%;max-width:none}}:where(html:not(.chat-widget-page) button,html:not(.chat-widget-page) .ui-button,html:not(.chat-widget-page) .ui-icon-button){min-height:var(--control-height);color:var(--text-primary);background:linear-gradient(180deg, var(--surface-2), #15191e);border:1px solid var(--border-strong);border-radius:var(--control-radius);padding:8px 14px;font-weight:650;line-height:1.2;transition:color .16s,background .16s,border-color .16s,box-shadow .16s,transform 80ms;box-shadow:inset 0 1px #fff0,0 1px 2px #0005}:where(html:not(.chat-widget-page) button:hover:not(:disabled),html:not(.chat-widget-page) .ui-button:hover:not(.disabled),html:not(.chat-widget-page) .ui-icon-button:hover:not(:disabled)){color:var(--accent-hover);border-color:var(--accent);box-shadow:var(--shadow-ember), inset 0 1px #f3c98c16;background:linear-gradient(#2b251e,#201b17)}:where(html:not(.chat-widget-page) button:active:not(:disabled),html:not(.chat-widget-page) .ui-button:active:not(.disabled),html:not(.chat-widget-page) .ui-icon-button:active:not(:disabled)){transform:translateY(1px);box-shadow:inset 0 3px 8px #0008}:where(html:not(.chat-widget-page) button[type=submit],html:not(.chat-widget-page) .ui-primary){color:var(--accent-ink);background:linear-gradient(135deg,#f1ca91,#c58c47);border-color:#e1ad68;box-shadow:inset 0 1px #fff6,0 5px 16px #9b602520}:where(html:not(.chat-widget-page) button[type=submit]:hover:not(:disabled),html:not(.chat-widget-page) .ui-primary:hover:not(.disabled)){color:#171008;background:linear-gradient(135deg,#ffdda8,#dca75f)}:where(html:not(.chat-widget-page) .ui-secondary){color:var(--text-primary);background:linear-gradient(180deg, var(--surface-2), var(--surface-1));border-color:var(--accent)}:where(html:not(.chat-widget-page) .ui-danger,html:not(.chat-widget-page) button.danger){color:#f2d4ce;background:linear-gradient(180deg, #4a2926, var(--danger-dark));border-color:#92534b}:where(html:not(.chat-widget-page) .ui-danger:hover:not(:disabled),html:not(.chat-widget-page) button.danger:hover:not(:disabled)){color:#ffe3dd;border-color:var(--danger);background:linear-gradient(#5a302b,#39201e);box-shadow:0 0 16px #ce776c24}:where(html:not(.chat-widget-page) .ui-ghost,html:not(.chat-widget-page) .ui-subtle){color:var(--text-secondary);box-shadow:none;background:0 0;border-color:#0000}:where(html:not(.chat-widget-page) .ui-ghost:hover:not(.disabled),html:not(.chat-widget-page) .ui-subtle:hover:not(.disabled)){color:var(--text-primary);border-color:var(--border-subtle);background:#ffffff08}:where(html:not(.chat-widget-page) input:not([type=checkbox]):not([type=radio]):not([type=file]),html:not(.chat-widget-page) select,html:not(.chat-widget-page) textarea){min-width:0;min-height:var(--control-height);color:var(--text-primary);background-color:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--control-radius);caret-color:var(--accent-hover);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;padding:8px 11px;transition:background-color .16s,border-color .16s,box-shadow .16s}:where(html:not(.chat-widget-page) input:not([type=checkbox]):not([type=radio]):not([type=file]):hover:not(:disabled),html:not(.chat-widget-page) select:hover:not(:disabled),html:not(.chat-widget-page) textarea:hover:not(:disabled)){border-color:#9b7045}:where(html:not(.chat-widget-page) input:not([type=checkbox]):not([type=radio]):not([type=file]):focus-visible,html:not(.chat-widget-page) select:focus-visible,html:not(.chat-widget-page) textarea:focus-visible){border-color:var(--accent-hover);box-shadow:var(--control-focus);background-color:#10151a;outline:0}:where(){color:#7f7c76;opacity:1}:where(html:not(.chat-widget-page) select){appearance:none;background-image:var(--control-caret)!important;background-position:right 11px center!important;background-repeat:no-repeat!important;background-size:12px 7px!important;padding-right:34px!important}:where(html:not(.chat-widget-page) select option,html:not(.chat-widget-page) select optgroup){color:var(--text-primary);background:#151310}:where(html:not(.chat-widget-page) select option:checked){color:#fff8ec;background:#8a5a2c linear-gradient(#8a5a2c,#8a5a2c)}:where(html:not(.chat-widget-page) input[type=checkbox],html:not(.chat-widget-page) input[type=radio]){appearance:none;width:18px;min-width:18px;height:18px;min-height:18px;color:var(--accent-ink);background-color:#101419;border:1px solid #6b5a47;flex:0 0 18px;place-content:center;margin:0;display:inline-grid;box-shadow:inset 0 1px 3px #0008}:where(html:not(.chat-widget-page) input[type=checkbox]){border-radius:4px}:where(html:not(.chat-widget-page) input[type=radio]){border-radius:50%}:where(html:not(.chat-widget-page) input[type=checkbox]:checked){background-color:var(--accent);border-color:var(--accent-hover);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m2.5 7 3 3 6-7' fill='none' stroke='%23251a0d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;box-shadow:inset 0 1px #fff5,0 0 0 1px #dca75f22}html:not(.chat-widget-page) input[type=checkbox]:checked{background-color:var(--accent)!important;border-color:var(--accent-hover)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m2.5 7 3 3 6-7' fill='none' stroke='%23251a0d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-position:50%!important;background-repeat:no-repeat!important}:where(html:not(.chat-widget-page) input[type=radio]:checked){background:radial-gradient(circle, var(--accent-hover) 0 34%, #17130f 38% 100%);border-color:var(--accent)}:where(html:not(.chat-widget-page) input[type=checkbox]:focus-visible,html:not(.chat-widget-page) input[type=radio]:focus-visible){outline:2px solid var(--accent-hover);outline-offset:3px;box-shadow:var(--control-focus)}:where(html:not(.chat-widget-page) input[type=file]){max-width:100%;min-height:var(--control-height);color:var(--text-secondary);background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--control-radius);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;padding:4px}:where(){min-height:30px;color:var(--text-primary);border:1px solid var(--border-strong);font:inherit;cursor:pointer;background:#252019;border-radius:5px;margin-right:10px;padding:5px 11px}:where(html:not(.chat-widget-page) button:disabled,html:not(.chat-widget-page) input:disabled,html:not(.chat-widget-page) select:disabled,html:not(.chat-widget-page) textarea:disabled,html:not(.chat-widget-page) .ui-button.disabled){color:#777772;box-shadow:none;cursor:not-allowed;opacity:.62;background-color:#111418;border-color:#343638}@media (width<=640px){:where(html:not(.chat-widget-page) button,html:not(.chat-widget-page) .ui-button,html:not(.chat-widget-page) .ui-icon-button,html:not(.chat-widget-page) input:not([type=checkbox]):not([type=radio]),html:not(.chat-widget-page) select,html:not(.chat-widget-page) textarea){min-height:var(--control-height-touch)}}.hub-container{width:min(1740px,100%);margin-inline:auto;padding-inline:clamp(12px,2.5vw,42px)}.viewer-layout{grid-template-columns:minmax(0,1fr) minmax(360px,390px);align-items:start;gap:18px;display:grid}.player-column,.chat-column{min-width:0}.feature-grid{grid-template-columns:repeat(var(--feature-columns,3), minmax(0, 1fr));gap:16px;margin-top:22px;display:grid}@media (width>=1440px){.viewer-layout{grid-template-columns:minmax(0,1fr) minmax(370px,400px);gap:22px}}@media (width<=1023px){.viewer-layout{grid-template-columns:minmax(0,1fr)}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid>:last-child:nth-child(odd){grid-column:1/-1}}@media (width<=640px){.viewer-layout{gap:12px}.feature-grid{display:none}}.chat,.twitch-chat-panel{height:clamp(570px,72dvh,780px);min-height:0;color:var(--text-primary);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:#10151b;flex-direction:column;display:flex;position:relative}.chat-header{border-bottom:1px solid var(--border-subtle);background:linear-gradient(#1b2027,#14191f);border-radius:9px 9px 0 0;gap:7px;min-width:0;min-height:112px;padding:12px 14px;display:grid}.chat-header h2{white-space:nowrap;flex-shrink:0;align-items:center;gap:7px;margin:0;font-size:14px;font-weight:650;display:flex}.chat-header h2 .ui-icon{color:var(--accent)}.chat-header-layout,.chat-header-controls,.chat-toolbar{align-items:center;gap:8px;min-width:0;display:flex}.chat-header-layout{justify-content:space-between}.chat-header-identity{gap:4px;min-width:0;display:grid}.chat-header-controls{flex-wrap:wrap;justify-content:flex-end}.chat-toolbar{min-width:0}.chat-provider-summary{color:var(--text-muted);font-size:10px;line-height:1.3}.chat-filters,.chat-platforms{align-items:center;gap:6px;display:flex}.chat-source-status{border-left:1px solid var(--border-subtle);flex:none;align-items:center;gap:6px;padding-left:8px;display:flex}.chat-source-status-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:9px}.chat-platforms{flex:none}.chat-filters{scrollbar-width:thin;flex-wrap:nowrap;min-width:0;padding-bottom:1px;overflow-x:auto}.chat-filter-button,.chat-toolbar .chat-rewards-button{flex:none}.chat-rewards-button{min-height:30px;color:var(--accent-hover);background:#241b12;border:1px solid #a8783f80;border-radius:5px;align-items:center;gap:4px;padding:5px 7px;font-size:10px;display:inline-flex}.viewer-rewards-backdrop{z-index:70;background:#0009;place-items:end center;padding:18px;display:grid;position:fixed;inset:0}.viewer-rewards-panel{width:min(620px,100%);max-height:min(78dvh,720px);color:var(--text-primary);border:1px solid var(--border-strong);background:#14191f;border-radius:12px;padding:20px;overflow:auto;box-shadow:0 20px 60px #000c}.viewer-rewards-panel>header{justify-content:space-between;gap:12px;display:flex}.viewer-rewards-panel h2{color:#dec4a3;margin:4px 0 0;font:400 25px/1.15 Georgia,serif}.viewer-rewards-balance{border:1px solid var(--border-subtle);background:#0d1218;border-radius:7px;justify-content:space-between;align-items:end;margin:16px 0 10px;padding:12px;display:flex}.viewer-rewards-balance span{font-size:20px;font-weight:700}.viewer-rewards-balance small{color:var(--text-muted)}.viewer-rewards-list{gap:9px;display:grid}.viewer-reward{border:1px solid var(--border-subtle);background:#10151b;border-radius:7px;overflow:hidden}.viewer-reward.selected{border-color:#b7803e}.viewer-reward-select{text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;width:100%;padding:13px;display:grid}.viewer-reward-select strong{overflow-wrap:anywhere}.viewer-reward-select span{color:var(--accent-hover);font-size:12px}.viewer-reward-select small,.viewer-reward-select em{color:var(--text-secondary);overflow-wrap:anywhere;grid-column:1/-1;font-size:12px;font-style:normal}.viewer-reward-select em{color:var(--text-muted)}.viewer-reward-action{gap:8px;padding:0 13px 13px;display:grid}.viewer-reward-action input{min-width:0}.viewer-reward-action small{color:var(--text-muted)}.viewer-rewards-notice{color:var(--accent-hover);margin:12px 0 0}.chat-layout-suggestion{color:var(--text-secondary);background:#211a12;border:1px solid #9d713c80;border-radius:6px;flex-wrap:wrap;align-items:center;gap:7px;margin-top:8px;padding:8px;font-size:11px;display:flex}.chat-layout-suggestion span{flex:160px}.chat-layout-suggestion button{min-height:30px;color:var(--accent-hover);border:1px solid var(--border-subtle);background:0 0;border-radius:4px;padding:5px 8px;font-size:10px}@media (width<=640px){.chat-rewards-button{min-height:32px}.viewer-rewards-backdrop{padding:0}.viewer-rewards-panel{border-radius:14px 14px 0 0;width:100%;max-height:82dvh;padding:18px}.viewer-reward-action .ui-button{width:100%}}.chat-filter-button{min-width:31px;min-height:32px;color:var(--text-secondary);border:1px solid var(--border-subtle);background:#171c22;border-radius:6px;padding:5px 7px;font-size:11px;font-weight:700}.chat-filter-button:hover,.chat-filter-button.active{color:var(--accent-hover);border-color:var(--accent);background:#302619}.chat-filter-button.twitch-filter{box-shadow:inset 0 -2px #b799ec66}.chat-filter-button.kick-filter{box-shadow:inset 0 -2px #8bc96b66}.chat-filter-button.base-filter{box-shadow:inset 0 -2px #d7a55688}.base-message-platform{color:#e3b46c;background:#d7a55612;border:1px solid #d7a55680}.base-username{color:#e8c28a}.chat-composer-platforms{gap:5px;margin:0 0 7px;display:flex}.chat-composer-platforms button{min-height:26px;color:var(--text-secondary);border:1px solid var(--border-subtle);background:#171c22;border-radius:5px;padding:3px 8px;font-size:11px}.chat-composer-platforms button.active{color:var(--accent-hover);border-color:var(--accent);background:#302619}.platform-indicator{border:1px solid;border-radius:50%;place-items:center;width:17px;height:17px;font-size:8px;font-weight:800;display:grid}.twitch-indicator{color:var(--twitch)}.kick-indicator{color:var(--kick)}.goodgame-indicator{color:#f0a23b}.platform-offline{opacity:.4}.platform-online{box-shadow:0 0 7px #ffffff12}.chat-body,.twitch-chat-embed{overscroll-behavior:contain;flex:1;min-height:0;padding:8px 0;overflow-y:auto}.twitch-chat-embed{border:0;width:100%;padding:0}.twitch-chat-loading{color:var(--text-secondary);padding:20px}.empty-chat{color:var(--text-secondary);text-align:center;justify-items:center;gap:8px;margin:55px 20px 20px;display:grid}.empty-chat-icon{width:42px;height:42px;color:var(--accent);background:#29221a50;border:1px solid #70533070;border-radius:12px;place-items:center;display:grid}.empty-chat-icon .ui-icon{width:22px;height:22px}.empty-chat h3{margin:5px 0 0;font-size:13px;font-weight:500}.empty-chat p{max-width:230px;margin:0;font-size:12px;line-height:1.65}.chat-message{color:var(--text-primary);word-break:break-word;grid-template-columns:minmax(0,1fr) 60px;align-items:start;column-gap:8px;padding:8px 12px;font-size:14px;line-height:1.55;display:grid}.chat-message-content{overflow-wrap:anywhere;min-width:0}.chat-message:hover{background:#dca75f08}.chat-message-selectable{cursor:pointer}.chat-message-actions{grid-column:2;justify-content:flex-end;align-self:start;align-items:center;gap:4px;width:60px;height:0;line-height:1;display:flex}.chat-moderation-menu{box-sizing:border-box;flex:0 0 28px;width:28px;min-width:28px;max-width:28px;height:28px;min-height:28px;max-height:28px;position:relative}.chat-row-action,.chat-moderation-menu summary{box-sizing:border-box;width:28px;min-width:28px;max-width:28px;height:28px;min-height:28px;max-height:28px;color:var(--text-secondary);border:1px solid var(--border-subtle);cursor:pointer;background:#ffffff05;border-radius:6px;flex:0 0 28px;place-items:center;padding:0;line-height:1;display:inline-grid}.chat-row-action{flex-shrink:0}.chat-row-action svg,.chat-moderation-menu summary svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:16px;height:16px}.chat-row-action:hover,.chat-moderation-menu summary:hover,.chat-moderation-menu[open] summary{color:var(--accent-hover);border-color:var(--accent);background:#302619}.chat-row-action:focus-visible,.chat-moderation-menu summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat-moderation-menu summary{list-style:none}.chat-moderation-menu summary::-webkit-details-marker{display:none}.chat-moderation-menu div{z-index:4;border:1px solid var(--border-strong);background:#1d232b;border-radius:8px;min-width:165px;padding:5px;display:grid;position:absolute;right:0;box-shadow:0 10px 24px #0009}.chat-moderation-menu button{min-height:34px;color:var(--text-primary);text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex}.chat-moderation-menu button:hover{color:var(--accent-hover);background:#302619}.chat-moderation-feedback{color:var(--success);padding:6px 12px;font-size:11px}.message-platform{vertical-align:-2px;border-radius:50%;place-items:center;width:18px;height:18px;margin-right:6px;font-size:9px;font-weight:800;display:inline-grid}.twitch-message-platform{color:var(--twitch);background:#b799ec12;border:1px solid #b799ec80}.kick-message-platform{color:var(--kick);background:#8bc96b12;border:1px solid #8bc96b80}.goodgame-message-platform{color:#f0a23b;background:#f0a23b12;border:1px solid #f0a23b80}.message-username{font-weight:650}.twitch-username{color:var(--twitch)}.kick-username{color:var(--kick)}.goodgame-username{color:#f0a23b}.message-colon{color:var(--text-muted);margin-right:5px}.message-text{color:var(--text-primary)}.message-time{color:var(--text-muted);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;white-space:nowrap;margin-left:6px;font-size:10px}.chat-system-message{color:var(--text-muted);text-align:center;padding:12px;font-size:12px}.chat-unread-button{z-index:1;color:var(--accent-hover);border:1px solid var(--border-strong);box-shadow:var(--shadow-card);background:#272019;border-radius:20px;padding:8px 12px;font-size:11px;position:absolute;bottom:115px;right:12px}.chat-status-bar{min-height:30px;color:var(--text-muted);border-top:1px solid #30323570;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 12px;font-size:9px;display:flex}.chat-read-only{margin-left:auto}.status-dot{background:var(--text-muted);border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-dot.online{background:var(--success)}@media (width<=1023px){.chat{height:clamp(480px,60dvh,720px)}}@media (width<=640px){.chat{max-width:100%;height:clamp(450px,72dvh,760px);min-height:0}.chat-header{padding:10px 12px}.chat-filter-button{min-width:38px;min-height:44px}.chat-header{min-height:0}.chat-header-layout{grid-template-columns:minmax(0,1fr);display:grid}.chat-header-controls{justify-content:flex-start}.chat-toolbar{flex:100%}.chat-source-status{padding-left:6px}.chat-source-status-label{display:none}.chat-message{font-size:13px}.chat-row-action,.chat-moderation-menu summary{flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;padding:0}.chat-moderation-menu{flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px}.chat-message{grid-template-columns:minmax(0,1fr) 92px;min-height:60px}.chat-message-actions{width:92px;height:44px}.chat-moderation-menu button{min-height:44px}}.chat-badges{vertical-align:middle;align-items:center;gap:3px;margin-right:5px;display:inline-flex}.chat-badge{box-sizing:border-box;-webkit-user-select:none;user-select:none;border-radius:4px;flex:0 0 22px;justify-content:center;align-items:center;width:22px;min-width:22px;height:22px;padding:0;font-size:8px;font-weight:900;line-height:1;display:inline-flex;position:relative}.chat-badge-image{object-fit:contain;width:22px;height:22px;display:block}.chat-badge-tooltip-layer{z-index:60;color:#f4e6cb;pointer-events:none;text-align:center;background:#1d1a18;border:1px solid #e8c28acc;border-radius:5px;width:max-content;max-width:min(180px,100vw - 16px);padding:5px 7px;font-size:11px;font-weight:700;line-height:1.2;position:fixed;transform:translate(-50%,-100%);box-shadow:0 5px 14px #00000059}.chat-badge-tooltip-layer.below{transform:translate(-50%)}.base-badge{color:#2a1607;background:linear-gradient(135deg,#ffe2a0,#bc762e);border:1px solid #ffde97c7;min-width:17px;padding:0 4px;box-shadow:0 0 7px #dc943b47}.base-badge.badge-admin{color:#e9f5ff;background:linear-gradient(135deg,#3d637a,#1c3444);border-color:#a4d1e9b8}.twitch-badge{color:#d6b8ff;background:#9147ff2b;border:1px solid #9147ff8c}.twitch-badge.badge-broadcaster{color:#fff;background:#e91916;border-color:#e91916}.twitch-badge.badge-moderator{color:#fff;background:#00ad03;border-color:#00ad03}.twitch-badge.badge-vip{color:#fff;background:#e005b9;border-color:#e005b9}.twitch-badge.badge-subscriber{color:#d7b9ff;background:#9147ff3b}.kick-badge{color:#8aff62;background:#53fc1821;border:1px solid #53fc1873}.kick-badge.badge-moderator{color:#050805;background:#53fc18;border-color:#53fc18}.kick-badge.badge-subscriber{color:#53fc18}.kick-badge.badge-verified{color:#050805;background:#53fc18;border-color:#53fc18;border-radius:50%;width:17px;min-width:17px;padding:0}.badge-count{margin-left:2px;font-size:7px}.message-text{white-space:pre-wrap}.chat-emote{vertical-align:middle;object-fit:contain;width:auto;height:28px;margin:0 2px}.twitch-emote{max-width:56px}.kick-emote,.seven-tv-emote,.bttv-emote,.ffz-emote{max-width:64px}.chat-emote-fallback{color:#d8dbe2;margin:0 2px;font-weight:600}
