:root{color:#17211f;font-synthesis:none;text-rendering:optimizelegibility;background:#edf2ef;font-family:Avenir Next,Helvetica Neue,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}.app-shell{background:linear-gradient(145deg,#edf2ef 0%,#dbe7e2 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.panel-wrap{background:#ffffffc7;border-radius:14px;width:min(100%,1180px);padding:32px;box-shadow:0 24px 70px #2641391f}.standalone-card{max-width:580px;margin:0 auto}.brand-block{margin-bottom:20px}.eyebrow{color:#477467;letter-spacing:.12em;text-transform:uppercase;margin:0 0 18px;font-size:.75rem;font-weight:700}h1{margin:0;font-size:clamp(2.5rem,6vw,4rem);line-height:.95}h2{margin:0 0 16px;font-size:1.15rem}.layout-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.card{background:#ffffffb3;border:1px solid #17211f1f;border-radius:10px;padding:20px}.stack-form{gap:8px;display:grid}.stack-form label{color:#52635d;font-size:.85rem}.stack-form input,.composer input{border:1px solid #17211f33;border-radius:6px;width:100%;padding:10px 12px;font-size:1rem}.button-row{gap:12px;margin-top:12px;display:flex}button{color:#fff;cursor:pointer;background:#2f6b4f;border:none;border-radius:6px;padding:10px 16px;font-size:.95rem}button.secondary{color:#18362d;background:#dfe9e3}button:disabled{opacity:.7;cursor:wait}.helper-text{color:#3b6253;margin-top:12px;font-size:.9rem}.error-text{color:#b3452f}.call-panel,.chat-panel{margin-top:16px}.participants{color:#52635d;font-size:.95rem}.connection-state{color:#52635d;border-top:1px solid #17211f1f;align-items:center;gap:10px;margin-top:16px;padding-top:16px;font-size:.9rem;display:flex}.status-dot{background:#d3984a;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #d3984a24}.status-dot--connected{background:#3f8f5f;box-shadow:0 0 0 4px #3f8f5f24}.status-dot--failed{background:#b3452f;box-shadow:0 0 0 4px #b3452f24}.chat-panel{border-top:1px solid #17211f1f;gap:14px;margin-top:18px;padding-top:16px;display:grid}.chat-header{color:#3b6253;justify-content:space-between;gap:12px;font-size:.85rem;display:flex}.messages{background:#f5f8f6;border:1px solid #17211f1f;border-radius:8px;gap:12px;min-height:180px;max-height:280px;padding:12px;display:grid;overflow:auto}.message{background:#fff;border-radius:8px;gap:4px;padding:8px 10px;display:grid}.message--grouped{margin-top:-8px;padding-top:0;padding-bottom:2px}.message-meta{color:#52635d;justify-content:space-between;gap:8px;font-size:.76rem;display:flex}.message-body-row{align-items:baseline;gap:8px;display:flex}.message-body-text{flex:1;min-width:0}.message-hover-time{color:#96989d;opacity:0;flex-shrink:0;width:38px;font-size:.66rem;transition:opacity .1s}.message--grouped:hover .message-hover-time{opacity:1}.empty-state{color:#52635d;margin:0}.composer{grid-template-columns:1fr auto;gap:8px;display:grid}@media (width<=560px){.panel-wrap{padding:24px 18px}}.stage{margin-top:4px}.stage-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.stage-header .eyebrow{margin:0 0 4px}.stage-room{margin:0;font-size:1.5rem;line-height:1.1}.live-badge{white-space:nowrap;color:#3b6253;background:#e4efe8;border-radius:999px;align-items:center;gap:7px;padding:5px 11px;font-size:.78rem;font-weight:600;display:inline-flex}.live-badge--connected{color:#2f6b4f;background:#e0f2e7}.live-badge--connecting{color:#9a6a1e;background:#fbeed8}.live-badge--failed{color:#b3452f;background:#f6dcd4}.live-dot{background:currentColor;border-radius:50%;width:8px;height:8px}.live-badge--connected .live-dot,.live-badge--connecting .live-dot{animation:1.8s ease-in-out infinite live-pulse}@keyframes live-pulse{0%,to{opacity:1;box-shadow:0 0}50%{opacity:.55;box-shadow:0 0 0 4px #0000}}.stage-count{color:#52635d;margin:14px 0 12px;font-size:.88rem}.stage-count-speaking{color:#2f6b4f;font-weight:600}.participant-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.participant{background:#fff;border:1px solid #17211f1f;border-radius:10px;align-items:center;gap:12px;padding:11px 13px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.participant--speaking{border-color:#3f8f5f;transform:translateY(-1px);box-shadow:0 0 0 2px #3f8f5f59,0 6px 16px #2f6b4f24}.avatar{color:#fff;letter-spacing:.02em;border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:.95rem;font-weight:700;display:grid;position:relative}.participant--speaking .avatar:after{content:"";border:2px solid #3f8f5f;border-radius:50%;animation:1.4s ease-out infinite speaking-ring;position:absolute;inset:-4px}@keyframes speaking-ring{0%{opacity:.9;transform:scale(.85)}to{opacity:0;transform:scale(1.25)}}.participant-info{gap:5px;min-width:0;display:grid}.participant-name{color:#17211f;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;font-weight:600;display:flex;overflow:hidden}.you-badge{color:#fff;letter-spacing:.02em;background:#2f6b4f;border-radius:999px;flex-shrink:0;padding:1px 7px;font-size:.68rem;font-weight:700}.participant-status{align-items:center;gap:10px;display:flex}.mic-icon{color:#3f8f5f}.mic-icon--muted{color:#b3452f}.participant--speaking .mic-icon{color:#2f6b4f}.quality-bars{align-items:flex-end;gap:2px;height:14px;display:inline-flex}.quality-bar{background:#17211f29;border-radius:1px;width:3px}.quality-bar:first-child{height:6px}.quality-bar:nth-child(2){height:10px}.quality-bar:nth-child(3){height:14px}.quality-bars--excellent .quality-bar--on,.quality-bars--good .quality-bar--on{background:#3f8f5f}.quality-bars--poor .quality-bar--on{background:#d3984a}.quality-bars--lost .quality-bar,.quality-bars--unknown .quality-bar{background:#b3452f59}.participant--adjustable{cursor:context-menu}.volume-badge{color:#3b6253;align-items:center;gap:3px;font-size:.72rem;font-weight:600;display:inline-flex}.volume-menu{z-index:50;background:#fff;border:1px solid #17211f24;border-radius:10px;width:200px;padding:12px 14px;position:fixed;box-shadow:0 10px 30px #17211f2e}.volume-menu-header{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.volume-menu-title{color:#17211f;text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.volume-menu-value{color:#3b6253;flex-shrink:0;font-size:.85rem;font-weight:600}.volume-menu-slider{width:100%;margin:4px 0}.volume-menu-hint{color:#6b7a76;margin:8px 0 0;font-size:.72rem;line-height:1.35}.volume-menu-reset{margin-top:8px;padding:4px 10px;font-size:.78rem}.stage-controls{margin-top:16px}.stage-controls .button-row{flex-wrap:wrap;margin-top:0}.rename-panel{background:var(--bg-card,#f9f9f9);border:1px solid var(--border,#e0e0e0);border-radius:8px;flex-direction:column;gap:8px;margin-top:16px;padding:16px;display:flex}.rename-panel label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary,#666);font-size:.8rem;font-weight:600}.rename-panel input{border:1px solid var(--border,#d0d0d0);border-radius:6px;width:100%;padding:8px 12px;font-size:.95rem}.rename-panel .button-row{margin-top:4px}.discord-layout{color:#dcddde;background:#1e1f22;width:100vw;height:100vh;font-family:gg sans,Noto Sans,Whitney,Helvetica Neue,Helvetica,Arial,sans-serif;display:flex;overflow:hidden}.discord-sidebar{background:#2b2d31;flex-direction:column;flex-shrink:0;width:240px;min-width:200px;max-width:260px;display:flex;overflow:hidden}.discord-space-header{border-bottom:1px solid #1e1f22;flex-shrink:0;justify-content:space-between;align-items:center;min-height:48px;padding:12px 16px;display:flex}.discord-space-name{color:#f2f3f5;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:700;overflow:hidden}.leave-space-btn{color:#b5bac1;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.85rem;line-height:1}.leave-space-btn:hover{color:#f2f3f5;background:#ffffff14}.discord-channels-section{flex:1;padding:8px 0;overflow-y:auto}.discord-channels-section::-webkit-scrollbar{width:4px}.discord-channels-section::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.discord-section-label{text-transform:uppercase;letter-spacing:.06em;color:#80848e;cursor:default;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:6px 16px;font-size:.7rem;font-weight:700;display:flex}.add-channel-btn{color:#80848e;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0 2px;font-size:1.1rem;line-height:1}.add-channel-btn:hover{color:#dcddde}.discord-empty-channels{color:#80848e;padding:8px 16px;font-size:.8rem;line-height:1.4}.discord-channels-error{color:#f57d6a;padding:8px 16px;font-size:.8rem}.discord-channel-list{margin:0;padding:0 8px;list-style:none}.discord-channel-item{cursor:pointer;color:#96989d;border-radius:4px;flex-wrap:wrap;align-items:center;gap:4px;padding:6px 8px;font-size:.9rem;transition:background .1s,color .1s;display:flex;position:relative}.discord-channel-item:hover{color:#dcddde;background:#ffffff0f}.discord-channel-item--active{color:#f2f3f5;background:#ffffff1a}.discord-channel-icon{flex-shrink:0;font-size:.8rem}.discord-channel-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.discord-channel-delete{color:#80848e;cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;padding:0 4px;font-size:1rem;line-height:1;transition:opacity .1s}.discord-channel-item:hover .discord-channel-delete{opacity:1}.discord-channel-delete:hover{color:#f57d6a;background:#ff503c1a}.discord-channel-members{flex-direction:column;gap:2px;width:100%;margin:4px 0 0;padding:0 0 0 20px;list-style:none;display:flex}.discord-channel-member{color:#7d8590;align-items:center;gap:6px;padding:2px 0;font-size:.78rem;display:flex}.discord-member-dot{background:#3ba55d;border-radius:50%;flex-shrink:0;width:8px;height:8px}.you-badge{color:#8e9cf8;background:#5865f259;border-radius:3px;margin-left:2px;padding:0 4px;font-size:.65rem;font-weight:600}.discord-user-strip{background:#232428;border-top:1px solid #1e1f22;flex-shrink:0;align-items:center;gap:8px;min-height:52px;padding:8px 10px;display:flex}.discord-user-avatar{color:#fff;background:#5865f2;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.75rem;font-weight:700;display:flex}.discord-user-name{color:#f2f3f5;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.discord-main{background:#313338;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.discord-welcome{text-align:center;color:#80848e;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:32px;display:flex}.discord-welcome-icon{margin-bottom:8px;font-size:3rem}.discord-welcome h2{color:#f2f3f5;margin:0;font-size:1.5rem;font-weight:700}.discord-welcome p{color:#80848e;max-width:360px;margin:0;font-size:.95rem}.discord-overlay{z-index:100;background:#000000a6;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.discord-overlay-card{background:#2b2d31;border-radius:8px;width:min(420px,90vw);padding:24px 28px;box-shadow:0 8px 32px #00000080}.discord-overlay-card h2{color:#f2f3f5;margin:0 0 8px;font-size:1.15rem;font-weight:700}.discord-overlay-card p{color:#96989d;margin:0 0 16px;font-size:.9rem}.discord-overlay-card .stack-form{gap:10px}.discord-overlay-card label{text-transform:uppercase;letter-spacing:.06em;color:#b5bac1;font-size:.75rem;font-weight:700}.discord-overlay-card input{color:#dcddde;box-sizing:border-box;background:#1e1f22;border:1px solid #1e1f22;border-radius:4px;outline:none;width:100%;padding:10px 12px;font-size:.95rem}.discord-overlay-card input:focus{border-color:#5865f2}.discord-channel-view{flex-direction:column;flex:1;display:flex;overflow:hidden}.discord-channel-topbar{background:#313338;border-bottom:1px solid #232428;flex-shrink:0;align-items:center;gap:12px;min-height:48px;padding:0 16px;display:flex}.discord-channel-topbar-name{color:#f2f3f5;font-size:.95rem;font-weight:700}.discord-channel-content{flex:1;display:flex;overflow:hidden}.discord-voice-panel{background:#2b2d31;border-right:1px solid #1e1f22;flex-shrink:0;width:280px;min-width:220px;padding:16px;overflow-y:auto}.discord-voice-panel .stage-room-name{color:#b5bac1;font-size:.78rem}.discord-voice-panel .stage-state-label{color:#3ba55d}.discord-voice-panel .stage-participants{gap:4px}.discord-voice-panel .participant-card{background:#ffffff0a;border:1px solid #ffffff0f}.discord-voice-panel .participant-name{color:#dcddde}.discord-chat-panel{flex-direction:column;flex:1;display:flex;overflow:hidden}.discord-chat-header{color:#80848e;background:#313338;border-bottom:1px solid #232428;flex-shrink:0;justify-content:space-between;align-items:center;min-height:40px;padding:0 16px;font-size:.85rem;display:flex}.discord-chat-header strong{color:#f2f3f5}.discord-layout .messages{background:0 0;flex:1}.discord-layout .message{background:0 0;border:none;border-bottom:1px solid #ffffff0d;padding:8px 16px}.discord-layout .message:hover{background:#ffffff05}.discord-layout .message--grouped{border-bottom:none;margin-top:-6px;padding:0 16px 2px}.discord-layout .message-meta span{color:#f2f3f5;font-weight:600}.discord-layout .message-meta time,.discord-layout .message-hover-time{color:#72767d}.discord-layout .message-body-text{color:#dcddde}.discord-layout .empty-state{color:#72767d;padding:24px}.discord-layout .composer{background:#383a40;border:none;border-top:1px solid #232428;gap:8px;padding:0 8px}.discord-layout .composer input{color:#dcddde;background:0 0;border:none;padding:11px 8px}.discord-layout .composer input::placeholder{color:#72767d}.discord-layout .composer input:focus{outline:none}.discord-layout .composer button{background:#5865f2;padding:6px 14px;font-size:.85rem}.discord-layout .composer button:hover{background:#4752c4}.discord-layout .button-row button{color:#fff;background:#5865f2;border:none;padding:6px 14px;font-size:.8rem}.discord-layout .button-row button:hover{background:#4752c4}.discord-layout .button-row button.secondary{color:#dcddde;background:#ffffff1a}.discord-layout .button-row button.secondary:hover{color:#fff;background:#ffffff26}.noise-engine-picker{border:1px solid #ffffff1f;border-radius:6px;display:inline-flex;overflow:hidden}.noise-engine-btn{cursor:pointer;color:#96989d!important;background:#ffffff0d!important;border:none!important;border-radius:0!important;padding:5px 10px!important;font-size:.72rem!important}.noise-engine-btn:not(:first-child){border-left:1px solid #ffffff1f!important}.noise-engine-btn:hover:not(:disabled){color:#dcddde!important;background:#ffffff1a!important}.noise-engine-btn--active{color:#fff!important;background:#3ba55d!important}.noise-engine-btn--active:hover{background:#359355!important}.noise-engine-btn:disabled{opacity:.4;cursor:not-allowed}.app-shell .brand-block h1{font-size:1.6rem}.ping-list{border-top:1px solid #ffffff12;flex-direction:column;gap:4px;margin-top:12px;padding-top:10px;display:flex}.ping-row{justify-content:space-between;align-items:center;gap:8px;padding:3px 0;font-size:.78rem;display:flex}.ping-name{color:#96989d;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ping-badge{font-variant-numeric:tabular-nums;letter-spacing:.02em;flex-shrink:0;font-size:.72rem;font-weight:700}.msg-delete-btn{color:#72767d;cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;margin-left:auto;padding:0 4px;font-size:.9rem;line-height:1;transition:opacity .1s}.discord-layout .message:hover .msg-delete-btn{opacity:1}.msg-delete-btn:hover{background:#ed42451a;color:#ed4245!important}.discord-online-section{border-top:1px solid #1e1f22;flex-shrink:0;padding-bottom:4px}.discord-online-list{flex-direction:column;gap:2px;max-height:180px;margin:0;padding:0 8px;list-style:none;display:flex;overflow-y:auto}.discord-online-list::-webkit-scrollbar{width:4px}.discord-online-list::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.discord-online-member{cursor:default;border-radius:4px;align-items:center;gap:8px;padding:4px 8px;display:flex}.discord-online-member:hover{background:#ffffff0f}.discord-online-avatar{color:#fff;background:#5865f2;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.65rem;font-weight:700;display:flex;position:relative}.discord-online-avatar:after{content:"";background:#3ba55d;border:2px solid #2b2d31;border-radius:50%;width:8px;height:8px;position:absolute;bottom:0;right:0}.discord-online-info{flex-direction:column;gap:1px;min-width:0;display:flex;overflow:hidden}.discord-online-name{color:#dcddde;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:.82rem;font-weight:600;display:flex;overflow:hidden}.discord-online-channel{color:#72767d;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}
