:root{--bg:#070b14;--panel:#0d1320;--panel2:#111827;--panel3:#151e2f;--line:#202b3f;--text:#eef3ff;--muted:#8d99ad;--blue:#3b82f6;--violet:#6d5dfc;--green:#45d483;--danger:#ef4444;--radius:14px}*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;background:radial-gradient(circle at 15% 100%,#11204c 0,transparent 38%),var(--bg);color:var(--text)}button,input{font:inherit}.app-body{overflow:hidden}.app-shell{height:100vh;display:grid;grid-template-columns:76px 270px minmax(420px,1fr) 230px;background:rgba(4,8,16,.82)}.server-rail{background:#070b12;border-right:1px solid var(--line);padding:18px 10px;display:flex;align-items:center;flex-direction:column;gap:14px}.brand-mark{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-weight:900;letter-spacing:-2px;background:linear-gradient(135deg,#3b82f6,#7c3aed);box-shadow:0 12px 30px rgba(75,85,255,.3)}.brand-mark.small{width:48px;height:48px;border-radius:15px;font-size:14px}.server-bubble{border:0;background:#151d2d;color:#d8e2f4;width:48px;height:48px;border-radius:16px;cursor:pointer;font-weight:800}.server-bubble.active{background:linear-gradient(135deg,#0ea5e9,#4f46e5);box-shadow:0 0 0 2px rgba(255,255,255,.08)}.channel-sidebar{background:#0b111c;border-right:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.server-title{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--line)}.channel-scroll{overflow:auto;flex:1;padding:18px 10px}.section-label{font-size:11px;color:#748198;font-weight:800;letter-spacing:.08em;margin:8px 8px}.voice-label{margin-top:28px}.channel-item,.voice-item{width:100%;height:38px;border:0;border-radius:8px;background:transparent;color:#aeb9ca;display:flex;gap:9px;align-items:center;text-align:left;padding:0 10px;cursor:pointer;margin:2px 0}.channel-item:hover,.voice-item:hover{background:#141d2d;color:white}.channel-item.active{background:linear-gradient(90deg,#213a86,#4338ca);color:white}.user-bar{min-height:64px;border-top:1px solid var(--line);display:flex;align-items:center;padding:8px;gap:8px;background:#090e17}.user-bar button,.user-bar a{background:transparent;color:#b8c3d4;border:0;text-decoration:none;cursor:pointer;padding:6px}.user-meta{min-width:0;flex:1}.user-meta b,.user-meta small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-meta small{font-size:11px;color:var(--green)}.avatar{width:36px;height:36px;min-width:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#284b7c,#673ab7);font-weight:800;position:relative}.member .avatar.online:after{content:'';position:absolute;width:9px;height:9px;border-radius:50%;background:var(--green);bottom:0;right:0;border:2px solid #0d1320}.member .avatar.offline{filter:grayscale(1);opacity:.55}.chat-panel{min-width:0;display:flex;flex-direction:column;background:linear-gradient(180deg,#0c121e,#0a101a)}.topbar{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 18px;gap:20px}.topbar h1{font-size:16px;margin:0}.topbar h1 span:first-child{color:#8390a5}.topbar small{font-size:11px;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:6px}.top-actions input{height:32px;background:#070b12;color:white;border:1px solid var(--line);border-radius:9px;padding:0 10px;width:180px}.lang{height:30px;min-width:36px;background:#121a29;color:#8f9aad;border:1px solid var(--line);border-radius:8px;cursor:pointer}.lang.active{color:white;border-color:#485cf5;background:#26378f}.messages{flex:1;overflow:auto;padding:22px 24px}.message{display:flex;gap:12px;padding:8px 0}.message-content{min-width:0}.message-head{display:flex;align-items:baseline;gap:8px}.message-head b{color:#51a8ff}.message-head span{font-size:11px;color:#6f7b8e}.message-body{margin-top:4px;line-height:1.45;color:#e9edf5;overflow-wrap:anywhere}.empty-state{color:#6f7b8e;text-align:center;padding:50px 20px}.composer{margin:0 18px 18px;min-height:48px;background:#151e2d;border:1px solid #243047;border-radius:12px;display:flex;align-items:center;padding:5px 8px}.composer input{flex:1;border:0;outline:0;background:transparent;color:white;padding:0 10px}.composer button{border:0;cursor:pointer}.composer .plus{width:34px;height:34px;border-radius:50%;background:#8995a7;color:#111827}.composer .send{width:38px;height:34px;background:transparent;color:#6f80ff;font-size:20px}.member-sidebar{background:#0b111c;border-left:1px solid var(--line);padding:18px 14px;overflow:auto}.member-sidebar header{font-size:11px;color:#748198;font-weight:800;margin-bottom:12px}.member{display:flex;align-items:center;gap:9px;padding:6px 2px}.member b,.member small{display:block}.member b{font-size:13px}.member small{font-size:10px;color:#778397;text-transform:capitalize}.auth-page{min-height:100%;display:grid;place-items:center;padding:20px}.auth-card{width:min(430px,100%);background:#0e1624;border:1px solid #25314a;border-radius:22px;padding:30px;box-shadow:0 25px 70px #0008}.auth-card .brand-mark{margin:0 auto 18px}.auth-card h1{text-align:center;margin:8px 0}.muted{color:var(--muted)}.auth-card>p{text-align:center}.auth-form{display:grid;gap:14px;margin-top:24px}.auth-form label{display:grid;gap:7px;font-size:13px;color:#aab5c7}.auth-form input{height:44px;border:1px solid #2b3951;border-radius:10px;background:#090e17;color:white;padding:0 12px;outline:none}.primary{height:44px;border:0;border-radius:10px;background:linear-gradient(90deg,#2563eb,#6d5dfc);color:white;font-weight:800;cursor:pointer}.alert,.success{padding:10px 12px;border-radius:9px;margin:12px 0;font-size:13px}.alert{background:#511a25;color:#ffc2cc}.success{background:#123d2a;color:#a9ffd1}.modal{position:fixed;inset:0;background:#000a;display:grid;place-items:center;padding:24px;z-index:10}.modal.hidden{display:none}.modal-card{width:min(850px,100%);background:#0d1522;border:1px solid #2b3951;border-radius:16px;padding:16px;box-shadow:0 30px 90px #000}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.modal-head button{background:transparent;color:white;border:0;font-size:24px;cursor:pointer}.modal video{width:100%;max-height:65vh;background:#05070c;border-radius:12px}.modal video.audio-only{height:140px}.modal #mediaInfo{margin-top:10px;font-size:13px}@media(max-width:1000px){.app-shell{grid-template-columns:68px 240px 1fr}.member-sidebar{display:none}}@media(max-width:720px){.app-body{overflow:auto}.app-shell{height:auto;min-height:100vh;grid-template-columns:1fr}.server-rail,.member-sidebar{display:none}.channel-sidebar{display:none}.chat-panel{min-height:100vh}.top-actions input{display:none}.messages{padding:16px}.composer{position:sticky;bottom:8px}}
/* ICE-NSK v0.3 */
.voice-item.connected{color:#fff;background:#101c2b}.voice-item.connected>span:first-child{filter:saturate(1.4)}.voice-count{margin-left:auto;min-width:14px;text-align:center;font-size:10px;color:#8390a5}.voice-users{padding:0 6px 5px 30px}.voice-user{min-height:30px;display:flex;align-items:center;gap:7px;color:#aeb9ca;font-size:12px;border-radius:7px;padding:2px 5px}.voice-user.me{color:#fff}.mini-avatar{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#334155;color:#fff;font-weight:800;font-size:10px}.live-badge{margin-left:auto;font-size:9px;padding:2px 5px;border-radius:4px;background:#ef3340;color:white}.voice-state-icon{margin-left:auto;font-size:11px}.voice-dock{border-top:1px solid #233148;padding:11px 8px 10px;background:#09121c}.voice-dock.hidden{display:none}.voice-dock-head{display:flex;align-items:center;justify-content:space-between}.voice-dock-head strong,.voice-dock-head small{display:block}.voice-dock-head strong{font-size:13px;color:#42f59b}.voice-dock-head small{font-size:10px;color:#7c8ca4;margin-top:2px}.signal{color:#42f59b;font-size:12px;letter-spacing:1px}.voice-controls{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:9px}.voice-controls button{min-width:0;height:48px;border:1px solid #233148;border-radius:9px;background:#111b2a;color:#e5ecf7;cursor:pointer;font-size:15px;padding:3px}.voice-controls button small{display:block;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.voice-controls button:hover,.voice-controls button.active-control{background:#1d2a3d;border-color:#415476}.voice-controls button.danger{background:#b83242;border-color:#c73c4d}.voice-status{font-size:9px;color:#71849e;line-height:1.35;margin-top:7px}.members-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.member-add{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;text-decoration:none;background:#172235;color:#dbe7ff;font-size:17px}.member-add:hover{background:#233451}.remote-audio-bin{display:none}.auth-form select{height:44px;border:1px solid #2b3951;border-radius:10px;background:#090e17;color:white;padding:0 12px;outline:none}.back-link{color:#8da8ff;text-decoration:none}.back-link:hover{text-decoration:underline}.voice-user.rtc-connected .mini-avatar{box-shadow:0 0 0 2px #45d483}.voice-user.rtc-connecting .mini-avatar{box-shadow:0 0 0 2px #f2c94c}
.voice-channel-wrap{margin:1px 0}

.voice-user.rtc-failed .mini-avatar{box-shadow:0 0 0 2px #ef5566}.voice-status.rtc-error{color:#ef8a98}

/* ICE-NSK v0.3.4 audio devices */
.voice-head-actions{display:flex;align-items:center;gap:7px}.voice-settings-btn{width:28px;height:28px;border:1px solid #263650;border-radius:8px;background:#111b2a;color:#cbd7ea;cursor:pointer}.voice-settings-btn:hover{background:#1b2a40;color:#fff}.device-card{width:min(560px,100%)}.device-grid{display:grid;gap:14px}.device-grid label{display:grid;gap:7px;color:#aeb9ca;font-size:13px}.device-grid select{width:100%;height:44px;border:1px solid #2b3951;border-radius:10px;background:#090e17;color:#fff;padding:0 11px;outline:none}.device-grid select:focus{border-color:#536bff}.device-grid select:disabled{opacity:.55}.device-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.device-actions button{min-height:40px;border:1px solid #2b3951;border-radius:9px;background:#111b2a;color:#e7eefb;padding:0 14px;cursor:pointer}.device-actions .primary.compact{background:linear-gradient(90deg,#2563eb,#6d5dfc);border:0}.device-info{min-height:20px;margin-top:12px;font-size:12px}.device-info.device-error{color:#ef8a98}@media(max-width:520px){.device-actions{display:grid;grid-template-columns:1fr}.device-actions button{width:100%}}

/* ICE-NSK v0.4 stream + audio controls */
.live-badge{margin-left:auto;font-size:9px;padding:3px 7px;border:0;border-radius:5px;background:#ef3340;color:white;cursor:pointer;font-weight:800;letter-spacing:.03em}.live-badge:hover{filter:brightness(1.12)}
.range-setting{padding-top:4px}.range-setting>span{display:flex;align-items:center;justify-content:space-between;gap:12px}.range-setting b{font-size:12px;color:#dfe8ff}.range-setting input[type=range]{width:100%;accent-color:#5865f2;cursor:pointer}.mic-meter-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;color:#aeb9ca;font-size:13px}.mic-meter-row b{font-size:11px;color:#cfe0ff;min-width:34px;text-align:right}.mic-meter{height:8px;border-radius:999px;background:#0a1019;border:1px solid #263650;overflow:hidden}.mic-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#34d399,#facc15,#ef4444);transition:width .06s linear}.stream-card{width:min(1100px,96vw)}.stream-stage{position:relative;min-height:280px;border-radius:12px;overflow:hidden;background:#02050a;display:grid;place-items:center}.stream-stage video{display:block;width:100%;max-height:72vh;background:#02050a}.stream-waiting{position:absolute;inset:0;display:grid;place-items:center;color:#8390a5;background:radial-gradient(circle at center,#111827cc,#05070cee);font-size:14px}.stream-waiting.hidden{display:none}.stream-card #streamInfo{margin-top:10px;font-size:12px}.voice-user .live-badge{flex:0 0 auto}.voice-user{cursor:default}
@media(max-width:720px){.stream-stage{min-height:180px}.stream-card{width:100%}.mic-meter-row{grid-template-columns:1fr auto}.mic-meter-row>span{grid-column:1/-1}.mic-meter{min-width:0}}


/* ICE-NSK v0.5 player controls + independent stream audio */
.stream-setup-card{width:min(560px,100%)}.stream-setup-grid{display:grid;gap:16px}.stream-setup-grid>label:not(.stream-audio-choice){display:grid;gap:7px;color:#aeb9ca;font-size:13px}.stream-setup-grid select{width:100%;height:44px;border:1px solid #2b3951;border-radius:10px;background:#090e17;color:#fff;padding:0 11px;outline:none}.stream-audio-choice{display:flex;align-items:flex-start;gap:12px;padding:13px;border:1px solid #2b3951;border-radius:11px;background:#0a111c;cursor:pointer}.stream-audio-choice input{width:18px;height:18px;margin-top:2px;accent-color:#5865f2}.stream-audio-choice span{display:grid;gap:4px}.stream-audio-choice b{font-size:13px}.stream-audio-choice small{color:#8390a5;line-height:1.4}.voice-user-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.peer-menu-btn{flex:0 0 auto;width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:#718096;cursor:pointer;font-size:17px;line-height:1}.peer-menu-btn:hover{background:#1c2a40;color:#fff}.voice-user.speaking .mini-avatar{box-shadow:0 0 0 2px #39e58c,0 0 14px #39e58c88}.voice-user.speaking .voice-user-name{color:#62f3a5}.peer-menu{position:fixed;z-index:30;width:260px;padding:12px;background:#0b1320;border:1px solid #2b3951;border-radius:12px;box-shadow:0 18px 55px #000a}.peer-menu.hidden{display:none}.peer-menu strong{display:block;margin-bottom:11px;color:#f1f5ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.peer-menu label{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;color:#aeb9ca;font-size:12px}.peer-menu label input{grid-column:1/-1;width:100%;accent-color:#5865f2}.peer-menu button{width:100%;height:36px;margin-top:11px;border:1px solid #3a465d;border-radius:8px;background:#151e2d;color:#e5edf9;cursor:pointer}.peer-menu button:hover{background:#202c40}@media(max-width:520px){.peer-menu{width:min(260px,calc(100vw - 16px))}}

/* ICE-NSK v0.6 server/community management */
.server-settings-link,.section-add,.channel-edit-link,.top-icon-link,.member-dm{color:#aeb9ca;text-decoration:none;display:grid;place-items:center}.server-settings-link:hover,.section-add:hover,.channel-edit-link:hover,.top-icon-link:hover,.member-dm:hover{color:#fff;background:#182338}.server-settings-link{width:30px;height:30px;border-radius:8px}.section-label-row{display:flex;align-items:center;justify-content:space-between}.section-add{width:22px;height:22px;border-radius:6px;font-size:18px}.channel-row-wrap{display:flex;align-items:center;gap:2px}.channel-row-wrap .channel-item{min-width:0;flex:1}.voice-row-line{display:flex;align-items:center;gap:2px}.voice-row-line .voice-item{min-width:0;flex:1}.channel-edit-link{width:26px;height:30px;border-radius:7px;font-size:17px;opacity:.65}.channel-row-wrap:hover .channel-edit-link,.voice-row-line:hover .channel-edit-link{opacity:1}.channel-category-label{font-size:10px;font-weight:800;letter-spacing:.08em;color:#64748b;text-transform:uppercase;margin:13px 9px 5px}.top-icon-link{width:32px;height:32px;border:1px solid var(--line);border-radius:9px}.member-main{min-width:0;flex:1}.member-dm{width:28px;height:28px;border-radius:7px;font-size:13px;opacity:.65}.member:hover .member-dm{opacity:1}.settings-shell{max-width:1180px}.settings-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:2px 0 20px;padding:7px;background:#0a111b;border:1px solid #202b3f;border-radius:12px}.settings-tabs a{padding:9px 13px;border-radius:8px;color:#93a0b4;text-decoration:none;font-size:13px;font-weight:700}.settings-tabs a:hover{background:#141e2e;color:#fff}.settings-tabs a.active{background:linear-gradient(90deg,#233f93,#4b3fc1);color:#fff}.settings-card{background:#0e1624;border:1px solid #25314a;border-radius:16px;padding:20px;min-width:0}.settings-card h2{margin:0 0 16px;font-size:18px}.settings-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:18px}.channels-layout{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr)}.settings-actions-bar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:16px}.primary-link,.secondary-btn,.mini-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:9px;font-weight:700}.primary-link{min-height:40px;padding:0 14px;color:#fff;background:linear-gradient(90deg,#2563eb,#6d5dfc)}.secondary-btn{min-height:40px;padding:0 14px;color:#c9d4e6;background:#111a28;border:1px solid #2b3951}.mini-link{min-height:32px;padding:0 10px;color:#b9c8ff;background:#17233b;border:1px solid #2e4164;font-size:12px}.block-link{width:100%;margin-top:12px}.manage-list{display:grid;gap:9px}.manage-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #243047;border-radius:11px;background:#0a111b}.manage-row>div:first-child{min-width:0}.manage-row b,.manage-row span,.manage-row small{display:block}.manage-row span{font-size:12px;color:#8794a8;margin-top:3px;overflow-wrap:anywhere}.manage-row small{font-size:10px;color:#68778e;margin-top:4px}.manage-row summary{cursor:pointer}.manage-row[open]{display:block}.manage-row[open] summary{display:flex;justify-content:space-between;margin-bottom:12px}.compact-row{padding:9px 11px}.row-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.row-actions form{margin:0}.row-actions button,.manage-row>form button,.role-form button{min-height:32px;border:1px solid #34445f;border-radius:8px;background:#151f30;color:#e8eef9;padding:0 9px;cursor:pointer}.danger-outline{border-color:#713444!important;background:#25131a!important;color:#ffabb6!important}.manage-form textarea,.manage-form input,.manage-form select,.inline-edit input,.role-form select,.search-form input{width:100%;border:1px solid #2b3951;border-radius:9px;background:#090e17;color:#fff;padding:10px 11px;outline:none}.manage-form textarea{resize:vertical;min-height:82px}.manage-form select,.role-form select{height:42px}.wide-form{max-width:720px}.check-line{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:9px!important}.check-line input{width:18px;height:18px;accent-color:#5865f2}.permissions-box{padding:13px;border:1px solid #2b3951;border-radius:11px;background:#09101a}.permissions-box h3{font-size:13px;margin:0 0 9px}.permission-row{display:grid;grid-template-columns:100px repeat(3,1fr);gap:8px;align-items:center;padding:8px 0;border-top:1px solid #1e2a3e}.permission-row:first-of-type{border-top:0}.permission-row label{display:flex;align-items:center;gap:6px!important;font-size:11px}.permission-row input{width:16px;height:16px}.delete-form{margin-top:14px}.inline-edit{display:grid;grid-template-columns:1fr 1fr auto;gap:8px}.inline-edit button{border:1px solid #34445f;border-radius:8px;background:#17233b;color:#fff;padding:0 10px}.invite-row{align-items:flex-start}.invite-row>div{flex:1}.member-role-row{flex-wrap:wrap}.role-form{display:flex;gap:6px;align-items:center}.role-form select{width:auto;min-width:125px}.subheading{margin:24px 0 12px}.friend-search{margin-bottom:18px}.search-form{display:flex;gap:8px}.search-form input{flex:1}.search-form button{height:42px;padding:0 18px}.center-text{text-align:center}.dm-page{min-height:100%;padding:22px;background:var(--bg)}.dm-shell{height:calc(100vh - 44px);max-width:980px;margin:auto;display:flex;flex-direction:column;background:#0d1522;border:1px solid #26354f;border-radius:18px;overflow:hidden}.dm-head{min-height:70px;display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #26354f}.dm-head>a:first-child{color:#9eacd0;text-decoration:none;margin-right:5px}.dm-head>div:nth-of-type(2){min-width:0;flex:1}.dm-head h1{font-size:16px;margin:0}.dm-head small{color:#7f8ba0}.dm-messages{min-height:0}.message.mine .message-head b{color:#8e7cff}.dm-shell .composer{flex:0 0 auto}.invite-card{width:min(470px,100%)}
@media(max-width:820px){.settings-columns,.channels-layout{grid-template-columns:1fr}.permission-row{grid-template-columns:1fr 1fr}.permission-row b{grid-column:1/-1}.inline-edit{grid-template-columns:1fr}.manage-row{align-items:flex-start;flex-direction:column}.row-actions{width:100%}.dm-page{padding:0}.dm-shell{height:100vh;border-radius:0;border:0}.top-icon-link{display:none}}
.status-select{max-width:105px;border:0;background:transparent;color:#7fd8a7;font-size:10px;padding:0;outline:none;cursor:pointer}.status-select option{background:#111827;color:#e5e7eb}
/* Shared management pages */
.manage-page{min-height:100%;background:radial-gradient(circle at 10% 0%,#15214a 0,transparent 32%),#070b14;color:var(--text);padding:28px}.manage-shell{width:min(1120px,100%);margin:0 auto}.manage-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.manage-topbar h1{margin:4px 0 8px;font-size:28px}.manage-topbar h1 span{color:#75849d;font-weight:500;font-size:.65em}.manage-topbar p{margin:0;color:#8d99ad}.manage-eyebrow{font-size:11px;font-weight:900;letter-spacing:.12em;color:#7c8cff}.manage-actions{display:flex;gap:9px;flex-wrap:wrap}.manage-alert{margin:0 0 16px}.manage-form{display:grid;gap:13px}.manage-form label{display:grid;gap:7px;color:#aeb9ca;font-size:12px}.small-action{min-height:40px;height:auto;padding:0 15px;justify-self:start}.account-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:800;background:#252f40;color:#b9c4d5}.account-badge.is-on{background:#123a2a;color:#87f0b7}.account-badge.is-off{background:#3a1f27;color:#ff9eaa}.user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.user-manage-card{background:#0e1624;border:1px solid #25314a;border-radius:16px;padding:18px}.user-card-head{display:flex;align-items:center;gap:11px}.user-card-title{min-width:0;flex:1}.user-card-title h2{margin:0 0 3px;font-size:16px}.login-id{font-size:11px;color:#8390a5}.login-id code{color:#bac7ff}.user-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.user-meta-grid>div{padding:9px;background:#09101a;border:1px solid #1f2b40;border-radius:9px}.user-meta-grid span,.user-meta-grid b{display:block}.user-meta-grid span{font-size:9px;text-transform:uppercase;color:#64748b}.user-meta-grid b{font-size:11px;margin-top:3px}.manage-details{border-top:1px solid #25314a;padding:11px 0}.manage-details summary{cursor:pointer;color:#b8c5d9;font-size:12px;font-weight:700}.manage-details .manage-form{margin-top:12px}.account-toggle{margin-top:10px}.account-toggle button{min-height:36px;border-radius:9px;padding:0 12px;cursor:pointer}.success-outline{border:1px solid #2f7651;background:#102a1e;color:#8ff0b9}.auth-form select{appearance:auto}.primary.compact{height:42px;padding:0 16px}.friends-shell{max-width:1120px}
@media(max-width:720px){.manage-page{padding:16px}.manage-topbar{flex-direction:column}.manage-topbar h1{font-size:23px}.manage-actions{width:100%}.manage-actions>a{flex:1}.user-grid{grid-template-columns:1fr}}

/* ICE-NSK v0.6.5 – responsive navigation + persistent management overlay */
.topbar-channel{display:flex;align-items:center;gap:10px;min-width:0}.topbar-channel>div{min-width:0}.mobile-nav-btn{display:none;width:36px;height:36px;flex:0 0 36px;border:1px solid var(--line);border-radius:9px;background:#111a28;color:#e7eefb;cursor:pointer;font-size:19px;line-height:1}.mobile-nav-btn:hover{background:#19263a}.mobile-nav-backdrop{display:none}.manage-overlay{position:fixed;inset:0;z-index:120;background:rgba(2,6,14,.78);backdrop-filter:blur(3px);padding:18px}.manage-overlay.hidden{display:none}.manage-overlay-card{width:min(1320px,100%);height:calc(100% - 0px);margin:auto;display:flex;flex-direction:column;background:#07101b;border:1px solid #2a3852;border-radius:16px;overflow:hidden;box-shadow:0 26px 80px #000b}.manage-overlay-head{height:52px;flex:0 0 52px;display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 18px;border-bottom:1px solid #26334a;background:#0b1422}.manage-overlay-head strong{font-size:14px}.manage-overlay-head button{width:34px;height:34px;border:0;border-radius:8px;background:#172235;color:#eef3ff;font-size:24px;cursor:pointer}.manage-overlay-head button:hover{background:#263550}.manage-overlay iframe{width:100%;height:100%;min-height:0;border:0;background:#070b14}.app-body.management-open{overflow:hidden}
@media(max-width:720px){.mobile-nav-btn{display:grid;place-items:center}.channel-sidebar{display:flex!important;position:fixed;z-index:90;inset:0 auto 0 0;width:min(300px,86vw);height:100%;transform:translateX(-105%);transition:transform .2s ease;box-shadow:20px 0 55px #000a}.channel-sidebar.mobile-open{transform:translateX(0)}.mobile-nav-backdrop{display:block;position:fixed;z-index:80;inset:0;background:#0009}.mobile-nav-backdrop.hidden{display:none}.topbar{padding:0 10px}.topbar-channel{max-width:calc(100% - 92px)}.topbar-channel h1,.topbar-channel small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.top-actions{margin-left:auto}.top-actions .top-icon-link{display:none}.top-actions .lang{min-width:34px}.manage-overlay{padding:0}.manage-overlay-card{height:100%;border-radius:0;border:0}.manage-overlay-head{height:48px;flex-basis:48px}}
.manage-language{display:flex;gap:5px;align-items:center}.manage-language .lang{height:40px}.manage-language .lang.active{color:#fff;border-color:#485cf5;background:#26378f}
@media(max-width:720px){.manage-language{order:-1}.manage-actions{align-items:center}.manage-actions .secondary-btn{min-width:96px}}

/* ICE-NSK v0.7 – Voice Lobby / Stream Stage */
.voice-lobby-stage{flex:1;min-height:0;overflow:auto;padding:18px 20px 22px;background:radial-gradient(circle at 78% 8%,rgba(83,61,212,.15),transparent 30%),linear-gradient(180deg,#0c121f 0%,#090f19 100%)}
.voice-lobby-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.voice-lobby-heading{min-width:0}.voice-lobby-eyebrow{display:block;color:#7787a3;font-size:10px;font-weight:900;letter-spacing:.11em;margin-bottom:3px}.voice-lobby-heading h2{margin:0;font-size:21px;display:flex;align-items:center;gap:7px}.voice-lobby-icon{font-size:17px}.voice-lobby-meta{display:block;margin-top:4px;color:#8997ad;font-size:11px}.voice-lobby-actions{display:flex;gap:8px}.voice-lobby-action{min-height:36px;border:1px solid #2a3852;border-radius:9px;background:#121b2b;color:#dce6f6;padding:0 13px;cursor:pointer;font-weight:700;font-size:12px}.voice-lobby-action:hover{background:#1a2940;border-color:#405677}.voice-lobby-action.compact{min-height:32px;font-size:11px}
.voice-lobby-participants{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-inline:contain;padding:2px 2px 12px;scrollbar-width:thin}.voice-lobby-participant{position:relative;flex:0 0 150px;min-width:150px;border:1px solid #26334a;border-radius:13px;background:#101827;overflow:hidden;transition:border-color .15s,box-shadow .15s,transform .15s}.voice-lobby-participant[role="button"]{cursor:pointer}.voice-lobby-participant[role="button"]:hover{border-color:#4b5f83;transform:translateY(-1px)}.voice-lobby-participant-media{height:82px;position:relative;background:#090e17;display:grid;place-items:center;overflow:hidden}.voice-lobby-participant-media video,.voice-lobby-participant-media img{width:100%;height:100%;object-fit:cover}.voice-lobby-avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:17px;color:#fff;background:linear-gradient(135deg,#284b7c,#673ab7);box-shadow:0 0 0 4px rgba(255,255,255,.035)}.voice-lobby-participant-info{padding:8px 9px 9px;min-height:50px}.voice-lobby-participant-info b,.voice-lobby-participant-info small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-lobby-participant-info b{font-size:11px}.voice-lobby-participant-info b em{font-style:normal;font-size:8px;color:#8b9cff;margin-left:3px}.voice-lobby-participant-info small{font-size:9px;color:#78869c;margin-top:3px}.voice-lobby-live{position:absolute;top:6px;left:6px;z-index:2;padding:2px 6px;border-radius:5px;background:#ef3340;color:#fff;font-size:8px;font-weight:900;letter-spacing:.04em;box-shadow:0 3px 10px #0008}.voice-lobby-participant.rtc-connected{border-color:#2f4b3f}.voice-lobby-participant.speaking{border-color:#35dc7d;box-shadow:0 0 0 2px rgba(53,220,125,.16),0 0 24px rgba(53,220,125,.12)}.voice-lobby-participant.speaking .voice-lobby-avatar{box-shadow:0 0 0 3px #35dc7d,0 0 20px rgba(53,220,125,.25)}
.voice-lobby-stream-area{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:12px;min-height:0}.voice-lobby-main-card,.voice-lobby-side-streams{border:1px solid #26334a;border-radius:14px;background:#0d1522;min-width:0}.voice-lobby-main-card{padding:10px}.voice-lobby-stream-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 2px 9px}.voice-lobby-stream-head>div{min-width:0}.voice-lobby-stream-head small,.voice-lobby-stream-head strong{display:block}.voice-lobby-stream-head small{font-size:9px;color:#8390a5;font-weight:900;letter-spacing:.08em}.voice-lobby-stream-head strong{font-size:13px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-lobby-main-video-wrap{position:relative;aspect-ratio:16/9;border-radius:10px;background:#03060a;overflow:hidden;border:1px solid #1b273a}.voice-lobby-main-video-wrap video{width:100%;height:100%;object-fit:contain;background:#03060a}.voice-lobby-main-waiting{position:absolute;inset:0;display:grid;place-items:center;color:#74839b;font-size:12px;background:radial-gradient(circle at center,#101a2b,#05080e)}.voice-lobby-main-waiting.hidden{display:none}.voice-lobby-main-meta{min-height:20px;padding:8px 2px 0;color:#75859d;font-size:10px}
.voice-lobby-side-streams{padding:10px;display:flex;flex-direction:column;min-height:0}.voice-lobby-side-title{display:flex;align-items:center;justify-content:space-between;color:#8090a9;font-size:9px;font-weight:900;letter-spacing:.08em;padding:2px 2px 8px}.voice-lobby-side-title b{display:grid;place-items:center;min-width:21px;height:20px;border-radius:999px;background:#1b2940;color:#cbd7e9}.voice-lobby-stream-strip{display:grid;gap:9px;overflow:auto;min-height:0}.voice-lobby-stream-card{width:100%;padding:0;border:1px solid #26344c;border-radius:11px;background:#101827;color:#e9eff9;overflow:hidden;text-align:left;cursor:pointer}.voice-lobby-stream-card:hover,.voice-lobby-stream-card.selected{border-color:#6659f5;box-shadow:0 0 0 1px rgba(102,89,245,.24)}.voice-lobby-stream-thumb{position:relative;aspect-ratio:16/9;background:#060a10}.voice-lobby-stream-thumb video{width:100%;height:100%;object-fit:cover}.voice-lobby-stream-card>span{display:block;padding:7px 8px}.voice-lobby-stream-card b,.voice-lobby-stream-card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-lobby-stream-card b{font-size:10px}.voice-lobby-stream-card small{font-size:8px;color:#738198;margin-top:2px}.voice-lobby-empty-streams{min-height:240px;border:1px dashed #29364d;border-radius:14px;background:linear-gradient(180deg,rgba(17,25,40,.72),rgba(8,13,22,.72));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:#8794aa}.voice-lobby-empty-streams.hidden{display:none}.voice-lobby-empty-icon{font-size:36px;opacity:.65;margin-bottom:10px}.voice-lobby-empty-streams strong{font-size:14px;color:#c6d1e3}.voice-lobby-empty-streams small{max-width:420px;margin-top:5px;font-size:10px;line-height:1.45}.voice-lobby-empty-users{width:100%;padding:24px;text-align:center;color:#718198;font-size:11px}
@media(max-width:1250px){.voice-lobby-stream-area{grid-template-columns:1fr}.voice-lobby-side-streams{display:block}.voice-lobby-stream-strip{display:flex;overflow-x:auto}.voice-lobby-stream-card{flex:0 0 220px}}
@media(max-width:720px){.voice-lobby-stage{padding:12px}.voice-lobby-header{align-items:flex-start}.voice-lobby-heading h2{font-size:18px}.voice-lobby-action{padding:0 10px}.voice-lobby-participant{flex-basis:132px;min-width:132px}.voice-lobby-participant-media{height:74px}.voice-lobby-stream-head{align-items:flex-start}.voice-lobby-stream-head .voice-lobby-action{display:none}.voice-lobby-main-card{padding:7px}.voice-lobby-stream-card{flex-basis:180px}}

/* v0.7.1: reliable view switching */
.hidden{display:none!important}

/* ICE-NSK v0.7.2 – on-demand stream viewing */
.voice-lobby-participant-info{display:flex;flex-direction:column;gap:4px}
.voice-lobby-watch-btn{width:100%;min-height:30px;border:1px solid #34445f;border-radius:8px;background:#172236;color:#dfe8f7;font-size:10px;font-weight:800;cursor:pointer;padding:0 9px;margin-top:4px}
.voice-lobby-watch-btn:hover{background:#22324e;border-color:#556d96}.voice-lobby-watch-btn.is-watching{background:#382f87;border-color:#7467ff;color:#fff}
.voice-lobby-stream-card{display:grid;grid-template-columns:74px minmax(0,1fr);grid-template-rows:auto auto;gap:0;align-items:center;padding:7px;text-align:left;cursor:default}
.voice-lobby-stream-card>span{padding:5px 8px}.voice-lobby-stream-card .voice-lobby-watch-btn{grid-column:1/-1;margin-top:6px}
.voice-lobby-stream-static{height:52px;border-radius:8px;background:linear-gradient(145deg,#0a101b,#17233a);display:grid;place-items:center;position:relative;overflow:hidden}
.voice-lobby-stream-icon{font-size:22px;opacity:.8}.voice-lobby-stream-static .voice-lobby-live{top:5px;left:5px}
.voice-lobby-stream-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.voice-lobby-main-waiting{padding:24px;text-align:center}
@media(max-width:720px){.voice-lobby-stream-actions{width:100%;justify-content:stretch}.voice-lobby-stream-actions .voice-lobby-action{flex:1}.voice-lobby-stream-card{flex-basis:210px}}

/* ICE-NSK v0.7.2 – system updater */
.system-card{max-width:920px}.system-hints{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.system-hints span{border:1px solid #2b3b55;background:#101a2a;border-radius:999px;padding:7px 10px;color:#9fb0c9;font-size:11px}
.updater-shell{max-width:1180px}.update-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.update-status-card{display:flex;flex-direction:column;gap:7px}.update-status-card>span{color:#8291aa;font-size:11px;font-weight:800}.update-status-card>strong{font-size:19px}.ok-text{color:#4bf19a}.bad-text{color:#ff6674}.update-install-card{margin-bottom:14px}.update-upload-form{display:grid;gap:13px}.update-drop{position:relative;min-height:132px;border:1px dashed #405576;border-radius:13px;background:#0b1422;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px;cursor:pointer}.update-drop:hover{border-color:#6d65ff;background:#111b31}.update-drop>span{font-size:28px}.update-drop>b{margin-top:5px}.update-drop>small{color:#75849c;margin-top:3px}.update-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.update-warning{border-left:3px solid #715ff7;background:#13182c;color:#aebbd0;padding:10px 12px;border-radius:7px;font-size:11px;line-height:1.45}.update-checks{display:grid;gap:7px}.update-checks>div{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;border-bottom:1px solid #213049;padding:8px 0}.update-checks>div>span{color:#4bf19a;font-weight:900}.update-checks small{color:#77869d}.update-backup-row small{display:block;color:#738198;margin-top:4px}.update-backup-list .manage-row{align-items:center}
@media(max-width:720px){.update-status-grid{grid-template-columns:1fr}.update-checks>div{grid-template-columns:22px 1fr}.update-checks small{grid-column:2}.update-backup-row{align-items:flex-start}.system-hints span{width:100%}}


/* ICE-NSK v0.7.6 – compact voice dock, viewport fit & clear stream stop */
html,body{min-height:0}
.app-shell{height:100vh;height:100dvh;min-height:0;overflow:hidden}
.server-rail,.channel-sidebar,.chat-panel,.member-sidebar{min-height:0;height:100%}
.channel-sidebar{overflow:hidden}
.channel-scroll{min-height:0;flex:1 1 auto}
.voice-dock{flex:0 0 auto;padding:8px 8px 7px}
.voice-dock-head{min-height:30px}.voice-dock-head small{margin-top:1px}
.voice-controls{margin-top:6px}.voice-controls button{height:42px}.voice-controls button small{font-size:7px;margin-top:2px}
.voice-status{margin-top:5px;max-height:25px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.user-bar{flex:0 0 58px;min-height:58px;padding-top:6px;padding-bottom:6px}
.voice-controls button.stream-stop-control,.voice-lobby-watch-btn.is-stop-share,.voice-lobby-stop-share{background:#8f2431!important;border-color:#e24b59!important;color:#fff!important}
.voice-controls button.stream-stop-control:hover,.voice-lobby-watch-btn.is-stop-share:hover,.voice-lobby-stop-share:hover{background:#aa2d3c!important;border-color:#ff6470!important}
.voice-lobby-stop-share{font-weight:900}
.voice-lobby-stage{padding:14px 16px 14px}
.voice-lobby-main-video-wrap{aspect-ratio:auto;height:220px;min-height:180px;transition:height .18s ease}
.voice-lobby-stream-area.is-watching .voice-lobby-main-video-wrap{height:clamp(300px,52dvh,610px)}
.voice-lobby-stream-area:not(.is-watching) .voice-lobby-main-card{align-self:start}
.voice-lobby-stream-area:not(.is-watching) .voice-lobby-main-meta{display:none}
.brand-mark-ice{letter-spacing:-.5px;font-size:13px}.auth-card .brand-mark-ice{font-size:17px;letter-spacing:0}
@media(max-height:760px) and (min-width:721px){.voice-dock{padding-top:6px;padding-bottom:5px}.voice-controls button{height:38px}.voice-status{max-height:14px;-webkit-line-clamp:1}.user-bar{flex-basis:54px;min-height:54px}.voice-lobby-stage{padding-top:10px}.voice-lobby-stream-area.is-watching .voice-lobby-main-video-wrap{height:clamp(260px,48dvh,500px)}}
@media(max-width:720px){.app-shell{height:auto;min-height:100dvh;overflow:visible}.channel-sidebar{height:100dvh}.voice-lobby-main-video-wrap,.voice-lobby-stream-area.is-watching .voice-lobby-main-video-wrap{height:auto;aspect-ratio:16/9;min-height:0}}


/* ICE-NSK v0.7.9 – branding, responsive layout, scrollbars & cleaner member controls */
*{scrollbar-width:thin;scrollbar-color:#34445f #0a1019}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:#0a1019}
*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#34445f,#29364d);border:2px solid #0a1019;border-radius:999px}
*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#526889,#3b4c67)}
.brand-mark-image{overflow:hidden;padding:0;background:#070b12;box-shadow:0 0 0 1px #25314a,0 10px 24px #0007}
.brand-mark-image img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}
.auth-brand-logo{display:block;width:min(270px,82%);height:auto;margin:0 auto 14px;border-radius:18px;box-shadow:0 18px 50px #0009}
.members-head{min-height:38px;margin:-4px -2px 12px!important;padding:4px 2px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.members-title{display:flex;align-items:center;gap:7px;min-width:0}.members-title>b{min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:#16243a;color:#c8d6ea;font-size:10px}
.member-admin-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.member-add{width:31px;height:31px;border:1px solid #2b3b55;border-radius:9px;background:#111b2a;color:#dbe7ff;font-size:15px;box-shadow:0 3px 10px #0003}
.member-add:hover{background:#1c2a40;border-color:#4f668e;color:#fff}
.member-create{font-size:19px}.member-manage{font-size:14px}
.members-toggle-btn{display:none}
.member-sidebar-backdrop{display:none}
.voice-controls button#audioQuickBtn{font-size:14px}
.voice-controls button#audioQuickBtn small{letter-spacing:-.02em}

@media(max-width:1380px) and (min-width:1081px){
  .app-shell{grid-template-columns:68px 240px minmax(0,1fr) 210px}
  .server-rail{padding-left:8px;padding-right:8px}
  .member-sidebar{padding-left:10px;padding-right:10px}
}
@media(max-width:1080px) and (min-width:721px){
  .app-shell{grid-template-columns:64px 230px minmax(0,1fr)}
  .server-rail{padding-left:8px;padding-right:8px}
  .member-sidebar{display:block;position:fixed;z-index:48;top:0;right:0;width:270px;height:100dvh;transform:translateX(105%);transition:transform .18s ease;box-shadow:-22px 0 55px #0009}
  .member-sidebar.member-open{transform:translateX(0)}
  .member-sidebar-backdrop{display:block;position:fixed;inset:0;z-index:47;background:#0008}
  .member-sidebar-backdrop.hidden{display:none!important}
  .members-toggle-btn{display:grid}
  .top-actions{min-width:0}.top-actions input{width:140px}
}
@media(max-width:820px) and (min-width:721px){
  .app-shell{grid-template-columns:58px 214px minmax(0,1fr)}
  .server-rail{padding-left:5px;padding-right:5px}
  .server-bubble,.brand-mark.small{width:44px;height:44px}
  .channel-scroll{padding-left:7px;padding-right:7px}
  .topbar{padding-left:12px;padding-right:12px}.top-actions input{display:none}
}
@media(max-width:720px){
  .members-toggle-btn{display:grid}
  .member-sidebar{display:block;position:fixed;z-index:58;top:0;right:0;width:min(300px,88vw);height:100dvh;transform:translateX(105%);transition:transform .18s ease;box-shadow:-22px 0 55px #0009}
  .member-sidebar.member-open{transform:translateX(0)}
  .member-sidebar-backdrop{display:block;position:fixed;inset:0;z-index:57;background:#0008}
  .member-sidebar-backdrop.hidden{display:none!important}
}

/* ICE-NSK v0.7.10 – unified neon-dark design refresh */
:root{
  --ice-cyan:#27d8ff;
  --ice-blue:#476cff;
  --ice-violet:#7760ff;
  --ice-magenta:#db45ff;
  --ice-glow:rgba(83,99,255,.22);
  --ice-panel:#0a111c;
  --ice-panel-soft:#0d1625;
}

/* Single clean navigation column: old MG/server-add rail is intentionally removed. */
.app-shell{grid-template-columns:292px minmax(420px,1fr) 238px;background:linear-gradient(180deg,#060a12 0%,#080d17 100%)}
.channel-sidebar{background:linear-gradient(180deg,#080e18 0%,#0a111c 52%,#080e17 100%);border-right:1px solid #1d2940;box-shadow:8px 0 34px rgba(0,0,0,.18)}

/* Large uploaded ICE-NSK logo replaces the former text/server switcher. */
.ice-brand-panel{position:relative;flex:0 0 250px;min-height:250px;display:flex;align-items:center;justify-content:center;padding:12px 18px 8px;border-bottom:1px solid #1d2940;background:radial-gradient(circle at 50% 38%,rgba(45,97,255,.14),transparent 45%),linear-gradient(180deg,#050a13,#090f1a)}
.ice-brand-home{display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;border-radius:18px;text-decoration:none;outline:none}
.ice-brand-home img{display:block;width:min(210px,92%);height:auto;max-height:230px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(27,197,255,.22)) drop-shadow(0 0 22px rgba(202,61,255,.13));transition:transform .18s ease,filter .18s ease}
.ice-brand-home:hover img{transform:scale(1.018);filter:drop-shadow(0 0 20px rgba(27,197,255,.30)) drop-shadow(0 0 26px rgba(202,61,255,.18))}
.ice-brand-home:focus-visible{box-shadow:0 0 0 2px var(--ice-cyan)}
.ice-brand-settings{position:absolute;right:10px;top:10px;width:34px!important;height:34px!important;border:1px solid #2a3853!important;background:rgba(8,15,27,.88)!important;backdrop-filter:blur(8px);box-shadow:0 6px 18px #0005}
.ice-brand-settings:hover{border-color:#536cff!important;box-shadow:0 0 0 1px rgba(83,108,255,.20),0 8px 22px #0006}

.channel-scroll{padding:14px 10px 16px}
.section-label{color:#7788a4}.section-label-row{padding:0 2px}
.channel-item,.voice-item{height:40px;border-radius:10px;color:#aebbd0;transition:background .14s,border-color .14s,color .14s,box-shadow .14s}
.channel-item:hover,.voice-item:hover{background:#121d2d;color:#eef5ff}
.channel-item.active{background:linear-gradient(90deg,rgba(42,91,215,.74),rgba(89,61,210,.82));box-shadow:inset 0 0 0 1px rgba(110,132,255,.32),0 7px 20px rgba(32,47,138,.13)}
.voice-item.connected{background:linear-gradient(90deg,rgba(16,44,61,.84),rgba(22,48,72,.64));box-shadow:inset 3px 0 0 #36d99b}
.channel-edit-link{border-radius:9px}.channel-edit-link:hover{background:#17243a}

/* Shared top/content surfaces follow the same visual language. */
.chat-panel{background:radial-gradient(circle at 50% -10%,rgba(62,66,168,.09),transparent 36%),linear-gradient(180deg,#0a101a,#080e17)}
.topbar{background:rgba(8,14,24,.88);border-bottom-color:#1d2940;backdrop-filter:blur(10px)}
.top-icon-link,.lang,.top-actions input{border-color:#25334d;background:#0a121e}
.top-icon-link:hover,.lang:hover{border-color:#435879;background:#121d2d}
.lang.active{border-color:#566cff;background:linear-gradient(180deg,#263b9a,#293783);box-shadow:0 0 18px rgba(88,94,255,.13)}
.composer{background:#101a29;border-color:#273650;box-shadow:0 8px 28px #0002}
.member-sidebar{background:linear-gradient(180deg,#080f19,#0a111c);border-left-color:#1d2940}
.member{border-radius:10px;padding:7px 5px}.member:hover{background:#101a29}
.members-head{border-bottom:1px solid #1d2940;padding-bottom:10px!important;margin-bottom:8px!important}
.member-add{width:34px;height:34px;border-radius:10px;background:#101a2a;border-color:#2a3b59}
.member-add:hover{background:#18263c;border-color:#556e9d;box-shadow:0 0 18px rgba(71,108,255,.12)}

/* Voice dock: compact, visually anchored and consistent. */
.voice-dock{background:linear-gradient(180deg,#09131f,#07101a);border-top-color:#26364f}
.voice-dock-head{padding:0 2px}.voice-head-actions{gap:8px}
.voice-settings-btn{border-color:#2c3d5b;background:#101b2b}
.voice-controls{gap:6px}.voice-controls button{border-radius:10px;border-color:#293a57;background:#101a29;transition:background .14s,border-color .14s,transform .12s}
.voice-controls button:hover{background:#18263a;border-color:#465f87;transform:translateY(-1px)}
.voice-controls button.danger{background:linear-gradient(180deg,#c33447,#9e2537);border-color:#d84a5b}

/* Voice lobby cards get restrained blue/violet neon accents instead of flat gray. */
.voice-lobby-stage{background:radial-gradient(circle at 50% 0%,rgba(70,73,190,.08),transparent 35%)}
.voice-lobby-participant,.voice-lobby-main-card,.voice-lobby-side-streams{background:linear-gradient(180deg,#0e1725,#0b1320);border-color:#25354e}
.voice-lobby-participant:hover{border-color:#465f8e!important;box-shadow:0 10px 26px #0004}
.voice-lobby-participant.speaking{border-color:#35dc7d;box-shadow:0 0 0 2px rgba(53,220,125,.15),0 0 24px rgba(53,220,125,.10)}
.voice-lobby-stream-card:hover,.voice-lobby-stream-card.selected{border-color:#6b63ff;box-shadow:0 0 0 1px rgba(102,89,245,.25),0 9px 24px #0004}
.voice-lobby-action{border-color:#30415f;background:#111c2d}.voice-lobby-action:hover{border-color:#536c98;background:#19283e}

/* Scrollbars – slimmer and integrated into the neon-dark UI. */
*{scrollbar-width:thin;scrollbar-color:#334766 #080e17}
*::-webkit-scrollbar{width:8px;height:8px}
*::-webkit-scrollbar-track{background:#080e17}
*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#3b5276,#293a57);border:1px solid #080e17;border-radius:999px}
*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#55719e,#3b5276)}

/* Login / invite / account creation use the same uploaded mark. */
.auth-card{background:linear-gradient(180deg,#0d1625,#0a111c);border-color:#263653;box-shadow:0 28px 80px #0009}
.auth-brand-logo{width:min(280px,88%);max-height:300px;object-fit:contain;border-radius:16px;background:#050912;box-shadow:0 0 0 1px #1d2940,0 20px 48px #0008}

/* Responsive layout: no broken/vanishing design when the window becomes narrower. */
@media(max-width:1380px) and (min-width:1081px){
  .app-shell{grid-template-columns:255px minmax(0,1fr) 215px}
  .ice-brand-panel{flex-basis:220px;min-height:220px}.ice-brand-home img{width:min(188px,90%);max-height:205px}
  .member-sidebar{padding-left:10px;padding-right:10px}
}
@media(max-width:1080px) and (min-width:721px){
  .app-shell{grid-template-columns:245px minmax(0,1fr)}
  .ice-brand-panel{flex-basis:205px;min-height:205px}.ice-brand-home img{width:min(174px,90%);max-height:190px}
  .member-sidebar{display:block;position:fixed;z-index:48;top:0;right:0;width:280px;height:100dvh;transform:translateX(105%);transition:transform .18s ease;box-shadow:-22px 0 55px #0009}
  .member-sidebar.member-open{transform:translateX(0)}
  .member-sidebar-backdrop{display:block;position:fixed;inset:0;z-index:47;background:#0008}
  .member-sidebar-backdrop.hidden{display:none!important}
  .members-toggle-btn{display:grid}
  .top-actions input{width:140px}
}
@media(max-width:820px) and (min-width:721px){
  .app-shell{grid-template-columns:222px minmax(0,1fr)}
  .ice-brand-panel{flex-basis:178px;min-height:178px;padding-left:12px;padding-right:12px}.ice-brand-home img{width:min(150px,90%);max-height:166px}
  .channel-scroll{padding-left:7px;padding-right:7px}.topbar{padding-left:12px;padding-right:12px}.top-actions input{display:none}
}
@media(max-height:760px) and (min-width:721px){
  .ice-brand-panel{flex-basis:160px;min-height:160px}.ice-brand-home img{width:min(140px,86%);max-height:148px}
}
@media(max-width:720px){
  .app-shell{grid-template-columns:1fr}
  .channel-sidebar{width:min(310px,88vw)}
  .ice-brand-panel{flex:0 0 170px;min-height:170px}.ice-brand-home img{width:min(150px,86%);max-height:158px}
}

/* =========================================================
   ICE-NSK v0.8.0 – Full Neon Ice Design Overhaul
   Design-only layer. Keeps existing voice/stream/application logic intact.
   ========================================================= */
:root{
  --bg:#030711;
  --panel:#08101d;
  --panel2:#0b1526;
  --panel3:#101c31;
  --line:rgba(87,119,177,.24);
  --text:#f3f7ff;
  --muted:#8392ae;
  --blue:#25c9ff;
  --violet:#7357ff;
  --green:#36e99a;
  --danger:#ff4967;
  --radius:20px;
  --ice-cyan:#21d7ff;
  --ice-blue:#4280ff;
  --ice-violet:#7857ff;
  --ice-magenta:#e13cff;
  --ice-surface:rgba(8,16,30,.88);
  --ice-surface-2:rgba(12,23,42,.92);
  --ice-border:rgba(86,129,202,.26);
  --ice-border-hot:rgba(66,205,255,.55);
  --ice-shadow:0 18px 48px rgba(0,0,0,.38);
  --ice-glow-blue:0 0 0 1px rgba(42,211,255,.22),0 0 24px rgba(42,156,255,.13);
  --ice-glow-violet:0 0 0 1px rgba(148,89,255,.24),0 0 26px rgba(190,52,255,.12);
}

html,body{
  background:
    radial-gradient(circle at 12% 8%,rgba(24,115,255,.16),transparent 28%),
    radial-gradient(circle at 87% 14%,rgba(194,44,255,.12),transparent 27%),
    radial-gradient(circle at 58% 92%,rgba(20,119,255,.09),transparent 34%),
    linear-gradient(145deg,#02050b 0%,#050915 44%,#040814 100%);
  color:var(--text);
}
body{background-attachment:fixed}
button,a,input,select,textarea{transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease,transform .14s ease,opacity .16s ease}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(33,215,255,.28),0 0 0 4px rgba(120,87,255,.13)}

/* Main application becomes three floating glass panels. */
.app-body{padding:12px;overflow:hidden}
.app-shell{
  height:calc(100dvh - 24px);
  min-height:0;
  gap:10px;
  background:transparent;
  overflow:visible;
}
.channel-sidebar,.chat-panel,.member-sidebar{
  border:1px solid var(--ice-border);
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--ice-shadow),inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter:blur(18px) saturate(115%);
}
.channel-sidebar{background:linear-gradient(180deg,rgba(5,11,22,.97),rgba(7,14,27,.95));border-right:1px solid var(--ice-border)}
.chat-panel{background:radial-gradient(circle at 54% -12%,rgba(74,76,198,.11),transparent 34%),linear-gradient(180deg,rgba(7,14,26,.96),rgba(6,12,23,.96))}
.member-sidebar{background:linear-gradient(180deg,rgba(7,14,27,.96),rgba(7,13,25,.95));border-left:1px solid var(--ice-border);padding:16px 13px}

/* Hero brand area based on the user's ICE-NSK logo. */
.ice-brand-panel{
  flex:0 0 232px;
  min-height:232px;
  margin:10px 10px 0;
  padding:12px;
  border:1px solid rgba(77,113,179,.24);
  border-radius:22px;
  background:
    radial-gradient(circle at 50% 38%,rgba(24,194,255,.16),transparent 34%),
    radial-gradient(circle at 67% 42%,rgba(220,54,255,.11),transparent 28%),
    linear-gradient(180deg,rgba(5,11,24,.98),rgba(6,12,25,.96));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 12px 34px rgba(0,0,0,.3);
  border-bottom:1px solid rgba(77,113,179,.24);
}
.ice-brand-home{border-radius:18px}
.ice-brand-home img{
  width:min(208px,94%);
  max-height:208px;
  filter:drop-shadow(0 0 20px rgba(25,206,255,.31)) drop-shadow(0 0 26px rgba(214,58,255,.18));
}
.ice-brand-home:hover img{transform:scale(1.025);filter:drop-shadow(0 0 25px rgba(25,206,255,.4)) drop-shadow(0 0 30px rgba(214,58,255,.25))}
.ice-brand-settings{
  top:12px;right:12px;
  width:36px!important;height:36px!important;border-radius:12px!important;
  background:rgba(8,17,33,.88)!important;
  border:1px solid rgba(89,126,191,.32)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.35);
}
.ice-brand-settings:hover{border-color:rgba(36,211,255,.58)!important;box-shadow:var(--ice-glow-blue)}

/* Channel navigation */
.channel-scroll{padding:15px 10px 17px}
.section-label{color:#7185a7;font-size:10px;letter-spacing:.13em;margin:10px 9px 8px}
.section-label-row{min-height:30px}
.section-add,.channel-edit-link{
  border:1px solid transparent;
  background:transparent;
}
.section-add:hover,.channel-edit-link:hover{background:#101d31;border-color:rgba(78,122,191,.28);box-shadow:0 0 16px rgba(52,140,255,.08)}
.channel-category-label{color:#62789c;margin-top:15px}
.channel-item,.voice-item{
  min-height:42px;height:auto;
  padding:8px 10px;
  border:1px solid transparent;
  border-radius:12px;
  color:#a9b7cf;
}
.channel-item:hover,.voice-item:hover{background:rgba(18,32,54,.78);border-color:rgba(70,109,169,.24);transform:translateX(2px)}
.channel-item.active{
  background:linear-gradient(105deg,rgba(20,114,223,.74),rgba(100,52,219,.78) 72%,rgba(184,44,219,.55));
  border-color:rgba(79,197,255,.35);
  box-shadow:0 8px 22px rgba(37,59,164,.22),inset 0 1px 0 rgba(255,255,255,.05);
}
.voice-item.connected{
  background:linear-gradient(100deg,rgba(13,61,78,.74),rgba(21,45,75,.73));
  border-color:rgba(51,221,169,.25);
  box-shadow:inset 3px 0 0 #36e99a,0 9px 22px rgba(0,0,0,.16);
}
.voice-user{border-radius:10px;padding:4px 7px;transition:background .14s ease}
.voice-user:hover{background:rgba(15,29,48,.72)}
.mini-avatar,.avatar{background:linear-gradient(145deg,#205ea9,#6d3ec8);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.live-badge,.voice-lobby-live{background:linear-gradient(90deg,#ff3958,#ff3650);box-shadow:0 0 18px rgba(255,57,88,.22)}

/* Top bar */
.topbar{
  height:66px;
  margin:0;
  padding:0 16px;
  border-bottom:1px solid rgba(75,112,174,.22);
  background:linear-gradient(180deg,rgba(8,17,32,.9),rgba(7,14,27,.84));
  backdrop-filter:blur(18px);
}
.topbar h1{font-size:16px;letter-spacing:-.01em}
.top-actions{gap:8px}
.top-actions input,.lang,.top-icon-link{
  border:1px solid rgba(76,113,173,.28);
  background:rgba(8,17,31,.9);
  border-radius:11px;
}
.top-actions input{height:35px;padding:0 12px;box-shadow:inset 0 1px 5px rgba(0,0,0,.2)}
.top-actions input:focus{border-color:rgba(41,211,255,.5);box-shadow:0 0 0 2px rgba(41,211,255,.08)}
.top-icon-link:hover,.lang:hover{background:#101d31;border-color:rgba(91,133,202,.46);transform:translateY(-1px)}
.lang.active{background:linear-gradient(135deg,#204eaf,#603ac5);border-color:rgba(70,213,255,.48);box-shadow:var(--ice-glow-blue)}

/* Chat */
.messages{padding:24px 26px 18px}
.message{padding:9px 7px;border-radius:13px}
.message:hover{background:rgba(14,26,45,.4)}
.message-head b{color:#52cfff;text-shadow:0 0 16px rgba(64,205,255,.13)}
.composer{
  margin:0 18px 18px;
  min-height:52px;
  background:rgba(13,25,43,.9);
  border:1px solid rgba(73,111,174,.29);
  border-radius:16px;
  box-shadow:0 12px 34px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.02);
}
.composer:focus-within{border-color:rgba(37,211,255,.42);box-shadow:0 0 0 1px rgba(37,211,255,.1),0 12px 34px rgba(0,0,0,.24)}
.composer .plus{background:linear-gradient(145deg,#273b5b,#16233a);color:#dce9ff}
.composer .send{color:#45cfff;text-shadow:0 0 16px rgba(64,202,255,.22)}

/* Members */
.members-head{padding:0 1px 12px!important;border-bottom:1px solid rgba(76,113,173,.2)!important;margin-bottom:9px!important}
.members-title{color:#7e92b2;letter-spacing:.09em}
.member-add{
  width:36px;height:36px;
  border-radius:12px;
  border:1px solid rgba(84,123,186,.28);
  background:linear-gradient(180deg,#101d31,#0c1728);
  box-shadow:0 7px 20px rgba(0,0,0,.2);
}
.member-add:hover{background:linear-gradient(180deg,#172a45,#101e34);border-color:rgba(58,207,255,.43);box-shadow:var(--ice-glow-blue);transform:translateY(-1px)}
.member{border:1px solid transparent;border-radius:12px;padding:8px 7px}
.member:hover{background:rgba(14,27,46,.7);border-color:rgba(70,106,165,.2)}
.member b{font-size:12px}.member small{color:#6f83a3}

/* Voice dock */
.voice-dock{
  margin:0 8px 8px;
  border:1px solid rgba(71,112,177,.26);
  border-radius:17px;
  padding:10px 9px 9px;
  background:linear-gradient(180deg,rgba(8,22,36,.96),rgba(6,16,28,.96));
  box-shadow:0 12px 32px rgba(0,0,0,.24);
}
.voice-dock-head strong{color:#46e6a1;text-shadow:0 0 15px rgba(70,230,161,.16)}
.voice-controls{gap:7px}
.voice-controls button{
  min-height:48px;
  border-radius:12px;
  border:1px solid rgba(74,111,171,.28);
  background:linear-gradient(180deg,#101d31,#0c1728);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.voice-controls button:hover{background:linear-gradient(180deg,#182b47,#101e33);border-color:rgba(72,161,220,.42);transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.22)}
.voice-controls button.active-control{border-color:rgba(50,219,255,.55);box-shadow:var(--ice-glow-blue)}
.voice-controls button.danger,.voice-controls button.stream-stop-control{background:linear-gradient(180deg,#d23a52,#a5223b)!important;border-color:#ef5268!important;box-shadow:0 8px 20px rgba(210,45,72,.18)}
.voice-settings-btn{width:34px;height:34px;border-radius:11px;background:#0e1a2c;border-color:rgba(73,111,173,.3)}

/* Voice lobby / streams */
.voice-lobby-stage{
  padding:17px 18px 18px;
  background:
    radial-gradient(circle at 74% -4%,rgba(126,60,255,.14),transparent 32%),
    radial-gradient(circle at 24% 2%,rgba(25,165,255,.09),transparent 30%),
    transparent;
}
.voice-lobby-header{margin-bottom:16px;padding:2px 2px 0}
.voice-lobby-heading h2{font-size:22px;letter-spacing:-.02em}
.voice-lobby-meta{color:#7588a8}
.voice-lobby-action{
  min-height:38px;
  border-radius:12px;
  border:1px solid rgba(77,116,181,.31);
  background:linear-gradient(180deg,#101e33,#0c1728);
  box-shadow:0 7px 18px rgba(0,0,0,.16);
}
.voice-lobby-action:hover{background:linear-gradient(180deg,#172a45,#101e34);border-color:rgba(61,200,255,.43);box-shadow:var(--ice-glow-blue);transform:translateY(-1px)}
.voice-lobby-participants{gap:12px;padding:3px 3px 14px}
.voice-lobby-participant{
  flex-basis:158px;min-width:158px;
  border-radius:17px;
  border:1px solid rgba(75,113,176,.27);
  background:linear-gradient(180deg,rgba(14,27,47,.96),rgba(9,18,32,.96));
  box-shadow:0 10px 26px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025);
}
.voice-lobby-participant[role="button"]:hover{border-color:rgba(46,205,255,.48);transform:translateY(-3px);box-shadow:0 14px 28px rgba(0,0,0,.27),var(--ice-glow-blue)}
.voice-lobby-participant.speaking{border-color:#36e99a;box-shadow:0 0 0 1px rgba(54,233,154,.42),0 0 25px rgba(54,233,154,.18)}
.voice-lobby-main-card,.voice-lobby-side-streams{
  border-radius:19px;
  border:1px solid rgba(76,115,181,.29);
  background:linear-gradient(180deg,rgba(10,20,36,.98),rgba(7,15,28,.98));
  box-shadow:0 14px 36px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.025);
}
.voice-lobby-main-card{padding:12px}
.voice-lobby-main-video-wrap{border-radius:15px;border:1px solid rgba(77,115,177,.25);background:#02050b}
.voice-lobby-main-waiting{background:radial-gradient(circle at center,rgba(18,39,68,.9),rgba(3,7,14,.98));color:#7890b5}
.voice-lobby-stream-card{
  border-radius:14px;
  border:1px solid rgba(75,112,174,.25);
  background:linear-gradient(180deg,#0d1a2c,#0a1423);
}
.voice-lobby-stream-card:hover,.voice-lobby-stream-card.selected{border-color:rgba(145,84,255,.58);box-shadow:var(--ice-glow-violet)}
.voice-lobby-watch-btn{border-radius:10px;background:#111f35;border-color:rgba(78,118,183,.3)}
.voice-lobby-watch-btn:hover{background:#192d49;border-color:rgba(61,204,255,.43)}
.voice-lobby-watch-btn.is-watching{background:linear-gradient(100deg,#2c5fc7,#6a3bcc);border-color:rgba(103,200,255,.45);box-shadow:var(--ice-glow-blue)}
.voice-lobby-empty-streams{border-radius:19px;border-color:rgba(81,119,184,.28);background:linear-gradient(180deg,rgba(11,23,41,.82),rgba(6,14,26,.86))}

/* Modals / overlays */
.modal,.manage-overlay{background:rgba(0,3,9,.76);backdrop-filter:blur(10px)}
.modal-card,.manage-overlay-card{
  border-radius:22px;
  border:1px solid rgba(83,126,195,.32);
  background:linear-gradient(180deg,#0b1728,#08111f);
  box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 50px rgba(75,72,212,.07);
}
.modal video{border-radius:16px}
.device-card,.stream-setup-card{background:linear-gradient(180deg,#0b1728,#08111f)}
.device-grid select,.manage-form textarea,.manage-form input,.manage-form select,.inline-edit input,.role-form select,.search-form input,.auth-form input,.auth-form select{
  border-radius:12px;
  border-color:rgba(76,114,178,.31);
  background:#07111e;
  box-shadow:inset 0 1px 7px rgba(0,0,0,.18);
}
.device-grid select:focus,.manage-form textarea:focus,.manage-form input:focus,.manage-form select:focus,.inline-edit input:focus,.role-form select:focus,.search-form input:focus,.auth-form input:focus,.auth-form select:focus{border-color:rgba(43,209,255,.52);box-shadow:0 0 0 2px rgba(43,209,255,.07)}
.range-setting input[type="range"]{accent-color:#49cfff}
.mic-meter{border-radius:999px;background:#06101d;overflow:hidden;border:1px solid rgba(70,106,165,.22)}
.mic-meter>span{background:linear-gradient(90deg,#22d3ee,#38d79e,#8b5cf6);box-shadow:0 0 16px rgba(34,211,238,.22)}

/* Management / settings / updater use the same visual system. */
.manage-page{
  padding:24px;
  background:
    radial-gradient(circle at 10% 0%,rgba(30,112,255,.15),transparent 30%),
    radial-gradient(circle at 88% 4%,rgba(197,46,255,.1),transparent 28%),
    linear-gradient(145deg,#02050b,#050a15 55%,#040814);
  background-attachment:fixed;
}
.manage-shell{width:min(1220px,100%)}
.manage-topbar{
  padding:19px 21px;
  margin-bottom:14px;
  border:1px solid var(--ice-border);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(9,19,34,.94),rgba(7,14,27,.94));
  box-shadow:var(--ice-shadow),inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter:blur(16px);
}
.manage-topbar h1{font-size:27px;letter-spacing:-.03em}.manage-topbar h1 span{color:#6e84a8}.manage-eyebrow{color:#54d7ff;text-shadow:0 0 18px rgba(84,215,255,.15)}
.settings-tabs{
  gap:8px;margin:0 0 14px;padding:8px;
  background:rgba(8,17,31,.84);
  border:1px solid var(--ice-border);
  border-radius:17px;
  box-shadow:0 10px 28px rgba(0,0,0,.18);
}
.settings-tabs a{border-radius:11px;padding:10px 14px}
.settings-tabs a:hover{background:#111f34}
.settings-tabs a.active{background:linear-gradient(105deg,#1f75d7,#5d42ca 70%,#9d35d0);box-shadow:var(--ice-glow-blue)}
.settings-card,.user-manage-card{
  background:linear-gradient(180deg,rgba(10,21,38,.96),rgba(7,15,28,.96));
  border:1px solid var(--ice-border);
  border-radius:21px;
  box-shadow:0 14px 38px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.022);
}
.settings-card{padding:21px}.settings-card h2{letter-spacing:-.02em}
.settings-columns{gap:15px}
.manage-row{
  border-radius:14px;
  border-color:rgba(74,112,175,.25);
  background:linear-gradient(180deg,rgba(8,18,33,.9),rgba(7,15,27,.9));
}
.manage-row:hover{border-color:rgba(81,132,207,.34);background:linear-gradient(180deg,rgba(11,25,44,.95),rgba(8,18,32,.95))}
.row-actions button,.manage-row>form button,.role-form button,.inline-edit button{
  border-radius:10px;
  border-color:rgba(79,119,184,.3);
  background:#101d31;
}
.row-actions button:hover,.manage-row>form button:hover,.role-form button:hover,.inline-edit button:hover{background:#182a45;border-color:rgba(61,203,255,.4);transform:translateY(-1px)}
.primary,.primary-link{
  background:linear-gradient(105deg,#167fcf,#445ddf 50%,#913ad7);
  border:1px solid rgba(84,207,255,.23);
  box-shadow:0 10px 25px rgba(49,80,201,.18);
}
.primary:hover,.primary-link:hover{filter:brightness(1.08);box-shadow:var(--ice-glow-blue),0 10px 26px rgba(40,72,186,.22);transform:translateY(-1px)}
.secondary-btn,.mini-link{background:linear-gradient(180deg,#101e32,#0c1728);border-color:rgba(78,117,181,.29);border-radius:11px}
.secondary-btn:hover,.mini-link:hover{border-color:rgba(57,202,255,.4);background:#172a44;box-shadow:var(--ice-glow-blue)}
.danger-outline{border-color:rgba(224,66,91,.5)!important;background:rgba(70,19,32,.48)!important;color:#ffb0bf!important}
.danger-outline:hover{background:rgba(111,25,42,.65)!important;box-shadow:0 0 20px rgba(255,61,93,.1)}
.update-status-grid{gap:12px}.update-status-card strong{font-size:21px}.update-drop{border-radius:17px!important;border-color:rgba(79,118,183,.4)!important;background:linear-gradient(180deg,rgba(10,23,41,.9),rgba(7,16,29,.9))!important}.update-drop:hover{border-color:rgba(43,209,255,.55)!important;box-shadow:var(--ice-glow-blue)}
.update-warning{border-radius:12px!important;background:rgba(30,33,83,.32)!important;border-left-color:#7d60ff!important}

/* Auth / login */
.auth-page{
  background:
    radial-gradient(circle at 30% 15%,rgba(25,173,255,.15),transparent 28%),
    radial-gradient(circle at 74% 25%,rgba(204,48,255,.12),transparent 25%),
    linear-gradient(145deg,#02050c,#060b17 50%,#030713);
}
.auth-card{
  width:min(460px,100%);
  padding:31px;
  border-radius:25px;
  border:1px solid rgba(77,119,186,.3);
  background:linear-gradient(180deg,rgba(9,19,35,.96),rgba(7,14,27,.97));
  box-shadow:0 30px 90px rgba(0,0,0,.58),0 0 55px rgba(57,94,255,.07);
}
.auth-brand-logo{width:min(310px,90%);max-height:270px;border:0;background:transparent;box-shadow:none;filter:drop-shadow(0 0 22px rgba(28,206,255,.26)) drop-shadow(0 0 26px rgba(214,58,255,.12))}
.auth-card h1{letter-spacing:-.035em}.auth-form{gap:15px}.auth-form input,.auth-form select{height:47px}
.alert,.success{border-radius:13px;border:1px solid transparent}.alert{background:rgba(91,22,39,.72);border-color:rgba(239,74,104,.25)}.success{background:rgba(18,70,50,.7);border-color:rgba(61,218,148,.22)}

/* Direct messages */
.dm-page{padding:18px;background:transparent}
.dm-shell{height:calc(100dvh - 36px);border-radius:24px;border-color:var(--ice-border);background:linear-gradient(180deg,rgba(8,17,31,.96),rgba(6,13,25,.96));box-shadow:var(--ice-shadow)}
.dm-head{border-bottom-color:rgba(76,113,173,.22);background:rgba(9,19,34,.75)}

/* Scrollbar matching the ice neon UI */
*{scrollbar-width:thin;scrollbar-color:#315173 #050b14}
*::-webkit-scrollbar{width:9px;height:9px}
*::-webkit-scrollbar-track{background:#050b14;border-radius:999px}
*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#2e668c,#3e3f78);border:2px solid #050b14;border-radius:999px}
*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#35a4cf,#6650a8)}

/* Responsive polish */
@media(max-width:1380px) and (min-width:1081px){
  .app-body{padding:9px}.app-shell{height:calc(100dvh - 18px);gap:8px;grid-template-columns:250px minmax(0,1fr) 214px}
  .channel-sidebar,.chat-panel,.member-sidebar{border-radius:20px}
  .ice-brand-panel{flex-basis:205px;min-height:205px;margin:8px 8px 0}.ice-brand-home img{width:min(182px,92%);max-height:182px}
}
@media(max-width:1080px) and (min-width:721px){
  .app-body{padding:8px}.app-shell{height:calc(100dvh - 16px);grid-template-columns:238px minmax(0,1fr);gap:8px}
  .channel-sidebar,.chat-panel{border-radius:19px}
  .ice-brand-panel{flex-basis:190px;min-height:190px;margin:8px 8px 0}.ice-brand-home img{width:min(165px,90%);max-height:168px}
  .member-sidebar{border-radius:20px 0 0 20px;height:100dvh}
}
@media(max-width:820px) and (min-width:721px){
  .app-shell{grid-template-columns:214px minmax(0,1fr)}
  .ice-brand-panel{flex-basis:165px;min-height:165px}.ice-brand-home img{width:min(142px,88%);max-height:145px}
}
@media(max-width:720px){
  .app-body{padding:0;overflow:auto}
  .app-shell{height:auto;min-height:100dvh;gap:0;grid-template-columns:1fr}
  .chat-panel{min-height:100dvh;border:0;border-radius:0}
  .channel-sidebar{border-radius:0 22px 22px 0;border-left:0}
  .member-sidebar{border-radius:22px 0 0 22px}
  .ice-brand-panel{flex:0 0 164px;min-height:164px;margin:8px}.ice-brand-home img{width:min(145px,88%);max-height:145px}
  .topbar{height:60px}.messages{padding:16px 13px}.composer{margin:0 10px 10px}
  .voice-lobby-stage{padding:12px 10px 14px}.voice-lobby-header{flex-wrap:wrap}.voice-lobby-actions{width:100%}.voice-lobby-action{flex:1}
  .manage-page{padding:12px}.manage-topbar,.settings-card,.user-manage-card{border-radius:18px}.manage-topbar{padding:16px}
}
@media(max-height:760px) and (min-width:721px){
  .ice-brand-panel{flex-basis:145px;min-height:145px}.ice-brand-home img{width:min(126px,86%);max-height:126px}
  .voice-dock{padding-top:7px;padding-bottom:7px}.voice-controls button{min-height:40px;height:40px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* =========================================================
   ICE-NSK v0.8.1 – Full Neon Shell / closer to concept preview
   Strong visual restructuring without changing app behavior.
   ========================================================= */
:root{
  --n-bg-0:#02040a;
  --n-bg-1:#040815;
  --n-panel:rgba(6,13,27,.90);
  --n-panel-2:rgba(9,18,36,.90);
  --n-panel-3:rgba(13,25,48,.92);
  --n-line:rgba(77,128,220,.30);
  --n-line-hot:rgba(29,213,255,.62);
  --n-pink:rgba(230,51,255,.60);
  --n-cyan:#26dbff;
  --n-purple:#a244ff;
  --n-radius-xl:30px;
  --n-radius-lg:24px;
  --n-radius-md:17px;
  --n-glow:0 0 0 1px rgba(32,210,255,.18),0 0 34px rgba(38,127,255,.12),0 0 46px rgba(202,54,255,.06);
}

html,body{
  background:
    radial-gradient(900px 520px at 8% -8%,rgba(0,163,255,.18),transparent 64%),
    radial-gradient(820px 480px at 92% 3%,rgba(194,38,255,.16),transparent 62%),
    radial-gradient(700px 520px at 56% 106%,rgba(31,68,255,.11),transparent 62%),
    linear-gradient(145deg,var(--n-bg-0),var(--n-bg-1) 46%,#030612);
}

.app-body{padding:16px}
.app-shell{
  height:calc(100dvh - 32px);
  grid-template-columns:304px minmax(520px,1fr) 272px;
  gap:16px;
  background:transparent;
}
.channel-sidebar,.chat-panel,.member-sidebar{
  border-radius:var(--n-radius-xl);
  border:1px solid var(--n-line);
  box-shadow:0 26px 70px rgba(0,0,0,.44),inset 0 1px 0 rgba(255,255,255,.035),0 0 0 1px rgba(7,16,34,.75);
  overflow:hidden;
}
.channel-sidebar{
  background:
    radial-gradient(circle at 50% 4%,rgba(23,190,255,.10),transparent 26%),
    radial-gradient(circle at 72% 12%,rgba(219,45,255,.08),transparent 22%),
    linear-gradient(180deg,rgba(5,11,24,.98),rgba(4,10,20,.97));
}
.chat-panel{
  background:
    radial-gradient(circle at 50% 0%,rgba(54,82,220,.10),transparent 33%),
    linear-gradient(180deg,rgba(5,11,23,.96),rgba(5,10,20,.97));
  position:relative;
}
.member-sidebar{
  background:
    radial-gradient(circle at 50% 0%,rgba(82,55,230,.09),transparent 28%),
    linear-gradient(180deg,rgba(6,12,25,.97),rgba(4,10,21,.98));
}

/* Brand card: larger, more like the concept preview. */
.ice-brand-panel{
  flex:0 0 275px;
  min-height:275px;
  margin:14px 14px 0;
  padding:12px;
  border-radius:27px;
  border:1px solid rgba(91,137,221,.36);
  background:
    radial-gradient(circle at 48% 38%,rgba(26,211,255,.18),transparent 34%),
    radial-gradient(circle at 66% 46%,rgba(225,56,255,.14),transparent 30%),
    linear-gradient(160deg,rgba(5,12,26,.98),rgba(4,9,20,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 18px 46px rgba(0,0,0,.34),var(--n-glow);
}
.ice-brand-home img{
  width:min(242px,95%);
  max-height:246px;
  filter:drop-shadow(0 0 25px rgba(24,205,255,.31)) drop-shadow(0 0 30px rgba(219,47,255,.18));
}
.ice-brand-settings{
  width:38px!important;height:38px!important;border-radius:13px!important;
  background:rgba(4,11,24,.90)!important;border-color:rgba(92,138,216,.38)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.38),0 0 20px rgba(40,159,255,.08);
}

/* Channel navigation becomes card-like, with stronger selected state. */
.channel-scroll{padding:18px 14px 20px}
.section-label{margin:13px 8px 8px;color:#7f91b2;font-size:10px;letter-spacing:.14em}
.section-label-row{min-height:28px}
.section-add{
  width:26px;height:26px;border-radius:9px;display:grid;place-items:center;
  border:1px solid rgba(74,116,185,.30);background:rgba(12,24,44,.72);color:#b8c9e7;text-decoration:none;
}
.section-add:hover{color:#fff;border-color:rgba(38,213,255,.48);box-shadow:0 0 20px rgba(38,213,255,.10)}
.channel-row-wrap,.voice-row-line{margin:4px 0}
.channel-item,.voice-item{
  min-height:45px;height:auto;border-radius:14px;padding:0 13px;
  border:1px solid transparent;
  background:transparent;color:#aab8d1;
}
.channel-item:hover,.voice-item:hover{
  background:linear-gradient(100deg,rgba(17,35,62,.88),rgba(12,25,46,.82));
  border-color:rgba(76,118,186,.25);transform:translateX(2px);
}
.channel-item.active{
  background:linear-gradient(100deg,rgba(24,118,222,.92),rgba(76,70,219,.88) 58%,rgba(176,49,210,.72));
  border-color:rgba(57,213,255,.55);
  box-shadow:0 0 0 1px rgba(39,208,255,.12),0 8px 24px rgba(34,68,179,.24),0 0 28px rgba(198,49,255,.10);
}
.voice-item.connected{
  background:linear-gradient(100deg,rgba(13,83,118,.78),rgba(48,53,150,.62));
  border-color:rgba(46,220,255,.38);box-shadow:0 0 24px rgba(32,201,255,.08);
}
.channel-edit-link{width:30px;height:30px;border-radius:10px;color:#7183a3}
.channel-edit-link:hover{color:#fff;background:rgba(21,38,68,.9);box-shadow:0 0 18px rgba(73,143,255,.08)}
.voice-users{padding-left:32px}
.voice-user{border-radius:11px;padding:5px 7px;margin:2px 0;background:rgba(10,20,37,.34)}
.voice-user.rtc-connected .mini-avatar{box-shadow:0 0 0 2px #35e79c,0 0 14px rgba(53,231,156,.22)}

/* User card in the lower left. */
.user-bar{
  margin:0 10px 10px;border:1px solid rgba(75,117,185,.28);border-radius:18px;
  background:linear-gradient(180deg,rgba(11,24,43,.94),rgba(7,16,29,.94));
  box-shadow:0 12px 30px rgba(0,0,0,.26);padding:9px 10px;gap:9px;
}
.user-bar .avatar{box-shadow:0 0 0 2px rgba(37,210,255,.42),0 0 18px rgba(53,112,255,.16)}
.user-bar button,.user-bar a{width:34px;height:34px;border-radius:11px;display:grid;place-items:center}
.user-bar button:hover,.user-bar a:hover{background:#132642;color:#fff;box-shadow:0 0 20px rgba(50,194,255,.09)}

/* Floating top navigation instead of a flat bar. */
.topbar{
  height:66px;margin:14px 14px 0;padding:0 15px 0 18px;border:1px solid rgba(73,116,186,.28);border-radius:20px;
  background:linear-gradient(180deg,rgba(9,19,36,.92),rgba(6,14,27,.91));
  box-shadow:0 14px 34px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter:blur(18px) saturate(125%);
}
.topbar h1{font-size:18px;letter-spacing:-.02em}.topbar small{color:#7689ab}
.top-actions{gap:8px}
.top-actions input{
  width:240px;height:37px;border-radius:13px;padding:0 13px;
  background:rgba(3,9,20,.72);border-color:rgba(77,117,185,.31);
}
.top-actions input:focus{border-color:rgba(33,216,255,.55);box-shadow:0 0 0 2px rgba(33,216,255,.07),0 0 26px rgba(43,126,255,.09)}
.top-icon-link,.lang{height:37px;border-radius:12px;background:rgba(12,24,44,.76);border-color:rgba(76,116,183,.30)}
.top-icon-link:hover,.lang:hover{background:#122746;border-color:rgba(49,202,255,.42);box-shadow:0 0 20px rgba(42,180,255,.08)}
.lang.active{background:linear-gradient(115deg,#1b6ec2,#5547cb 60%,#913fc5);border-color:rgba(57,211,255,.46);box-shadow:0 0 22px rgba(57,122,255,.16)}

/* Chat itself is a rounded inset panel, matching the concept. */
.messages{
  margin:14px 14px 10px;padding:22px 24px;min-height:0;
  border:1px solid rgba(71,111,177,.22);border-radius:24px;
  background:
    radial-gradient(circle at 88% 0%,rgba(98,51,214,.05),transparent 24%),
    linear-gradient(180deg,rgba(7,15,28,.78),rgba(5,12,23,.82));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018),0 12px 30px rgba(0,0,0,.14);
}
.message{padding:10px 8px;border-radius:14px;transition:background .15s ease,transform .15s ease}
.message:hover{background:rgba(15,31,55,.48);transform:translateX(2px)}
.message .avatar{box-shadow:0 0 0 2px rgba(56,139,255,.24)}
.message-head b{color:#49cfff;text-shadow:0 0 12px rgba(73,207,255,.08)}
.composer{
  margin:0 14px 14px;min-height:56px;padding:7px 9px;border-radius:18px;
  border:1px solid rgba(76,118,186,.31);background:linear-gradient(180deg,rgba(13,27,49,.95),rgba(9,20,36,.95));
  box-shadow:0 12px 32px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.022);
}
.composer:focus-within{border-color:rgba(35,214,255,.50);box-shadow:0 0 0 2px rgba(35,214,255,.06),0 12px 34px rgba(0,0,0,.26)}
.composer .plus{width:39px;height:39px;background:linear-gradient(145deg,#1a3457,#293c70);color:#e7f4ff;box-shadow:0 0 18px rgba(41,123,255,.09)}
.composer .send{width:42px;color:#48d8ff;text-shadow:0 0 14px rgba(72,216,255,.25)}

/* Right member panel: more like a dedicated glass card list. */
.member-sidebar{padding:14px 12px}
.members-head{
  min-height:48px!important;margin:0 0 12px!important;padding:5px 4px 12px!important;
  border-bottom:1px solid rgba(75,114,176,.22);
}
.members-title{font-size:10px;letter-spacing:.11em;color:#8192b0}
.member-admin-actions{gap:10px}
.member-add{
  width:36px;height:36px;border-radius:12px;border-color:rgba(78,121,188,.34);
  background:linear-gradient(180deg,#10213a,#0b182b);box-shadow:0 8px 20px rgba(0,0,0,.2);
}
.member-add:hover{transform:translateY(-2px);border-color:rgba(39,214,255,.48);box-shadow:0 0 22px rgba(39,214,255,.09),0 8px 22px rgba(0,0,0,.22)}
.member{
  padding:9px 8px;margin:4px 0;border:1px solid transparent;border-radius:15px;
}
.member:hover{background:linear-gradient(100deg,rgba(16,34,59,.80),rgba(10,24,43,.72));border-color:rgba(72,111,176,.22);transform:translateX(-2px)}
.member .avatar{width:40px;height:40px;min-width:40px;box-shadow:0 0 0 2px rgba(65,111,255,.18)}
.member b{font-size:13px;color:#eaf3ff}.member small{color:#7489aa}
.member-dm{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;opacity:.55}
.member:hover .member-dm{opacity:1;background:#13233d}

/* Voice lobby: real hero card, closer to the mockup. */
.voice-lobby-stage{
  margin:14px;padding:0 0 16px;border:1px solid rgba(73,119,193,.27);border-radius:28px;
  background:linear-gradient(180deg,rgba(6,14,28,.92),rgba(5,12,24,.94));
  box-shadow:0 18px 44px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.022);
  overflow:auto;
}
.voice-lobby-header{
  position:relative;min-height:250px;margin:0 0 14px;padding:24px 26px;align-items:flex-start;
  border-bottom:1px solid rgba(72,117,190,.24);border-radius:27px 27px 20px 20px;overflow:hidden;
  background-image:
    linear-gradient(90deg,rgba(2,8,20,.98) 0%,rgba(4,13,30,.86) 34%,rgba(8,14,35,.50) 62%,rgba(9,7,29,.64) 100%),
    radial-gradient(circle at 72% 46%,rgba(41,202,255,.15),transparent 23%),
    radial-gradient(circle at 84% 55%,rgba(220,49,255,.15),transparent 24%),
    url('../img/ice-nsk-logo.png');
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat;
  background-position:center,center,center,82% 47%;
  background-size:cover,cover,cover,245px auto;
  box-shadow:inset 0 -40px 80px rgba(2,7,16,.30);
}
.voice-lobby-header::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(110deg,transparent 45%,rgba(51,215,255,.05) 62%,rgba(227,51,255,.055) 82%,transparent 100%);
}
.voice-lobby-heading,.voice-lobby-actions{position:relative;z-index:1}
.voice-lobby-heading{max-width:500px;padding-top:8px}
.voice-lobby-eyebrow{color:#4ad8ff;letter-spacing:.17em;text-shadow:0 0 18px rgba(74,216,255,.18)}
.voice-lobby-heading h2{font-size:31px;margin:8px 0 8px;letter-spacing:-.045em;text-shadow:0 8px 22px rgba(0,0,0,.4)}
.voice-lobby-meta{display:inline-flex;margin-top:6px;padding:6px 10px;border-radius:999px;background:rgba(8,20,39,.66);border:1px solid rgba(76,126,202,.25);backdrop-filter:blur(8px)}
.voice-lobby-actions{align-self:flex-end;margin-left:auto;gap:9px}
.voice-lobby-action{
  min-height:42px;padding:0 15px;border-radius:14px;background:linear-gradient(180deg,rgba(17,36,63,.92),rgba(10,24,44,.92));
}
.voice-lobby-participants{padding:0 16px 16px;gap:12px}
.voice-lobby-participant{
  flex-basis:178px;min-width:178px;border-radius:19px;
  background:linear-gradient(180deg,rgba(13,29,51,.96),rgba(7,17,32,.97));
  border-color:rgba(76,121,193,.31);box-shadow:0 12px 28px rgba(0,0,0,.22);
}
.voice-lobby-participant-media{height:112px;background:radial-gradient(circle at 50% 42%,rgba(59,85,195,.16),rgba(5,12,23,.95))}
.voice-lobby-participant.speaking{transform:translateY(-3px);box-shadow:0 0 0 1px rgba(57,235,159,.5),0 0 30px rgba(57,235,159,.18),0 14px 30px rgba(0,0,0,.28)}
.voice-lobby-stream-area{padding:0 16px;grid-template-columns:minmax(0,1fr) 300px;gap:14px}
.voice-lobby-main-card,.voice-lobby-side-streams{
  border-radius:22px;border-color:rgba(77,123,198,.31);
  background:linear-gradient(180deg,rgba(8,19,36,.98),rgba(5,13,26,.98));
  box-shadow:0 16px 38px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.022);
}
.voice-lobby-main-card{padding:13px}.voice-lobby-main-video-wrap{border-radius:18px}
.voice-lobby-side-streams{padding:12px}
.voice-lobby-stream-card{border-radius:16px;background:linear-gradient(180deg,#0e213b,#09182c)}
.voice-lobby-empty-streams{margin:0 16px;border-radius:22px;min-height:260px;background:radial-gradient(circle at 50% 38%,rgba(48,86,179,.10),transparent 36%),linear-gradient(180deg,rgba(9,20,38,.84),rgba(5,13,26,.9))}

/* Voice dock becomes a small control console. */
.voice-dock{
  margin:0 10px 8px;padding:11px;border-radius:19px;border-color:rgba(70,121,195,.32);
  background:linear-gradient(180deg,rgba(8,23,42,.97),rgba(5,15,29,.97));
  box-shadow:0 13px 34px rgba(0,0,0,.28),0 0 25px rgba(29,164,255,.055);
}
.voice-dock-head{padding:0 3px}.voice-controls{gap:7px}
.voice-controls button{height:48px;border-radius:13px;background:linear-gradient(180deg,#112641,#0b1a30)}
.voice-controls button:hover{transform:translateY(-2px);border-color:rgba(47,206,255,.43);box-shadow:0 8px 20px rgba(0,0,0,.22),0 0 18px rgba(47,206,255,.06)}
.voice-controls button.active-control{background:linear-gradient(135deg,#145fba,#5d49d6);box-shadow:0 0 24px rgba(70,123,255,.18)}

/* Modal / management surfaces pushed closer to the same visual language. */
.modal-card,.manage-overlay-card,.manage-topbar,.settings-card,.user-manage-card,.dm-shell,.auth-card{
  border-color:rgba(76,125,204,.34)!important;
  box-shadow:0 28px 78px rgba(0,0,0,.52),0 0 0 1px rgba(31,213,255,.035),0 0 46px rgba(88,55,255,.045)!important;
}
.settings-card,.user-manage-card,.update-status-card,.update-install-card{
  border-radius:24px!important;background:linear-gradient(180deg,rgba(9,21,40,.96),rgba(5,14,28,.97))!important;
}
.manage-row{border-radius:16px!important;padding:13px!important}
.primary,.primary-link{border-radius:13px!important;background:linear-gradient(105deg,#138fd5,#4966eb 48%,#a43cdb)!important}

/* Stronger micro-interactions, still restrained enough for daily use. */
@media (hover:hover) and (pointer:fine){
  .channel-item,.voice-item,.member,.voice-lobby-participant,.voice-lobby-stream-card,.member-add,.top-icon-link,.lang,.voice-lobby-action,.voice-controls button{transition-duration:.18s}
}

/* Responsive: keep the visual language instead of collapsing into flat blocks. */
@media(max-width:1450px) and (min-width:1081px){
  .app-body{padding:10px}.app-shell{height:calc(100dvh - 20px);grid-template-columns:270px minmax(0,1fr) 230px;gap:10px}
  .channel-sidebar,.chat-panel,.member-sidebar{border-radius:24px}
  .ice-brand-panel{flex-basis:225px;min-height:225px;margin:10px 10px 0}.ice-brand-home img{width:min(198px,92%);max-height:200px}
  .voice-lobby-header{min-height:220px;background-size:cover,cover,cover,210px auto}
}
@media(max-width:1080px) and (min-width:721px){
  .app-body{padding:8px}.app-shell{height:calc(100dvh - 16px);grid-template-columns:245px minmax(0,1fr);gap:8px}
  .channel-sidebar,.chat-panel{border-radius:22px}
  .ice-brand-panel{flex-basis:190px;min-height:190px;margin:8px 8px 0}.ice-brand-home img{width:min(166px,90%);max-height:168px}
  .top-actions input{width:150px}.voice-lobby-header{min-height:205px;background-position:center,center,center,82% 48%;background-size:cover,cover,cover,180px auto}
  .voice-lobby-stream-area{grid-template-columns:1fr}.voice-lobby-side-streams{display:block}.voice-lobby-stream-strip{display:flex;overflow-x:auto}.voice-lobby-stream-card{flex:0 0 230px}
}
@media(max-width:820px) and (min-width:721px){
  .app-shell{grid-template-columns:218px minmax(0,1fr)}
  .ice-brand-panel{flex-basis:165px;min-height:165px}.ice-brand-home img{width:min(144px,90%);max-height:146px}
  .topbar{margin:8px 8px 0}.messages{margin:8px}.composer{margin:0 8px 8px}.voice-lobby-stage{margin:8px}
}
@media(max-width:720px){
  .app-body{padding:0}.app-shell{min-height:100dvh;height:auto;gap:0}
  .chat-panel{border-radius:0;border:0}.topbar{margin:8px;border-radius:17px}
  .messages{margin:8px;padding:15px;border-radius:19px}.composer{margin:0 8px 8px;border-radius:17px}
  .voice-lobby-stage{margin:8px;border-radius:21px}.voice-lobby-header{min-height:205px;padding:18px;background-position:center,center,center,85% 55%;background-size:cover,cover,cover,150px auto}
  .voice-lobby-heading h2{font-size:25px}.voice-lobby-actions{width:100%;align-self:auto;margin-top:auto}.voice-lobby-action{flex:1}
  .voice-lobby-participant{flex-basis:150px;min-width:150px}.voice-lobby-participant-media{height:95px}
}
@media(max-height:760px) and (min-width:721px){
  .ice-brand-panel{flex-basis:155px;min-height:155px}.ice-brand-home img{width:min(136px,88%);max-height:138px}
  .topbar{height:58px}.voice-lobby-header{min-height:175px;background-size:cover,cover,cover,155px auto}.voice-lobby-heading h2{font-size:24px}
}


/* ICE-NSK v0.8.2 - Lobby Hero: one clean shell, free-standing logo, no frame stack. */
.voice-lobby-stage{
  position:relative;
  border:1px solid rgba(42,196,255,.42);
  box-shadow:0 20px 50px rgba(0,0,0,.30),0 0 32px rgba(34,156,255,.065),0 0 40px rgba(205,45,255,.045);
  overflow:auto;
}
.voice-lobby-header{
  position:relative;
  display:block;
  min-height:286px;
  margin:0;
  padding:30px 30px 76px;
  border:0;
  border-radius:27px 27px 0 0;
  overflow:hidden;
  background:
    radial-gradient(ellipse at 72% 48%,rgba(31,205,255,.16),transparent 28%),
    radial-gradient(ellipse at 87% 54%,rgba(223,45,255,.17),transparent 30%),
    linear-gradient(112deg,rgba(2,8,20,.99) 0%,rgba(5,15,34,.95) 44%,rgba(10,10,37,.92) 100%);
  box-shadow:none;
}
.voice-lobby-header::before{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.9;
  background:
    radial-gradient(ellipse at 72% 105%,rgba(22,128,255,.16),transparent 40%),
    linear-gradient(115deg,transparent 48%,rgba(31,204,255,.025) 61%,rgba(220,45,255,.04) 82%,transparent 100%);
}
.voice-lobby-header::after{
  content:'';position:absolute;left:0;right:0;bottom:0;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(31,201,255,.28),rgba(211,45,255,.25),transparent);
}
.voice-lobby-heading{position:relative;z-index:3;max-width:48%;padding-top:4px}
.voice-lobby-heading h2{font-size:34px;margin:7px 0 8px;letter-spacing:-.045em}
.voice-lobby-eyebrow{color:#50dcff}
.voice-lobby-meta{background:rgba(7,19,38,.46);border-color:rgba(61,182,244,.18);box-shadow:none}
.voice-lobby-welcome{margin:18px 0 0;max-width:390px;color:#7f93b7;font-size:12px;line-height:1.5}
.voice-lobby-brand{
  position:absolute;z-index:2;right:9%;top:48%;transform:translateY(-50%);
  width:240px;height:250px;display:grid;place-items:center;pointer-events:none;
  border:0;background:transparent;box-shadow:none;overflow:visible;
}
.voice-lobby-brand img{
  display:block;width:auto;height:245px;max-width:none;object-fit:contain;
  border:0;border-radius:0;background:transparent;box-shadow:none;
  mix-blend-mode:screen;opacity:.96;
  filter:drop-shadow(0 0 18px rgba(27,210,255,.30)) drop-shadow(0 0 24px rgba(221,46,255,.22));
}
.voice-lobby-actions{position:absolute;z-index:4;right:22px;top:20px;display:flex;gap:8px}
.voice-lobby-action{box-shadow:none}
.voice-lobby-hero-controls{
  position:absolute;z-index:4;left:26%;right:2.5%;bottom:16px;min-height:52px;
  display:flex;align-items:center;justify-content:space-between;gap:14px;padding:7px 10px 7px 12px;
  border:1px solid rgba(67,112,181,.20);border-radius:18px;
  background:rgba(5,14,29,.56);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.voice-lobby-control-group{display:flex;align-items:center;gap:8px}
.voice-hero-control{
  width:39px;height:39px;border:1px solid rgba(70,113,181,.22);border-radius:13px;
  background:rgba(14,30,54,.72);color:#dceaff;cursor:pointer;
  transition:transform .16s,border-color .16s,background .16s,box-shadow .16s;
}
.voice-hero-control:hover{transform:translateY(-1px);border-color:rgba(50,208,255,.48);background:rgba(19,44,76,.88);box-shadow:0 0 18px rgba(40,196,255,.08)}
.voice-hero-control.active-control{border-color:rgba(126,93,255,.58);background:linear-gradient(135deg,#145fc2,#7a36cc);box-shadow:0 0 22px rgba(95,87,255,.20)}
.voice-hero-control.stream-stop-control{border-color:rgba(255,73,103,.5);background:linear-gradient(135deg,#8b263a,#c73550)}
.voice-lobby-hero-status{display:flex;align-items:center;gap:8px;padding:0 8px;color:#50e39b;font-size:11px;white-space:nowrap}
.voice-lobby-hero-status strong{font-size:11px;font-weight:800}
.voice-hero-dot{width:7px;height:7px;border-radius:999px;background:#3be594;box-shadow:0 0 12px rgba(59,229,148,.6)}
.voice-hero-signal{letter-spacing:1px;color:#3ae9a0;font-size:10px}

@media(max-width:1180px){
  .voice-lobby-brand{right:5%;width:205px;height:224px}.voice-lobby-brand img{height:215px}
  .voice-lobby-heading{max-width:52%}.voice-lobby-hero-controls{left:20%}
}
@media(max-width:900px){
  .voice-lobby-header{min-height:270px;padding:24px 22px 76px}
  .voice-lobby-brand{right:2%;opacity:.74}.voice-lobby-heading{max-width:58%}
  .voice-lobby-hero-controls{left:18px;right:18px}
}
@media(max-width:680px){
  .voice-lobby-header{min-height:330px;padding:68px 18px 82px}
  .voice-lobby-heading{max-width:64%;position:relative;z-index:3}.voice-lobby-heading h2{font-size:27px}
  .voice-lobby-brand{right:-26px;top:48%;width:190px;height:210px;opacity:.62}.voice-lobby-brand img{height:198px}
  .voice-lobby-actions{left:18px;right:18px;top:16px;justify-content:flex-end}.voice-lobby-action{min-height:36px}
  .voice-lobby-hero-controls{left:12px;right:12px;bottom:12px;gap:6px}.voice-lobby-control-group{gap:5px}.voice-hero-control{width:36px;height:36px}
  .voice-lobby-hero-status strong{display:none}
}


/* ICE-NSK v0.8.3 – exact approved lobby aurora + clean free-standing brand */
.ice-brand-panel{
  flex:0 0 270px!important;min-height:270px!important;
  margin:0!important;padding:8px 18px 4px!important;
  border:0!important;border-bottom:0!important;border-radius:0!important;
  background:#030816!important;box-shadow:none!important;
  overflow:visible!important;
}
.ice-brand-home{
  width:100%!important;height:100%!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
.ice-brand-home img{
  width:min(246px,96%)!important;height:auto!important;max-height:255px!important;
  object-fit:contain!important;border:0!important;border-radius:0!important;background:transparent!important;
  box-shadow:none!important;filter:drop-shadow(0 0 12px rgba(23,196,255,.22)) drop-shadow(0 0 14px rgba(224,42,255,.13))!important;
}
.ice-brand-home:hover img{transform:scale(1.012)!important;filter:drop-shadow(0 0 16px rgba(23,196,255,.30)) drop-shadow(0 0 18px rgba(224,42,255,.18))!important}
.ice-brand-settings{top:10px!important;right:10px!important}

.voice-lobby-header{
  min-height:286px!important;
  padding:28px 30px 76px!important;
  border:0!important;
  background-image:
    linear-gradient(90deg,rgba(2,7,19,.98) 0%,rgba(3,9,23,.93) 23%,rgba(4,10,25,.69) 39%,rgba(4,9,22,.16) 57%,rgba(2,6,17,.03) 100%),
    url('../img/ice-nsk-lobby-aurora.jpg')!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
.voice-lobby-header::before{
  opacity:1!important;
  background:linear-gradient(180deg,rgba(0,0,0,.04),transparent 55%,rgba(1,5,15,.24) 100%)!important;
}
.voice-lobby-header::after{
  height:1px!important;background:linear-gradient(90deg,rgba(27,205,255,.5),rgba(95,70,255,.22),rgba(226,42,255,.48))!important;
}
/* The approved aurora background already contains the glowing mascot mark. */
.voice-lobby-brand{display:none!important}
.voice-lobby-heading{max-width:39%!important;padding-top:3px!important}
.voice-lobby-heading h2{text-shadow:0 0 18px rgba(40,197,255,.10)}
.voice-lobby-welcome{max-width:360px!important;color:#8da0bd!important}
.voice-lobby-meta{backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.voice-lobby-actions{z-index:5}
.voice-lobby-hero-controls{
  left:31%!important;right:2.2%!important;bottom:15px!important;
  background:rgba(4,12,28,.60)!important;border-color:rgba(60,104,175,.24)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 7px 22px rgba(0,0,0,.18)!important;
}
@media(max-width:1180px){
  .ice-brand-panel{flex-basis:230px!important;min-height:230px!important}.ice-brand-home img{width:min(208px,94%)!important;max-height:218px!important}
  .voice-lobby-heading{max-width:44%!important}.voice-lobby-hero-controls{left:25%!important}
}
@media(max-width:900px){
  .ice-brand-panel{flex-basis:202px!important;min-height:202px!important}.ice-brand-home img{width:min(180px,92%)!important;max-height:190px!important}
  .voice-lobby-header{min-height:270px!important;background-position:58% center!important;padding:24px 22px 76px!important}
  .voice-lobby-heading{max-width:52%!important}.voice-lobby-hero-controls{left:18px!important;right:18px!important}
}
@media(max-width:680px){
  .voice-lobby-header{min-height:326px!important;padding:66px 18px 82px!important;background-position:65% center!important}
  .voice-lobby-heading{max-width:68%!important}
  .voice-lobby-hero-controls{left:12px!important;right:12px!important}
}


/* ========================================================================== 
   ICE-NSK v0.8.5 — Exact Sidebar Rework
   Master reference: approved ICE-NSK sidebar mockup
   ========================================================================== */
:root{
  --sb-bg:#050b17;
  --sb-bg-2:#07101e;
  --sb-line:rgba(65,102,158,.26);
  --sb-text:#c7d2e6;
  --sb-muted:#657697;
  --sb-cyan:#16bfff;
  --sb-violet:#7056ff;
  --sb-magenta:#c225dd;
}

/* Desktop shell: sidebar as a single premium vertical panel */
@media (min-width:721px){
  .app-shell{
    grid-template-columns:280px minmax(0,1fr) 246px!important;
    gap:12px!important;
    padding:10px 12px!important;
    height:100dvh!important;
    background:
      radial-gradient(900px 520px at 26% 0%,rgba(26,70,185,.09),transparent 68%),
      #020711!important;
  }
  .channel-sidebar{
    height:calc(100dvh - 20px)!important;
    border:1px solid rgba(48,91,151,.42)!important;
    border-radius:25px!important;
    background:
      radial-gradient(330px 190px at 50% 7%,rgba(27,80,191,.12),transparent 72%),
      linear-gradient(180deg,#050b16 0%,#07101d 48%,#050b15 100%)!important;
    box-shadow:0 18px 52px rgba(0,0,0,.34),inset 0 0 0 1px rgba(70,111,177,.03)!important;
    overflow:hidden!important;
  }
}

/* Brand: no card inside a card, no double frame */
.ice-brand-panel{
  position:relative!important;
  flex:0 0 228px!important;
  min-height:228px!important;
  margin:0!important;
  padding:18px 24px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.ice-brand-home{
  width:100%!important;
  height:100%!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.ice-brand-home img{
  width:min(205px,94%)!important;
  max-height:205px!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 0 12px rgba(19,195,255,.23)) drop-shadow(0 0 16px rgba(218,38,255,.13))!important;
}
.ice-brand-home:hover img{transform:scale(1.012)!important}
.ice-brand-settings{display:none!important}

/* Primary navigation block from the approved reference */
.ice-primary-nav{
  flex:0 0 auto;
  padding:0 16px 10px;
}
.ice-nav-label{
  margin:0 8px 7px;
  color:#647695;
  font-size:9px;
  font-weight:800;
  letter-spacing:.11em;
}
.ice-nav-item{
  min-height:34px;
  display:flex;
  align-items:center;
  gap:9px;
  margin:2px 0;
  padding:0 10px;
  border:1px solid transparent;
  border-radius:8px;
  color:#91a0bb;
  text-decoration:none;
  font-size:12px;
  transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.ice-nav-item:hover{
  color:#e6efff;
  background:rgba(14,27,47,.78);
  transform:translateX(1px);
}
.ice-nav-item.active{
  color:#f5f9ff;
  background:linear-gradient(100deg,rgba(10,142,229,.86) 0%,rgba(71,74,224,.88) 58%,rgba(178,28,196,.76) 100%);
  border-color:rgba(58,185,255,.34);
  box-shadow:0 0 18px rgba(25,157,255,.10),inset 0 1px rgba(255,255,255,.05);
}
.ice-nav-icon{
  width:17px;
  display:inline-grid;
  place-items:center;
  color:#6faaf0;
  font-size:14px;
  line-height:1;
}
.ice-nav-item.active .ice-nav-icon{color:#bcecff}

/* Channel list: compact and quiet like the reference */
.channel-scroll{
  padding:2px 16px 14px!important;
  scrollbar-width:thin;
  scrollbar-color:#263b60 transparent;
}
.channel-scroll::-webkit-scrollbar{width:6px}
.channel-scroll::-webkit-scrollbar-track{background:transparent}
.channel-scroll::-webkit-scrollbar-thumb{background:#213553;border-radius:999px}
.channel-scroll::-webkit-scrollbar-thumb:hover{background:#345079}
.section-label{
  margin:13px 7px 7px!important;
  color:#6d7e9d!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
}
.section-label-row{min-height:28px!important}
.voice-label{margin-top:14px!important}
.section-add{
  width:22px!important;
  height:22px!important;
  border:1px solid rgba(71,99,151,.34)!important;
  border-radius:999px!important;
  background:#0a1425!important;
  color:#93a9d0!important;
  font-size:15px!important;
  line-height:1!important;
  box-shadow:none!important;
}
.section-add:hover{
  color:#fff!important;
  border-color:rgba(41,200,255,.5)!important;
  background:#0d1b31!important;
}
.channel-row-wrap,.voice-row-line{gap:3px!important}
.channel-item,.voice-item{
  min-height:39px!important;
  height:39px!important;
  padding:0 9px!important;
  margin:1px 0!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#aab7ce!important;
  font-size:12px!important;
  box-shadow:none!important;
  transform:none!important;
}
.channel-item:hover,.voice-item:hover{
  background:rgba(14,27,47,.74)!important;
  border-color:rgba(71,102,153,.12)!important;
  color:#eff5ff!important;
  transform:none!important;
}
.channel-item.active,.voice-item.connected{
  color:#fff!important;
  background:linear-gradient(100deg,rgba(10,145,230,.88),rgba(71,73,224,.90) 58%,rgba(182,29,198,.82))!important;
  border-color:rgba(55,188,255,.42)!important;
  box-shadow:0 0 18px rgba(22,149,255,.10),inset 0 1px rgba(255,255,255,.06)!important;
}
.channel-item>span:first-child,.voice-item>span:first-child{
  width:17px;
  color:#8da0c0;
  font-size:13px;
}
.channel-item.active>span:first-child,.voice-item.connected>span:first-child{color:#d9f4ff!important}
.channel-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.channel-edit-link{
  width:20px!important;
  min-width:20px!important;
  height:28px!important;
  border:0!important;
  border-radius:6px!important;
  background:transparent!important;
  color:#566987!important;
  opacity:.86!important;
  font-size:15px!important;
}
.channel-edit-link:hover{background:#0d1a2c!important;color:#abc4ee!important}
.voice-count{
  min-width:27px!important;
  height:20px!important;
  padding:0 7px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  margin-left:auto!important;
  color:#a9b8dc!important;
  background:rgba(54,47,121,.42)!important;
  font-size:10px!important;
}
.voice-users{padding:2px 4px 4px 28px!important}
.voice-user{
  min-height:28px!important;
  padding:2px 5px!important;
  border-radius:7px!important;
  color:#8696b1!important;
  font-size:11px!important;
}
.voice-user:hover{background:rgba(13,25,44,.65);color:#dce7fa!important}

/* Bottom identity area: integrated, not another floating card */
.user-bar{
  flex:0 0 66px!important;
  min-height:66px!important;
  margin:0 16px!important;
  padding:9px 2px!important;
  border:0!important;
  border-top:1px solid rgba(60,87,130,.28)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  gap:7px!important;
}
.user-bar .avatar{
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  border-radius:50%!important;
  background:linear-gradient(145deg,#243e7b,#6d3bc7)!important;
  box-shadow:0 0 0 2px rgba(37,210,255,.5),0 0 17px rgba(151,41,255,.18)!important;
}
.user-meta b{font-size:12px!important;color:#f3f7ff!important}
.status-select{
  height:20px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#55d99b!important;
  font-size:9px!important;
}
.user-bar button,.user-bar a{
  width:29px!important;
  height:29px!important;
  padding:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#8294b1!important;
  box-shadow:none!important;
}
.user-bar button:hover,.user-bar a:hover{background:#0e1c30!important;color:#dce9ff!important}

/* Tablet/mobile preserves the exact visual language */
@media(max-width:1180px) and (min-width:721px){
  .app-shell{grid-template-columns:252px minmax(0,1fr)!important}
  .ice-brand-panel{flex-basis:204px!important;min-height:204px!important;padding-top:14px!important}
  .ice-brand-home img{width:min(180px,92%)!important;max-height:183px!important}
  .ice-primary-nav,.channel-scroll{padding-left:12px!important;padding-right:12px!important}
}
@media(max-width:720px){
  .channel-sidebar{
    width:min(280px,88vw)!important;
    background:linear-gradient(180deg,#050b16,#07101d)!important;
    border-right:1px solid rgba(48,91,151,.42)!important;
    border-radius:0 24px 24px 0!important;
  }
  .ice-brand-panel{flex:0 0 190px!important;min-height:190px!important;padding-top:14px!important}
  .ice-brand-home img{width:min(168px,90%)!important;max-height:172px!important}
  .ice-primary-nav{padding-left:12px;padding-right:12px}
  .channel-scroll{padding-left:12px!important;padding-right:12px!important}
}


/* ICE-NSK v0.8.6 — logo exactly like reference: completely free, no surrounding card/frame. */
.ice-brand-panel{
  position:relative!important;
  flex:0 0 275px!important;
  min-height:275px!important;
  margin:6px 12px 0!important;
  padding:6px 8px 0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  overflow:visible!important;
}
.ice-brand-panel::before,.ice-brand-panel::after{content:none!important;display:none!important}
.ice-brand-home{
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  text-decoration:none!important;
}
.ice-brand-home img{
  display:block!important;
  width:min(242px,96%)!important;
  max-height:252px!important;
  object-fit:contain!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 0 18px rgba(24,205,255,.20)) drop-shadow(0 0 24px rgba(219,47,255,.11))!important;
}
/* Settings stays usable but does not create a frame around the branding. */
.ice-brand-settings{top:8px!important;right:4px!important}

@media(max-width:1180px){
  .ice-brand-panel{flex-basis:220px!important;min-height:220px!important;margin:4px 9px 0!important}
  .ice-brand-home img{width:min(198px,94%)!important;max-height:205px!important}
}
@media(max-width:900px){
  .ice-brand-panel{flex-basis:190px!important;min-height:190px!important}
  .ice-brand-home img{width:min(170px,92%)!important;max-height:175px!important}
}
\n\n/* ==========================================================================\n   ICE-NSK v0.8.7 — ONE sidebar shell, logo truly free inside it\n   Reference: approved sidebar screenshot.\n   ========================================================================== */\n@media (min-width:721px){\n  .channel-sidebar{\n    border:1px solid rgba(48,91,151,.42)!important;\n    border-radius:25px!important;\n    overflow:hidden!important;\n    background:#030816!important;\n    box-shadow:0 18px 52px rgba(0,0,0,.34)!important;\n  }\n}\n.ice-brand-panel{\n  flex:0 0 222px!important;\n  min-height:222px!important;\n  margin:0!important;\n  padding:14px 22px 0!important;\n  border:0!important;\n  outline:0!important;\n  border-radius:0!important;\n  background:transparent!important;\n  box-shadow:none!important;\n  overflow:visible!important;\n}\n.ice-brand-panel::before,.ice-brand-panel::after{content:none!important;display:none!important}\n.ice-brand-home{\n  display:flex!important;\n  width:100%!important;\n  height:100%!important;\n  align-items:center!important;\n  justify-content:center!important;\n  border:0!important;\n  outline:0!important;\n  border-radius:0!important;\n  background:transparent!important;\n  box-shadow:none!important;\n  overflow:visible!important;\n}\n.ice-brand-home img{\n  display:block!important;\n  width:min(205px,96%)!important;\n  height:auto!important;\n  max-height:208px!important;\n  object-fit:contain!important;\n  border:0!important;\n  outline:0!important;\n  border-radius:0!important;\n  background:transparent!important;\n  box-shadow:none!important;\n  mix-blend-mode:screen!important;\n  filter:drop-shadow(0 0 12px rgba(18,195,255,.20)) drop-shadow(0 0 15px rgba(218,38,255,.12))!important;\n}\n.ice-brand-home:focus,.ice-brand-home:focus-visible{outline:0!important;box-shadow:none!important}\n.ice-brand-home:hover img{transform:scale(1.01)!important}\n/* keep the area under the logo seamless; the only visible frame is the outer sidebar shell */\n.ice-primary-nav,.channel-scroll,.user-bar{position:relative;z-index:1}\n@media(max-width:1180px) and (min-width:721px){\n  .ice-brand-panel{flex-basis:198px!important;min-height:198px!important;padding:12px 18px 0!important}\n  .ice-brand-home img{width:min(181px,95%)!important;max-height:184px!important}\n}\n@media(max-width:720px){\n  .channel-sidebar{background:#030816!important}\n  .ice-brand-panel{flex:0 0 184px!important;min-height:184px!important;padding:12px 16px 0!important}\n  .ice-brand-home img{width:min(166px,94%)!important;max-height:170px!important}\n}\n

/* ICE-NSK v0.8.8 — navigation removed; logo uses real alpha transparency */
.ice-brand-home img{mix-blend-mode:normal!important;background:transparent!important;}
.ice-brand-panel{border-bottom:0!important;}
.channel-scroll{padding-top:4px!important;}

/* v0.8.9 – local system sounds */
.system-sounds-choice{margin-top:2px}.system-sounds-choice small{max-width:420px}.device-actions #testSystemSound{border-color:rgba(131,88,255,.38);background:linear-gradient(135deg,rgba(43,209,255,.08),rgba(214,52,255,.09));}

/* v0.9.0 — Chat uploads, discreet own-stream preview */
.composer{flex-wrap:wrap}
.chat-attachment-draft{order:-1;flex:0 0 100%;display:flex;align-items:center;gap:8px;min-width:0;padding:7px 9px;margin:0 0 3px;border:1px solid rgba(62,142,221,.22);border-radius:10px;background:rgba(9,24,42,.78);color:#cfe2fb}
.chat-attachment-draft.hidden{display:none!important}.chat-attachment-draft-icon{font-size:15px}.chat-attachment-draft-name{min-width:0;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:12px}.chat-attachment-draft small{color:#7690ae;font-size:10px}.chat-attachment-draft button{margin-left:auto;width:26px;height:26px;border:0;border-radius:8px;background:rgba(116,139,177,.11);color:#9fb5d2;cursor:pointer}.chat-attachment-draft button:hover{background:rgba(239,68,68,.16);color:#ff8f9c}
.message-attachments{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:7px;max-width:min(560px,78vw)}
.chat-attachment{text-decoration:none;color:#dbe9ff;border:1px solid rgba(64,111,177,.22);border-radius:12px;background:linear-gradient(180deg,rgba(12,27,48,.88),rgba(8,19,34,.9));overflow:hidden;max-width:100%;box-shadow:0 8px 22px rgba(0,0,0,.13)}
.chat-attachment-image{display:inline-flex;flex-direction:column}.chat-attachment-image img{display:block;max-width:360px;max-height:270px;width:auto;height:auto;object-fit:contain;background:#030711}.chat-attachment-image span,.chat-attachment-video span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 9px;min-width:0}.chat-attachment b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.chat-attachment small{color:#738ba9;font-size:9px;white-space:nowrap}.chat-attachment-video{display:flex;flex-direction:column}.chat-attachment-video video{display:block;width:min(420px,100%);max-height:280px;background:#02050a}.chat-attachment-file{display:flex;align-items:center;gap:10px;min-width:220px;max-width:420px;padding:10px 12px}.chat-attachment-file>span:last-child{display:flex;flex-direction:column;min-width:0}.chat-file-icon{font-size:20px;flex:0 0 auto}.chat-attachment:hover{border-color:rgba(41,205,255,.38);box-shadow:0 8px 24px rgba(0,0,0,.18),0 0 18px rgba(52,158,255,.07)}
.voice-lobby-self-preview{display:block;width:100%;height:100%;object-fit:cover;background:#02050b;border-radius:inherit;pointer-events:none}.voice-lobby-participant.me.has-stream .voice-lobby-participant-media{background:#02050b}.voice-lobby-participant.me.has-stream .voice-lobby-avatar{display:none}
@media (max-width:680px){.message-attachments{max-width:100%}.chat-attachment-image img,.chat-attachment-video video{max-width:100%;height:auto}.chat-attachment-draft-name{max-width:48%}}

/* v0.9.1 – selectable ICE-NSK sound themes */
.system-sound-theme{display:grid;gap:7px}.system-sound-theme>span{font-weight:800;color:#e7eeff}.system-sound-theme select{width:100%;min-height:42px;border:1px solid rgba(87,144,255,.28);border-radius:12px;background:linear-gradient(180deg,rgba(12,25,48,.96),rgba(7,15,30,.98));color:#eef4ff;padding:0 12px;outline:none}.system-sound-theme select:focus{border-color:rgba(55,205,255,.72);box-shadow:0 0 0 3px rgba(39,175,255,.10),0 0 22px rgba(101,66,255,.14)}.system-sound-theme small{color:#7f91b4;line-height:1.35}


/* v0.9.2 – custom sound-theme picker */
.system-sound-theme{display:grid;gap:7px}.system-sound-theme>span{font-weight:800;color:#e7eeff}.system-sound-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sound-theme-btn{appearance:none;border:1px solid rgba(87,144,255,.22);border-radius:14px;background:linear-gradient(180deg,rgba(12,25,48,.90),rgba(7,15,30,.96));padding:12px 12px 10px;color:#dfe9ff;text-align:left;cursor:pointer;display:grid;gap:4px;min-height:72px;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}.sound-theme-btn:hover{border-color:rgba(113,186,255,.40);transform:translateY(-1px)}.sound-theme-btn.active{border-color:rgba(54,212,255,.85);background:linear-gradient(90deg,rgba(27,145,255,.22),rgba(130,69,255,.24));box-shadow:0 0 0 1px rgba(54,212,255,.16),0 8px 26px rgba(64,98,255,.18)}.sound-theme-title{display:block;font-weight:800;color:#f2f7ff}.sound-theme-btn small{display:block;color:#8ca0c5;line-height:1.35}.sound-theme-btn.active small{color:#cddcff}.system-sound-theme small{color:#7f91b4;line-height:1.35}.system-sound-theme > small{margin-top:2px}@media(max-width:560px){.system-sound-options{grid-template-columns:1fr}.sound-theme-btn{min-height:64px}}


/* ==========================================================================
   ICE-NSK v0.10.0 – 5-point comfort patch
   ========================================================================== */
/* Deterministic fallback avatar colors + real image avatars. */
.avatar,.mini-avatar,.voice-lobby-avatar,.friend-avatar{background:linear-gradient(145deg,hsl(var(--avatar-hue,220) 74% 46%),hsl(calc(var(--avatar-hue,220) + 34) 74% 35%));color:#fff}
.avatar img,.mini-avatar img,.voice-lobby-avatar img,.profile-avatar-preview img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}
.avatar.has-image,.mini-avatar.has-image{padding:0;overflow:hidden;background:#08101e}
.avatar-link{padding:0!important;overflow:hidden;display:grid!important;place-items:center!important;flex:0 0 36px}
.avatar-link:hover{transform:translateY(-1px);box-shadow:0 0 0 2px rgba(53,210,255,.22),0 0 18px rgba(72,90,255,.18)}
.friend-avatar{width:38px;height:38px;min-width:38px;overflow:hidden}.friend-row-main{min-width:0;flex:1}.manage-row:has(.friend-avatar){justify-content:flex-start}.manage-row:has(.friend-avatar)>.row-actions{margin-left:auto}

/* Profile */
.profile-shell{max-width:980px}.profile-columns{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr)}.profile-avatar-card{text-align:center}.profile-avatar-preview{width:112px;height:112px;margin:4px auto 14px;font-size:34px;overflow:hidden;box-shadow:0 0 0 3px rgba(80,192,255,.12),0 18px 40px #0006}.profile-avatar-card h3{margin:0 0 6px}.profile-avatar-card .manage-form{text-align:left;margin-top:18px}.manage-help{font-size:11px;color:#8192af;line-height:1.45;margin:8px 0 12px}.manage-form input[type=file]{height:auto;min-height:44px;padding:9px}

/* Point 1: long channel names stay legible instead of squeezing/overlapping. */
.channel-item,.voice-item{height:auto!important;min-height:42px!important;align-items:flex-start!important;padding-top:9px!important;padding-bottom:9px!important}
.channel-name{min-width:0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important;word-break:break-word!important;line-height:1.22!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;line-clamp:2!important;max-height:2.45em!important}
.channel-item>span:first-child,.voice-item>span:first-child{flex:0 0 auto;margin-top:1px}.voice-count{flex:0 0 auto;margin-top:1px}.channel-edit-link{flex:0 0 27px}
@media(max-width:1180px){.channel-name{font-size:12px}.channel-item,.voice-item{padding-left:9px!important;padding-right:8px!important}.channel-scroll{padding-left:8px!important;padding-right:7px!important}}
@media(max-width:720px){.channel-sidebar{width:min(328px,91vw)!important}.channel-name{font-size:13px!important;line-height:1.25!important}.channel-item,.voice-item{min-height:44px!important}.section-label{font-size:10px!important;letter-spacing:.065em!important}.user-meta b{font-size:12px}}
@media(max-width:380px){.channel-sidebar{width:94vw!important}.channel-name{font-size:12px!important}.channel-scroll{padding-inline:6px!important}}

/* Point 3: subtle lobby Aurora watermark in text chat only. */
.chat-panel{position:relative;isolation:isolate;overflow:hidden}.chat-panel.is-chat-view::before{content:'';position:absolute;inset:64px 0 0;z-index:-1;pointer-events:none;background-image:linear-gradient(180deg,rgba(5,11,22,.86),rgba(5,10,20,.93)),url('../img/ice-nsk-lobby-aurora.jpg');background-position:center;background-size:cover;background-repeat:no-repeat;opacity:.34;filter:saturate(.82) contrast(.95)}
.chat-panel.is-chat-view::after{content:'';position:absolute;inset:64px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 52% 42%,rgba(52,162,255,.065),transparent 35%),linear-gradient(90deg,rgba(5,10,20,.7),transparent 27%,transparent 73%,rgba(5,10,20,.72))}
.chat-panel.is-chat-view .messages{background:rgba(5,10,19,.18);backdrop-filter:blur(.5px)}.chat-panel.is-chat-view .message{position:relative}.chat-panel.is-chat-view .composer{backdrop-filter:blur(16px);background:rgba(10,20,38,.88)}
@media(max-width:720px){.chat-panel.is-chat-view::before,.chat-panel.is-chat-view::after{inset:68px 0 0}.chat-panel.is-chat-view::before{opacity:.28}}

@media(max-width:760px){.profile-columns{grid-template-columns:1fr}.profile-avatar-preview{width:96px;height:96px}}


/* v0.10.2 – Voice diagnostics & Safe Audio Mode */
.safe-audio-choice{border-color:rgba(51,208,255,.30)!important;background:linear-gradient(135deg,rgba(18,91,151,.16),rgba(89,48,166,.12))!important}.safe-audio-choice b{color:#dff8ff}.safe-audio-choice small{color:#8ca8c9}.rtc-diagnostics-btn{font-size:15px;color:#82e9ff}.rtc-diagnostics-card{width:min(780px,96vw);max-height:min(760px,90vh);overflow:auto}.rtc-diagnostics-sub{display:block;margin-top:3px;color:#8293b3;font-size:11px;font-weight:500}.rtc-diag-local{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:14px}.rtc-diag-local>div{padding:10px 11px;border:1px solid rgba(75,128,196,.20);border-radius:12px;background:rgba(5,14,29,.68)}.rtc-diag-local span,.rtc-diag-local b{display:block}.rtc-diag-local span{font-size:9px;color:#7d90b3;text-transform:uppercase;letter-spacing:.06em}.rtc-diag-local b{margin-top:4px;font-size:12px;color:#e7f2ff;overflow-wrap:anywhere}.rtc-diag-peers{display:grid;gap:10px}.rtc-diag-peer{border:1px solid rgba(70,116,185,.22);border-radius:15px;background:linear-gradient(180deg,rgba(10,24,46,.92),rgba(6,15,30,.95));padding:12px}.rtc-diag-peer.is-connected{border-color:rgba(55,220,166,.28)}.rtc-diag-peer.is-warn{border-color:rgba(255,166,75,.32)}.rtc-diag-peer header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.rtc-diag-peer header strong{font-size:13px;color:#f1f7ff}.rtc-diag-peer header span{font-size:10px;color:#87a0c4}.rtc-diag-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.rtc-diag-grid>div{min-width:0;padding:8px;border-radius:10px;background:rgba(2,10,22,.55)}.rtc-diag-grid small,.rtc-diag-grid b{display:block}.rtc-diag-grid small{font-size:8px;color:#7084a8;text-transform:uppercase;letter-spacing:.05em}.rtc-diag-grid b{margin-top:3px;font-size:10px;color:#cfe0f7;overflow-wrap:anywhere}.rtc-diag-empty{padding:22px;text-align:center;color:#8395b3;border:1px dashed rgba(88,128,184,.22);border-radius:12px}@media(max-width:700px){.rtc-diag-local{grid-template-columns:1fr}.rtc-diag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:440px){.rtc-diag-grid{grid-template-columns:1fr}}


/* v0.10.3 – Multi-Stream Grid + 3+ Peer stability UI */
.voice-lobby-stream-area.multi-stream-layout{grid-template-columns:minmax(0,1fr) minmax(210px,280px);gap:14px;align-items:start}
.voice-lobby-watch-panel{min-width:0;border:1px solid rgba(93,139,255,.18);border-radius:18px;background:linear-gradient(180deg,rgba(7,16,35,.80),rgba(5,11,25,.90));padding:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.multi-stream-head{margin-bottom:10px}.multi-stream-head>div{display:grid;gap:2px}.multi-stream-head strong{font-size:12px;color:#d9e7ff}.multi-stream-head small{font-size:9px;letter-spacing:.11em;color:#7287ae}
.voice-lobby-watch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:12px;min-height:220px;align-content:start}
.voice-lobby-watch-card{min-width:0;overflow:hidden;border:1px solid rgba(86,145,255,.24);border-radius:16px;background:#070d1a;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.voice-lobby-watch-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;background:linear-gradient(90deg,rgba(21,42,78,.72),rgba(36,20,70,.52));border-bottom:1px solid rgba(90,142,255,.15)}
.voice-lobby-watch-card>header>div:first-child{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 7px;min-width:0}.voice-lobby-watch-card header strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-lobby-watch-card header small{grid-column:2;font-size:8px;color:#8194b7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.voice-lobby-watch-card-actions{display:flex;align-items:center;gap:6px}.voice-lobby-watch-card-actions button{width:30px;height:30px;border:1px solid rgba(88,139,255,.25);border-radius:9px;background:rgba(10,20,39,.9);color:#c9d9ff;cursor:pointer}.voice-lobby-watch-card-actions button:hover{border-color:rgba(47,207,255,.55);color:#fff}.voice-lobby-watch-card-actions .is-stop{color:#ff9eaa;border-color:rgba(255,76,112,.25)}
.voice-lobby-watch-video-wrap{position:relative;aspect-ratio:16/9;background:#02050b}.voice-lobby-watch-video-wrap video{display:block;width:100%;height:100%;object-fit:contain;background:#000}.voice-lobby-watch-waiting{position:absolute;inset:0;display:grid;place-items:center;padding:18px;text-align:center;color:#7c8eae;font-size:10px;background:radial-gradient(circle at center,rgba(30,55,110,.17),transparent 58%)}.voice-lobby-watch-waiting.hidden{display:none}
.voice-lobby-watch-grid>.voice-lobby-main-waiting{position:static;min-height:200px;border:1px dashed rgba(92,135,206,.22);border-radius:14px;display:grid;place-items:center;color:#7283a2;background:rgba(5,11,22,.45)}
.rtc-diag-peer b{overflow-wrap:anywhere}.rtc-diag-peer.is-connected{border-color:rgba(62,218,151,.25)}
@media(max-width:1050px){.voice-lobby-stream-area.multi-stream-layout{grid-template-columns:1fr}.voice-lobby-side-streams{max-height:none}.voice-lobby-stream-strip{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));display:grid}}
@media(max-width:640px){.voice-lobby-watch-grid{grid-template-columns:1fr}.voice-lobby-watch-panel{padding:8px;border-radius:14px}.voice-lobby-watch-card{border-radius:13px}.voice-lobby-stream-strip{grid-template-columns:1fr}}

/* v0.10.4 – chat comfort, moderation & PWA */
.pwa-install-btn{color:#8deeff;border-color:rgba(67,211,255,.32)!important}.pwa-install-btn:hover{color:#fff;background:linear-gradient(135deg,rgba(32,185,255,.18),rgba(126,68,255,.18))!important}
.message{position:relative}.message-actions{margin-left:auto;align-self:flex-start;display:flex;gap:4px;opacity:0;transform:translateY(-2px);transition:opacity .14s ease,transform .14s ease}.message:hover .message-actions,.message:focus-within .message-actions{opacity:1;transform:none}.message-actions button{width:30px;height:28px;border:1px solid rgba(91,127,181,.24);border-radius:8px;background:rgba(8,18,34,.86);color:#9fb5d7;cursor:pointer}.message-actions button:hover{color:#fff;border-color:rgba(59,210,255,.42);background:rgba(21,52,84,.9)}.message-actions button.danger:hover{color:#ff9cac;border-color:rgba(255,89,118,.42);background:rgba(83,24,39,.86)}
.message-reply-preview{border:0;border-left:2px solid rgba(73,211,255,.45);background:transparent;color:#8093b3;padding:2px 0 2px 8px;margin:0 0 5px;display:flex;align-items:center;gap:6px;max-width:min(620px,80vw);cursor:pointer;text-align:left}.message-reply-preview b{font-size:11px;color:#8edfff;white-space:nowrap}.message-reply-preview em{font-size:11px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-reply-preview:hover em{color:#c9d8ef}.message-deleted{font-style:italic;color:#71819c!important}.message.is-deleted{opacity:.72}.message-flash{background:rgba(41,190,255,.13)!important;box-shadow:inset 3px 0 0 #4ad7ff}
.chat-mention{display:inline-block;padding:0 3px;border-radius:5px;background:rgba(55,137,255,.17);color:#8fdcff;font-weight:700}.chat-mention.mention-self{background:linear-gradient(90deg,rgba(42,197,255,.28),rgba(132,73,255,.26));color:#dff9ff;box-shadow:0 0 12px rgba(59,178,255,.08)}
.composer{position:relative}.reply-draft{flex-basis:100%;min-width:0;display:flex;align-items:center;gap:9px;margin:0 2px 5px;padding:7px 10px;border:1px solid rgba(64,166,255,.22);border-radius:11px;background:rgba(8,20,38,.82);color:#86a2c9}.reply-draft.hidden{display:none}.reply-draft>span{color:#58d9ff;font-size:16px}.reply-draft>div{min-width:0;flex:1;display:grid;grid-template-columns:auto 1fr;gap:2px 7px;align-items:center}.reply-draft small{font-size:9px;color:#7085a5}.reply-draft b{font-size:11px;color:#8fe7ff}.reply-draft em{grid-column:1/-1;font-size:10px;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#8192ae}.reply-draft>button{width:26px;height:26px;border-radius:7px!important;background:rgba(36,52,78,.55)!important;color:#aebddd!important}
.mention-popup{position:absolute;z-index:12;left:46px;bottom:calc(100% + 7px);width:min(360px,calc(100% - 58px));padding:6px;border:1px solid rgba(77,139,232,.28);border-radius:14px;background:rgba(6,15,29,.98);box-shadow:0 18px 48px #0009;backdrop-filter:blur(16px)}.mention-popup.hidden{display:none}.mention-popup button{width:100%;display:flex;align-items:center;gap:9px;border:0;border-radius:10px;background:transparent;color:#dce8fa;padding:7px 8px;text-align:left;cursor:pointer}.mention-popup button:hover{background:linear-gradient(90deg,rgba(37,148,255,.16),rgba(119,66,255,.14))}.mention-popup button>span:last-child{min-width:0}.mention-popup b,.mention-popup small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-popup small{font-size:9px;color:#7890b5}.mention-popup .mini-avatar{background:hsl(var(--avatar-hue,220) 62% 42%)}
.message-edit-card{width:min(620px,100%)}.message-edit-card textarea{width:100%;resize:vertical;min-height:130px;border:1px solid rgba(76,137,226,.32);border-radius:14px;background:#07111f;color:#edf5ff;padding:13px;outline:none;font:inherit;line-height:1.45}.message-edit-card textarea:focus{border-color:rgba(55,210,255,.62);box-shadow:0 0 0 3px rgba(55,210,255,.08)}
@media(max-width:720px){.message-actions{opacity:1}.message-actions button{width:34px;height:32px}.message-reply-preview{max-width:100%}.mention-popup{left:8px;width:calc(100% - 16px)}}


/* v0.10.5 – Yandex PWA install helper */
.pwa-install-btn.is-yandex{font-weight:900;font-family:system-ui,sans-serif;color:#fff;background:linear-gradient(145deg,rgba(255,45,85,.25),rgba(255,70,40,.12))!important;border-color:rgba(255,92,100,.38)!important}.pwa-install-btn.is-yandex:hover{background:linear-gradient(145deg,rgba(255,45,85,.38),rgba(255,105,50,.18))!important;box-shadow:0 0 20px rgba(255,67,91,.18)}.yandex-install-card{width:min(520px,100%)}.yandex-install-body{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px 16px;align-items:start}.yandex-browser-mark{grid-row:1/5;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-size:24px;font-weight:950;color:#fff;background:linear-gradient(145deg,#ff2f54,#ff7045);box-shadow:0 10px 28px rgba(255,58,80,.22)}.yandex-install-body p{margin:2px 0 0;color:#dfe8f8;line-height:1.5}.yandex-install-body ol{margin:0;padding-left:20px;color:#bac8df;line-height:1.55;display:grid;gap:9px}.yandex-install-body>small{color:#8193b2;line-height:1.5}.yandex-install-body p,.yandex-install-body ol,.yandex-install-body>small{grid-column:2}@media(max-width:520px){.yandex-install-body{grid-template-columns:1fr}.yandex-browser-mark{grid-row:auto}.yandex-install-body p,.yandex-install-body ol,.yandex-install-body>small{grid-column:1}}


/* =========================================================
   ICE-NSK v0.12.0 – Desktop Ready / UI Polish
   Funktionierender LiveKit-Medienkern bleibt unverändert.
   ========================================================= */

/* Desktop proportions: more room for chat, less chrome around it. */
@media(min-width:1081px){
  .app-shell{grid-template-columns:260px minmax(520px,1fr) 214px}
  .ice-brand-panel{flex-basis:202px;min-height:202px;padding:10px 16px 6px}
  .ice-brand-home img{width:min(174px,90%);max-height:186px}
  .member-sidebar{padding:14px 10px}
}

/* Sidebar + channels */
.channel-scroll{padding-top:11px}
.section-label{font-size:10px;letter-spacing:.10em;margin-top:7px;margin-bottom:6px}
.voice-label{margin-top:20px}
.channel-item,.voice-item{height:36px;padding-left:9px;padding-right:9px;border-radius:9px}
.channel-name{font-size:12px}
.voice-users{padding-left:26px}
.voice-user{min-height:27px;font-size:11px}
.channel-edit-link{opacity:.62}.channel-row-wrap:hover .channel-edit-link,.voice-row-line:hover .channel-edit-link{opacity:1}

/* Compact voice dock – one Audio entry, no duplicate diagnostic/settings icons. */
.voice-dock{padding:8px 8px 7px;border:1px solid #253852;border-radius:15px 15px 0 0;margin:0 7px;background:linear-gradient(180deg,#091522,#07101a)}
.voice-dock-head{min-height:27px}
.voice-dock-head strong{font-size:12px}.voice-dock-head small{font-size:9px}
.voice-head-actions{min-width:32px;justify-content:flex-end}
.voice-controls{gap:5px;margin-top:6px}
.voice-controls button{height:40px;border-radius:9px;font-size:13px;padding:2px}
.voice-controls button small{font-size:7px;margin-top:2px}
.voice-status{margin-top:5px;font-size:8px;line-height:1.3;opacity:.9}

/* Bottom account bar – less scattered, visually grouped. */
.user-bar{min-height:58px;padding:7px 9px;gap:5px;background:linear-gradient(180deg,#08111c,#070d16)}
.user-bar>.avatar{width:38px;height:38px;min-width:38px}
.user-bar button,.user-bar>a:not(.avatar-link){width:30px;height:30px;display:grid;place-items:center;border-radius:8px;padding:0;color:#91a1ba}
.user-bar button:hover,.user-bar>a:not(.avatar-link):hover{background:#121e30;color:#eaf4ff}
.status-select{max-width:112px}

/* Chat header – grouped controls and less empty chrome. */
.topbar{height:60px;padding:0 14px;background:rgba(7,13,23,.92)}
.topbar-channel h1{font-size:15px}.topbar-channel small{font-size:10px}
.top-actions{gap:5px}
.top-icon-link,.lang{height:30px;border-radius:9px}
.top-actions input{height:31px;width:165px}

/* Messages: calmer rhythm, more readable without extra boxes. */
.messages{padding:18px 20px}
.message{padding:7px 7px;border-radius:10px;transition:background .12s ease}
.message:hover{background:rgba(20,31,49,.34)}
.message-head b{font-size:13px}.message-head span{font-size:9px}.message-body{margin-top:3px;font-size:13px;line-height:1.5}

/* Composer */
.composer{margin:0 14px 14px;min-height:46px;border-radius:14px;background:#0d1828;border-color:#263955;box-shadow:0 10px 28px rgba(0,0,0,.16)}
.composer .plus{width:32px;height:32px;background:linear-gradient(135deg,#223d72,#3e3c92);color:#eaf4ff}
.composer .send{color:#35d5ff;transition:transform .12s,color .12s}.composer .send:hover{transform:translateX(2px);color:#a462ff}

/* Members – narrower but clearer. */
.members-head{padding:0 2px 9px!important;margin-bottom:6px!important}
.member{padding:6px 4px;gap:8px;border-radius:9px}
.member .avatar{width:34px;height:34px;min-width:34px}
.member-main{min-width:0;flex:1}.member-main b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.member-main small{font-size:9px;text-transform:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.member-dm{opacity:.65}.member:hover .member-dm{opacity:1}

/* Audio settings: native speech enhancement replaces visible Safe Audio mode. */
.device-card{width:min(600px,100%)}
.device-grid{gap:12px}
.audio-enhancement-section,.audio-system-section{display:grid;gap:9px;padding:12px;border:1px solid #2a3d5b;border-radius:13px;background:linear-gradient(145deg,rgba(21,39,67,.62),rgba(10,20,34,.72))}
.audio-setting-heading{display:grid;gap:3px;margin-bottom:1px}
.audio-setting-heading>b{font-size:13px;color:#eef6ff}.audio-setting-heading>small{font-size:10px;line-height:1.35;color:#8294af}
.audio-feature-choice{margin:0!important;background:#0b1524!important;border-color:#293c59!important;padding:10px 11px!important}
.audio-feature-choice:hover{border-color:#3b6086!important}
.audio-feature-choice input{accent-color:#56d9ff}
.audio-feature-choice span b{font-size:12px}.audio-feature-choice span small{font-size:10px;line-height:1.35}
.audio-system-section{background:rgba(8,16,28,.56)}
.mic-meter-row{padding:8px 0 2px}
.device-actions{gap:8px;flex-wrap:wrap}.device-actions button{min-height:38px}

/* Keep the desktop layout useful in medium windows. */
@media(max-width:1380px) and (min-width:1081px){
  .app-shell{grid-template-columns:238px minmax(0,1fr) 205px}
  .ice-brand-panel{flex-basis:184px;min-height:184px}.ice-brand-home img{width:min(156px,88%);max-height:168px}
}
@media(max-width:1080px) and (min-width:721px){
  .ice-brand-panel{flex-basis:174px;min-height:174px}.ice-brand-home img{width:min(148px,88%);max-height:160px}
  .voice-dock{margin-left:5px;margin-right:5px}
}
@media(max-width:720px){
  .topbar{height:56px;padding:0 10px}.messages{padding:13px}.composer{margin:0 9px 9px}
  .device-card{max-height:90dvh;overflow:auto}.audio-enhancement-section,.audio-system-section{padding:10px}
}


/* v0.12.1 – Audio modal always scrollable, including desktop windows with low height. */
#audioDeviceModal{overflow-y:auto;overscroll-behavior:contain;padding:16px!important;place-items:start center!important}
#audioDeviceModal .device-card{width:min(600px,100%)!important;max-height:calc(100dvh - 32px)!important;overflow-y:auto!important;overflow-x:hidden;scrollbar-gutter:stable;margin:auto 0}
@supports not (height:100dvh){#audioDeviceModal .device-card{max-height:calc(100vh - 32px)!important}}


/* ICE-NSK v0.12.2 — Audio modal scroll hardening */
#overlayAudioDeviceModal{}
#audioDeviceModal{position:fixed!important;inset:0!important;height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;align-items:flex-start!important;justify-content:center!important;padding:16px!important}
#audioDeviceModal .device-card{flex:0 0 auto!important;width:min(600px,100%)!important;max-height:none!important;overflow:visible!important;margin:0 auto 20px!important}
@supports not (height:100dvh){#audioDeviceModal{height:100vh!important}}
