:root {
    --bg: #101218;
    --panel: #171a22;
    --panel-alt: #1d2230;
    --border: #2a3143;
    --text: #f4f7fb;
    --muted: #98a2b3;
    --accent: #4f7cff;
    --accent-2: #19b36b;
    --danger: #f97066;
    --warning: #f6ad55;
    --shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
    --radius: 18px;
}

* {
    box-sizing: border-box;
    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

html,
body {
    min-height: 100%;
}

body {
    margin: 0;
    background:
        radial-gradient(circle at top left, rgba(79, 124, 255, 0.12), transparent 30%),
        radial-gradient(circle at bottom right, rgba(25, 179, 107, 0.12), transparent 28%),
        var(--bg);
    color: var(--text);
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
select,
textarea {
    font: inherit;
}

img {
    max-width: 100%;
}

.app-shell {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 18px 24px;
    background: rgba(10, 12, 18, 0.84);
    position: sticky;
    top: 0;
    z-index: 20;
}

.topbar > div:first-child {
    flex: 1;
}

.brand {
    font-size: 1.08rem;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.muted {
    color: var(--muted);
}

.app-shell > .topbar + * {
    flex: 1;
}

.layout {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 24px;
    padding: 24px;
    align-items: start;
    flex: 1;
}

.member-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
    padding: 24px;
    align-items: start;
    flex: 1;
}

.member-layout-flush {
    gap: 0;
    padding: 0;
    min-height: 100vh;
    height: 100vh;
    overflow: hidden;
}

.member-page-menu {
    padding: 14px 18px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    background: #20232b;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.member-page-link {
    display: inline-flex;
    align-items: center;
    padding: 10px 14px;
    border-radius: 8px;
    color: #dfe6f4;
    font-weight: 600;
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.member-page-link.active,
.member-page-link:hover {
    background: rgba(255, 255, 255, 0.08);
}

.member-footer {
    padding: 24px;
    color: var(--muted);
}

.discord-home-shell {
    display: grid;
    grid-template-columns: 92px 308px minmax(0, 1fr);
    min-height: 100vh;
    height: 100vh;
    overflow: hidden;
    background: linear-gradient(180deg, #26292f, #202228);
}

.discord-dm-rail {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 16px 0;
    background: #1e1f22;
    border-right: 1px solid rgba(255, 255, 255, 0.05);
    position: relative;
}

.discord-rail-app-icon {
    width: 48px;
    height: 48px;
    margin-bottom: 18px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #5865f2;
    color: #fff;
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(88, 101, 242, 0.22);
    flex-shrink: 0;
}

.discord-rail-button,
.discord-rail-user-avatar {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    color: #d9e0ec;
    background: #2b2d31;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.04);
    transition: background 0.18s ease, transform 0.18s ease, border-radius 0.18s ease;
}

.discord-rail-stack,
.discord-rail-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}

.discord-rail-stack {
    flex: 1;
    align-items: center;
    justify-content: center;
    gap: 12px;
    overflow: auto;
    width: 100%;
    padding: 0 0 10px;
}

.discord-rail-button.active,
.discord-rail-button:hover {
    color: #ffffff;
    background: #5865f2;
    border-radius: 14px;
    transform: translateY(-1px);
}

.discord-rail-button.room-button {
    overflow: hidden;
    padding: 0;
    background: #2b2d31;
    position: relative;
}

.discord-rail-button.room-button span {
    font-size: 0.88rem;
    letter-spacing: 0.02em;
}

.discord-rail-button.room-button img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.discord-rail-divider {
    width: 32px;
    height: 1px;
    margin: 6px 0 2px;
    background: rgba(255, 255, 255, 0.1);
}

.discord-rail-button.action-button {
    font-size: 1.1rem;
    font-weight: 900;
}

.discord-rail-user-avatar {
    overflow: hidden;
    object-fit: cover;
    color: #fff;
    background: linear-gradient(135deg, #1f9d74, #40c694);
}

.discord-chat-sidebar {
    display: flex;
    flex-direction: column;
    background: #2b2d31;
    color: #eef1f8;
    border-right: 1px solid rgba(255, 255, 255, 0.05);
    min-width: 0;
    min-height: 0;
}

.discord-chat-sidebar-top {
    padding: 14px 12px 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.22);
}

.discord-sidebar-heading-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.discord-sidebar-heading-row h2 {
    margin: 0;
    font-size: 1rem;
    font-weight: 800;
    color: #f2f3f5;
}

.discord-compose-link {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #313338;
    color: #dbe2ef;
    border: 0;
    cursor: pointer;
}

.discord-compose-link svg {
    width: 17px;
    height: 17px;
}

.discord-chat-search {
    position: relative;
    margin-bottom: 12px;
}

.discord-chat-search input {
    height: 34px;
    border-radius: 8px;
    gap: 8px;
}

.discord-chat-search-results {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 8px);
    z-index: 30;
    display: grid;
    gap: 6px;
    max-height: 260px;
    overflow: auto;
    padding: 8px;
    border-radius: 16px;
    background: #181a1f;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.35);
}

.discord-chat-search-results[hidden] {
    display: none;
}

.discord-chat-search-result {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 9px 10px;
    border-radius: 12px;
    color: #eef2fb;
    text-decoration: none;
}

.discord-chat-search-result:hover {
    background: #2b2d35;
}

.discord-chat-search-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    object-fit: cover;
}

.discord-chat-search-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #5865f2, #7a84ff);
    color: #fff;
    font-size: 0.78rem;
    font-weight: 800;
}

.discord-chat-search-meta {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.discord-chat-search-meta strong,
.discord-chat-search-meta span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-chat-search-meta span,
.discord-chat-search-empty {
    color: #99a3b4;
    font-size: 0.82rem;
}

.discord-chat-search-empty {
    padding: 10px;
}

.discord-pending-list {
    display: grid;
    gap: 8px;
    margin-bottom: 14px;
}

.pending-title {
    padding-left: 2px;
    padding-bottom: 0;
}

.discord-pending-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 10px;
    border-radius: 12px;
    background: #35373c;
}

.discord-pending-main {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.discord-pending-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.discord-inline-form {
    display: block;
}

.discord-pill-action {
    min-height: 32px;
    padding: 0 10px;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    cursor: pointer;
    background: #2b2d31;
    color: #dbe2ef;
    font-size: 0.78rem;
    font-weight: 700;
}

.discord-pill-action svg {
    width: 14px;
    height: 14px;
}

.discord-pill-action.accept:hover {
    background: rgba(35, 165, 89, 0.18);
    color: #57f287;
}

.discord-pill-action.reject:hover {
    background: rgba(242, 63, 67, 0.18);
    color: #ff7b7b;
}

.discord-chat-contact {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 10px 8px;
    border-radius: 10px;
    color: inherit;
    background: transparent;
}

.discord-chat-contact-avatar-wrap {
    position: relative;
    width: 40px;
    height: 40px;
}

.discord-chat-contact:hover,
.discord-chat-contact.active {
    background: #404249;
}

.discord-chat-contact-avatar,
.discord-chat-header-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.discord-chat-contact-avatar.fallback,
.discord-chat-header-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    background: linear-gradient(135deg, #4f7cff, #7aa2ff);
    color: #fff;
}

.discord-avatar-presence {
    position: absolute;
    right: -1px;
    bottom: -1px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid #2b2d31;
    background: #747f8d;
}

.discord-avatar-presence.online {
    background: #23a559;
}

.discord-avatar-presence.busy {
    background: #f23f43;
}

.discord-avatar-presence.offline,
.discord-avatar-presence.invisible {
    background: #747f8d;
}

.discord-chat-contact-meta {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.discord-chat-contact-meta .muted,
.discord-chat-contact-row strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-chat-contact-row strong {
    font-weight: 600;
}

.discord-chat-contact-meta [data-dm-preview].is-typing {
    color: #6fe3a0;
    font-weight: 700;
}

.discord-chat-contact-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.discord-chat-contact-row span {
    flex-shrink: 0;
    font-size: 0.74rem;
    color: #aab1c0;
}

.discord-unread-badge {
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f23f43;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 800;
}

.unread-text {
    color: #ff7b7b;
}

.discord-chat-empty {
    padding: 12px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
}

.discord-chat-sidebar-dm-section {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.discord-chat-contact-list {
    display: grid;
    gap: 4px;
    min-height: 0;
    overflow: auto;
}

.discord-chat-sidebar-online-section {
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.discord-sidebar-online-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    overflow: visible;
    padding-bottom: 0;
    scroll-snap-type: none;
}

.discord-sidebar-online-item {
    width: 72px;
    min-width: 72px;
    display: grid;
    justify-items: center;
    gap: 8px;
    padding: 0;
    border-radius: 0;
    color: inherit;
    background: transparent;
    scroll-snap-align: start;
}

.discord-sidebar-online-item:hover {
    background: transparent;
}

.discord-sidebar-online-meta {
    min-width: 0;
    display: grid;
    gap: 1px;
    justify-items: center;
    text-align: center;
}

.discord-sidebar-online-meta strong,
.discord-sidebar-online-meta span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-sidebar-online-meta strong {
    font-weight: 600;
}

.discord-sidebar-online-meta span {
    color: #9ca6ba;
    font-size: 0.68rem;
}

.discord-sidebar-online-list .discord-chat-contact-avatar-wrap {
    width: 46px;
    height: 46px;
}

.discord-sidebar-online-list .discord-chat-contact-avatar {
    width: 46px;
    height: 46px;
}

.discord-chat-userbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 12px;
    background: #232428;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    position: relative;
}

.top-userbar {
    border-top: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-chat-userbar-avatar {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    object-fit: cover;
}

.discord-chat-userbar-profile {
    position: relative;
    min-width: 0;
}

.discord-chat-userbar-trigger {
    width: 100%;
    padding: 0;
    border: 0;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    background: transparent;
    color: inherit;
    cursor: pointer;
    text-align: left;
}

.discord-chat-userbar-trigger:hover .discord-chat-userbar-meta strong,
.discord-chat-userbar-trigger:hover .discord-chat-userbar-meta .muted {
    color: #fff;
}

.discord-chat-userbar-avatar-wrap {
    position: relative;
    width: 42px;
    height: 42px;
}

.discord-chat-userbar-avatar-wrap.is-speaking::after {
    content: "";
    position: absolute;
    inset: -2px;
    border-radius: 50%;
    border: 2px solid rgba(35, 165, 90, 0.92);
    box-shadow: 0 0 0 4px rgba(35, 165, 90, 0.16);
    pointer-events: none;
}

.discord-chat-userbar-avatar.fallback,
.discord-online-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #5865f2, #7a84ff);
    color: #fff;
    font-weight: 800;
}

.discord-chat-userbar-status {
    position: absolute;
    right: -1px;
    bottom: -1px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid #232428;
    background: #747f8d;
}

.discord-chat-userbar-status.online {
    background: #23a559;
}

.discord-chat-userbar-status.busy {
    background: #f23f43;
}

.discord-chat-userbar-status.offline,
.discord-chat-userbar-status.invisible {
    background: #747f8d;
}

.discord-chat-userbar-meta {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.discord-chat-userbar-subline {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 6px;
}

.discord-chat-userbar-meta strong,
.discord-chat-userbar-meta .muted {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-userbar-ping {
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #98a2b3;
    font-size: 0.68rem;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}

.discord-chat-userbar-actions {
    display: flex;
    gap: 8px;
}

.discord-profile-hovercard {
    position: absolute;
    left: 0;
    bottom: calc(100% + 10px);
    min-width: 170px;
    padding: 10px 12px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    background: #3a3c43;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35);
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
    z-index: 20;
    pointer-events: none;
}

.discord-chat-userbar-profile:hover .discord-profile-hovercard,
.discord-chat-userbar-profile:focus-within .discord-profile-hovercard {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.discord-chat-userbar-profile.is-open .discord-profile-hovercard {
    opacity: 0;
    visibility: hidden;
}

.discord-profile-hovercard-avatar-wrap {
    position: relative;
    width: 34px;
    height: 34px;
    flex-shrink: 0;
}

.discord-profile-hovercard-avatar {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    object-fit: cover;
}

.discord-profile-hovercard-avatar.fallback,
.discord-profile-popover-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #5865f2, #7a84ff);
    color: #fff;
    font-weight: 800;
    border-radius: 50%;
}

.discord-profile-hovercard-avatar-wrap .discord-chat-userbar-status {
    border-color: #3a3c43;
}

.discord-profile-hovercard-meta {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.discord-profile-hovercard-meta strong,
.discord-profile-hovercard-meta span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-profile-hovercard-meta strong {
    font-size: 0.95rem;
    color: #fff;
}

.discord-profile-hovercard-meta span {
    font-size: 0.8rem;
    color: #c7cfdb;
}

.discord-profile-popover {
    position: absolute;
    left: 0;
    top: calc(100% + 10px);
    width: 310px;
    border-radius: 18px;
    overflow: hidden;
    background: #25252d;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 28px 60px rgba(0, 0, 0, 0.45);
    z-index: 30;
}

.discord-profile-popover-banner {
    height: 72px;
    background: linear-gradient(180deg, #1f2b66 0%, #1f2b66 100%);
    background-size: cover;
    background-position: center;
}

.discord-profile-popover-body {
    padding: 0 14px 14px;
    margin-top: -22px;
}

.discord-profile-popover-top {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 12px;
    align-items: end;
    margin-bottom: 14px;
}

.discord-profile-popover-avatar-wrap {
    position: relative;
    width: 76px;
    height: 76px;
}

.discord-profile-popover-avatar {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    object-fit: cover;
    border: 6px solid #25252d;
}

.discord-profile-popover-avatar-wrap .discord-chat-userbar-status {
    width: 16px;
    height: 16px;
    border-width: 3px;
    border-color: #25252d;
}

.discord-profile-popover-heading {
    min-width: 0;
    display: grid;
    gap: 6px;
    padding-bottom: 4px;
}

.discord-profile-popover-heading strong {
    font-size: 1.05rem;
    color: #fff;
}

.discord-profile-popover-subline {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    color: #d1d7e3;
    font-size: 0.82rem;
}

.discord-profile-popover-subline span:last-child {
    color: #f2f4f8;
}

.discord-profile-popover-actions {
    display: grid;
    gap: 10px;
    padding: 12px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.04);
}

.discord-profile-popover-link {
    min-height: 42px;
    padding: 0 14px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.03);
    color: #eef2f8;
    font-weight: 700;
}

.discord-profile-popover-link:hover {
    background: rgba(255, 255, 255, 0.08);
}

.discord-profile-popover-link.danger {
    color: #ff8a82;
}

.discord-profile-popover-link[type="button"] {
    border: 0;
    cursor: pointer;
    text-align: left;
    font: inherit;
}

.discord-chat-userbar-actions a,
.discord-chat-userbar-actions button {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #313338;
    color: #dbe2ef;
    border: 0;
    cursor: pointer;
}

.discord-chat-userbar-toggle {
    position: relative;
}

.discord-chat-userbar-toggle.is-off {
    background: #4b1f25;
    color: #ffb4b7;
}

.discord-chat-userbar-toggle-slash {
    position: absolute;
    width: 2px;
    height: 20px;
    border-radius: 999px;
    background: #ff626d;
    transform: rotate(-38deg) scaleY(0);
    transition: transform 0.18s ease;
}

.discord-chat-userbar-toggle.is-off .discord-chat-userbar-toggle-slash {
    transform: rotate(-38deg) scaleY(1);
}

.discord-chat-userbar-actions a svg,
.discord-chat-userbar-actions button svg {
    width: 16px;
    height: 16px;
}

.discord-chat-main {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    background: #313338;
}

.discord-chat-main.is-welcome-view {
    background: #313338;
    overflow-x: hidden;
}

.discord-call-shell {
    padding: 18px;
    display: grid;
    gap: 12px;
    background:
        radial-gradient(circle at top left, rgba(88, 101, 242, 0.18), transparent 34%),
        linear-gradient(180deg, #191b22, #13151b);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-call-shell[hidden] {
    display: none !important;
}

.discord-call-shell[data-call-state='incoming'] .discord-call-stage,
.discord-call-shell[data-call-state='incoming'] .discord-call-dock {
    display: none;
}

.discord-call-shell[data-call-state='outgoing'] .discord-incoming-call {
    display: none;
}

.discord-incoming-call-popup {
    position: fixed;
    inset: 0;
    z-index: 140;
    display: grid;
    place-items: center;
    padding: 24px;
    background: rgba(5, 6, 10, 0.4);
    backdrop-filter: blur(8px);
}

.discord-incoming-call-popup[hidden] {
    display: none !important;
}

.discord-incoming-call-popup-card {
    width: min(420px, 100%);
    display: grid;
    gap: 14px;
    padding: 22px;
    border-radius: 24px;
    background: linear-gradient(180deg, #232633, #1a1c24);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 28px 70px rgba(0, 0, 0, 0.42);
}

.discord-incoming-call-popup-badge {
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(88, 101, 242, 0.18);
    color: #dbe3ff;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.discord-incoming-call-popup-card h3 {
    margin: 0;
    font-size: 1.2rem;
}

.discord-incoming-call-popup-card p {
    margin: 0;
}

.discord-incoming-call-popup-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

.discord-incoming-call {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(88, 101, 242, 0.16);
    border: 1px solid rgba(88, 101, 242, 0.26);
}

.discord-incoming-call > div {
    display: grid;
    gap: 4px;
}

.discord-incoming-call-actions {
    display: flex;
    gap: 8px;
}

.discord-call-shell-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.discord-call-shell-status-block {
    display: grid;
    gap: 4px;
}

.discord-call-shell-status-block strong {
    font-size: 1rem;
}

.discord-call-shell-status-block span:last-child,
.discord-call-shell-tip {
    color: #a7b1c2;
    font-size: 0.84rem;
}

.discord-call-shell-pill {
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(88, 101, 242, 0.16);
    color: #dbe3ff;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.discord-call-stage {
    position: relative;
    min-height: 260px;
    border-radius: 22px;
    overflow: hidden;
    background: linear-gradient(180deg, #090b11, #171a23);
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.discord-call-stage-ping {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(10, 12, 18, 0.78);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #d9e6ff;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.24);
}

.discord-call-stage-ping svg {
    width: 14px;
    height: 14px;
}

.discord-call-stage-ping[data-call-ping-state='good'] {
    color: #8ff0b3;
}

.discord-call-stage-ping[data-call-ping-state='medium'] {
    color: #ffd27d;
}

.discord-call-stage-ping[data-call-ping-state='poor'] {
    color: #ff9c9e;
}

.discord-call-remote,
.discord-call-remote video {
    width: 100%;
    height: 100%;
}

.discord-call-remote video,
.discord-call-local {
    object-fit: cover;
    background: #0f1116;
}

.discord-call-remote-fallback {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 18px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.22), rgba(0, 0, 0, 0.58));
}

.discord-call-stage-participants {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
}

.discord-call-stage-participant-card {
    display: grid;
    justify-items: center;
    gap: 10px;
    min-width: 0;
}

.discord-call-stage-participant,
.discord-call-remote-avatar-wrap {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
    transition: box-shadow 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.discord-call-stage-participant.is-self {
    background: rgba(88, 101, 242, 0.12);
}

.discord-call-remote-avatar-wrap {
    background: rgba(255, 255, 255, 0.06);
}

.discord-call-remote-avatar-wrap.is-speaking,
.discord-call-stage-participant.is-speaking,
.discord-call-peer-avatar.is-speaking {
    box-shadow: 0 0 0 3px rgba(63, 191, 103, 0.9), 0 0 0 9px rgba(63, 191, 103, 0.22);
    transform: translateY(-1px);
}

.discord-call-remote-avatar {
    width: 84px;
    height: 84px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid rgba(255, 255, 255, 0.08);
}

.discord-call-remote-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    background: linear-gradient(135deg, #5865f2, #7a84ff);
    color: #fff;
    font-weight: 800;
}

.discord-call-stage-name {
    max-width: 132px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #eef3fb;
    font-size: 0.92rem;
    font-weight: 700;
    text-align: center;
}

.discord-call-stage-summary {
    display: grid;
    justify-items: center;
    gap: 4px;
}

.discord-call-stage-summary-label {
    color: #97a3b9;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.discord-call-stage-summary-value {
    color: #ffffff;
    font-size: 1.26rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.04em;
}

.discord-call-remote-fallback strong {
    font-size: 1.12rem;
}

.discord-call-remote-fallback span {
    color: #aab3c2;
}

.discord-call-local {
    position: absolute;
    right: 18px;
    bottom: 18px;
    width: 176px;
    height: 110px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35);
}

.discord-call-local[hidden] {
    display: none;
}

.discord-call-dock {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 14px 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.discord-call-peer {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.discord-call-peer-avatar {
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    border-radius: 50%;
    overflow: hidden;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, 0.06);
    transition: box-shadow 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.discord-call-peer-avatar img,
.discord-call-peer-avatar .discord-chat-userbar-avatar {
    width: 100%;
    height: 100%;
}

.discord-call-peer-copy {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.discord-call-peer-copy strong,
.discord-call-peer-copy span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-call-peer-copy span {
    color: #aab3c2;
    font-size: 0.84rem;
}

.discord-call-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 0 auto;
}

.discord-call-control {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08);
    color: #f4f7fb;
    cursor: pointer;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.discord-call-control svg {
    width: 18px;
    height: 18px;
}

.discord-call-control.is-off {
    background: #4b1f25;
    color: #ffb4b7;
}

.discord-call-control.is-active {
    background: #224b76;
    color: #b8ddff;
}

.discord-call-control.danger {
    background: #d83c3e;
    color: #fff;
}

.discord-chat-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 12px 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    background: #313338;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.22);
}

.discord-chat-header-main {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.discord-chat-back-button {
    width: 34px;
    height: 34px;
    flex-shrink: 0;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #2b2d31;
    color: #d6dcec;
    text-decoration: none;
}

.discord-chat-back-button:hover {
    background: #36383f;
    color: #fff;
}

.discord-chat-back-button svg {
    width: 18px;
    height: 18px;
}

.discord-chat-header-avatar-wrap {
    position: relative;
    width: 42px;
    height: 42px;
    flex-shrink: 0;
}

.discord-chat-header-avatar {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    object-fit: cover;
}

.discord-chat-header-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: linear-gradient(135deg, #5865f2, #7a84ff);
    color: #fff;
    font-weight: 800;
}

.discord-chat-header-avatar-wrap .discord-avatar-presence {
    right: -1px;
    bottom: -1px;
}

.discord-chat-header-actions {
    display: flex;
    gap: 10px;
}

.discord-header-icon {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: #b8c0cf;
    cursor: pointer;
}

.discord-header-icon svg {
    width: 16px;
    height: 16px;
}

.discord-header-icon:hover {
    background: #2b2d31;
    color: #fff;
}

.discord-chat-messages {
    display: grid;
    flex: 1 1 auto;
    align-content: start;
    gap: 10px;
    padding: 18px 24px;
    overflow: auto;
    min-height: 0;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    background: #1e1f22;
    font-family: "SF Pro Text", "Helvetica Neue", "Segoe UI", Arial, sans-serif;
}

.discord-chat-messages,
.discord-chat-contact-list,
.discord-server-members-scroll {
    scrollbar-width: thin;
    scrollbar-color: rgba(122, 133, 154, 0.66) rgba(20, 22, 28, 0.96);
}

.discord-chat-messages::-webkit-scrollbar,
.discord-chat-contact-list::-webkit-scrollbar,
.discord-server-members-scroll::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}

.discord-chat-messages::-webkit-scrollbar-track,
.discord-chat-contact-list::-webkit-scrollbar-track,
.discord-server-members-scroll::-webkit-scrollbar-track {
    background: rgba(20, 22, 28, 0.96);
    border-radius: 999px;
}

.discord-chat-messages::-webkit-scrollbar-thumb,
.discord-chat-contact-list::-webkit-scrollbar-thumb,
.discord-server-members-scroll::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, rgba(118, 130, 152, 0.78), rgba(90, 102, 124, 0.88));
    border: 3px solid rgba(20, 22, 28, 0.96);
    border-radius: 999px;
}

.discord-chat-messages::-webkit-scrollbar-thumb:hover,
.discord-chat-contact-list::-webkit-scrollbar-thumb:hover,
.discord-server-members-scroll::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, rgba(147, 159, 181, 0.86), rgba(109, 122, 146, 0.94));
}

.discord-chat-messages::-webkit-scrollbar-corner,
.discord-chat-contact-list::-webkit-scrollbar-corner,
.discord-server-members-scroll::-webkit-scrollbar-corner {
    background: rgba(20, 22, 28, 0.96);
}

.discord-chat-day-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10px 0 2px;
}

.discord-chat-day-divider span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #c2cada;
    font-size: 0.73rem;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.discord-chat-entry {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    max-width: min(76%, 760px);
}

.discord-chat-entry-avatar-wrap {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
}

.discord-chat-entry-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
}

.discord-chat-entry-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, #5865f2, #7a84ff);
    color: #fff;
    font-weight: 800;
}

.discord-chat-entry-body {
    display: grid;
    gap: 4px;
    min-width: 0;
    width: fit-content;
    max-width: calc(100% - 46px);
}

.discord-chat-entry-author {
    padding: 0 8px;
    color: #aeb8c8;
    font-size: 0.75rem;
    font-weight: 700;
}

.discord-chat-entry-bubble {
    display: grid;
    gap: 8px;
    padding: 10px 12px 8px;
    border-radius: 18px 18px 18px 4px;
    background: linear-gradient(180deg, #262a31, #20242b);
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
}

.discord-chat-entry-meta {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.discord-chat-entry-time,
.discord-chat-entry-meta span {
    font-size: 0.72rem;
    color: #9eacbf;
}

.discord-chat-entry-delivery {
    display: inline-flex;
    align-items: center;
    padding: 3px 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.discord-chat-entry-delivery.is-read {
    background: rgba(62, 207, 142, 0.16);
    color: #8af0bd;
}

.discord-chat-entry-delivery.is-unread {
    background: rgba(255, 255, 255, 0.07);
    color: #aeb8c8;
}

.discord-chat-entry-edited {
    color: #7f8897;
}

.discord-chat-entry-tools {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.discord-chat-entry-tool {
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08);
    color: #c6cedb;
    cursor: pointer;
}

.discord-chat-entry-tool:hover {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
}

.discord-chat-entry-tool.danger {
    color: #ff9aa1;
}

.discord-chat-entry-tool svg {
    width: 16px;
    height: 16px;
}

.discord-chat-entry-text {
    color: #edf3ff;
    line-height: 1.5;
    font-size: 0.95rem;
    font-weight: 500;
    letter-spacing: 0.01em;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.discord-dm-delete-modal-body {
    display: grid;
    gap: 14px;
}

.discord-dm-delete-preview {
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.05);
    color: #dce3ef;
    line-height: 1.5;
    word-break: break-word;
}

.discord-dm-delete-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.discord-chat-image-link {
    display: inline-block;
}

.discord-chat-image-frame {
    display: grid;
    gap: 8px;
    justify-items: start;
}

.discord-chat-image {
    display: block;
    width: auto;
    max-width: min(420px, 100%);
    max-height: 320px;
    border-radius: 14px;
    object-fit: cover;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.25);
}

.discord-chat-image-download {
    min-height: 32px;
    padding: 0 12px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.08);
    color: #eef2f8;
    font-size: 0.78rem;
    font-weight: 700;
}

.discord-chat-image-download:hover {
    background: rgba(255, 255, 255, 0.14);
}

.discord-chat-typing {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 18px 2px;
    color: #aeb8c8;
    font-size: 0.8rem;
    font-weight: 600;
    font-family: "SF Pro Text", "Helvetica Neue", "Segoe UI", Arial, sans-serif;
}

.discord-chat-typing[hidden] {
    display: none !important;
}

.discord-chat-typing-dots {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.discord-chat-typing-dots span {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    opacity: 0.4;
    animation: discordTypingPulse 1s infinite ease-in-out;
}

.discord-chat-typing-dots span:nth-child(2) {
    animation-delay: 0.16s;
}

.discord-chat-typing-dots span:nth-child(3) {
    animation-delay: 0.32s;
}

@keyframes discordTypingPulse {
    0%,
    80%,
    100% {
        transform: translateY(0);
        opacity: 0.35;
    }

    40% {
        transform: translateY(-2px);
        opacity: 0.95;
    }
}

.discord-chat-composer {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 8px 14px;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    background: #2b2d31;
}

.discord-composer-file-input {
    display: none;
}

.discord-chat-composer-field {
    min-width: 0;
    display: grid;
    gap: 8px;
    padding: 9px 12px;
    border-radius: 14px;
    background: #383a40;
}

.discord-chat-composer textarea {
    min-height: 24px;
    max-height: 120px;
    border-radius: 8px;
    background: transparent;
    border-color: transparent;
    padding: 0;
    resize: none;
    box-shadow: none;
    color: #f4f7fb;
    line-height: 1.4;
    font-family: "SF Pro Text", "Helvetica Neue", "Segoe UI", Arial, sans-serif;
    font-size: 0.96rem;
    font-weight: 500;
}

.discord-chat-composer textarea:focus {
    outline: none;
}

.discord-composer-icon {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: #b8c0cf;
    cursor: pointer;
}

.discord-composer-icon:hover {
    background: #383a40;
    color: #fff;
}

.discord-composer-icon svg {
    width: 16px;
    height: 16px;
}

.discord-composer-tools {
    display: flex;
    align-items: center;
    gap: 4px;
    justify-content: flex-end;
}

.discord-composer-preview {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 12px;
    background: rgba(17, 18, 20, 0.45);
}

.discord-composer-preview[hidden] {
    display: none;
}

.discord-composer-preview img {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    object-fit: cover;
}

.discord-composer-preview-meta {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.discord-composer-preview-meta strong,
.discord-composer-preview-meta span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-composer-preview-meta strong {
    font-size: 0.85rem;
}

.discord-composer-preview-meta span {
    color: #98a2b3;
    font-size: 0.78rem;
}

.discord-composer-preview-clear {
    margin-left: auto;
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 8px;
    background: #4a4d55;
    color: #fff;
    cursor: pointer;
}

.discord-composer-preview-clear:hover {
    background: #5a5e68;
}

.discord-send-button {
    min-width: 88px;
    height: 38px;
    padding: 0 14px;
    border-radius: 8px;
    background: #5865f2;
}

.discord-hidden-form {
    display: none;
}

.discord-context-menu {
    position: fixed;
    z-index: 90;
    width: 240px;
    padding: 10px;
    border-radius: 14px;
    background: #202225;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 22px 50px rgba(0, 0, 0, 0.45);
}

.discord-context-menu-title {
    padding: 8px 10px 10px;
    color: #f4f7fb;
    font-size: 0.9rem;
    font-weight: 700;
}

.discord-context-item,
.discord-context-subitem {
    width: 100%;
    border: 0;
    display: flex;
    align-items: center;
    padding: 10px;
    border-radius: 10px;
    background: transparent;
    color: #e9eef8;
    cursor: pointer;
    text-align: left;
    font: inherit;
}

.discord-context-item:hover,
.discord-context-subitem:hover {
    background: #2c2f33;
}

.discord-context-item[hidden] {
    display: none;
}

.discord-context-item.danger:hover {
    background: rgba(242, 63, 67, 0.16);
}

.discord-context-item.danger {
    color: #ff7b72;
}

.discord-context-item:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.discord-context-submenu {
    margin: 4px 0;
    padding: 6px;
    border-radius: 12px;
    background: #17191c;
}

.discord-context-empty {
    padding: 10px;
    color: #98a2b3;
    font-size: 0.82rem;
}

.discord-settings-modal {
    position: fixed;
    inset: 0;
    z-index: 120;
    display: grid;
    place-items: center;
    padding: 24px;
    background: rgba(4, 5, 8, 0.7);
    backdrop-filter: blur(8px);
}

.discord-settings-modal[hidden] {
    display: none !important;
}

.discord-settings-shell {
    width: min(1120px, 100%);
    height: min(760px, calc(100vh - 48px));
    border-radius: 24px;
    overflow: hidden;
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    background: #1d1e24;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.46);
}

.discord-settings-sidebar {
    padding: 16px 14px;
    background: #18191f;
    border-right: 1px solid rgba(255, 255, 255, 0.06);
    overflow: auto;
}

.discord-settings-sidebar-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 18px;
}

.discord-settings-sidebar-user {
    display: flex;
    align-items: center;
    gap: 10px;
}

.discord-settings-sidebar-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.discord-settings-sidebar-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #5865f2, #7a84ff);
    color: #fff;
    font-weight: 800;
}

.discord-settings-sidebar-user div {
    display: grid;
    gap: 3px;
}

.discord-settings-sidebar-user span {
    color: #98a2b3;
    font-size: 0.8rem;
}

.discord-settings-close {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    color: #c4cad6;
    cursor: pointer;
}

.discord-settings-nav-group {
    display: grid;
    gap: 8px;
    padding-top: 14px;
    margin-top: 14px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.discord-settings-nav-title {
    padding: 0 8px;
    color: #8e97a6;
    font-size: 0.76rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.discord-settings-nav-item {
    min-height: 40px;
    padding: 0 12px;
    border: 0;
    border-radius: 12px;
    display: flex;
    align-items: center;
    background: transparent;
    color: #d8deea;
    cursor: pointer;
    text-align: left;
    font: inherit;
}

.discord-settings-nav-item.active,
.discord-settings-nav-item:hover {
    background: #2b2d35;
    color: #fff;
}

.discord-settings-main {
    padding: 22px 26px;
    overflow: auto;
    background: #212228;
}

.discord-settings-panel {
    display: none;
    gap: 18px;
}

.discord-settings-panel.active {
    display: grid;
}

.discord-settings-panel-head h2 {
    margin: 0 0 6px;
    font-size: 1.4rem;
}

.discord-settings-panel-head p {
    margin: 0;
}

.discord-settings-form {
    display: grid;
    gap: 16px;
}

.discord-settings-account-card,
.discord-settings-section-card,
.discord-keybind-list {
    border-radius: 20px;
    overflow: hidden;
    background: #17181d;
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.discord-settings-account-banner {
    height: 90px;
    background: linear-gradient(180deg, #17306f, #1d2b57);
    background-size: cover;
    background-position: center;
}

.discord-settings-account-body {
    padding: 0 16px 16px;
    margin-top: -26px;
}

.discord-settings-account-top {
    display: grid;
    grid-template-columns: 90px minmax(0, 1fr);
    gap: 14px;
    align-items: end;
    margin-bottom: 16px;
}

.discord-settings-account-avatar-wrap {
    position: relative;
    width: 90px;
    height: 90px;
}

.discord-settings-account-avatar {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    object-fit: cover;
    border: 6px solid #17181d;
}

.discord-settings-account-avatar.fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #5865f2, #7a84ff);
    color: #fff;
    font-weight: 800;
    font-size: 1.5rem;
}

.discord-settings-account-avatar-wrap .discord-chat-userbar-status {
    width: 16px;
    height: 16px;
    border-width: 3px;
    border-color: #17181d;
}

.discord-settings-account-meta {
    display: grid;
    gap: 6px;
    padding-bottom: 6px;
}

.discord-settings-account-meta strong {
    font-size: 1.15rem;
}

.discord-settings-account-meta span {
    color: #a8b1c0;
}

.discord-settings-grid,
.discord-av-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.discord-settings-field {
    display: grid;
    gap: 8px;
}

.discord-settings-field-wide {
    grid-column: 1 / -1;
}

.discord-settings-field span {
    color: #c7cfdb;
    font-size: 0.82rem;
    font-weight: 700;
}

.discord-settings-field input,
.discord-settings-field select,
.discord-settings-field textarea {
    width: 100%;
    min-height: 44px;
    padding: 0 12px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: #23252c;
    color: #f4f7fb;
}

.discord-settings-field textarea {
    min-height: 110px;
    padding: 12px;
    resize: vertical;
}

.discord-settings-actions {
    display: flex;
    justify-content: flex-end;
}

.discord-av-test-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    align-items: center;
}

.discord-audio-meter {
    min-height: 42px;
    padding: 0 10px;
    border-radius: 12px;
    display: grid;
    grid-template-columns: repeat(32, 1fr);
    gap: 4px;
    align-items: center;
    background: #181a20;
}

.discord-audio-meter span {
    height: 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
}

.discord-audio-meter span.active {
    background: linear-gradient(180deg, #72db95, #2cbf6c);
}

.discord-settings-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.small-note {
    font-size: 0.78rem;
}

.discord-settings-section-card {
    padding: 16px;
}

.discord-camera-preview {
    width: 100%;
    max-height: 280px;
    border-radius: 16px;
    object-fit: cover;
    background: #111318;
}

.discord-keybind-row {
    min-height: 58px;
    padding: 0 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-keybind-row:last-child {
    border-bottom: 0;
}

.discord-keybind-button {
    min-width: 130px;
    height: 36px;
    padding: 0 12px;
    border-radius: 10px;
    border: 0;
    background: #2a2c33;
    color: #fff;
    cursor: pointer;
}

.discord-keybind-button.listening {
    background: #5865f2;
}

.discord-keybind-capture-modal {
    position: fixed;
    inset: 0;
    z-index: 130;
    display: grid;
    place-items: center;
    padding: 24px;
    background: rgba(5, 6, 10, 0.74);
    backdrop-filter: blur(10px);
}

.discord-keybind-capture-modal[hidden] {
    display: none !important;
}

.discord-keybind-capture-card {
    width: min(460px, 100%);
    display: grid;
    gap: 18px;
    padding: 22px;
    border-radius: 24px;
    background: #191b21;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 28px 60px rgba(0, 0, 0, 0.42);
}

.discord-keybind-capture-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.discord-keybind-capture-head h3 {
    margin: 0;
    font-size: 1.05rem;
}

.discord-keybind-capture-preview {
    min-height: 74px;
    display: grid;
    place-items: center;
    padding: 16px;
    border-radius: 18px;
    background: linear-gradient(180deg, #242834, #1b1e27);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #f4f7fb;
    font-size: 1.08rem;
    font-weight: 700;
}

.discord-keybind-capture-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

.discord-chat-placeholder {
    padding: 32px;
    border-radius: 24px;
    background: #2b2d31;
    box-shadow: none;
}

.discord-chat-placeholder.full-empty {
    margin: 24px;
    flex: 1 1 auto;
    align-self: stretch;
    display: grid;
    place-items: center;
}

@media (max-width: 900px) {
    .discord-settings-shell {
        grid-template-columns: 1fr;
        height: calc(100vh - 24px);
    }

    .discord-settings-sidebar {
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    }

    .discord-settings-grid,
    .discord-av-grid {
        grid-template-columns: 1fr;
    }

    .discord-chat-composer {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .discord-composer-tools {
        justify-content: flex-end;
    }

    .discord-call-local {
        width: 120px;
        height: 78px;
    }

    .discord-call-dock {
        flex-direction: column;
        align-items: stretch;
    }

    .discord-call-controls {
        justify-content: center;
    }
}


.discord-welcome-shell {
    flex: 1;
    min-height: 100%;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    display: grid;
    grid-template-rows: minmax(0, 1fr);
    align-content: stretch;
    gap: 0;
    padding: 0;
    background:
        radial-gradient(circle at 12% 18%, rgba(107, 232, 216, 0.14), transparent 24%),
        radial-gradient(circle at 88% 10%, rgba(255, 255, 255, 0.08), transparent 18%),
        linear-gradient(180deg, #23767d 0%, #1b5665 54%, #173a4d 100%);
}

.discord-welcome-hero,
.discord-welcome-updates-panel {
    width: 100%;
}

.discord-welcome-hero {
    position: relative;
    display: grid;
    min-height: 0;
    height: 100%;
    align-items: stretch;
}

.discord-welcome-hero-card {
    position: relative;
    overflow: hidden;
    min-height: 100%;
    height: 100%;
    padding: clamp(32px, 4.8vh, 60px) clamp(24px, 4.2vw, 60px) clamp(28px, 5vh, 52px);
    border-radius: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    gap: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.discord-welcome-hero-card::before,
.discord-welcome-hero-card::after {
    display: none;
}

.discord-welcome-hero-copy,
.discord-welcome-platforms {
    position: relative;
    z-index: 1;
}

.discord-welcome-center-stage {
    flex: 1;
    min-height: 0;
    display: grid;
    place-items: center;
    padding: 0 20px;
}

.discord-welcome-center-title {
    position: relative;
    display: inline-block;
    margin: 0;
    padding: 0 0 18px;
    font-size: clamp(2.45rem, 4.8vw, 4.05rem);
    font-weight: 650;
    letter-spacing: -0.055em;
    line-height: 0.98;
    text-align: center;
    text-wrap: balance;
    background-image: linear-gradient(180deg, #ffffff 0%, #f4ffff 42%, #c8efec 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    filter: drop-shadow(0 16px 28px rgba(6, 15, 18, 0.18));
}

.discord-welcome-center-title::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    width: min(190px, 58%);
    height: 1px;
    border-radius: 999px;
    transform: translateX(-50%);
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.84) 50%, transparent 100%);
    opacity: 0.78;
}

.discord-welcome-hero-copy {
    width: min(100%, 560px);
    position: relative;
    overflow: hidden;
    isolation: isolate;
    display: grid;
    justify-items: start;
    text-align: left;
    gap: 0;
    align-self: flex-start;
    padding: clamp(22px, 2.8vw, 30px) clamp(22px, 2.6vw, 34px);
    border-radius: 28px;
    background: linear-gradient(145deg, rgba(4, 8, 10, 0.97) 0%, rgba(7, 12, 16, 0.94) 52%, rgba(10, 18, 23, 0.84) 100%);
    border: 1px solid rgba(126, 234, 223, 0.14);
    box-shadow: 0 28px 60px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(14px);
}

.discord-welcome-hero-copy::before {
    content: '';
    position: absolute;
    right: -42px;
    bottom: -70px;
    width: 190px;
    height: 190px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(255, 122, 89, 0.28) 0%, rgba(255, 122, 89, 0.08) 46%, transparent 72%);
    pointer-events: none;
    z-index: 0;
}

.discord-welcome-hero-copy::after {
    content: '';
    position: absolute;
    left: 0;
    top: 18px;
    bottom: 18px;
    width: 4px;
    border-radius: 999px;
    background: linear-gradient(180deg, #8ff2e5 0%, rgba(255, 122, 89, 0.78) 100%);
    pointer-events: none;
    z-index: 0;
}

.discord-welcome-hero-copy > * {
    position: relative;
    z-index: 1;
}

.discord-welcome-kicker-row {
    margin: 0 0 14px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.discord-welcome-kicker {
    margin: 0;
    color: rgba(212, 255, 244, 0.88);
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.discord-welcome-status-pill {
    padding: 7px 12px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: rgba(240, 248, 252, 0.84);
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1;
}

.discord-welcome-status-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #7bf0de;
    box-shadow: 0 0 0 5px rgba(123, 240, 222, 0.14);
}

.discord-welcome-hero h1 {
    margin: 0;
    max-width: none;
    display: grid;
    justify-items: start;
    gap: 6px;
    line-height: 1.02;
    text-align: left;
}

.discord-welcome-hero-greeting {
    display: block;
    color: #ffffff;
    font-size: clamp(2rem, 2.95vw, 2.8rem);
    font-weight: 800;
    letter-spacing: -0.04em;
    text-transform: none;
    white-space: normal;
}

.discord-welcome-hero-name {
    display: block;
    max-width: 100%;
    color: #aeece5;
    font-size: clamp(1.12rem, 1.38vw, 1.42rem);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;
    white-space: normal;
}

.discord-welcome-copy {
    max-width: 100%;
    margin: 18px 0 0;
    color: rgba(241, 247, 250, 0.86);
    font-size: 0.94rem;
    line-height: 1.76;
}

.discord-welcome-pill-list {
    margin-top: 18px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.discord-welcome-pill {
    padding: 9px 12px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: rgba(240, 248, 252, 0.88);
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1;
}

.discord-welcome-pill::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: linear-gradient(180deg, #86f3e3 0%, #ff7a59 100%);
}

.discord-welcome-hero-actions {
    margin-top: 24px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 12px;
}

.discord-welcome-hero-actions .discord-welcome-hero-button {
    min-width: clamp(204px, 20vw, 248px);
}

.discord-welcome-hero-button,
.discord-welcome-slide-link {
    min-height: 54px;
    padding: 0 22px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.98rem;
    font-weight: 800;
    transition: transform 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.discord-welcome-hero-button {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: #ffffff;
}

.discord-welcome-hero-button.is-primary {
    background: linear-gradient(135deg, #ff7a59, #ff5a67);
    border-color: rgba(255, 255, 255, 0.16);
    box-shadow: 0 14px 28px rgba(255, 90, 103, 0.22);
}

.discord-welcome-hero-button:hover,
.discord-welcome-slide-link:hover {
    transform: translateY(-2px);
}

.discord-welcome-platforms {
    width: min(100%, 760px);
    display: grid;
    gap: 10px;
    justify-items: center;
    align-self: center;
    margin-top: auto;
}

.discord-welcome-platforms-title {
    margin: 0 0 8px;
    color: rgba(255, 255, 255, 0.82);
    font-size: clamp(0.86rem, 1.05vw, 0.98rem);
    font-weight: 400;
    letter-spacing: -0.01em;
    text-align: center;
}

.discord-welcome-platform-grid {
    width: auto;
    max-width: 100%;
    display: grid;
    grid-template-columns: repeat(4, auto);
    justify-content: center;
    gap: 14px 28px;
}

.discord-welcome-platform-card {
    min-height: auto;
    padding: 0;
    border-radius: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: transparent;
    border: 0;
    box-shadow: none;
    color: #ffffff;
    font-size: 0.98rem;
    font-weight: 600;
}

.discord-welcome-platform-icon {
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
}

.discord-welcome-platform-icon svg {
    width: 100%;
    height: 100%;
}

.discord-welcome-platform-label {
    line-height: 1;
}

.discord-welcome-social-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.discord-welcome-social-strip.is-vertical {
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}

.discord-welcome-social-icon-link {
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: rgba(6, 16, 20, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #e8f0ff;
    transition: transform 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}

.discord-welcome-social-icon-link svg {
    width: 16px;
    height: 16px;
}

.discord-welcome-social-icon-link:hover {
    background: rgba(8, 17, 22, 0.4);
    border-color: rgba(255, 255, 255, 0.18);
    transform: translateY(-2px);
}

.discord-welcome-social-icon-link.instagram {
    color: #ffd0de;
}

.discord-welcome-social-icon-link.facebook {
    color: #d9e6ff;
}

.discord-welcome-social-icon-link.youtube {
    color: #ffd4d0;
}

.discord-welcome-social-icon-link.linkedin {
    color: #cceeff;
}

.discord-welcome-showcase {
    width: min(100%, 980px);
    display: grid;
    grid-template-columns: minmax(120px, 0.72fr) minmax(280px, 1.12fr) minmax(120px, 0.74fr);
    align-items: end;
    justify-self: center;
    gap: 18px;
}

.discord-welcome-screen {
    position: relative;
    overflow: hidden;
    padding: 10px;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(16, 24, 34, 0.96), rgba(14, 18, 26, 0.98));
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 14px 24px rgba(8, 10, 14, 0.22);
}

.discord-welcome-screen.is-left {
    transform: rotate(-11deg) translateY(20px);
}

.discord-welcome-screen.is-center {
    min-height: clamp(220px, 29vh, 280px);
    transform: translateY(0);
}

.discord-welcome-screen.is-right {
    transform: rotate(11deg) translateY(22px);
}

.discord-welcome-screen-bar {
    display: flex;
    gap: 6px;
    margin-bottom: 8px;
}

.discord-welcome-screen-bar span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.24);
}

.discord-welcome-screen-body {
    display: grid;
    gap: 7px;
}

.discord-welcome-screen-body.is-dashboard,
.discord-welcome-screen-body.is-profile {
    min-height: 146px;
}

.discord-welcome-screen-metric-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}

.discord-welcome-screen-metric-grid span,
.discord-welcome-screen-stat-row span,
.discord-welcome-screen-feed span,
.discord-welcome-screen-list span {
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.08);
}

.discord-welcome-screen-metric-grid span {
    min-height: 34px;
}

.discord-welcome-screen-chart {
    min-height: 64px;
    border-radius: 12px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)),
        linear-gradient(90deg, transparent 0 8%, rgba(62, 214, 188, 0.65) 8% 12%, transparent 12% 22%, rgba(255, 108, 118, 0.65) 22% 26%, transparent 26% 36%, rgba(90, 163, 255, 0.65) 36% 40%, transparent 40% 100%);
}

.discord-welcome-screen-header-line {
    min-height: 8px;
    width: 48%;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
}

.discord-welcome-screen-stat-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
}

.discord-welcome-screen-stat-row span {
    min-height: 50px;
}

.discord-welcome-screen-map-card {
    min-height: 68px;
    border-radius: 12px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.01)),
        radial-gradient(circle at 30% 40%, rgba(255, 255, 255, 0.18) 0 2px, transparent 2px),
        linear-gradient(135deg, rgba(206, 225, 233, 0.96), rgba(219, 228, 236, 0.9));
}

.discord-welcome-screen-feed {
    display: grid;
    gap: 7px;
}

.discord-welcome-screen-feed span {
    min-height: 28px;
}

.discord-welcome-screen-cover {
    min-height: 58px;
    border-radius: 13px;
    background: linear-gradient(135deg, rgba(72, 112, 158, 0.86), rgba(22, 28, 40, 0.92));
}

.discord-welcome-screen-avatar {
    width: 48px;
    height: 48px;
    margin-top: -14px;
    border-radius: 15px;
    background: linear-gradient(135deg, rgba(255, 201, 101, 0.94), rgba(255, 130, 91, 0.88));
    box-shadow: 0 10px 16px rgba(0, 0, 0, 0.18);
}

.discord-welcome-screen-list {
    display: grid;
    gap: 6px;
}

.discord-welcome-screen-list span {
    min-height: 12px;
}

.discord-welcome-updates-panel {
    display: grid;
    gap: 8px;
}

.discord-welcome-updates-overview {
    display: block;
}

.discord-welcome-section-kicker {
    margin: 0 0 4px;
    color: #8de2bf;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.discord-welcome-updates-overview h2 {
    margin: 0;
    color: #f7f9fd;
    font-size: clamp(1.08rem, 1.6vw, 1.46rem);
    line-height: 1.12;
}

.discord-welcome-section-copy {
    max-width: 760px;
    margin: 5px 0 0;
    color: #c5cfdd;
    font-size: 0.82rem;
    line-height: 1.42;
}

.discord-welcome-announcement-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.88fr) minmax(330px, 1.12fr);
    gap: 14px;
    align-items: start;
}

.discord-welcome-announcement-feature,
.discord-welcome-announcement-feed {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
}

.discord-welcome-announcement-feature {
    min-height: 0;
    padding: 14px;
    display: grid;
    align-content: stretch;
    gap: 12px;
    background:
        radial-gradient(circle at 88% 16%, rgba(255, 126, 113, 0.16), transparent 24%),
        linear-gradient(160deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03));
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 14px 26px rgba(10, 12, 18, 0.12);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.discord-welcome-announcement-feature::after {
    content: '';
    position: absolute;
    right: -40px;
    bottom: -60px;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 122, 101, 0.12), transparent 68%);
    filter: blur(12px);
}

.discord-welcome-announcement-feature.is-video {
    grid-template-columns: 52px minmax(0, 1fr);
    align-items: stretch;
}

.discord-welcome-update-pill {
    width: max-content;
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(88, 101, 242, 0.14);
    color: #d6ddff;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.discord-welcome-video-rail {
    display: grid;
    align-content: start;
    justify-items: center;
    gap: 10px;
}

.discord-welcome-video-social-label {
    color: #cfd8e3;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.discord-welcome-video-main {
    display: grid;
    gap: 10px;
}

.discord-welcome-video-frame {
    position: relative;
    min-height: 0;
    height: clamp(156px, 23vh, 198px);
    border-radius: 14px;
    overflow: hidden;
    background: #0f1723;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.discord-welcome-video-frame::before {
    display: none;
}

.discord-welcome-video-embed {
    width: 100%;
    height: 100%;
    display: block;
    border: 0;
}

.discord-welcome-video-copy {
    display: grid;
    gap: 8px;
}

.discord-welcome-announcement-feature h3 {
    margin: 0;
    color: #f7f9fd;
    font-size: clamp(1.02rem, 1.3vw, 1.3rem);
    line-height: 1.12;
}

.discord-welcome-announcement-feature p {
    max-width: 52ch;
    margin: 0;
    color: #d6ddea;
    font-size: 0.82rem;
    line-height: 1.46;
}

.discord-welcome-update-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.discord-welcome-update-meta span {
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    background: rgba(10, 13, 18, 0.22);
    color: #d7dfec;
    font-size: 0.72rem;
}

.discord-welcome-slide-link {
    width: max-content;
    background: rgba(12, 16, 24, 0.44);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #ffffff;
}

.discord-welcome-announcement-feed {
    padding: 0;
    display: grid;
    align-content: start;
    gap: 6px;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.discord-welcome-announcement-feed-head {
    display: flex;
    align-items: center;
    gap: 12px;
}

.discord-welcome-announcement-feed-head strong {
    display: block;
    color: #f7f9fd;
    font-size: 0.92rem;
}

.discord-welcome-announcement-feed-head span {
    color: #c7cfdb;
    font-size: 0.76rem;
}

.discord-welcome-announcement-item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 9px 0;
    border-radius: 0;
    background: transparent;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.discord-welcome-announcement-item:last-child {
    border-bottom: 0;
}

.discord-welcome-announcement-icon {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(29, 123, 126, 0.96), rgba(25, 87, 116, 0.94));
    color: #ffffff;
    font-size: 0.72rem;
    font-weight: 800;
}

.discord-welcome-announcement-item strong {
    display: block;
    color: #f7f9fd;
    font-size: 0.88rem;
}

.discord-welcome-announcement-item span:last-child {
    color: #cad2de;
    font-size: 0.74rem;
}

@media (max-width: 1180px) {
    .discord-welcome-showcase {
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
    }

    .discord-welcome-screen.is-left,
    .discord-welcome-screen.is-right {
        display: none;
    }

    .discord-welcome-screen.is-center {
        width: min(100%, 560px);
        transform: none;
    }

    .discord-welcome-announcement-grid {
        grid-template-columns: 1fr;
    }

    .discord-welcome-announcement-feature.is-video {
        grid-template-columns: 1fr;
    }

    .discord-welcome-video-rail {
        grid-auto-flow: column;
        justify-content: flex-start;
    }

    .discord-welcome-video-social-label {
        writing-mode: initial;
        transform: none;
    }

    .discord-welcome-social-strip.is-vertical {
        flex-direction: row;
    }
}

@media (max-width: 820px) {
    .discord-welcome-shell {
        padding: 0;
        gap: 0;
    }

    .discord-welcome-hero {
        height: auto;
    }

    .discord-welcome-hero-card {
        min-height: 0;
        height: auto;
        padding: 26px 16px 22px;
        border-radius: 0;
        gap: 0;
    }

    .discord-welcome-center-stage {
        padding: 30px 12px 18px;
    }

    .discord-welcome-center-title {
        padding-bottom: 14px;
        font-size: clamp(1.9rem, 8vw, 2.7rem);
        letter-spacing: -0.05em;
    }

    .discord-welcome-hero-copy {
        width: min(100%, 100%);
        padding: 20px 18px;
        justify-items: center;
        text-align: center;
        align-self: center;
    }

    .discord-welcome-kicker-row,
    .discord-welcome-pill-list {
        justify-content: center;
    }

    .discord-welcome-hero h1 {
        max-width: none;
        gap: 3px;
        justify-items: center;
        text-align: center;
    }

    .discord-welcome-hero-greeting {
        font-size: clamp(1.52rem, 6vw, 2rem);
    }

    .discord-welcome-hero-name {
        max-width: none;
        font-size: clamp(1rem, 4.1vw, 1.2rem);
        white-space: normal;
    }

    .discord-welcome-copy {
        font-size: 0.9rem;
        line-height: 1.66;
    }

    .discord-welcome-hero-actions {
        justify-content: center;
    }

    .discord-welcome-platforms {
        width: min(100%, 100%);
        margin-top: 4px;
    }

    .discord-welcome-platform-grid {
        grid-template-columns: repeat(2, auto);
        gap: 12px 22px;
    }

    .discord-welcome-video-frame {
        height: clamp(150px, 24vh, 184px);
    }
}

@media (max-width: 640px) {
    .discord-welcome-hero-actions {
        width: 100%;
        grid-template-columns: 1fr;
        display: grid;
    }

    .discord-welcome-hero-button,
    .discord-welcome-slide-link {
        width: 100%;
    }

    .discord-welcome-platform-grid {
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, max-content));
        justify-content: center;
        gap: 12px 16px;
    }

    .discord-welcome-platform-card {
        min-height: auto;
        padding: 0;
        border-radius: 0;
        font-size: 0.92rem;
    }

    .discord-welcome-social-strip {
        justify-content: center;
    }

    .discord-welcome-social-strip.is-vertical {
        flex-direction: row;
    }

    .discord-welcome-screen.is-center {
        width: 100%;
        padding: 12px;
    }

    .discord-welcome-screen-stat-row {
        grid-template-columns: 1fr;
    }

    .discord-welcome-announcement-feature,
    .discord-welcome-announcement-feed {
        border-radius: 22px;
    }

    .discord-welcome-announcement-feature {
        padding: 14px;
    }

    .discord-welcome-announcement-item {
        padding: 8px 0;
    }

    .discord-welcome-announcement-icon {
        width: 32px;
        height: 32px;
        border-radius: 10px;
    }

    .discord-welcome-video-rail {
        grid-auto-flow: row;
        justify-content: center;
    }

    .discord-welcome-video-frame {
        height: 142px;
    }
}

.discord-modal {
    width: min(460px, calc(100vw - 32px));
    border: 0;
    border-radius: 18px;
    padding: 0;
    background: #2b2d31;
    color: #eef1f8;
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.45);
}

.discord-modal::backdrop {
    background: rgba(0, 0, 0, 0.62);
}

.discord-modal-close-row {
    display: flex;
    justify-content: flex-end;
    padding: 10px 10px 0;
}

.discord-modal-close {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 8px;
    background: #383a40;
    color: #eef1f8;
    cursor: pointer;
}

.discord-modal-body {
    padding: 6px 22px 22px;
}

.discord-modal-body h3 {
    margin: 0 0 8px;
    font-size: 1.2rem;
}

.discord-modal-body p {
    margin: 0 0 16px;
}

.discord-modal-form {
    display: grid;
    gap: 12px;
}

.discord-modal-form input {
    background: #1e1f22;
    border-color: rgba(255, 255, 255, 0.05);
}

.discord-server-hub-modal {
    width: min(720px, calc(100vw - 32px));
    background: linear-gradient(180deg, #1a1e27, #13161d);
}

.discord-server-hub-body {
    display: grid;
    gap: 16px;
    padding-top: 0;
}

.discord-server-hub-modal .field {
    display: grid;
    gap: 8px;
}

.discord-server-hub-modal .field label {
    color: #dfe6f4;
    font-size: 0.9rem;
    font-weight: 700;
}

.discord-server-hub-modal input,
.discord-server-hub-modal textarea {
    background: #151922;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 12px 14px;
    color: #f4f7fb;
}

.discord-server-hub-modal textarea {
    resize: vertical;
    min-height: 110px;
}

.discord-server-hub-modal .grid.two {
    gap: 12px;
}

.discord-modal-pending-wrap {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.modal-pending-list {
    margin-bottom: 0;
}

.discord-modal-empty {
    padding: 12px 14px;
    border-radius: 12px;
    background: #35373c;
}

.discord-modal {
    width: min(460px, calc(100vw - 32px));
    border: 0;
    border-radius: 18px;
    padding: 0;
    background: #2b2d31;
    color: #eef1f8;
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.45);
}

.discord-modal::backdrop {
    background: rgba(0, 0, 0, 0.62);
}

.discord-modal-close-row {
    display: flex;
    justify-content: flex-end;
    padding: 10px 10px 0;
}

.discord-modal-close {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 8px;
    background: #383a40;
    color: #eef1f8;
    cursor: pointer;
}

.discord-modal-body {
    padding: 6px 22px 22px;
}

.discord-modal-body h3 {
    margin: 0 0 8px;
    font-size: 1.2rem;
}

.discord-modal-body p {
    margin: 0 0 16px;
}

.discord-modal-form {
    display: grid;
    gap: 12px;
}

.discord-modal-form input {
    background: #1e1f22;
    border-color: rgba(255, 255, 255, 0.05);
}

.discord-sidebar {
    display: flex;
    flex-direction: column;
    background: #14161c;
    border-right: 1px solid rgba(255, 255, 255, 0.05);
    min-width: 0;
}

.discord-user-card {
    padding: 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-user-card-main {
    display: flex;
    align-items: center;
    gap: 12px;
}

.discord-user-meta {
    min-width: 0;
    display: grid;
    gap: 4px;
}

.discord-user-meta strong,
.discord-user-meta .muted {
    display: block;
    max-width: 13ch;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-profile-link {
    margin-left: auto;
    padding: 8px 10px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.06);
    color: #dfe6f4;
    font-size: 0.86rem;
}

.discord-profile-link:hover {
    background: rgba(255, 255, 255, 0.12);
}

.discord-user-avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
}

.discord-user-avatar-fallback {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #4f7cff, #7aa2ff);
    font-weight: 800;
}

.discord-user-card-actions {
    display: grid;
    gap: 6px;
}

.discord-search-button {
    margin: 12px;
    height: 40px;
    border-radius: 10px;
    border: 0;
    text-align: left;
    padding: 0 14px;
    color: #b7bfcd;
    background: #0f1116;
}

.discord-shortcuts {
    padding: 8px 8px 12px;
    display: grid;
    gap: 4px;
}

.discord-shortcut {
    display: block;
    padding: 10px 12px;
    border-radius: 8px;
    color: #c8d0df;
    font-size: 0.95rem;
}

.discord-shortcut.active,
.discord-shortcut:hover {
    background: rgba(255, 255, 255, 0.08);
}

.discord-sidebar-section {
    padding: 8px;
    overflow: auto;
}

.discord-sidebar-add-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    margin-bottom: 10px;
}

.discord-sidebar-add-form .button.small {
    height: 44px;
    padding: 0 16px;
    border-radius: 12px;
    background: linear-gradient(135deg, #4f7cff, #6c8dff);
    box-shadow: 0 12px 24px rgba(79, 124, 255, 0.2);
}

.discord-section-title,
.discord-group-title {
    color: #8b93a5;
    font-size: 0.74rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 8px 8px 6px;
}

.discord-dm-list {
    display: grid;
    gap: 4px;
}

.discord-dm-item,
.discord-friend-row,
.discord-active-card {
    border-radius: 10px;
    padding: 10px 12px;
    background: rgba(255, 255, 255, 0.02);
}

.discord-dm-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.discord-profile-bar {
    margin-top: auto;
    padding: 12px;
    background: #111318;
    display: flex;
    align-items: center;
    gap: 10px;
}

.discord-empty-state {
    margin-top: 16px;
    padding: 20px;
    border-radius: 14px;
    background: #191c22;
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-profile-actions {
    margin-left: auto;
    display: flex;
    gap: 8px;
    font-size: 0.85rem;
    color: #c9d0de;
}

.discord-avatar-dot {
    width: 14px;
    height: 14px;
    border-radius: 999px;
    background: #747f8d;
    box-shadow: 0 0 0 3px #1b1f27;
}

.discord-avatar-dot.online {
    background: #23a559;
}

.discord-avatar-dot.busy {
    background: #f23f43;
}

.discord-avatar-dot.offline,
.discord-avatar-dot.invisible {
    background: #747f8d;
}

.discord-main {
    display: grid;
    grid-template-rows: auto auto 1fr;
    background: #1f2128;
    min-width: 0;
}

.discord-main-topbar {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-main-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.discord-tab {
    padding: 8px 10px;
    border-radius: 8px;
    color: #c9d0de;
    font-size: 0.92rem;
}

.discord-tab.active {
    background: rgba(255, 255, 255, 0.08);
}

.discord-friend-groups {
    padding: 10px 18px 18px;
    overflow: auto;
}

.discord-server-panel {
    padding: 20px 18px 24px;
    overflow: auto;
}

.discord-server-panel-header {
    margin-bottom: 18px;
}

.discord-server-panel-header h2 {
    margin: 0 0 8px;
    font-size: 1.4rem;
}

.discord-server-panel-header p {
    margin: 0;
}

.discord-server-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
}

.discord-server-card {
    display: grid;
    gap: 18px;
    padding: 18px;
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02));
    border: 1px solid rgba(255, 255, 255, 0.06);
    transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}

.discord-server-card:hover {
    transform: translateY(-2px);
    border-color: rgba(79, 124, 255, 0.35);
    background: linear-gradient(180deg, rgba(79, 124, 255, 0.12), rgba(255, 255, 255, 0.03));
}

.discord-server-card-top {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.discord-server-avatar {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    object-fit: cover;
    flex-shrink: 0;
}

.discord-server-avatar-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #1f9d74, #40c694);
    font-weight: 800;
}

.discord-server-meta {
    min-width: 0;
    display: grid;
    gap: 6px;
}

.discord-server-meta strong,
.discord-server-meta .muted {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-server-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.discord-server-stat {
    padding: 12px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.04);
    text-align: center;
}

.discord-server-stat span {
    display: block;
    color: #8d96a8;
    font-size: 0.74rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 8px;
}

.discord-server-stat strong {
    font-size: 1.15rem;
}

.discord-server-channels {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.discord-channel-pill {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    color: #d8dfeb;
    font-size: 0.88rem;
}

.muted-pill {
    color: #98a2b3;
}

.discord-server-placeholder {
    padding: 24px;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    background: rgba(255, 255, 255, 0.03);
}

.discord-friend-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
    background: transparent;
    border: 1px solid transparent;
}

.discord-friend-row:hover {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.05);
}

.discord-friend-main {
    display: flex;
    align-items: center;
    gap: 12px;
}

.discord-friend-actions {
    display: flex;
    gap: 8px;
}

.mini-action {
    height: 34px;
    padding: 0 12px;
    border-radius: 8px;
    border: 0;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    cursor: pointer;
}

.link-action {
    display: inline-flex;
    align-items: center;
}

.discord-add-friend-card {
    margin-top: 16px;
    padding: 16px;
    border-radius: 14px;
    background: #191c22;
    border: 1px solid rgba(79, 124, 255, 0.18);
}

.discord-add-friend-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
}

.compact-empty-state {
    max-width: 460px;
}

.profile-avatar-editor {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
}

.profile-avatar-image,
.profile-avatar-fallback {
    width: 96px;
    height: 96px;
    border-radius: 50%;
}

.profile-avatar-image {
    object-fit: cover;
}

.profile-avatar-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    font-weight: 800;
    background: linear-gradient(135deg, #4f7cff, #7aa2ff);
}

.member-nav-wrap {
    display: grid;
    gap: 16px;
    padding: 18px 20px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: rgba(23, 26, 34, 0.94);
    box-shadow: var(--shadow);
}

.member-nav-profile {
    display: flex;
    align-items: center;
    gap: 12px;
}

.small-avatar {
    width: 44px;
    height: 44px;
    border-radius: 14px;
}

.member-nav-links,
.member-room-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.nav-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    color: #dfe6f4;
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.nav-chip.active,
.nav-chip:hover {
    background: rgba(79, 124, 255, 0.18);
    border-color: rgba(79, 124, 255, 0.3);
}

.room-chip {
    background: rgba(25, 179, 107, 0.08);
}

.sidebar,
.panel,
.auth-card,
.room-layout,
.metric-card,
.message-list,
.member-list,
.channel-list {
    background: rgba(23, 26, 34, 0.92);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}

.sidebar {
    padding: 20px;
    height: fit-content;
    position: sticky;
    top: 96px;
}

.admin-sidebar {
    background: rgba(20, 24, 34, 0.98);
}

.admin-profile-card {
    background: linear-gradient(135deg, rgba(79, 124, 255, 0.22), rgba(249, 112, 102, 0.12));
}

.profile-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px;
    background: linear-gradient(135deg, rgba(79, 124, 255, 0.18), rgba(25, 179, 107, 0.12));
    border-radius: 16px;
    margin-bottom: 18px;
}

.avatar {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    background: linear-gradient(135deg, var(--accent), #7aa2ff);
}

.nav-group + .nav-group {
    margin-top: 18px;
}

.nav-title {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--muted);
    margin-bottom: 10px;
}

.nav-link {
    display: block;
    padding: 11px 14px;
    border-radius: 12px;
    color: #d5d8e2;
    margin-bottom: 6px;
}

.nav-link:hover,
.nav-link.active {
    background: rgba(79, 124, 255, 0.14);
    color: var(--text);
}

.voice-toolbar {
    margin-top: 20px;
    display: flex;
    gap: 10px;
}

.icon-button,
.button {
    border: 0;
    cursor: pointer;
    border-radius: 12px;
    padding: 12px 16px;
    background: var(--accent);
    color: white;
    font-weight: 700;
}

.button.ghost,
.icon-button {
    background: rgba(255, 255, 255, 0.08);
}

.button.small {
    padding: 10px 12px;
    font-size: 0.9rem;
}

.button.danger {
    background: linear-gradient(135deg, #c83c4d, #e35d6a);
    color: #fff6f6;
}

.topbar-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.pill {
    display: inline-flex;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 0.82rem;
    background: rgba(255, 255, 255, 0.08);
}

.status-online {
    color: #b7ffd7;
    background: rgba(25, 179, 107, 0.18);
}

.status-offline {
    color: #cbd5e1;
    background: rgba(148, 163, 184, 0.18);
}

.status-busy {
    color: #ffd5d1;
    background: rgba(249, 112, 102, 0.18);
}

.content {
    display: grid;
    gap: 24px;
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
}

.admin-table th,
.admin-table td {
    text-align: left;
    padding: 12px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.admin-table th {
    color: var(--muted);
    font-size: 0.82rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.panel,
.auth-card,
.metric-card,
.message-list,
.member-list,
.channel-list {
    padding: 20px;
}

.panel h1,
.panel h2,
.auth-card h1,
.metric-card h3 {
    margin-top: 0;
}

.grid.two,
.cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.cards.three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.list,
.message-items,
.members,
.channels {
    display: grid;
    gap: 12px;
}

.list-item,
.message-item,
.member-item,
.channel-item {
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.02);
}

.message-item strong,
.member-item strong {
    display: block;
    margin-bottom: 6px;
}

form {
    display: grid;
    gap: 16px;
}

.field {
    display: grid;
    gap: 8px;
}

label {
    font-weight: 700;
    color: #dde3ef;
}

input,
select,
textarea {
    width: 100%;
    border-radius: 12px;
    border: 1px solid var(--border);
    background: #10141d;
    color: var(--text);
    padding: 13px 14px;
}

textarea {
    min-height: 120px;
    resize: vertical;
}

.alert {
    padding: 14px 16px;
    border-radius: 14px;
    margin-bottom: 18px;
}

.alert.error {
    background: rgba(249, 112, 102, 0.16);
    border: 1px solid rgba(249, 112, 102, 0.3);
    color: #ffd6d2;
}

.alert.success {
    background: rgba(25, 179, 107, 0.16);
    border: 1px solid rgba(25, 179, 107, 0.3);
    color: #d7ffea;
}

.auth-wrap {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 24px;
}

.auth-card {
    width: min(520px, 100%);
}

.footer {
    padding: 16px 24px 30px;
    text-align: center;
    color: var(--muted);
}

.room-layout {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr) 280px;
    gap: 20px;
    padding: 20px;
}

.room-shell {
    display: grid;
    gap: 20px;
}

.room-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    padding: 20px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: linear-gradient(135deg, rgba(79, 124, 255, 0.16), rgba(25, 179, 107, 0.08));
    box-shadow: var(--shadow);
}

.room-header-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.channel-group-title {
    font-size: 0.76rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--muted);
    margin-bottom: 8px;
}

.channel-card {
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    background: rgba(255, 255, 255, 0.03);
    margin-bottom: 10px;
}

.channel-card.active {
    background: rgba(79, 124, 255, 0.12);
    border-color: rgba(79, 124, 255, 0.24);
}

.message-composer {
    margin-top: 18px;
    display: grid;
    gap: 12px;
}

.inline-info {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    color: var(--muted);
    font-size: 0.9rem;
}

.room-section-title {
    margin: 0 0 14px;
}

.metric-card .metric {
    font-size: 2rem;
    font-weight: 800;
    margin-top: 10px;
}

.footer-note {
    color: var(--muted);
    font-size: 0.9rem;
}

@media (max-width: 1100px) {
    .layout,
    .member-layout,
    .room-layout,
    .discord-home-shell,
    .cards.three,
    .grid.two,
    .cards {
        grid-template-columns: 1fr;
    }

    .sidebar {
        position: static;
    }

    .room-header {
        flex-direction: column;
    }

    .discord-home-shell {
        grid-template-columns: 1fr;
        height: auto;
        overflow: visible;
    }

    .discord-dm-layout {
        grid-template-columns: 1fr;
    }

    .discord-server-app {
        height: auto;
        overflow: visible;
    }

    .member-page-menu {
        flex-wrap: wrap;
    }

    .discord-rail {
        flex-direction: row;
        overflow: auto;
        justify-content: flex-start;
    }

    .discord-dm-rail {
        flex-direction: row;
        justify-content: flex-start;
        padding: 14px;
        overflow: auto;
    }

    .discord-rail-app-icon {
        margin: 0 10px 0 0;
    }

    .discord-rail-stack,
    .discord-rail-bottom {
        flex-direction: row;
    }

    .discord-chat-sidebar,
    .discord-chat-main {
        min-height: auto;
    }

    .discord-sidebar-online-list {
        max-height: none;
    }

    .discord-welcome-shell {
        padding: 0;
        grid-template-rows: minmax(0, 1fr);
        gap: 0;
    }

    .discord-welcome-hero-inner,
    .discord-welcome-slide {
        grid-template-columns: 1fr;
    }

    .discord-welcome-glass-card,
    .discord-welcome-slide {
        padding: 28px 24px;
    }

    .discord-welcome-slide {
        padding-right: 76px;
    }

    .discord-welcome-slide-media {
        min-height: 220px;
    }

    .discord-welcome-slider-dots {
        right: 18px;
    }

    .discord-welcome-section-head {
        align-items: flex-start;
    }

    .discord-server-sidebar,
    .discord-server-main {
        min-height: auto;
    }

    .discord-chat-header,
    .discord-chat-composer {
        grid-template-columns: 1fr;
    }

}

.discord-modal-backdrop[hidden],
.discord-voice-state[hidden],
.discord-context-menu[hidden] {
    display: none !important;
}

.discord-server-shell {
    flex: 1;
    min-height: 100vh;
    position: relative;
}

.discord-server-alerts {
    position: fixed;
    top: 18px;
    right: 18px;
    z-index: 160;
    display: grid;
    gap: 10px;
    width: min(420px, calc(100vw - 24px));
}

.discord-server-alerts .alert {
    margin: 0;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
}

.discord-server-app {
    display: grid;
    grid-template-columns: 92px 308px minmax(0, 1fr) 258px;
    min-height: 100vh;
    height: 100vh;
    overflow: hidden;
    background: linear-gradient(180deg, #26292f, #202228);
}

.discord-server-rail {
    min-height: 100vh;
    padding: 18px 0 24px;
}

.discord-server-rail-top {
    display: grid;
    justify-items: center;
    gap: 14px;
}

.discord-server-rail .discord-rail-app-icon {
    margin-bottom: 0;
    width: 54px;
    height: 54px;
    border-radius: 18px;
    font-size: 1.05rem;
}

.discord-server-rail .discord-rail-plus {
    width: 54px;
    height: 54px;
    border-radius: 0;
    color: #f2f3f5;
    background: transparent;
    box-shadow: none;
    border: 0;
    padding: 0;
    appearance: none;
    -webkit-appearance: none;
}

.discord-server-rail .discord-rail-plus svg,
.discord-rail-plus svg {
    width: 22px;
    height: 22px;
    transition: transform 0.18s ease;
}

.discord-rail-roomdock {
    flex: 1;
    width: 100%;
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 14px;
    padding: 18px 0 0;
}

.discord-rail-roomcolumn {
    width: 100%;
    display: grid;
    justify-items: center;
    gap: 14px;
}

.discord-server-rail .discord-room-button {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    overflow: hidden;
    padding: 0;
    background: #2b2d31;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.04);
}

.discord-server-rail .discord-room-button span {
    font-size: 0.94rem;
}

.discord-room-button-center {
    box-shadow: 0 14px 26px rgba(88, 101, 242, 0.18), inset 0 0 0 1px rgba(255, 255, 255, 0.04);
}

.discord-rail-plus {
    color: #f2f3f5;
    background: transparent;
    box-shadow: none;
    border: 0;
    padding: 0;
    appearance: none;
    -webkit-appearance: none;
}

.discord-room-button.is-active,
.discord-room-button:hover {
    background: #5865f2;
    color: #fff;
    border-radius: 14px;
}

.discord-rail-button.discord-rail-plus:hover,
.discord-rail-button.discord-rail-plus:focus-visible,
.discord-server-rail .discord-rail-button.discord-rail-plus:hover,
.discord-server-rail .discord-rail-button.discord-rail-plus:focus-visible,
.discord-dm-rail .discord-rail-button.discord-rail-plus:hover,
.discord-dm-rail .discord-rail-button.discord-rail-plus:focus-visible {
    background: transparent;
    color: #ffffff;
    border-radius: 0;
    transform: none;
    box-shadow: none;
    outline: none;
}

.discord-rail-button.discord-rail-plus:hover svg,
.discord-rail-button.discord-rail-plus:focus-visible svg,
.discord-server-rail .discord-rail-button.discord-rail-plus:hover svg,
.discord-server-rail .discord-rail-button.discord-rail-plus:focus-visible svg,
.discord-dm-rail .discord-rail-button.discord-rail-plus:hover svg,
.discord-dm-rail .discord-rail-button.discord-rail-plus:focus-visible svg {
    transform: scale(1.18);
}

.discord-room-button {
    overflow: hidden;
    padding: 0;
    background: #2b2d31;
}

.discord-room-button img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.discord-server-sidebar {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto auto;
    background: linear-gradient(180deg, #2b2d31, #25272d);
    border-right: 1px solid rgba(255, 255, 255, 0.05);
    min-width: 0;
    min-height: 0;
}

.discord-server-header-copy {
    min-width: 0;
    display: grid;
    gap: 4px;
}

.discord-server-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    background: rgba(255, 255, 255, 0.02);
    color: #f4f7fb;
    text-align: left;
    cursor: pointer;
}

.discord-server-header-title {
    font-size: 1rem;
    font-weight: 800;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-server-header-subtitle,
.discord-server-header-caret {
    color: #98a2b3;
    font-size: 0.82rem;
}

.discord-server-header-subtitle {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-server-channel-scroll {
    overflow: auto;
    padding: 14px 10px 18px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 10px;
}

.discord-server-category-block {
    display: grid;
    gap: 6px;
}

.discord-server-category-title {
    padding: 4px 10px;
    color: #8b93a5;
    font-size: 0.74rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 800;
}

.discord-server-channel {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 10px;
    color: #c7d0de;
    transition: background 0.16s ease, color 0.16s ease;
}

.discord-server-channel:hover,
.discord-server-channel.is-active {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.discord-server-channel-icon {
    width: 26px;
    flex-shrink: 0;
    color: #99a4b5;
    font-weight: 800;
}

.discord-server-channel-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-server-channel-lock {
    margin-left: auto;
    color: #f6ad55;
    font-size: 0.76rem;
}

.discord-server-empty-state {
    padding: 16px;
    border-radius: 14px;
    color: #98a2b3;
    background: rgba(15, 17, 22, 0.45);
    border: 1px solid rgba(255, 255, 255, 0.04);
}

.discord-voice-state {
    margin: 0;
    padding: 11px 12px 12px;
    border-radius: 16px;
    background: #232428;
    border: 0;
    box-shadow: none;
    display: grid;
    gap: 10px;
    min-width: 0;
}

.discord-voice-state[data-voice-state="connecting"] {
    border-color: transparent;
}

.discord-voice-state[data-voice-state="connected"] {
    border-color: transparent;
}

.discord-voice-state[data-voice-state="disconnected"],
.discord-voice-state[data-voice-state="permission"] {
    border-color: transparent;
}

.discord-voice-state-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.discord-voice-state-heading {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.discord-voice-state-glyph {
    min-width: 68px;
    height: 30px;
    padding: 0 9px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: rgba(255, 255, 255, 0.08);
    color: #d7deea;
    flex-shrink: 0;
}

.discord-voice-state-glyph svg {
    width: 15px;
    height: 15px;
}

.discord-voice-state-glyph span {
    font-size: 0.67rem;
    font-weight: 800;
    white-space: nowrap;
}

.discord-voice-state-glyph[data-voice-latency="good"] {
    background: rgba(35, 165, 90, 0.16);
    color: #7be39f;
}

.discord-voice-state-glyph[data-voice-latency="medium"] {
    background: rgba(249, 191, 76, 0.16);
    color: #f6cf72;
}

.discord-voice-state-glyph[data-voice-latency="poor"] {
    background: rgba(242, 63, 67, 0.16);
    color: #ff9ea2;
}

.discord-voice-state-glyph[data-voice-latency="idle"] {
    background: rgba(255, 255, 255, 0.08);
    color: #b8c0ce;
}

.discord-voice-state-copy {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.discord-voice-state-label {
    display: block;
    color: #8f98a8;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.discord-voice-state-channel {
    display: block;
    font-weight: 800;
    font-size: 0.82rem;
    line-height: 1.2;
    color: #f4f7fb;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-voice-state-meta {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.discord-voice-state-status {
    display: block;
    color: #9ca5b5;
    font-size: 0.68rem;
    line-height: 1.35;
}

.discord-voice-state-elapsed {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    color: #dce4f3;
    font-size: 0.66rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.04em;
}

.discord-voice-state-elapsed[hidden] {
    display: none;
}

.discord-voice-state[data-voice-state="connecting"] .discord-voice-state-channel {
    color: #f4c46b;
}

.discord-voice-state[data-voice-state="connected"] .discord-voice-state-channel {
    color: #70dd8e;
}

.discord-voice-state[data-voice-state="disconnected"] .discord-voice-state-channel,
.discord-voice-state[data-voice-state="permission"] .discord-voice-state-channel {
    color: #ff9ea2;
}

.discord-voice-state-surface {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.discord-voice-state-surface-button {
    min-width: 0;
    min-height: 42px;
    padding: 0 12px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: rgba(49, 51, 56, 0.94);
    color: #d7deea;
    cursor: pointer;
    transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.discord-voice-state-surface-button svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.discord-voice-state-surface-button span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.7rem;
    font-weight: 700;
}

.discord-voice-state-surface-button:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    transform: translateY(-1px);
}

.discord-voice-state-surface-button.is-active {
    background: rgba(88, 101, 242, 0.16);
    border-color: rgba(88, 101, 242, 0.3);
    color: #f5f7fd;
}

.discord-voice-state-surface-button[disabled] {
    opacity: 0.45;
    cursor: not-allowed;
}

.discord-voice-state-ping {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    color: #d7deea;
    font-size: 0.72rem;
    font-weight: 700;
    white-space: nowrap;
}

.discord-voice-state-ping svg {
    width: 12px;
    height: 12px;
    color: #9cb3ff;
}

.discord-voice-state-actions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.discord-voice-state-toolbar {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
}

.discord-voice-state-leave {
    width: 34px;
    height: 34px;
    border: 1px solid rgba(242, 63, 67, 0.26);
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(242, 63, 67, 0.1);
    color: #ffb8bb;
    cursor: pointer;
}

.discord-voice-state-icon {
    width: 100%;
    min-width: 0;
    height: 38px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    background: rgba(49, 51, 56, 0.96);
    color: #bcc4d3;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.discord-voice-state-icon svg {
    width: 16px;
    height: 16px;
}

.discord-voice-state-leave svg {
    width: 16px;
    height: 16px;
}

.discord-voice-state-icon-slash {
    position: absolute;
    width: 18px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
    opacity: 0;
    transform: rotate(-45deg) scaleX(0.35);
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.discord-voice-state-icon.is-off {
    color: #7d8594;
}

.discord-voice-state-icon.is-off .discord-voice-state-icon-slash {
    opacity: 1;
    transform: rotate(-45deg) scaleX(1);
}

.discord-voice-state-icon.danger {
    color: #bcc4d3;
}

.discord-voice-state-icon.is-active {
    color: #f4f7fb;
    border-color: rgba(88, 101, 242, 0.28);
    background: rgba(88, 101, 242, 0.16);
}

.discord-voice-state-icon[disabled],
.discord-voice-state-leave[disabled] {
    opacity: 0.45;
    cursor: not-allowed;
}

.discord-voice-state-icon:hover,
.discord-voice-state-leave:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    transform: translateY(-1px);
}

.discord-voice-state-participants {
    display: grid;
    gap: 6px;
}

.discord-voice-state-participants .discord-voice-participant-row {
    padding: 8px 6px;
    border-radius: 10px;
    background: transparent;
}

.discord-voice-state-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.08);
    color: #f4f7fb;
    font-weight: 800;
    flex-shrink: 0;
    box-shadow: 0 0 0 0 rgba(35, 165, 90, 0);
    transition: box-shadow 0.18s ease, transform 0.18s ease;
}

.discord-voice-state-avatar.is-speaking {
    box-shadow: 0 0 0 2px rgba(35, 165, 90, 0.92), 0 0 0 5px rgba(35, 165, 90, 0.18);
    transform: translateY(-1px);
}

.discord-voice-state-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.discord-voice-participant-copy {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.discord-voice-participant-copy strong,
.discord-voice-participant-copy span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-voice-participant-copy span {
    color: #8e97a8;
    font-size: 0.76rem;
}

.discord-voice-state-empty {
    padding: 6px 2px 2px;
    color: #9199a9;
    font-size: 0.8rem;
}

.discord-server-userbar {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    background: #1f2128;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-server-usercopy {
    min-width: 0;
    display: grid;
}

.discord-server-usercopy strong,
.discord-server-usercopy span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-server-usercopy span {
    color: #98a2b3;
    font-size: 0.84rem;
}

.discord-server-useractions {
    margin-left: auto;
    display: flex;
    gap: 8px;
}

.discord-server-main {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    background: #313338;
}

.discord-server-main-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    background: rgba(49, 51, 56, 0.96);
}

.discord-server-main-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.discord-server-main-heading h1,
.discord-channel-intro-card h2,
.discord-voice-stage-meta h2,
.discord-server-welcome h2,
.discord-modal-head h2,
.discord-settings-sidebar-head h2,
.discord-settings-section h3,
.discord-server-members-head h2 {
    margin: 0;
}

.discord-server-main-heading p,
.discord-channel-intro-card p,
.discord-voice-stage-meta p,
.discord-server-welcome p,
.discord-settings-section p {
    margin: 4px 0 0;
    color: #98a2b3;
}

.discord-server-main-prefix,
.discord-server-welcome-icon {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    background: rgba(88, 101, 242, 0.16);
    color: #d9e3ff;
    flex-shrink: 0;
}

.discord-server-main-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.discord-server-main-body {
    min-height: 0;
    overflow: auto;
    padding: 24px;
    background:
        radial-gradient(circle at top, rgba(88, 101, 242, 0.08), transparent 24%),
        linear-gradient(180deg, rgba(49, 51, 56, 0.98), rgba(35, 37, 43, 0.98));
}

.discord-server-welcome,
.discord-server-text-view,
.discord-voice-stage {
    display: grid;
    gap: 18px;
}

.discord-server-welcome {
    place-items: center;
    text-align: center;
    min-height: 100%;
    padding: 48px 20px;
}

.discord-server-welcome-icon {
    width: 88px;
    height: 88px;
    border-radius: 28px;
    font-size: 1.5rem;
    background: linear-gradient(135deg, rgba(88, 101, 242, 0.35), rgba(25, 179, 107, 0.25));
}

.discord-channel-intro-card,
.discord-voice-stage-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 20px;
    border-radius: 20px;
    background: linear-gradient(160deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.discord-server-message-feed {
    display: grid;
    gap: 12px;
}

.discord-server-message-item {
    display: flex;
    gap: 14px;
    padding: 14px;
    border-radius: 16px;
    background: rgba(15, 17, 22, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.04);
}

.discord-server-message-copy {
    min-width: 0;
    display: grid;
    gap: 6px;
}

.discord-server-message-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.discord-server-message-meta span,
.discord-server-message-meta time {
    color: #98a2b3;
    font-size: 0.83rem;
}

.discord-server-message-body {
    color: #edf1f8;
    line-height: 1.55;
    word-break: break-word;
}

.discord-server-composer {
    display: grid;
    gap: 10px;
    padding: 16px;
    border-radius: 18px;
    background: rgba(15, 17, 22, 0.42);
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-server-composer textarea,
.discord-modal-card textarea,
.discord-modal-card input,
.discord-modal-card select,
.discord-settings-content textarea,
.discord-settings-content input,
.discord-settings-content select {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 12px 14px;
    color: #f4f7fb;
    background: #1b1e26;
}

.discord-server-composer-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: #98a2b3;
    font-size: 0.88rem;
}

.discord-voice-stage-meta,
.discord-voice-stage-actions {
    display: flex;
    align-items: center;
    gap: 16px;
}

.discord-voice-stage-actions {
    flex-wrap: wrap;
    justify-content: flex-end;
}

.discord-voice-participants {
    padding: 20px;
    border-radius: 20px;
    background: rgba(15, 17, 22, 0.32);
    border: 1px solid rgba(255, 255, 255, 0.04);
    display: grid;
    gap: 14px;
}

.discord-voice-participants-title {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #8b93a5;
    font-weight: 800;
}

.discord-voice-participants-list {
    display: grid;
    gap: 10px;
}

.discord-voice-participant-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.04);
}

.discord-voice-participant-copy {
    display: grid;
    gap: 2px;
    min-width: 0;
    flex: 1 1 auto;
}

.discord-voice-participant-copy span {
    color: #98a2b3;
    font-size: 0.84rem;
}

.discord-voice-participant-meta {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: max-content;
}

.discord-voice-participant-elapsed {
    color: #98a2b3;
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.discord-voice-participant-flags {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.discord-voice-participant-flag {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.24);
    color: #d6d9e0;
}

.discord-voice-participant-flag svg {
    width: 15px;
    height: 15px;
}

.discord-voice-participant-flag-slash {
    position: absolute;
    width: 16px;
    height: 2.5px;
    border-radius: 999px;
    background: #ff6f79;
    box-shadow: 0 0 0 1px rgba(18, 20, 26, 0.22);
    opacity: 0;
    transform: rotate(-45deg) scaleX(0.35);
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.discord-voice-participant-flag.is-off .discord-voice-participant-flag-slash {
    opacity: 1;
    transform: rotate(-45deg) scaleX(1);
}

.discord-server-members-panel {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    min-width: 0;
    background: linear-gradient(180deg, #26292f, #23262c);
    border-left: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-server-members-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 18px 14px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-server-members-head h2 {
    font-size: 0.86rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.discord-server-members-head span {
    color: #98a2b3;
    font-weight: 700;
    font-size: 0.77rem;
}

.discord-server-members-scroll {
    overflow: auto;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    padding: 12px 10px 18px;
}

.discord-server-member-card,
.discord-settings-member-row,
.discord-settings-permission-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
    border: 1px solid transparent;
}

.discord-server-member-copy,
.discord-settings-member-row > div:first-child {
    min-width: 0;
    display: grid;
    gap: 2px;
    flex: 1 1 auto;
}

.discord-server-member-copy span,
.discord-settings-member-row .muted {
    color: #98a2b3;
    font-size: 0.8rem;
    line-height: 1.25;
}

.discord-server-member-card:hover {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03));
    border-color: rgba(255, 255, 255, 0.08);
    transform: translateY(-1px);
}

.discord-server-member-card {
    cursor: pointer;
    transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

.discord-server-member-card:focus-visible,
.discord-server-member-card.is-open {
    outline: none;
    border-color: rgba(120, 168, 255, 0.42);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.18);
}

.discord-server-member-avatar-wrap {
    position: relative;
    flex-shrink: 0;
}

.discord-server-member-presence {
    position: absolute;
    right: -1px;
    bottom: -1px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 3px solid #23262c;
    background: #98a2b3;
}

.discord-server-member-presence.status-online {
    background: #23a55a;
}

.discord-server-member-presence.status-busy {
    background: #f23f43;
}

.discord-server-member-presence.status-offline {
    background: #80848e;
}

.discord-server-member-status {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
}

.discord-server-member-status.status-online {
    color: #55d286;
}

.discord-server-member-status.status-busy {
    color: #f97066;
}

.discord-server-member-status.status-offline {
    color: #98a2b3;
}

.discord-server-member-group {
    display: grid;
    gap: 6px;
}

.discord-server-member-group-title {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    padding: 2px 8px 0;
    color: color-mix(in srgb, var(--group-color, #98a2b3) 78%, #ffffff);
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.discord-server-member-group-title span {
    color: rgba(240, 244, 251, 0.7);
    font-size: 0.72rem;
    letter-spacing: 0.05em;
}

.discord-server-member-avatar {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.08);
}

.discord-server-member-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.discord-server-member-avatar.fallback span {
    font-weight: 800;
    color: #f5f7fb;
}

.discord-server-member-name-row {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.discord-server-member-name-row strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.93rem;
}

.discord-server-member-role-icon,
.discord-server-member-role-gem {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.discord-server-member-role-icon {
    border-radius: 4px;
    object-fit: cover;
}

.discord-server-member-role-gem {
    display: inline-flex;
    clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
    background: var(--role-color, #8b8fa3);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.16);
}

.discord-inline-mention {
    display: inline-flex;
    align-items: center;
    margin: 0 2px;
    padding: 2px 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--mention-color, #5865f2) 22%, rgba(255, 255, 255, 0.02));
    color: color-mix(in srgb, var(--mention-color, #5865f2) 78%, #ffffff);
    font-weight: 700;
}

.discord-inline-link {
    color: #8cc8ff;
    text-decoration: underline;
    text-decoration-color: rgba(140, 200, 255, 0.5);
    text-underline-offset: 2px;
    word-break: break-word;
}

.discord-inline-link:hover {
    color: #b7deff;
    text-decoration-color: currentColor;
}

.discord-server-member-popover {
    position: fixed;
    left: 12px;
    top: 12px;
    width: min(320px, calc(100vw - 24px));
    z-index: 80;
}

.discord-server-member-popover .discord-profile-popover-banner {
    background: linear-gradient(135deg, var(--member-accent, #5865f2), #141720 78%);
}

.discord-avatar-badge {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #4f7cff, #7aa2ff);
    color: #fff;
    font-weight: 800;
    overflow: hidden;
    flex-shrink: 0;
}

.discord-avatar-badge.has-image img,
.discord-avatar-badge img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.discord-role-pill-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.discord-role-pill {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--role-color, #8b8fa3) 18%, rgba(255, 255, 255, 0.02));
    border: 1px solid color-mix(in srgb, var(--role-color, #8b8fa3) 35%, rgba(255, 255, 255, 0.04));
    color: #eff3fb;
    font-size: 0.82rem;
    white-space: nowrap;
}

.discord-server-topbar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-server-topbar .discord-chat-userbar-trigger {
    grid-template-columns: 42px minmax(0, 1fr);
}

.discord-server-topbar .discord-chat-userbar-meta .muted {
    color: #98a2b3;
}

.discord-server-inline-icon-form {
    margin: 0;
}

.discord-server-inline-icon-form button {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #313338;
    color: #dbe2ef;
    border: 0;
    cursor: pointer;
}

.discord-server-inline-icon-form button:hover {
    background: #3a3d44;
    color: #fff;
}

.discord-server-inline-icon-form svg {
    width: 16px;
    height: 16px;
}

.discord-server-category-toolbar {
    display: flex;
    justify-content: flex-end;
    padding: 2px 0 6px;
}

.discord-server-category-group {
    display: grid;
    gap: 6px;
}

.discord-server-category-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-radius: 10px;
}

.discord-server-category-heading {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.discord-server-category-chevron {
    color: #8f98aa;
    font-size: 0.8rem;
}

.discord-server-category-title {
    padding: 0;
    color: #9ba5b7;
    font-size: 0.74rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 800;
}

.discord-server-category-add {
    flex-shrink: 0;
}

.discord-server-category-channels {
    display: grid;
    gap: 2px;
    padding-left: 14px;
}

.discord-server-channel-link {
    min-height: 34px;
    padding: 7px 10px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #bcc4d3;
    transition: background 0.16s ease, color 0.16s ease;
    width: 100%;
    border: 0;
    background: transparent;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.discord-server-channel-link:hover,
.discord-server-channel-link.is-active,
.discord-server-channel-link.is-context-open {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.discord-server-category-row.is-context-open,
.discord-permission-target-link.is-context-open {
    background: rgba(255, 255, 255, 0.06);
}

.discord-server-channel-link.is-disabled {
    opacity: 0.68;
}

.discord-server-channel-link.is-voice-live {
    background: rgba(35, 165, 90, 0.18);
    color: #effff5;
}

.discord-server-voice-inline {
    margin: 2px 0 8px 28px;
    padding: 0;
    border-radius: 0;
    background: transparent;
    border: 0;
    display: grid;
    gap: 4px;
}

.discord-voice-inline-members {
    display: grid;
    gap: 4px;
}

.discord-server-voice-inline .discord-voice-participant-row {
    padding: 4px 0;
    border-radius: 10px;
    background: transparent;
}

.discord-server-voice-inline .discord-voice-state-avatar {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    font-size: 0.72rem;
}

.discord-server-voice-inline .discord-voice-participant-copy strong {
    font-size: 0.86rem;
}

.discord-server-voice-inline .discord-voice-participant-copy span {
    font-size: 0.72rem;
}

.discord-voice-inline-empty {
    padding: 4px 8px 2px;
    color: #98a2b3;
    font-size: 0.74rem;
}

.discord-server-channel-icon {
    width: 18px;
    flex-shrink: 0;
    text-align: center;
    color: #8f98aa;
    font-weight: 900;
}

.discord-server-channel-icon.is-voice {
    color: #b6c5de;
}

.discord-server-channel-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 600;
}

.discord-server-channel-meta {
    margin-left: auto;
    color: #98a2b3;
    font-size: 0.74rem;
    white-space: nowrap;
}

.discord-server-empty-list {
    min-height: 120px;
}

.discord-server-channel-avatar {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    flex-shrink: 0;
}

.discord-server-channel-avatar.is-text {
    background: rgba(88, 101, 242, 0.16);
    color: #d9e1ff;
}

.discord-server-channel-avatar.is-voice {
    background: rgba(25, 179, 107, 0.16);
    color: #c2f4dd;
}

.discord-server-channel-avatar.is-header {
    width: 36px;
    height: 36px;
    border-radius: 12px;
}

.discord-room-empty-sidebar,
.discord-room-empty-main {
    margin: 8px 0;
}

.discord-room-empty-main {
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    margin: 8px;
    display: grid;
    place-items: center;
    text-align: center;
}

.discord-room-empty-main-card {
    max-width: 560px;
    display: grid;
    gap: 14px;
    justify-items: center;
}

.discord-room-empty-main-card h3,
.discord-room-empty-main-card p {
    margin: 0;
}

.discord-room-empty-main-card .discord-server-main-prefix {
    margin-bottom: 4px;
}

.discord-room-empty-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 14px;
}

.discord-room-chat-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    background: rgba(49, 51, 56, 0.96);
}

.discord-room-channel-meta {
    min-width: 0;
}

.discord-room-channel-meta strong {
    display: block;
    margin-bottom: 2px;
}

.discord-room-chat-messages {
    min-height: 0;
}

.discord-room-text-empty {
    min-height: 100%;
    display: grid;
    place-items: center;
    text-align: center;
    padding: 40px 20px;
}

.discord-room-text-empty-card {
    max-width: 520px;
    display: grid;
    gap: 12px;
}

.discord-room-text-empty-card h2,
.discord-room-text-empty-card p {
    margin: 0;
}

.discord-room-text-empty-card .discord-server-main-prefix {
    margin: 0 auto;
}

.discord-room-memberbar {
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    background: #232428;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
}

.discord-room-memberbar-main {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
}

.discord-room-memberbar .discord-chat-userbar-profile {
    min-width: 0;
}

.discord-room-memberbar .discord-chat-userbar-trigger {
    width: 100%;
}

.discord-room-memberbar .discord-chat-userbar-actions {
    gap: 8px;
}

.discord-room-memberbar .discord-chat-userbar-actions a,
.discord-room-memberbar .discord-chat-userbar-actions button {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #bcc4d3;
}

.discord-room-memberbar .discord-chat-userbar-actions a:hover,
.discord-room-memberbar .discord-chat-userbar-actions button:hover {
    background: rgba(255, 255, 255, 0.04);
    color: #fff;
}

.discord-room-memberbar .discord-chat-userbar-actions button {
    background: #313338;
    border: 0;
    cursor: pointer;
}

.discord-room-memberbar .discord-chat-userbar-actions button.is-active {
    background: rgba(88, 101, 242, 0.22);
    color: #f4f7fb;
}

.discord-room-memberbar .discord-chat-userbar-actions button[disabled] {
    opacity: 0.45;
    cursor: not-allowed;
}

.discord-room-edit-message-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

.discord-room-memberbar .discord-profile-popover {
    top: auto;
    bottom: calc(100% + 10px);
}

.discord-room-memberbar .discord-profile-hovercard {
    bottom: calc(100% + 10px);
}

.discord-chat-entry.is-own {
    margin-left: auto;
    justify-content: flex-end;
}

.discord-chat-entry.is-own .discord-chat-entry-body {
    justify-items: end;
    max-width: 100%;
}

.discord-chat-entry.is-own .discord-chat-entry-bubble {
    border-radius: 18px 18px 4px 18px;
    background: linear-gradient(180deg, #0f7e66, #0a6856);
    border-color: rgba(72, 255, 198, 0.18);
}

.discord-chat-entry.is-own .discord-chat-entry-text,
.discord-chat-entry.is-own .discord-chat-entry-time,
.discord-chat-entry.is-own .discord-chat-entry-meta span,
.discord-chat-entry.is-own .discord-chat-entry-edited {
    color: #eafff8;
}

.discord-chat-entry.is-own .discord-chat-entry-tool {
    background: rgba(255, 255, 255, 0.12);
    color: #f4fffb;
}

.discord-room-channel-placeholder {
    min-height: 100%;
}

.discord-room-voice-shell {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: 24px;
    display: grid;
    gap: 18px;
    background:
        radial-gradient(circle at top, rgba(88, 101, 242, 0.08), transparent 26%),
        linear-gradient(180deg, rgba(49, 51, 56, 0.98), rgba(35, 37, 43, 0.98));
}

.discord-room-voice-card,
.discord-room-voice-members {
    padding: 20px;
    border-radius: 20px;
    background: rgba(15, 17, 22, 0.32);
    border: 1px solid rgba(255, 255, 255, 0.05);
    display: grid;
    gap: 16px;
}

.discord-room-voice-copy,
.discord-room-voice-copy h3,
.discord-room-voice-copy p {
    margin: 0;
}

.discord-room-voice-copy {
    display: grid;
    gap: 6px;
}

.discord-room-voice-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.discord-category-permission-grid {
    margin: 12px 0 16px;
}

.discord-chat-main.discord-server-main > .discord-chat-composer {
    margin-top: auto;
}

.discord-server-context-form {
    margin: 0;
}

.discord-server-context-form button {
    width: 100%;
    border: 0;
    display: flex;
    align-items: center;
    padding: 10px;
    border-radius: 10px;
    background: transparent;
    color: #e9eef8;
    cursor: pointer;
    text-align: left;
    font: inherit;
}

.discord-server-context-form button:hover {
    background: #2c2f33;
}

.discord-modal-backdrop {
    position: fixed;
    inset: 0;
    padding: 32px;
    display: grid;
    place-items: center;
    background: rgba(6, 8, 12, 0.72);
    backdrop-filter: blur(12px);
    z-index: 120;
}

.discord-modal-card {
    width: min(720px, 100%);
    max-height: calc(100vh - 64px);
    overflow: auto;
    padding: 24px;
    border-radius: 24px;
    background: linear-gradient(180deg, #1a1e27, #13161d);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 40px 100px rgba(0, 0, 0, 0.48);
}

.discord-hub-card {
    width: min(620px, 100%);
}

.discord-modal-head,
.discord-settings-sidebar-head,
.discord-settings-role-head,
.discord-inline-copy,
.discord-settings-member-row,
.discord-settings-permission-row,
.discord-settings-filter-form,
.discord-inline-form {
    display: flex;
    align-items: center;
    gap: 12px;
}

.discord-modal-head,
.discord-settings-sidebar-head {
    justify-content: space-between;
    margin-bottom: 18px;
}

.discord-hub-tabs {
    display: flex;
    gap: 10px;
    margin-bottom: 18px;
}

.discord-hub-panel form,
.discord-settings-section,
.discord-settings-role-create,
.discord-settings-role-card,
.discord-settings-overview-grid,
.discord-settings-stats,
.discord-settings-member-list,
.discord-settings-role-list,
.discord-settings-permission-list {
    display: grid;
    gap: 14px;
}

.discord-settings-card {
    width: min(1080px, calc(100vw - 44px));
    display: grid;
    grid-template-columns: 228px minmax(0, 1fr);
    gap: 0;
    padding: 0;
    overflow: hidden;
}

.discord-settings-sidebar-nav {
    padding: 20px;
    background: #171a22;
    border-right: 1px solid rgba(255, 255, 255, 0.06);
    display: grid;
    align-content: start;
    gap: 8px;
}

.discord-settings-link {
    display: block;
    padding: 12px 14px;
    border-radius: 10px;
    color: #cbd4e3;
}

.discord-settings-link:hover,
.discord-settings-link.is-active {
    background: rgba(88, 101, 242, 0.14);
    color: #fff;
}

.discord-settings-content {
    overflow: auto;
    padding: 20px;
    background: #20232b;
}

.discord-settings-overview-grid {
    grid-template-columns: 180px minmax(0, 1fr);
    align-items: start;
}

.discord-room-avatar-preview {
    width: 180px;
    height: 180px;
    border-radius: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(88, 101, 242, 0.28), rgba(25, 179, 107, 0.18));
    font-size: 2.4rem;
    font-weight: 900;
    overflow: hidden;
}

.discord-room-avatar-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.discord-settings-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.discord-settings-danger-card {
    margin-top: 10px;
    padding: 18px;
    border-radius: 18px;
    border: 1px solid rgba(249, 112, 102, 0.32);
    background: linear-gradient(180deg, rgba(99, 26, 31, 0.46), rgba(51, 16, 20, 0.6));
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.discord-settings-danger-card strong {
    display: block;
    margin-bottom: 6px;
    color: #fff0ef;
}

.discord-settings-danger-card p {
    margin: 0;
    max-width: 560px;
}

.discord-stat-card {
    padding: 16px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.04);
    display: grid;
    gap: 6px;
    text-align: center;
}

.discord-stat-card strong {
    font-size: 1.4rem;
}

.discord-stat-card span {
    color: #98a2b3;
    text-transform: uppercase;
    font-size: 0.76rem;
    letter-spacing: 0.08em;
}

.discord-inline-copy input {
    flex: 1;
}

.discord-settings-member-row,
.discord-settings-permission-row {
    align-items: flex-start;
    justify-content: space-between;
}

.discord-settings-member-actions {
    display: grid;
    gap: 8px;
    justify-items: end;
}

.discord-inline-form {
    flex-wrap: wrap;
}

.discord-inline-form select,
.discord-inline-form input,
.discord-inline-copy input {
    min-width: 180px;
}

.discord-settings-role-card {
    padding: 18px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-settings-role-head {
    flex-wrap: wrap;
    align-items: end;
}

.small-field {
    max-width: 120px;
}

.discord-permission-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 14px;
}

.discord-role-manager-shell {
    grid-template-columns: 286px minmax(0, 1fr);
    align-items: start;
    gap: 14px;
}

.discord-role-manager-sidebar,
.discord-role-editor-panel,
.discord-permission-target-list-card {
    padding: 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-role-manager-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.discord-role-list-card,
.discord-role-editor-form,
.discord-role-toggle-list,
.discord-role-member-preview,
.discord-permission-layout,
.discord-permission-assignment-list {
    display: grid;
    gap: 12px;
}

.discord-role-list-card {
    max-height: 540px;
    overflow: auto;
    scrollbar-gutter: stable;
}

.discord-role-reorder-status {
    margin: -2px 0 14px;
    color: #98a2b3;
    font-size: 0.82rem;
}

.discord-role-reorder-status.is-error {
    color: #ff9aa2;
}

.discord-role-list-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border-radius: 14px;
    background: rgba(9, 11, 16, 0.2);
    border: 1px solid transparent;
    transition: border-color 0.18s ease, background 0.18s ease, opacity 0.18s ease;
}

.discord-role-list-row.is-active {
    border-color: rgba(88, 101, 242, 0.35);
    background: rgba(88, 101, 242, 0.12);
}

.discord-role-list-row.is-dragging {
    opacity: 0.48;
    border-color: rgba(88, 101, 242, 0.4);
    background: rgba(88, 101, 242, 0.18);
}

.discord-role-list-card.is-reordering {
    cursor: grabbing;
}

.discord-role-list-link,
.discord-permission-target-link,
.discord-permission-role-card {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.discord-role-list-copy,
.discord-permission-target-copy {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.discord-role-list-copy strong,
.discord-permission-target-copy strong {
    color: #f5f7fb;
}

.discord-role-list-copy span,
.discord-permission-target-copy span,
.discord-role-flag-card span,
.discord-role-toggle-row span,
.discord-role-appearance-copy span {
    color: #98a2b3;
    font-size: 0.84rem;
}

.discord-role-list-icon,
.discord-role-preview-badge,
.discord-permission-target-icon {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--role-color, #8b8fa3) 32%, rgba(255, 255, 255, 0.06));
    color: #ffffff;
    font-weight: 800;
    overflow: hidden;
}

.discord-role-list-icon.has-image,
.discord-role-preview-badge.has-image {
    background: rgba(255, 255, 255, 0.08);
}

.discord-role-list-icon img,
.discord-role-preview-badge img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.discord-role-list-actions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.discord-role-drag-handle {
    width: 32px;
    height: 32px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #98a2b3;
    background: rgba(255, 255, 255, 0.04);
    cursor: grab;
    user-select: none;
}

.discord-role-drag-handle:hover {
    color: #eef2fb;
    background: rgba(255, 255, 255, 0.1);
}

.discord-role-drag-handle svg {
    width: 16px;
    height: 16px;
}

.discord-role-list-card.is-reordering .discord-role-drag-handle {
    cursor: grabbing;
}

.discord-role-inline-form {
    margin: 0;
}

.discord-icon-action {
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.06);
    color: #e8edf9;
    cursor: pointer;
}

.discord-icon-action:hover {
    background: rgba(255, 255, 255, 0.12);
}

.discord-icon-action.danger {
    color: #ff8f98;
}

.discord-icon-action svg {
    width: 18px;
    height: 18px;
}

.discord-role-editor-panel {
    display: grid;
    gap: 14px;
}

.discord-role-editor-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
.discord-role-editor-head-actions {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.discord-role-editor-head h3,
.discord-role-manager-head h3 {
    margin-bottom: 6px;
}

.discord-role-editor-tabs {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px;
    border-radius: 16px;
    background: rgba(9, 11, 16, 0.28);
}

.discord-role-editor-tabs a,
.discord-role-editor-tabs span,
.discord-role-editor-tabs button {
    padding: 8px 12px;
    border-radius: 10px;
    color: #b6c0d3;
    font-weight: 700;
    font-size: 0.84rem;
}

.discord-role-editor-tabs button {
    border: 0;
    background: transparent;
    cursor: pointer;
    font: inherit;
}

.discord-role-editor-tabs .is-active {
    background: rgba(88, 101, 242, 0.18);
    color: #ffffff;
}

.discord-role-editor-tabs.is-static span {
    opacity: 0.7;
}

.discord-role-editor-tabs.is-static .is-active {
    opacity: 1;
}

.discord-role-editor-grid,
.discord-role-toggle-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.discord-role-appearance-card,
.discord-role-flag-card,
.discord-role-toggle-row,
.discord-permission-role-card,
.discord-settings-note-card {
    padding: 14px;
    border-radius: 16px;
    background: rgba(9, 11, 16, 0.22);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.discord-role-appearance-card,
.discord-role-toggle-row,
.discord-permission-role-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.discord-role-preview-badge {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    font-size: 1.1rem;
}

.discord-role-appearance-copy {
    display: grid;
    gap: 4px;
    flex: 1;
}

.discord-role-appearance-actions {
    display: grid;
    gap: 10px;
    justify-items: start;
}

.discord-role-flag-card,
.discord-role-toggle-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.discord-role-flag-card input {
    width: auto;
    margin: 0;
    flex-shrink: 0;
}

.discord-role-flag-card strong,
.discord-role-toggle-row strong,
.discord-role-appearance-copy strong {
    display: block;
    margin-bottom: 4px;
}

.discord-role-toggle-row.is-locked {
    opacity: 0.82;
}

.discord-toggle-switch {
    position: relative;
    display: inline-flex;
    flex-shrink: 0;
}

.discord-toggle-switch-input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.discord-toggle-switch-track {
    display: inline-grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
    min-width: 126px;
    padding: 4px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.discord-toggle-switch-option {
    padding: 8px 12px;
    border-radius: 999px;
    text-align: center;
    font-size: 0.76rem;
    font-weight: 800;
    color: #98a2b3;
    transition: background 0.18s ease, color 0.18s ease;
}

.discord-toggle-switch-input:not(:checked) + .discord-toggle-switch-track .is-off,
.discord-toggle-switch-input:checked + .discord-toggle-switch-track .is-on {
    background: rgba(88, 101, 242, 0.22);
    color: #ffffff;
}

.discord-toggle-switch-input:disabled + .discord-toggle-switch-track {
    opacity: 0.7;
    cursor: not-allowed;
}

.discord-role-member-preview {
    padding: 18px;
    border-radius: 18px;
    background: rgba(9, 11, 16, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.discord-role-member-preview-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.discord-role-member-preview-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.discord-role-member-chip {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
}

.discord-role-member-chip img,
.discord-role-member-chip span {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(88, 101, 242, 0.18);
    object-fit: cover;
    font-size: 0.78rem;
    font-weight: 800;
}

.discord-permission-layout {
    grid-template-columns: 252px minmax(0, 1fr);
    align-items: start;
}

.discord-permission-target-list-card {
    display: grid;
    gap: 10px;
}

.discord-permission-target-link {
    padding: 12px;
    border-radius: 16px;
    background: rgba(9, 11, 16, 0.2);
    border: 1px solid transparent;
}

.discord-permission-target-link.is-active {
    border-color: rgba(88, 101, 242, 0.35);
    background: rgba(88, 101, 242, 0.12);
}

.discord-permission-target-icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    font-size: 0.95rem;
}

.discord-permission-target-icon.is-text {
    background: rgba(68, 169, 255, 0.18);
}

.discord-permission-target-icon.is-voice {
    background: rgba(52, 199, 123, 0.18);
}

.discord-permission-target-icon.is-category {
    background: rgba(255, 193, 7, 0.18);
}

.discord-permission-role-switch {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.discord-permission-role-switch select {
    min-width: 180px;
}

.discord-settings-note-card {
    color: #ffd7a3;
}

.checkbox-inline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #dfe6f4;
}

.checkbox-inline input {
    width: auto;
    margin: 0;
}
.discord-role-delete-button {
    border-color: rgba(240, 84, 84, 0.24);
    background: rgba(240, 84, 84, 0.08);
    color: #ffb5bb;
}
.discord-role-delete-button:hover {
    background: rgba(240, 84, 84, 0.16);
    color: #ffd3d7;
}

#serverContextMenu {
    position: fixed;
    min-width: 220px;
    padding: 8px;
    border-radius: 14px;
    background: #111319;
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 0 22px 54px rgba(0, 0, 0, 0.45);
    z-index: 130;
}

#serverContextMenu button {
    width: 100%;
    border: 0;
    padding: 10px 12px;
    border-radius: 10px;
    text-align: left;
    background: transparent;
    color: #eaf0fb;
    cursor: pointer;
}

#serverContextMenu button:hover {
    background: rgba(255, 255, 255, 0.08);
}

@media (max-width: 1360px) {
    .discord-server-app {
        grid-template-columns: 92px 286px minmax(0, 1fr);
    }

    .discord-server-members-panel {
        display: none;
    }
}

@media (max-width: 1100px) {
    .discord-server-rail {
        flex-direction: column;
        justify-content: flex-start;
        overflow: hidden;
        padding: 18px 0 24px;
    }

    .discord-server-rail .discord-rail-app-icon {
        margin-right: 0;
    }

    .discord-server-rail-top,
    .discord-rail-roomdock,
    .discord-rail-roomcolumn {
        width: 100%;
        display: grid;
        justify-items: center;
    }
}

@media (max-width: 980px) {
    .discord-server-app,
    .discord-settings-card {
        grid-template-columns: 1fr;
    }

    .discord-server-sidebar,
    .discord-settings-sidebar-nav {
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    }

    .discord-settings-overview-grid,
    .discord-settings-stats,
    .discord-permission-grid,
    .discord-role-manager-shell,
    .discord-permission-layout,
    .discord-role-editor-grid,
    .discord-role-toggle-card-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .discord-modal-backdrop {
        padding: 14px;
    }

    .discord-chat-messages {
        padding: 16px 14px;
    }

    .discord-chat-entry {
        max-width: 92%;
    }

    .discord-chat-entry-bubble {
        padding: 9px 11px 7px;
    }

    .discord-chat-image {
        max-width: min(280px, 100%);
    }

    .discord-chat-typing {
        padding: 8px 14px 2px;
    }

    .discord-room-chat-header,
    .discord-room-voice-actions,
    .discord-room-empty-actions,
    .discord-server-category-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .discord-chat-main.discord-server-main > .discord-chat-composer {
        grid-template-columns: 1fr;
    }

    .discord-call-stage-participants {
        gap: 14px;
    }

    .discord-call-stage-participant,
    .discord-call-remote-avatar-wrap {
        width: 92px;
        height: 92px;
    }

    .discord-welcome-hero h1 {
        max-width: none;
        font-size: clamp(2rem, 8vw, 3rem);
    }

    .discord-welcome-shell {
        padding: 0;
        gap: 0;
    }

    .discord-welcome-glass-card,
    .discord-welcome-slide {
        padding: 22px 18px;
        border-radius: 24px;
    }

    .discord-welcome-slide {
        padding: 22px 52px 20px 18px;
    }

    .discord-welcome-slide-media {
        min-height: 180px;
    }

    .discord-welcome-slider-dots {
        right: 14px;
        gap: 10px;
    }

    .discord-welcome-slider-dot {
        width: 12px;
        height: 12px;
    }

    .discord-server-main-header,
    .discord-channel-intro-card,
    .discord-voice-stage-card,
    .discord-server-userbar {
        flex-direction: column;
        align-items: flex-start;
    }

    .discord-server-main-actions,
    .discord-server-useractions,
    .discord-voice-state-actions,
    .discord-inline-copy,
    .discord-inline-form {
        width: 100%;
    }

    .discord-server-useractions,
    .discord-inline-copy,
    .discord-inline-form {
        flex-direction: column;
        align-items: stretch;
    }

    .discord-server-main-body,
    .discord-settings-content,
    .discord-modal-card {
        padding: 18px;
    }
}

/* Sunucu kurucusunun isminin yanindaki tac */
.discord-owner-crown {
    display: inline-block;
    margin-left: 4px;
    font-size: 0.85em;
    line-height: 1;
    vertical-align: baseline;
}

/* Ses kanali hoparlor ikonu */
.voice-channel-svg {
    display: block;
    width: 18px;
    height: 18px;
    margin: 0 auto;
}

.discord-server-channel-avatar.is-header .voice-channel-svg {
    width: 20px;
    height: 20px;
}

/* Dosya secme alanlari: "Dosya Sec" butonu kutunun ortasinda */
input[type="file"] {
    min-height: 44px;
    padding: 7px 10px;
    line-height: 28px;
    font-size: 0.9rem;
    color: #aeb6c4;
    cursor: pointer;
}

input[type="file"]::file-selector-button {
    height: 28px;
    margin: 0 12px 0 0;
    padding: 0 14px;
    border: 0;
    border-radius: 8px;
    background: #5865f2;
    color: #ffffff;
    font: inherit;
    font-weight: 700;
    line-height: 28px;
    vertical-align: middle;
    cursor: pointer;
}

input[type="file"]::file-selector-button:hover {
    background: #4752c4;
}

/* Sunucu ayarlari > Davetler */
.discord-invite-create-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
    gap: 12px;
    align-items: end;
    margin-bottom: 18px;
}

.discord-invite-create-form .field {
    margin: 0;
}

.discord-invite-list {
    display: grid;
    gap: 10px;
}

.discord-invite-row {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    padding: 12px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.discord-invite-row.is-expired {
    opacity: 0.6;
}

.discord-invite-main {
    flex: 1;
    min-width: 0;
    display: grid;
    gap: 6px;
}

.discord-invite-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 14px;
    font-size: 0.82rem;
}

@media (max-width: 640px) {
    .discord-invite-create-form {
        grid-template-columns: 1fr;
    }

    .discord-invite-row {
        flex-direction: column;
        align-items: stretch;
    }
}

/* "+" menusu > Topluluk sunuculari */
.discord-community-list {
    display: grid;
    gap: 8px;
    max-height: 360px;
    overflow-y: auto;
}

.discord-community-row {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
}

.discord-community-avatar {
    width: 44px;
    height: 44px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 14px;
    background: #5865f2;
    color: #ffffff;
    font-weight: 800;
}

.discord-community-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.discord-community-copy {
    flex: 1;
    min-width: 0;
    display: grid;
    gap: 2px;
}

.discord-community-copy span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #c7cfdb;
    font-size: 0.85rem;
}

/* Kanal listesinin altindaki "+ Kategori olustur" */
.discord-server-add-category {
    display: block;
    width: calc(100% - 16px);
    margin: 10px 8px 4px;
    padding: 8px 10px;
    border: 1px dashed rgba(255, 255, 255, 0.16);
    border-radius: 10px;
    background: transparent;
    color: #8f98aa;
    font: inherit;
    font-size: 0.85rem;
    font-weight: 700;
    text-align: left;
    cursor: pointer;
}

.discord-server-add-category:hover {
    border-color: rgba(88, 101, 242, 0.6);
    color: #dbdee1;
    background: rgba(88, 101, 242, 0.08);
}

/* Kullanici karti (birinin adina tiklayinca) */
.luc-card {
    position: fixed;
    z-index: 10003;
    max-width: calc(100vw - 24px);
    max-height: calc(100vh - 24px);
    overflow-y: auto;
    border-radius: 14px;
    background: #111214;
    color: #dbdee1;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
    font: 500 14px/1.35 system-ui, -apple-system, "Segoe UI", sans-serif;
}

.luc-loading {
    padding: 18px;
    color: #b5bac1;
}

.luc-banner {
    height: 72px;
    border-radius: 14px 14px 0 0;
    background: linear-gradient(135deg, #5865f2, #3ba55c) center / cover no-repeat;
}

.luc-close {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.45);
    color: #ffffff;
    font-size: 18px;
    line-height: 28px;
    cursor: pointer;
}

.luc-head {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    margin-top: -32px;
    padding: 0 16px;
}

.luc-avatar {
    position: relative;
    width: 72px;
    height: 72px;
    flex-shrink: 0;
    border: 5px solid #111214;
    border-radius: 50%;
    background: #5865f2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 26px;
    font-weight: 800;
}

.luc-avatar img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

.luc-avatar i {
    position: absolute;
    right: -2px;
    bottom: -2px;
    width: 16px;
    height: 16px;
    border: 3px solid #111214;
    border-radius: 50%;
}

.luc-names {
    min-width: 0;
    display: grid;
    padding-bottom: 6px;
}

.luc-names strong {
    color: #ffffff;
    font-size: 17px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.luc-names span,
.luc-since {
    color: #b5bac1;
    font-size: 12.5px;
}

.luc-bio {
    margin: 10px 16px 0;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.luc-since {
    margin: 8px 16px 0;
}

.luc-notice {
    margin: 10px 16px 0;
    padding: 8px 10px;
    border-radius: 8px;
    background: rgba(35, 165, 90, 0.16);
    color: #7ee2a8;
    font-size: 13px;
}

.luc-notice.is-error {
    background: rgba(218, 55, 60, 0.16);
    color: #ff8a8d;
}

.luc-note {
    color: #b5bac1;
    font-size: 13px;
}

.luc-actions {
    display: grid;
    gap: 8px;
    padding: 14px 16px 16px;
}

.luc-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.luc-btn {
    width: 100%;
    padding: 9px 12px;
    border: 0;
    border-radius: 8px;
    background: #2b2d31;
    color: #dbdee1;
    font: inherit;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
}

.luc-btn:hover {
    background: #35373c;
}

.luc-btn.is-primary {
    background: #5865f2;
    color: #ffffff;
}

.luc-btn.is-primary:hover {
    background: #4752c4;
}

.luc-btn.is-danger {
    background: transparent;
    color: #f23f43;
    border: 1px solid rgba(242, 63, 67, 0.4);
}

.luc-btn.is-danger:hover {
    background: #da373c;
    color: #ffffff;
}

.luc-btn.is-sub {
    text-align: left;
    font-weight: 600;
}

.luc-invite-list {
    display: grid;
    gap: 4px;
    padding: 6px;
    border-radius: 8px;
    background: #1e1f22;
}

.luc-link {
    color: #00a8fc;
    font-size: 13px;
    text-align: center;
    text-decoration: none;
}

.luc-link:hover {
    text-decoration: underline;
}

/* Uye listesi: cevrimdisi uyeler soluk */
.discord-server-member-group.is-offline .discord-server-member-card {
    opacity: 0.5;
}

.discord-server-member-group.is-offline .discord-server-member-card:hover {
    opacity: 1;
}

[data-user-card] {
    cursor: pointer;
}

/* Ses kanali kisi limiti kaydiricisi */
input[type="range"] {
    width: 100%;
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    accent-color: #5865f2;
    cursor: pointer;
}

/* Goruntulu arama: karsinin goruntusu kesilmeden, tamami gorunsun
   (eskiden "cover" ile tablet dikeyken ust/alt kesiliyor, goruntu yakinlasmis gibi duruyordu) */
.discord-call-remote video {
    object-fit: contain;
    background: #050608;
}

/* Kendi on kamera onizlemen ayna gibi */
.discord-call-local.is-mirrored,
.discord-camera-preview.is-mirrored {
    transform: scaleX(-1);
}

.discord-camera-preview {
    object-fit: contain;
}

/* Admin paneli: kapasite cubuklari ve gunluk aktif kullanici grafigi */
.metric-sub {
    font-size: 0.5em;
    color: #8f98aa;
    font-weight: 600;
}

.capacity-bar {
    height: 8px;
    margin-top: 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    overflow: hidden;
}

.capacity-bar span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #5865f2;
}

.dau-chart {
    display: grid;
    grid-template-columns: repeat(14, minmax(0, 1fr));
    gap: 6px;
    height: 180px;
    margin-top: 12px;
    padding: 12px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.03);
}

.dau-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    min-width: 0;
}

.dau-bar {
    width: 100%;
    max-width: 28px;
    min-height: 2px;
    border-radius: 6px 6px 2px 2px;
    background: #5865f2;
}

.dau-value,
.dau-day {
    font-size: 0.72rem;
    color: #8f98aa;
}

/* ==========================================================================
   Bulusma (meet.php) - sade mekanik gorunum; tasarim sonra degisecek
   ========================================================================== */

.meet-start-card h2 {
    font-size: 1rem;
    margin: 18px 0 10px;
}

.meet-start-form,
.meet-join-form {
    display: grid;
    gap: 10px;
}

.meet-join-form {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--border);
}

.meet-join-row {
    display: flex;
    gap: 8px;
}

.meet-join-row input {
    flex: 1;
    min-width: 0;
}

.meet-plan-note,
.meet-login-hint,
.meet-eyebrow {
    margin: 0;
    font-size: 0.9rem;
}

.meet-login-hint a {
    color: var(--accent);
}

.meet-back-link {
    display: inline-block;
    margin-top: 16px;
}

.meet-message-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 18px;
}

.meet-message-card {
    text-align: center;
}

/* display: grid/flex kurallari hidden ozelligini ezmesin */
.meet-shell [hidden] {
    display: none !important;
}

.meet-body {
    height: 100vh;
    overflow: hidden;
}

.meet-shell {
    display: flex;
    flex-direction: column;
    height: 100vh;
}

.meet-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 16px;
    border-bottom: 1px solid var(--border);
    background: var(--panel);
}

.meet-topbar-title {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.meet-topbar-title strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.meet-topbar-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.meet-badge {
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(79, 124, 255, 0.18);
    color: #c7d4ff;
    font-size: 0.75rem;
    font-weight: 700;
}

.meet-timer {
    font-variant-numeric: tabular-nums;
    color: var(--muted);
    font-size: 0.9rem;
}

.meet-timer.is-warning {
    color: var(--warning);
    font-weight: 700;
}

.meet-stage-screen {
    flex: 1;
    display: grid;
    place-items: center;
    padding: 24px 16px;
}

.meet-stage-card {
    width: min(440px, 100%);
    padding: 32px 24px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--panel);
    text-align: center;
}

.meet-stage-card h1 {
    margin: 0 0 8px;
    font-size: 1.4rem;
}

.meet-main {
    flex: 1;
    display: flex;
    min-height: 0;
}

.meet-grid {
    flex: 1;
    display: grid;
    gap: 10px;
    padding: 12px;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    grid-auto-rows: minmax(160px, 1fr);
    align-content: center;
    overflow-y: auto;
}

.meet-grid[data-count="1"] {
    grid-template-columns: minmax(0, 720px);
    justify-content: center;
}

.meet-grid[data-count="2"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.meet-tile {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 160px;
    border-radius: 14px;
    background: var(--panel-alt);
    border: 2px solid transparent;
    overflow: hidden;
    transition: border-color 0.15s ease;
}

.meet-tile.is-speaking {
    border-color: var(--accent-2);
}

.meet-tile.has-hand {
    box-shadow: inset 0 0 0 2px var(--warning);
}

.meet-tile-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: #000;
    display: none;
}

.meet-tile.is-screen .meet-tile-video {
    object-fit: contain;
}

.meet-tile.is-mirrored .meet-tile-video {
    transform: scaleX(-1);
}

.meet-tile.has-video .meet-tile-video {
    display: block;
}

.meet-tile.has-video .meet-tile-avatar {
    display: none;
}

.meet-tile-avatar {
    width: 84px;
    height: 84px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--accent);
    font-size: 1.8rem;
    font-weight: 700;
    overflow: hidden;
}

.meet-tile-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.meet-tile-label {
    position: absolute;
    left: 8px;
    bottom: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
    max-width: calc(100% - 16px);
    padding: 4px 8px;
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.55);
    font-size: 0.85rem;
}

.meet-tile-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.meet-side {
    width: 340px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    border-left: 1px solid var(--border);
    background: var(--panel);
    min-height: 0;
}

.meet-side-tabs {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 8px;
    border-bottom: 1px solid var(--border);
}

.meet-side-tab,
.meet-side-close {
    border: 0;
    border-radius: 8px;
    padding: 8px 10px;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
    font-weight: 700;
}

.meet-side-tab.is-active {
    background: rgba(255, 255, 255, 0.08);
    color: var(--text);
}

.meet-side-close {
    margin-left: auto;
    font-size: 1.2rem;
}

.meet-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--danger);
}

.meet-side-panel {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow-y: auto;
    padding: 10px;
    gap: 10px;
}

.meet-host-tools {
    display: grid;
    gap: 8px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
}

.meet-mode-switch {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
    padding: 4px;
    border-radius: 10px;
    background: var(--panel-alt);
}

.meet-mode-switch button {
    border: 0;
    border-radius: 8px;
    padding: 8px;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
    font-weight: 700;
}

.meet-mode-switch button.is-active {
    background: var(--accent);
    color: #fff;
}

.meet-host-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.meet-waiting-list h3 {
    margin: 0 0 6px;
    font-size: 0.85rem;
    color: var(--warning);
}

.meet-person {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    padding: 8px;
    border-radius: 10px;
    background: var(--panel-alt);
    margin-bottom: 6px;
}

.meet-person.has-hand {
    box-shadow: inset 0 0 0 1px var(--warning);
}

.meet-person-name {
    flex: 1;
    min-width: 0;
    overflow-wrap: anywhere;
}

.meet-person-tags {
    display: block;
    color: var(--muted);
}

.meet-person-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    width: 100%;
}

.meet-person-actions .button.small {
    padding: 6px 8px;
    font-size: 0.8rem;
}

.meet-person-actions .is-danger {
    color: var(--danger);
}

.meet-chat-list {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.meet-chat-message p {
    margin: 2px 0 0;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

.meet-chat-message small {
    color: var(--muted);
}

.meet-chat-form {
    display: flex;
    gap: 6px;
}

.meet-chat-form input {
    flex: 1;
    min-width: 0;
}

.meet-controls {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    padding: 10px 12px;
    border-top: 1px solid var(--border);
    background: var(--panel);
}

.meet-control {
    border: 0;
    border-radius: 10px;
    padding: 10px 14px;
    background: rgba(255, 255, 255, 0.08);
    color: var(--text);
    font-weight: 700;
    cursor: pointer;
}

.meet-control.is-active {
    background: var(--accent);
    color: #fff;
}

.meet-control.is-off {
    background: rgba(249, 112, 102, 0.2);
    color: #ffc9c4;
}

.meet-control.is-danger {
    background: #c83c4d;
    color: #fff;
}

.meet-toast {
    position: fixed;
    left: 50%;
    bottom: 84px;
    transform: translateX(-50%);
    max-width: calc(100% - 32px);
    padding: 10px 16px;
    border-radius: 10px;
    background: #000c;
    color: #fff;
    z-index: 50;
}

.meet-hand {
    margin-right: 4px;
}

@media (max-width: 760px) {
    .meet-side {
        position: fixed;
        inset: 56px 0 64px 0;
        width: 100%;
        z-index: 40;
    }

    .meet-grid,
    .meet-grid[data-count="2"] {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }

    .meet-control {
        padding: 8px 10px;
        font-size: 0.85rem;
    }

    .meet-copy-label {
        display: none;
    }
}

.meet-welcome-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 16px;
}

.discord-community-online {
    color: #3ba55d;
}

/* Kategori / kanal ayarlari paneli */
.discord-channel-settings-kind {
    display: block;
    padding: 0 14px 8px;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

button.discord-settings-link {
    width: 100%;
    border: 0;
    background: transparent;
    text-align: left;
    font: inherit;
    cursor: pointer;
}

.discord-settings-link.is-danger {
    margin-top: 12px;
    color: #f28b82;
}

.discord-settings-link.is-danger:hover {
    background: rgba(240, 71, 71, 0.14);
    color: #ffb4ad;
}

.discord-channel-settings-form {
    display: grid;
    gap: 12px;
    max-width: 520px;
}

.discord-channel-permissions {
    display: grid;
    gap: 12px;
    max-width: 640px;
}

.discord-channel-roles-title {
    margin: 8px 0 0;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #98a2b3;
}

.discord-channel-role-card {
    display: grid;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
    border-left: 4px solid var(--role-color, #8b8fa3);
}

.discord-channel-role-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.discord-channel-role-head strong {
    display: flex;
    align-items: center;
    gap: 8px;
}

.discord-channel-role-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--role-color, #8b8fa3);
}

.discord-channel-role-head .is-danger {
    color: #f28b82;
}

.discord-channel-role-perms {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
}

.discord-channel-role-card > .button {
    justify-self: start;
}

.discord-channel-role-add {
    display: flex;
    gap: 8px;
}

.discord-channel-role-add select {
    flex: 1;
    min-width: 0;
}

.discord-channel-roles-hint {
    font-size: 0.85rem;
}

.discord-server-alerts .alert {
    cursor: pointer;
}

.discord-chat-sidebar-online-section[hidden] {
    display: none !important;
}

.discord-profile-popover-section {
    display: grid;
    gap: 4px;
    margin: 10px 0 0;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.04);
    font-size: 0.9rem;
}

.discord-profile-popover-label {
    color: #98a2b3;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.discord-profile-popover-bio {
    margin: 0;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

/* Sunucuya davet penceresi (user-card.js) */
.luc-invite-backdrop {
    position: fixed;
    inset: 0;
    z-index: 10004;
    display: grid;
    place-items: center;
    padding: 16px;
    background: rgba(0, 0, 0, 0.6);
}

.luc-invite-card {
    position: relative;
    width: min(420px, 100%);
    max-height: calc(100vh - 32px);
    overflow-y: auto;
    padding: 20px;
    border-radius: 16px;
    background: #1e1f24;
    color: #f2f3f5;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.5);
}

.luc-invite-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.luc-invite-head h3 {
    margin: 0;
    font-size: 1.1rem;
}

.luc-invite-head .luc-close {
    position: static;
}

.luc-invite-sub {
    margin: 8px 0 14px;
    color: #98a2b3;
    font-size: 0.9rem;
}

.luc-invite-rooms {
    display: grid;
    gap: 8px;
}

.luc-invite-room {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.05);
}

.luc-invite-room strong {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.luc-invite-room-icon {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: #5865f2;
    font-weight: 700;
    font-size: 0.85rem;
    flex-shrink: 0;
}

.luc-invite-room .luc-btn {
    width: auto;
    flex-shrink: 0;
    padding: 8px 12px;
}

/* Mesaj islemleri sag tik menusunde; mesajin ustundeki ikonlar gizli */
.discord-chat-entry-tools {
    display: none !important;
}

.discord-message-menu {
    position: fixed;
    z-index: 10002;
    min-width: 190px;
}

/* Sunucu / kanal ayarlari penceresi (ses kanalindan cikmadan) */
.room-settings-overlay {
    position: fixed;
    inset: 0;
    z-index: 10000;
    background: transparent;
}

.room-settings-overlay iframe {
    width: 100%;
    height: 100%;
    border: 0;
    background: transparent;
    color-scheme: normal;
}

html.is-room-settings-embed,
html.is-room-settings-embed body {
    background: transparent !important;
}

html.is-room-settings-embed .discord-server-app,
html.is-room-settings-embed .discord-context-menu,
html.is-room-settings-embed .luc-card {
    visibility: hidden !important;
}

html.is-room-settings-embed .is-embed-visible {
    visibility: visible !important;
}

/* Sesliyken acilan sayfalar (ses arkada devam eder) */
.app-voice-overlay {
    position: fixed;
    inset: 0;
    z-index: 9000;
    background: #1e1f22;
}

.app-voice-overlay iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

/* Ses durumu: acilan sayfanin sol panelinin altinda */
.app-voice-inline {
    margin-top: auto;
    display: grid;
    gap: 8px;
    padding: 10px 12px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    background: #232428;
}

.app-voice-inline.is-floating {
    position: fixed;
    left: 12px;
    bottom: 12px;
    width: 280px;
    border-radius: 12px;
    z-index: 50;
}

.app-voice-inline-head {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.app-voice-inline-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #23a55a;
    flex-shrink: 0;
}

.app-voice-inline-text {
    display: grid;
    min-width: 0;
    line-height: 1.2;
}

.app-voice-inline-text strong {
    color: #23a55a;
    font-size: 0.82rem;
}

.app-voice-inline-text small {
    color: #b5bac1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.app-voice-inline-actions {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 6px;
}

.app-voice-inline-actions button {
    border: 0;
    border-radius: 8px;
    padding: 7px 4px;
    background: rgba(255, 255, 255, 0.07);
    color: #f2f3f5;
    font-size: 0.78rem;
    font-weight: 700;
    cursor: pointer;
}

.app-voice-inline-actions button:hover {
    background: rgba(255, 255, 255, 0.12);
}

.app-voice-inline-actions button.is-danger {
    background: rgba(218, 55, 60, 0.85);
}

.discord-rail-meet svg {
    width: 22px;
    height: 22px;
}

.meet-hub-modal form {
    display: grid;
    gap: 10px;
}

.meet-hub-error {
    margin: 10px 0 0;
}

.discord-server-rail .discord-rail-meet {
    width: 54px;
    height: 54px;
    border-radius: 0;
    color: #23a55a;
    background: transparent;
    box-shadow: none;
    border: 0;
    padding: 0;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}

.discord-server-rail .discord-rail-meet:hover {
    color: #3ddc84;
}

/* Sunucuya arkadas davet penceresi */
.invite-friends-card {
    width: min(460px, calc(100vw - 32px));
}

.invite-friends-search {
    width: 100%;
    margin-bottom: 10px;
}

.invite-friends-list {
    display: grid;
    gap: 6px;
    max-height: 50vh;
    overflow-y: auto;
}

.invite-friends-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.04);
}

.invite-friends-row[hidden] {
    display: none;
}

.invite-friends-avatar {
    position: relative;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #5865f2;
    font-weight: 700;
    font-size: 0.8rem;
    flex-shrink: 0;
}

.invite-friends-avatar img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

.invite-friends-avatar i {
    position: absolute;
    right: -2px;
    bottom: -2px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid #1e1f22;
    background: #80848e;
}

.invite-friends-avatar i.status-online {
    background: #23a55a;
}

.invite-friends-avatar i.status-busy {
    background: #f0b232;
}

.invite-friends-name {
    flex: 1;
    min-width: 0;
    display: grid;
}

.invite-friends-name small {
    color: #98a2b3;
}

.invite-friends-note {
    margin: 10px 0 0;
    font-size: 0.85rem;
}

/* DM'deki sunucu daveti karti */
.discord-invite-card {
    display: grid;
    gap: 8px;
    min-width: 240px;
    padding: 10px 12px;
    border-radius: 12px;
    background: rgba(0, 0, 0, 0.25);
}

.discord-invite-card-label {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #b5bac1;
}

.discord-invite-card-body {
    display: flex;
    align-items: center;
    gap: 10px;
}

.discord-invite-card-body strong {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.discord-invite-card-icon {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    background: #5865f2;
    font-weight: 700;
    flex-shrink: 0;
}

.meet-when {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
}

.meet-when-label {
    width: 100%;
    font-weight: 700;
}

.meet-when input[type="datetime-local"] {
    width: 100%;
}

.meet-when input[hidden] {
    display: none;
}

.meet-hub-list {
    display: grid;
    gap: 8px;
    max-height: 50vh;
    overflow-y: auto;
}

.meet-hub-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
}

.meet-hub-item-copy {
    flex: 1;
    min-width: 0;
    display: grid;
}

.meet-hub-item-copy strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.meet-hub-live {
    color: #23a55a;
    font-weight: 700;
}

.meet-description {
    margin: 0 0 10px;
    color: #dbdee1;
    white-space: pre-wrap;
}

.meet-schedule {
    margin: 0 0 10px;
    font-weight: 700;
    color: #f0b232;
}

/* Toplanti bekleme salonu */
.meet-lobby {
    flex: 1;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 16px;
    padding: 16px;
}

.meet-lobby-main {
    min-height: 0;
    overflow-y: auto;
    display: grid;
    align-content: start;
    gap: 16px;
}

.meet-lobby-hero {
    padding: 36px 28px;
    border-radius: 20px;
    background:
        radial-gradient(circle at top left, rgba(79, 124, 255, 0.28), transparent 55%),
        radial-gradient(circle at bottom right, rgba(25, 179, 107, 0.22), transparent 50%),
        var(--panel);
    border: 1px solid var(--border);
    text-align: center;
}

.meet-lobby-hero h1 {
    margin: 4px 0 10px;
    font-size: 2rem;
}

.meet-lobby-status {
    display: grid;
    gap: 6px;
    justify-items: center;
    margin: 18px 0;
    color: #dbdee1;
}

.meet-lobby-status strong {
    font-size: 2.6rem;
    font-variant-numeric: tabular-nums;
    color: #fff;
}

.meet-lobby-status small {
    color: #f0b232;
    font-weight: 700;
}

.meet-lobby-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.meet-lobby-people {
    padding: 16px;
    border-radius: 16px;
    background: var(--panel);
    border: 1px solid var(--border);
}

.meet-lobby-people h3,
.meet-lobby-chat h3 {
    margin: 0 0 10px;
    font-size: 1rem;
}

.meet-lobby-people h3 span {
    color: var(--muted);
    font-weight: 400;
}

#meetLobbyPeople,
.meet-invite-list {
    display: grid;
    gap: 6px;
}

.meet-lobby-person {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
    opacity: 0.6;
}

.meet-lobby-person.is-present,
.meet-invite-list .meet-lobby-person {
    opacity: 1;
}

.meet-lobby-avatar {
    position: relative;
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--accent);
    font-weight: 700;
    flex-shrink: 0;
}

.meet-lobby-avatar img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

.meet-lobby-avatar i {
    position: absolute;
    right: -2px;
    bottom: -2px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid var(--panel);
    background: #80848e;
}

.meet-lobby-person.is-present .meet-lobby-avatar i {
    background: #23a55a;
}

.meet-lobby-name {
    flex: 1;
    min-width: 0;
    display: grid;
}

.meet-lobby-name small,
.meet-lobby-note {
    color: var(--muted);
    font-size: 0.85rem;
}

.meet-lobby-chat {
    min-height: 0;
    display: flex;
    flex-direction: column;
    padding: 16px;
    border-radius: 16px;
    background: var(--panel);
    border: 1px solid var(--border);
}

.meet-lobby-chat .meet-chat-list {
    margin-bottom: 10px;
}

.meet-invite-backdrop {
    position: fixed;
    inset: 0;
    z-index: 60;
    display: grid;
    place-items: center;
    padding: 16px;
    background: rgba(0, 0, 0, 0.6);
}

.meet-invite-card {
    width: min(440px, 100%);
    max-height: calc(100vh - 32px);
    overflow-y: auto;
    padding: 20px;
    border-radius: 16px;
    background: var(--panel);
    border: 1px solid var(--border);
}

.meet-invite-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.meet-invite-head h3 {
    margin: 0;
}

.meet-audio-unlock {
    position: fixed;
    top: 70px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 55;
}

@media (max-width: 860px) {
    .meet-lobby {
        grid-template-columns: 1fr;
        overflow-y: auto;
    }

    .meet-lobby-chat {
        min-height: 320px;
    }
}

/* Uye karti, ana sayfadaki kendi profil kartiyla ayni gorunsun */
.luc-card {
    border-radius: 18px;
    background: #25252d;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 28px 60px rgba(0, 0, 0, 0.45);
}

.luc-banner {
    height: 80px;
    border-radius: 18px 18px 0 0;
}

.luc-avatar,
.luc-avatar i {
    border-color: #25252d;
}

.luc-card .discord-profile-popover-section {
    margin: 10px 14px 0;
}

.luc-actions {
    padding: 12px 14px 14px;
}

.luc-btn {
    min-height: 42px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.05);
    color: #eef2f8;
}

.luc-btn:hover {
    background: rgba(255, 255, 255, 0.1);
}

.member-ip-backdrop {
    position: fixed;
    inset: 0;
    z-index: 10005;
    display: grid;
    place-items: center;
    padding: 16px;
    background: rgba(0, 0, 0, 0.55);
}

.member-ip-card {
    width: min(360px, 100%);
    padding: 20px;
    border-radius: 16px;
    background: #25252d;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.member-ip-card h3 {
    margin: 0 0 6px;
}

.member-ip-value {
    display: block;
    margin: 12px 0;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.3);
    font-size: 1.05rem;
    user-select: all;
}

.member-ip-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

/* Sunucu merkezi / Toplanti penceresi: ana sayfada da sunucu sayfasindaki gibi gorunur */
dialog.discord-hub-dialog {
    width: min(620px, calc(100vw - 32px));
    max-height: calc(100vh - 64px);
    overflow: auto;
    padding: 24px;
    border-radius: 24px;
    background: linear-gradient(180deg, #1a1e27, #13161d);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 40px 100px rgba(0, 0, 0, 0.48);
    color: #f4f7fb;
}

dialog.discord-hub-dialog::backdrop {
    background: rgba(6, 8, 12, 0.72);
    backdrop-filter: blur(12px);
}

dialog.discord-hub-dialog .discord-server-hub-body {
    display: grid;
    gap: 0;
    padding: 0;
}

dialog.discord-hub-dialog .discord-modal-head h2 {
    margin: 0;
}

dialog.discord-hub-dialog .discord-hub-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 18px;
}

dialog.discord-hub-dialog .discord-hub-tabs .button {
    width: auto;
}

dialog.discord-hub-dialog .discord-hub-panel form,
dialog.discord-hub-dialog section > form {
    display: grid;
    gap: 14px;
}

/* Sunucu sayfasinda gelen ozel arama */
.room-incoming-call {
    position: fixed;
    top: 18px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10006;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 14px 12px 18px;
    border-radius: 14px;
    background: #1e1f24;
    border: 1px solid rgba(35, 165, 90, 0.55);
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.45);
    color: #f2f3f5;
}

.room-incoming-call[hidden] {
    display: none;
}

.room-incoming-call-text {
    display: grid;
}

.room-incoming-call-text span {
    color: #b5bac1;
    font-size: 0.85rem;
}

.room-incoming-call-actions {
    display: flex;
    gap: 8px;
}

/* Engellemeler */
.discord-block-section summary {
    cursor: pointer;
    list-style: none;
}

.discord-block-row {
    display: grid;
    gap: 2px;
    margin: 6px 0;
    padding: 8px 10px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.04);
    font-size: 0.9rem;
}

.discord-block-row small {
    color: #98a2b3;
}

.discord-block-row p {
    margin: 4px 0;
    color: #dbdee1;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.discord-block-row form {
    justify-self: start;
}

.discord-block-section.is-against .discord-block-row {
    border-left: 3px solid #da373c;
}

.block-user-modal form {
    display: grid;
    gap: 12px;
}

.block-user-modal .field {
    display: grid;
    gap: 6px;
}

.block-user-modal select,
.block-user-modal textarea,
.block-user-modal input {
    width: 100%;
}

.block-user-modal input[hidden] {
    display: none;
}

/* Sunucu ayarlari > Uyeler */
.discord-member-counts {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.discord-member-counts span {
    padding: 8px 12px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    color: #b5bac1;
}

.discord-member-counts strong {
    color: #fff;
    margin-right: 4px;
}

.discord-member-counts .is-online strong {
    color: #23a55a;
}

.discord-member-search {
    width: 100%;
}

.discord-settings-member-row[hidden] {
    display: none;
}

.button.is-danger-text {
    color: #f28b82;
}

/* Uye kartinda sunucu rolleri */
.luc-roles {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 2px;
}

.luc-role {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 8px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.07);
    font-size: 0.8rem;
}

.luc-role i {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

.luc-server-joined {
    color: #b5bac1;
    font-size: 0.8rem;
}

/* Mesaj ozellikleri: sabitleme, yanitlama, bahsetme, gecmis */
.discord-chat-main {
    position: relative;
}

.pinned-wrap {
    position: relative;
}

.pinned-wrap .discord-header-icon {
    position: relative;
}

.pinned-wrap .discord-header-icon svg {
    width: 18px;
    height: 18px;
}

.pinned-count {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 999px;
    background: #da373c;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 16px;
    text-align: center;
}

.pinned-panel {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 60;
    width: min(380px, calc(100vw - 32px));
    max-height: 60vh;
    overflow-y: auto;
    padding: 10px;
    border-radius: 14px;
    background: #1e1f24;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.5);
}

.pinned-panel[hidden] {
    display: none;
}

.pinned-panel-head {
    padding: 4px 6px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    margin-bottom: 8px;
}

.pinned-empty {
    padding: 6px;
    font-size: 0.9rem;
}

.pinned-item {
    display: grid;
    gap: 6px;
    padding: 10px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.04);
    margin-bottom: 8px;
}

.pinned-item-head {
    display: flex;
    justify-content: space-between;
    gap: 8px;
}

.pinned-item-head small {
    color: #98a2b3;
}

.pinned-item p {
    margin: 0;
    overflow-wrap: anywhere;
}

.pinned-thumb {
    max-width: 100%;
    max-height: 140px;
    border-radius: 8px;
    object-fit: cover;
}

.pinned-item-actions {
    display: flex;
    gap: 6px;
}

.pin-badge {
    font-size: 0.75rem;
}

.discord-chat-entry.is-pinned .discord-chat-entry-bubble {
    box-shadow: inset 0 0 0 1px rgba(240, 178, 50, 0.45);
}

.discord-chat-entry.is-mentioned .discord-chat-entry-bubble {
    background: rgba(240, 178, 50, 0.14);
    box-shadow: inset 3px 0 0 #f0b232;
}

.discord-chat-entry.is-flash .discord-chat-entry-bubble {
    animation: message-flash 1.8s ease;
}

@keyframes message-flash {
    0%, 60% { box-shadow: 0 0 0 3px rgba(88, 101, 242, 0.8); }
    100% { box-shadow: none; }
}

.reply-quote {
    display: flex;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    margin: 0 0 4px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #b5bac1;
    font: inherit;
    font-size: 0.82rem;
    text-align: left;
    cursor: pointer;
}

.reply-quote strong {
    color: #dbdee1;
    flex-shrink: 0;
}

.reply-quote span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.reply-quote:hover span:last-child {
    color: #fff;
}

.discord-chat-entry.is-own .reply-quote {
    margin-left: auto;
}

.load-older-wrap {
    display: flex;
    justify-content: center;
    padding: 8px 0 14px;
}

.history-floor-note {
    text-align: center;
    font-size: 0.85rem;
}

.jump-present {
    position: absolute;
    right: 24px;
    bottom: 96px;
    z-index: 30;
    padding: 8px 14px;
    border: 0;
    border-radius: 999px;
    background: #5865f2;
    color: #fff;
    font-weight: 700;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.4);
    cursor: pointer;
}

.jump-present[hidden] {
    display: none;
}

.reply-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 6px 10px;
    margin-bottom: 6px;
    border-radius: 8px;
    background: rgba(88, 101, 242, 0.14);
    color: #dbdee1;
    font-size: 0.85rem;
}

.reply-bar[hidden] {
    display: none;
}

.reply-bar em {
    color: #b5bac1;
}

.reply-bar button {
    border: 0;
    background: transparent;
    color: #dbdee1;
    font-size: 1.1rem;
    cursor: pointer;
}

.discord-chat-composer-field {
    position: relative;
}

.mention-suggest {
    position: absolute;
    left: 0;
    bottom: calc(100% + 6px);
    z-index: 40;
    width: min(320px, 100%);
    padding: 6px;
    border-radius: 12px;
    background: #1e1f24;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.5);
}

.mention-suggest[hidden] {
    display: none;
}

.mention-option {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 7px 8px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #f2f3f5;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.mention-option small {
    margin-left: auto;
    color: #98a2b3;
}

.mention-option.is-active,
.mention-option:hover {
    background: rgba(88, 101, 242, 0.25);
}

.mention-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

/* Ray: yenilikler ve destekci butonlari */
.discord-server-rail .discord-rail-updates,
.discord-server-rail .discord-rail-premium {
    position: relative;
    display: grid;
    place-items: center;
    width: 54px;
    height: 44px;
    border: 0;
    background: transparent;
    color: #b5bac1;
    cursor: pointer;
}

.discord-rail-updates svg,
.discord-rail-premium svg {
    width: 21px;
    height: 21px;
}

.discord-server-rail .discord-rail-premium svg {
    width: 26px;
    height: 26px;
    transition: transform 0.15s ease;
}

.discord-server-rail .discord-rail-premium:hover svg {
    transform: scale(1.12);
}

.discord-rail-updates:hover,
.discord-rail-premium:hover {
    color: #fff;
}

.rail-dot {
    position: absolute;
    top: 8px;
    right: 14px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #da373c;
}

/* Yenilikler penceresi */
.updates-list {
    display: grid;
    gap: 10px;
}

.updates-item {
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
}

.updates-item.is-new {
    box-shadow: inset 3px 0 0 #5865f2;
}

.updates-item-head {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.updates-item-head small {
    color: #98a2b3;
}

.updates-item p {
    margin: 6px 0 0;
    color: #dbdee1;
}

.updates-item ul {
    margin: 8px 0 0;
    padding-left: 18px;
    color: #dbdee1;
    display: grid;
    gap: 4px;
}

.updates-read-more {
    margin-top: 8px;
    padding: 0;
    border: 0;
    background: none;
    color: #00a8fc;
    font: inherit;
    font-weight: 600;
    cursor: pointer;
}

.updates-read-more:hover {
    text-decoration: underline;
}

.updates-modal .updates-list {
    max-height: min(65vh, 620px);
    overflow-y: auto;
    padding-right: 4px;
}

/* Rozetler */
.supporter-badge,
.boost-badge {
    margin-left: 4px;
    font-size: 0.85em;
}

.popover-premium {
    color: inherit;
    text-decoration: none;
}

.popover-premium:hover {
    background: rgba(199, 125, 255, 0.12);
}

.admin-plan-form {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 4px;
}

/* Destekci / Boost sayfasi */
.premium-status {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    margin-top: 18px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.25);
}

.premium-badge {
    font-weight: 800;
}

.premium-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 18px;
}

.premium-card {
    display: grid;
    gap: 12px;
    align-content: start;
    padding: 24px;
    border-radius: 20px;
    color: #fff;
}

.premium-card.is-plus {
    background: linear-gradient(160deg, #3b5bdb, #1c7ed6);
}

.premium-card.is-boost {
    background: linear-gradient(160deg, #9b51e0, #d6336c);
}

.premium-card h2 {
    margin: 0;
}

.premium-price strong {
    font-size: 1.6rem;
}

.premium-price span {
    display: block;
    font-size: 0.85rem;
    opacity: 0.85;
}

.premium-card ul {
    margin: 0;
    padding-left: 18px;
    display: grid;
    gap: 6px;
}

.premium-card .button {
    background: #fff;
    color: #1e1f22;
}

.premium-card .button[disabled] {
    opacity: 0.75;
    cursor: not-allowed;
}

.premium-note {
    margin: 0;
    color: rgba(255, 255, 255, 0.85) !important;
    font-size: 0.82rem;
}

.premium-compare {
    margin-top: 26px;
    padding: 18px;
    border-radius: 18px;
    background: var(--panel);
    border: 1px solid var(--border);
    overflow-x: auto;
}

.premium-compare h2 {
    margin: 0 0 12px;
}

.premium-compare table {
    width: 100%;
    border-collapse: collapse;
}

.premium-compare th,
.premium-compare td {
    padding: 10px 12px;
    border-bottom: 1px solid var(--border);
    text-align: left;
}

.premium-compare th {
    color: #98a2b3;
    font-size: 0.85rem;
}

/* Ana sayfa: kullanici paneli sunucudaki gibi altta; sesliyken ustunde ses paneli */
.discord-chat-sidebar > .home-memberbar {
    margin-top: auto;
    flex-shrink: 0;
}
.discord-chat-sidebar > .home-memberbar .discord-voice-state {
    margin: 0;
}
.app-voice-inline.app-voice-mirror {
    margin-top: 0;
    padding: 11px 12px 12px;
    border-top: 0;
    gap: 10px;
}

/* Destekci / Boost penceresi */
dialog.discord-hub-dialog.premium-modal {
    width: min(880px, calc(100vw - 32px));
}
.premium-modal .premium-status {
    margin: 4px 0 18px;
}
.premium-modal .premium-card h3,
.premium-modal .premium-compare h3 {
    margin: 0;
}
.premium-modal .premium-compare {
    margin-top: 20px;
}
.premium-modal .premium-note {
    margin: 12px 0 0;
}

/* Rozetler: Letuva Destekci (kalkan + kalp) ve Sunucu Boost (altigen + simsek) */
.lv-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    margin-left: 5px;
    vertical-align: -2px;
    cursor: pointer;
    flex-shrink: 0;
}
.lv-badge svg {
    width: 100%;
    height: 100%;
    display: block;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35));
}
.lv-badge:hover svg,
.lv-badge:focus-visible svg {
    transform: scale(1.15);
}
.lv-badge-popover {
    position: fixed;
    z-index: 10080;
    display: flex;
    gap: 10px;
    align-items: center;
    max-width: 300px;
    padding: 10px 12px;
    border-radius: 10px;
    background: #111214;
    color: #dbdee1;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
    font-size: 13px;
}
.lv-badge-popover-icon svg {
    width: 28px;
    height: 28px;
    display: block;
}
.lv-badge-popover strong {
    display: block;
    color: #fff;
}

/* Uye kartinda rol ekle / kaldir ve hizli mesaj */
.luc-role-remove {
    margin-left: 2px;
    padding: 0 2px;
    border: 0;
    background: none;
    color: #b5bac1;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
}
.luc-role-remove:hover {
    color: #f23f43;
}
.luc-role-add {
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.07);
    color: #dbdee1;
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
}
.luc-role-add:hover {
    background: #5865f2;
    color: #fff;
}
.luc-role-menu {
    display: grid;
    gap: 2px;
    margin-top: 6px;
    padding: 4px;
    border-radius: 8px;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.1);
    max-height: 180px;
    overflow-y: auto;
}
.luc-role-menu[hidden] {
    display: none;
}
.luc-role-menu button {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: #dbdee1;
    font: inherit;
    font-size: 0.85rem;
    text-align: left;
    cursor: pointer;
}
.luc-role-menu button:hover {
    background: #5865f2;
    color: #fff;
}
.luc-role-menu i {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}
.luc-message-form {
    margin: 10px 14px 0;
}
.luc-message-form input {
    width: 100%;
    box-sizing: border-box;
    padding: 9px 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: #1e1f22;
    color: #dbdee1;
    font: inherit;
}
.luc-message-form input:focus {
    outline: none;
    border-color: #5865f2;
}

/* Sunucu ayarlari > Sunucu profili: kartlar */
.room-overview-form {
    display: grid;
    gap: 16px;
    min-width: 0;
}
.room-overview-card {
    display: grid;
    gap: 14px;
    padding: 18px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    min-width: 0;
}
.room-overview-card h4 {
    margin: 0;
    font-size: 0.78rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #b5bac1;
}
.room-overview-card .field {
    margin: 0;
    display: grid;
    gap: 6px;
    min-width: 0;
}
.room-overview-identity {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
}
.room-overview-identity .discord-room-avatar-preview {
    width: 120px;
    height: 120px;
    border-radius: 24px;
}
.room-overview-identity .discord-room-avatar-preview img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.room-overview-fields {
    display: grid;
    gap: 12px;
    min-width: 0;
}
.room-overview-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.room-overview-toggle {
    display: flex;
    gap: 10px;
    align-items: flex-start;
}
.room-overview-toggle span {
    display: grid;
    gap: 2px;
}
.room-overview-note {
    margin: 0;
}
.room-overview-actions {
    display: flex;
    justify-content: flex-end;
}
.room-overview + .discord-settings-danger-card,
.room-overview .discord-settings-danger-card {
    margin-top: 18px;
}
@media (max-width: 720px) {
    .room-overview-identity,
    .room-overview-row {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Topluluk sunuculari: arama ve kategoriler */
.community-search {
    width: 100%;
    box-sizing: border-box;
    margin: 4px 0 10px;
    padding: 10px 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    background: #1e1f22;
    color: #dbdee1;
    font: inherit;
}
.community-search:focus {
    outline: none;
    border-color: #5865f2;
}
.community-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 12px;
}
.community-category {
    padding: 6px 12px;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    color: #dbdee1;
    font: inherit;
    font-size: 0.85rem;
    cursor: pointer;
}
.community-category span {
    margin-left: 4px;
    opacity: 0.6;
}
.community-category:hover {
    background: rgba(255, 255, 255, 0.12);
}
.community-category.is-active {
    background: #5865f2;
    color: #fff;
}
.community-category-tag {
    margin-left: 6px;
    padding: 1px 8px;
    border-radius: 999px;
    background: rgba(88, 101, 242, 0.2);
    color: #c9cdfb;
    font-size: 0.72rem;
    font-weight: 600;
    vertical-align: middle;
}
.discord-community-row[hidden],
.community-empty[hidden] {
    display: none !important;
}

/* Sunucu ayarlari > Uyeler: islemler yan yana */
.discord-settings-member-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    align-items: center;
    max-width: 460px;
}
.discord-settings-member-actions .discord-inline-form {
    display: flex;
    gap: 6px;
    align-items: center;
    margin: 0;
}
.discord-settings-member-actions select {
    width: auto;
    min-width: 150px;
    padding: 6px 10px;
}

/* Sunucu ayarlari > Uyeler: filtreler, satirlar, rol x ve rol ver */
.settings-members-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}
.settings-members-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
    color: #dbdee1;
    font: inherit;
    font-size: 0.85rem;
    cursor: pointer;
}
.settings-members-chip strong {
    color: #fff;
}
.settings-members-chip.is-online strong {
    color: #23a55a;
}
.settings-members-chip i {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}
.settings-members-chip:hover {
    background: rgba(255, 255, 255, 0.1);
}
.settings-members-chip.is-active {
    background: #5865f2;
    border-color: #5865f2;
    color: #fff;
}
.settings-members-chip.is-active strong {
    color: #fff;
}
.settings-members-result {
    min-height: 1em;
    margin: 6px 0;
    font-size: 0.8rem;
}
.discord-settings-member-row[hidden] {
    display: none !important;
}
.settings-member-main {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    min-width: 0;
}
.settings-member-avatar {
    position: relative;
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #5865f2;
    display: grid;
    place-items: center;
    font-weight: 700;
}
.settings-member-avatar img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}
.settings-member-avatar i {
    position: absolute;
    right: -1px;
    bottom: -1px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #80848e;
    border: 2px solid #2b2d31;
}
.settings-member-avatar i.is-online {
    background: #23a55a;
}
.discord-role-pill-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
}
.settings-member-role-add {
    margin: 0;
}
.settings-member-role-add select {
    width: auto;
    padding: 3px 8px;
    border-radius: 999px;
    border: 1px dashed rgba(255, 255, 255, 0.25);
    background: transparent;
    color: #b5bac1;
    font-size: 0.78rem;
    cursor: pointer;
}
.settings-member-role-add select:hover {
    border-color: #5865f2;
    color: #fff;
}

/* Rolun uzerine gelince solunda x (uye karti ve Sunucu ayarlari > Uyeler) */
.luc-role.is-removable .luc-role-remove {
    display: none;
    width: 12px;
    margin: 0;
    padding: 0;
    color: #f23f43;
    font-weight: 700;
}
.luc-role.is-removable:hover .luc-role-remove {
    display: inline-block;
}
.luc-role.is-removable:hover i {
    display: none;
}
.discord-role-pill.is-removable {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.discord-role-pill-remove {
    display: none;
    margin: 0;
}
.discord-role-pill.is-removable:hover .discord-role-pill-remove {
    display: inline-flex;
}
.discord-role-pill-remove button {
    padding: 0 2px;
    border: 0;
    background: none;
    color: #f23f43;
    font: inherit;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
}

/* Ekran paylasimi: secim penceresi, onizleme, izleme penceresi */
.lss-backdrop {
    position: fixed;
    inset: 0;
    z-index: 10090;
    display: grid;
    place-items: center;
    background: rgba(0, 0, 0, 0.6);
}
.lss-dialog {
    width: min(520px, calc(100vw - 32px));
    padding: 20px;
    border-radius: 16px;
    background: #1e1f22;
    color: #dbdee1;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5);
}
.lss-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.lss-head h3 {
    margin: 0;
    color: #fff;
}
.lss-x {
    border: 0;
    background: transparent;
    color: #b5bac1;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}
.lss-x:hover {
    color: #fff;
}
.lss-label {
    margin: 16px 0 8px;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #b5bac1;
}
.lss-options {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}
.lss-options button {
    display: grid;
    gap: 4px;
    justify-items: center;
    padding: 14px 8px;
    border: 2px solid transparent;
    border-radius: 12px;
    background: #2b2d31;
    color: #dbdee1;
    font: inherit;
    cursor: pointer;
}
.lss-options.is-small button {
    padding: 10px 6px;
    font-size: 0.85rem;
}
.lss-options button small {
    color: #949ba4;
    font-size: 0.72rem;
}
.lss-options button.is-active {
    border-color: #5865f2;
    background: rgba(88, 101, 242, 0.18);
    color: #fff;
}
.lss-icon {
    font-size: 26px;
}
.lss-check {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-top: 16px;
}
.lss-check small {
    color: #949ba4;
}
.lss-note {
    margin: 12px 0 0;
    font-size: 0.78rem;
    color: #949ba4;
}
.lss-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 18px;
}
.lss-live {
    padding: 1px 6px;
    border-radius: 4px;
    background: #da373c;
    color: #fff;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}
.lss-viewers {
    color: #dbdee1;
    font-size: 0.8rem;
}
.lss-spacer {
    flex: 1;
}
.lss-preview {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 10070;
    width: 260px;
    border-radius: 12px;
    overflow: hidden;
    background: #000;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.55);
    border: 1px solid rgba(255, 255, 255, 0.12);
}
.lss-preview[hidden] {
    display: none;
}
.lss-preview-bar,
.voice-screen-viewer-bar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    background: #111214;
    cursor: move;
    user-select: none;
}
.lss-preview-bar button,
.voice-screen-viewer-bar button:not(.lss-x) {
    padding: 2px 6px;
    border: 0;
    border-radius: 4px;
    background: #2b2d31;
    color: #dbdee1;
    font: inherit;
    font-size: 0.72rem;
    cursor: pointer;
}
.lss-preview-bar button:hover,
.voice-screen-viewer-bar button:not(.lss-x):hover {
    background: #5865f2;
    color: #fff;
}
.lss-preview video {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    background: #000;
}
.voice-screen-viewer {
    position: fixed;
    left: 50%;
    top: 50%;
    z-index: 10060;
    width: min(1100px, calc(100vw - 48px));
    transform: translate(-50%, -50%);
    border-radius: 14px;
    overflow: hidden;
    background: #000;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6);
    border: 1px solid rgba(255, 255, 255, 0.1);
}
.voice-screen-viewer-bar {
    cursor: default;
}
.voice-screen-viewer-bar strong {
    color: #fff;
    font-size: 0.9rem;
}
.voice-screen-viewer-stage {
    position: relative;
    background: #000;
}
.voice-screen-viewer-stage video[data-viewer-main] {
    display: block;
    width: 100%;
    max-height: calc(100vh - 140px);
    aspect-ratio: 16 / 9;
    object-fit: contain;
}
.voice-screen-viewer-stage video[data-viewer-corner] {
    position: absolute;
    right: 12px;
    bottom: 12px;
    width: 22%;
    border-radius: 8px;
    border: 2px solid rgba(255, 255, 255, 0.2);
}
.voice-screen-viewer-wait {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    margin: 0;
    color: #b5bac1;
}
.voice-screen-viewer.is-playing .voice-screen-viewer-wait {
    display: none;
}
.voice-live-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 3px;
    padding: 2px 8px 2px 3px;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.07);
    color: #dbdee1;
    font: inherit;
    font-size: 0.72rem;
    cursor: pointer;
}
.voice-live-btn:hover,
.voice-live-btn.is-watching {
    background: #5865f2;
    color: #fff;
}
.voice-live-eye {
    opacity: 0.85;
}

/* Kullanici ses seviyesi (sag tik menusu) */
.voice-volume-slider {
    display: grid;
    gap: 8px;
    padding: 8px 8px 10px;
    min-width: 200px;
}
.voice-volume-label {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #b5bac1;
}
.voice-volume-row {
    display: flex;
    align-items: center;
    gap: 10px;
}
.voice-volume-row input[type="range"] {
    flex: 1;
    height: 8px;
    border-radius: 999px;
    -webkit-appearance: none;
    appearance: none;
    background: linear-gradient(90deg, #5865f2 0 var(--fill, 50%), #4e5058 var(--fill, 50%) 100%);
    cursor: pointer;
}
.voice-volume-row input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 12px;
    height: 22px;
    border-radius: 3px;
    background: #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}
.voice-volume-row input[type="range"]::-moz-range-thumb {
    width: 12px;
    height: 22px;
    border: 0;
    border-radius: 3px;
    background: #fff;
}
.voice-volume-value {
    min-width: 42px;
    text-align: right;
    color: #fff;
    font-weight: 700;
    font-size: 0.85rem;
}
.voice-volume-mute {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 0 0;
    border-top: 1px solid #2b2d31;
    color: #dbdee1;
    font-size: 0.9rem;
    cursor: pointer;
}
.voice-volume-mute input {
    width: 18px;
    height: 18px;
    accent-color: #f23f43;
}
.voice-volume-slider.is-muted .voice-volume-row {
    opacity: 0.4;
}
.discord-voice-participant-flag.is-local-muted {
    color: #f23f43;
}

/* Davet sayfasi */
.invite-page {
    position: relative;
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 24px 16px;
    overflow: hidden;
    background: radial-gradient(circle at 20% 20%, #3b3f9e 0%, #1e1f22 55%);
}
.invite-page-bg {
    position: absolute;
    inset: 0;
    background-image: var(--invite-banner, none);
    background-size: cover;
    background-position: center;
    filter: saturate(1.05);
}
.invite-page.has-banner .invite-page-bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.55));
}
.invite-page-brand {
    position: absolute;
    top: 22px;
    left: 26px;
    z-index: 1;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 900;
    text-decoration: none;
    letter-spacing: 0.02em;
}
.invite-card {
    position: relative;
    z-index: 1;
    width: min(480px, 100%);
    padding: 32px 28px;
    border-radius: 12px;
    background: #313338;
    color: #dbdee1;
    text-align: center;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5);
}
.invite-card h1 {
    margin: 6px 0 10px;
    color: #fff;
    font-size: 1.6rem;
}
.invite-card-avatar,
.invite-card-icon {
    width: 88px;
    height: 88px;
    margin: 0 auto 12px;
    border-radius: 28px;
    overflow: hidden;
    display: grid;
    place-items: center;
    background: #5865f2;
    color: #fff;
    font-size: 2rem;
    font-weight: 900;
}
.invite-card-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.invite-card-icon.is-invalid {
    border-radius: 50%;
    background: #4e5058;
}
.invite-card-eyebrow {
    margin: 0;
    color: #b5bac1;
    font-size: 0.9rem;
}
.invite-card-stats {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin: 0 0 12px;
    color: #b5bac1;
    font-size: 0.9rem;
}
.invite-card-stats i {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 6px;
    border-radius: 50%;
    background: #80848e;
}
.invite-card-stats i.is-online {
    background: #23a55a;
}
.invite-card-description {
    margin: 0 0 12px;
}
.invite-card-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    margin-bottom: 18px;
}
.invite-card-tags span {
    padding: 3px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.07);
    font-size: 0.78rem;
}
.invite-card-button {
    width: 100%;
    padding: 12px;
    font-size: 1rem;
}
.invite-card-skip {
    display: inline-block;
    margin-top: 12px;
    color: #b5bac1;
    font-size: 0.85rem;
}
.room-overview-banner {
    height: 120px;
    border-radius: 10px;
    background-size: cover;
    background-position: center;
}

/* Sunucu takviye paneli */
.room-boost-modal-card {
    width: min(720px, calc(100vw - 32px));
    max-height: calc(100vh - 48px);
    overflow: auto;
}
.boost-panel h4 {
    margin: 20px 0 10px;
    font-size: 0.78rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #b5bac1;
}
.boost-panel-hero {
    display: grid;
    gap: 16px;
    padding: 20px;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(224, 86, 155, 0.22), rgba(88, 101, 242, 0.18));
    border: 1px solid rgba(244, 127, 184, 0.3);
}
.boost-panel-level {
    display: flex;
    gap: 12px;
    align-items: center;
}
.boost-panel-level strong {
    display: block;
    color: #fff;
    font-size: 1.2rem;
}
.boost-panel-level small {
    color: #dbdee1;
}
.boost-panel-icon {
    width: 40px;
    height: 40px;
}
.boost-panel-progress {
    position: relative;
    height: 10px;
    margin: 6px 12px 26px 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
}
.boost-panel-progress > i {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    border-radius: 999px;
    background: linear-gradient(90deg, #f47fb8, #e0569b);
}
.boost-panel-step {
    position: absolute;
    top: 50%;
    z-index: 1;
    transform: translate(-50%, -50%);
    display: grid;
    justify-items: center;
}
.boost-panel-step b {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #4e5058;
    color: #fff;
    font-size: 0.75rem;
}
.boost-panel-step.is-done b {
    background: #e0569b;
}
.boost-panel-step small {
    position: absolute;
    top: 26px;
    white-space: nowrap;
    color: #b5bac1;
    font-size: 0.7rem;
}
.boost-panel-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.boost-panel-tags span {
    padding: 3px 10px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.25);
    font-size: 0.78rem;
}
.boost-panel-tags .is-community {
    background: rgba(35, 165, 90, 0.25);
    color: #9ff0bf;
}
.boost-panel-tags .is-boost {
    background: rgba(224, 86, 155, 0.3);
}
.boost-panel-cta {
    justify-self: start;
    background: #e0569b;
}
.boost-panel-perks {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}
.boost-panel-perk-level {
    padding: 12px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    opacity: 0.6;
}
.boost-panel-perk-level.is-unlocked {
    opacity: 1;
    border-color: rgba(244, 127, 184, 0.45);
}
.boost-panel-perk-level strong {
    display: grid;
    color: #fff;
}
.boost-panel-perk-level strong small {
    color: #b5bac1;
    font-weight: 500;
}
.boost-panel-perk-level ul {
    margin: 8px 0 0;
    padding-left: 18px;
    font-size: 0.85rem;
}
.boost-panel-boosters {
    display: grid;
    gap: 8px;
}
.boost-panel-booster {
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 8px 10px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.04);
    cursor: pointer;
}
.boost-panel-booster strong {
    display: flex;
    align-items: center;
    color: #fff;
}
.boost-panel-booster small {
    color: #b5bac1;
}
.boost-panel-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    overflow: hidden;
    display: grid;
    place-items: center;
    background: #5865f2;
    font-weight: 700;
}
.boost-panel-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.server-menu-boost {
    display: flex !important;
    gap: 10px;
    align-items: center;
    margin-bottom: 4px;
    padding: 10px !important;
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(224, 86, 155, 0.25), rgba(88, 101, 242, 0.2)) !important;
    text-align: left;
}
.server-menu-boost .lv-badge {
    width: 26px;
    height: 26px;
}
.server-menu-boost strong {
    display: block;
    color: #fff;
}
.server-menu-boost small {
    color: #dbdee1;
    font-size: 0.75rem;
}
.discord-profile-popover-fullname {
    display: block;
    color: #fff;
    font-weight: 600;
}
@media (max-width: 720px) {
    .boost-panel-perks {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Kanal / kategori yetkileri: rol cipleri (x kaldir, + ekle) */
.channel-role-chips {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
}
.channel-role-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 10px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid transparent;
    color: #dbdee1;
    font-size: 0.85rem;
    cursor: pointer;
}
.channel-role-chip i,
.channel-role-add-menu i {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--role-color, #8b8fa3);
}
.channel-role-chip.is-selected {
    border-color: var(--role-color, #5865f2);
    background: rgba(88, 101, 242, 0.15);
    color: #fff;
}
.channel-role-chip-remove {
    display: none;
    margin: 0;
}
.channel-role-chip.is-removable:hover .channel-role-chip-remove {
    display: inline-flex;
}
.channel-role-chip.is-removable:hover i {
    display: none;
}
.channel-role-chip-remove button {
    width: 10px;
    padding: 0;
    border: 0;
    background: none;
    color: #f23f43;
    font: inherit;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
}
.channel-role-add {
    position: relative;
}
.channel-role-add-button {
    width: 28px;
    height: 28px;
    border: 1px dashed rgba(255, 255, 255, 0.3);
    border-radius: 6px;
    background: transparent;
    color: #dbdee1;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
}
.channel-role-add-button:hover {
    border-color: #5865f2;
    color: #fff;
}
.channel-role-add-menu {
    position: absolute;
    left: 0;
    top: calc(100% + 6px);
    z-index: 20;
    display: grid;
    gap: 2px;
    min-width: 180px;
    max-height: 240px;
    overflow-y: auto;
    padding: 4px;
    border-radius: 8px;
    background: rgba(30, 31, 34, 0.92);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}
.channel-role-add-menu[hidden] {
    display: none;
}
.channel-role-add-menu form {
    margin: 0;
}
.channel-role-add-menu button {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 6px 8px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: #dbdee1;
    font: inherit;
    font-size: 0.85rem;
    text-align: left;
    cursor: pointer;
}
.channel-role-add-menu button:hover {
    background: #5865f2;
    color: #fff;
}
.discord-channel-role-card[hidden] {
    display: none !important;
}

.discord-chat-header-avatar-wrap[data-user-card],
.discord-chat-header-name[data-user-card] {
    cursor: pointer;
}
.discord-chat-header-name[data-user-card]:hover {
    text-decoration: underline;
}

/* DM: okundu tikleri ve "Yeni mesajlar" cizgisi */
.dm-read-ticks {
    margin-left: 4px;
    color: #80848e;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: -2px;
}
.dm-read-ticks.is-read {
    color: #00a8fc;
}
.dm-unread-divider {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 10px 0;
    color: #f23f43;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
}
.dm-unread-divider::before,
.dm-unread-divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: #f23f43;
    opacity: 0.6;
}

/* Ekran paylas: kalite secimi (cozunurluk + FPS birlikte) */
.lss-quality {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    gap: 8px;
}
.lss-quality button {
    display: grid;
    gap: 2px;
    justify-items: start;
    padding: 12px;
    border: 2px solid transparent;
    border-radius: 12px;
    background: #2b2d31;
    color: #dbdee1;
    font: inherit;
    text-align: left;
    cursor: pointer;
}
.lss-quality button strong {
    color: #fff;
    font-size: 1.15rem;
}
.lss-quality button span {
    color: #b5bac1;
    font-weight: 700;
    font-size: 0.85rem;
}
.lss-quality button small {
    color: #949ba4;
    font-size: 0.72rem;
}
.lss-quality button:hover {
    background: #35373c;
}
.lss-quality button.is-active {
    border-color: #5865f2;
    background: rgba(88, 101, 242, 0.18);
}
.lss-quality button.is-locked {
    opacity: 0.45;
    cursor: not-allowed;
}
.room-vanity-input {
    display: flex;
    align-items: center;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    background: #1e1f22;
    overflow: hidden;
}
.room-vanity-input span {
    padding: 0 4px 0 12px;
    color: #949ba4;
    white-space: nowrap;
}
.room-vanity-input input {
    flex: 1;
    min-width: 0;
    border: 0 !important;
    background: transparent !important;
}
.room-vanity-input.is-locked {
    opacity: 0.55;
}

/* Sohbette dosya karti */
.chat-file-card {
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: 340px;
    margin: 4px 0;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.22);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #dbdee1;
    text-decoration: none;
}
.chat-file-card:hover {
    border-color: #5865f2;
}
.chat-file-icon {
    display: grid;
    place-items: center;
    min-width: 42px;
    height: 48px;
    padding: 0 4px;
    border-radius: 6px;
    background: #5865f2;
    color: #fff;
    font-size: 0.68rem;
    font-weight: 800;
}
.chat-file-meta {
    display: grid;
    min-width: 0;
}
.chat-file-meta strong {
    color: #00a8fc;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.chat-file-meta small {
    color: #949ba4;
}
.chat-file-pending {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
    padding: 6px 10px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
    font-size: 0.85rem;
}
.chat-file-pending[hidden] {
    display: none;
}
.chat-file-pending .chat-file-icon {
    min-width: 36px;
    height: 36px;
}
.chat-file-pending button {
    margin-left: auto;
    border: 0;
    background: none;
    color: #f23f43;
    font-size: 18px;
    cursor: pointer;
}

/* Sohbet bani ve spam uyarisi */
.chat-ban-notice {
    display: grid;
    gap: 4px;
    margin: 12px 16px 16px;
    padding: 14px 16px;
    border-radius: 12px;
    background: rgba(242, 63, 67, 0.12);
    border: 1px solid rgba(242, 63, 67, 0.4);
    color: #f8d7d8;
}
.spam-warning {
    position: fixed;
    inset: 0;
    z-index: 10100;
    display: grid;
    place-items: center;
    background: rgba(0, 0, 0, 0.55);
}
.spam-warning-card {
    display: grid;
    gap: 10px;
    justify-items: center;
    width: min(380px, calc(100vw - 32px));
    padding: 24px;
    border-radius: 16px;
    background: #313338;
    color: #dbdee1;
    text-align: center;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5);
}
.spam-warning-card strong {
    color: #fff;
    font-size: 1.2rem;
}
.spam-warning-card p {
    margin: 0;
}
.spam-warning-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #f0b232;
    color: #1e1f22;
    font-size: 1.6rem;
    font-weight: 900;
}

/* Giris-cikis kanali satirlari */
.join-log-line {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 6px 16px;
    padding: 6px 10px;
    border-radius: 8px;
    color: #b5bac1;
    font-size: 0.9rem;
}
.join-log-line strong {
    color: #fff;
    cursor: pointer;
}
.join-log-line small {
    margin-left: auto;
    color: #80848e;
}
.join-log-icon {
    font-weight: 900;
}
.join-log-line.is-join .join-log-icon {
    color: #23a55a;
}
.join-log-line:not(.is-join) .join-log-icon {
    color: #f23f43;
}

/* Sunucu adinin altinda kapak gorseli (kanal listesinin ustu) */
.discord-server-topbar.has-banner {
    position: relative;
    min-height: 130px;
    align-items: start;
    padding-bottom: 60px;
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.05) 45%, rgba(43, 45, 49, 0.9) 100%), var(--server-banner);
    background-size: cover;
    background-position: center;
    border-bottom: 0;
}
.discord-server-topbar.has-banner .discord-chat-userbar-meta strong {
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
}

.meet-chat-delete {
    float: right;
    border: 0;
    background: none;
    color: #80848e;
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
}
.meet-chat-delete:hover {
    color: #f23f43;
}

/* Ses kanalinda muzik: sol alttaki ses panelinin ustunde mini calar */
.music-dock {
    position: fixed;
    z-index: 60;
    left: 80px;
    bottom: 160px;
    width: 280px;
    border-radius: 12px;
    background: #1e1f22;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
    color: #dbdee1;
    overflow: hidden;
}
.music-dock[hidden] {
    display: none;
}
.music-dock-head {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
}
.music-dock-icon {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    background: #e0569b;
    color: #fff;
    font-weight: 900;
}
.music-dock-title {
    display: grid;
    min-width: 0;
    flex: 1;
}
.music-dock-title strong {
    color: #fff;
    font-size: 0.85rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.music-dock-title small {
    color: #949ba4;
    font-size: 0.72rem;
}
.music-dock-head button,
.music-dock-volume button {
    border: 0;
    background: rgba(255, 255, 255, 0.06);
    color: #dbdee1;
    border-radius: 6px;
    width: 30px;
    height: 28px;
    cursor: pointer;
}
.music-dock-body {
    display: grid;
    gap: 8px;
    padding: 0 10px 10px;
}
.music-dock-body[hidden] {
    display: none;
}
.music-dock-player {
    margin: 0 10px 8px;
    border-radius: 8px;
    overflow: hidden;
    background: #000;
    height: 135px;
    transition: height 0.2s ease;
}
.music-dock-player.is-idle {
    height: 1px;
    margin-bottom: 0;
    opacity: 0.01;
}
.music-dock-player iframe {
    display: block;
    width: 100%;
    height: 135px;
}
.music-dock-volume {
    display: flex;
    align-items: center;
    gap: 8px;
}
.music-dock-volume input {
    flex: 1;
    accent-color: #e0569b;
}
.music-dock-volume span {
    min-width: 36px;
    text-align: right;
    font-size: 0.8rem;
}
.music-dock-controls {
    display: flex;
    gap: 6px;
}
.music-dock-controls button,
.music-dock-add button {
    flex: 1;
    padding: 6px;
    border: 0;
    border-radius: 6px;
    background: #2b2d31;
    color: #dbdee1;
    font: inherit;
    font-size: 0.8rem;
    cursor: pointer;
}
.music-dock-controls button:hover,
.music-dock-add button:hover {
    background: #5865f2;
    color: #fff;
}
.music-dock-controls button.is-danger:hover {
    background: #da373c;
}
.music-dock-controls button:disabled,
.music-dock-add button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}
.music-dock-add {
    display: flex;
    gap: 6px;
    margin: 0;
}
.music-dock-add input {
    flex: 3;
    min-width: 0;
    padding: 6px 8px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    background: #111214;
    color: #dbdee1;
    font-size: 0.8rem;
}
.music-dock-queue {
    margin: 0;
    padding: 0;
    list-style: none;
    max-height: 120px;
    overflow-y: auto;
    font-size: 0.8rem;
}
.music-dock-queue li {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 6px;
    border-radius: 4px;
}
.music-dock-queue li.is-current {
    background: rgba(224, 86, 155, 0.18);
    color: #fff;
}
.music-dock-queue li small {
    color: #80848e;
}
.music-dock-queue li button {
    margin-left: auto;
    border: 0;
    background: none;
    color: #f23f43;
    cursor: pointer;
}
.music-dock-queue li.is-empty {
    color: #80848e;
}
.music-dock-note {
    margin: 0;
    font-size: 0.7rem;
    color: #80848e;
}

/* Yogunluk (hafif) modu bandi */
.light-mode-banner { position: fixed; top: 0; left: 50%; transform: translateX(-50%); z-index: 9000; max-width: min(760px, calc(100vw - 24px)); margin-top: 8px; padding: 8px 14px; border-radius: 8px; background: #f0b232; color: #1e1f22; font-size: 13px; line-height: 1.4; box-shadow: 0 6px 18px rgba(0,0,0,.35); pointer-events: none; }
.light-mode-banner strong { font-weight: 800; }

/* Dosyalarim */
.files-quota { margin: 12px 0 18px; }
.files-quota .capacity-bar { margin-top: 6px; }
.files-quota .capacity-bar.is-full span { background: #da373c; }
.files-list { display: grid; gap: 6px; }
.files-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto auto auto; gap: 12px; align-items: center; padding: 8px 10px; border-radius: 8px; background: rgba(255,255,255,.03); }
.files-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #00a8fc; }
@media (max-width: 640px) { .files-row { grid-template-columns: 1fr auto; } .files-row > span:nth-child(3), .files-row > span:nth-child(4) { display: none; } }

/* Gecici sunucu */
.temp-room-pill { display: flex; align-items: center; gap: 6px; margin: 0 6px; padding: 3px 4px 3px 8px; border-radius: 999px; background: rgba(240,178,50,.16); color: #f0b232; font-size: 12px; white-space: nowrap; }
.temp-room-pill.is-ending { background: rgba(218,55,60,.2); color: #ff6b70; animation: tempPulse 1.2s ease-in-out infinite; }
.temp-room-pill form { margin: 0; }
.temp-room-pill button { border: 0; border-radius: 999px; padding: 2px 8px; background: #f0b232; color: #1e1f22; font-size: 11px; font-weight: 700; cursor: pointer; }
@keyframes tempPulse { 50% { opacity: .6; } }
.discord-room-button[data-temp-room="1"] { position: relative; }
.discord-room-button[data-temp-room="1"]::after { content: "\23F3"; position: absolute; right: -2px; bottom: -2px; font-size: 12px; line-height: 1; filter: drop-shadow(0 0 2px #000); }
/* Pasif sunucu uyarisi / one cikan */
.inactive-room-notice { display: block; text-decoration: none; margin: 8px 12px; padding: 10px 12px; border-radius: 8px; background: rgba(240,178,50,.12); color: #f0b232; font-size: 13px; }
.featured-badge { display: inline-block; margin-left: 6px; padding: 1px 6px; border-radius: 999px; background: linear-gradient(90deg,#f0b232,#ff73fa); color: #1e1f22; font-size: 10px; font-weight: 800; vertical-align: middle; }
.premium-card.is-featured {
    background: linear-gradient(160deg, #e8590c, #d6336c);
}
/* Kayit: gizlilik bilgilendirmesi */
.privacy-notice { font-size: 13px; }
.privacy-accept { display: flex; gap: 8px; align-items: flex-start; font-weight: 500; }
.privacy-accept input { width: auto; margin-top: 3px; }
.privacy-notice details { margin-top: 6px; color: #b5bac1; }
.privacy-notice summary { cursor: pointer; color: #00a8fc; }
.privacy-notice details p { margin: 6px 0; }
/* Topluluk basvurusu */
.community-apply-box { display: grid; gap: 6px; margin: 10px 0; padding: 12px; border-radius: 8px; background: rgba(88,101,242,.1); border: 1px solid rgba(88,101,242,.3); }
.community-apply-box textarea { width: 100%; resize: vertical; }
.community-apply-box .button { justify-self: start; }
.community-apply-rejected { color: #f23f43; }
/* Sunucu ayarlari: icerik uzun olunca kart icinde kaysin (kaydet butonuna inilebilsin) */
.discord-settings-card { grid-template-rows: minmax(0, 1fr); max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px); }
.discord-settings-card > .discord-settings-content { min-height: 0; overscroll-behavior: contain; }
.discord-settings-card > .discord-settings-sidebar-nav { min-height: 0; overflow-y: auto; }
.discord-settings-content::-webkit-scrollbar, .discord-settings-sidebar-nav::-webkit-scrollbar { width: 8px; }
.discord-settings-content::-webkit-scrollbar-thumb, .discord-settings-sidebar-nav::-webkit-scrollbar-thumb { background: #1a1b1e; border-radius: 4px; }
.discord-settings-content::-webkit-scrollbar-track, .discord-settings-sidebar-nav::-webkit-scrollbar-track { background: transparent; }
.discord-settings-content { scrollbar-color: #1a1b1e transparent; }
.plan-lock-note { padding: 10px 12px; border-radius: 8px; background: rgba(240,178,50,.1); color: #f0b232; font-size: 13px; }
.plan-lock-note .link-button { background: none; border: 0; padding: 0; color: #00a8fc; font: inherit; cursor: pointer; text-decoration: underline; }

/* ---------------- Admin paneli ---------------- */
.cards.four { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; }
a.metric-card { color: inherit; text-decoration: none; }
a.metric-card:hover { outline: 1px solid rgba(88,101,242,.5); }
.admin-search { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 12px 0; }
.admin-search input:not([type=hidden]) { flex: 1 1 260px; }
.admin-form-stack { display: grid; gap: 8px; margin: 8px 0 14px; }
.admin-form-stack .button { justify-self: start; }
.admin-tag { display: inline-block; margin: 1px 2px; padding: 1px 7px; border-radius: 999px; background: rgba(88,101,242,.18); color: #c9cdfb; font-size: 11px; font-weight: 700; }
.admin-tag.danger { background: rgba(218,55,60,.2); color: #ff8a8d; }
.admin-row-link { cursor: pointer; }
.admin-row-link:hover td { background: rgba(255,255,255,.03); }
.admin-info-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 10px; margin: 12px 0; }
.admin-info-grid > div { display: grid; gap: 2px; padding: 10px 12px; border-radius: 8px; background: rgba(255,255,255,.03); }
.admin-info-grid span { color: #949ba4; font-size: 12px; }
.admin-user-head { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; align-items: flex-start; }
.admin-ua { max-width: 320px; font-size: 11px; word-break: break-all; }
.admin-actions-menu summary { cursor: pointer; color: #00a8fc; }
.admin-actions-menu[open] { min-width: 240px; }
.admin-edit-update summary { cursor: pointer; color: #00a8fc; margin: 6px 0; }
.button.danger { background: #da373c; color: #fff; }
.inspect-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; }
.inspect-tabs a { padding: 8px 12px; border-radius: 8px; background: rgba(255,255,255,.04); color: #dbdee1; text-decoration: none; }
.inspect-tabs a.active { background: #5865f2; color: #fff; }
.inspect-head { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.inspect-timeline { display: grid; gap: 6px; }
.inspect-msg { padding: 8px 12px; border-radius: 8px; background: rgba(255,255,255,.03); border-left: 3px solid transparent; }
.inspect-msg.is-target { border-left-color: #f0b232; background: rgba(240,178,50,.07); }
.inspect-msg.is-archived { border-left-color: #da373c; }
.inspect-msg-meta { display: flex; flex-wrap: wrap; gap: 10px; font-size: 12px; color: #949ba4; }
.inspect-msg-meta b { color: #f2f3f5; }
.inspect-msg-meta em { color: #ff8a8d; font-style: normal; }
.inspect-msg-body { margin-top: 3px; white-space: normal; word-break: break-word; }
@media print {
    .admin-sidebar, .no-print, .alert { display: none !important; }
    body, .content, .panel { background: #fff !important; color: #000 !important; }
    .layout { display: block !important; }
    .inspect-msg { break-inside: avoid; background: #fff !important; border: 1px solid #ccc; }
    .inspect-msg-meta, .inspect-msg-meta b, .muted { color: #333 !important; }
}
/* Aramadayken baska sayfa: ustte kucuk arama cubugu */
.dm-call-mini { position: fixed; top: 10px; left: 50%; transform: translateX(-50%); z-index: 9001; display: flex; align-items: center; gap: 10px; padding: 6px 8px 6px 12px; border-radius: 999px; background: #1a1b1e; border: 1px solid rgba(35,165,90,.5); box-shadow: 0 8px 24px rgba(0,0,0,.45); color: #f2f3f5; font-size: 13px; }
.dm-call-mini-dot { width: 9px; height: 9px; border-radius: 50%; background: #23a55a; box-shadow: 0 0 0 4px rgba(35,165,90,.2); }
.dm-call-mini-text { display: grid; line-height: 1.15; }
.dm-call-mini-text small { color: #23a55a; font-size: 11px; }
.dm-call-mini button { border: 0; border-radius: 999px; padding: 5px 10px; background: #4e5058; color: #fff; font-size: 12px; font-weight: 700; cursor: pointer; }
.dm-call-mini button.is-danger { background: #da373c; }
/* Muzik calar: siradan / listeden sec */
.music-dock-queue li.is-selectable, .music-dock-playlist li.is-selectable { cursor: pointer; }
.music-dock-queue li.is-selectable:hover, .music-dock-playlist li.is-selectable:hover { background: rgba(255,255,255,.06); }
.music-dock-queue li.is-played { opacity: .55; }
.music-dock-playlist { margin-top: 6px; font-size: 0.8rem; }
.music-dock-playlist strong { display: block; margin: 0 0 4px; color: #b5bac1; font-size: 0.72rem; text-transform: uppercase; letter-spacing: .04em; }
.music-dock-playlist ol { margin: 0; padding: 0; list-style: none; max-height: 160px; overflow-y: auto; }
.music-dock-playlist li { padding: 4px 6px; border-radius: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.music-dock-playlist li.is-current { background: rgba(224, 86, 155, 0.18); color: #fff; }
/* Aramada goruntu karesi (ekran paylasimi / kamera) */
.discord-call-stage-participant-card.has-video > .discord-call-stage-participant,
.discord-call-stage-participant-card.has-video > .discord-call-remote-avatar-wrap { display: none; }
.dm-call-tile { position: relative; width: min(420px, 40vw); aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: #000; box-shadow: 0 0 0 2px rgba(255,255,255,.08); }
.dm-call-tile[hidden] { display: none; }
.dm-call-tile video { width: 100%; height: 100%; object-fit: contain; display: block; background: #000; }
.dm-call-tile-expand { position: absolute; right: 8px; bottom: 8px; width: 36px; height: 36px; display: grid; place-items: center; border: 0; border-radius: 8px; background: rgba(0,0,0,.65); color: #fff; cursor: pointer; opacity: 0; transition: opacity .15s ease; }
.dm-call-tile-expand svg { width: 20px; height: 20px; }
.dm-call-tile:hover .dm-call-tile-expand, .dm-call-tile:focus-within .dm-call-tile-expand { opacity: 1; }
.dm-call-tile:fullscreen { width: 100vw; height: 100vh; aspect-ratio: auto; border-radius: 0; }
.dm-call-tile.is-expanded { position: fixed; inset: 0; z-index: 9500; width: auto; aspect-ratio: auto; border-radius: 0; }
/* Eski koseden kucuk goruntu yerine karttaki kare kullanilir */
#dmCallShell .discord-call-local { display: none !important; }
#dmCallShell #remoteCallVideo { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
#dmCallShell .discord-call-remote-fallback { position: relative; }
/* Goruntu yokken kare gorunmez ama kucucuk kalir (goruntu geri gelince hemen anlasilsin) */
.dm-call-tile.is-stale { position: absolute; width: 2px; height: 2px; aspect-ratio: auto; opacity: 0; pointer-events: none; box-shadow: none; }
.discord-call-stage-participant-card { position: relative; }
/* Resim mesaji: balon resmin boyutunda kalsin (yaninda bos alan olmasin) */
.discord-chat-entry-bubble:has(> .discord-chat-image-link),
.discord-chat-entry-bubble:has(> .discord-chat-image-frame) { width: fit-content; max-width: 100%; justify-self: start; }
.discord-chat-entry.is-own .discord-chat-entry-bubble:has(> .discord-chat-image-link),
.discord-chat-entry.is-own .discord-chat-entry-bubble:has(> .discord-chat-image-frame) { justify-self: end; }
.discord-chat-entry-bubble > .discord-chat-image-link { display: block; width: fit-content; }
/* Yuzdelik genislik balonun boyut hesabinda sayilmiyor: resim en fazla 420px / ekranin %70'i */
.discord-chat-entry-bubble .discord-chat-image { max-width: min(420px, 70vw); }
/* Aramadayken baska sayfa: sol altta arama paneli (sunucudaki ses paneli gibi) */
.dm-call-inline { display: flex; align-items: center; gap: 8px; margin: 6px 8px; padding: 8px 8px 8px 12px; border-radius: 10px; background: #1a1b1e; border: 1px solid rgba(35,165,90,.35); color: #f2f3f5; }
.dm-call-inline.is-floating { position: fixed; left: 12px; bottom: 12px; z-index: 50; width: 260px; }
.dm-call-inline-dot { flex: none; width: 9px; height: 9px; border-radius: 50%; background: #23a55a; box-shadow: 0 0 0 4px rgba(35,165,90,.2); }
.dm-call-inline-info { flex: 1; min-width: 0; display: grid; text-align: left; border: 0; background: none; color: inherit; cursor: pointer; padding: 0; }
.dm-call-inline-info strong { color: #23a55a; font-size: 13px; }
.dm-call-inline-info small { color: #b5bac1; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dm-call-inline-end { flex: none; width: 32px; height: 32px; display: grid; place-items: center; border: 0; border-radius: 8px; background: rgba(218,55,60,.15); color: #f23f43; cursor: pointer; }
.dm-call-inline-end:hover { background: #da373c; color: #fff; }
.dm-call-inline-end svg { width: 18px; height: 18px; transform: rotate(135deg); }

/* Toplanti bekleme ekrani: tam ekran arka plan, ortada sadece toplanti bilgisi */
.meet-body.is-meet-lobby .meet-topbar { display: none; }
.meet-lobby { position: fixed; inset: 0; z-index: 5; display: grid; place-items: center; grid-template-columns: 1fr; padding: 24px;
    background: linear-gradient(rgba(10, 12, 18, .55), rgba(10, 12, 18, .7)), var(--meet-lobby-bg, linear-gradient(135deg, #25336b 0%, #111318 55%, #133d2a 100%)) center / cover no-repeat; }
.meet-lobby[hidden] { display: none; }
.meet-lobby-center { display: grid; justify-items: center; gap: 10px; max-width: 720px; text-align: center; color: #fff; text-shadow: 0 2px 12px rgba(0,0,0,.5); }
.meet-lobby-center .meet-eyebrow { margin: 0; font-size: 14px; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.8); }
.meet-lobby-center h1 { margin: 0; font-size: clamp(32px, 6vw, 56px); line-height: 1.1; }
.meet-lobby-countdown { font-size: clamp(48px, 10vw, 96px); font-weight: 800; letter-spacing: .02em; font-variant-numeric: tabular-nums; }
.meet-lobby-countdown[hidden] { display: none; }
.meet-lobby-center .meet-lobby-status { margin: 0; font-size: 18px; color: rgba(255,255,255,.92); background: none; padding: 0; border: 0; }
.meet-lobby-schedule { font-size: 15px; font-weight: 700; color: #f0b232; }
.meet-lobby-center .meet-lobby-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 14px; }
.meet-lobby-center .meet-lobby-actions[hidden] { display: none; }
.meet-lobby-bg-button { cursor: pointer; }
.meet-lobby-leave { margin-top: 18px; }

/* Toplanti: Zoom gibi 16:9 kutular, kisi sayisina gore sutun; altta simgeli kontrol cubugu */
.meet-grid { grid-auto-rows: auto; align-content: center; justify-content: center; }
.meet-grid .meet-tile { aspect-ratio: 16 / 9; min-height: 0; width: 100%; }
.meet-grid[data-count="1"] { grid-template-columns: minmax(0, min(1100px, calc((100vh - 170px) * 16 / 9))); }
.meet-grid[data-count="2"] { grid-template-columns: repeat(2, minmax(0, min(760px, calc((100vh - 170px) * 16 / 9)))); }
.meet-grid[data-count="3"], .meet-grid[data-count="4"] { grid-template-columns: repeat(2, minmax(0, min(640px, calc((100vh - 190px) / 2 * 16 / 9)))); }
.meet-grid[data-count="5"], .meet-grid[data-count="6"], .meet-grid[data-count="7"], .meet-grid[data-count="8"], .meet-grid[data-count="9"] { grid-template-columns: repeat(3, minmax(0, min(480px, calc((100vh - 200px) / 3 * 16 / 9)))); }
.meet-grid[data-count="10"] { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.meet-controls .meet-control { display: inline-flex; flex-direction: column; align-items: center; gap: 4px; min-width: 76px; padding: 8px 10px; font-size: 12px; }
.meet-controls .meet-control::before { content: ''; width: 22px; height: 22px; background: currentColor; -webkit-mask: var(--meet-icon) center / contain no-repeat; mask: var(--meet-icon) center / contain no-repeat; }
#meetMicButton { --meet-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M12%2014a3%203%200%200%200%203-3V5a3%203%200%200%200-6%200v6a3%203%200%200%200%203%203Zm5-3a5%205%200%200%201-10%200H5a7%207%200%200%200%206%206.92V21h2v-3.08A7%207%200%200%200%2019%2011h-2Z%27/%3E%3C/svg%3E"); }
#meetCameraButton { --meet-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M17%2010.5V7a1%201%200%200%200-1-1H4a1%201%200%200%200-1%201v10a1%201%200%200%200%201%201h12a1%201%200%200%200%201-1v-3.5l4%204v-11l-4%204Z%27/%3E%3C/svg%3E"); }
#meetScreenButton { --meet-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M4%204h16a1%201%200%200%201%201%201v11a1%201%200%200%201-1%201h-6v2h3v2H7v-2h3v-2H4a1%201%200%200%201-1-1V5a1%201%200%200%201%201-1Zm8%203-4%204h3v3h2v-3h3l-4-4Z%27/%3E%3C/svg%3E"); }
#meetHandButton { --meet-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M18%206a1.5%201.5%200%200%200-1.5%201.5V12h-1V4.5a1.5%201.5%200%200%200-3%200V12h-1V3.5a1.5%201.5%200%200%200-3%200V12h-1V6.5a1.5%201.5%200%200%200-3%200V15a7%207%200%200%200%207%207h.5a6.5%206.5%200%200%200%206.5-6.5V7.5A1.5%201.5%200%200%200%2018%206Z%27/%3E%3C/svg%3E"); }
#meetPeopleButton { --meet-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M9%2012a4%204%200%201%200-4-4%204%204%200%200%200%204%204Zm0%202c-3.3%200-7%201.6-7%204v2h14v-2c0-2.4-3.7-4-7-4Zm7.5-2a3.5%203.5%200%201%200-1.3-6.75A5.9%205.9%200%200%201%2015%208a5.9%205.9%200%200%201-.9%203.17A3.4%203.4%200%200%200%2016.5%2012Zm1.4%202.1A5.6%205.6%200%200%201%2020%2018v2h3v-2c0-1.9-2.4-3.3-5.1-3.9Z%27/%3E%3C/svg%3E"); }
#meetChatButton { --meet-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M4%204h16a2%202%200%200%201%202%202v10a2%202%200%200%201-2%202H8l-4%204V6a2%202%200%200%201%202-2Z%27/%3E%3C/svg%3E"); }
#meetLeaveButton { --meet-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M16%2017v-3H9v-4h7V7l5%205-5%205ZM14%203a2%202%200%200%201%202%202v1h-2V5H5v14h9v-1h2v1a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h9Z%27/%3E%3C/svg%3E"); }
#meetEndButton { --meet-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M12%202a10%2010%200%201%200%2010%2010A10%2010%200%200%200%2012%202Zm4%2013.6L14.6%2017%2012%2014.4%209.4%2017%208%2015.6l2.6-2.6L8%2010.4%209.4%209l2.6%202.6L14.6%209l1.4%201.4-2.6%202.6Z%27/%3E%3C/svg%3E"); }
/* Muzik calar: uzun sarki adlari kutuyu genisletmesin (Kapat butonu ve ses yuzdesi hep gorunsun) */
.music-dock { max-width: calc(100vw - 16px); }
.music-dock-body { grid-template-columns: minmax(0, 1fr); }
.music-dock-body > * { min-width: 0; }
.music-dock-controls { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.music-dock-controls button { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.music-dock-volume input { min-width: 0; }
.music-dock-volume span { flex: none; }
.music-dock-queue[hidden] { display: none; }
.music-dock-queue li { min-width: 0; }
.music-dock-queue li > :first-child { overflow: hidden; text-overflow: ellipsis; }
.music-dock-playlist ol, .music-dock-playlist li { max-width: 100%; }
.music-dock-queue li { overflow: hidden; white-space: nowrap; }
.music-queue-text { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.music-dock-queue li button { flex: none; }
.music-dock-queue::-webkit-scrollbar, .music-dock-playlist ol::-webkit-scrollbar { width: 6px; }
.music-dock-queue::-webkit-scrollbar-thumb, .music-dock-playlist ol::-webkit-scrollbar-thumb { background: #3f4147; border-radius: 3px; }
.music-dock-queue::-webkit-scrollbar-track, .music-dock-playlist ol::-webkit-scrollbar-track { background: transparent; }

/* ---- Toplanti: ozel arama gibi koyu sahne, kare avatarli kisi kartlari ---- */
.meet-main { padding: 12px; gap: 12px; }
.meet-grid { border-radius: 18px; background: #050608; border: 1px solid rgba(255,255,255,.06); padding: 18px; }
.meet-grid .meet-tile { background: transparent; border: 0; border-radius: 16px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; }
.meet-grid .meet-tile.has-video { background: #000; box-shadow: 0 0 0 1px rgba(255,255,255,.08); }
.meet-grid .meet-tile-avatar { width: clamp(72px, 34%, 150px); height: auto; aspect-ratio: 1; border-radius: 22%; font-size: clamp(1.6rem, 3vw, 2.6rem);
    background: linear-gradient(135deg, #5865f2, #7b5cff); box-shadow: 0 0 0 6px rgba(255,255,255,.04), 0 12px 30px rgba(0,0,0,.45); transition: box-shadow .15s ease; }
.meet-grid .meet-tile.is-speaking { border: 0; }
.meet-grid .meet-tile.is-speaking .meet-tile-avatar { box-shadow: 0 0 0 4px #23a55a, 0 0 0 10px rgba(35,165,90,.25), 0 12px 30px rgba(0,0,0,.45); }
.meet-grid .meet-tile.is-speaking.has-video { box-shadow: 0 0 0 3px #23a55a; }
.meet-grid .meet-tile.has-hand .meet-tile-avatar { box-shadow: 0 0 0 4px #f0b232, 0 12px 30px rgba(0,0,0,.45); }
/* Goruntu yokken ad avatarin altinda ortalanir (ozel aramadaki gibi) */
.meet-grid .meet-tile:not(.has-video) .meet-tile-label { position: static; background: none; padding: 0; justify-content: center; font-weight: 700; font-size: 0.95rem; color: #dbdee1; }
/* Alt cubuk: solda toplanti adi / sure, ortada butonlar */
.meet-controls { position: relative; align-items: center; }
.meet-controls-info { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); display: flex; align-items: center; gap: 8px; max-width: 26%; min-width: 0; }
.meet-controls-info strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #fff; }
.meet-controls-info .meet-timer { white-space: nowrap; }
@media (max-width: 1100px) { .meet-controls-info { position: static; transform: none; max-width: 100%; width: 100%; justify-content: center; } }
/* Toplanti bitti / bekleme / giris kartlari: tam ekran, ortada */
.meet-stage-screen { background: radial-gradient(1200px 600px at 20% 10%, rgba(88,101,242,.25), transparent 60%), radial-gradient(900px 500px at 90% 90%, rgba(35,165,90,.18), transparent 60%), #0d0e12; }
.meet-stage-card { width: min(520px, 100%); padding: 40px 32px; border-radius: 22px; background: rgba(20,21,26,.85); border: 1px solid rgba(255,255,255,.08); box-shadow: 0 30px 80px rgba(0,0,0,.5); backdrop-filter: blur(8px); }
.meet-stage-card h1 { font-size: clamp(1.6rem, 3vw, 2.2rem); margin-bottom: 10px; }
.meet-stage-card .muted { font-size: 1rem; }
#meetFinished .meet-stage-card::before { content: ''; display: block; width: 64px; height: 64px; margin: 0 auto 18px; border-radius: 20px; background: rgba(218,55,60,.15) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f23f43' d='M21 15.46a1 1 0 0 1-.3.7l-2.54 2.54a1 1 0 0 1-1.05.23 19.7 19.7 0 0 1-6.11-3.68 19.65 19.65 0 0 1-3.68-6.11 1 1 0 0 1 .23-1.05L10.09 5.55a1 1 0 0 1 .7-.3h3a1 1 0 0 1 .95.68l.72 2.17a1 1 0 0 1-.24 1l-1.28 1.28a14.2 14.2 0 0 0 4.68 4.68l1.28-1.28a1 1 0 0 1 1-.24l2.17.72a1 1 0 0 1 .68.95Z' transform='rotate(135 12 12)'/%3E%3C/svg%3E") center / 32px no-repeat; }
.meet-stage-card .meet-message-actions { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin-top: 22px; }
/* Sunucu basligi: avatar kalkti; ad tum genisligi kullanir, rozetler hep adin sagında gorunur */
.discord-server-topbar .discord-chat-userbar-trigger { grid-template-columns: minmax(0, 1fr); }
.discord-server-topbar .discord-chat-userbar-meta strong.server-title { display: flex; align-items: center; gap: 6px; min-width: 0; overflow: visible; }
.server-title-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.server-title .lv-badge { flex: none; }

/* Bekleme ekrani butonlari: simgeli, yuvarlak hatli */
.meet-lobby-btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 18px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; background: rgba(255,255,255,.08); color: #fff; font: inherit; font-weight: 700; font-size: 15px; text-decoration: none; cursor: pointer; backdrop-filter: blur(6px); transition: background .15s ease, transform .15s ease; }
.meet-lobby-btn:hover { background: rgba(255,255,255,.16); transform: translateY(-1px); }
.meet-lobby-btn.is-primary { background: #5865f2; border-color: #5865f2; }
.meet-lobby-btn.is-primary:hover { background: #4752c4; }
.meet-lobby-btn.is-primary:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.meet-lobby-btn.is-danger { background: rgba(218,55,60,.18); border-color: rgba(218,55,60,.5); color: #ff8a8d; }
.meet-lobby-btn.is-danger:hover { background: #da373c; color: #fff; }
.meet-lobby-icon { width: 18px; height: 18px; flex: none; background: currentColor; -webkit-mask: var(--icon) center / contain no-repeat; mask: var(--icon) center / contain no-repeat; }
.meet-lobby-description { margin: 0; max-width: 620px; font-size: 16px; line-height: 1.5; color: rgba(255,255,255,.85); }
.meet-invite-link { display: flex; gap: 8px; margin: 6px 0 10px; }
.meet-invite-link input { flex: 1; min-width: 0; }
.meet-lobby-icon.is-play { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M8%205v14l11-7Z%27/%3E%3C/svg%3E"); }
.meet-lobby-icon.is-invite { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M15%2012a4%204%200%201%200-4-4%204%204%200%200%200%204%204Zm0%202c-2.7%200-8%201.3-8%204v2h16v-2c0-2.7-5.3-4-8-4ZM6%2010V7H4v3H1v2h3v3h2v-3h3v-2Z%27/%3E%3C/svg%3E"); }
.meet-lobby-icon.is-close { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M18.3%205.7%2012%2012l6.3%206.3-1.4%201.4L10.6%2013.4%204.3%2019.7%202.9%2018.3%209.2%2012%202.9%205.7%204.3%204.3l6.3%206.3%206.3-6.3Z%27/%3E%3C/svg%3E"); }
.meet-lobby-icon.is-leave { --icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M16%2017v-3H9v-4h7V7l5%205-5%205ZM14%203a2%202%200%200%201%202%202v1h-2V5H5v14h9v-1h2v1a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h9Z%27/%3E%3C/svg%3E"); }

/* Toplanti: sade katilimci listesi, arama, sag tik menusu, soz ver */
.meet-people-search { width: 100%; margin: 6px 0 8px; padding: 8px 10px; border-radius: 8px; border: 1px solid rgba(255,255,255,.1); background: #111214; color: #dbdee1; }
.meet-person { cursor: default; }
.meet-person.has-menu { cursor: pointer; }
.meet-person.has-menu:hover { background: rgba(255,255,255,.05); }
.meet-person[hidden] { display: none; }
.meet-person .meet-person-actions { display: none; }
.meet-people-hint { margin: 8px 2px 0; font-size: 12px; }
.meet-give-floor { flex: none; margin-left: auto; border: 0; border-radius: 999px; padding: 4px 10px; background: #23a55a; color: #fff; font-weight: 700; font-size: 12px; cursor: pointer; }
.meet-give-floor:hover { background: #1a8a4a; }
.meet-person-menu { position: fixed; z-index: 10060; min-width: 190px; display: grid; gap: 2px; padding: 6px; border-radius: 10px; background: #111214; border: 1px solid rgba(255,255,255,.08); box-shadow: 0 12px 30px rgba(0,0,0,.5); }
.meet-person-menu .button { justify-content: flex-start; width: 100%; background: none; border: 0; box-shadow: none; color: #dbdee1; text-align: left; padding: 8px 10px; border-radius: 6px; }
.meet-person-menu .button:hover { background: #5865f2; color: #fff; }
.meet-person-menu .button.is-danger { color: #f23f43; }
.meet-person-menu .button.is-danger:hover { background: #da373c; color: #fff; }
/* Sohbet: baskalarinin mesajlari solda, benimkiler sagda */
#meetChatList { display: flex; flex-direction: column; gap: 8px; }
.meet-chat-message { align-self: flex-start; max-width: 85%; padding: 8px 12px; border-radius: 14px 14px 14px 4px; background: #2b2d31; }
.meet-chat-message.is-mine { align-self: flex-end; border-radius: 14px 14px 4px 14px; background: #3c45a5; }
.meet-chat-message.is-mine strong { display: none; }
.meet-chat-message.is-mine small { color: rgba(255,255,255,.7); }
.meet-chat-message p { margin: 2px 0 0; word-break: break-word; }
.meet-finished-time { margin: 10px 0 0; font-weight: 700; color: #f0b232; font-variant-numeric: tabular-nums; }
.meet-controls-info .meet-timer { font-variant-numeric: tabular-nums; }

/* Toplanti: yayini izle butonu ve izleme penceresi */
.meet-watch-button { position: absolute; left: 50%; bottom: 44px; transform: translateX(-50%); display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border: 0; border-radius: 999px; background: #da373c; color: #fff; font-weight: 800; font-size: 14px; cursor: pointer; box-shadow: 0 8px 20px rgba(0,0,0,.4); z-index: 2; }
.meet-watch-button:hover { background: #b92d31; }
.meet-live-dot { width: 8px; height: 8px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 3px rgba(255,255,255,.3); animation: meetLivePulse 1.4s ease-in-out infinite; }
@keyframes meetLivePulse { 50% { opacity: .35; } }
.meet-main { position: relative; }
.meet-screen-viewer { position: absolute; inset: 12px; z-index: 20; display: flex; flex-direction: column; border-radius: 18px; overflow: hidden; background: #000; border: 1px solid rgba(255,255,255,.08); box-shadow: 0 20px 60px rgba(0,0,0,.6); }
.meet-screen-viewer-bar { display: flex; align-items: center; gap: 10px; padding: 10px 14px; background: #111214; color: #fff; }
.meet-screen-viewer-bar .meet-live-dot { background: #f23f43; box-shadow: 0 0 0 3px rgba(242,63,67,.3); }
.meet-screen-viewer-spacer { flex: 1; }
.meet-screen-viewer-bar button { border: 0; border-radius: 8px; padding: 7px 12px; background: #2b2d31; color: #fff; font-weight: 700; cursor: pointer; }
.meet-screen-viewer-bar button:hover { background: #5865f2; }
.meet-screen-viewer-bar button.is-danger { background: rgba(218,55,60,.2); color: #ff8a8d; }
.meet-screen-viewer-bar button.is-danger:hover { background: #da373c; color: #fff; }
.meet-screen-viewer-stage { position: relative; flex: 1; min-height: 0; display: grid; place-items: center; background: #000; }
.meet-screen-viewer-stage video { width: 100%; height: 100%; object-fit: contain; background: #000; }
.meet-screen-viewer-wait { position: absolute; margin: 0; color: #b5bac1; }
.meet-screen-viewer.is-playing .meet-screen-viewer-wait { display: none; }
.meet-screen-viewer-stage:fullscreen video { width: 100vw; height: 100vh; }
/* Ozel arama: yayini izle / yayindan cik */
.dm-watch-button { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 0; border-radius: 999px; background: #da373c; color: #fff; font-weight: 800; cursor: pointer; box-shadow: 0 8px 20px rgba(0,0,0,.35); }
.dm-watch-button[hidden] { display: none; }
.dm-watch-button:hover { background: #b92d31; }
.dm-call-tile-leave { position: absolute; left: 8px; bottom: 8px; z-index: 2; border: 0; border-radius: 8px; padding: 6px 10px; background: rgba(218,55,60,.85); color: #fff; font-weight: 700; font-size: 12px; cursor: pointer; opacity: 0; transition: opacity .15s ease; }
.dm-call-tile:hover .dm-call-tile-leave { opacity: 1; }
.dm-call-tile-leave[hidden] { display: none; }
/* Izleyen sayisi */
.meet-watch-eye { margin-left: 4px; padding-left: 8px; border-left: 1px solid rgba(255,255,255,.35); font-weight: 700; }
.meet-viewer-eye { color: #dbdee1; font-weight: 700; }
.meet-self-live { position: absolute; top: 8px; left: 8px; z-index: 2; display: inline-flex; gap: 6px; align-items: center; padding: 3px 8px; border-radius: 6px; background: rgba(0,0,0,.65); color: #fff; font-size: 12px; font-weight: 700; }
.meet-self-live b { padding: 1px 5px; border-radius: 4px; background: #da373c; font-size: 10px; letter-spacing: .04em; }
.dm-call-tile-eye { position: absolute; top: 8px; left: 8px; z-index: 2; padding: 3px 8px; border-radius: 6px; background: rgba(0,0,0,.65); color: #fff; font-size: 12px; font-weight: 700; }
.dm-call-tile-eye[hidden] { display: none; }
/* Tam ekran izlerken goruntunun ustunde etiket kalmasin */
.dm-call-tile:fullscreen .dm-call-tile-eye, .dm-call-tile:fullscreen .dm-call-tile-leave, .dm-call-tile:fullscreen .dm-call-tile-expand { display: none; }
