.conn-banner[data-v-80568846]{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);z-index:350;display:flex;align-items:center;gap:.5rem;padding:.45rem .9rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);font-size:.8rem;box-shadow:0 4px 14px #00000059;pointer-events:none}.conn-dot[data-v-80568846]{width:8px;height:8px;border-radius:50%;background:var(--error);flex-shrink:0}.conn-enter-active[data-v-80568846],.conn-leave-active[data-v-80568846]{transition:opacity .2s ease}.conn-enter-from[data-v-80568846],.conn-leave-to[data-v-80568846]{opacity:0}.palette-overlay[data-v-0f08c7a9]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:500;display:flex;justify-content:center;padding:10vh 1rem 1rem}.palette[data-v-0f08c7a9]{width:min(640px,100%);max-height:70vh;display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 40px #00000073;overflow:hidden}.palette-input[data-v-0f08c7a9]{width:100%;padding:.9rem 1rem;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text-primary);font-size:1rem;outline:none}.palette-empty[data-v-0f08c7a9]{padding:1.25rem 1rem;font-size:.9rem}.palette-list[data-v-0f08c7a9]{list-style:none;margin:0;padding:.35rem 0;overflow-y:auto}.palette-group[data-v-0f08c7a9]{padding:.5rem 1rem .25rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.palette-item[data-v-0f08c7a9]{display:flex;align-items:baseline;gap:.75rem;padding:.45rem 1rem;cursor:pointer}.palette-item--active[data-v-0f08c7a9]{background:var(--bg-card);box-shadow:inset 3px 0 0 var(--accent)}.palette-item-label[data-v-0f08c7a9]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-item-hint[data-v-0f08c7a9]{font-size:.75rem;flex-shrink:0}.palette-footer[data-v-0f08c7a9]{display:flex;gap:1rem;padding:.5rem 1rem;border-top:1px solid var(--border);font-size:.7rem}.palette-footer-right[data-v-0f08c7a9]{margin-left:auto}kbd[data-v-0f08c7a9]{display:inline-block;min-width:1.1em;padding:.05rem .3rem;margin-right:.15rem;border:1px solid var(--border);border-radius:3px;background:var(--bg-card);font-family:inherit;font-size:.95em;text-align:center}@media (max-width: 560px){.palette-overlay[data-v-0f08c7a9]{padding:1rem .5rem}.palette[data-v-0f08c7a9]{max-height:85vh}.palette-footer[data-v-0f08c7a9]{display:none}}.toast-host[data-v-de703ad9]{position:fixed;bottom:1rem;left:1rem;z-index:400;display:flex;flex-direction:column;gap:.5rem;max-width:min(420px,calc(100vw - 2rem));pointer-events:none}.toast[data-v-de703ad9]{pointer-events:auto;display:flex;align-items:center;gap:.6rem;padding:.6rem .75rem;border-radius:6px;border:1px solid var(--border);border-left-width:3px;background:var(--bg-secondary);color:var(--text-primary);font-size:.875rem;box-shadow:0 4px 14px #00000059}.toast--success[data-v-de703ad9]{border-left-color:var(--success)}.toast--error[data-v-de703ad9]{border-left-color:var(--error)}.toast--info[data-v-de703ad9]{border-left-color:var(--accent)}.toast-text[data-v-de703ad9]{flex:1;min-width:0}.toast-action[data-v-de703ad9]{background:var(--accent);color:var(--accent-text, #fff);border:none;border-radius:4px;padding:.25rem .6rem;font-size:.8rem;font-weight:600;cursor:pointer}.toast-close[data-v-de703ad9]{background:none;border:none;color:var(--text-muted);font-size:1.1rem;line-height:1;cursor:pointer;padding:0 .15rem}.toast-close[data-v-de703ad9]:hover{color:var(--text-primary)}.toast-enter-active[data-v-de703ad9],.toast-leave-active[data-v-de703ad9]{transition:opacity .18s ease,transform .18s ease}.toast-enter-from[data-v-de703ad9],.toast-leave-to[data-v-de703ad9]{opacity:0;transform:translateY(.5rem)}@media (prefers-reduced-motion: reduce){.toast-enter-active[data-v-de703ad9],.toast-leave-active[data-v-de703ad9]{transition:none}}.navbar[data-v-03cd4f87]{background:var(--bg-secondary);border-bottom:2px solid var(--accent);position:sticky;top:0;z-index:100}.navbar-inner[data-v-03cd4f87]{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1rem;margin-left:90px}.brand[data-v-03cd4f87]{text-decoration:none;display:flex;align-items:center}.brand-logo[data-v-03cd4f87]{width:102px;height:64px}.nav-links[data-v-03cd4f87]{display:flex;gap:1rem;flex:1}.nav-links a[data-v-03cd4f87]{color:var(--text-secondary);font-weight:600}.nav-links a.router-link-active[data-v-03cd4f87]{color:var(--accent)}.chat-unread[data-v-03cd4f87]{animation:chat-blink-03cd4f87 1s step-start infinite}@keyframes chat-blink-03cd4f87{0%,to{color:var(--text-secondary)}50%{color:var(--accent)}}.nav-right[data-v-03cd4f87]{display:flex;align-items:center;gap:.75rem}.user-link[data-v-03cd4f87]{display:flex;align-items:center;gap:.4rem;color:var(--text-primary);text-decoration:none}.username[data-v-03cd4f87]{font-weight:600}.theme-picker[data-v-03cd4f87]{position:relative;display:flex}.theme-toggle[data-v-03cd4f87]{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:0;line-height:1}.theme-menu[data-v-03cd4f87]{position:absolute;top:calc(100% + .5rem);right:0;min-width:170px;max-height:60vh;overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:.3rem;z-index:200;box-shadow:0 4px 12px #0000004d}.theme-item[data-v-03cd4f87]{display:flex;align-items:center;gap:.5rem;width:100%;padding:.35rem .5rem;background:none;border:none;border-radius:4px;color:var(--text-primary);font-size:.85rem;text-align:left;text-decoration:none;cursor:pointer}.theme-item[data-v-03cd4f87]:hover{background:var(--bg-card)}.theme-item--active[data-v-03cd4f87]{color:var(--accent);font-weight:600}.theme-item--link[data-v-03cd4f87]{margin-top:.3rem;border-top:1px solid var(--border);padding-top:.5rem;color:var(--link)}.theme-sep[data-v-03cd4f87]{padding:.4rem .5rem .2rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.btn-sm[data-v-03cd4f87]{padding:.3rem .75rem;font-size:.8rem}.unread-btn[data-v-03cd4f87]{padding:.3rem .75rem;font-size:.8rem;font-weight:600;border-radius:4px;text-decoration:none;white-space:nowrap;border:1px solid var(--border)}.unread-btn--active[data-v-03cd4f87]{background:var(--accent);color:var(--accent-text, #fff);border-color:var(--accent)}.unread-btn--zero[data-v-03cd4f87]{background:var(--bg-secondary);color:var(--text-primary)}@media (max-width: 860px){.navbar-inner[data-v-03cd4f87]{margin-left:0;flex-wrap:wrap;gap:.5rem;padding:.5rem .75rem}.nav-right[data-v-03cd4f87]{order:1;width:100%;gap:.5rem}.nav-links[data-v-03cd4f87]{order:2;width:100%;gap:1rem;overflow-x:auto;scrollbar-width:none;padding-bottom:.15rem}.nav-links[data-v-03cd4f87]::-webkit-scrollbar{display:none}.nav-links a[data-v-03cd4f87]{white-space:nowrap}.brand[data-v-03cd4f87]{order:-1;margin-right:auto}.brand-logo[data-v-03cd4f87]{width:64px;height:40px}.theme-menu[data-v-03cd4f87]{right:auto;left:0}}@media (max-width: 560px){.username[data-v-03cd4f87]{display:none}.unread-btn[data-v-03cd4f87]{padding:.3rem .5rem}}.online-sidebar[data-v-9077129b]{position:fixed;top:105px;left:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem .5rem;background:transparent;border-right:none;z-index:50}.online-label[data-v-9077129b]{font-size:.7rem;font-weight:600;color:var(--text-secondary);writing-mode:vertical-rl;text-orientation:mixed;margin-bottom:.25rem}.online-user[data-v-9077129b]{cursor:pointer}.online-avatar[data-v-9077129b]{width:72px;height:72px;border-radius:8px;object-fit:contain;box-shadow:0 0 0 2px var(--accent);display:block}.online-avatar-placeholder[data-v-9077129b]{display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--accent-text, #fff);font-weight:700;font-size:1.5rem;border-radius:8px}@media (max-width: 860px){.online-sidebar[data-v-9077129b]{position:static;flex-direction:row;justify-content:flex-start;gap:.4rem;padding:.5rem .75rem;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--border)}.online-sidebar[data-v-9077129b]::-webkit-scrollbar{display:none}.online-avatar[data-v-9077129b]{width:40px;height:40px;flex-shrink:0}.online-avatar-placeholder[data-v-9077129b]{font-size:1rem}}.html-toolbar[data-v-13388064]{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.35rem}.html-toolbar-btn[data-v-13388064]{min-width:1.9rem;padding:.15rem .5rem;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border);border-radius:4px;font-size:.8rem;line-height:1.5;cursor:pointer;transition:background .15s}.html-toolbar-btn[data-v-13388064]:hover{background:var(--border)}.tb-bold[data-v-13388064]{font-weight:700}.tb-italic[data-v-13388064]{font-style:italic}.tb-underline[data-v-13388064]{text-decoration:underline}.tb-strike[data-v-13388064]{text-decoration:line-through}.shoutbox[data-v-c8937f9f]{position:fixed;bottom:0;right:1.5rem;width:320px;background:var(--bg-secondary);border:1px solid var(--border);border-bottom:none;border-radius:6px 6px 0 0;z-index:200;box-shadow:0 -2px 10px #0000004d}.resize-handle[data-v-c8937f9f]{position:absolute;top:-4px;left:-4px;width:14px;height:14px;cursor:nwse-resize;z-index:10}.resize-handle[data-v-c8937f9f]:before{content:"";position:absolute;top:0;left:0;width:10px;height:10px;border-top:2px solid var(--accent);border-left:2px solid var(--accent);opacity:.5;transition:opacity .15s}.resize-handle[data-v-c8937f9f]:hover:before{opacity:1}.shoutbox-header[data-v-c8937f9f]{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:var(--bg-card);cursor:pointer;font-weight:700;border-radius:6px 6px 0 0}.status-dot[data-v-c8937f9f]{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.status-dot.online[data-v-c8937f9f]{background:var(--success)}.shoutbox-body[data-v-c8937f9f]{display:flex;flex-direction:column}.messages[data-v-c8937f9f]{overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.3rem}.msg-card[data-v-c8937f9f]{padding:.45rem .6rem;margin-bottom:.3rem;font-size:.85rem;line-height:1.4}.msg-meta[data-v-c8937f9f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.2rem}.msg-user[data-v-c8937f9f]{color:var(--accent);font-size:.85rem}.msg-date[data-v-c8937f9f]{font-size:.7rem}.msg-content img[data-v-c8937f9f]{max-width:100%;border-radius:4px;margin:.25rem 0}.divider[data-v-c8937f9f]{height:5px;cursor:ns-resize;background:var(--border);flex-shrink:0;transition:background .15s}.divider[data-v-c8937f9f]:hover{background:var(--accent)}.msg-input[data-v-c8937f9f]{flex:1;display:flex;flex-direction:column;gap:.3rem;padding:.5rem;border-top:1px solid var(--border);overflow:hidden}.msg-input-wrap[data-v-c8937f9f]{flex:1;display:flex;flex-direction:column}.msg-input-wrap .form-control[data-v-c8937f9f]{flex:1;min-height:0;resize:none;width:100%;padding:.4rem .5rem;font-size:.85rem;font-family:inherit}.msg-input-actions[data-v-c8937f9f]{display:flex;gap:.4rem;align-items:center}.msg-input-actions .btn[data-v-c8937f9f]{padding:.35rem .7rem;font-size:.85rem}.upload-hint[data-v-c8937f9f]{font-size:.75rem;color:var(--text-secondary)}@media (max-width: 860px){.shoutbox[data-v-c8937f9f]{left:0;right:0;width:100%;border-radius:0;border-left:none;border-right:none}.shoutbox-body[data-v-c8937f9f]{height:55vh;display:flex;flex-direction:column}.messages[data-v-c8937f9f]{flex:1;min-height:0}}:root[data-theme=dark]{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-card: #0f3460;--text-primary: #e0e0e0;--text-secondary: #b8b8cc;--text-muted: #8888a8;--accent: #e94560;--accent-hover: #c73650;--border: #1f4068;--input-bg: #0d1b2a;--input-border: #2a4a6a;--success: #4caf50;--error: #f44336;--warning: #ff9800;--link: #64b5f6;--accent-text: #ffffff}:root[data-theme=light]{--bg-primary: #f5f5f5;--bg-secondary: #ffffff;--bg-card: #ffffff;--text-primary: #212121;--text-secondary: #555555;--text-muted: #888888;--accent: #c0392b;--accent-hover: #a93226;--border: #dddddd;--input-bg: #ffffff;--input-border: #cccccc;--success: #27ae60;--error: #e74c3c;--warning: #e67e22;--link: #2980b9;--accent-text: #ffffff}:root[data-theme=green]{--bg-primary: #0d1f14;--bg-secondary: #12301f;--bg-card: #17452b;--text-primary: #e2f3e6;--text-secondary: #b4d9bf;--text-muted: #7fae8d;--accent: #3fbf5f;--accent-hover: #34a04f;--border: #1f5a37;--input-bg: #0a1a10;--input-border: #2c6b43;--success: #4caf50;--error: #ef5350;--warning: #ffa726;--link: #6ede8a;--accent-text: #ffffff}:root[data-theme=teal]{--bg-primary: #0c1e21;--bg-secondary: #102e33;--bg-card: #14434a;--text-primary: #e0f4f5;--text-secondary: #aed8dc;--text-muted: #79aeb4;--accent: #1fc3c9;--accent-hover: #17a3a8;--border: #1c5960;--input-bg: #08181a;--input-border: #256b73;--success: #26c281;--error: #ef5350;--warning: #ffb74d;--link: #5ce0e6;--accent-text: #ffffff}:root[data-theme=blue]{--bg-primary: #0c1626;--bg-secondary: #112038;--bg-card: #16304f;--text-primary: #e3ecf7;--text-secondary: #b3c7de;--text-muted: #7d95b3;--accent: #3d8bfd;--accent-hover: #2f72d4;--border: #1e3f66;--input-bg: #08111f;--input-border: #2a5482;--success: #4caf50;--error: #ef5350;--warning: #ffa726;--link: #6fb1ff;--accent-text: #ffffff}:root[data-theme=red]{--bg-primary: #200f11;--bg-secondary: #2e1518;--bg-card: #451e22;--text-primary: #f6e5e6;--text-secondary: #dcb8bb;--text-muted: #b3878b;--accent: #e03e4e;--accent-hover: #bd3140;--border: #5c2a2f;--input-bg: #190a0c;--input-border: #74373d;--success: #5cb85c;--error: #ff5252;--warning: #ffa726;--link: #ff8a90;--accent-text: #ffffff}:root[data-theme=violet]{--bg-primary: #16101f;--bg-secondary: #1e1630;--bg-card: #2a1e45;--text-primary: #ece5f7;--text-secondary: #c9bce0;--text-muted: #9c8fb8;--accent: #b184ff;--accent-hover: #9a63f5;--border: #3a2a5c;--input-bg: #110c19;--input-border: #4a3673;--success: #5cc46a;--error: #ff6b6b;--warning: #ffb74d;--link: #cba6ff;--accent-text: #180d29}:root[data-theme=yellow]{--bg-primary: #1a1608;--bg-secondary: #251f0c;--bg-card: #332b11;--text-primary: #f7f2df;--text-secondary: #ded4ae;--text-muted: #b0a684;--accent: #ffc61a;--accent-hover: #e5ab00;--border: #4a3f1a;--input-bg: #120f05;--input-border: #665726;--success: #7ac74f;--error: #ff7a6b;--warning: #ffa726;--link: #ffd75e;--accent-text: #1f1800}:root[data-theme=mono]{--bg-primary: #121212;--bg-secondary: #1c1c1c;--bg-card: #262626;--text-primary: #ededed;--text-secondary: #c2c2c2;--text-muted: #949494;--accent: #d4d4d4;--accent-hover: #ffffff;--border: #3a3a3a;--input-bg: #0d0d0d;--input-border: #4d4d4d;--success: #9fbf9f;--error: #e09a9a;--warning: #d4bd8a;--link: #bfbfbf;--accent-text: #141414}.theme-swatch{display:inline-block;width:14px;height:14px;border-radius:50%;border:2px solid transparent;flex-shrink:0}.theme-swatch[data-swatch=dark]{background:#0f3460;border-color:#e94560}.theme-swatch[data-swatch=light]{background:#fff;border-color:#c0392b}.theme-swatch[data-swatch=green]{background:#17452b;border-color:#3fbf5f}.theme-swatch[data-swatch=teal]{background:#14434a;border-color:#1fc3c9}.theme-swatch[data-swatch=blue]{background:#16304f;border-color:#3d8bfd}.theme-swatch[data-swatch=red]{background:#451e22;border-color:#e03e4e}.theme-swatch[data-swatch=violet]{background:#2a1e45;border-color:#b184ff}.theme-swatch[data-swatch=yellow]{background:#332b11;border-color:#ffc61a}.theme-swatch[data-swatch=mono]{background:#262626;border-color:#d4d4d4}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;transition:background-color .2s,color .2s}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1100px;margin:0 auto;padding:0 1rem}.main-with-sidebar{margin-left:88px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:1.25rem;margin-bottom:1rem}.btn{display:inline-block;padding:.5rem 1.25rem;border-radius:4px;border:none;cursor:pointer;font-size:.9rem;font-weight:600;transition:background .15s}.btn-primary{background:var(--accent);color:var(--accent-text, #fff)}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border)}.btn-danger{background:var(--accent);color:var(--accent-text, #fff)}.btn-danger:hover{background:var(--accent-hover)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.4rem;font-weight:600;font-size:.9rem;color:var(--text-secondary)}.form-control{width:100%;padding:.5rem .75rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;color:var(--text-primary);font-size:.95rem;outline:none;transition:border-color .15s}.form-control:focus{border-color:var(--accent)}textarea.form-control{resize:vertical;min-height:132px}.form-control.is-dragover{border-color:var(--accent);border-style:dashed;background:var(--bg-card)}.error-msg{color:var(--error);font-size:.85rem;margin-top:.25rem}.page-title{font-size:1.5rem;font-weight:700;margin-bottom:1.25rem;color:var(--text-primary);border-bottom:2px solid var(--accent);padding-bottom:.5rem}.badge{display:inline-block;padding:.2rem .5rem;border-radius:3px;font-size:.75rem;font-weight:600}.badge-new{background:var(--accent);color:var(--accent-text, #fff)}.badge-read{background:var(--border);color:var(--text-muted)}.avatar{width:40px;height:40px;border-radius:8px;object-fit:contain;background:var(--border)}.avatar-sm{width:28px;height:28px}.pagination{display:flex;gap:.5rem;align-items:center;margin-top:1rem}.text-muted{color:var(--text-muted);font-size:.85rem}.flex{display:flex}.flex-between{display:flex;justify-content:space-between;align-items:center}.gap-1{gap:.5rem}.gap-2{gap:1rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.post-content img,.msg-content img,.chat-bubble img{max-width:100%;height:auto}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 860px){.container{padding:0 .75rem}.main-with-sidebar{margin-left:0}.card{padding:.9rem}.page-title{font-size:1.25rem}}@media (max-width: 560px){body{font-size:.95rem}.card{padding:.75rem;border-radius:4px}.btn{padding:.55rem 1rem}.form-control{font-size:16px}.pagination{flex-wrap:wrap;gap:.4rem}}
