:root{color:#f7f4fb;font-synthesis:none;text-rendering:optimizelegibility;background:#0d0b10;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(circle at 90% -10%,#8041be3d,#0000 34rem),#0d0b10;min-width:320px;min-height:100dvh}button,input{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.48}.loading-page,.login-page{place-items:center;min-height:100dvh;padding:1rem;display:grid}.loading-page{color:#b7acbd}.login-card{text-align:center;background:#17131df5;border:1px solid #382e42;border-radius:1.25rem;gap:1rem;width:min(100%,25rem);padding:1.35rem;display:grid;box-shadow:0 1.5rem 5rem #00000073}.login-card>img{border-radius:1.35rem;width:6rem;height:6rem;margin:0 auto}.login-card h1,.login-card p{margin:0}.login-card h1{font-size:1.45rem}.login-card p{color:#b7acbd;line-height:1.45}.login-card label,.modal-card label{color:#c9becf;text-align:left;gap:.38rem;font-size:.8rem;display:grid}.login-card input,.modal-card input{color:#f7f4fb;background:#0f0c12;border:1px solid #44364f;border-radius:.65rem;outline:none;width:100%;padding:.75rem .8rem}.login-card input:focus,.modal-card input:focus{border-color:#9254c8;box-shadow:0 0 0 3px #9254c829}.login-card small{color:#746b79}.connect-card{justify-items:stretch}.alert{border-radius:.55rem;padding:.65rem .7rem;font-size:.8rem}.alert.error,.inline-error{color:#ffd4d4;background:#371a1a;border:1px solid #7b3131}.primary-button{color:#fff;background:linear-gradient(145deg,#8246b4,#5a2b7c);border:1px solid #a56bd2;border-radius:.65rem;min-height:2.65rem;padding:.65rem 1rem;font-weight:700}.link-button{place-items:center;text-decoration:none;display:grid}.text-button{color:#bfb2c6;background:0 0;border:0}.app-shell{background:#121016f0;border-inline:1px solid #28222f;grid-template-rows:auto auto auto 1fr;width:min(100%,1050px);min-height:100dvh;margin:0 auto;display:grid}.topbar{padding:calc(.7rem + env(safe-area-inset-top)) .85rem .7rem;background:#17131d;border-bottom:1px solid #2b2433;justify-content:space-between;align-items:center;gap:.7rem;display:flex}.brand,.topbar-actions,.connection,.channel-tab,.stream-summary,.chat-toolbar,.chat-toolbar>div,.message,.composer,.message-author{align-items:center;display:flex}.brand{gap:.55rem;min-width:0}.brand-mark{object-fit:cover;border-radius:.6rem;flex:none;width:2.35rem;height:2.35rem;display:block;box-shadow:0 0 1.2rem #8a43ff5c}.brand-name{letter-spacing:.01em;font-weight:800}.version{color:#a99eaf;white-space:nowrap;font-size:.72rem}.topbar-actions{gap:.65rem}.connection{color:#c9c0cf;gap:.35rem;font-size:.76rem}.status-dot,.live-dot{background:#67606d;border-radius:50%;width:.5rem;height:.5rem}.status-dot.connected,.live-dot.is-live{background:#32d07d;box-shadow:0 0 .65rem #32d07d85}.avatar{object-fit:cover;border-radius:50%;width:2rem;height:2rem}.icon-button,.add-channel,.channel-tab,.chat-toolbar button,.composer button{background:#211b27;border:1px solid #342b3d;border-radius:.55rem}.icon-button{width:2.1rem;height:2.1rem}.channel-tabs{scrollbar-width:thin;background:#120f16;border-bottom:1px solid #28212f;gap:.35rem;padding:.5rem .6rem;display:flex;overflow-x:auto}.add-channel{flex:0 0 2.25rem;min-height:2.15rem;font-size:1.2rem}.channel-tab{white-space:nowrap;gap:.42rem;min-height:2.15rem;padding:.45rem .65rem}.channel-tab.active{background:#39234a;border-color:#704893}.message-count{background:#8750bb;border-radius:1rem;min-width:1.1rem;padding:.08rem .3rem;font-size:.68rem}.stream-summary{background:linear-gradient(90deg,#44275499,#1c162180);border-bottom:1px solid #302638;justify-content:space-between;gap:1rem;padding:.65rem .85rem}.stream-summary>div:first-child{gap:.16rem;min-width:0;display:grid}.stream-summary strong,.stream-summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stream-summary span{color:#aaa0b0;font-size:.73rem}.account-name{color:#cfa7ed!important}.chat-panel{grid-template-rows:auto 1fr auto;min-height:0;display:grid}.chat-toolbar{border-bottom:1px solid #28212f;justify-content:space-between;padding:.5rem .75rem}.chat-toolbar>span{font-weight:700}.chat-toolbar>div{gap:.35rem}.chat-toolbar button{color:#c8bdce;padding:.35rem .55rem;font-size:.72rem}.messages{min-height:22rem;padding:.4rem 0;overflow-y:auto}.message{align-items:flex-start;gap:.6rem;padding:.56rem .8rem}.message:nth-of-type(2n){background:#ffffff05}.message time{color:#716a76;padding-top:.13rem;font-size:.66rem}.message>div{min-width:0}.message-author{flex-wrap:wrap;gap:.28rem}.message strong{color:#b982e4;font-size:.82rem}.message p{color:#e3dce7;overflow-wrap:anywhere;margin:.12rem 0 0;font-size:.88rem;line-height:1.38}.badge{color:#fff;background:#64417f;border-radius:.2rem;place-items:center;min-width:1rem;height:1rem;padding:0 .18rem;font-size:.58rem;font-weight:800;display:inline-grid}.empty-state{color:#857b8c;text-align:center;padding:3rem 1rem}.inline-error,.system-notice{border-radius:.45rem;margin:.45rem .65rem;padding:.55rem .65rem;font-size:.76rem}.inline-error{justify-content:space-between;gap:.5rem;display:flex}.inline-error button{background:0 0;border:0}.system-notice{color:#e8d6f4;background:#251a2c;border:1px solid #493555}.composer{padding:.55rem .65rem calc(.55rem + env(safe-area-inset-bottom));background:#17131d;border-top:1px solid #302638;gap:.45rem}.composer input{color:#f2edf5;background:#0e0c11;border:1px solid #332b3a;border-radius:.6rem;outline:none;flex:1;min-width:0;padding:.65rem .75rem}.composer input:focus{border-color:#704893}.composer button{min-height:2.35rem;padding:.45rem .7rem}.send-button{background:#65368b!important}.modal-backdrop{z-index:10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050407c7;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-card{background:#19141e;border:1px solid #463650;border-radius:1rem;gap:1rem;width:min(100%,25rem);padding:1.1rem;display:grid}.modal-card h2{margin:0;font-size:1rem}.modal-card>div{justify-content:flex-end;gap:.5rem;display:flex}.modal-card .primary-button{min-height:2.3rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=560px){.app-shell{border:0}.connection{display:none}.stream-summary,.message{padding-inline:.65rem}.composer{padding-inline:.45rem}.send-button{padding-inline:.55rem!important}}@media (orientation:landscape) and (height<=560px){.topbar{padding-block:calc(.35rem + env(safe-area-inset-top)) .35rem}.channel-tabs{padding-block:.3rem}.stream-summary{padding-block:.4rem}.messages{min-height:10rem}}
