:root{--bg:#1a1a1a;--bg-sidebar:#111;--bg-input:#0d0d0d;--bg-status:#222;--fg:#c8c8c8;--fg-dim:#555;--fg-bright:#e8e8e8;--fg-nick:#7ec8e3;--fg-nick-self:#f0c060;--fg-action:#b07bd4;--fg-system:#888;--fg-error:#e06c6c;--fg-join:#5a9e5a;--fg-part:#9e5a5a;--fg-topic:#a0c080;--fg-unread:#f0c060;--fg-active:#fff;--fg-notice:#d4a855;--fg-motd:#6a9fbf;--accent:#7ec8e3;--border:#2a2a2a;--scrollbar:#333;--sidebar-w:180px;color:var(--fg);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:13px/1.5 Iosevka,Fira Code,Cascadia Code,JetBrains Mono,ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%;overflow:hidden}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:2px}::selection{color:var(--fg-bright);background:#2a4a5a}.splash{background:var(--bg);justify-content:center;align-items:center;height:100%;display:flex}.splash-text{color:var(--fg-system);animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.connect-screen{background:var(--bg);justify-content:center;align-items:center;height:100%;display:flex}.connect-box{border:1px solid var(--border);background:var(--bg-sidebar);width:480px;max-width:95vw;padding:24px 28px 20px}.connect-banner{text-align:center;margin-bottom:20px}.ascii-art{color:var(--accent);white-space:pre;text-align:left;font-size:10px;line-height:1.2;display:inline-block}.connect-sub{color:var(--fg-dim);margin-top:6px;font-size:11px}.connect-form{flex-direction:column;gap:10px;display:flex}.field{align-items:center;gap:8px;display:flex}.field label{color:var(--fg-dim);text-align:right;flex-shrink:0;width:68px;font-size:12px}.field input{background:var(--bg-input);border:1px solid var(--border);color:var(--fg-bright);font:inherit;outline:none;flex:1;padding:4px 8px;font-size:12px;transition:border-color .15s}.field input:focus{border-color:var(--accent)}.field input::placeholder{color:var(--fg-dim)}.connect-error{color:var(--fg-error);padding:4px 0 0 76px;font-size:12px}.connect-btn{border:1px solid var(--accent);color:var(--accent);font:inherit;cursor:pointer;background:0 0;align-self:flex-start;margin-top:6px;margin-left:76px;padding:5px 18px;font-size:12px;transition:background .15s,color .15s}.connect-btn:hover:not(:disabled){background:var(--accent);color:var(--bg)}.connect-btn:disabled{opacity:.5;cursor:not-allowed}.connect-hint{color:var(--fg-dim);text-align:center;margin-top:14px;font-size:11px}.kbd{color:var(--fg-system)}.layout{height:100%;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--bg-sidebar);border-right:1px solid var(--border);-webkit-user-select:none;user-select:none;flex-direction:column;display:flex;overflow:hidden}.sidebar-header{border-bottom:1px solid var(--border);align-items:center;gap:7px;height:30px;padding:8px 10px;display:flex}.dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.dot-ok{background:#5a9e5a}.dot-warn{background:#c0a030;animation:1s step-end infinite blink}.dot-err{background:var(--fg-error)}.sidebar-nick{color:var(--fg-nick-self);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sidebar-section{flex:1;padding:4px 0;overflow-y:auto}.sidebar-section-label{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.08em;padding:6px 10px 2px;font-size:10px}.sidebar-server{border-bottom:1px solid var(--border);margin-bottom:4px}.sidebar-item{cursor:pointer;color:var(--fg-dim);white-space:nowrap;justify-content:space-between;align-items:center;padding:2px 10px;font-size:12px;transition:background .1s,color .1s;display:flex;overflow:hidden}.sidebar-item:hover{color:var(--fg);background:#1e1e1e}.sidebar-item.active{color:var(--fg-active);background:#1e2a30}.sidebar-item.has-unread{color:var(--fg-unread)}.sidebar-item-name{text-overflow:ellipsis;flex:1;overflow:hidden}.sidebar-unread{background:var(--fg-unread);color:var(--bg);border-radius:2px;flex-shrink:0;padding:0 4px;font-size:10px}.sidebar-footer{border-top:1px solid var(--border);padding:6px 10px}.sidebar-quit{color:var(--fg-dim);cursor:pointer;font-size:11px}.sidebar-quit:hover{color:var(--fg-error)}.main{background:var(--bg);flex-direction:column;flex:1;display:flex;overflow:hidden}.buffer-wrap{flex-direction:column;flex:1;display:flex;overflow:hidden}.buffer-topic{background:var(--bg-status);border-bottom:1px solid var(--border);color:var(--fg-topic);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;height:24px;padding:3px 12px;font-size:11px;line-height:18px;overflow:hidden}.topic-label{color:var(--fg-dim)}.buffer{scroll-behavior:auto;flex:1;padding:4px 0;overflow-y:auto}.buffer-empty{color:var(--fg-dim);padding:12px;font-size:12px;font-style:italic}.line{align-items:baseline;gap:4px;padding:1px 10px;font-size:13px;line-height:1.45;display:flex}.line:hover{background:#ffffff08}.line-ts{color:var(--fg-dim);flex-shrink:0;min-width:70px;font-size:11px}.line-bracket{color:var(--fg-dim);flex-shrink:0}.nick-self{color:var(--fg-nick-self)}.line-text{color:var(--fg);word-break:break-word}.line-self .line-text{color:#b0b0b0}.line-action .line-star{color:var(--fg-action);flex-shrink:0}.line-action .line-nick{color:var(--fg-action)}.line-action .line-text{color:var(--fg-action);font-style:italic}.line-notice .line-notice-prefix{color:var(--fg-notice);flex-shrink:0}.line-notice .line-text{color:var(--fg-notice)}.line-join .line-event{color:var(--fg-join);flex-shrink:0}.line-join .line-text{color:var(--fg-join)}.line-part .line-event{color:var(--fg-part);flex-shrink:0}.line-part .line-text{color:var(--fg-part)}.line-topic .line-event{color:var(--fg-topic);flex-shrink:0}.line-topic .line-text{color:var(--fg-topic)}.line-motd .line-motd-prefix{color:var(--fg-motd);flex-shrink:0;min-width:40px}.line-motd .line-text{color:var(--fg-motd)}.line-system .line-event{color:var(--fg-system);flex-shrink:0}.line-system .line-text{color:var(--fg-system)}.line-error .line-event{color:var(--fg-error);flex-shrink:0}.line-error .line-text{color:var(--fg-error)}.inputbar{background:var(--bg-input);border-top:1px solid var(--border);flex-shrink:0;align-items:center;height:30px;display:flex}.inputbar-prompt{color:var(--fg-nick-self);white-space:nowrap;flex-shrink:0;padding:0 6px 0 10px;font-size:12px}.inputbar-input{color:var(--fg-bright);font:inherit;caret-color:var(--accent);background:0 0;border:none;outline:none;flex:1;padding:0 10px 0 0;font-size:13px}.inputbar-input::placeholder{color:var(--fg-dim);font-size:11px}.inputbar-input:disabled{color:var(--fg-dim);cursor:not-allowed}.memberlist{background:var(--bg-sidebar);border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;width:140px;min-width:140px;display:flex;overflow:hidden}.memberlist-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;height:30px;padding:0 10px;display:flex}.memberlist-count{color:var(--accent);font-size:12px}.memberlist-label{color:var(--fg-dim);font-size:11px}.memberlist-body{flex:1;padding:4px 0;overflow-y:auto}.memberlist-nick{white-space:nowrap;color:var(--fg);-webkit-user-select:none;user-select:none;align-items:center;padding:1px 8px;font-size:12px;display:flex;overflow:hidden}.memberlist-nick:hover{background:#1e1e1e}.memberlist-sigil{color:var(--fg-nick-self);flex-shrink:0;width:10px;font-size:11px}.memberlist-name{text-overflow:ellipsis;color:var(--fg-dim);overflow:hidden}.memberlist-nick:hover .memberlist-name{color:var(--fg)}.memberlist-empty{color:var(--fg-dim);padding:6px 10px;font-size:11px}
