:root{--bg: #17131f;--panel: #221c2e;--text: #efeafb;--text-dim: #9a8fba;--hairline: #362e44;--signal: #7f77dd;--signal-light: #afa9ec;--signal-on: #26215c;--alert: #d85a30;--alert-on: #4a1b0c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:IBM Plex Sans,system-ui,sans-serif}.console{display:grid;grid-template-columns:260px 1fr;height:100vh}.sidebar{background:var(--panel);border-right:1px solid var(--hairline);padding:20px 16px 0;display:flex;flex-direction:column;min-height:0}.sidebar__scroll{flex:1;overflow-y:auto;min-height:0}.sidebar__profile{position:relative;display:flex;align-items:center;gap:10px;padding:14px 4px;margin-top:8px;border-top:1px solid var(--hairline)}.profile-menu{position:absolute;bottom:calc(100% + 6px);right:4px;background:var(--panel);border:1px solid var(--hairline);border-radius:8px;padding:4px;display:flex;flex-direction:column;min-width:140px;box-shadow:0 4px 16px #0006;z-index:50}.profile-menu__item{display:flex;align-items:center;gap:8px;background:none;border:none;color:var(--text);font-size:13px;font-family:inherit;text-align:left;padding:8px 10px;border-radius:6px;cursor:pointer}.profile-menu__item:hover{background:#ffffff0d}.profile-menu__divider{height:1px;background:var(--hairline);margin:4px 2px}.session__avatar--icon,.chat-header__avatar--icon{display:flex;align-items:center;justify-content:center;color:var(--signal-light)}.sidebar__profile-avatar{width:28px;height:28px;border-radius:50%;background:var(--signal);color:var(--signal-on);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex:0 0 auto;border:none;cursor:pointer;font-family:inherit}.profile-screen__body{display:flex;flex-direction:column;align-items:center;text-align:center}.avatar{position:relative;border-radius:50%;overflow:hidden;background:var(--panel);border:1px solid var(--hairline);display:flex;align-items:center;justify-content:center;flex:0 0 auto;padding:0;font-family:inherit}.avatar__img{width:100%;height:100%;object-fit:cover}.avatar__letter{color:var(--text-dim);font-weight:600}.avatar__edit-badge{position:absolute;bottom:-2px;right:-2px;width:18px;height:18px;border-radius:50%;background:var(--signal);color:var(--signal-on);display:flex;align-items:center;justify-content:center;border:2px solid var(--bg)}.profile-screen__avatar{width:64px;height:64px;border-radius:50%;background:var(--panel);border:2px solid var(--signal);color:var(--signal-light);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:600;margin-bottom:12px}.profile-screen__display-name{font-size:16px;font-weight:600}.profile-screen__username{color:var(--text-dim);font-size:12px;font-family:IBM Plex Mono,monospace;margin-top:2px}.profile-screen__presence{color:var(--signal-light);font-size:11px;font-family:IBM Plex Mono,monospace;margin-top:4px;margin-bottom:20px}.profile-screen__private{color:var(--text-dim);font-size:13px;padding:20px 0}.profile-screen__body .settings-section{width:100%;text-align:left}.profile-screen__bio-input{width:100%;background:var(--panel);border:1px solid var(--hairline);border-radius:6px;color:var(--text);font-size:13px;font-family:inherit;padding:8px 10px;margin-top:10px;resize:vertical}.profile-screen__hint{font-size:11px;color:var(--text-dim);margin:-4px 0 8px}.profile-screen__bio-text{font-size:13px;color:var(--text-dim);text-align:left;width:100%;margin-top:10px}.sidebar__profile-name{flex:1;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__brand{display:flex;align-items:center;gap:8px;margin-bottom:24px}.sidebar__brand-mark{flex:0 0 auto}.sidebar__brand-name{color:var(--text);font-size:14px;font-weight:500}.sidebar__search{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--hairline);border-radius:8px;padding:8px 10px;margin-bottom:14px}.sidebar__search-icon{color:var(--text-dim);font-size:14px;flex:0 0 auto}.sidebar__search-input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-size:12px;font-family:inherit}.sidebar__search-input::placeholder{color:var(--text-dim)}.sidebar__empty{color:var(--text-dim);font-size:12px;font-family:IBM Plex Mono,monospace;padding:12px 4px}.sidebar__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.session{padding:10px 12px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:10px;min-width:0}.session__text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.session__avatar{width:30px;height:30px;border-radius:50%;background:var(--bg);border:1px solid var(--hairline);color:var(--text-dim);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex:0 0 auto}.session:hover{background:#ffffff08}.session--active{background:#7f77dd1f}.session__name{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session__last{font-size:12px;color:var(--text-dim);font-family:IBM Plex Mono,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stream{display:flex;flex-direction:column;min-width:0}.stream-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;border-bottom:1px solid var(--hairline)}.stream-header h1{font-size:16px;font-weight:600;margin:0 0 2px}.stream-header__meta{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text-dim)}.stream-header__actions{display:flex;align-items:center;gap:6px}.icon-button{background:transparent;border:none;color:var(--text-dim);cursor:pointer;padding:6px;border-radius:6px;font-size:13px;font-family:IBM Plex Mono,monospace;display:flex;align-items:center;justify-content:center}.icon-button:hover:not(:disabled){color:var(--text);background:#ffffff0a}.icon-button:disabled{opacity:.4;cursor:default}.composer__recording{flex:1;display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--panel);border:1px solid var(--hairline);border-radius:6px}.composer__recording-dot{width:8px;height:8px;border-radius:50%;background:var(--alert);animation:composer-pulse 1s ease-in-out infinite}@keyframes composer-pulse{0%,to{opacity:1}50%{opacity:.35}}.composer__recording-label{font-size:12px;color:var(--text-dim);font-family:IBM Plex Mono,monospace}.chat-header{border-bottom:1px solid var(--hairline)}.chat-header__row{display:flex;align-items:center;gap:10px;padding:14px 20px}.chat-header__avatar{width:34px;height:34px;border-radius:50%;background:var(--panel);border:1px solid var(--hairline);display:flex;align-items:center;justify-content:center;color:var(--text-dim);flex:0 0 auto;cursor:pointer;padding:0;font-family:inherit}.chat-header__avatar:hover{border-color:var(--signal);color:var(--signal-light)}.chat-header__identity{flex:1;min-width:0}.chat-header__name{font-size:14px;font-weight:600}.chat-header__status{font-size:11px;color:var(--text-dim);font-family:IBM Plex Mono,monospace}.chat-header__panel{padding:6px 20px 14px;display:flex;flex-direction:column;gap:2px}.chat-header__panel-row{display:flex;align-items:center;gap:10px;background:none;border:none;color:var(--text);font-size:13px;font-family:inherit;padding:9px 6px;border-radius:6px;cursor:pointer;text-align:left}.chat-header__panel-row:hover{background:#ffffff08}.chat-header__panel-row--static{justify-content:space-between;cursor:default;color:var(--text-dim)}.chat-header__panel-row--static:hover{background:none}.chat-header__panel-hint{font-size:11px}.chat-header__panel-row--danger{color:var(--alert)}.stream-body{flex:1;overflow-y:auto;padding:24px 28px;display:flex;flex-direction:column;gap:10px}.stream-body--loading,.stream-body--empty{color:var(--text-dim);font-family:IBM Plex Mono,monospace;font-size:13px;margin:auto}.bubble{max-width:65%;min-width:0;padding:10px 14px;border-radius:4px;background:var(--panel);border:1px solid var(--hairline);display:flex;align-items:center;gap:10px;font-size:14px;overflow-wrap:anywhere;word-break:break-word}.bubble--text{align-self:flex-start}.bubble__sender{font-size:11px;font-weight:600;color:var(--signal-light);margin:2px}.bubble--own{align-self:flex-end;border-color:var(--signal)}.bubble__play{background:none;border:none;color:var(--signal-light);cursor:pointer;display:flex;align-items:center;flex:0 0 auto}.bubble__play:disabled{opacity:.4;cursor:default}.bubble__duration{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-dim)}.bubble__download{color:var(--text-dim);display:flex;align-items:center}.bubble__download:hover{color:var(--text)}.circle-thumb--video{object-fit:cover;cursor:pointer;background:var(--bg)}.bubble-menu{position:fixed;background:var(--panel);border:1px solid var(--hairline);border-radius:8px;padding:4px;display:flex;flex-direction:column;min-width:120px;z-index:50;box-shadow:0 4px 16px #0006}.bubble-menu__item{background:none;border:none;color:var(--text);font-size:13px;font-family:inherit;text-align:left;padding:8px 10px;border-radius:6px;cursor:pointer}.bubble-menu__item:hover{background:#ffffff0d}.bubble-menu__item--danger{color:var(--alert)}.bubble--editing{display:flex;gap:6px;max-width:75%}.bubble__edit-input{flex:1;background:var(--bg);border:1px solid var(--signal);border-radius:4px;padding:6px 8px;color:var(--text);font-size:13px;font-family:inherit}.bubble__edit-save,.bubble__edit-cancel{background:none;border:1px solid var(--hairline);border-radius:4px;color:var(--text-dim);font-size:11px;padding:0 8px;cursor:pointer}.bubble__edit-save{color:var(--signal-light);border-color:var(--signal)}.bubble__time{margin-left:auto;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-dim);white-space:nowrap}.bubble__icon{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--alert);border:1px solid var(--alert);border-radius:3px;padding:2px 6px;display:flex;align-items:center}.bubble__icon--file{color:var(--signal-light);border:none;padding:0}.session__badge{background:var(--signal);color:var(--signal-on);font-size:10px;font-weight:600;border-radius:9px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0 5px;flex:0 0 auto}.bubble--log{border-color:var(--alert)}.bubble--voice .waveform{display:flex;align-items:flex-end;gap:2px;height:28px}.bubble--voice .waveform span{width:2px;background:var(--signal-light);border-radius:1px}.circle-thumb{width:36px;height:36px;border-radius:50%;border:2px solid var(--signal-light)}.bubble__filename{font-size:14px}.bubble__filesize{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-dim)}.composer{display:flex;gap:10px;padding:16px 28px 24px;border-top:1px solid var(--hairline)}.composer__input{flex:1;background:var(--panel);border:1px solid var(--hairline);border-radius:6px;padding:10px 14px;color:var(--text);font-size:14px;font-family:inherit}.composer__input:focus{outline:none;border-color:var(--signal)}.composer__send{background:var(--signal);color:var(--signal-on);border:none;border-radius:6px;width:40px;display:flex;align-items:center;justify-content:center;cursor:pointer}.composer__send:hover:not(:disabled){filter:brightness(1.08)}.composer__send:disabled{opacity:.5;cursor:default}.composer__input:disabled{opacity:.6}.picker-list{display:flex;flex-direction:column;margin-bottom:20px}.picker-row{display:flex;align-items:center;gap:10px;padding:9px 2px;border-bottom:1px solid var(--hairline)}.picker-row:last-child{border-bottom:none}.picker-row__toggle{width:26px;height:26px;border-radius:6px;border:1px solid var(--hairline);background:none;color:var(--text-dim);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:0 0 auto}.picker-row__toggle:hover{border-color:var(--signal);color:var(--signal-light)}.picker-row__toggle--selected{background:var(--signal);border-color:var(--signal);color:var(--signal-on)}.settings-screen{min-height:100vh;background:var(--bg)}.settings-screen__header{display:flex;align-items:center;gap:14px;padding:18px 24px;border-bottom:1px solid var(--hairline)}.settings-screen__back{background:none;border:1px solid var(--hairline);border-radius:50%;width:32px;height:32px;color:var(--text);font-size:18px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.settings-screen__back:hover{border-color:var(--signal);color:var(--signal-light)}.settings-screen__header h1{font-size:16px;font-weight:600;margin:0}.settings-screen__body{max-width:480px;margin:0 auto;padding:20px 24px 60px}.settings-screen__avatar-row{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:24px}.settings-screen__avatar-hint{font-size:11px;color:var(--text-dim)}.settings-section{margin-bottom:22px}.settings-section__title{color:var(--text-dim);font-size:11px;font-family:IBM Plex Mono,monospace;letter-spacing:.04em;margin-bottom:6px;padding:0 2px}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:11px 2px;border-bottom:1px solid var(--hairline);font-size:13px}.settings-row:last-child{border-bottom:none}.settings-row__value{color:var(--text-dim);font-family:IBM Plex Mono,monospace;font-size:12px}.settings-select{background:var(--panel);border:1px solid var(--hairline);border-radius:6px;color:var(--text);font-size:12px;font-family:inherit;padding:5px 8px}.settings-toggle{width:34px;height:19px;border-radius:10px;background:var(--hairline);position:relative;cursor:pointer;flex:0 0 auto}.settings-toggle__knob{position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:var(--text-dim);transition:left .15s ease}.settings-toggle--on{background:var(--signal)}.settings-toggle--on .settings-toggle__knob{left:17px;background:var(--signal-on)}.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.auth__card{width:100%;max-width:340px;padding:12px;display:flex;flex-direction:column;align-items:center}.auth__title{font-size:17px;font-weight:500;margin:14px 0 2px}.auth__subtitle{font-size:12px;color:var(--text-dim);margin-bottom:26px}.auth__fields{width:100%;display:flex;flex-direction:column;gap:10px}.auth__field{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--hairline);border-radius:8px;padding:11px 12px}.auth__field:focus-within{border-color:var(--signal)}.auth__field input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-size:13px;font-family:inherit}.auth__field input::placeholder{color:var(--text-dim)}.auth__field-icon{color:var(--text-dim);font-size:15px;flex:0 0 auto}.auth__error{width:100%;color:var(--alert);background:#d85a301a;border:1px solid var(--alert);border-radius:6px;padding:8px 10px;font-size:12px;margin-top:10px}.auth__submit{width:100%;background:var(--signal);color:var(--signal-on);border:none;border-radius:8px;padding:11px;font-size:13px;font-weight:600;margin-top:20px;cursor:pointer}.auth__submit:disabled{opacity:.6;cursor:default}.auth__submit:hover:not(:disabled){filter:brightness(1.08)}.auth__switch{margin-top:18px;font-size:12px;color:var(--text-dim)}.auth__switch button{background:none;border:none;color:var(--signal-light);font-size:12px;cursor:pointer;padding:0}
