:root{color:#eef0ff;background:#0f1017;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}html,body,#root{height:100%}*{box-sizing:border-box}*{scrollbar-color:rgba(139,151,255,.68) rgba(17,19,27,.72);scrollbar-width:thin}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{border-radius:999px;background:#11131bb8}*::-webkit-scrollbar-thumb{border:2px solid rgba(17,19,27,.88);border-radius:999px;background:linear-gradient(180deg,#8b97ff,#2dd4bf)}*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#a5adff,#5eead4)}*::-webkit-scrollbar-corner{background:transparent}body{min-width:320px;min-height:100%;margin:0;overflow:hidden;background:radial-gradient(circle at top left,rgba(88,101,242,.18),transparent 34rem),linear-gradient(135deg,#0f1017,#171821 48%,#11131a)}button,input,select{font:inherit}button{min-height:36px;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:#262837;color:#f4f5ff;cursor:pointer;font-weight:700;padding:8px 12px;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}button:hover:not(:disabled){border-color:#8b97ff73;background:#313447;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.45}input,select{width:100%;min-height:40px;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:#11131b;color:#f4f5ff;padding:9px 11px;outline:none}input:focus,select:focus{border-color:#8b97ff;box-shadow:0 0 0 3px #5865f22e}input::placeholder{color:#727896}h1,h2,p,dl,dd{margin:0}.app-shell{display:flex;flex-direction:column;width:min(100%,1520px);height:100dvh;min-height:0;margin:0 auto;padding:18px;overflow:hidden}.app-header{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.app-header-actions{display:flex;align-items:center;gap:10px}.app-header h1{color:#fff;font-size:26px;line-height:1.1}.eyebrow{color:#9aa3ff;font-size:12px;font-weight:900;letter-spacing:0;margin-bottom:4px;text-transform:uppercase}.app-header p,.muted{color:#9097b3;font-size:14px}.banner{display:flex;align-items:center;gap:10px;border-radius:7px;margin-bottom:14px;padding:12px 14px}.banner strong{flex:0 0 auto;color:inherit}.banner span{min-width:0;overflow-wrap:anywhere}.banner-error{background:#f55e7824;border:1px solid rgba(245,94,120,.35);color:#ffb7c2}.banner-notice{background:#40d49721;border:1px solid rgba(64,212,151,.34);color:#9af0cc}.workspace{flex:1 1 auto;display:grid;grid-template-columns:288px minmax(420px,1fr) 322px;gap:12px;min-height:0;overflow:hidden}.workspace-chat{grid-template-columns:300px minmax(0,1fr)}.workspace-chat .utility-panel{display:none}.mode-toggle{display:inline-grid;grid-template-columns:repeat(2,minmax(72px,1fr));gap:3px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#12131cdb;padding:3px}.mode-toggle button{min-height:30px;border:0;background:transparent;color:#a9afc8;padding:5px 10px}.mode-toggle button:hover:not(:disabled),.mode-toggle button.active{background:#5865f2;color:#fff;transform:none}.sidebar,.chat-panel,.utility-card,.debug-panel{min-width:0;border:1px solid rgba(255,255,255,.08);background:#181922eb;box-shadow:0 20px 48px #00000038}.sidebar{display:flex;flex-direction:column;min-height:0;overflow:hidden;border-radius:9px}.sidebar-identity{display:flex;align-items:center;gap:11px;padding:14px;background:#13151e;border-bottom:1px solid rgba(255,255,255,.07)}.sidebar-identity strong,.sidebar-identity span{display:block}.sidebar-identity span{color:#9097b3;font-size:13px;margin-top:2px}.app-mark{display:grid;width:38px;height:38px;place-items:center;border-radius:8px;background:linear-gradient(135deg,#5865f2,#2dd4bf);color:#fff;font-size:13px;font-weight:950}.panel-block{min-height:0;padding:14px}.sidebar .panel-block{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.panel-block+.panel-block{border-top:1px solid rgba(255,255,255,.07);overflow:auto}.section-heading,.chat-header,.debug-panel summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading{margin-bottom:12px}.heading-actions{display:flex;align-items:center;gap:8px}.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;border:1px solid rgba(139,151,255,.26);border-radius:999px;background:#5865f221;color:#d7dcff;font-size:12px;font-weight:900}.section-heading h2,.chat-header h2,.debug-panel summary span{color:#f8f8ff;font-size:16px;line-height:1.2}.settings-grid,.create-form,.conversation-settings-grid,.conversation-list,.presence-list,.control-grid{display:grid;gap:10px}.session-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:#ffffff09;padding:10px}.session-card strong,.session-card span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-card span{color:#9097b3;font-size:12px;margin-top:2px}.session-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:8px}.session-avatar-fallback{background:linear-gradient(135deg,#5865f2,#2dd4bf);color:#fff;font-size:12px;font-weight:950}.session-actions{display:grid;margin-top:10px}.field{display:grid;gap:6px}.field span{color:#a9afc8;font-size:12px;font-weight:800}.fact-list{display:grid;gap:8px;margin-top:12px}.fact-list div{display:grid;grid-template-columns:1fr auto;gap:10px;color:#a9afc8;font-size:13px}.fact-list dt{font-weight:800}.fact-list dd{max-width:168px;overflow:hidden;color:#eef0ff;text-align:right;text-overflow:ellipsis;white-space:nowrap}.compact-details{margin-top:12px;border-radius:8px;background:#ffffff09}.compact-details summary{cursor:pointer;list-style:none;color:#d7dcff;font-size:13px;font-weight:850;padding:10px 11px}.compact-details summary::-webkit-details-marker,.debug-panel summary::-webkit-details-marker{display:none}.compact-details[open] summary{border-bottom:1px solid rgba(255,255,255,.07)}.compact-details .create-form,.compact-details .settings-grid,.compact-details .conversation-settings-grid,.compact-details .control-grid{padding:11px}.inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.form-hint{color:#9097b3;font-size:12px;line-height:1.35}.member-picker{display:grid;gap:8px;min-width:0}.selected-users,.user-search-results{display:grid;gap:6px}.selected-users{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.selected-user,.user-result{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-height:38px;border-color:#ffffff12;background:#ffffff0b;padding:7px;text-align:left}.selected-user span,.user-result span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-result small{display:block;color:#9097b3;font-size:11px;font-weight:650;overflow:hidden;text-overflow:ellipsis}.selected-user-avatar,.user-result-avatar{width:26px;height:26px;border-radius:7px;object-fit:cover}.avatar-fallback{display:grid;place-items:center;background:linear-gradient(135deg,#5865f2f2,#2dd4bfd1);color:#fff;font-size:11px;font-weight:950}.conversation{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;width:100%;gap:10px;border-color:transparent;background:transparent;color:#eef0ff;min-height:72px;padding:10px;text-align:left}.sidebar .conversation-list{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.sidebar .compact-details{flex:0 0 auto;max-height:min(320px,48%);overflow-y:auto;overscroll-behavior:contain}.conversation:hover:not(:disabled){background:#272a3a;border-color:transparent}.conversation-avatar,.message-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:linear-gradient(135deg,#5865f2f2,#2dd4bfd1);color:#fff;font-size:13px;font-weight:950;object-fit:cover}.message-avatar-wrap{display:grid;width:38px;flex:0 0 38px;place-items:start center}.message-row.grouped-message .message-avatar-wrap{visibility:hidden}.conversation-copy{display:grid;min-width:0;gap:4px}.conversation-title-row,.conversation-meta-row{display:flex;align-items:center;min-width:0;gap:8px}.conversation-title-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-time{flex:0 0 auto;color:#747b99;font-size:11px}.conversation-preview{overflow:hidden;color:#9097b3;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.conversation-badge{display:inline-flex;align-items:center;min-height:20px;border-radius:999px;color:#a9afc8;font-size:11px;font-weight:900;padding:2px 7px;text-transform:uppercase}.conversation-badge{background:#ffffff0d}.conversation.active{border-color:#8b97ff59;background:linear-gradient(135deg,#5865f24d,#2dd4bf1a);box-shadow:inset 3px 0 #8b97ff}.conversation.unread{border-color:#2dd4bf70;background:linear-gradient(135deg,#2dd4bf29,#5865f224);box-shadow:inset 3px 0 #2dd4bf}.conversation.unread .conversation-title-row strong,.conversation.unread .conversation-preview{color:#fff}.conversation-new{display:inline-flex;align-items:center;min-height:20px;border-radius:999px;background:#2dd4bf2e;color:#99f6e4;font-size:11px;font-weight:950;padding:2px 7px;text-transform:uppercase}.conversation-danger{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid rgba(245,94,120,.2);color:#b7bdd6;font-size:12px;padding-top:10px}.conversation-danger span{min-width:0;overflow-wrap:anywhere}.conversation-danger button{flex:0 0 auto;border-color:#f55e7857;background:#f55e7821;color:#ffb7c2}.conversation-danger button:hover:not(:disabled){border-color:#f55e7894;background:#f55e7833}.status-pill{display:inline-flex;align-items:center;align-self:center;min-height:30px;border:1px solid rgba(255,255,255,.1);border-radius:999px;font-size:12px;font-weight:900;padding:5px 11px;text-transform:capitalize}.status-disconnected,.status-unsubscribed{background:#9097b321;color:#b5bad1}.status-connecting{background:#fcd34d24;border-color:#fcd34d57;color:#fde68a}.status-connected{background:#2dd4bf24;border-color:#2dd4bf57;color:#99f6e4}.status-subscribed,.status-subscribing{background:#5865f233;border-color:#8b97ff6b;color:#d7dcff}.status-error{background:#f55e7826;border-color:#f55e7859;color:#ffb7c2}.status-dot{width:11px;height:11px;border-radius:50%;background:#717894;box-shadow:0 0 0 4px #7178941f}.status-dot-subscribed{background:#2dd4bf;box-shadow:0 0 0 4px #2dd4bf24}.status-dot-unsubscribed,.status-dot-subscribing{background:#fcd34d;box-shadow:0 0 0 4px #fcd34d1f}.chat-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;min-height:0;overflow:hidden;border-radius:9px;background:linear-gradient(#14151ef5,#14151ef5),repeating-linear-gradient(135deg,transparent 0 28px,rgba(255,255,255,.02) 28px 29px)}.conversation-settings{margin:0;border-radius:0;border-bottom:1px solid rgba(255,255,255,.07);background:#12131cb8}.chat-header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(255,255,255,.07);background:#12131cd1;padding:15px 16px}.chat-header h2{font-size:18px}.chat-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.chat-health{display:inline-flex;align-items:center;min-height:30px;border:1px solid rgba(255,255,255,.07);border-radius:999px;background:#ffffff0a;color:#a9afc8;font-size:12px;font-weight:850;padding:5px 10px;text-transform:capitalize}.live-indicator{display:inline-flex;align-items:center;min-height:30px;gap:7px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#ffffff0b;color:#cdd2e8;font-size:12px;font-weight:900;padding:5px 10px}.live-indicator span{width:8px;height:8px;border-radius:50%;background:#fcd34d;box-shadow:0 0 0 4px #fcd34d1f}.live-indicator-live{color:#99f6e4}.live-indicator-live span{background:#2dd4bf;box-shadow:0 0 0 4px #2dd4bf24}.chat-actions button,.message-actions button,.debug-panel summary button{min-height:32px;padding:6px 10px}.message-list{display:flex;flex-direction:column;gap:10px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px}.message-time-separator{display:flex;align-items:center;align-self:center;width:min(420px,74%);gap:10px;color:#858da8;font-size:11px;font-weight:850;margin:4px 0;text-align:center}.message-time-separator:before,.message-time-separator:after{content:"";flex:1 1 auto;height:1px;background:#ffffff12}.message-time-separator span{flex:0 1 auto}.empty-state{display:grid;gap:4px;border:1px dashed rgba(139,151,255,.34);border-radius:8px;background:#5865f20f;color:#9097b3;padding:14px}.empty-state strong{color:#eef0ff}.demo-setup{display:grid;gap:9px;border:1px solid rgba(45,212,191,.25);border-radius:8px;background:#2dd4bf14;color:#a9afc8;padding:14px}.demo-setup strong{color:#eef0ff}.demo-setup span{font-size:13px;line-height:1.35}.demo-setup button{border-color:transparent;background:#2dd4bf;color:#082f2b}.loading-state{display:grid;gap:10px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:#ffffff09;color:#a9afc8;padding:14px}.loading-bars{display:grid;gap:7px}.loading-bars i{display:block;height:9px;border-radius:999px;background:linear-gradient(90deg,#5865f22e,#2dd4bf2e)}.loading-bars i:nth-child(1){width:88%}.loading-bars i:nth-child(2){width:68%}.loading-bars i:nth-child(3){width:76%}.message-row{display:flex;align-items:flex-start;align-self:flex-start;max-width:min(620px,82%);gap:8px}.message-row.grouped-message{margin-top:-6px}.message-row.own-message{align-self:flex-end;flex-direction:row-reverse}.message-row .message-avatar{flex:0 0 auto;background:linear-gradient(135deg,#2dd4bfe0,#5865f2c7)}.message-row.own-message .message-avatar{background:linear-gradient(135deg,#5865f2,#8b97ff)}.message-row .message{position:relative;align-self:flex-start;min-width:0;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:#232532;color:#f1f3ff;padding:8px 10px;box-shadow:0 8px 20px #00000029}.message-row.own-message .message{border-color:#8b97ff47;background:linear-gradient(135deg,#5865f2,#4954d8)}.message-row.failed-message .message{border-color:#f55e786b;background:#f55e7821}.message-row.deleted-message .message{background:#9097b31a;color:#a9afc8}.message-meta,.message-footer,.event-meta,.presence-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.message-meta{justify-content:flex-start;color:#b7bdd6;font-size:12px;margin-bottom:4px}.message-row.own-message .message-meta{color:#ffffffbd}.message p{overflow-wrap:anywhere;line-height:1.35}.message-footer{align-items:flex-end;gap:8px;margin-top:6px}.message-status{display:flex;min-width:0;flex-wrap:wrap;gap:5px;color:#9da4be;font-size:10px;font-weight:850;text-transform:uppercase}.message-row.own-message .message-status{color:#ffffffad}.message-status span{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-menu{position:relative;flex:0 0 auto}.message-menu summary{display:grid;place-items:center;width:24px;height:20px;border-radius:6px;background:#ffffff14;color:#ffffffd1;cursor:pointer;list-style:none;font-size:13px;font-weight:950;line-height:1}.message-menu summary::-webkit-details-marker{display:none}.message-menu summary:hover{background:#ffffff24}.message-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.message-menu-popover{position:absolute;right:0;z-index:4;display:grid;min-width:96px;gap:4px;margin-top:5px;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:#181a25;box-shadow:0 14px 34px #00000052;padding:5px}.message-menu-popover button,.message-actions button{min-height:28px;background:#ffffff14;padding:5px 8px;text-align:left}.message-menu-popover button{width:100%;border-color:transparent;border-radius:5px;font-size:12px}.edit-form{display:grid;gap:8px}.typing-row{min-height:38px;border-top:1px solid rgba(255,255,255,.07);color:#9aa3ff;font-size:13px;padding:10px 16px}.send-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;border-top:1px solid rgba(255,255,255,.07);background:#12131ce6;padding:14px}.composer-shell{display:grid;min-width:0;gap:7px}.typing-indicator-slot{min-height:18px}.typing-indicator{display:inline-flex;align-items:center;gap:7px;color:#99f6e4;font-size:12px;font-weight:850}.typing-dots{display:inline-flex;align-items:center;gap:3px}.typing-dots i{width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.55}.send-form input{min-height:44px;border-radius:8px;background:#262837}.composer-status{display:flex;align-items:center;justify-content:flex-end;gap:12px;color:#9097b3;font-size:12px}.composer-status span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-status span:last-child{flex:0 0 auto;color:#9aa3ff;font-weight:850;text-transform:uppercase}.send-form button,.create-form button,.inline-form button{border-color:transparent;background:#5865f2;color:#fff}.send-form button:hover:not(:disabled),.create-form button:hover:not(:disabled),.inline-form button:hover:not(:disabled){background:#6975ff}.utility-panel{display:grid;min-height:0;gap:12px;grid-template-rows:auto auto minmax(0,1fr)}.utility-card{border-radius:9px;padding:14px}.control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.control-grid button{width:100%}.presence-panel{overflow:hidden}.presence-row{justify-content:flex-start;color:#dce1ff;font-size:13px}.presence-row small{margin-left:auto;color:#9097b3}.presence-dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:#717894}.presence-dot.online{background:#40d497;box-shadow:0 0 0 4px #40d49721}.debug-panel{overflow:hidden;border-radius:9px}.debug-panel summary{cursor:pointer;list-style:none;padding:14px}.event-count{display:inline-flex;align-items:center;justify-content:center;min-width:26px;min-height:24px;border-radius:999px;background:#8b97ff21;color:#d7dcff;font-size:12px;font-weight:900}.debug-panel[open] summary{border-bottom:1px solid rgba(255,255,255,.07)}.event-log{display:grid;max-height:calc(100vh - 520px);min-height:180px;gap:10px;overflow-y:auto;padding:14px}.event-entry{overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:#11131b}.event-sent{border-left:4px solid #8b97ff}.event-received{border-left:4px solid #40d497}.event-local{border-left:4px solid #fcd34d}.event-meta{color:#b7bdd6;font-size:12px;padding:8px 10px}.event-entry pre{margin:0;border-top:1px solid rgba(255,255,255,.07);color:#dce1ff;font-size:12px;line-height:1.45;overflow-x:auto;padding:10px;white-space:pre-wrap;word-break:break-word}@media (max-width: 1240px){.workspace,.workspace-dev{grid-template-columns:272px minmax(0,1fr)}.utility-panel{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto}.debug-panel{grid-column:1 / -1}.event-log{max-height:360px}}@media (max-width: 860px){.app-shell{padding:12px}.app-header,.workspace,.send-form,.inline-form,.utility-panel{grid-template-columns:1fr}.app-header{align-items:stretch}.app-header-actions{align-items:stretch;justify-content:space-between}.mode-toggle{width:100%}.banner{align-items:flex-start;flex-direction:column}.workspace{min-height:0}.chat-header,.message-footer{align-items:stretch;flex-direction:column}.chat-actions,.message-actions{justify-content:flex-start}.chat-health{width:100%}.message-row{max-width:100%}.message-avatar{width:32px;height:32px;font-size:12px}.message-avatar-wrap{width:32px;flex-basis:32px}.message-time-separator{width:100%}.control-grid{grid-template-columns:1fr}}
